/**
Theme Name: Astra Child
Author: Al Saeed
Author URI: https://wpastra.com/about
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

:root {
  --ast-global-color-1: #805aed; /* or your preferred color */
}

/* Make the body take full height */
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
}

/* Flexbox layout to push footer down */
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/* The main site content area */
#page {
    flex: 1;
    display: flex;
    flex-direction: column;
}

/* Optional: ensure your content area grows properly */
.site-content {
    flex: 1;
}






/*footer start*/



.container {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 15px;
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
}

.col-md-4, .col-md-2, .col-md-6 {
    padding: 0 15px;
    box-sizing: border-box;
}

.col-md-4 {
    width: 100%;
}

.col-md-2 {
    width: 100%;
}

.col-md-6 {
    width: 100%;
}

@media (min-width: 768px) {
    .col-md-2 {
        width: 16.6666%;
    }
    .col-md-4 {
        width: 33.3333%;
    }
    .col-md-6 {
        width: 50%;
    }
}

.me-2 {
    margin-right: 0.5rem;
}

/*footer end*/






/* Force heading sizes with higher specificity */
body h1, 
.entry-content h1 {
  font-size: 30px !important;
  margin-top: 24px;
}

body h2, 
.entry-content h2 {
  font-size: 26px !important;
  margin-top: 24px;
}

body h3, 
.entry-content h3 {
  font-size: 22px !important;
  margin-top: 24px;
}

body h4, 
.entry-content h4 {
  font-size: 20px !important;
  margin-top: 24px;
}

body h5, 
.entry-content h5 {
  font-size: 18px !important;
  margin-top: 24px;
}

body h6, 
.entry-content h6 {
  font-size: 16px !important;
  margin-top: 24px;
}









#comments .submit,
.search .search-submit {
    padding: 10px 15px;
    border-radius: 5px;
    line-height: 1.85714285714286;
    border: 0;
    background-color: #242F65; /* Change this to your desired button color */
    color: #fff; /* Text color */
    cursor: pointer;
    transition: background-color 0.3s ease;
}

#comments .submit:hover,
.search .search-submit:hover {
    background-color: #1b2555; /* Darker shade for hover */
    color: #ffffff;
}







/*social shairing*/
.alsaeed-social-share {
    margin-top: 25px;
    padding-top: 15px;
    border-top: 1px solid #e0e0e0;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 18px;
}

.alsaeed-social-share span {
    font-weight: 600;
    color: #333;
}

.alsaeed-social-share a {
    color: #555;
    transition: color 0.3s;
}

.alsaeed-social-share a:hover {
    color: #0073aa;
}










  /* search and blog- post */
  .ast-container{
     
    padding: 0;
}


@media (max-width: 544px) {
    .ast-separate-container #content .ast-container {
      padding: 0;
    }
}


.site-logo-img{
    padding: 0 20px;
}


/* Reset any unexpected theme styles */
  .custom-blog-wrapper {
    display: block !important;
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

.custom-hero-section {
    width: 100%;
    background-color: #F5F5F5;
    color: #4C455F;
    padding: 20px 20px;
}

.custom-hero-container {
    max-width: 1140px;
    margin: 0 auto;
    display: block;
}

.custom-hero-container h1 {
    font-size: 3rem;
    margin-bottom: 10px;
}

.custom-hero-container p {
    font-size: 1.25rem;
    margin-bottom: 20px;
}

.custom-hero-container a {
    display: inline-block;
    background: white;
    color: #805AED;
    padding: 12px 24px;
    font-size: 1rem;
    border-radius: 24px !important;
    text-decoration: none;
}

.custom-blog-section {
    padding: 60px 20px;
    background-color: #f9f9f9;
    width: 100%;
}




.al-saeed-blog-container {
max-width: 1140px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); /* Use auto-fill to ensure the posts fit properly */
gap: 30px;
}

/* Align grid items to the left when there's only one item */
.al-saeed-blog-container:only-child {
display: grid;
justify-items: start; /* Align items to the left when only one item is present */
}

/* When there are multiple items, align them normally */
.al-saeed-blog-container:not(:only-child) {
display: grid;
justify-items: stretch; /* Ensure the items stretch across the grid properly */
}

/* Ensure only one item in the grid won't take the full width */
.al-saeed-blog-container .custom-post-card {
max-width: 100%; /* Ensure the cards don't stretch out of proportion */
}

