/*
Theme Name: Astra Child
Theme URI: http://example.com/astra-child/
Description: Astra Child Theme
Author: Your Name
Author URI: http://example.com
Template: astra
Version: 1.0.0
*/

/* Add your custom styles here */
.blog-container {
  max-width:1180px;
  margin:0 auto;
  padding:0 20px;
}
.blog-layout {
  display:grid;
  grid-template-columns:1fr 300px;
  gap:70px;
}
.blog-main {
  max-width:760px;
}
.blog-sidebar {
  position:sticky;
  top:120px;
}

/*FEATURED IMAGE*/
.featured-image {
    width: 100%;
    height: 350px;
    overflow: hidden;
    border-radius: 12px;
    margin-bottom: 40px;
}

.featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* ============================= GLOBAL CONTAINER ============================= */ 
.shn-container {
  max-width:1180px;
  margin:0 auto;
  /*padding:0 20px;*/
}
/* ============================= HERO SECTION ============================= */ 
.shn-hero {
  background:#1554b2;
  color:#fff;
  padding:90px 0;
}
.shn-hero-inner {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:70px;
  align-items:center;
}
.shn-title {
  font-size:48px;
  font-weight:800;
  line-height:1.2;
  margin:20px 0;
}

.shn-meta {
  font-size:15px;
  opacity:0.9;
  display:flex;
  gap:20px;
}
.shn-hero-right img {
  width:100%;
  border-radius:14px;
}
/* ============================= BODY SECTION ============================= */ 
.shn-body {
  padding:50px 0;
}
.shn-layout {
  display:grid;
  grid-template-columns:1fr 300px;
  gap:70px;
}
.shn-content {
    max-width: 760px;
    background: white;
    padding: 25px;
    border-radius: 20px;
}
.shn-content h2 {
  /*font-size:30px;*/
  margin-top:30px;
}
.shn-content h3 {
    line-height:1.5;
  /*font-size:22px;*/
  margin-bottom:18px;
}
.shn-content p {
  font-size:18px;
  line-height:1.8;
  margin-bottom:20px;
}
/* ============================= TOC ============================= */ 
.shn-toc {
  position:sticky;
  top:120px;
  background:#fff;
  border:1px solid #eee;
  padding:25px;
  border-radius:12px;
  max-height:75vh;
  overflow-y:auto;
}
.shn-toc h4 {
  margin-bottom:15px;
  line-height: 1.4;
  font-size:18px;
  font-weight:700;
}
#toc a {
  display:block;
  font-size:14px;
  text-decoration:none;
  color:#444;
  margin-bottom:8px;
  line-height:1.4;
}
#toc a.active {
    font-weight: 600;
    color: #000;
    border-left: 2px #000 solid;
    padding-left: 10px;
}
/* ============================= RESPONSIVE ============================= */ 
@media (max-width:1024px) {
  .shn-hero-inner {
  grid-template-columns:1fr;
  text-align:center;
}
.shn-layout {
  grid-template-columns:1fr;
}
.shn-sidebar {
  display:none;
}
.shn-title {
  font-size:34px;
}
.shn-content p {
  font-size:16px;
}
}