/* ================================
   Section Title
   ================================ */
.Section-title {
  font-weight: 700;
  text-align: center;
  padding-bottom: 50px;
  color: $bg-dark;
  margin: 0;

  & > span {
    color: $primary-color;
  }
}

/* ================================
   Section Spacing Utilities
   ================================ */
.section-padding-top {
  padding: 60px 0 0 0;
}
.section-padding-top-bottom {
  padding: 60px 0;
  &.update_padding_1{
    padding: 20px 0 60px;
  }
}
.related_product_section{
  padding-top: 60px;
}
.section-padding {
  padding: 60px 0 60px 0;
}

.section-top {
  margin-top: 60px;
}
.section-top-sm {
  margin-top: 30px;
}
.section-top-lg {
  margin-top: 100px;
}

/* ================================
   Product Marquee
   ================================ */
.marquee-container {
  width: 100%;
  overflow: hidden;
  position: relative;
  background-color: var(--text-color);

  .marquee {
    display: flex;
    gap: 40px;
    position: relative;
    animation: marquee 15s linear infinite;

    img {
      object-fit: contain;
      min-width: 140px;
    }
  }

  &::before {
    content: "";
    position: absolute;
    width: 146px;
    height: 100%;
    z-index: 1;
    background: #fffffff7;
    filter: blur(10px);
    left: -30px;
    top: 0;
  }

  &::after {
    content: "";
    position: absolute;
    width: 146px;
    height: 100%;
    z-index: 1;
    background: #fffffff7;
    filter: blur(10px);
    right: -30px;
    top: 0;
  }
}

/* Keyframe animation for marquee */
@keyframes marquee {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* ================================
   Hero Section
   ================================ */
.hero-section {
  .hero-banner {
    background-color: $bg-dark !important;
    min-height: 342px !important;

    .hero_banner_title {
      font-size: 3rem;
      font-weight: 600;
    }
    .hero_banner_subtitle {
      font-size: 3rem;
      font-weight: 600;
      color: $primary-color;
    }
  }

  @media (max-width: 768px) {
    .hero-banner {
      min-height: 200px !important;

      .hero_banner_title {
        font-size: 1.5rem;
      }
      .hero_banner_subtitle {
        font-size: 1.5rem;
      }
    }
  }
}

/* ================================
   Partner Images
   ================================ */
.partner-images-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 50px;
  align-items: center;
  justify-items: center;
  padding: 20px 0;

  .partner-image {
    opacity: 1;
    transition: all 0.3s ease;
    border: 1px solid #eee;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    background: #fff;

    img {
      width: 100%;
      height: auto;
    }

    &:hover {
      opacity: 1;
      transform: scale(1.1);
    }
  }

  @media (max-width: 768px) {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
}

/* ================================
   Form UI Section
   ================================ */
.formUISection {
  .menu-toggle,
  button,
  .ast-button,
  .ast-custom-button,
  .button,
  input#submit,
  input[type="button"],
  input[type="submit"],
  input[type="reset"],
  #comments .submit,
  .search .search-submit,
  form[CLASS*="wp-block-search__"].wp-block-search
    .wp-block-search__inside-wrapper
    .wp-block-search__button,
  body .wp-block-file .wp-block-file__button,
  .search .search-submit {
    background-color: $primary-color;
    border-radius: $btn-radius;
    color: $text-white;
    padding: 6px 12px;
    min-height: 40px;
    min-width: 140px;

    &:hover {
      color: $text-white;
      border: none;
    }
  }

  .wppb-form-field input[type="text"],
  .wppb-form-field input[type="number"],
  .wppb-form-field input[type="email"],
  .wppb-form-field input[type="url"],
  .wppb-form-field input[type="search"],
  .wppb-form-field select,
  .wppb-form-field textarea,
  .wppb-form-field .wppb-password-field-container input,
  #wppb-login-wrap .login-username input,
  #wppb-login-wrap .login-auth input,
  input[type="text"],
  input[type="number"],
  input[type="email"],
  input[type="url"],
  input[type="password"],
  input[type="search"],
  input[type="reset"],
  input[type="tel"],
  input[type="date"],
  select,
  textarea {
    border: 1px solid $border-color;
    border-radius: $search-radius;
    padding: 10px 15px;

    &:focus {
      border-color: $primary-color;
      box-shadow: 0 0 5px $primary-color-rgb-opacity-2;
      outline: none;
    }
  }

  .wppb-form-field input[type="text"],
  .wppb-form-field input[type="number"],
  .wppb-form-field input[type="email"],
  .wppb-form-field input[type="url"],
  .wppb-form-field input[type="search"],
  .wppb-form-field select,
  .wppb-form-field textarea,
  .wppb-form-field .wppb-password-field-container input,
  #wppb-login-wrap .login-username input,
  .wppb-form-field .wppb-password-field-container,
  #wppb-login-wrap .login-auth input {
    width: 100%;
  }

  label {
    margin-bottom: 5px;
  }

  .custom-login-links {
    a {
      color: $primary-color;
      text-decoration: none;

      &:hover {
        text-decoration: underline;
      }
    }
  }

  #wppb-recover-password-container p.login-submit,
  #wppb-login-wrap p.login-submit {
    display: flex;
    justify-content: flex-end;
  }
}

