/* =====================================================
   AGYATRAAZ THEME
   Main Stylesheet
   Version : 1.1.0
====================================================== */

/* ==========================
   CSS RESET
========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body {
    font-family: 'Poppins', sans-serif;   /* Premium font */
    background: #0E0E10;                  /* Dark premium background */
    color: #EAEAEA;                       /* Soft white text */
    line-height: 1.8;                     /* Better readability */
    overflow-x: hidden;                   /* Keep horizontal scroll hidden */
    transition: background-color 0.5s ease, color 0.5s ease; /* Smooth mode change */
}

img{
    max-width:100%;
    height:auto;
    display:block;
}

a{
    color:inherit;
    text-decoration:none;
}

ul{
    list-style:none;
}

button{
    cursor:pointer;
    border:none;
    outline:none;
}

input,
textarea{
    outline:none;
}
/* ==========================
   CONTAINER
========================== */

.container{
    width:min(1600px,97%);
    margin:auto;
}

/* ==========================
   ROOT COLORS
========================== */

:root{

    --primary:#7c3aed;
    --secondary:#00d4ff;

    --background:#0f1117;

    --card:#181b22;

    --border:#2a2f39;

    --text:#ffffff;

    --paragraph:#b8bec9;

}

h1,h2,h3,h4,h5,h6{

    color:var(--text);

    font-weight:700;

}

p{

    color:var(--paragraph);

}

/* ====================================
   HEADER
==================================== */

#site-header{

    background:#11141b;

    position:sticky;

    top:0;

    z-index:999;

    border-bottom:1px solid var(--border);

}

.header-wrapper{

    display:flex;

    align-items:center;

    justify-content:space-between;

    height:75px;

}

.header-actions{
	display:flex;
	align-items:center;
	gap:12px;
}

.site-logo a{

    font-size:28px;

    font-weight:700;

    color:#fff;

}

.primary-menu{

    display:flex;

    gap:28px;

}

.primary-menu li a{

    color:#fff;

    font-size:16px;

    transition:.3s;

}

.primary-menu li a:hover{

    color:var(--primary);

}

@media(max-width:768px){

	.site-logo a{
		font-size:22px;
	}

}

/*=========================================
    LAYOUT
=========================================*/

.content-wrapper{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:30px;
    margin:40px 0;
}

.main-content{
    min-width:0;
}

.sidebar{
    min-width:0;
}

/*=========================================
    POST CARD
=========================================*/

.post-card{
    background:var(--card);
    border:1px solid var(--border);
    border-radius:18px;
    overflow:hidden;
    margin-bottom:35px;
    transition:0.35s ease;
}

.post-card:hover{
    transform:translateY(-5px);
    box-shadow:0 20px 40px rgba(0,0,0,.30);
}

.post-thumbnail img{
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
}

.post-content{
    padding:25px;
}

.post-meta{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:15px;
    font-size:14px;
    color:var(--paragraph);
}

.post-title{
    margin-bottom:15px;
    font-size:30px;
    line-height:1.35;
}

.post-title a{
    color:var(--text);
}

.post-title a:hover{
    color:var(--primary);
}

.post-excerpt{
    margin-bottom:22px;
    color:var(--paragraph);
    font-size:16px;
}

.read-more{
    display:inline-block;
    background:var(--primary);
    color:#fff;
    padding:12px 24px;
    border-radius:10px;
    font-weight:600;
    transition:.3s;
}

.read-more:hover{
    background:#6d28d9;
}

/*=========================================
    SIDEBAR
=========================================*/

.widget{
    background:var(--card);
    border:1px solid var(--border);
    border-radius:18px;
    padding:25px;
    margin-bottom:25px;
}

.widget-title{
    margin-bottom:18px;
    font-size:22px;
}

.widget ul li{
    margin-bottom:12px;
}

.widget ul li:last-child{
    margin-bottom:0;
}

.widget a{
    transition:.3s;
}

.widget a:hover{
    color:var(--primary);
}
/*=========================================
    HERO SECTION
=========================================*/

