body{
    margin:0;
    background:#0d0d0d;
    color:#fff;
    font-family:Arial, sans-serif;
}

.container{
    width:90%;
    max-width:1200px;
    margin:auto;
}

/* Header */
.site-header{
    background:#000;
    padding:20px 0;
    border-bottom:1px solid #1f1f1f;
}

.logo a{
    color:#ff1e1e;
    font-size:28px;
    font-weight:bold;
    text-decoration:none;
}

.header-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.main-nav ul{
    list-style:none;
    display:flex;
    gap:20px;
    margin:0;
    padding:0;
}

.main-nav a{
    color:#fff;
    text-decoration:none;
}

.main-nav a:hover{
    color:#ff1e1e;
}

/* Breaking */
.breaking-bar{
    background:#ff1e1e;
    padding:10px;
    font-weight:bold;
}

/* Layout */
.home-layout{
    display:grid;
    grid-template-columns: 2.3fr 1fr;
    gap:40px;
    margin-top:40px;
}

/* HERO */
.hero-post {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
}

.hero-post img {
  width: 100%;
  height: auto;
  display: block;
}

.hero-overlay{
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    padding:30px;
    background:linear-gradient(to top, rgba(0,0,0,.95) 20%, rgba(0,0,0,.6) 60%, transparent 100%);
}

.hero-overlay h2{
    font-size:34px;
    color:#fff;
    margin:0;
    font-weight:800;
}

.hero-overlay .meta{
    color:#00ff99;
    font-size:14px;
    margin-top:10px;
}

/* GRID */
.post-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-top:30px;
}

.grid-card img{
    width:100%;
    border-radius:10px;
}

.grid-card h3{
    font-size:16px;
    margin:10px 0 5px;
}

.meta-small{
    font-size:12px;
    color:#00ff99;
}


.sidebar{
    padding-left:10px;
}

.sidebar-title{
    font-size:18px;
    color:#00ff99;
    border-bottom:2px solid #00ff99;
    padding-bottom:8px;
}

.headline-item{
    margin-bottom:20px;
}

.headline-item .cat{
    font-size:12px;
    color:#00ff99;
    font-weight:600;
    text-transform:uppercase;
}
a{
    color:#fff;
    text-decoration:none;
}

a:hover{
    color:#ff1e1e;
}
/* ======================
   FORCE MOBILE FIX
====================== */

@media screen and (max-width: 1024px) {

  .home-layout {
    display: block !important;
  }

  .main-content {
    width: 100% !important;
  }

  .sidebar {
    width: 100% !important;
    position: relative !important;
    top: auto !important;
    margin-top: 40px !important;
  }

  .post-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }

}

@media screen and (max-width: 600px) {

  .post-grid {
    grid-template-columns: 1fr !important;
  }

  .hero-overlay h2 {
    font-size: 20px !important;
  }

}
@media (max-width: 600px) {

  .hero-overlay {
    padding: 18px;
    background: linear-gradient(
      to top,
      rgba(0,0,0,.95) 30%,
      rgba(0,0,0,.6) 60%,
      transparent 100%
    );
  }

  .hero-overlay h2 {
    font-size: 22px;
    line-height: 1.3;
  }

  .hero-overlay .meta {
    font-size: 13px;
  }

}
/* ===== SINGLE PAGE ===== */

.single-wrap{
    max-width: 900px;
    margin: 40px auto;
    padding: 0 18px;
}

/* Breadcrumb */
.breadcrumb{
    font-size:14px;
    color:#aaa;
    margin-bottom:20px;
}

.breadcrumb a{
    color:#00ff99;
}

/* Title */
.post-title{
    font-size:38px;
    font-weight:800;
    line-height:1.2;
    margin-bottom:25px;
}

/* Meta Row */
.post-meta-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-bottom:1px solid #1f1f1f;
    padding-bottom:15px;
    margin-bottom:30px;
}

.author-left{
    display:flex;
    gap:12px;
    align-items:center;
}

.author-name{
    font-weight:600;
    color:#00ff99;
}

.author-role{
    font-size:12px;
    color:#aaa;
}

.publish-date{
    font-size:14px;
    color:#aaa;
}

/* Featured Image */
.featured-image{
    position:relative;
    margin-bottom:30px;
}

.featured-image img{
    width:100%;
    border-radius:14px;
}

/* Blur Credit Strip */
.image-credit{
    position:absolute;
    bottom:0;
    width:100%;
    padding:14px;
    font-size:14px;
    backdrop-filter:blur(12px);
    background:rgba(0,0,0,0.65);
    text-align:center;
}

/* Content */
.post-content{
    font-size:18px;
    line-height:1.8;
}

.post-content p{
    margin-bottom:20px;
}

/* Mobile */
@media(max-width:768px){

    .post-title{
        font-size:26px;
    }

    .post-meta-row{
        flex-direction:column;
        align-items:flex-start;
        gap:10px;
    }

}