@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

:root{
--primary-color: #1B5E20; 
--secondary-color: #BA3530;
--white: #fff;
--black: #333;
}
body{
     font-family: "Poppins", sans-serif;
     overflow-x: hidden;
}
p{
    font-size: 15px;
    font-family: "Poppins", sans-serif;
    margin: 0px;
    line-height: 26px;
}
h1{
 font-family: "Lato", sans-serif;
}
h2{
 font-family: "Lato", sans-serif;
 font-size: 40px;
 font-weight: 700;
  color:#1b2430;
}
ul{
    list-style-type: none;
    padding: 0px;
}
a{
    text-decoration: none;
}
.section-padding{
    padding: 70px 0px;
}
/* header style st */
.sn-vegkart-log img {
    width: 180px;
}
.sn-top-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sn-left-info ul {
    display: flex;
    gap: 10px;
    margin: 0px;
}
.sn-right-info ul {
    display: flex;
    gap: 5px;
    margin: 0px;
}
.top-header-box {
    background: var(--primary-color);
    padding: 6px 0px;
}
.sn-left-info ul li a {
    color: #fff;
    font-size: 14px;
}
.sn-left-info ul li i {
    color: #fff;
    font-size: 13px;
}
li.sn-follow-text {
    color: #fff;
    font-size: 15px;
    padding-right: 5px;
}
.sn-right-info ul li a {
    color: #fff;
    font-size: 14px;
}
.sn-nav-bar {
    background: #fff;
    box-shadow: 0px 10px 10px 5px rgba(0, 0, 0, 0.03);
}
.sn-nav-gap{
    justify-content: flex-end;
}

/* pulsing animation fix button  */
.cnt-bnt-field {
  background-color: #42db87;
  color: #fff;
  width: 59px;
  height: 59px;
  font-size:31px;
  border-radius: 100px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 0 0 #42db87;
  animation: pulsing 1.25s infinite cubic-bezier(0.66, 0, 0, 1);
  transition: all 300ms ease-in-out;
}
@keyframes pulsing {
  to {
    box-shadow: 0 0 0 30px rgba(232, 76, 61, 0);
  }
}
.sn-bnt-animation-field {
  position: fixed;
  bottom: 0;
  left: 0px;
  width: 100px;
  height: 100px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 999;
}

.sn-bnt-animation-field p {
  color: #000;
  font-size: 12px;
  line-height: normal;
  border-radius: 3px;
  margin-top: 7px;
  background-color: #fff;
  margin-bottom: 0px;
  padding: 4px 9px;
  position: relative;
  z-index: -1;
}
span.nav-link {
    padding: 8px 0px;
    background: #1b5e20;
    border-radius: 50px;
    display: inline-block;
    width: 132px;
    color: #fff;
    text-align: center;
    font-size: 15px;
}
li.nav-item a {
    font-size: 15px;
    font-weight: 500;
}
ul.navbar-nav {
    gap: 10px;
}
span.nav-link:hover{
    background-color: var(--secondary-color);
    color: #ffff;
    cursor: pointer;
}


/* banner section st */
.banner-slider-item {
    position: relative;
}

.sn-banner-content {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 1;
    width: 100%;
    display: flex;
    align-items: center;
    height: 100%;
}

.sn-banner-content h1{
    color: var(--secondary-color);
    font-size: 55px;
    font-weight: bold;
}
.sn-banner-content p {
    margin: 0px;
    width: 50%;
    font-weight: 500;
    margin-top: 15px;
    font-size: 17px;
}

.sn-banner-content h1 span {
    display: block;
}
.sn-banner-content span{
    color: var(--primary-color);
}

a.sn-bn-bnt-1 {
    background: var(--secondary-color);
    padding: 11px 20px;
    border-radius: 7px;
    color: #fff;
    font-size: 15px;
    transition: 0.3s;
    border: 1px solid var(--secondary-color);
}
.sn-banner-btn {
    margin-top: 30px;
}

a.sn-bn-bnt-2 {
    border: 1px solid var(--primary-color);
    padding: 11px 30px;
    border-radius: 7px;
    font-size: 15px;
    color: var(--primary-color);
    transition: 0.3s;
}
.sn-banner-btn a i {
    padding-right: 5px;
}
.sn-banner-btn {
    display: flex;
    gap: 10px;
}
a.sn-bn-bnt-2:hover{
    background-color: var(--primary-color);
    color: var(--white);
}
a.sn-bn-bnt-1:hover{
    background-color: #fff !important;
    border: 1px solid var(--secondary-color);
    color: var(--black);
}
.hero-sec-slider .owl-nav {
    display: flex;
    justify-content: space-between;
}

.hero-sec-slider button.owl-prev {
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 15px;
}

.hero-sec-slider button.owl-next {
    position: absolute;
    right: 15px;
    top: 0px;
    bottom: 0px;
}

button.owl-next span {
    background: #2a2a2aad;
    color: #fff;
    border-radius: 50px;
    width: 40px;
    height: 40px;
    line-height: 41px;
    font-size: 21px;
}

button.owl-prev span{
     background: #2a2a2aad;
    color: #fff;
    border-radius: 50px;
    width: 40px;
    height: 40px;
    line-height: 41px;
    font-size: 21px;
}

span.sn-sub-titles {
    font-size: 16px;
    font-weight: 500;
    color: var(--secondary-color);
}
/* .sn-about-sec {
    background-image: url("../../assets/images/about-us-img.jpeg");
    background-size: cover;
    background-repeat: no-repeat;
} */
.sn-about-box p:nth-child(1) {
    background: #1b5e2017;
    padding: 10px;
    border-radius: 7px;
    margin-bottom: 10px;
    margin-top: 10px;
}

.sn-about-box p:nth-child(2) {
    background: #ba35301c;
    padding: 10px;
    border-radius: 7px;
}

.about-content a {
    background: var(--secondary-color);
    padding: 11px 25px;
    border-radius: 7px;
    color: #fff;
    font-size: 15px;
    display: inline-block;
    margin-top: 20px;
    transition: 0.3;
}
.about-sec-img img {
    border-radius: 15px;
}
.about-content a:hover{
    background-color: var(--primary-color);
}
.sn-align-item{
align-items: center;
}

/* counter section */
.counter-sec-box span {
    font-size: 30px;
    font-weight: 700;
    color: var(--primary-color);
}
.counter-sec-box{
    overflow: hidden !important;
}
[data-aos] {
    overflow: hidden;
}

.counter-sec-box {
    text-align: center;
    height: 220px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: var(--white);
    align-items: center;
    border-radius: 15px;
}
.counter-main-sec {
    background: #1b5e2017;
}
.counter-sec-box img {
    width: 70px;
    margin-bottom: 20px;
}

/* products section */
.sn-product-title {
    display: flex;
    justify-content: space-between;
    margin-bottom: 35px;
}
.sn-pro-title-row {
    width: 70%;
}
.product-links{
    align-self: end;
}
.product-link {
    align-self: self-end;
}

/* product section st */
.products-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.sn-products-img img {
    width: 220px;
}
.products-items {
    text-align: center;
}

.sn-produ-cnt h5 {
    font-size: 19px;
    margin-bottom: 0px;
}

.sn-model-btn {
    font-size: 15px;
    color: #1b5e20;
}
.custom-modal {
    max-width: 1000px;
    width: 90%;
}