/* Make sure the grid adapts well on smaller screens */
@media (max-width: 768px) {
.al-saeed-blog-container {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
}




.custom-post-card {
    background: white;
    border: 1px solid #ddd;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
    
       
    width: 100%; /* Ensures it stays responsive */
}

.custom-post-card img {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

.custom-post-content {
    padding: 20px;
}


.custom-post-content p a {
color: #805aed;
text-decoration: none;
font-weight: 500;
font-size: 14px;
text-transform: none !important;
}

.custom-post-content p a:hover {
text-decoration: underline;
}



.custom-post-content p {
    font-size: 14px;
    color: #999;
    margin-bottom: 5px;
}

.custom-post-content h2 {
    font-size: 20px !important;
    margin: 10px 0 0;
}


/* Default / Desktop */
.custom-post-content h3 {
    font-size: 18px;
    line-height: 1.4;
    margin: 10px 0 0;
}

/* Tablet (768px and below) */
@media (max-width: 768px) {
    .custom-post-content h3 {
        font-size: 16px;
        line-height: 1.4;
    }
}

/* Mobile (480px and below) */
@media (max-width: 480px) {
    .custom-post-content h3 {
        font-size: 14px;
        line-height: 1.3;
    }
}

.custom-post-content h2 a,
.custom-post-content h3 a {
    color: #333;
    text-decoration: none;
        display: -webkit-box;
    -webkit-line-clamp: 2;   /* Limit to 2 lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.4em;      /* Adjust line spacing if needed */
    max-height: 2.8em;  
}








.custom-pagination-wrapper {
width: 100%;
margin-top: 40px;
display: flex;
justify-content: center;
}

.custom-pagination {
display: flex;
align-items: center;
gap: 8px;
flex-wrap: wrap;
}

.custom-pagination a,
.custom-pagination span {
display: inline-block;
position: relative;
padding: 6px 12px;
border: 1px solid #ddd;
border-radius: 4px;
text-decoration: none;
color: #805AED;
font-size: 16px;
}

.custom-pagination .current {
background-color: #805AED;
color: white;
font-weight: bold;
pointer-events: none;
}



/* Force override of WP default styles */
.custom-pagination .prev,
.custom-pagination .next {
position: static !important;
top: auto !important;
left: auto !important;
transform: none !important;
font-size: 16px !important;
background: transparent !important;
padding: 6px 12px;
border: 1px solid #ddd;
border-radius: 4px;
text-decoration: none;
color: #805AED;
display: inline-block;
vertical-align: middle;

}











/* category */

    .custom-post-card {
        background: white;
        border: 1px solid #ddd;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
        display: flex;
        flex-direction: column;
    }

   
    
.custom-blog-container {
    max-width: 1140px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); /* Use auto-fill to ensure the posts fit properly */
    gap: 30px;
}

/* Align grid items to the left when there's only one item */
.custom-blog-container:only-child {
    display: grid;
    justify-items: start; /* Align items to the left when only one item is present */
}

/* When there are multiple items, align them normally */
.custom-blog-container:not(:only-child) {
    display: grid;
    justify-items: stretch; /* Ensure the items stretch across the grid properly */
}

/* Ensure only one item in the grid won't take the full width */
.custom-blog-container .custom-post-card {
    max-width: 100%; /* Ensure the cards don't stretch out of proportion */
}

/* Make sure the grid adapts well on smaller screens */
@media (max-width: 768px) {
    .custom-blog-container {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    }
}












/*post content start*/
.containerOutput {
  max-width: 360px;
  margin: 40px auto;
}




.headingOutput {
  margin-bottom: 10px !important;
  text-align: left;
}



.shortsView {
  position: relative;
  width: 100%;
  aspect-ratio: 9 / 16;
  overflow: hidden;
  border-radius: 12px;
}

.shortsIframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}




.downloadPara {
  margin: 40px auto 0 auto;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.downloadBtn {
  color: #4caf50;
  text-decoration: none;
  font-size: 16px;
  font-weight: bold;
  border-bottom: 2px solid #4CAF50;
}


.downloadBtn:hover {

  border-bottom: 2px solid var(--ast-global-color-1);
}




/* Remove Astra content padding */
/*.ast-container, 
.ast-single-post, 
.site-content .ast-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
}*/





/* Target blog and category sections only */
body.blog .site-content > .ast-container,
body.archive .site-content > .ast-container,
body.search .site-content > .ast-container,
body.page-template-template-custom-blog-page-fixed-vertical-layout .site-content > .ast-container {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Keep header and footer at Astra's default width */
.ast-header-break-point .ast-header,
.ast-theme-transparent-header #masthead,
.ast-site-header-wrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}


/* Override active/ancestor menu link color */
.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link,
.ast-builder-menu-1 .inline-on-mobile .menu-item.current-menu-item > .ast-menu-toggle,
.ast-builder-menu-1 .current-menu-ancestor > .menu-link {
   /* color: #CF342B !important;*/ /* Replace with your custom color */
}


/*post content end*/



/*hide title for post only*/
/*.single-post .entry-title {
  display: none;
}
*/
    
    
    
    hr {
    margin-top: 40px;   /* space above the line */
    margin-bottom: 40px; /* space below the line */
    border: 0;          /* optional: remove default border */
   
}
    




/*hide title for post only*/
.single-post .entry-meta {
  display: none;
}


/*post category on the post card*/
.post-categories {
    margin-bottom: 10px;
}

.category-badge {
    display: inline-block;
    background: #F0F0F0;  /* Soft gray */
    color: #fff;
    padding: 5px 12px;
    border-radius: 12px;
    font-size: 13px;
    text-decoration: none;
    transition: 0.3s ease;
}

.category-badge:hover {
   background: #E0E0E0;
}

.separator {
    margin: 0 5px;
    color: #999;
}
    
/*post category end*/

