/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://assameselyrical.com/
 Description:  A child theme for GeneratePress
 Author:       AKPathak
 Author URI:   https://assameselyrical.com/
 Template:     generatepress
 Version:      1.0.0
 Text Domain:  generatepress-child
*/


/* Archive Layout */

/* Archive Hero */

.archive-hero{
background:#21409a;
color:#fff;
text-align:center;
padding:70px 20px;
margin-bottom:40px;
}

.archive-inner{
max-width:800px;
margin:auto;
}

.archive-hero h1{
color:#fff;
font-size:48px;
margin-bottom:15px;
}

.archive-desc{
font-size:18px;
line-height:1.8;
margin-bottom:10px;
}

.archive-count{
font-size:14px;
opacity:.9;
}

/* Archive List */

.archive-wrapper{
max-width:1100px;
margin:0 auto;
padding:0 20px 60px;
}

.archive-post{
display:flex;
gap:25px;
background:#fff;
margin-bottom:25px;
padding:20px;
border-radius:12px;
box-shadow:0 3px 12px rgba(0,0,0,.08);
}

.archive-thumb{
width:320px;
flex-shrink:0;
}

.archive-thumb img{
width:100%;
height:180px;
object-fit:cover;
border-radius:10px;
display:block;
}

.archive-content{
flex:1;
}

.archive-meta{
font-size:13px;
color:#777;
margin-bottom:10px;
}

.archive-title{
font-size:28px;
line-height:1.4;
margin-bottom:12px;
}

.archive-title a{
color:#222;
text-decoration:none;
}

.archive-title a:hover

.archive-excerpt{
font-size:16px;
line-height:1.8;
color:#555;
margin-bottom:15px;
}

.archive-btn{
display:inline-block;
padding:10px 18px;
background:#21409a;
color:#fff;
text-decoration:none;
border-radius:6px;
}

.archive-btn:hover

/* Pagination */

.archive-pagination{
margin-top:40px;
text-align:center;
}

.archive-pagination .nav-links{
display:flex;
justify-content:center;
gap:8px;
flex-wrap:wrap;
}

.archive-pagination .page-numbers{
display:inline-flex;
align-items:center;
justify-content:center;
min-width:44px;
height:44px;
padding:0 15px;
background:#fff;
border:1px solid #ddd;
border-radius:8px;
text-decoration:none;
color:#333;
font-weight:600;
}

.archive-pagination .current{
background:#21409a;
color:#fff;
border-color:#21409a;
}

/* Mobile */

@media(max-width:768px){


.archive-post{
	flex-direction:column;
}

.archive-thumb{
	width:100%;
}

.archive-thumb img{
	height:220px;
}

.archive-title{
	font-size:22px;
}

.archive-hero h1{
	font-size:34px;
}


}




/* Add your custom CSS below this line */


.single-container{
	max-width:900px;
	margin:40px auto;
	padding:0 20px;
}

.single-post-card{
	background:#fff;
	padding:40px;
	border-radius:12px;
	box-shadow:0 5px 20px rgba(0,0,0,.08);
}

.post-category{
	display:inline-block;
	background:#2563eb;
	color:#fff;
	padding:6px 14px;
	border-radius:30px;
	font-size:13px;
	margin-bottom:15px;
}

.single-title{
	font-size:42px;
	line-height:1.3;
	margin-bottom:15px;
}

.single-meta{
	color:#777;
	margin-bottom:30px;
}

.single-featured-image{
	margin-bottom:30px;
}

.single-featured-image img{
	width:100%;
	height:auto;
	border-radius:10px;
}

.single-content{
	font-size:18px;
	line-height:1.9;
}

.single-content h2,
.single-content h3{
	margin-top:35px;
}

.related-posts{
	margin-top:60px;
}

.related-posts h3{
	margin-bottom:25px;
}

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

.related-card{
	background:#fff;
	border-radius:10px;
	overflow:hidden;
	box-shadow:0 3px 15px rgba(0,0,0,.08);
}

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

