/**
Theme Name: bangalore-fruits
Author: Brainstorm Force
Author URI: http://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: bangalore-fruits
Template: astra
*/

ul {
  margin: 0;
  list-style: none;
}

/* Header Styles */
.bf-custom-header {
  background: #ffffff;
  padding: 15px 0;
  position: sticky;
  top: 0;
  z-index: 1000;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.header-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.logo-text {
  font-size: 1.5rem;
  font-weight: 800;
  color: #333;
  text-decoration: none;
}

.logo-text .green {
  color: #1e3006;
}

.nav-menu {
  display: flex;
  list-style: none;
  gap: 25px;
  margin: 0;
}

.nav-menu a {
  text-decoration: none;
  font-weight: 600;
  color: #444;
}

.cart-icon a {
  text-decoration: none;
  font-size: 1.2rem;
  position: relative;
}


/* Fix the header container to align items correctly */
.header-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 20px;
  max-width: 1200px;
  margin: 0 auto;
}

/* Force the navigation menu to be horizontal */
.nav-menu {
  display: flex !important; /* Forces horizontal row */
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 20px; /* Space between links */
}

.nav-menu li {
  margin: 0;
}

.nav-menu a {
  text-decoration: none;
  font-weight: 500;
  color: #333;
  font-size: 15px;
}

.main-navigation ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
  position: relative;
  display: flex;
  gap: 20px;
}
.header-actions {
  display: flex;
  gap: 10px;
  align-items: center;
}

/* Footer Styles */
.bf-custom-footer {
  background: #1e3006;
  color: #fff;
  padding: 60px 0 20px;
  
}

.footer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 40px;
}
.footer-info {
  padding: 15px;
  border-radius: 15px;
  background: #fffadd;
}
.footer-info p {
  margin: 10px 0;
  color: #000;
}
.footer-links {
  padding: 20px;
}
.footer-links a {
  color: #fff;
}
.footer-links h4 {
  margin-bottom: 10px;
  color: #fff;
}
.footer-contact {
  padding: 20px;
}
.footer-contact h4 {
  margin-bottom: 10px;
  color: #fff;
}
.footer-contact p {
  margin: 0;
}

.footer-contact a{
	color:#fff;
}

.footer-bottom {
  display: flex;
  justify-content: space-between;
  text-align: center;
  border-top: 1px solid #fffadd24;
  margin: 40px auto 0;
  padding: 20px 20px 0;
  font-size: 0.8rem;
  max-width: 1200px;
}
.footer-payment {
  display: flex;
  gap: 10px;
}
.footer-payment p {
  margin: 0;
}
.fp-logo img {
  width: 33px;
}
.fp-upi {
  border-radius: 3px;
  padding: 5px;
  background: #fff;
}

/* Footer Social Icons */
.social-icons {
  display: flex;
  gap: 10px;
}

/* Custom Homepage Styles */
.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.home-hero {
  position: relative;
  min-height: 80vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  color: #fff;
}
.hero-slideshow {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.hero-slideshow span {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  animation: heroFade 16s infinite;
}

/* Delay each image */
.hero-slideshow span:nth-child(1) {
  animation-delay: 0s;
}
.hero-slideshow span:nth-child(2) {
  animation-delay: 4s;
}
.hero-slideshow span:nth-child(3) {
  animation-delay: 8s;
}
.hero-slideshow span:nth-child(4) {
  animation-delay: 12s;
}

/* Dark overlay */
.hero-slideshow::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}