form.sn-model-from {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.model-info img {
    width: 100%;
    border-radius: 7px;
    margin-top: 13px;
}
form.sn-model-from input {
    border: 1px solid #1b5e202e;
    font-size: 14px;
    color: #333;
    padding: 8px 12px;
    border-radius: 5px;
}
form.sn-model-from textarea{
     border: 1px solid #1b5e202e;
    font-size: 14px;
    color: #333;
    padding: 8px 12px;
    border-radius: 5px;
    height: 100px;
}
.sn-model-form-btn {
    border: none !important;
    background: var(--primary-color);
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 500;
    transition: 0.3s;
    margin-top: 10px;
    padding: 9px 0px;
}
.sn-model-form-btn:hover{
    background-color: var(--secondary-color);
}
.sn-modal-product-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #1b5e2014;
    color: var(--primary-color);
    font-size: 12.5px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 50px;
    margin-top: 10px;
}

.sn-model-form-hd {
    text-align: left;
    margin-bottom: 14px;
}

.sn-model-form-hd h4 {
    font-size: 25px;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 0px;
}
.modal-header {
    border-bottom: 0px;
}
.modal-body {
    padding: 0px 50px 50px 50px;
}
.sn-product-title-box {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}
.sn-blog-cnt p {
    width: 85%;
    margin: auto;
}
.section-title p {
    width: 90%;
    margin: auto;
}
.why-title-cnt p {
    width: 78%;
    margin: auto;
}
.faq-main-hd h2 {
    text-align: center;
    margin-bottom: 40px;
    color: #1b2430;
}
.sn-pro-title-row h5 {
    font-size: 17px;
    font-weight: 500;
    padding-bottom: 10px;
}
.product-veg-main-sec {
    padding-top: 50px;
}

.product-link a , .product-links a{
    font-size: 16px;
    color: #333 !important;
}

/* why schoose sec st */
.why-title-cnt {
    text-align: center;
    margin-bottom: 35px;
}

.sn-why-box {
    display: flex;
    gap: 20px;
    background: #fff;
    border-radius: 10px;
    align-items: center;
    padding: 20px;
}
.why-schoose-sec .row {
    gap: 20px 0px;
}
.sn-why-img img {
    width: 65px;
}

.sn-why-cnt h4 {
    font-size: 20px;
    font-weight: 500;
}
.why-schoose-sec {
    background: #1b5e2017;
}


/* testimonilas section st */

.testimonial-section{
    background:#fff;
}

.testimonial-heading{
    text-align:center;
    margin-bottom:20px;
}

.testimonial-heading h2{
    font-size:40px;
    font-weight:700;
    margin-bottom:15px;
    color:#1b2430;
}

.testimonial-heading p{
    max-width:850px;
    margin:auto;
    color:#777;
    line-height:28px;
}

.testimonial-slider .testimonial-item{

    position:relative;
    border-radius:18px;
    padding:70px 30px 30px;
    text-align:center;
    transition:.4s;
    margin-top:40px;
}

.user-img{

    width:78px;
    height:78px;
    border-radius:50%;
    overflow:hidden;
    position:absolute;
    left:50%;
    top:-38px;
    transform:translateX(-50%);
    border:5px solid #fff;
    box-shadow:0 5px 15px rgba(0,0,0,.1);

}

.user-img img{

    width:100%;
    height:100%;
    object-fit:cover;

}

.testimonial-item h4{

    font-size:22px;
    font-weight:700;
    margin-bottom:5px;

}

.testimonial-item span{

    display:block;
    margin-bottom:15px;
    font-weight:600;

}

.testimonial-item p{

    color:#666;
    line-height:28px;

}

.stars{

    margin-top:18px;
    letter-spacing:4px;
    font-size:20px;

}


/* LEFT CARD */

.owl-item.left-card .testimonial-item{

    background:#eef2ff;

}

.owl-item.left-card .stars{

    color:#3059d7;

}


/* CENTER CARD */

.owl-item.center .testimonial-item{

    background:#e7f7f5;

}

.owl-item.center .stars{

    color:#11b39a;

}


/* RIGHT CARD */

.owl-item.right-card .testimonial-item{

    background:#fff8df;

}

.owl-item.right-card .stars{

    color:#f4b400;

}



/* Owl */

.testimonial-slider .owl-stage{

    padding-top:35px;

}

.testimonial-slider .owl-nav{

    margin-top:0;

}

.testimonial-slider .owl-prev,
.testimonial-slider .owl-next{

    width:48px;
    height:48px;
    border-radius:50%!important;
    background:#fff!important;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    font-size:26px!important;

}

.testimonial-slider .owl-prev{

    left:-70px;

}

.testimonial-slider .owl-next{

    right:-70px;

}

.testimonial-slider .owl-prev:hover,
.testimonial-slider .owl-next:hover{

    background:#2a62ff!important;
    color:#fff!important;

}


@media(max-width:991px){
    .counter-main-sec .row .col-lg-3 {
    width: 50%;
}
.why-schoose-sec .row .col-lg-6 {
    width: 50%;
}

.sn-why-box {
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.counter-sec-box.last {
    margin-bottom: 0px;
}
.sn-product-title,.sn-product-title-box {
    flex-direction: column;
}
.testimonial-slider .owl-prev{

left:-20px;

}

.testimonial-slider .owl-next{

right:-20px;

}

}


@media(max-width:767px){

.testimonial-heading h2{

font-size:30px;

}

}

.testimonial-slider .owl-stage {
    display: flex;
}

.testimonial-slider .owl-item,.testimonial-slider .owl-stage-outer {
    display: flex;
}

/* footer section st */

.footer-area{

    background:#1b5e200f;
    padding:60px 0 20px;
    color:#bfc6d4;

}

.footer-logo{

    color: #000;
    font-size:28px;
    font-weight:700;
    margin-bottom:20px;

}

.footer-widget p{

    color:#000;
    line-height:28px;
    margin-bottom:20px;

}

.footer-widget h4{

    color:#000;
    font-size:20px;
    margin-bottom:25px;
    font-weight:600;
    text-transform: uppercase;

}

.footer-widget ul{

    margin:0;
    padding:0;
    list-style:none;

}

.footer-widget ul li{

    margin-bottom:11px;

}

.footer-widget ul li a{

    color:#000;
    text-decoration:none;
    transition:.3s;
    font-size: 15px;

}

.footer-widget ul li a:hover{

    color: var(--primary-color);
    padding-left:6px;

}

.footer-social{

    display:flex;
    gap:10px;

}
.footer-social a i {
    font-size: 13px;
}
.footer-social a{

    width:33px;
    height:33px;
    background: var(--primary-color);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    text-decoration:none;
    transition:.3s;

}

.footer-social a:hover{

    background: var(--secondary-color);
    transform:translateY(-4px);

}

.newsletter-form{

    margin-top:20px;

}

.newsletter-form input{

    width:100%;
    height:52px;
    border:1px solid rgba(255,255,255,.1);
    background:#fff;
    color:#fff;
    padding:0 18px;
    border-radius:8px;
    margin-bottom:15px;
    outline:none;

}

.newsletter-form input::placeholder{

    color:#9ca3af;

}

.newsletter-form button{

    width:100%;
    height:52px;
    background: var(--primary-color);
    border:none;
    color:#fff;
    border-radius:8px;
    font-weight:600;
    transition:.3s;

}

.newsletter-form button:hover{

    background: var(--secondary-color);

}

.footer-bottom{

    border-top:1px solid rgb(0 0 0 / 15%);
    margin-top:50px;
    padding-top:20px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:15px;

}

.footer-bottom p{

    margin:0;
    color:#000;

}

.footer-bottom ul{

    display:flex;
    gap:25px;
    list-style:none;
    margin:0;
    padding:0;

}

.footer-bottom ul li a{

    color:#9ca3af;
    text-decoration:none;
    transition:.3s;

}

.footer-bottom ul li a:hover{

    color:#3b82f6;

}

@media(max-width:991px){

.footer-widget{

margin-bottom:40px;

}

.footer-bottom{

flex-direction:column;
text-align:center;

}

.footer-bottom ul{

justify-content:center;
flex-wrap:wrap;

}

}

@media(max-width:576px){

.footer-area{

padding:60px 0 20px;

}

.footer-logo{

font-size:24px;

}

.footer-widget h4{

font-size:20px;

}

.footer-bottom ul{

gap:15px;

}

}
h3.footer-logo img {
    width: 170px;
}
.sn-email-box {
    display: flex;
    flex-direction: column;
    border: 1px solid #1b5e2029;
    width: 50%;
    align-items: center;
    padding: 20px;
    border-radius: 10px;
}

.sn-email-box img {
    width: 61px;
    margin-bottom: 15px;
    margin-top: 0px;
}
.sn-info-box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 23px;
}
.sn-email-box p {
    font-size: 16px;
    font-weight: 500;
}