.related-card h4{
	padding:15px;
	font-size:16px;
	margin:0;
}

.related-card a{
	text-decoration:none;
	color:#222;
}

@media(max-width:768px){

	.single-title{
		font-size:30px;
	}

	.single-post-card{
		padding:20px;
	}

	.related-grid{
		grid-template-columns:1fr;
	}
}


/* GeneratePress Site CSS */ 

.inside-article,
.sidebar .widget,
.comments-area, .gb-query-loop-item:not(.sidebar .gb-query-loop-item),.container-widget {
	border-right: 2px solid rgba(0, 0, 0, 0.07);
	border-bottom: 2px solid rgba(0, 0, 0, 0.07);
	box-shadow: 0 0 10px rgba(232, 234, 237, 0.5);
}
 /* End GeneratePress Site CSS */

@media (max-width: 768px) {
    .post-image {
        display: none; /* Hide the image on screens smaller than 768px */
    }
}
/* Target all h2 elements within the footer widgets */
.inside-footer-widgets h2.wp-block-heading {
    color: white;
}
@media (max-width: 767px) {
    .inside-article .featured-image {
        display: none;
    }
}

        .entry-title {
            font-size: 2rem;
            line-height: 1.2;
            margin: 0.5em 0;
            padding: 0;
        }


        @media (max-width: 767px) {
            .entry-title {
                font-size: 1.5rem; 
                line-height: 1.3;
                margin: 0.5em 0;
                width: 90%; /* Define a width suitable for mobile */
                max-width: 100%;
            }
        }

        /* Define dimensions for larger screens */
        @media (min-width: 768px) {
            .entry-title {
                font-size: 2.5rem; /* Larger font size for desktop */
                line-height: 1.2;
                margin: 0.5em 0;
                width: auto; /* Define a width suitable for larger screens */
            }
        }

p {
    /* Add your styles here */
    width: 100%; /* Example width */
    height: auto; /* Example height */
    /* Add any other styles you want */
}


/* Targeting the main container for mobile devices */
@media (max-width: 768px) {
  .site.grid-container.container.hfeed {
    /* Ensure stable layout for mobile view */
    padding: 0 15px; /* Add padding to ensure content doesn't touch the edges */
  }

  /* Example: Reserving space for dynamic content (like ads) on mobile */
  .site.grid-container.container.hfeed .ad-container {
    min-height: 150px; /* Adjust to the typical height of your mobile ads */
    width: 100%;
    display: block;
  }

  /* Prevent layout shifts for images within the container */
  .site.grid-container.container.hfeed img {
    max-width: 100%;
    height: auto;
  }
	
	/* Ensure stability for entry-summary container */
.entry-summary[itemprop="text"] {
  padding: 10px; /* Add padding for content spacing */
  margin-bottom: 20px; /* Add margin to prevent overlap with subsequent content */
}

/* Prevent layout shifts for images within entry-summary */
.entry-summary[itemprop="text"] img {
  max-width: 100%; /* Ensure images are responsive */
  height: auto; /* Maintain aspect ratio */
  display: block; /* Prevent inline issues */
}

/* Ensure paragraphs are properly styled */
.entry-summary[itemprop="text"] p {
  margin: 0 0 10px; /* Add bottom margin for paragraph spacing */
  line-height: 1.6; /* Improve readability */
}

}

/* Responsive styles for mobile devices */
@media only screen and (max-width: 767px) {
    .inside-article {
        min-height: 200px; /* Smaller minimum height for mobile */
        padding: 15px; /* Adjusted padding for mobile */
    }
	
}

@media only screen and (max-width: 600px) {
  .inside-article {
    min-height: 489px!important;
  }
#page {
    min-height: 100vh;
}
	
.entry-summary p {

    min-height: 80px;
}
}

#block-24, #block-32 {
    padding: 0 !important;
}



/* home page */

.home-hero{
	background:#111827;
	color:#fff;
	padding:50px 20px;
	text-align:center;
	margin-bottom:30px;
	border-radius:12px;
}

