@import url('https://fonts.googleapis.com/css2?family=PT+Serif:ital,wght@0,400;0,700;1,400;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=PT+Serif:ital,wght@0,400;0,700;1,400;1,700&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.container p{
    font-size: 17px;
    font-family: "PT Serif", serif;
    line-height: 30px;
}

body {
    
    height: 2000px;
}

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 30px;
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
    z-index: 1000;
    background-color: transparent;
}

header.scrolled {
    background-color: white;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

header.scrolled nav a {
    color: #194a33;
}

header.scrolled .logo {
    color: #194a33;
}

header .container{
    display: flex; 
    justify-content: space-between;
    align-items: center;
}

.logo {
    font-size: 1.5rem;
    font-weight: bold;
    color: #fff;
}

.logo h4{
    font-family: "PT Serif", serif;
    font-weight: 400;
    font-style: normal;
}

nav {
    display: flex;
    gap: 20px;
}

nav a {
    text-decoration: none;
    color: #fff;
    font-weight: 500;
    transition: color 0.3s;
    font-family: "PT Serif", serif;
    font-size: 18px;
}

nav a:hover {
    color: #ffffff;
}

/* Mobile menu button */
.menu-toggle {
    display: none;
    flex-direction: column;
    cursor: pointer;
    color: #fff;
}

.menu-toggle span {
    height: 3px;
    width: 25px;
    background: #fff;
    margin: 4px 0;
    border-radius: 2px;
    transition: 0.3s;

}

header.scrolled .menu-toggle span{
    background: #ab8744;
}

/* Responsive styles */
@media (max-width: 768px) {
    nav {
        position: absolute;
        top: 70px;
        left: 0;
        width: 100%;
        background-color: white;
        flex-direction: column;
        align-items: center;
        display: none;
        padding: 15px 0;
    }

    nav a{
        color: #09331f;
    }

    nav.active {
        display: flex;
    }

    .menu-toggle {
        display: flex;
    }

    header.scrolled nav {
        background-color: white;
    }
}
/**************************
      Hero old
***************************/

/* .hero{
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 80vh;
    background-image: url('../assets/img/hero.jpg');
    background-size: cover;       
    background-repeat: no-repeat; 
    background-position: center;
}

.hero .hero-text{
    color: #fff;
    font-size: 45px;
    font-family: "PT Serif", serif;
    font-weight: 400;
    font-style: normal;
    text-align: center;
    text-shadow: 0 0 10px #2b2b2b;
}

.hero .hero-text button{
    background-color: #fff;
    font-size: 20px;
    padding: 5px 10px;
    text-shadow: none;
    border: none;
    transition: 0.3s all;
}

.hero .hero-text button:hover{
    background-color: #ab8744;
    color: #fff;
}

@media (max-width: 768px) {
   .hero .hero-text{
    font-size: 24px;
   }
} */

/**************************
      Hero old end
***************************/

/**************************
      Hero New
***************************/

.hero {
  position: relative;
  height: 100vh; /* Full screen height */
  overflow: hidden;
}

.hero-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* Ensures video covers the section */
  z-index: -1; /* Sends video behind content */
}

.hero-content {
  position: relative;
  z-index: 2;
  color: #fff;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.hero-content h1{
    font-size: 50px;
}

.hero::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3); 
  z-index: 1;
}

.hero  button{
    background-color: #fff;
    font-size: 20px;
    padding: 5px 10px;
    text-shadow: none;
    border: none;
    transition: 0.3s all;
    border-radius: 7px;
}

.hero  button:hover{
    background-color: #ab8744;
    color: #fff;
}

.product-hero{
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 400px;
    max-height: 400px;
    /* background-image: url('../assets/img/hero3.jpg'); */
    background: 
        linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), 
        url('../assets/img/hero3.jpg');
    background-size: cover;       /* Makes it fill the screen */
    background-repeat: no-repeat; /* Prevents tiling */
    background-position: center;
}

.product-hero h4{
    color: #fff;
    font-size: 40px;
}

.section-title{
    font-family: "PT Serif", serif;
    font-weight: 400;
    font-style: normal;
    color: #ab8744;
    font-size: 40px;
}

@media (max-width: 768px) {
   .section-title{
        display: flex;
        justify-content: center;
        font-size: 35px;
    }
    
    .hero-content{
        padding: 0px 20px;
    }

    .hero-content h1{
        font-size: 25px;
    }
}