@keyframes heroFade {
  0% {
    opacity: 0;
  }
  8% {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  33% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

.home-container,
.hero-content {
  justify-items: anchor-center;
  width: 100%;
  position: relative;
  z-index: 2;
}

.home-hero h1 {
  font-size: 3.5rem;
  color: #fff;
  line-height: 1.2;
  text-align: center;
}
.highlight {
  color: #fffadd;
}

.btn-primary {
	
  background: #71893b;
  color: #fffadd;
  padding: 12px 25px;
  border-radius: 50px;
  display: block;
  margin-top: 20px;
  text-decoration: none;
  font-size:18px;
  font-weight: 400;
}
.btn-primary:hover{
	color:#1e3006;
	background:#fffadd;
}

/*--- Slider Bar Css --- */

        .star{
            color:#ee7a13;
        }
.outer{
	background:#71893b;
}
        .content {
         padding: 10px 0px;
        font-family: "Inter", sans-serif;
        font-size: 2.5rem;
        font-weight: 500;
        color: #fffadd;
        padding-left: 0.25em;
    }

    @media only screen and (max-width: 767px) {
        .content {
            font-size: 2rem !important;
            padding-left: 0.25em;
        }
    }

    .outer {
        overflow: hidden;  !important;
    }

    .outer div {
        display: inline-block;
    }

    .loop {
        white-space: nowrap;
        animation: loop-anim 35s linear infinite;
    }

    @media only screen and (max-width: 767px) {
        .loop {
            animation: loop-anim 35s linear infinite;
        }
    }

    @keyframes loop-anim {
        0% {
            margin-left: 0;
        }
        100% {
            margin-left: -50% /* This works because of the div between "outer" and "loop" */
        }
    }

.trust-item {
  font-weight: 600;
  font-size: 0.9rem;
  color: #444;
}

.section-title {
  text-align: center;
  margin: 50px 0 30px;
  font-size: 2rem;
}

/* Custom Sale Badge */
.woocommerce span.onsale {
  background-color: #e74c3c !important; /* Urgent Red */
  color: #fff;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.7rem;
  padding: 5px 10px;
  border-radius: 4px;
  min-height: auto;
  min-width: auto;
  line-height: 1;
  top: 10px;
  right: 10px;
}

/* Hover effect for Product Cards to make it feel premium */
.woocommerce ul.products li.product:hover {
  transform: translateY(-5px);
  transition: all 0.3s ease;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
}

/* About Us Section Styles */
.about-flex {
  display: flex;
  align-items: center;
  gap: 50px;
  padding: 80px 20px;
}

.about-image img {
  border-radius: 15px;
  box-shadow: 20px 20px 0px #77a464; /* Brand color accent */
  max-width: 100%;
}

.subtitle {
    color: #77a464;
    font-size: 14px;
    font-weight: 500;
	
}

.check-list {
  list-style: none;
  padding: 0;
  margin-top: 20px;
}

.check-list li {
  display:flex;
  gap:10px;
  color:#1e3006;
  margin-bottom: 10px;
  font-weight: 500;
}
.check-list img {
    width: 25px;
    height: 25px;
}
/* Steps Grid */
.steps-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 30px;
  text-align: center;
  padding-bottom: 80px;
}

.step-icon {
  font-size: 3rem;
  margin-bottom: 15px;
}
.step p{
	justify-self: anchor-center;
    width: 70%;
}

/* open card bar */
.cart-sidebar-header {
    padding: 0 15px;
    display: flex;
    justify-content: space-between;
    margin-top: 60px;
}
.close-icon{
	    margin-top: 6px;
	    cursor:pointer;

}

/* Mobile Responsiveness */
@media (max-width: 768px) {
	ul.products.columns-4{
		grid-template-columns:repeat(2,1fr) !important;
	}
  .about-flex {
    flex-direction: column;
    text-align: start;
  }
  .about-image img {
    box-shadow: 10px 10px 0px #77a464;
  }
}

@media (max-width: 568px) {
	ul.products.columns-4{
		grid-template-columns:repeat(1,1fr) !important;
	}
  .footer-bottom {
    flex-direction: column;
  }
  .footer-copywrite {
    text-align: start;
  }
  .footer-links {
    padding: 20px 0;
  }
  .footer-grid {
    gap: 0;
  }
  .footer-contact {
    padding: 20px 0;
  }
}

/* Shop Layout */
.shop-container {
  margin-top: 40px;
}
.shop-layout {
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 40px;
}

/* Category Sidebar */
.shop-sidebar ul {
  list-style: none;
  padding: 0;
}
.shop-sidebar li {
  margin-bottom: 10px;
}
.shop-sidebar li a {
  text-decoration: none;
  color: #555;
  font-weight: 500;
  transition: 0.3s;
}
.shop-sidebar li a:hover {
  color: #1e3006;
  padding-left: 5px;
}

/* Product Grid */
.bf-product-grid .products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  gap: 20px !important;
}