.hero-section {
  position: relative;
  margin-bottom: 50px;
  border-radius: 12px;
  overflow: hidden;
  height: 400px;
  animation: fadeInHero 1.2s ease-in-out;
}

/* ✅ Hero Image */
.hero-image {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  overflow: hidden;
}

.hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1.05);
  transition: transform 6s ease;
}

.hero-section:hover .hero-image img {
  transform: scale(1.1); /* Subtle zoom effect */
}

/* ✅ Overlay */
.hero-overlay {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: linear-gradient(to bottom, rgba(0,0,0,0.5), rgba(0,0,0,0.8));
  z-index: 1;
}


/* ✅ Hero Text Readability */
.hero-content {
  position: absolute;
  bottom: 30px;
  left: 40px;
  color: #fff;
  text-shadow: 0 3px 8px rgba(0,0,0,0.6);
  background: rgba(0,0,0,0.35);
  padding: 20px;
  border-radius: 10px;
  backdrop-filter: blur(4px);
}


.hero-category {
  margin-bottom: 15px;
}

.hero-category a {
  display: inline-block;
  background: var(--primary);
  color: #fff;
  padding: 8px 16px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 600;
}

/* ✅ Hero Title White Text */
.hero-title {
  font-size: 2.5rem;
  margin-bottom: 15px;
  font-weight: 700;
  color: #ffffff;          /* Pure white text */
  text-shadow: 0 3px 8px rgba(0,0,0,0.6); /* Adds clarity */
}


.hero-title a {
  color: inherit;
}

.hero-title a:hover {
  color: var(--primary);
}

.hero-excerpt {
  font-size: 18px;
  margin-bottom: 25px;
  color: var(--paragraph);
}

.hero-button {
  display: inline-block;
  background: var(--primary);
  color: #fff;
  padding: 14px 28px;
  border-radius: 10px;
  font-weight: 700;
  transition: .3s;
}

.hero-button:hover {
  background: #6d28d9;
}

/* ✅ Hero Meta */
.hero-meta {
  font-size: 0.95rem;
  color: #ddd;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.hero-meta span {
  position: relative;
  cursor: pointer;
  transition: color 0.3s ease;
}

.hero-meta span:hover {
  color: #fff;
}

.hero-meta span::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 0%;
  height: 2px;
  background: linear-gradient(90deg, #6366f1, #8b5cf6);
  transition: width 0.3s ease;
}

.hero-meta span:hover::after {
  width: 100%;
}

.hero-image img {
  position: relative;
  z-index: 0;
}

.hero-content {
  z-index: 2;
}

/*=========================================
    HERO GRID
=========================================*/

.hero-grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 25px;
}

.hero-left,
.hero-right {
  min-width: 0;
}

.trending-card {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 22px;
  transition: .35s;
}

.trending-card:hover {
  transform: translateY(-4px);
}

.trending-thumb img {
  width: 100%;
  height: 170px;
  object-fit: cover;
}

.trending-content {
  padding: 18px;
}

.trending-content h3 {
  font-size: 18px;
  margin-bottom: 10px;
  line-height: 1.4;
}

.trending-content a {
  color: #fff;
}

.trending-content a:hover {
  color: var(--primary);
}

.trending-content span {
  font-size: 13px;
  color: var(--paragraph);
}

/*=========================================
    KEYFRAMES
=========================================*/