/* Style for the about section */
/* General styles */
.about-section {
    display: flex;                 
    background-color: #fbf5ea;      
    /* height: 100vh;              Remove this if you don't want full viewport height */
}

/* Style for the text section */
.about-text {
    flex: 1;                       
    padding: 80px 80px;                
    display: flex;                 
    flex-direction: column;        
    justify-content: center;  
    color: #fff;
}

.about-section p{
    font-family: "PT Serif", serif;
    /* font-weight: 100; */
    line-height: 1.8em;
    font-style: normal;
    font-size: 17px;
}

.about-image {
    flex: 1;                        
    display: flex;                  
    justify-content: center;        
    align-items: center;           
    padding: 80px 80px;           
}

/* Image styles */
.about-image img {
    max-width: 70%; 
    height: auto;
}

/* -------------------------- */
/* RESPONSIVE DESIGN */
/* -------------------------- */

/* Tablets and below: Stacked layout */
@media (max-width: 991px) {
    .about-section {
        flex-direction: column;  /* Stack the sections vertically */
        text-align: center;
    }

    .about-text {
        padding: 30px 40px; /* Reduce padding on smaller screens */
    }

    .about-image {
        padding: 40px 20px; /* Reduce padding on smaller screens */
    }

    .about-image img {
        max-width: 90%;  /* Allow the image to take up more width on smaller screens */
    }

    .about-section p{
        line-height: 1.8em;
        font-size: 15px;
    }
}

/* Mobile Phones */
@media (max-width: 576px) {
    .about-text {
        padding: 20px 20px; /* Further reduce padding */
    }

    .about-image {
        padding: 20px 10px;  /* Further reduce padding */
    }

    .about-image img {
        max-width: 100%;  /* Allow the image to be 100% width of the container */
    }

    .section-title {
        font-size: 24px;  /* Adjust title font size */
    }

    .about-text p {
        font-size: 14px;  /* Adjust paragraph font size */
    }
}


/* contact form */
.contact-form button{
    background-color: #ab8744;
    border: none;
    padding: 5px 10px;
    width: 120px;
    height: 40px;
    font-size: 18px;
    color: #fff;
    transition: 0.3s all;
    border-radius: 7px;
}

.contact-form button:hover{
    background-color: #194a33;
}

.choose-us {
    background: 
        linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.7)), 
        url('../assets/img/tea-garden.avif');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.choose-us .choose-us-card{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    backdrop-filter: blur(7px);          /* main blur effect */
    -webkit-backdrop-filter: blur(7px);  /* Safari support */
    /* box-shadow: 1px 1px 15px 1px #111111; */
    color: #fff;
    padding: 25px 10px;
    font-family: "PT Serif", serif;
    font-weight: 400;
    font-style: normal;
    background-color: rgba(36, 36, 36, 0.2);
    clip-path: polygon(10% 100%, 90% 100%, 100% 0%, 0% 0%);
}

.choose-us .choose-us-card img{
    margin-bottom: 30px;
    width: 80px;
}

.choose-us h3{
    color: #fff;
    margin-bottom: 30px;
    font-family: "PT Serif", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 40px;
}

footer{
    position: relative;
    background-color: #194a33;
    color: #fff;
    font-family: "Roboto", sans-serif;
    font-optical-sizing: auto;
    font-weight: 350;
    font-style: normal;
    z-index: 100;
}

footer .footer-img{
    position: absolute;
    width: 250px;
    bottom: 15px;
    left: -40px;
    overflow: hidden;
    z-index: -99;

}

footer .footer-img img{
    width: 200px; 
    rotate: calc(30deg);
    z-index: -999;
}

footer .social a{
    text-decoration: none;
}

footer .social-title{
    font-family: "PT Serif", serif;
    font-weight: 400;
    font-style: normal;
    color: #ddb364;
    font-size: 20px;
}

footer .social i{
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    background-color: #4ea07b;
    color: #09331f;
    font-size: 20px;
    transition: 0.5s all;
}

footer .social i:hover{
    background-color: #09331f;
    color: #fff;
}

footer ul li a{
    text-decoration: none;
    color: #fff;
    font-family: "Roboto", sans-serif;
    font-style: normal;
    transition: 0.3s all;
}

footer ul li a:hover{
    color: #d8d7d7;
}

footer ul  li{
    line-height: 30px;
}

footer ul {
    list-style: none;
    margin-left: -30px;
}

/************************* 
  testimonial 
***************************/

