:root{
  --blue:#0a2fa0; --blue2:#1250d8; --red:#d61e26; --gold:#f5b301; --ink:#141821;
  --dark:#180b0b; --darkred:#3d0a0c; --paper:#ffffff; --bg:#f4f5f7; --line:#e4e6ea;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Noto Sans Bengali','Hind Siliguri',Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.65}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.wrap{max-width:1200px;margin:0 auto;padding:0 16px}

/* Puhor demo banner */
.demo-banner{position:sticky;top:0;z-index:1000;background:linear-gradient(90deg,#0a0a0a,#1a1a1a);color:#fff;text-align:center;padding:7px 12px;font-size:13px;letter-spacing:.4px;border-bottom:2px solid var(--gold)}
.demo-banner b{color:var(--gold);animation:glow 2s ease-in-out infinite}
.demo-banner a{color:#7db2ff;font-weight:600}
@keyframes glow{0%,100%{text-shadow:0 0 4px rgba(245,179,1,.4)}50%{text-shadow:0 0 12px rgba(245,179,1,.95)}}

/* Top strip */
.topstrip{background:var(--dark);color:#cbb;font-size:12.5px;padding:6px 0}
.topstrip .wrap{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.topstrip .socials a{margin-left:12px;color:#e8c77a}

/* Masthead */
.masthead{background:radial-gradient(1200px 300px at 50% -60px,#6b0f12,#2b0708 70%);color:#fff;padding:22px 0 18px}
.masthead .wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.masthead .logo{width:96px;height:96px;border-radius:10px;object-fit:cover;box-shadow:0 4px 18px rgba(0,0,0,.5);border:2px solid rgba(245,179,1,.55)}
.masthead h1{font-size:34px;font-weight:800;line-height:1.15;letter-spacing:.5px}
.masthead h1 .x7{color:var(--gold)}
.tagline{color:#f0d9a0;font-size:14.5px;margin-top:4px}
.datebar{font-size:12.5px;color:#c9a;opacity:.85;margin-top:4px}

/* Nav */
nav.mainnav{background:var(--blue);position:sticky;top:31px;z-index:900;box-shadow:0 2px 8px rgba(0,0,0,.25)}
nav.mainnav .wrap{display:flex;overflow-x:auto}
nav.mainnav a{color:#fff;padding:12px 16px;font-weight:600;font-size:15px;white-space:nowrap;border-bottom:3px solid transparent}
nav.mainnav a:hover,nav.mainnav a.active{background:var(--red);border-bottom-color:var(--gold)}

/* Ticker */
.ticker{background:var(--red);color:#fff;display:flex;align-items:center;font-size:14px}
.ticker .label{background:#9c0f16;padding:8px 14px;font-weight:700;white-space:nowrap}
.ticker marquee{padding:8px 0}

/* Layout */
.main{display:grid;grid-template-columns:2.4fr 1fr;gap:22px;margin:22px auto}
@media(max-width:900px){.main{grid-template-columns:1fr}}

/* Hero */
.hero{background:var(--paper);border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.07);margin-bottom:22px}
.hero .thumb{height:300px;background:linear-gradient(135deg,var(--blue),var(--darkred) 70%),url('../assets/cover.jpg') center/cover;background-blend-mode:multiply;display:flex;align-items:flex-end;padding:20px}
.hero .thumb .badge{background:var(--red);color:#fff;padding:4px 12px;border-radius:4px;font-size:12.5px;font-weight:700}
.hero .body{padding:18px 20px}
.hero h2{font-size:24px;line-height:1.35;margin:6px 0 10px}
.hero p{color:#555;font-size:14.5px}
.meta{font-size:12.5px;color:#999;margin-top:10px}
.readmore{display:inline-block;margin-top:12px;color:var(--blue2);font-weight:700;font-size:14px}

/* Section titles */
.sec-title{display:flex;align-items:center;gap:10px;margin:26px 0 14px;border-bottom:3px solid var(--red);padding-bottom:8px}
.sec-title h3{font-size:20px;color:var(--blue)}
.sec-title .dot{width:12px;height:12px;background:var(--gold);border-radius:50%}

/* Cards */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
@media(max-width:900px){.grid3,.grid2{grid-template-columns:1fr}}
.card{background:var(--paper);border-radius:10px;overflow:hidden;box-shadow:0 1px 6px rgba(0,0,0,.06);display:flex;flex-direction:column;transition:transform .15s}
.card:hover{transform:translateY(-3px)}
.card .thumb{height:130px;background:linear-gradient(135deg,var(--blue2),var(--blue) 55%,var(--darkred));display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.9);font-weight:700;font-size:15px;text-align:center;padding:10px}
.card .thumb.gold{background:linear-gradient(135deg,#b98200,var(--gold))}
.card .thumb.red{background:linear-gradient(135deg,#8f1116,var(--red))}
.card .cbody{padding:12px 14px}
.card .cat{font-size:11.5px;color:var(--red);font-weight:700;letter-spacing:.6px}
.card h4{font-size:15.5px;line-height:1.4;margin:6px 0 8px}
.card .meta{margin-top:0}

/* Sidebar */
.side .box{background:var(--paper);border-radius:10px;box-shadow:0 1px 6px rgba(0,0,0,.06);padding:16px;margin-bottom:18px}
.side .box h3{font-size:16px;color:var(--blue);border-left:4px solid var(--gold);padding-left:10px;margin-bottom:12px}
.trend li{list-style:none;padding:10px 0;border-bottom:1px dashed var(--line);font-size:14px}
.trend li:last-child{border:none}
.trend .n{color:var(--red);font-weight:800;margin-right:8px}
.follow a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;font-weight:600;font-size:14px;margin-bottom:8px;color:#fff}
.follow .fb{background:#1877f2}.follow .yt{background:#e62117}.follow .ig{background:linear-gradient(45deg,#f09433,#dc2743,#bc1888)}.follow .wa{background:#25d366}

/* Article page */
.article{background:var(--paper);border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.07);padding:26px;margin:22px auto;max-width:860px}
.article h1{font-size:26px;line-height:1.4;margin:10px 0 8px}
.article .lead{font-size:16.5px;color:#333;border-left:4px solid var(--gold);padding-left:14px;margin:16px 0}
.article .full p{margin:14px 0;font-size:15.5px}
.article .thumb{height:260px;border-radius:10px;background:linear-gradient(135deg,var(--blue2),var(--darkred));display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.85);font-weight:700;margin:14px 0}
.breadcrumb{font-size:13px;color:#888}
.breadcrumb a{color:var(--blue2)}

/* About / contact */
.panel{background:var(--paper);border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.07);padding:26px;margin:22px auto;max-width:900px}
.panel h1{font-size:24px;color:var(--blue);margin-bottom:12px}
.panel h3{color:var(--red);margin:20px 0 8px;font-size:17px}
.panel table{width:100%;border-collapse:collapse;margin:10px 0;font-size:14.5px}
.panel td,.panel th{border:1px solid var(--line);padding:9px 12px;text-align:left}
.panel th{background:#f0f3ff;width:38%}
.legal-note{font-size:12.5px;color:#888;margin-top:8px}
.contact-form input,.contact-form textarea,.contact-form select{width:100%;padding:11px;border:1px solid var(--line);border-radius:8px;margin-bottom:12px;font-family:inherit;font-size:14.5px}
.btn{background:var(--red);color:#fff;border:none;padding:12px 26px;border-radius:8px;font-weight:700;font-size:15px;cursor:pointer}
.btn:hover{background:#a8121a}
.embedbox{aspect-ratio:16/9;background:#000;border-radius:10px;overflow:hidden}
.embedbox iframe{width:100%;height:100%;border:0}

/* Footer */
footer{background:var(--dark);color:#cbb;margin-top:34px}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:26px;padding:30px 0}
@media(max-width:800px){footer .cols{grid-template-columns:1fr}}
footer h4{color:#fff;margin-bottom:10px;font-size:16px}
footer a{color:#cbb;font-size:14px;display:block;padding:3px 0}
footer a:hover{color:var(--gold)}
footer .fbrand{display:flex;gap:14px;align-items:center}
footer .fbrand img{width:64px;height:64px;border-radius:8px;object-fit:cover}
footer .legal{font-size:12.5px;line-height:1.7;color:#a98}
.footbar{background:#0d0505;text-align:center;padding:12px;font-size:13px;color:#d9b}
.footbar b{color:var(--gold)}
.footbar a{color:#7db2ff;font-weight:600}

/* Breaking ticker */
.ticker{background:var(--red);color:#fff;display:flex;align-items:center;font-size:14px}
.ticker .label{background:var(--dark);color:var(--gold);font-weight:800;padding:8px 14px;letter-spacing:.5px}
.ticker marquee{padding:8px 10px}
.ticker b{font-weight:600}

/* Footer columns */
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:26px;padding:30px 16px}
@media(max-width:800px){footer .cols{grid-template-columns:1fr}}
footer h4{color:#fff;margin-bottom:8px}