@keyframes fadeInHero {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeOverlay {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes slideUpHero {
  from { opacity: 0; transform: translateY(40px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes gradientShift {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}


/*=========================================
    SECTION TITLE
=========================================*/

.section-title{
    margin:50px 0 25px;
}

.section-title h2{
    font-size:34px;
    font-weight:700;
}

/*=========================================
    LATEST POSTS
=========================================*/

.latest-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.latest-card{
    background:var(--card);
    border:1px solid var(--border);
    border-radius:18px;
    overflow:hidden;
    transition:.35s;
}

.latest-card:hover{
    transform:translateY(-6px);
    box-shadow:0 15px 35px rgba(0,0,0,.30);
}

.latest-card img{
    width:100%;
    height:220px;
    object-fit:cover;
}

.latest-content{
    padding:22px;
}

.latest-category{
    margin-bottom:12px;
}

.latest-category a{
    color:var(--primary);
    font-size:13px;
    font-weight:700;
}

.latest-content h3{
    font-size:22px;
    line-height:1.4;
    margin-bottom:14px;
}

.latest-content h3 a{
    color:#fff;
}

.latest-content h3 a:hover{
    color:var(--primary);
}

.latest-content p{
    color:var(--paragraph);
    font-size:15px;
}

/*=========================================
    CATEGORY SECTION
=========================================*/

.category-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:20px;

margin-bottom:50px;

}

.category-card{

background:linear-gradient(135deg,#181b22,#252933);

border:1px solid var(--border);

border-radius:18px;

padding:30px;

transition:.35s;

text-align:center;

}

.category-card:hover{

transform:translateY(-6px);

border-color:var(--primary);

}

.category-card h3{

font-size:24px;

margin-bottom:10px;

color:#fff;

}

.category-card span{

color:var(--paragraph);

font-size:15px;

}

/*=========================================
    POPULAR POSTS
=========================================*/

.popular-posts{

margin:60px 0;

}

.popular-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:25px;

}

.popular-card{

background:var(--card);

border-radius:18px;

overflow:hidden;

border:1px solid var(--border);

transition:.35s;

}

.popular-card:hover{

transform:translateY(-6px);

box-shadow:0 15px 35px rgba(0,0,0,.35);

}

.popular-thumb img{

width:100%;

height:220px;

object-fit:cover;

}

.popular-content{

padding:20px;

}

.popular-meta{

font-size:13px;

margin-bottom:12px;

color:var(--paragraph);

}

.popular-content h3{

font-size:21px;

line-height:1.45;

}

.popular-content h3 a{

color:#fff;

}

.popular-content h3 a:hover{

color:var(--primary);

}
/*=========================================
    NEWSLETTER
=========================================*/

.newsletter-section{

margin:70px 0;

}

.newsletter-box{

background:linear-gradient(135deg,#4f46e5,#7c3aed);

padding:60px 35px;

border-radius:22px;

text-align:center;

}

.newsletter-box h2{

font-size:36px;

color:#fff;

margin-bottom:15px;

}

.newsletter-box p{

max-width:700px;

margin:auto;

color:#f1f1f1;

font-size:18px;

margin-bottom:30px;

line-height:1.8;

}

.newsletter-form{

display:flex;

justify-content:center;

gap:15px;

flex-wrap:wrap;

}

.newsletter-form input{

width:420px;

max-width:100%;

padding:16px 18px;

border:none;

border-radius:10px;

font-size:16px;

outline:none;

}

.newsletter-form button{

padding:16px 28px;

border:none;

border-radius:10px;

background:#111827;

color:#fff;

font-size:16px;

font-weight:700;

cursor:pointer;

transition:.3s;

}

.newsletter-form button:hover{

transform:translateY(-2px);

}

/*=========================================
    FOOTER
=========================================*/

.site-footer{

margin-top:70px;

background:#111827;

color:#d1d5db;

}

.footer-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:40px;

padding:70px 0;

}

.footer-widget h3{

margin-bottom:18px;

font-size:22px;

color:#fff;

}

.footer-widget p{

line-height:1.8;

}

.footer-widget ul{

list-style:none;

padding:0;

}

.footer-widget li{

margin-bottom:12px;

}

.footer-widget a{

color:#d1d5db;

transition:.3s;

}

.footer-widget a:hover{

color:var(--primary);

}

.social-links li{

display:inline-block;

margin-right:15px;

}

.footer-bottom{

border-top:1px solid rgba(255,255,255,.08);

padding:25px 0;

text-align:center;

font-size:14px;

}

/*=========================================
    READING PROGRESS BAR
=========================================*/

#reading-progress{
    position:fixed;
    top:0;
    left:0;
    width:0%;
    height:4px;
    background:linear-gradient(90deg,#6366f1,#8b5cf6);
    z-index:99999;
    transition:width .1s linear;
}

/*=========================================
    POST META
=========================================*/

.post-meta{

display:flex;

flex-wrap:wrap;

gap:18px;

align-items:center;

margin:18px 0 28px;

font-size:15px;

color:var(--paragraph);

}

.post-meta span{

display:flex;

align-items:center;

gap:6px;

}

/*=========================================
    AUTHOR BOX
=========================================*/

.author-box{

display:flex;

align-items:flex-start;

gap:25px;

margin:60px 0;

padding:30px;

background:var(--card);

border:1px solid var(--border);

border-radius:18px;

}

.author-avatar img{

border-radius:50%;

display:block;

}

.author-info{

flex:1;

}

.author-info h3{

font-size:24px;

margin-bottom:12px;

color:#fff;

}

.author-info p{

margin-bottom:18px;

line-height:1.8;

color:var(--paragraph);

}

.author-info a{

font-weight:700;

color:var(--primary);

}

/*=========================================
    RELATED POSTS
=========================================*/

.related-posts{

margin:60px 0;

}

.related-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:25px;

}

.related-card{

background:var(--card);

border:1px solid var(--border);

border-radius:18px;

overflow:hidden;

transition:.35s;

}

.related-card:hover{

transform:translateY(-5px);

box-shadow:0 15px 35px rgba(0,0,0,.25);

}

.related-thumb img{

width:100%;

height:200px;

object-fit:cover;

display:block;

}

.related-content{

padding:20px;

}

.related-content h3{

font-size:20px;

line-height:1.5;

}

.related-content a{

color:#fff;

}

.related-content a:hover{

color:var(--primary);

}


/*=========================================
    POST NAVIGATION
=========================================*/

.post-navigation{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:25px;
    margin:60px 0;
}

.post-navigation a{
    display:block;
    background:var(--card);
    border:1px solid var(--border);
    border-radius:18px;
    padding:24px;
    transition:.3s;
}

.post-navigation a:hover{
    border-color:var(--primary);
    transform:translateY(-4px);
}

.nav-label{
    display:block;
    margin-bottom:12px;
    color:var(--primary);
    font-size:14px;
    font-weight:600;
}

.post-navigation h3{
    color:var(--text);
    font-size:20px;
    line-height:1.5;
}

/*=========================================
    SINGLE CONTENT LAYOUT
=========================================*/

.single-content-wrapper {
  max-width: 850px;          /* Comfortable reading width */
  margin: 60px auto;         /* Center alignment with breathing space */
  padding: 0 40px;           /* Left-right gap for text clarity */
  background: rgba(255,255,255,0.03); /* Soft transparent layer */
  border-radius: 12px;
  box-shadow: 0 0 25px rgba(0,0,0,0.25); /* Smooth depth */
}

.entry-content {
  min-width: 0;
  color: #EAEAEA;
}

.entry-content img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
  display: block;
  margin: 25px auto;         /* Center image alignment */
}

.entry-content h2,
.entry-content h3,
.entry-content h4 {
  margin: 40px 0 20px;
  line-height: 1.4;
  color: #00B4D8;            /* Highlight headings */
}

.entry-content p {
  margin-bottom: 20px;
  line-height: 1.9;
  text-align: justify;
  text-shadow: 0 0 2px rgba(0,0,0,0.4); /* Text clarity near edges */
}

/*=========================================
    SHARE BUTTONS
=========================================*/

.share-buttons{

margin:50px 0;

padding:25px;

background:var(--card);

border:1px solid var(--border);

border-radius:18px;

}

.share-buttons h3{

margin-bottom:20px;

font-size:24px;

}

.share-links{

display:flex;

flex-wrap:wrap;

gap:15px;

}

.share-links a{

display:inline-flex;

align-items:center;

justify-content:center;

padding:12px 22px;

border-radius:10px;

text-decoration:none;

font-weight:600;

color:#fff;

transition:.3s;

}

.share-links a:hover{

transform:translateY(-3px);

}

.share-whatsapp{

background:#25D366;

}

.share-facebook{

background:#1877F2;

}

.share-twitter{

background:#111827;

}

.share-telegram{

background:#229ED9;

}

/*=========================================
    POST VIEWS
=========================================*/

.post-views{

display:flex;

align-items:center;

gap:6px;

}

/*=========================================
    BREADCRUMB
=========================================*/


/*=========================================
    FLOATING SHARE
=========================================*/


/*=========================================
    DARK MODE
=========================================*/

.dark-mode{
	background:#111827;
	color:#f3f4f6;
}

.dark-mode .site-header,
.dark-mode .site-footer,
.dark-mode .author-box,
.dark-mode .share-buttons{
	background:#1f2937;
}

.dark-mode-toggle{
	cursor:pointer;
	padding:10px 14px;
	border:none;
	border-radius:8px;
	font-size:18px;
	background:var(--primary);
	color:#fff;
}

/*=========================================
    COPY LINK
=========================================*/

.copy-link-button{

margin:20px 0;

padding:12px 20px;

background:var(--primary);

color:#fff;

border:none;

border-radius:10px;

cursor:pointer;

font-weight:600;

transition:.3s;

}

.copy-link-button:hover{

opacity:.9;

}


/*=========================================
    LIVE SEARCH
=========================================*/

.live-search-wrapper{

	position:relative;

	margin-left:20px;

}

#agyatraaz-live-search{

	padding:10px 14px;

	border:1px solid #ddd;

	border-radius:8px;

	width:220px;

}

#agyatraaz-search-results{

	position:absolute;

	top:100%;

	left:0;

	right:0;

	background:#fff;

	border:1px solid #ddd;

	display:none;

	z-index:999;

	border-radius:8px;

}