.home-hero h1{
	font-size:36px;
	margin-bottom:10px;
}

.home-hero p{
	margin:0;
	font-size:16px;
	opacity:.9;
}

.lyrics-item{
	display:flex;
	gap:20px;
	margin-bottom:25px;
	padding:20px;
	background:#fff;
	border:1px solid #eee;
	border-radius:10px;
}

.lyrics-thumb{
	width:250px;
	flex-shrink:0;
}

.lyrics-thumb img{
	width:100%;
	height:auto;
	border-radius:8px;
	display:block;
}

.lyrics-content{
	flex:1;
}

.lyrics-content h2{
	margin:0 0 10px;
	font-size:24px;
}

.lyrics-content h2 a{
	color:#111;
	text-decoration:none;
}

.entry-meta{
	font-size:13px;
	color:#666;
	margin-bottom:10px;
}

.entry-excerpt{
	margin-bottom:15px;
}

.read-more-btn{
	display:inline-block;
	padding:10px 18px;
	background:#2563eb;
	color:#fff;
	text-decoration:none;
	border-radius:6px;
}

.pagination-wrap{
	margin-top:40px;
	text-align:center;
}

@media(max-width:768px){

	.lyrics-item{
		display:block;
	}

	.lyrics-thumb{
		width:100%;
		margin-bottom:15px;
	}

	.home-hero h1{
		font-size:28px;
	}
}


/* pagination css */

/* Pagination */

.pagination-wrap,
.paging-navigation,
.navigation.pagination {
	margin: 40px 0;
	text-align: center;
}

.page-numbers {
	display: inline-block;
	min-width: 42px;
	height: 42px;
	line-height: 42px;
	margin: 0 4px;
	padding: 0 14px;
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 6px;
	color: #222;
	font-weight: 600;
	text-decoration: none;
	transition: all .3s ease;
}

.page-numbers:hover {
	background: #0056d6;
	color: #fff;
	border-color: #0056d6;
}

.page-numbers.current {
	background: #0056d6;
	color: #fff;
	border-color: #0056d6;
}

.page-numbers.dots {
	background: transparent;
	border: none;
	box-shadow: none;
}

.nav-links {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px;
}

.prev.page-numbers,
.next.page-numbers {
	padding: 0 18px;
	font-weight: 700;
}

@media (max-width: 768px) {
	.page-numbers {
		min-width: 38px;
		height: 38px;
		line-height: 38px;
		font-size: 14px;
		margin: 2px;
	}
}




/* Post Box */

.inside-article {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 25px;
}

.entry-title {
    font-size: 28px;
    line-height: 1.3;
    margin-bottom: 10px;
}

.entry-title a {
    text-decoration: none;
}

.entry-meta {
    margin-bottom: 15px;
    font-size: 14px;
}

.entry-summary {
    line-height: 1.8;
}












/* Content Area */

.inside-article {
	background: #fff;
	padding: 20px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	margin-bottom: 25px;
	transition: all .2s ease;
}

.inside-article:hover {
	box-shadow: 0 5px 20px rgba(0,0,0,.06);
}

/* Title */

.entry-title {
	font-size: 30px;
	line-height: 1.3;
	margin-bottom: 10px;
}

.entry-title a {
	text-decoration: none;
	color: #111827;
}

.entry-title a:hover {
	color: #2563eb;
}

/* Meta */

.entry-meta {
	font-size: 13px;
	color: #6b7280;
	margin-bottom: 12px;
}

/* Featured Image */

.post-image,
.featured-image {
	margin-bottom: 15px;
}

.post-image img,
.featured-image img,
.wp-post-image {
	width: 100%;
	height: auto;
	border-radius: 8px;
	display: block;
}

/* Excerpt */

.entry-summary,
.entry-content {
	font-size: 16px;
	line-height: 1.8;
	color: #374151;
}

/* Read More */

.read-more,
.more-link {
	display: inline-block;
	margin-top: 10px;
	font-weight: 600;
	text-decoration: none;
}

/* Pagination */

