/* Reviewed Jinan material display fixes, scoped to business content. */
.product__item__img img, .product-imgs img, .details-description-img img {
  object-fit:contain !important; background:#fff;
}
.product-imgs .mySwiper2 img { width:100%; height:auto; aspect-ratio:1; }
.product-imgs .mySwiper img { width:100%; aspect-ratio:1; object-fit:contain; }
.product-details__description__text { display:none; }
.product-details__description__text.active { display:block; }
.product-details-tab { flex-wrap:wrap; gap:12px; }
.jinan-material-image { max-width:720px; margin:28px auto; }
.jinan-material-image img { display:block; width:100%; max-width:100%; height:auto; object-fit:contain; }
.jinan-material-image figcaption { font-size:14px; line-height:1.5; color:#66736e; margin-top:8px; }
.jinan-table-scroll { max-width:100%; overflow-x:auto; margin:24px 0; }
.jinan-table-scroll table { border-collapse:collapse; width:100%; min-width:420px; }
.jinan-table-scroll th, .jinan-table-scroll td { padding:12px 16px; border:1px solid #dce5e0; text-align:left; vertical-align:top; }
.jinan-table-scroll thead { background:#edf6f1; }
.product-details__title, .project-details__title, .blog-card__title, .footer-widget__contact__link { overflow-wrap:anywhere; }
.index-service-swp .swiper { height:auto !important; }
.index-service-swp .swiper-slide { height:auto; }
.hero-slider-two.index-banner { aspect-ratio:auto; }
.index-banner .banner-imgs { aspect-ratio:1920/885; min-height:360px; }
.index-banner .banner-imgs picture { display:block; width:100%; height:100%; }
.index-banner .index-banner-img { display:block; width:100%; height:100%; min-height:0 !important; object-fit:cover; }
.index-banner .hero-slider-two__title__text { font-size:clamp(30px,3vw,52px); line-height:1.15; }
.index-banner .hero-slider-two__title__box2 .hero-slider-two__title__text { font-size:clamp(16px,1.3vw,22px); line-height:1.55; }
@media(max-width:768px) {
  .index-banner .hero-slider-two__item { background:#07233f; }
  .index-banner .banner-imgs { min-height:0; aspect-ratio:1920/885; }
  .index-banner .banner-text { position:static !important; transform:none !important; padding:28px 0 36px; }
  .index-banner .hero-slider-two__title__text { font-size:28px; color:#fff; }
  .index-banner .hero-slider-two__title__box2 .hero-slider-two__title__text { font-size:16px; }
  .index-banner .hero-slider-two__content { padding:0; }
  .index-banner .hero-slider-two__btn { flex-wrap:wrap; gap:12px; }
  .product-details-tab { display:flex; align-items:stretch; }
  .product-details__description__title { font-size:17px; padding:12px; }
  .jinan-material-image { margin:20px auto; }
  .mobile-bottom-nav .nav-item { flex:1; min-width:0; }
}

/* One square frame per business list image; preserve the complete source. */
.demos-one__image, .product__item__img, .service-card__image,
.service-three__thumb > div, .project-card__thumb,
.service-one__item__thumb, .blog-card__image, .blog-card-three__image,
.gallery-one__card { aspect-ratio:1 / 1; background:#fff; flex-shrink:0; }
.demos-one__image > img, .product__item__img img, .service-card__image > img,
.service-three__thumb > div > img, .project-card__thumb > img,
.service-one__item__thumb > img, .blog-card__image > img,
.blog-card-three__image > img, .gallery-one__card > img {
  display:block; width:100%; height:100%; aspect-ratio:1 / 1;
  object-fit:contain !important; object-position:center; mix-blend-mode:normal;
}
.index-service .project-card__thumb img { height:100%; aspect-ratio:1 / 1; }
.product__item__img > a { display:block; width:100%; height:100%; }
.product-bg .product__item__img a { padding-bottom:0; aspect-ratio:1 / 1; }
.product-bg .product__item__img a img { position:static; }
.demos-one__single, .product__item, .service-card, .blog-card,
.blog-card-three { display:flex; flex-direction:column; height:100%; }
.demos-one__text, .product__item__content, .service-card__content,
.blog-card__content, .blog-card-three__content { flex:1; }
/* Reserve equal title and summary space, with full text on the detail page. */
.demos-one__text__title, .product__item__title, .service-card__title,
.service-three__content__title, .project-card__content__title,
.service-one__item__title, .blog-card__title, .blog-card-three__title {
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
  line-clamp:2; overflow:hidden; line-height:1.5; min-height:3em; max-height:3em;
  overflow-wrap:anywhere;
}
.demos-one__text > div, .service-card__text, .service-three__content__text,
.project-card__content__text, .service-one__item__text, .blog-card__text,
.blog-card-three__text {
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3;
  line-clamp:3; overflow:hidden; line-height:1.65; min-height:4.95em; max-height:4.95em;
  overflow-wrap:anywhere;
}
.demos-one__text > div > p { margin:0; }
.service-one__item { max-height:none; }
.service-three__thumb { height:auto; }
.service-three__content__left { min-width:0; flex:1; }
.service-three__content .service-three__content__left { max-width:calc(100% - 50px); }
.service-three__thumb::after { bottom:0; pointer-events:none; }
.service-three__content__title, .service-three__content__text { color:#fff; }
.service-three__content__title { font-size:22px; }
.service-three__content__text { font-size:15px; }
.index-service-swp .swiper-wrapper { align-items:stretch; }
.index-service-swp .project-card { height:100%; }
.index-service-swp .project-card__content { transform:none; }
.project-details__top__thumb img, .about-one__thumb__item.real-image img,
.about-one__video img, .product-img img { object-fit:contain; background:#fff; }
.public-rich-text { overflow-wrap:anywhere; }
.public-rich-text img { max-width:100%; height:auto; }
.index-banner .hero-slider-two__title__text { color:#fff; text-shadow:0 2px 8px #051e36; }
.index-banner .banner-imgs::after {
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(90deg,rgba(3,24,49,.72),rgba(3,24,49,.3) 52%,transparent 78%);
}
.index-banner .banner-imgs { position:relative; }
.index-banner .banner-text { z-index:2; }
.top-carousel-li { background-size:cover; background-position:center; }
@media(max-width:991px) {
  .index-service-swp .project-card__thumb { display:block; width:100%; }
  .index-service-swp .project-card__content { position:relative; inset:auto; padding:20px; }
  .index-service-swp .project-card__content__inner { padding:0; }
  .index-service-swp .project-card__content__text { padding:0; margin:12px 0; }
}
@media(max-width:575px) {
  .service-three__content { padding:20px; }
  .service-three__content__title { font-size:20px; }
  .gallery-one__card { width:100%; }
  .footer-widget__contact__link { font-size:15px; }
}

/* Match category frames to the normalized square media files. */
.product-bg .product__item__img,
.product-bg .product__item__img > a,
.product-bg .product__item__img img { aspect-ratio:1 / 1; }