/* Custom Add to Cart Button on Shop Page */
.woocommerce ul.products li.product .button {
  background-color: #1e3006;
  color: white;
  border-radius: 4px;
  padding: 10px;
  margin-top: 15px;
  text-transform: uppercase;
  font-size: 0.8rem;
  display: block;
  text-align: center;
}

.woocommerce-loop-product__title{
	color:#fffadd;
}
a.button.product_type_variable.add_to_cart_button{
	background:#fffadd !important;
	color:#1e3006;
}

.product-category{
	border:1px solid #1e3006;
	border-radius:15px;
}
.product-category img {
	border-radius:18px;
}


span.ast-woo-product-category {
    width: 100% !important;
    border-bottom: 1px solid;
    opacity: 1 !important;
    text-align: start;
    font-weight: 400;
    padding: 5px 0;
    color: #71893b !important;
}

.woocommerce-loop-category__title {
	padding: 10px 20px !important;
    display: flex;
    justify-content: space-between;
     text-transform:none !important;
    font-weight: 600 !important;
    border-radius: 15px;
    color: #fffadd;
    line-height: 23px !important;
    background-color: #ee7a13 !important;
}
mark.count {
    font-weight: 400;
    opacity: 1 !important;
	color: #fff;align-content
}

/* Mobile Adjustments */
@media (max-width: 768px) {
	
  .shop-layout {
    grid-template-columns: 1fr;
  }
  .shop-sidebar {
    display: none;
  } /* Hide sidebar on mobile for speed */
}

/* Single Product Layout */
.product-page-wrapper {
  margin-top: 40px;
}

.bf-single-product {
  display: flex;
  gap: 50px;
  margin-bottom: 60px;
}

.product-visuals {
  flex: 1;
  position: relative;
}
.product-info-summary {
  flex: 1;
}

/* Styling elements */
.stock-status {
  background: #e8f5e9;
  color: #2e7d32;
  padding: 4px 10px;
  font-size: 0.8rem;
  font-weight: bold;
  border-radius: 4px;
}

.product-info-summary h1 {
  font-size: 2.5rem;
  margin: 15px 0;
  color: #333;
}

.price-box {
  font-size: 1.8rem;
  font-weight: 700;
  color:#1e3006;
  margin-bottom: 20px;
}

.delivery-trust-badge {
  background: #fff9c4;
  padding: 15px;
  border-radius: 8px;
  margin: 20px 0;
  border-left: 5px solid #fbc02d;
}

/* Mobile Fix */
@media (max-width: 768px) {
	
  .bf-single-product {
    flex-direction: column;
    gap: 20px;
  }
}

/* Professional Slide-out Drawer */
.cart-sidebar {
  position: fixed;
  top: 0;
  right: -100%; /* Start off-screen */
  width: 380px;
  height: 100vh;
  background: #fff;
  z-index: 10001;
  box-shadow: -10px 0 30px rgba(0, 0, 0, 0.1);
  transition: 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  display: flex;
  flex-direction: column;
}

.cart-sidebar.open {
  right: 0; /* Slide in */
}

/* Style the buttons inside the cart to match your brand */
.cart-sidebar .button {
  background-color: #1e3006 !important; /* Green for fruits */
  color: #fff !important;
  border-radius: 5px;
  padding: 12px !important;
  text-align: center;
  margin-bottom: 10px;
}

