/* 全站图片占位：无外链素材，仅版式与交付规格说明 */

.lc-img-ph {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 100%;
  min-height: 140px;
  padding: 1rem 0.75rem;
  box-sizing: border-box;
  border: 2px dashed rgba(44, 36, 25, 0.22);
  border-radius: 6px;
  background: linear-gradient(145deg, rgba(154, 107, 46, 0.06), rgba(125, 51, 51, 0.05));
  color: #3d3228;
  font-family: inherit;
}
.lc-img-ph__dims {
  font-weight: 700;
  font-size: 0.95rem;
  letter-spacing: 0.02em;
  margin-bottom: 0.35rem;
}
.lc-img-ph__fmt {
  font-size: 0.8rem;
  color: #5a5248;
  margin-bottom: 0.25rem;
}
.lc-img-ph__path {
  font-size: 0.68rem;
  color: #8a8177;
  word-break: break-all;
  max-width: 100%;
}

.lc-img-ph--logo {
  min-height: 72px;
  max-width: 240px;
}
.lc-img-ph--hero {
  min-height: min(72vh, 520px);
  width: 100%;
}
.lc-img-ph--banner {
  min-height: 220px;
}
.lc-img-ph--card {
  aspect-ratio: 1 / 1;
  min-height: 200px;
}
.lc-img-ph--wide {
  aspect-ratio: 16 / 9;
  min-height: 180px;
}
.lc-img-ph--portrait {
  aspect-ratio: 3 / 4;
  min-height: 240px;
}
.lc-img-ph--thumb {
  min-height: 100px;
}

/* 轮播：定高在 .carousel-inner（1920/880），各帧 position:absolute 填满，避免 carousel-fade 切页时仅 absolute 子项、inner 无高度 -> 白缝/图掉下去
 * 勿在 #carouselExampleIndicators 下的 .carousel-item 写死 display:block（会盖过 Bootstrap 的 display:none，三帧竖排） */
#carouselExampleIndicators .carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #2a2218;
  aspect-ratio: 1920 / 880;
  max-height: 85vh;
  min-height: 220px;
}
#carouselExampleIndicators .carousel-item.lc-slide-fill--img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  min-height: 0;
  max-height: none;
  aspect-ratio: unset;
  overflow: hidden;
  /* 与 inner 定框配合；勿用 height:auto，否则与 BS 的 absolute 切页组合时整栏塌缩 */
  height: 100% !important;
  background: #2a2218 !important;
  background-image: none !important;
}
#carouselExampleIndicators .carousel-item.lc-slide-fill--img .lc-carousel-hero {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  /* 盖过 theme-responsive 里对全局 img 的 height:auto，确保铺满父级 */
  height: 100% !important;
  flex-shrink: 0;
}
#carouselExampleIndicators .carousel-item.lc-slide-fill--img::before {
  z-index: 0;
}
#carouselExampleIndicators .carousel-control-prev,
#carouselExampleIndicators .carousel-control-next {
  z-index: 4;
}
#carouselExampleIndicators .carousel-indicators {
  z-index: 4;
}
.lc-brand-banner-img,
.lc-jjp-wide {
  width: 100%;
  max-width: 100%;
  display: block;
  border-radius: 6px;
  object-fit: cover;
  object-position: center;
  height: auto;
  /* 客户切图可能像素极大，限高避免把后续版块「顶到」与横幅重叠的错觉 */
  max-height: min(52vh, 520px);
}
.lc-jjp-wide {
  max-width: 1200px;
  margin: 0 auto;
}
/* 首页 #about-us 左侧品牌主图（替换原 600×600 占位） */
.lc-about-media-img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 6px;
  box-shadow: 0 8px 28px rgba(44, 36, 25, 0.08);
}
.filter-img .lc-product-img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 4px;
  background: #f2f0ec;
}
/* 产品线网格：避免 flex 子项把图片区压成 0 宽导致「不显示」 */
#our-projects .filter-img {
  min-width: 0;
  width: 100%;
}
.team-img .lc-team-img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 4px;
  object-fit: cover;
}
.team-img .lc-team-img--wide {
  aspect-ratio: 16 / 10;
  max-height: 420px;
  object-fit: cover;
}
.team-img .lc-team-img:not(.lc-team-img--wide) {
  aspect-ratio: 1 / 1;
  max-height: 400px;
}

/* 轮播：去掉背景图后的幻灯片（仅占位/渐变，无实图时） */
.carousel-item.lc-slide-fill:not(.lc-slide-fill--img) {
  background-image: none !important;
  background: linear-gradient(165deg, #2a2218 0%, #4a3d32 45%, #2c2419 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}
.carousel-item.lc-slide-fill:not(.lc-slide-fill--img) .lc-img-ph--hero {
  max-width: 90%;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.25);
  color: #f7f3eb;
}
.carousel-item.lc-slide-fill .lc-img-ph__dims {
  color: #f0d9a8;
}
.carousel-item.lc-slide-fill .lc-img-ph__fmt,
.carousel-item.lc-slide-fill .lc-img-ph__path {
  color: rgba(247, 243, 235, 0.75);
}

.filter-img .lc-img-ph,
.team-img .lc-img-ph {
  margin-bottom: 0;
}

.navbar-brand .lc-img-ph--logo {
  margin: 0;
}

/* 产品线：腊货 / 酱板 / 礼盒 共 3 个 Tab 等距居中，小屏自动换行 */
#our-projects .product-tab-menu ul.lc-product-tabs-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  column-gap: 1.5rem;
  row-gap: 0.6rem;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  box-sizing: border-box;
}
#our-projects .product-tab-menu ul.lc-product-tabs-nav li {
  margin-right: 0;
  flex: 0 0 auto;
}
@media (min-width: 768px) {
  #our-projects .product-tab-menu ul.lc-product-tabs-nav {
    column-gap: 2.25rem;
  }
}

/* 渠道与合作：六卡统一 1:1 图高 + 行内 flex 等高，避免首张宽图与余卡高度差造成「农特品」与其它列不齐、整行下塌感 */
#our-team .row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
#our-team .row > [class*="col-"] {
  display: flex;
  margin-bottom: 1.5rem;
}
#our-team .row > [class*="col-"] .card {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 0;
  flex: 1 1 auto;
}
#our-team .team-img {
  flex: 0 0 auto;
}
#our-team .team-img .lc-team-img,
#our-team .team-img .lc-team-img--wide {
  aspect-ratio: 1 / 1;
  max-height: 400px;
  width: 100%;
  object-fit: cover;
}

/* 合作伙伴条：小横条占位，避免 600×600 过高 */
#oc-carousel .lc-img-ph {
  min-height: 72px;
  aspect-ratio: 21 / 9;
  max-height: 96px;
}
#oc-carousel .lc-img-ph__dims {
  font-size: 0.72rem;
}