.sn-email-box a {
    color: #1b5e20;
    font-size: 15px;
}


/* faq section st */

.faq-contact-section{
    background:#fff;
}


.faq-title,.benefit-title{
    line-height:1.3;
    font-size: 30px;
    color: #1b2430;
}

.faq-desc{
    color:#666;
    font-size:15px;
    line-height:28px;
    margin-top:6px;
}

.faq-accordion .accordion-item{
    border:none;
    margin-bottom:18px;
    box-shadow:0 8px 20px rgba(0,0,0,.06);
}

.faq-accordion .accordion-button{
    background:#fff;
    color: #1b2430;
    font-size:15px;
    font-weight:700;
    padding:22px 25px;
}

.faq-accordion .accordion-button:focus{
    box-shadow:none;
}

.faq-accordion .accordion-button:not(.collapsed){
    background:#fff;
    color: var(--primary-color);
}

.faq-accordion .accordion-button::after{
    background-size:16px;
}

.faq-accordion .accordion-body{
    color:#666;
    font-size:15px;
    line-height:28px;
}

.faq-form-box{
    background: #1b5e2017;
    padding:25px;
    border-radius: 10px;
}

.faq-form-title{
    background: var(--white);
    color: #1b2430;
    text-align:center;
    padding:18px;
    font-size:20px;
    font-weight:600;
    margin-bottom:30px;
}

.faq-form-box .form-control{
    border:none;
    border-radius:0;
    height:55px;
    font-size:14px;
    box-shadow:none;
}

.faq-form-box textarea.form-control{
    height:110px;
    resize:none;
    padding-top:15px;
}

.faq-btn{
    border:1px solid var(--primary-color);
    background:transparent;
    color: var(--primary-color);
    width:220px;
    height:49px;
    font-weight:500;
    transition:.3s;
}

.faq-btn:hover{
    background: var(--primary-color);
    color: #fff;
}

@media(max-width:991px){

    .faq-title{
        font-size:34px;
    }

    .faq-form-box{
        margin-top:20px;
    }

}

@media(max-width:576px){

    .faq-title{
        font-size:28px;
    }

    .faq-btn{
        width:100%;
    }

}
.benefits-section{
    background:#fff;
}

.benefit-img-box{
    position:relative;
    overflow:hidden;
}

.benefit-img-box img{
    width:100%;
    display:block;
}

.quote-box{
    position:absolute;
    left:0;
    bottom:0;
    width:95%;
    background: var(--primary-color);
    color:#fff;
    padding:30px;
}

.quote-icon{
    font-size:42px;
    margin-bottom:10px;
}

.quote-box p{
    margin:0;
    font-size:15px;
    line-height:28px;
}

.benefit-title{
    margin-bottom:18px;
    color: #1b2430;
}

.benefit-desc{
    color:#666;
    font-size:15px;
    line-height:28px;
}

.benefit-accordion .accordion-item{
    border:none;
    margin-bottom:18px;
    box-shadow:0 8px 20px rgba(0,0,0,.06);
}

.benefit-accordion .accordion-button{
    padding:22px 25px;
    background:#fff;
    color: #1b2430;
    font-size:15px;
    font-weight:700;
}

.benefit-accordion .accordion-button:not(.collapsed){
    background:#fff;
    color: var(--primary-color);
}

.benefit-accordion .accordion-button:focus{
    box-shadow:none;
}

.benefit-accordion .accordion-button::after{
    background-size:15px;
}

.benefit-accordion .accordion-body{
    color:#666;
    font-size:15px;
    line-height:28px;
}

@media(max-width:991px){

    .benefit-title{
        font-size:34px;
    }

    .quote-box{
        position:relative;
        width:100%;
    }

}

@media(max-width:576px){

    .benefit-title{
        font-size:28px;
    }

    .quote-box{
        padding:20px;
    }

}

.sn-page-title{
    background-image: url(../images/page-title-bg.webp);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 60px 0px;
    background-position: center center;
}
.sn-page-title-h1 h1 {
    margin-bottom: 10px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 45px;
}

.sn-page-title-links {
    /* text-align: center; */
    display: flex;
    justify-content: center;
    gap: 10px;
    align-items: center;
    color: #fff;
    font-size: 15px;
}

.sn-page-title-links a {
    color: #fff;
    font-size: 15px;
}

.sn-page-title-links i {
    font-size: 14px;
}
section.benefits-section {
    padding-bottom: 60px;
}
.benefit-img-box img {
    height: 510px;
    margin-bottom: 20px;
    object-fit: cover;
}

/* contact page  */



.contact-tag{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 18px;
    border:1px solid #dcdcdc;
    border-radius:30px;
    font-size:13px;
    font-weight:600;
    color:#444;
}

.contact-title{
    font-size:40px;
    font-weight:700;
    color:#111;
    line-height:1.15;
}

.contact-divider{
    margin:40px 0;
    opacity:.15;
}

.contact-card{
    background:#fff;
    border-radius:14px;
    padding:28px 22px;
    border: 1px solid #1b5e2024;
    transition:.3s;
    height:100%;
}

.contact-card:hover{
    transform:translateY(-5px);
}

.contact-card i{
    font-size:26px;
    color:#1b5e20;
    margin-bottom:18px;
}

.contact-card h6{
    font-size:15px;
    font-weight:700;
    margin-bottom:6px;
    color: #1b5e20;
}

.contact-card span{
    color:#777;
    font-size:14px;
}

.contact-box{
    background:#fff;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 10px 35px rgba(0,0,0,.05);
}

.contact-form{
    padding:40px;
}

.contact-form label{
    font-size:14px;
    font-weight:600;
    margin-bottom:8px;
}

.contact-form .form-control,
.contact-form .form-select{
    height:52px;
    background:#f7f7f7;
    border:none;
    box-shadow:none;
}

.contact-form textarea.form-control{
    height:170px;
    resize:none;
    padding-top:15px;
}

.send-btn{
    background: var(--primary-color);
    border:none;
    color:#fff;
    padding:14px 28px;
    border-radius:8px;
    font-weight:600;
    transition:.3s;
}

.send-btn:hover{
    background: var(--secondary-color);
}

.map-box iframe{
    width:100%;
    height:100%;
    min-height:620px;
    border:0;
}

@media(max-width:991px){

    .contact-title{
        font-size:34px;
        margin-bottom: 20px;
    }

    .contact-form{
        padding:30px;
    }

    .map-box iframe{
        min-height:400px;
    }

}

@media(max-width:576px){

    .contact-title{
        font-size:28px;
    }

    .contact-form{
        padding:20px;
    }

}


/* blog secttion st */

.blog-section{
    background:#fff;
}

.blog-card{
    background:#1b5e2017;
    border-radius:18px;
    overflow:hidden;
    transition:.35s;
    height:100%;
}

.blog-card:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 45px rgba(0,0,0,.08);
}

.blog-img{
    position:relative;
    overflow:hidden;
}