.cart-sidebar .checkout {
  background-color: #2c3e50 !important; /* Dark blue/gray for contrast */
}

/*-----blog -----*/


.cn-blog-header h1{
font-size:56px;
margin-bottom:10px;
}

.cn-blog-header p{
max-width:700px;
font-size:18px;
line-height:1.6;
}

.cn-divider{
height:1px;
background:#000;
margin:30px 0 40px;
}

/* Search */

.cn-blog-search{
margin-bottom:40px;
}

.cn-blog-search input{
width:100%;
max-width:600px;
padding:16px;
border:1px solid #000;
font-size:16px;
background:transparent;
}

/* Grid */

.cn-blog-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

/* Card */

.cn-blog-card{
border:1px solid #000;
padding:20px;
transition:.3s;
border-radius:10px;	
}

.cn-blog-card:hover{
transform:translateY(-5px);
}

.cn-blog-image img{
width:100%;
height:240px;
object-fit:cover;
border-radius:10px;	
}

.cn-blog-date{
margin-top:15px;
font-size:14px;	
}

.cn-blog-title{
font-size:22px;
margin-top:10px;
line-height:1.4;
}

.cn-blog-meta{
display:flex;
justify-content:space-between;
margin-top:20px;
font-size:14px;
}

.cn-blog-meta span{
display:block;
opacity:.6;
font-size:12px;
}

.cn-blog-meta strong{
color:#ff5a00;
font-weight:500;
}

.cn-blog-single{
padding:80px 0;
	background:#fff;
}

.cn-single-title{
font-size:48px;
max-width:900px;
margin-bottom:30px;
}

.cn-single-meta{
    display: flex;
    gap: 40px;
    padding-bottom: 50px;
    border-bottom: 1px solid;
    margin-bottom: 60px;
}

.cn-single-meta span{
display:block;
font-size:13px;
opacity:.6;
}

.cn-single-meta strong{
color:#ff5a00;
}

.cn-single-image img{
width:100%;
max-width:900px;
margin:40px 0;
}

.cn-single-content{
/* max-width:760px; */
font-size:18px;
line-height:1.7;
}

.cn-blog-layout{
display:grid;
grid-template-columns:300px 1fr;
gap:60px;
margin-top:40px;
}

/* Sidebar */

.cn-blog-sidebar{
/* position:sticky;
top:120px; */
height:fit-content;
	position:relative;
}

.cn-toc{
background:#f5f5f5;
padding:20px;
border-radius:10px;
margin-bottom:30px;
display: flex;
    flex-direction: column;
    gap: 20px;	
	    max-height: 345px;
    overflow-y: scroll;
}

.cn-toc ul{
list-style:none;
padding:0;
margin:0;
}

.cn-toc li{
margin-bottom:10px;
}

.cn-toc a{
text-decoration:none;
color:#000;
font-size:14px;
}

/* CTA */

.cn-cta-box{
background:#232323;
padding:25px;
border-radius:10px;
display: flex;
    flex-direction: column;
    gap: 20px;	
}
.cn-cta-box h3, .cn-cta-box p{
	color:#fff;
}
.cn-cta-btn{
display:inline-block;
margin-top:15px;
background:#fff;
color:#232323;
padding:10px 18px;
text-decoration:none;
}


.cn-ai-summary{
background:#232323;
padding:20px;
border-radius:12px;
margin-bottom:30px;
}

.cn-ai-summary p{
margin-bottom:15px;
font-weight:500;
	color:#fff;
}

.cn-ai-buttons{
display:flex;
gap:12px;
flex-wrap:wrap;
}

.cn-ai-buttons a{
background:#fff;
padding:10px 14px;
border-radius:8px;
text-decoration:none;
font-size:14px;
display:inline-flex;
align-items:center;
gap:6px;
border:1px solid rgba(0,0,0,.1);
color:#232323;	
}