/* ================================
   Product Gallery
   ================================ */
.product-gallery_single {
  overflow: hidden;
  position: relative;

  .swiper-slide {
    overflow: hidden;
    text-align: center;
    background-color: #fff;
    box-shadow: none !important;
  }

  .swiper-button-next,
  .swiper-button-prev {
    background-color: $primary-color;
    border-radius: 100%;
    height: 35px;
    width: 35px;
    color: $text-white;

    &::after {
      font-size: 13px;
    }
  }
   .swiper-slide{
    border: 2px solid $border-color;
   }
  .swiper-slide-thumb-active {
    opacity: 1;
    border: 2px solid $primary-color;
  }
  .default_apol_logo{
    min-width: 100%;
    max-height: 270px;
    min-height: 270px;
  }
  .default_apol_thumb{
    min-width: 100%;
    height: auto;
  }

  .swiper-container.mySwiper.swiper-initialized.swiper-horizontal.swiper-free-mode.swiper-watch-progress.swiper-backface-hidden.swiper-thumbs{
    .swiper-slide{
      height: 60px;
      .default_apol_thumb{
          height: 100%;
          width: auto;
          justify-content: center;
          margin: 0px auto;
      }
    }
  }


}




/* ================================
   Single Product Page Styles
   ================================ */
.single-product-page {


  .product-container {
  

    .product-code {
      color: $text-gray;
      font-size: 0.9rem;
    }

    .product-title {
      font-size: 1.5rem;
      font-weight: 600;
      color: #212529;
      margin-bottom: 1.5rem;
    }

    .price {
      color: $primary-color;
      font-size: 1.75rem;
      font-weight: 600;
    }

    .price-note {
      color: $text-gray;
      font-size: 0.85rem;
    }

    /* Quantity Controls */
    .quantity-controls {
      border: 1px solid $border-color;
      border-radius: 6px;
      overflow: hidden;
      display: inline-flex;
      align-items: center;

      .quantity-btn {
        background: white;
        border: none;
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: $text-gray;
        cursor: pointer;
        padding-left: 0;
        padding-right: 0;
        svg{
          display: inline-flex;
        }

        &:hover {
          background: #f8f9fa;
        }
      }

      .quantity-input {
        border: none;
        width: 60px;
        height: 40px;
        text-align: center;
        border-left: 1px solid $border-color;
        border-right: 1px solid $border-color;

        &:focus {
          outline: none;
          box-shadow: none;
        }
      }
    }

    /* Pricing Table */
    .pricing-table {
      border-radius: 6px;

      th {
        background: #e9ecef;
        font-weight: 600;
        color: #495057;
        border-top: none;
      }
    }

    /* Description */
    .description-text {
      color: $text-gray;
      font-size: 0.95rem;
      line-height: 1.6;
    }

    /* Specs */
    .spec-list {
      color: $text-gray;
      font-size: 0.95rem;

      li {
        margin-bottom: 0.5rem;
      }
    }

    /* Manufacturer */
    .manufacturer-link {
      color: $primary-color;
      text-decoration: none;
      font-weight: 500;

      &:hover {
        text-decoration: underline;
      }
    }

    /* Tabs */
    .nav-tabs {
      .nav-link {
        color: $text-gray;
        border: none;
        border-bottom: 2px solid transparent;

        &.active {
          color: $primary-color;
          border-bottom-color: $primary-color;
          background: none;
        }
        &:hover,
        &:focus{
          color: $text-white;
          background-color: $primary-color;
        }
      }
    }

    /* Brochures */
    .brochure-item {
      padding: 0.75rem 1rem;
      border: 1px solid $border-color;
      border-radius: 6px;
      margin-bottom: 0.5rem;
      display: flex;
      align-items: center;
      justify-content: space-between;

      &:hover {
        background: #f8f9fa;
      }

      .download-btn {
        color: $text-gray;
        text-decoration: none;

        &:hover {
          color: $primary-color;
        }
      }
    }
  }

  ul li,
  p.Paragraph{
        font-size: var(--font-size-medium);
        color: var(--text-gray);
    }
  

}