.blog-img img{
    width:100%;
    height:255px;
    object-fit:cover;
    transition:.5s;
}

.blog-card:hover .blog-img img{
    transform:scale(1.08);
}

.blog-date{
    position:absolute;
    top:18px;
    left:18px;
    background:#fff;
    color:#111;
    font-size:14px;
    font-weight:500;
    padding: 9px 18px;
    border-radius:14px;
    box-shadow:0 6px 20px rgba(0,0,0,.08);
}


.blog-content{
    padding:24px 24px;
}

.blog-meta{
    font-size:14px;
    color:#444;
    margin-bottom:10px;
}

.blog-meta span{
    color:#222;
}

.blog-content h3{
    font-size: 19px;
    line-height:1.35;
    font-weight:500;
    color:#111;
    margin-bottom:15px;
}

.read-more{
    display:inline-flex;
    align-items:center;
    gap:15px;
    text-decoration:none;
    color:#222;
    font-size: 15px;
    font-weight:500;
}

.read-more span{
    width: 39px;
    height: 39px;
    border-radius:50%;
    background:#1b5e2017;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--primary-color);
    font-size:13px;
    transition:.3s;
}

.blog-card:hover .read-more span{
    background: var(--primary-color);
    color:#fff;
}

@media(max-width:991px){
.sn-top-header{
       justify-content: space-between !important;
    }
.blog-content h3{
    font-size:19px;
}

.read-more{
    font-size:16px;
}

.blog-meta{
    font-size:16px;
}

.blog-date{
    font-size:14px;
}

}

@media(max-width:576px){
.sn-right-info{
        display: none;
    }
.blog-img img{
    height:220px;
}

.blog-content{
    padding:22px;
}

.blog-content h3{
    font-size:24px;
}

.read-more{
    font-size:18px;
}

.blog-date{
    padding:8px 15px;
    font-size:14px;
}

}

.sn-blog-cnt {
    text-align: center;
    margin-bottom: 35px;
}


/* certificates section */
.certificate-section{
    background:#1b5e2017;
}


.section-title p{
    color:#777;
    margin-top:10px;
}

.certificate-box{
    height:140px;
    background:#fff;
    border:1px solid #e7e7e7;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.35s;
    padding:20px;
}

.certificate-box img{
    max-width:100%;
    height:90px;
    transition:.35s;
}

.certificate-box:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 40px rgba(0,0,0,.08);
    border-color:#2f9e44;
}

.certificate-box:hover img{
    transform:scale(1.05);
}

@media(max-width:768px){
    

.section-title h2{
    font-size:34px;
}

.certificate-box{
    height:110px;
}

.certificate-box img{
    max-width:120px;
}

}
/* =========================================================
   STICKY HEADER + ACTIVE NAV (added for redesign)
   ========================================================= */
.sn-header {
    position: relative;
    z-index: 1000;
    width: 100%;
}

.sn-nav-bar {
    transition: box-shadow .3s ease, background .3s ease, padding .3s ease;
}

.sn-header.sn-header-sticky .sn-nav-bar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    box-shadow: 0 8px 25px rgba(0,0,0,.08);
    animation: snHeaderSlideDown .45s ease;
    z-index: 1050;
}

@keyframes snHeaderSlideDown {
    from { transform: translateY(-100%); }
    to { transform: translateY(0); }
}

.sn-header-sticky-space {
    display: none;
}

.sn-header.sn-header-sticky + .sn-header-sticky-space,
.sn-header.sn-header-sticky ~ .sn-header-sticky-space {
    display: block;
}

li.nav-item a.nav-link.active {
    color: var(--secondary-color);
    font-weight: 600;
}

li.nav-item a.nav-link.active.dropdown-toggle {
    color: var(--secondary-color);
}

li.nav-item a.nav-link:hover {
    color: var(--secondary-color);
}

/* =========================================================
   SHARED SECTION HEADING (used across About / We Work)
   ========================================================= */
.sn-section-heading {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 45px auto;
}

.sn-section-heading span.sn-sub-titles {
    display: inline-block;
    margin-bottom: 10px;
}

.sn-section-heading h2 {
    margin-bottom: 12px;
}

.sn-bg-light {
    background: #1b5e2017;
}

/* =========================================================
   COMPANY OVERVIEW (About Us page)
   ========================================================= */
.sn-overview-list {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.sn-overview-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 15px;
    color: #444;
}

.sn-overview-list li i {
    color: var(--primary-color);
    background: #1b5e2017;
    width: 28px;
    height: 28px;
    min-width: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    margin-top: 2px;
}

/* =========================================================
   MISSION & VISION SECTION
   ========================================================= */
.mission-vision-sec {
    background: #1b5e2017;
   
}

.mv-card {
    background: #fff;
    border: 1px solid #1b5e2024;
    border-radius: 15px;
    padding: 40px 32px;
    height: 100%;
    transition: .35s;
    position: relative;
    overflow: hidden;
}

.mv-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0,0,0,.07);
    border-color: transparent;
}

.mv-icon {
    width: 62px;
    height: 62px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    color: #fff;
    margin-bottom: 22px;
}

.mv-card.mission .mv-icon {
    background: var(--primary-color);
}

.mv-card.vision .mv-icon {
    background: var(--secondary-color);
}

.mv-card h3 {
    font-family: "Lato", sans-serif;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 14px;
    color: #1b2430;
}

.mv-card p {
    color: #555;
    font-size: 15px;
}

/* =========================================================
   OUR PROCESS / HOW WE WORK SECTION
   ========================================================= */
.sn-process-sec{
    background: #1b5e2017;
}

.process-steps-row {
    position: relative;
}
.about-pro-sec .process-step{
    background: #1b5e2017;
}
.process-step {
    background: #fff;
    border-radius: 15px;
    padding: 34px 26px;
    height: 100%;
    text-align: center;
    position: relative;
    transition: .35s;
    border: 1px solid transparent;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.process-step:hover {
    border-color: #1b5e2040;
    box-shadow: 0 18px 35px rgba(0,0,0,.06);
}

.process-step-number {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: var(--primary-color);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
    margin: 0 auto 20px auto;
    font-family: "Lato", sans-serif;
}

.process-step:nth-child(2n) .process-step-number {
    background: var(--secondary-color);
}

.process-step i.process-icon {
    display: block;
    font-size: 30px;
    color: var(--primary-color);
    margin-bottom: 16px;
}

.process-step h4 {
    font-size: 19px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #1b2430;
}

.process-step p {
    color: #666;
    font-size: 14px;
}

.process-arrow {
    position: absolute;
    top: 40px;
    right: -22px;
    font-size: 20px;
    color: var(--primary-color);
    z-index: 2;
}

@media (max-width: 991px) {
    .process-arrow {
        display: none;
    }
}

/* =========================================================
   QUALITY ASSURANCE SECTION
   ========================================================= */
.quality-sec {
    background: #fff;
}

.quality-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 25px;
}

.quality-list-item {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    background: #1b5e2017;
    padding: 18px 20px;
    border-radius: 12px;
    transition: .3s;
}

.quality-list-item:hover {
    background: #1b5e2028;
}

.quality-list-item i {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 50%;
    background: var(--primary-color);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.quality-list-item h6 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 4px;
    color: #1b2430;
}

.quality-list-item p {
    font-size: 14px;
    color: #666;
}

.quality-img-box {
    position: relative;
    border-radius: 15px;
    overflow: hidden;
}

.quality-img-box img {
    border-radius: 15px;
    width: 100%;
}

.quality-badge {
    position: absolute;
    bottom: 20px;
    left: 20px;
    background: #fff;
    border-radius: 12px;
    padding: 16px 20px;
    box-shadow: 0 15px 35px rgba(0,0,0,.12);
    display: flex;
    align-items: center;
    gap: 12px;
}