.cn-author-box-section{
margin:80px 0;
border-top:1px solid #cfc7bb;
border-bottom:1px solid #cfc7bb;
padding:80px 0;
}

.cn-author-box{
display:flex;
align-items:center;
gap:40px;
}

.cn-author-image img{
width:320px;
border-radius:20px;
}

.cn-author-content{
border:2px solid #ff5a2a;
border-radius:20px;
padding:40px;
flex:1;
}

.cn-author-name{
font-size:40px;
margin-bottom:10px;
}

.cn-author-role{
color:#ff5a2a;
font-weight:600;
margin-bottom:15px;
}

.cn-author-bio{
/* max-width:520px; */
line-height:1.6;
margin-bottom:20px;
}

.cn-author-social a{
display:inline-block;
margin-right:10px;
/* padding:8px 12px; */
border-radius:6px;
text-decoration:none;
font-size:14px;
}

/* .cn-more-blogs{
margin-top:100px;
} */

.cn-more-title{
font-size:56px;
margin-bottom:40px;
}

.cn-more-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:30px;
}

.cn-more-card{
/* padding:40px; */
position:relative;
}

.cn-more-card a{
text-decoration:none;
color:inherit;
display:block;
padding:30px;
	border:1px solid #1d1d1d;
	border-radius:12px;
}

.cn-more-blog-title{
font-size:22px;
margin-bottom:60px;
max-width:500px;
}

.cn-more-meta{
display:flex;
gap:60px;
}

.cn-more-meta span{
display:block;
font-size:14px;
opacity:.6;
}

.cn-more-meta strong{
font-size:16px;
}

.cn-more-date{
position:absolute;
right:40px;
bottom:40px;
text-align:right;
font-size:14px;
}
.cn-author--box{
	display:flex;
	gap:25px;
}
.cn-author-image{
	width:135px;
	border-radius:50%;
	margin-top:5px;
}
.cn-more-card:hover{
  transform: scale(0.98);
  background:#c4c4c44d;
	transition:all .5 ease-in-out;
}
@media (min-width:768px) and (max-width:1080px){
	.cn-blog-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}
}

@media (max-width:767px){
	.cn-blog-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
}
	.cn-blog-layout {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
    margin-top: 40px;
}
	.cn-blog-sidebar {
    position: relative;
    top: 0px;
    height: fit-content;
}
	.cn-blog-single {
    padding: 0px 0;
}
	.cn-single-title, .cn-more-title {
    font-size: 30px;
    max-width: 900px;
    margin-bottom: 30px;
}
	.cn-more-grid {
    display: block;
    grid-template-columns: auto;
    gap: 30px;
}
	.cn-more-meta {
    display: flex;
    gap: 40px;
}
	.cn-author-image, .cn-author-image img{
		width:100%;
	}
	.cn-author-box{
		flex-direction:column;
	}
	.cn-more-review, .cn-more-meta div:last-child{
		display:none;
	}
	.cn-ai-buttons a{
		width:48%;
	}
	.cn-author--box {
    gap: 15px;
    flex-direction: column;
}
	.cn-author-image {
    width: 75px !important;
    border-radius: 50%;
    margin-top: 5px;
}
	.cn-author-name {
    font-size: 28px;
    margin-bottom: 10px;
}
	.cn-more-card {
    margin-bottom: 20px;
}


}
@media (min-width: 922px) {
    .site-content .ast-container {
        display: block;
    }
}
@media (min-width: 922px) {
    .ast-narrow-container .site-content > .ast-container {
        max-width: 100% !important;
		background: #fff;
    }
}
.cn-more-slider{
padding-bottom:40px;
}

.cn-more-card{
/* padding:40px; */
height:100%;
}

.swiper-button-next,
.swiper-button-prev{
color:#000;
}
	