.testimonial-card{
    background-color: #fff;
    padding: 20px;  
    height: 100%;  
    position: relative;
    margin-right: 50px;
    box-shadow: 3px 3px 5px 0px #cccccc;
    border-radius: 7px;
}

.testimonial-profile-img{
    position: absolute;
    top: 50%;             /* Move to vertical center */
    right: -40px;         /* Adjust how far outside the box it appears */
    transform: translateY(-50%);  /* Perfectly centers vertically */
    width: 100px;
    height: 100px;
    border-radius: 50%;
    border: 5px solid #fff;
    object-fit: cover;
}

.testimonial-profile-img img{
    border-radius: 50%;
    width: 90px;
    height: 90px;
}

.testimonial-card .testimonial-content{
    padding-right: 30px;
    margin-top: 10px;
    font-family: "PT Serif", serif;
    font-weight: 400;
    font-style: normal;
}

.testimonial-card .testimonial-quote{
    position: absolute;
    top: -25px;
    font-size: 35px;
    color: #6b6b6b;
}

.testimonial-card .testimonial-bottom h5{
    margin-top: 30px;
    font-family: "PT Serif", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 17px;
    color: #09331f;
    font-weight: bold;
}

.testimonial-card .testimonial-bottom h6{
    color: #9c9c9c;
    font-family: "PT Serif", serif;
    font-weight: 100;
    font-style: normal;
    font-size: 17px;

}

/************************
    managing Director's Section
*************************/

.directors-desk {
    display: flex;                 
    /* background-color: #fbf5ea;       */
    /* height: 100vh;              Remove this if you don't want full viewport height */
}

/* Style for the text section */
.directors-message {
    flex: 3;                       
    padding: 80px 80px 80px 150px;                
    display: flex;                 
    flex-direction: column;        
    justify-content: center;  
    color: #09331F;
    background-color: #BDD7BB;
    margin-left: -150px;
    font-family: "PT Serif", serif;
    font-weight: 100;
    font-style: normal;
    font-size: 17px;
    line-height: 1.7em;
}

.directors-message p{
    max-width: 650px;
    text-align: justify;
    
}

.directors-image {
    flex: 2;                        
    display: flex;                  
    justify-content: end;        
    align-items: center;           
    padding: 80px 80px 80px 80px;
}

.directors-image img {
    max-width: 60%; 
    height: auto;
    z-index: 888;
    box-shadow: 1px 1px 5px 1px #a7a7a7;
    border-radius: 7px;

}

@media (max-width: 991px) {
    .directors-desk {
        flex-direction: column;  /* Stack the sections vertically */
        text-align: center;
    }

    .directors-message { 
        flex: 1;                 
        padding: 20px; 
        margin-left: 0px;
        font-size: 15px;
    }

    .directors-message p{
        width: 100%;
        text-align: justify;
        
    }

    .directors-image {
        flex: 1;                        
        display: flex;                  
        justify-content: center;        
        align-items: center;           
        padding: 10px;
        margin: 0px;
        height: 100% !important;
    }

    .directors-image img {
        max-width: 100%;
        border-radius: 7px;
    }
}


/************************
    directors profile
*************************/

.directors-profile h2{
    color: #09331F;
    /* background-color: #BDD7BB; */
    /* margin-left: -150px; */
    font-family: "PT Serif", serif;
    font-weight: 100;
    font-style: normal;
    /* font-size: 17px; */
    line-height: 1.7em;
    margin-top: 20px;
}

.directors-message-underline{
    height: 3px;
    width: 150px;
    background-color: #BDD7BB;
    border: none;
    border-radius: 8px;
}


.directors-profile p{
    color: #09331F;
    /* background-color: #BDD7BB; */
    /* margin-left: -150px; */
    font-family: "PT Serif", serif;
    font-weight: 100;
    font-style: normal;
    font-size: 17px;
    line-height: 1.7em;
    text-align: justify;
}

.directors-profile ul li{
     font-family: "PT Serif", serif;
    font-weight: 100;
    font-style: normal;
    font-size: 17px;
    line-height: 1.7em;
}

.directors-profile-img{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}
.directors-profile-img img{
    max-width: 70%;
    border-radius: 7px;
    box-shadow: 1px 1px 5px 1px #a7a7a7;

}

@media (max-width: 991px) {
   .directors-profile-img img{
        max-width: 100%;
    } 
    .directors-profile p{
        font-size: 15px;
        padding: 12px;
    }
}







