/* Banner Section Start */
.banner {
  position: relative;
  width: 100%;
  height: 350px;
  overflow: hidden;
}
.banner-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 50, 0.7);
}
.banner-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
}
.banner-content h1 {
  font-size: calc(3.5rem + 0.5vw);
  font-weight: 700;
  margin: 0;
}

/* Media Queries */
@media screen and (min-width: 1230px) and (max-width: 1399px) {
    .banner {
        height: 320px;
    }
    .banner-content h1 {
        font-size: calc(3.2rem + 0.5vw);
    }
}

@media screen and (min-width: 992px) and (max-width: 1229px) {
    .banner {
        height: 280px;
    }
    .banner-content h1 {
        font-size: calc(2.9rem + 0.5vw);
    }
}

@media screen and (max-width: 768px) {
    .banner {
        height: 170px;
    }
    .banner-content h1 {
        font-size: calc(1.7rem + 0.5vw);
        white-space: nowrap;
    }
}
/* Banner Section End */

/* Products Start */
.products{
    padding: 6rem 7% 4rem 7%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.products .product-card{
    width: 31%;
    box-shadow: rgba(0, 0, 0, 0.482) 0px 3px 8px;
    border-radius: 3px;
    margin-bottom: 3.1rem;
    background-color: #fff;
    overflow: hidden;
    transition: all 0.3s ease;
}
.products .product-card:hover{
    box-shadow: rgba(0, 0, 0, 0.789) 0px 3px 8px;
    background-color: #fafafa;
}
.products .product-card .product-img{
    overflow: hidden;
}
.products .product-card .product-img img{
    width: 100%;
    transform: rotateY(0) !important;
    transition: all 0.3s ease;
}
.products .product-card:hover img{
    scale: 1.05;
    transform: rotateY(180deg);
}
.products .product-card .card-desc{
    padding: 2rem 1.2rem;
}
.products .product-card .card-desc .product-icon img{
    width: 55px;
    margin-bottom: 1.8rem;
    scale: 1;
    transition: all 0.4s ease;
}
.products .product-card .card-desc span{
    font-size: calc(0.9rem + 0.5vw);
    font-weight: 600;
}
.products .product-card .card-desc p{
    font-size: calc(0.6rem + 0.5vw);
    font-weight: 400;
    margin-top: 1rem;
    margin-bottom: 0;
    color: #333;
}

/* Media Queries */
@media screen and (min-width: 1230px) and (max-width: 1399px) {
    .products{
        padding: 5rem 7% 3rem 7%;
    }
    .products .product-card{
        margin-bottom: 2.8rem;
    }
    .products .product-card:hover img{
        scale: 1.04;
    }
    .products .product-card .card-desc .product-icon img{
        width: 52px;
    }
    .products .product-card .card-desc span{
        font-size: calc(0.85rem + 0.5vw);
    }
    .products .product-card .card-desc p{
        font-size: calc(0.56rem + 0.5vw);
    }
}

@media screen and (min-width: 992px) and (max-width: 1229px) {
    .products{
        padding: 4.5rem 7% 2.5rem 7%;
    }
    .products .product-card{
        margin-bottom: 2.5rem;
    }
    .products .product-card:hover img{
        scale: 1.04;
    }
    .products .product-card .card-desc .product-icon img{
        width: 47px;
    }
    .products .product-card .card-desc span{
        font-size: calc(0.8rem + 0.5vw);
    }
    .products .product-card .card-desc p{
        font-size: calc(0.48rem + 0.5vw);
        margin-top: 0.8rem;
    }
}

@media screen and (max-width: 768px) {
    .products{
        padding: 1.5rem 1rem 1.5rem 1rem;
    }
    .products .product-card{
        margin-bottom: 0.8rem;
        width: 48.2%;
    }
    .products .product-card .card-desc{
        padding: 0.8rem 0.5rem;
    }
    .products .product-card .card-desc .product-icon img{
        width: 20px;
        margin-bottom: 0.5rem;
    }
    .products .product-card .card-desc span{
        font-size: calc(0.7rem + 0.5vw);
    }
    .products .product-card .card-desc p{
        font-size: calc(0.54rem + 0.5vw);
        margin-top: 0.3rem;
    }
}
/* Products End */