/*=========================================
    MOBILE MENU BUTTON
=========================================*/

.menu-toggle{
	display:none;
	width:44px;
	height:44px;
	background:transparent;
	border:none;
	padding:0;
	cursor:pointer;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	gap:5px;
}

.menu-toggle span{
	display:block;
	width:24px;
	height:3px;
	background:#ffffff;
	border-radius:50px;
	transition:.3s;
}

.custom-logo{
    max-height:70px;
    width:auto;
    display:block;
}

.site-logo{
    display:flex;
    align-items:center;
}


/*=========================================
    READING MODE
=========================================*/

/* ✅ Base Reading Mode */
body.reading-mode .single-post,
body.reading-mode .single-content-wrapper {
  background: #ffffff !important;
  color: #111111 !important;
  box-shadow: none;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 40px;
}

/* ✅ Headings */
body.reading-mode .entry-content h1,
body.reading-mode .entry-content h2,
body.reading-mode .entry-content h3,
body.reading-mode .entry-content h4 {
  color: #222222 !important;
  font-weight: 700;
}

/* ✅ Paragraphs & Text */
body.reading-mode .entry-content,
body.reading-mode .entry-content p,
body.reading-mode .entry-content span {
  color: #111111 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

/* ✅ Author Box */
body.reading-mode .author-box {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 20px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
}

body.reading-mode .author-box h3,
body.reading-mode .author-box p,
body.reading-mode .author-box span {
  color: #111111 !important;
}

body.reading-mode .author-box a {
  color: #0077cc !important;
  font-weight: 600;
}

body.reading-mode .author-box a:hover {
  color: #005fa3 !important;
}

/* ✅ Social Share Section */
body.reading-mode .share-buttons {
  background: #ffffff !important;
  border: 1px solid #ddd;
  color: #111111 !important;
}

body.reading-mode .share-buttons h3,
body.reading-mode .share-buttons span {
  color: #111111 !important;
}

body.reading-mode .share-buttons a {
  color: #ffffff !important;
  font-weight: 600;
}

body.reading-mode .share-buttons a:hover {
  opacity: 0.9;
}

/* ✅ Smooth Transition */
body {
  transition: background-color 0.5s ease, color 0.5s ease;
}

body.reading-mode {
  background: #ffffff;
  color: #111111;
}


/*=========================================
    SCROLL TO TOP BUTTON
=========================================*/

#scrollToTop {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 999;
  background: var(--primary);
  color: #fff;
  border: none;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  font-size: 22px;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0,0,0,0.2);
  opacity: 0;
  transition: opacity 0.4s ease, transform 0.3s ease;
}

#scrollToTop:hover {
  transform: scale(1.1);
  background: #6d28d9;
}