/************************
    Product
*************************/

.product-carousel-container { 
    width:100%; 
    margin:0 auto; 
}
.product-carousel-title { text-align:center; font-size:1.6rem; margin-bottom:18px; color:#222; }

.product-carousel { position:relative; }
.product-track {
    display:flex;
    gap:40px;
    overflow-x:auto;
    scroll-behavior:smooth;
    padding:10px 6px;
    -ms-overflow-style: none;  /* IE/Edge */
    scrollbar-width: none;     /* Firefox */
    height: auto;
}
.product-track::-webkit-scrollbar { display:none; } /* Chrome/Safari */

.product-card {
    flex: 0 0 240px;               /* card base width (responsive with media queries) */
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.06);
    text-align:center;
    /* padding:12px; */
    /* padding-bottom: 20px; */
    transition: transform .2s ease;
    padding-bottom: 10px;
}
.product-card:hover { transform: translateY(-6px); }
.product-card img { 
    width:100%; 
    height:250px; 
    object-fit:cover;
    display:block; 
    margin-bottom:10px; 
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.product-card .product-desc{
    padding: 8px;
}

.product-card .buy-now{
    background-color: #194a33;
    border: none;
    border-radius: 7px;
    color: #fff;
    padding: 8px 20px;
    margin-top: 5px;
    margin-bottom: 10px;
    transition: 0.3s all;
}

.product-card .buy-now:hover{
    background-color: #328860;
}

.product-name { 
    font-size:1rem; 
    /* margin:6px 0 4px;  */
    color: #194a33; 
    font-weight: bold;
    font-family: "PT Serif", serif;
    font-weight: 700;
    /* font-style: normal; */
}
.product-price { 
    color:#666; 
    font-weight:500; 
    font-family: "Roboto", sans-serif;
    margin-top: 5px;
}

.product-details{
    margin-top: 5px;
    font-family: "Roboto", sans-serif;
}

button.product-prev,
button.product-next {
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    border:none;
    width:44px;
    height:44px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 6px 18px rgba(0,0,0,0.08);
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
    z-index:10;
  }
  button.product-prev { left:-50px; }
  button.product-next { right:-50px; }
  button.product-prev[disabled],
  button.product-next[disabled] { opacity:0.45; cursor:default; }

  @media (max-width: 900px) { .product-card { flex:0 0 190px; } }
  @media (max-width: 600px) { .product-card { flex:0 0 160px; } }

@media (max-width: 600px) { 
    button.product-prev { left:-10px; }
    button.product-next { right:-10px; }
}

    .product-buy-btn{
        border: none;
        background-color: #276649;
        color: #fff;
        border-radius: 7px;
        padding: 8px 15px;
        margin-top: 10px;
        text-decoration: none;
    }

  .product-button{
    background-color: #fff;
    color: #276649;
    border: none;
    /* border-radius: 8px; */
    padding: 5px 12px;
    margin-top: 20px;
    width: 150px;
    height: 50px;
    font-family: "PT Serif", serif;
    transition: 0.3s all;
    font-size: 18px;
    border-radius: 7px;
  }

  .product-button:hover{
    background-color: #2f7a57;
    color: #fff;
  }
  

  

/* Gallery grid layout */
.gallery-section{
    padding: 40px 0px;
}

@media (max-width: 576px) {
  .gallery {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px;
  }
}


.gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 15px;
  width: 100%;
  max-width: 1200px;
}
.gallery img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  cursor: pointer;
  transition: transform 0.3s ease;
}
.gallery img:hover {
  transform: scale(1.05);
}
/* Lightbox styling */
.lightbox {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  justify-content: center;
  align-items: center;
  z-index: 1000;
}
.lightbox img {
  max-width: 80%;
  max-height: 80%;
  border-radius: 10px;
}
.lightbox .prev,
.lightbox .next {
  height: 50px;
  width: 50px;
  position: absolute;
  transform: translateY(-50%);
  font-size: 2.5rem;
  background-color: transparent;
  color: #ffffff;
  padding: 10px;
  border: none;
  cursor: pointer;
  border-radius: 50%;
  z-index: 1001;
}
.lightbox .prev {
  left: 20px;
}
.lightbox .next {
  right: 20px;
}
.lightbox .close {
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 2rem;
  color: #ffffff;
  background: none;
  cursor: pointer;
  border: none;
  z-index: 1001;
}