.quality-badge i {
    font-size: 28px;
    color: var(--secondary-color);
}

.quality-badge span {
    display: block;
    font-size: 13px;
    color: #666;
}

.quality-badge strong {
    display: block;
    font-size: 18px;
    color: #1b2430;
}

/* =========================================================
   CTA SECTION
   ========================================================= */
.cta-sec {
    background: var(--primary-color);
    border-radius: 0;
    overflow: hidden;
    position: relative;
}

.cta-sec .container {
    position: relative;
}

.cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    flex-wrap: wrap;
}

.cta-text h2 {
    color: #fff;
    font-size: 32px;
    margin-bottom: 10px;
}

.cta-text p {
    color: #ffffffcc;
    font-size: 15px;
}

.cta-btns {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.cta-btns a.cta-btn-primary {
    background: var(--secondary-color);
    color: #fff;
    padding: 13px 28px;
    border-radius: 7px;
    font-size: 15px;
    font-weight: 500;
    transition: .3s;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.cta-btns a.cta-btn-primary:hover {
    background: #fff;
    color: var(--primary-color);
}

.cta-btns a.cta-btn-secondary {
    border: 1px solid #ffffff70;
    color: #fff;
    padding: 13px 28px;
    border-radius: 7px;
    font-size: 15px;
    font-weight: 500;
    transition: .3s;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.cta-btns a.cta-btn-secondary:hover {
    background: #fff;
    color: var(--primary-color);
    border-color: #fff;
}

/* =========================================================
   CONTACT FORM ALERTS
   ========================================================= */
.sn-form-alert {
    border-radius: 10px;
    padding: 16px 20px;
    margin-bottom: 25px;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.sn-form-alert.success {
    background: #1b5e2017;
    color: var(--primary-color);
    border: 1px solid #1b5e2040;
}

.sn-form-alert.error {
    background: #ba35301c;
    color: var(--secondary-color);
    border: 1px solid #ba353040;
}

.sn-field-error {
    color: var(--secondary-color);
    font-size: 12.5px;
    margin-top: 4px;
    display: block;
}

/* =========================================================
   RESPONSIVE TWEAKS FOR NEW SECTIONS
   ========================================================= */
@media (max-width: 991px) {
    .mv-card { padding: 30px 24px; }
    .cta-text h2 { font-size: 26px; }
     .footer-widget.last{
        margin-bottom: 0px;
    }
    .quote-box{
        margin-bottom: 30px;
    }
    .benefit-img-box img{
        margin-bottom: 0px;
    }
}

@media (max-width: 768px) {
    .quality-badge {  margin-top: 15px; }
    .cta-inner { flex-direction: column; text-align: center; justify-content: center; }
    .cta-btns { justify-content: center; }
    .process-step { margin-bottom: 10px; }
   
}

@media (max-width: 576px) {
    .sn-section-heading h2,
    .mv-card h3 { font-size: 26px; }
}

/* honeypot spam-trap field - hidden from real visitors */
.sn-hp-field {
    position: absolute !important;
    left: -9999px !important;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

/* =========================================================
   =========================================================
   VEGKART — REDESIGN / ANIMATION LAYER (v2)
   Everything below is additive: it restyles + animates the
   existing markup without breaking old classes.
   =========================================================
   ========================================================= */

/* ---------- global micro polish ---------- */
* { -webkit-tap-highlight-color: transparent; }

img { max-width: 100%; }

a, button, .btn, .sn-model-btn, .nav-link, .products-items, .blog-card,
.contact-card, .counter-sec-box, .sn-why-box, .certificate-box {
    transition: all 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

::selection { background: var(--primary-color); color: #fff; }

.sn-header.sn-header-sticky { box-shadow: 0 10px 25px rgba(0,0,0,0.08); }

/* =========================================================
   HERO / BANNER SLIDER ANIMATION
   ========================================================= */
.sn-main-banner { overflow: hidden; }
.banner-slider-item { overflow: hidden; }

.banner-slider-item img {
    transform: scale(1.08);
    transition: transform 7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.banner-slider-item.sn-slide-animate img { transform: scale(1); }

.sn-banner-content h1,
.sn-banner-content p,
.sn-banner-content .sn-banner-btn {
    opacity: 0;
    transform: translateY(35px);
}

.banner-slider-item.sn-slide-animate .sn-banner-content h1 {
    animation: snFadeUp 0.9s ease forwards;
    animation-delay: 0.25s;
}
.banner-slider-item.sn-slide-animate .sn-banner-content p {
    animation: snFadeUp 0.9s ease forwards;
    animation-delay: 0.5s;
}
.banner-slider-item.sn-slide-animate .sn-banner-content .sn-banner-btn {
    animation: snFadeUp 0.9s ease forwards;
    animation-delay: 0.75s;
}

@keyframes snFadeUp {
    from { opacity: 0; transform: translateY(35px); }
    to   { opacity: 1; transform: translateY(0); }
}
@keyframes snFadeIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}

.sn-banner-content::before {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle, rgba(27,94,32,0.18) 0%, rgba(27,94,32,0) 70%);
    border-radius: 50%;
    top: -60px;
    left: -60px;
    z-index: -1;
    animation: snFloat 6s ease-in-out infinite;
}
@keyframes snFloat {
    0%, 100% { transform: translate(0, 0); }
    50% { transform: translate(20px, 25px); }
}

a.sn-bn-bnt-1, a.sn-bn-bnt-2 { position: relative; overflow: hidden; }
a.sn-bn-bnt-1:hover, a.sn-bn-bnt-2:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.12);
}

/* =========================================================
   PRODUCT CARDS — HOVER LIFT + IMAGE ZOOM
   ========================================================= */
.products-items {
    background: #fff;
    border-radius: 16px;
    padding: 22px 16px 26px;
    border: 1px solid #eef1ee;
    box-shadow: 0 4px 18px rgba(27,94,32,0.05);
    position: relative;
}
.sn-products-img { overflow: hidden; border-radius: 12px; margin-bottom: 6px; }
.sn-products-img img {
    width: 100%;
    max-width: 220px;
    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.products-items:hover {
    
    box-shadow: 0 20px 35px rgba(27,94,32,0.14);
    border-color: #1b5e2030;
}
.products-items:hover .sn-products-img img { transform: scale(1.1) rotate(-1deg); }
.sn-produ-cnt { margin-top: 8px; }

.sn-model-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
    padding: 6px 4px;
    position: relative;
}
.sn-model-btn::after {
    content: "";
    position: absolute;
    left: 4px; right: 4px; bottom: 0;
    height: 2px;
    background: var(--secondary-color);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 0.35s ease;
}
.sn-model-btn:hover::after { transform: scaleX(1); transform-origin: left; }
.sn-model-btn:hover { color: var(--secondary-color); }

.counter-sec-box:hover { transform: translateY(-6px); box-shadow: 0 18px 30px rgba(27,94,32,0.12); }
.sn-why-box:hover { transform: translateY(-6px); box-shadow: 0 18px 30px rgba(0,0,0,0.08); }
.certificate-box { background:#fff; border-radius:12px; padding:18px; box-shadow:0 4px 14px rgba(0,0,0,0.05); }
.certificate-box:hover { transform: translateY(-6px) scale(1.03); box-shadow:0 16px 28px rgba(0,0,0,0.1); }
.certificate-box img { width:100%; max-height:70px; object-fit:contain; transition:filter .35s ease; }
.certificate-box:hover img { filter:grayscale(0); }

/* =========================================================
   PRODUCTS PAGE (Fruits / Vegetables inner pages)
   ========================================================= */
.sn-shop-intro { text-align: center; max-width: 720px; margin: 0 auto 45px; }
.sn-shop-intro span.sn-sub-titles { display:inline-block; margin-bottom:10px; }

.sn-shop-filter {
    overflow: visible;
    display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-bottom: 40px; }
.sn-shop-filter button {
    border: 1px solid #1b5e2030;
    background: #fff;
    color: var(--black);
    padding: 9px 22px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}
.sn-shop-filter button:hover,
.sn-shop-filter button.active {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: #fff;
    transform: translateY(-2px);
}

.sn-shop-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }

.sn-shop-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid #eef1ee;
    box-shadow: 0 4px 18px rgba(27,94,32,0.06);
    text-align: center;
    opacity: 0;
    animation: snFadeUp 0.6s ease forwards;
}
.sn-shop-card .sn-shop-img { overflow: hidden; position: relative; background: #f5f8f5; }
.sn-shop-card .sn-shop-img img {
    width: 100%;
    height: 190px;
    object-fit: contain;
    padding: 20px;
    transition: transform 0.6s cubic-bezier(0.22,1,0.36,1);
}
.sn-shop-card:hover .sn-shop-img img { transform: scale(1.12) rotate(-2deg); }

.sn-shop-tag {
    position: absolute; top: 12px; left: 12px;
    background: var(--secondary-color);
    color: #fff; font-size: 11px; font-weight: 600; letter-spacing: 0.5px;
    padding: 4px 12px; border-radius: 50px; text-transform: uppercase;
}
.sn-shop-card .sn-shop-body { padding: 18px 16px 24px; }
.sn-shop-card h5 { font-size: 18px; font-weight: 600; margin-bottom: 4px; }
.sn-shop-card p.sn-shop-desc { font-size: 13px; color: #777; margin-bottom: 14px; min-height: 20px; }
.sn-shop-card .sn-model-btn {
    background: #1b5e2012; padding: 8px 20px; border-radius: 50px; font-size: 13px; display: inline-flex;
}
.sn-shop-card .sn-model-btn::after { display: none; }
.sn-shop-card .sn-model-btn:hover { background: var(--primary-color); color: #fff; }
.sn-shop-card:hover { transform: translateY(-8px); box-shadow: 0 20px 35px rgba(27,94,32,0.14); }

.sn-shop-banner { border-radius: 20px; overflow: hidden; position: relative; margin-bottom: 50px; }
.sn-shop-banner img { width:100%; height:260px; object-fit:cover; }
.sn-shop-banner .sn-shop-banner-overlay {
    position:absolute; inset:0;
    background: linear-gradient(90deg, rgba(27,94,32,0.88) 0%, rgba(27,94,32,0.35) 60%, rgba(27,94,32,0) 100%);
    display:flex; align-items:center;
}
.sn-shop-banner-overlay .container {
    padding: 0px 50px;
    color:#fff; }
.sn-shop-banner-overlay h2 { color:#fff; font-size:34px; margin-bottom:8px; }
.sn-shop-banner-overlay p { max-width: 480px; color:#eaf3ea; }

@media (max-width: 991px) { 
    .about-sec-img img{
        width: 100%;
    }
    .sn-shop-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 576px) { .sn-shop-grid { grid-template-columns: repeat(1, 1fr); } .sn-shop-banner-overlay h2{font-size:26px;} }

/* =========================================================
   BLOG — grid card hover polish + inner page (with sidebar)
   ========================================================= */
.blog-card { opacity: 0; animation: snFadeUp .6s ease forwards; }

.sn-blog-inner-img { border-radius: 16px; overflow: hidden; margin-bottom: 25px; }
.sn-blog-inner-img img { width:100%; height:420px; object-fit:cover; }

.sn-blog-inner-meta { display:flex; flex-wrap:wrap; gap:20px; margin-bottom:18px; font-size:14px; color:#777; }
.sn-blog-inner-meta span { display:flex; align-items:center; gap:6px; }
.sn-blog-inner-meta i { color: var(--primary-color); }

.sn-blog-article h1 { font-size: 32px; margin-bottom: 18px; line-height:1.3; }
.sn-blog-article h3 { font-size: 22px; margin: 26px 0 12px; color:#1b2430; }
.sn-blog-article p { color:#555; margin-bottom:16px; font-size:15.5px; line-height:1.8; }
.sn-blog-article blockquote {
    border-left: 4px solid var(--secondary-color);
    background: #ba35300d;
    padding: 18px 22px;
    border-radius: 8px;
    font-style: italic;
    color: #333;
    margin: 24px 0;
}
.sn-blog-article ul.sn-blog-list { list-style: none; padding:0; margin-bottom:16px; }
.sn-blog-article ul.sn-blog-list li { padding-left: 28px; position:relative; margin-bottom:10px; color:#555; font-size:15px; }
.sn-blog-article ul.sn-blog-list li::before {
    content:"\f00c"; font-family:"Font Awesome 6 Free"; font-weight:900;
    color: var(--primary-color); position:absolute; left:0; top:2px; font-size:13px;
}

.sn-blog-tags { display:flex; flex-wrap:wrap; gap:8px; margin: 25px 0; }
.sn-blog-tags a { border:1px solid #eee; padding:6px 16px; border-radius:50px; font-size:13px; color:#555; }
.sn-blog-tags a:hover { background: var(--primary-color); color:#fff; border-color:var(--primary-color); }

.sn-blog-share { display:flex; align-items:center; gap:12px; margin: 25px 0 35px; padding-top:20px; border-top:1px solid #eee; }
.sn-blog-share span { font-weight:600; font-size:14px; }
.sn-blog-share a {
    width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center;
    background:#1b5e2012; color:var(--primary-color); font-size:14px;
}
.sn-blog-share a:hover { background: var(--primary-color); color:#fff; transform: translateY(-3px); }

.sn-blog-author { display:flex; gap:18px; background:#f7faf7; padding:25px; border-radius:14px; align-items:center; margin-bottom:10px; }
.sn-blog-author img { width:70px; height:70px; border-radius:50%; object-fit:cover; }
.sn-blog-author h5 { margin-bottom:4px; }
.sn-blog-author p { font-size:13.5px; color:#777; margin:0; }

.sn-sidebar-widget {
    background:#fff; border:1px solid #eef1ee; border-radius:14px; padding:24px;
    margin-bottom:24px; box-shadow: 0 4px 16px rgba(0,0,0,0.04);
}
.sn-sidebar-widget h4 {
    font-size:18px; font-weight:600; margin-bottom:18px; padding-bottom:12px;
    border-bottom:2px solid #1b5e2018; position:relative;
}
.sn-sidebar-widget h4::after { content:""; position:absolute; left:0; bottom:-2px; width:45px; height:2px; background:var(--secondary-color); }
.sn-search-widget { display:flex; }
.sn-search-widget input { flex:1; border:1px solid #eee; border-radius:50px 0 0 50px; padding:10px 18px; font-size:14px; outline:none; }
.sn-search-widget button { border:none; background:var(--primary-color); color:#fff; padding:0 20px; border-radius:0 50px 50px 0; cursor:pointer; }
.sn-search-widget button:hover { background: var(--secondary-color); }

.sn-cat-list li a { display:flex; justify-content:space-between; padding:10px 0; color:#444; font-size:14.5px; border-bottom:1px dashed #eee; }
.sn-cat-list li:last-child a { border-bottom:none; }
.sn-cat-list li a:hover { color: var(--primary-color); padding-left:5px; }
.sn-cat-list li a span { color:#aaa; font-size:13px; }

.sn-recent-post { display:flex; gap:12px; margin-bottom:16px; align-items:center; }
.sn-recent-post img { width:65px; height:65px; object-fit:cover; border-radius:10px; flex-shrink:0; }
.sn-recent-post h6 { font-size:13.5px; font-weight:600; margin-bottom:4px; line-height:1.4; }
.sn-recent-post a { color:#333; }
.sn-recent-post a:hover { color: var(--primary-color); }
.sn-recent-post span { font-size:12px; color:#999; }

.sn-tag-cloud { display:flex; flex-wrap:wrap; gap:8px; }
.sn-tag-cloud a { border:1px solid #eee; padding:6px 14px; border-radius:50px; font-size:12.5px; color:#555; }
.sn-tag-cloud a:hover { background:var(--primary-color); color:#fff; border-color:var(--primary-color); }

.sn-sidebar-cta { background: linear-gradient(135deg, var(--primary-color), #143f17); color:#fff; text-align:center; border-radius:14px; padding:30px 22px; }
.sn-sidebar-cta h4 { color:#fff; border-color:rgba(255,255,255,0.2); }
.sn-sidebar-cta h4::after { background:#fff; }
.sn-sidebar-cta p { color:#dcecdc; font-size:13.5px; margin-bottom:16px; }
.sn-sidebar-cta a { display:inline-block; background:#fff; color:var(--primary-color); padding:9px 24px; border-radius:50px; font-size:14px; font-weight:600; }
.sn-sidebar-cta a:hover { background: var(--secondary-color); color:#fff; }

@media (max-width: 991px) {
    .sn-blog-inner-img img { height:260px; }
    .sn-blog-article h1 { font-size: 26px; }
}

/* =========================================================
   CONTACT FORM — refined inputs with icons
   ========================================================= */
.sn-input-group { position:relative; }
.sn-input-group i { position:absolute; left:25px; top:51px; color: var(--primary-color); font-size:14px; }
.contact-form .form-control, .contact-form .form-select { border-radius: 10px !important; }
.sn-input-group .form-control, .sn-input-group .form-select { padding-left: 42px !important; }
.contact-form .form-control:focus, .contact-form .form-select:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 4px rgba(27,94,32,0.1);
}
.contact-card { border-radius: 14px; }
.contact-card:hover { transform: translateY(-6px); }
.map-box iframe { border-radius: 16px; width:100%; min-height:420px; border:0; }

.send-btn { position:relative; overflow:hidden; }
.send-btn:hover { transform: translateY(-3px); box-shadow: 0 14px 26px rgba(27,94,32,0.22); }

.model-info img { transition: transform .5s ease; }
.sn-email-box { transition: transform .3s ease; }
.sn-email-box:hover { transform: translateX(6px); }
form.sn-model-from input:focus, form.sn-model-from textarea:focus {
    outline:none; border-color: var(--primary-color); box-shadow: 0 0 0 4px rgba(27,94,32,0.1);
}

/* =========================================================
   SCROLL REVEAL UTILITY (extra safety net alongside AOS)
   ========================================================= */
.sn-reveal { opacity:0; transform: translateY(30px); transition: all .8s cubic-bezier(0.22,1,0.36,1); }
.sn-reveal.sn-in-view { opacity:1; transform:translateY(0); }

/* back-to-top button */
.sn-back-to-top {
    position: fixed; right: 24px; bottom: 24px; width: 46px; height: 46px; border-radius: 50%;
    background: var(--primary-color); color: #fff; display: flex; align-items: center; justify-content: center;
    font-size: 16px; opacity: 0; visibility: hidden; transform: translateY(15px); z-index: 998;
    box-shadow: 0 10px 20px rgba(27,94,32,0.3);
}
.sn-back-to-top.show { opacity: 1; visibility: visible; transform: translateY(0); }
.sn-back-to-top:hover { background: var(--secondary-color); transform: translateY(-4px); }

/* staggered entrance for grids */
.sn-shop-card:nth-child(1), .blog-card:nth-child(1) { animation-delay: 0.05s; }
.sn-shop-card:nth-child(2), .blog-card:nth-child(2) { animation-delay: 0.15s; }
.sn-shop-card:nth-child(3), .blog-card:nth-child(3) { animation-delay: 0.25s; }
.sn-shop-card:nth-child(4), .blog-card:nth-child(4) { animation-delay: 0.35s; }
.sn-shop-card:nth-child(5) { animation-delay: 0.45s; }
.sn-shop-card:nth-child(6) { animation-delay: 0.55s; }
.sn-shop-card:nth-child(7) { animation-delay: 0.65s; }
.sn-shop-card:nth-child(8) { animation-delay: 0.75s; }

/* =========================================================
   RESPONSIVE FOUNDATION
   Shared breakpoints for every page.  These rules only adapt
   presentation; they intentionally do not hide or remove content.
   ========================================================= */
html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

img, svg, iframe, video {
    max-width: 100%;
}

button, input, select, textarea {
    max-width: 100%;
}

@media (max-width: 1199px) {
    .sn-banner-content h1 { font-size: clamp(2.35rem, 5vw, 3.25rem); }
    .sn-banner-content p { width: min(62%, 620px); }
    .products-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .sn-shop-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .testimonial-slider .owl-prev { left: -25px; }
    .testimonial-slider .owl-next { right: -25px; }
}

@media (max-width: 991px) {
    /* Keep animation and carousel transforms inside the device viewport. */
    html, body { max-width: 100%; overflow-x: hidden; }
    @supports (overflow: clip) {
        html, body { overflow-x: clip; }
    }

    .quality-img-box{
        margin-bottom: 20px;
    }
    .about-sec-img {
    margin-top: 20px;
}
.process-step i{
    display: none;
}
.why-title-cnt p{
    width: 100%;
}
.testimonial-heading{
    margin-bottom: 0px;
}
.sn-section-heading{
    margin: 0 auto 30px auto;
}
    .section-padding { padding: 55px 0; }
    h2 { font-size: clamp(1.85rem, 4.5vw, 2.25rem); }
    p { font-size: 0.9375rem; line-height: 1.7; }

    .top-header-box { padding: 8px 0; }
    .sn-top-header { gap: 8px 16px; flex-wrap: wrap; justify-content: center; }
    .sn-left-info ul, .sn-right-info ul { flex-wrap: wrap; justify-content: center; }
    .sn-vegkart-log img { width: 155px; }
    .navbar { padding: 10px 0; }
    .navbar-toggler { border-color: rgba(27, 94, 32, .35); }
    .navbar-toggler:focus { box-shadow: 0 0 0 .2rem rgba(27, 94, 32, .2); }
    .navbar-collapse { padding: 12px 0 4px; }
    .sn-nav-gap { justify-content: flex-start; }
    ul.navbar-nav { gap: 2px; align-items: flex-start; }
    li.nav-item, li.nav-item a { width: 100%; }
    li.nav-item a { padding: 9px 0; }
    span.nav-link { margin-top: 8px; }

    .sn-banner-content { min-height: 390px; padding: 42px 0; }
    .banner-slider-item > img { width: 100%; min-height: 420px; object-fit: cover; }
    .sn-banner-content p { width: min(78%, 620px); }
    .hero-sec-slider button.owl-prev { left: 8px; }
    .hero-sec-slider button.owl-next { right: 8px; }

    .products-grid, .sn-shop-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sn-product-title, .sn-product-title-box { gap: 18px; align-items: flex-end; }
    .sn-pro-title-row { width: auto; }
    .counter-sec-box { height: 190px; margin-bottom: 24px; }
    .why-schoose-sec .row { gap: 16px 0; }
    .sn-why-box { height: 100%; }
    #exampleModal .modal-dialog { margin: 12px auto; }
    #exampleModal .modal-content { max-height: calc(100vh - 24px); overflow-y: auto; }
    #exampleModal .modal-body { padding: 0 28px 28px; }
    #exampleModal .model-info { padding: 18px; background: #1b5e200d; border-radius: 12px; }
    #exampleModal .model-info > div:first-child { text-align: center; }
    #exampleModal .model-info > div:first-child img { width: auto; max-height: 220px; margin: 0; object-fit: contain; }
    #exampleModal .sn-info-box { margin-top: 16px; align-items: stretch; }
    #exampleModal .sn-email-box { width: calc(50% - 5px); justify-content: center; padding: 16px 10px; margin: 0; }
    #exampleModal form.sn-model-from { gap: 12px; }
    #exampleModal form.sn-model-from input { min-height: 46px; }
    #exampleModal form.sn-model-from textarea { min-height: 110px; height: 110px; }
    #exampleModal .sn-model-form-btn { min-height: 46px; margin-top: 4px; }
    .sn-info-box { flex-wrap: wrap; }
    .custom-modal { width: calc(100% - 24px); }
    .sn-shop-banner-overlay .container { padding: 0 30px; }
    .sn-blog-author { align-items: flex-start; }
    .map-box iframe { min-height: 360px; }
}

@media (max-width: 767px) {
    .sn-banner-content h1,.sn-banner-content p{
        text-align: center;
        margin: auto;
    }
    .container, .container-fluid { --bs-gutter-x: 1.25rem; }
    .section-padding { padding: 42px 0; }
    h2 { font-size: clamp(1.7rem, 8vw, 2rem); line-height: 1.22; }

    .sn-top-header { justify-content: center; }
    .sn-left-info ul { justify-content: center; text-align: center; }
    .sn-right-info { width: 100%; }
    .sn-left-info ul li a, .sn-right-info ul li a, li.sn-follow-text { font-size: 13px; }

    .sn-banner-content { min-height: 350px; padding: 36px 0; }
    .banner-slider-item > img { min-height: 390px; }
    .sn-banner-content h1 {  font-size: clamp(2rem, 10vw, 2.6rem); }
    .sn-banner-content p { width: 82%; margin-top: 10px; font-size: 15px; }
    .sn-banner-btn { flex-wrap: wrap; margin-top: 22px; flex-direction: column; }
    a.sn-bn-bnt-1, a.sn-bn-bnt-2 { padding: 10px 16px; font-size: 14px; }

    .sn-product-title, .sn-product-title-box { display: block; margin-bottom: 26px; }
    .product-link, .product-links { margin-top: 15px; }
    .products-grid, .sn-shop-grid { gap: 16px; }
    .products-items { padding: 16px 10px 18px; }
    .sn-produ-cnt h5, .sn-shop-card h5 { font-size: 16px; }
    .sn-shop-card .sn-shop-img img { height: 165px; padding: 14px; }
    .sn-shop-filter { justify-content: flex-start; margin-bottom: 28px; }
    .sn-shop-filter button { padding: 8px 15px; font-size: 13px; }
    .sn-shop-banner { border-radius: 14px; margin-bottom: 32px; }
    .sn-shop-banner img { height: 220px; }
    .sn-shop-banner-overlay .container { padding: 0 22px; }
    .sn-shop-banner-overlay h2 { font-size: 25px; }
    .sn-shop-banner-overlay p { font-size: 14px; line-height: 1.55; }
    .sn-page-title { padding: 44px 0; }
    .sn-page-title-h1 h1 { font-size: clamp(2rem, 10vw, 2.5rem); }
    .benefit-img-box img { height: auto; }
    .quote-box { 
        margin-bottom: 20px;
        padding: 22px; }
        .benefit-img-box img{
            margin-bottom: -1px;
        }
    .faq-accordion .accordion-button, .benefit-accordion .accordion-button { padding: 17px 18px; font-size: 14px; }
    .faq-accordion .accordion-body, .benefit-accordion .accordion-body { font-size: 14px; }
    .contact-form { padding: 22px; }
    .contact-divider { margin: 28px 0; }
    .map-box iframe { min-height: 300px; }
    .sn-blog-inner-img img { height: 220px; }
    .sn-blog-article h1 { font-size: 25px; }
    .sn-blog-article h3 { font-size: 20px; }
    .sn-blog-author { flex-direction: column; padding: 20px; }
    .sn-blog-inner-meta { gap: 10px 16px; }
    #exampleModal .modal-body { padding: 0 20px 22px; }
    #exampleModal .model-info { margin-bottom: 22px; }
    #exampleModal .sn-model-form-hd h4 { font-size: 22px; }
    .testimonial-slider .owl-prev, .testimonial-slider .owl-next { display: none !important; }
    .testimonial-slider .testimonial-item { padding: 60px 20px 24px; }
    .footer-area { padding-top: 42px; }
    .footer-widget { margin-bottom: 30px; }
    .footer-bottom { margin-top: 18px; }
}

@media (max-width: 480px) {
    .sn-left-info,.why-schoose-sec .row .col-lg-6{
        width: 100%;
    }
    .sn-why-img {
    text-align: center;
    width: 100%;
}
.sn-blog-cnt p{
    width: 100%;
}
    .container, .container-fluid { --bs-gutter-x: 1rem; }
    .section-padding { padding: 36px 0; }
    p { font-size: 14px; line-height: 1.65; }
    .sn-left-info ul { gap: 5px 10px; justify-content: center; width: 100%;}
    .sn-left-info ul li { font-size: 0; }
    .sn-left-info ul li a { font-size: 12px; padding-left: 5px;}
    .sn-vegkart-log img { width: 135px; }
    .sn-banner-content { min-height: 330px; padding: 30px 0; }
    .banner-slider-item > img { min-height: 380px; }
    .sn-banner-content h1 { font-size: 1.95rem; }
    .sn-banner-content p { width: 88%; font-size: 14px; }
    .sn-banner-btn { gap: 8px; }
    .sn-banner-btn a { text-align: center; width: 167px; margin: auto;}
    .products-grid, .sn-shop-grid { grid-template-columns: minmax(0, 1fr); }
    .products-items { padding: 18px; }
    .sn-products-img img { max-width: 190px; }
    .counter-sec-box { height: auto; min-height: 170px; margin-bottom: 16px; }
    .counter-sec-box img { width: 56px; margin-bottom: 12px; }
    .sn-why-box { align-items: flex-start; gap: 14px; padding: 16px; }
    .sn-why-img img { width: 50px; }
    .sn-why-cnt h4 { font-size: 18px; }
    .sn-email-box { padding: 16px 12px; }
    .sn-email-box a { overflow-wrap: anywhere; }
    #exampleModal .modal-header { padding: 10px 14px 4px; }
    #exampleModal .modal-body { padding: 0 16px 18px; }
    #exampleModal .model-info { padding: 14px; margin-bottom: 18px; }
    #exampleModal .model-info > div:first-child img { max-height: 165px; }
    #exampleModal .sn-info-box { display: block; }
    #exampleModal .sn-email-box { width: 100%; margin-bottom: 10px; min-height: 112px; }
    #exampleModal .sn-email-box:last-child { margin-bottom: 0; }
    #exampleModal .sn-model-form-hd h4 { font-size: 20px; }
    .sn-shop-banner img { height: 245px; }
    .sn-shop-banner-overlay { background: rgba(27,94,32,.76) !important; }
    .sn-shop-banner-overlay p { max-width: none; }
    .blog-content { padding: 18px; }
    .blog-content h3 { font-size: 20px; }
    .read-more { font-size: 14px; gap: 10px; }
    .sn-blog-share { flex-wrap: wrap; }
    .sn-back-to-top { right: 14px; bottom: 14px; width: 42px; height: 42px; }
    .cnt-bnt-field { width: 50px; height: 50px; font-size: 26px; }
    .sn-bnt-animation-field { width: 78px; height: 82px; }
}
