/* =====================
   RESET & BASE
===================== */
*{box-sizing:border-box}

body{
  margin:0;
  font-family:'Noto Sans Devanagari', sans-serif;
  background:#f4f4f4;
  color:#111;
}

a{color:#111;text-decoration:none}
a:hover{text-decoration:underline}

.container{
  width:1200px;
  max-width:95%;
  margin:auto;
}

/* =====================
   HEADER
===================== */
.site-header{
  background:#c00000;
  color:#fff;
  position:sticky;
  top:0;
  z-index:1000;
}

.header-flex{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 0;
}

.logo-wrap{display:flex;align-items:center}
.site-logo{height:42px;width:auto}

.top-links a{
  color:#fff;
  font-size:14px;
  font-weight:500;
  margin:0 4px;
}

/* =====================
   DARK TOGGLE
===================== */
.dark-toggle{
  background:none;
  border:1px solid rgba(255,255,255,.6);
  color:#fff;
  padding:6px 10px;
  border-radius:4px;
  cursor:pointer;
  font-size:14px;
}
/* =====================
   NAV BAR
===================== */
.nav{
  background:#fff;
  border-bottom:1px solid #ddd;
}

.nav-flex{
  display:flex;
  align-items:center;
  justify-content:space-between;
  position:relative;
}

/* MENU LIST */
.nav-menu{
  display:flex;
  gap:18px;
  list-style:none;
  padding:12px 0;
  margin:0;
}

.nav-menu a{
  font-weight:500;
  padding:6px 4px;
}

/* MOBILE MENU BUTTON */
.menu-btn{
  display:none;
  font-size:22px;
  background:none;
  border:1px solid #ddd;
  padding:4px 10px;
  border-radius:4px;
  cursor:pointer;
}

/* =====================
   MOBILE NAV
===================== */
@media(max-width:768px){

  .menu-btn{
    display:block;
  }

  .nav-menu{
    display:none;
    flex-direction:column;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    background:#fff;
    border-top:1px solid #ddd;
    padding:10px 20px;
    z-index:999;
  }

  .nav-menu li{
    padding:8px 0;
    border-bottom:1px solid #eee;
  }

  .nav-menu.show{
    display:flex;
  }
}

/* DARK MODE NAV */
body.dark .nav{
  background:#1e1e1e;
  border-color:#333;
}

body.dark .nav-menu{
  background:#1e1e1e;
}

body.dark .nav-menu a{
  color:#eee;
}

/* =====================
   BREAKING NEWS
===================== */
.breaking{
  background:#111;
  color:#fff;
  padding:8px 0;
  font-size:14px;
}
.breaking marquee{font-weight:500}

/* =====================
   MAIN
===================== */
.main-content{padding:20px 0}

/* =====================
   HERO (ABP STYLE)
===================== */
.hero{
  position:relative;
  margin-bottom:30px;
}

.hero img{
  width:100%;
  height:420px;
  object-fit:cover;
  border-radius:6px;
}

.hero h1{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  margin:0;
  padding:18px;
  font-family:'Noto Serif Devanagari';
  font-size:34px;
  background:linear-gradient(transparent, rgba(0,0,0,.85));
}

.hero h1 a{color:#fff}

/* =====================
   SECTION HEADERS
===================== */
.section-title{
  display:flex;
  align-items:center;
  gap:12px;
  font-family:'Noto Serif Devanagari';
  font-size:26px;
  margin:35px 0 15px;
  border-left:5px solid #c00000;
  padding-left:10px;
}

.section-title::after{
  content:"";
  flex:1;
  height:1px;
  background:#ddd;
}

/* VIEW ALL */
.view-all{
  font-size:14px;
  color:#c00000;
  white-space:nowrap;
}

/* =====================
   GRID & CARDS
===================== */
.news-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.news-card{
  background:#fff;
  padding:10px;
  border-radius:6px;
  position:relative;
  transition:.25s;
}

.news-card:hover{
  transform:translateY(-3px);
  box-shadow:0 6px 18px rgba(0,0,0,.12);
}

.news-card img{
  width:100%;
  height:180px;
  object-fit:cover;
  border-radius:4px;
}

.news-card h3{
  font-size:17px;
  margin:8px 0 4px;
  line-height:1.35;
}

/* =====================
   CATEGORY TAG
===================== */
.cat-tag{
  display:inline-block;
  font-size:12px;
  font-weight:600;
  padding:3px 8px;
  border-radius:3px;
  margin-bottom:6px;
  color:#fff;
}

.cat-rajkaran{background:#c00000}
.cat-gunhe{background:#000}
.cat-satara{background:#0066cc}
.cat-maharashtra{background:#ff6a00}

/* =====================
   TRENDING BADGE
===================== */
.trending{
  position:absolute;
  top:8px;
  left:8px;
  background:#ff0000;
  color:#fff;
  font-size:12px;
  font-weight:600;
  padding:3px 6px;
  border-radius:3px;
  z-index:2;
}

/* =====================
   META INFO
===================== */
.meta{
  font-size:13px;
  color:#666;
  margin-top:4px;
}
.meta span{margin-right:10px}

/* =====================
   ARTICLE + SIDEBAR
===================== */
.article-wrap{
  display:grid;
  grid-template-columns:3fr 1fr;
  gap:30px;
  margin:30px auto;
}

.article-title{
  font-family:'Noto Serif Devanagari';
  font-size:32px;
}

.article-content{
  font-size:18px;
  line-height:1.75;
}

.sidebar{
  background:#fff;
  padding:15px;
  border-radius:6px;
  position:sticky;
  top:90px;
}

.sidebar h3{
  font-family:'Noto Serif Devanagari';
  border-left:4px solid #c00000;
  padding-left:8px;
}

/* =====================
   FOOTER
===================== */
.site-footer{
  background:#111;
  color:#ccc;
  padding:40px 0 0;
  margin-top:40px;
}

.footer-bottom{
  border-top:1px solid #333;
  padding:15px 0;
  text-align:center;
  font-size:14px;
  color:#aaa;
}

/* =====================
   DARK MODE
===================== */
body.dark{
  background:#121212;
  color:#eee;
}

body.dark a{color:#eee}

body.dark .site-header,
body.dark .nav,
body.dark .news-card,
body.dark .sidebar{
  background:#1e1e1e;
  color:#eee;
}

body.dark .section-title{border-left-color:#ff4444}

/* =====================
   MOBILE
===================== */
@media(max-width:768px){

  .news-grid{grid-template-columns:1fr}

  .hero img{height:240px}

  .hero h1{font-size:22px;padding:12px}

  .section-title{font-size:22px}

  .article-wrap{grid-template-columns:1fr}

  .sidebar{margin-top:20px}
}