@media (max-width: 1024px) {
   .single-product-page .product-container .product-title {
    font-size: var(--font-size-medium);
            margin: 0 !important;
   }
   .single-product-page .product-container .price{
    font-size: var(--font-size-large);
   }
   h3.h5.text-primary {
    font-size: var(--font-size-medium);
   }
   .single_page_section .right_side_product .overview ul li, .single_page_section .right_side_product .description p {
        font-size: var(--font-size-small);
        line-height: 22px;
    }
    .single_page_section .right_side_product .overview ul li {
    color: var(--text-gray);
}
}

@media (min-width: 576px) {
 .product-gallery_single .default_apol_logo{
    max-height: 270px;
    min-height: 270px;
  }
    .product-gallery_single .swiper-container.mySwiper.swiper-initialized.swiper-horizontal.swiper-free-mode.swiper-watch-progress.swiper-backface-hidden.swiper-thumbs .swiper-slide{
        height: 60px;
      }
}
@media (min-width: 768px) {
   .product-gallery_single .default_apol_logo{
    max-height: 270px;
    min-height: 270px;
  }
    .product-gallery_single .swiper-container.mySwiper.swiper-initialized.swiper-horizontal.swiper-free-mode.swiper-watch-progress.swiper-backface-hidden.swiper-thumbs .swiper-slide{
      height: 60px;
    }
}
@media (min-width: 992px) {
    .product-gallery_single .default_apol_logo{
    max-height: 300px;
    min-height: 300px;
  }
    .product-gallery_single .swiper-container.mySwiper.swiper-initialized.swiper-horizontal.swiper-free-mode.swiper-watch-progress.swiper-backface-hidden.swiper-thumbs .swiper-slide{
      height: 60px;
    }
}
@media (min-width: 1200px) {
      .product-gallery_single .default_apol_logo{
      max-height: 400px;
      min-height: 400px;
    }
    .product-gallery_single .swiper-container.mySwiper.swiper-initialized.swiper-horizontal.swiper-free-mode.swiper-watch-progress.swiper-backface-hidden.swiper-thumbs .swiper-slide{
      height: 80px;
    }
}
@media (min-width: 1400px) {
 .product-gallery_single .default_apol_logo{
    max-height: 450px;
    min-height: 450px;
  }
   .product-gallery_single .swiper-container.mySwiper.swiper-initialized.swiper-horizontal.swiper-free-mode.swiper-watch-progress.swiper-backface-hidden.swiper-thumbs .swiper-slide{
    height: 100px;
   }

}

img.default_apol_thumb.default_swiper_slide_css {
  min-width: auto !important;
  margin: 0px auto;
  box-shadow: none !important;

}