.paging-navigation,
.navigation.pagination {
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #eee;
}

.nav-links {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 8px;
}

.page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 14px;
	border: 1px solid #ddd;
	border-radius: 6px;
	background: #fff;
	color: #333;
	text-decoration: none;
	font-weight: 600;
}

.page-numbers:hover {
	background: #2563eb;
	color: #fff;
	border-color: #2563eb;
}

.page-numbers.current {
	background: #2563eb;
	color: #fff;
	border-color: #2563eb;
}

/* Mobile */

@media (max-width:768px){

	.inside-article{
		padding:15px;
	}

	.entry-title{
		font-size:24px;
	}

	.page-numbers{
		min-width:38px;
		height:38px;
	}
}





/* GeneratePress Pagination */

.nav-links{
	display:flex;
	justify-content:center;
	align-items:center;
	flex-wrap:wrap;
	gap:8px;
	margin:40px 0;
}

.page-numbers{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:42px;
	height:42px;
	padding:0 14px;
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:8px;
	font-size:15px;
	font-weight:600;
	text-decoration:none;
	color:#374151;
	transition:.25s ease;
}

.page-numbers:hover{
	background:#2563eb;
	border-color:#2563eb;
	color:#fff;
	transform:translateY(-2px);
}

.page-numbers.current{
	background:#2563eb;
	border-color:#2563eb;
	color:#fff;
	box-shadow:0 4px 12px rgba(37,99,235,.25);
}

.page-numbers.dots{
	border:none;
	background:transparent;
	box-shadow:none;
	min-width:auto;
	padding:0 4px;
}

.next.page-numbers,
.prev.page-numbers{
	padding:0 18px;
	font-weight:700;
}

.screen-reader-text{
	display:none;
}

@media(max-width:768px){

	.nav-links{
		gap:6px;
	}

	.page-numbers{
		min-width:38px;
		height:38px;
		font-size:14px;
		padding:0 12px;
	}

	.next.page-numbers,
	.prev.page-numbers{
		padding:0 14px;
	}
}




/* Header Branding */

.site-header {
	background: #ffffff;
	border-bottom: 1px solid #e5e7eb;
}

.inside-header {
	min-height: 100px;
	display: flex;
	align-items: center;
}

/* Site Title */

.site-branding .main-title {
	margin: 0;
	line-height: 1;
}

.site-branding .main-title a {
	font-size: 42px;
	font-weight: 800;
	text-decoration: none;
	color: #1e3a8a;
	letter-spacing: -1px;
	text-transform: none;
}

/* Highlight part */

.site-branding .main-title a:hover {
	color: #2563eb;
}

/* Tagline */

.site-description {
	display: block;
	font-size: 15px;
	color: #6b7280;
	margin-top: 8px;
	font-weight: 500;
}

/* Mobile */

@media (max-width:768px) {

	.inside-header {
		min-height: 80px;
		padding: 15px;
	}

	.site-branding .main-title a {
		font-size: 28px;
	}
}


/* Footer */

.site-info {
	background: #111827;
	color: #e5e7eb;
	padding: 20px 0;
	border-top: 3px solid #2563eb;
}

.inside-site-info {
	text-align: center;
}

.copyright-bar {
	font-size: 15px;
	font-weight: 500;
	color: #e5e7eb;
}

.copyright-bar a {
	color: #60a5fa;
	text-decoration: none;
	font-weight: 600;
}

.copyright-bar a:hover {
	color: #ffffff;
	text-decoration: underline;
}

.site-info * {
	color: inherit;
}




/* Post Tags */

.post-tags {
	margin-top: 25px;
	padding-top: 20px;
	border-top: 1px solid #e5e7eb;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.post-tags a {
	display: inline-block;
	background: #f3f4f6;
	color: #374151;
	padding: 8px 14px;
	border-radius: 30px;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	transition: all .25s ease;
	border: 1px solid #e5e7eb;
}

.post-tags a:hover {
	background: #2563eb;
	color: #fff;
	border-color: #2563eb;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(37,99,235,.25);
}