.change-language .change-language-cont,
.change-language .sub-content {
  display: none !important;
}

.cfg-local-form {
  width: 100%;
}

#footer_inquiry .cfg-form-shell {
  background: #ffffff;
  border: 0;
  box-shadow: none;
  max-width: 720px;
}

.web-search .cfg-search-shell,
.cfg-search-shell {
  margin: 40px auto;
  max-width: 1120px;
  padding: 0 20px;
}

.cfg-search-summary {
  color: #4d5f54;
  margin: 12px 0 24px;
}

.cfg-search-result {
  border-bottom: 1px solid #e0e7dc;
  padding: 18px 0;
}

.cfg-search-result h2 {
  font-size: 24px;
  margin: 0 0 8px;
}

.cfg-search-result p {
  color: #445449;
  line-height: 1.6;
  margin: 0;
}

.cfg-redirect-page {
  align-items: center;
  color: #16311f;
  display: flex;
  font-family: Arial, sans-serif;
  justify-content: center;
  min-height: 60vh;
  padding: 24px;
  text-align: center;
}

.cfg-redirect-page a {
  color: #2f6f3c;
  font-weight: 700;
}

.cfg-recovery-page-title {
  color: #202528;
  font-size: 36px;
  line-height: 1.2;
  margin: 28px auto 8px;
  max-width: 1200px;
  padding: 0 20px;
}

/*
 * Local review fallback for pages whose generated Beaver Builder cache files
 * are missing from both the server and the original CDN. This restores a
 * readable grid and gallery without pretending to recreate the lost builder
 * design pixel-for-pixel. Keep this file in review until visual approval.
 */
.fl-builder-content,
.fl-builder-content * {
  box-sizing: border-box;
}

.fl-builder-content .fl-row-content-wrap {
  padding: 24px 20px;
}

.fl-builder-content .fl-row-content {
  margin: 0 auto;
  max-width: 1200px;
}

.fl-builder-content .fl-col-group {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.fl-builder-content .fl-col {
  min-width: 0;
}

.fl-builder-content .fl-col-content {
  padding: 0 12px;
}

.fl-builder-content .fl-module-content {
  margin: 0 0 14px;
}

.fl-builder-content .fl-heading {
  line-height: 1.25;
  margin: 0 0 12px;
}

.fl-builder-content .fl-rich-text {
  line-height: 1.65;
}

.fl-builder-content .fl-photo img,
.fl-builder-content .fl-slide-mobile-photo img {
  display: block;
  height: auto;
  max-width: 100%;
  width: 100%;
}

.fl-builder-content .fl-photo-align-center img {
  margin-left: auto;
  margin-right: auto;
}

.fl-builder-content .fl-button {
  color: #1498d1;
  display: inline-block;
  text-decoration: none;
}

.fl-builder-content .fl-visible-mobile {
  display: none;
}

.fl-content-slider {
  overflow: hidden;
  position: relative;
}

.fl-content-slider .fl-slide {
  display: none;
}

.fl-content-slider .fl-slide:first-child {
  display: block;
}

.fl-content-slider .fl-slide-bg-photo {
  display: none;
}

.fl-content-slider-navigation {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  margin-top: 10px;
}

.fl-content-slider-navigation > a {
  align-items: center;
  background: #1498d1;
  border-radius: 2px;
  display: flex;
  height: 38px;
  justify-content: center;
  width: 38px;
}

.fl-content-slider-svg-container,
.fl-content-slider-svg-container svg {
  display: block;
  height: 18px;
  width: 18px;
}

.fl-content-slider-svg-container path {
  fill: #fff;
}

.project_des_border {
  background: #f5f7f8;
  border-left: 3px solid #90c320;
  padding: 10px 12px;
}

/* Preserve the legacy homepage reveal animation while ensuring archived
 * content is visible in the local review build. Swiper keeps its original
 * slide widths, loop, autoplay and navigation behavior. */
.index_main .wow {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Archived pages can miss the scroll event that reveals WOW elements after
 * the original scripts initialize. These footer blocks are meant to be
 * visible once reached; exposing them restores the old rendered state. */
.web_footer .wow {
  opacity: 1 !important;
  visibility: visible !important;
}

.index_project_swiper .swiper-slide img,
.index_factory_swiper .swiper-slide img {
  display: block;
  height: auto;
  visibility: visible !important;
  width: 100%;
}

/* The recovered category artwork mixes wide banner crops with 3:2 card
 * photos. Keep the original three-column layout and normalize only the media
 * window so every card aligns. */
.cfg-environmental-control-page .pro_list .product_cate_item .item_img,
.cfg-products-page .pro_list .product_cate_item .item_img {
  aspect-ratio: 3 / 2;
  overflow: hidden;
}

.cfg-environmental-control-page .pro_list .product_cate_item .item_img a,
.cfg-products-page .pro_list .product_cate_item .item_img a {
  display: block;
  height: 100%;
  width: 100%;
}

.cfg-environmental-control-page .pro_list .product_cate_item .item_img img,
.cfg-products-page .pro_list .product_cate_item .item_img img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

@media (max-width: 767px) {
  .fl-builder-content .fl-col {
    width: 100% !important;
  }

  .fl-builder-content .fl-visible-desktop-medium {
    display: none;
  }

  .fl-builder-content .fl-visible-mobile {
    display: block;
  }

}
