:root {
  --theme-color-primary: #5C97F7;
  --theme-color-primary-dark: #2E79F5;
  --theme-color-primary-light: #7BAAF9;
}

/* === Gaite two-column home layout + body background (aligned with 10090) === */
body{background:url(../images/bodybg.jpg) repeat;}
.gaite-home-cols{display:flex;gap:20px;align-items:flex-start;margin-top:1rem;}
.gaite-side{flex:0 0 220px;width:220px;background:#fff;border:1px solid #e5e5e5;}
.gaite-side .side-title{background:var(--theme-color-primary,#5C97F7);color:#fff;padding:12px 16px;font-size:18px;font-weight:bold;}
.gaite-side ul{list-style:none;margin:0;padding:0;}
.gaite-side li a{display:block;padding:10px 16px;border-bottom:1px solid #eee;color:#333;text-decoration:none;}
.gaite-side li a:hover{background:#f5f7fa;color:var(--theme-color-primary,#5C97F7);}
.gaite-main{flex:1;min-width:0;}
.gaite-ad img{width:100%;display:block;margin-bottom:1rem;}
@media (max-width:768px){.gaite-home-cols{flex-direction:column;}.gaite-side{width:100%;flex:auto;}}

/* === Gaite home blocks aligned with 10090 === */
.gaite-series{margin-top:1rem;background:#fff;}
.gaite-series img.banner{width:100%;display:block;}
.gaite-series-grid{display:flex;gap:10px;padding:10px;}
.gaite-series-grid .si{flex:1;min-width:0;text-align:center;}
.gaite-series-grid .si img{width:100%;display:block;}
.gaite-series-grid .cap{padding:10px 0;font-size:15px;color:#333;}
.gaite-series-grid .cap b{color:var(--theme-color-primary,#5C97F7);font-size:20px;margin-right:8px;}
.gaite-sec-head{padding:28px 0 16px;text-align:center;}
.gaite-sec-head .t{font-size:26px;font-weight:bold;color:#333;}
.gaite-sec-head .e{font-size:13px;color:#999;letter-spacing:2px;margin-top:4px;}
.gaite-cases{margin-top:1rem;}
.gaite-logo-grid{display:flex;flex-wrap:wrap;background:#fff;}
.gaite-logo-grid span{flex:0 0 20%;box-sizing:border-box;border-right:1px solid #eee;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:center;padding:12px;}
.gaite-logo-grid img{max-width:100%;max-height:60px;}
.gaite-about{margin-top:1rem;}
.gaite-about-body{background:#fff;padding:20px;}
.gaite-about-body img.factory{width:100%;display:block;}
.gaite-about-body p{text-indent:2em;font-size:16px;line-height:1.9;color:#555;margin:12px 0 0;}
.gaite-about-body a.more{display:inline-block;margin-top:15px;color:var(--theme-color-primary,#5C97F7);text-decoration:none;}
.gaite-news{margin-top:1rem;}
.gaite-news-list{background:#fff;padding:10px 20px;}
.gaite-news .news-item{display:flex;align-items:flex-start;padding:14px 0;border-bottom:1px dashed #ddd;}
.gaite-news .num{flex:0 0 46px;width:46px;height:46px;line-height:46px;text-align:center;background:var(--theme-color-primary,#5C97F7);color:#fff;font-size:18px;font-weight:bold;margin-right:15px;}
.gaite-news .nb{flex:1;min-width:0;}
.gaite-news .nb .title{font-size:16px;color:#333;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;}
.gaite-news .nb .title:hover{color:var(--theme-color-primary,#5C97F7);}
.gaite-news .nb .sum{font-size:13px;color:#999;margin-top:6px;line-height:1.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.gaite-news .nb .date{color:#bbb;margin-left:8px;}
.gaite-news .nb .item-more{float:right;display:inline-block;margin-left:12px;padding:4px 16px;background:var(--theme-color-primary,#5C97F7);color:#fff;font-size:12px;text-decoration:none;}
.gaite-news-more{text-align:center;background:#fff;padding:15px 0 25px;}
.gaite-news-more a.more{display:inline-block;padding:8px 40px;background:var(--theme-color-primary,#5C97F7);color:#fff;text-decoration:none;}
.gaite-form{margin-top:1rem;}
.gaite-form form{background:#fff;padding:25px;}
.gaite-form .fr{display:flex;gap:15px;margin-bottom:15px;}
.gaite-form input[type=text]{flex:1;min-width:0;border:1px solid #ddd;padding:10px;font-size:14px;box-sizing:border-box;}
.gaite-form textarea{width:100%;box-sizing:border-box;border:1px solid #ddd;padding:10px;font-size:14px;margin-bottom:15px;}
.gaite-form button{background:var(--theme-color-primary,#5C97F7);color:#fff;border:0;padding:10px 60px;font-size:16px;cursor:pointer;}
.gaite-form .msg{margin-top:10px;color:var(--theme-color-primary,#5C97F7);min-height:20px;}
.gaite-footer{background:#2a2a2a;}
.gaite-footer .fcol{padding:20px 10px;}
.gaite-footer .fcol .title{color:#fff;font-size:16px;margin-bottom:12px;}
.gaite-footer .fcol a{display:block;color:#c9c9c9;font-size:13px;line-height:2;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.gaite-footer .fcol a:hover{color:#fff;}
.gaite-footer .qr{border:2px solid #ddd;width:120px;height:120px;padding:2px;background:#fff;}
.gaite-footer .qr-text{color:#c9c9c9;font-size:13px;margin-top:8px;}
.gaite-footer .copyright{background:#222;text-align:center;padding:15px;color:#999;font-size:13px;}
.gaite-footer .copyright a{color:#999;text-decoration:none;margin:0 5px;}
@media (max-width:768px){
    .gaite-series-grid{flex-wrap:wrap;}
    .gaite-series-grid .si{flex:0 0 48%;}
    .gaite-logo-grid span{flex:0 0 33.33%;}
    .gaite-form .fr{flex-direction:column;}
}

/* === Gaite layout modes (admin configurable) === */
.gaite-series-grid.layout-v{display:block;padding:10px 0;}
.gaite-series-grid.layout-v .si{margin-bottom:10px;}
.gaite-series-grid.layout-v .si img{width:100%;display:block;}
.gaite-series-grid.layout-v .cap{display:none;}
.gaite-series-grid.layout-h{display:flex;gap:10px;padding:10px;}
.gaite-series-grid.layout-h .si{flex:1;min-width:0;text-align:center;}
.gaite-about-body.layout-lr{display:flex;gap:30px;align-items:flex-start;background:transparent;padding:10px 0 20px;}
.gaite-about-body.layout-lr img.factory{flex:0 0 45%;width:45%;}
.gaite-about-body.layout-lr .txt{flex:1;min-width:0;}
.gaite-about-body.layout-full{display:block;background:#fff;padding:20px;}
.gaite-about-body.layout-full img.factory{width:100%;}
.gaite-about-body .txt p{margin:0 0 10px;}
.gaite-about-body a.more{display:none;}
@media (max-width:768px){.gaite-about-body.layout-lr{flex-direction:column;}.gaite-about-body.layout-lr img.factory{width:100%;flex:auto;}.gaite-series-grid.layout-h{flex-wrap:wrap;}.gaite-series-grid.layout-h .si{flex:0 0 48%;}}
/* === Banner full image display (aligned with 10090) === */
.ub-banner .swiper-slide .cover{background-size:100% 100%;}


/* =========================================================
   Mega Dropdown 菜单（参照艾特信/tipray：左配图 + 右多列）
   hover 展开 / 左图右列 / 箭头旋转 / 桥接防误收 / 移动端隐藏
   ========================================================= */
.menu-nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    position: relative;
}
.menu-nav > a,
.menu-nav > .has-dropdown > .parent-link {
    display: inline-flex;
    align-items: center;
    padding: 18px 16px;
    color: #333;
    font-size: 16px;
    text-decoration: none;
    white-space: nowrap;
    line-height: 1.4;
    border-bottom: 2px solid transparent;
    transition: color .2s, border-color .2s;
}
.menu-nav > a:hover,
.menu-nav > a.active,
.menu-nav > .has-dropdown > .parent-link:hover,
.menu-nav > .has-dropdown:hover > .parent-link {
    color: var(--theme-color-primary, #5C97F7);
    border-bottom-color: var(--theme-color-primary, #5C97F7);
}

.nav-caret {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 6px;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid currentColor;
    vertical-align: middle;
    transition: transform .25s ease;
}
.has-dropdown:hover .nav-caret {
    transform: rotate(180deg);
}

.has-dropdown {
    position: relative;
    display: inline-block;
}

/* 悬停桥接：父项到面板之间的空隙，防止误收 */
.has-dropdown::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    height: 24px;
    z-index: 1;
}

.nav-dropdown {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(12px);
    display: flex;
    gap: 28px;
    min-width: 860px;
    max-width: calc(100vw - 40px);
    background: #fff;
    border-radius: 0 0 10px 10px;
    box-shadow: 0 18px 48px rgba(15, 40, 70, .16);
    border-top: 3px solid var(--theme-color-primary, #5C97F7);
    padding: 24px 28px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .25s ease, transform .25s ease, visibility .25s;
    z-index: 9999;
}
.has-dropdown:hover .nav-dropdown {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}

/* 左侧配图 + 文字蒙层 */
.dropdown-visual {
    position: relative;
    flex: 0 0 280px;
    width: 280px;
    height: 220px;
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(135deg, var(--theme-color-primary, #5C97F7), #1e4d8c);
}
.dropdown-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.dropdown-visual .visual-mask {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 28px 16px 14px;
    background: linear-gradient(to top, rgba(8, 28, 56, .78), rgba(8, 28, 56, 0));
    color: #fff;
}
.dropdown-visual .visual-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
}
.dropdown-visual .visual-sub {
    margin-top: 4px;
    font-size: 12px;
    opacity: .9;
    line-height: 1.4;
}

/* 右侧多列子项 */
.dropdown-cols {
    flex: 1;
    min-width: 0;
    display: flex;
    gap: 0;
}
.dropdown-cols.cols-2 .dropdown-col {
    flex: 1 1 50%;
}
.dropdown-cols.cols-3 .dropdown-col {
    flex: 1 1 33.333%;
}
.dropdown-col {
    padding: 4px 20px;
    border-right: 1px solid #eef2f6;
    min-width: 0;
}
.dropdown-col:last-child {
    border-right: 0;
}
.dropdown-col:first-child {
    padding-left: 4px;
}
.dropdown-col:last-child {
    padding-right: 4px;
}
.dropdown-col ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.dropdown-col li {
    margin: 0;
}
.dropdown-col li a {
    display: block;
    padding: 9px 8px;
    color: #445566;
    font-size: 14px;
    line-height: 1.5;
    text-decoration: none;
    border-radius: 4px;
    transition: color .2s, background .2s, padding-left .2s;
}
.dropdown-col li a:hover {
    color: var(--theme-color-primary, #5C97F7);
    background: rgba(92, 151, 247, .08);
    padding-left: 12px;
}

/* 移动端隐藏下拉（走抽屉导航） */
@media (max-width: 992px) {
    .nav-dropdown {
        display: none !important;
    }
    .has-dropdown::after {
        display: none;
    }
    .nav-caret {
        display: none;
    }
    .menu-nav > a,
    .menu-nav > .has-dropdown > .parent-link {
        padding: 12px 14px;
        font-size: 15px;
    }
}



/* === FIX: 导航强制一行 === */
.menu-nav {
    flex-wrap: nowrap !important;
    white-space: nowrap;
    min-width: 0;
}
.menu-nav > a,
.menu-nav > .has-dropdown > .parent-link {
    padding: 18px 11px !important;
    font-size: 15px !important;
    flex: 0 0 auto;
}
.menu-nav > .has-dropdown {
    flex: 0 0 auto;
}
.ub-header-b .nav {
    min-width: 0;
    flex: 1 1 auto;
}
.ub-header-b .nav .search {
    flex: 0 0 auto;
    margin-left: 8px;
}
@media (max-width: 1280px) {
    .menu-nav > a,
    .menu-nav > .has-dropdown > .parent-link {
        padding: 18px 8px !important;
        font-size: 14px !important;
    }
}
@media (max-width: 992px) {
    .menu-nav {
        flex-wrap: wrap !important;
    }
}


/* ===== 文章正文排版（全站统一）===== */
.ub-html p,
.item-content p,
.cms-detail p,
.content-html p,
#content p,
.article-body p {
    text-indent: 2em;
    margin: 0 0 1em 0;
    line-height: 1.9;
    text-align: justify;
    font-size: 15px;
    color: #2c3e50;
}
.ub-html p:has(> img),
.item-content p:has(> img),
.cms-detail p:has(> img),
.content-html p:has(> img),
#content p:has(> img),
.article-body p:has(> img) {
    text-indent: 0;
}
.ub-html p img,
.item-content p img,
.cms-detail p img,
.content-html p img {
    display: block;
    margin: 14px auto;
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}
.ub-html h2, .item-content h2, .cms-detail h2, .content-html h2 {
    margin: 1.5em 0 0.7em;
    font-size: 20px;
    font-weight: 700;
    color: #152536;
    line-height: 1.5;
}
.ub-html h3, .item-content h3, .cms-detail h3, .content-html h3 {
    margin: 1.35em 0 0.55em;
    font-size: 17px;
    font-weight: 700;
    color: #1a2a3a;
    line-height: 1.55;
}
.ub-html a, .item-content a { color: #2563eb; }
.ub-html strong { font-weight: 600; }




/* 详情页推荐：PC 固定右侧中部；手机文章底部 */
.detail-side-float {
    width: 300px;
    max-height: min(70vh, 560px);
    overflow-y: auto;
    z-index: 120;
}
@media (min-width: 992px) {
    .detail-side-float {
        position: fixed !important;
        right: 18px;
        top: 50%;
        transform: translateY(-50%);
    }
    /* 栏位占位，避免正文跳动 */
    .detail-side-float-ghost {
        width: 300px;
        flex: 0 0 300px;
        max-width: 300px;
        pointer-events: none;
    }
}
@media (max-width: 991px) {
    .detail-side-float {
        position: static !important;
        transform: none;
        width: 100%;
        max-height: none;
        margin: 20px 0 8px;
    }
    .detail-side-float-ghost { display: none; }
}
.detail-side-float .ub-panel {
    box-shadow: 0 10px 32px rgba(15, 40, 80, .12);
    border: 1px solid #e8eef8;
    border-radius: 12px;
    background: #fff;
}
.detail-side-float .item-c:last-child {
    border-bottom: none !important;
}


/* 详情右侧推荐：PC固定右侧中部，手机文章底部 */
.detail-side-float {
  position: fixed !important;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 300px;
  z-index: 200;
  max-height: 74vh;
  overflow: auto;
  display: block !important;
  scrollbar-width: thin;
}
.detail-side-float .ub-panel {
  display: block !important;
  background: #fff !important;
  border: 1px solid #e6eef8;
  border-radius: 12px;
  box-shadow: 0 12px 36px rgba(20, 50, 100, .12);
  overflow: hidden;
}
.detail-side-float .item-c {
  display: flex !important;
  gap: 10px;
  align-items: flex-start;
  padding: 10px 12px;
  border-bottom: 1px solid #f2f5f9;
  text-decoration: none !important;
  color: #1f2937 !important;
}
.detail-side-float .item-c:hover { background: #f7faff; }
@media (max-width: 991px) {
  .detail-side-float {
    position: static !important;
    transform: none;
    width: 100%;
    max-height: none;
    margin: 18px 0 6px;
  }
}
/* 产品入口 + 醒目电话地址 */
.side-prod-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 12px;
}
.side-prod-grid a {
  display: block;
  padding: 8px 6px;
  text-align: center;
  font-size: 12px;
  color: #1e3a8a;
  background: #f0f5ff;
  border-radius: 8px;
  text-decoration: none !important;
  border: 1px solid #e0e9ff;
}
.side-prod-grid a:hover { background: #2563eb; color: #fff; }
.side-contact-box {
  margin: 12px;
  padding: 14px;
  border-radius: 10px;
  background: linear-gradient(135deg, #1d4ed8, #2563eb);
  color: #fff !important;
}
.side-contact-box .phone {
  display: block;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .5px;
  color: #fff !important;
  text-decoration: none !important;
  margin: 4px 0;
}
.side-contact-box .addr {
  display: block;
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.5;
  color: #dbeafe !important;
  text-decoration: none !important;
}
.side-contact-box .cta {
  display: inline-block;
  margin-top: 10px;
  padding: 8px 12px;
  background: #fff;
  color: #1d4ed8 !important;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none !important;
}

.phone-hl {
  display: inline-block !important;
  padding: 2px 8px;
  margin: 0 4px;
  background: #fff7e8;
  color: #d97706 !important;
  border: 1px solid #fcd34d;
  border-radius: 6px;
  font-weight: 700 !important;
  font-size: 15px !important;
  text-decoration: none !important;
  letter-spacing: .3px;
}
.phone-hl:hover { background: #fbbf24; color: #1f2937 !important; }
.prod-side-float .item-c:hover { background: #f7faff; }

/* ===== FAQ 段落(AI搜索引擎友好) ===== */
.gaite-faq { padding: 18px 20px; border: 1px solid #e8eef7; border-radius: 10px; background: #f7faff; }
.gaite-faq-title { margin: 0 0 14px; font-size: 17px; font-weight: 700; color: #1f2937; display: flex; align-items: center; gap: 7px; }
.gaite-faq-title .iconfont { color: #2563eb; }
.gaite-faq-item { margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px dashed #dbe4f0; }
.gaite-faq-item:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
.gaite-faq-item .q { font-size: 15px; font-weight: 600; color: #1f2937; margin-bottom: 7px; display: flex; gap: 8px; line-height: 1.6; }
.gaite-faq-item .a { font-size: 14px; color: #4b5563; line-height: 1.75; display: flex; gap: 8px; }
.gaite-faq-item .mark { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 6px; font-size: 12px; font-weight: 700; }
.gaite-faq-item .q .mark { background: #2563eb; color: #fff; }
.gaite-faq-item .a .mark { background: #dbeafe; color: #1d4ed8; }
@media (max-width: 768px) {
    .gaite-faq { padding: 14px 15px; }
    .gaite-faq-title { font-size: 16px; }
    .gaite-faq-item .q { font-size: 14px; }
    .gaite-faq-item .a { font-size: 13px; }
}

/* ===== AI生成正文中的Markdown表格(利于搜索引擎结构化提取) ===== */
.md-table { width: 100%; border-collapse: collapse; margin: 16px 0; font-size: 14px; border: 1px solid #e3e8ef; }
.md-table th, .md-table td { border: 1px solid #e3e8ef; padding: 9px 12px; text-align: left; line-height: 1.6; }
.md-table th { background: #f2f6fb; font-weight: 700; color: #1f2937; white-space: nowrap; }
.md-table tr:nth-child(even) td { background: #fafbfd; }
.md-table td strong { color: #1d4ed8; }
@media (max-width: 768px) {
    .md-table { font-size: 13px; }
    .md-table th, .md-table td { padding: 7px 8px; }
    .md-table { display: block; overflow-x: auto; white-space: nowrap; }
}

/* ===== 产品推荐侧栏(统一缩略图尺寸 + 分区标题 + 悬停) ===== */
.prod-side-float .ub-panel { border-radius: 12px; box-shadow: 0 2px 12px rgba(15, 35, 70, .06); overflow: hidden; }
.prod-side-float .head { border-radius: 12px 12px 0 0; }
.prod-side-float .body { padding: 4px 0; }

.prod-side-float .rec-item {
    display: flex; gap: 10px; align-items: center;
    padding: 9px 12px;
    border-bottom: 1px solid #f2f5f9;
    text-decoration: none; color: #1f2937;
    transition: background .18s ease;
}
.prod-side-float .rec-item:last-child { border-bottom: none; }
.prod-side-float .rec-item:hover { background: #f5f9ff; }

/* 统一缩略图: 固定 1:1 比例 + object-fit 避免大小图混杂、变形 */
.prod-side-float .rec-thumb {
    width: 52px; height: 52px; flex: none;
    border-radius: 9px; overflow: hidden;
    background: #eef3fb;
    box-shadow: inset 0 0 0 1px rgba(15, 35, 70, .05);
}
.prod-side-float .rec-thumb img {
    width: 100%; height: 100%;
    object-fit: cover;          /* 关键: 统一裁切, 不再大小不一 */
    object-position: center;
    display: block;
    transition: transform .25s ease;
}
.prod-side-float .rec-item:hover .rec-thumb img { transform: scale(1.06); }

.prod-side-float .rec-title {
    flex: 1; min-width: 0;
    font-size: 13px; line-height: 1.45; color: #1f2937;
    overflow: hidden;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}
/* (v3已统一尺寸, 移除旧规则) */

/* 分区标题 */
.prod-side-float .rec-sub {
    padding: 11px 12px 7px; font-size: 13px; font-weight: 700; color: #1f2937;
    border-top: 1px solid #eef2f7; margin-top: 4px;
    display: flex; align-items: center; gap: 6px;
}
.prod-side-float .rec-sub i {
    width: 3px; height: 13px; background: #1d4ed8; border-radius: 2px; display: inline-block;
}


/* ===== 推荐框:修复首个缩略图压住蓝色标题 ===== */
.prod-side-float .ub-panel > .head {
    border-radius: 12px 12px 0 0 !important;
    position: relative; z-index: 2;      /* 标题层级高于body */
    padding: 12px 14px;
}
.prod-side-float .ub-panel > .body {
    position: relative; z-index: 1;
    padding-top: 6px;                    /* 标题与首条目的安全间距 */
    background: #fff;                    /* 白色底,杜绝图片透出压住标题 */
    border-radius: 0 0 12px 12px;
}

.prod-side-float .rec-item { position: relative; z-index: 1; }
.prod-side-float .rec-thumb { position: relative; z-index: 0; overflow: hidden; }

/* ===== 推荐框 v2:彻底解决首个条目被蓝色标题压住 ===== */
.prod-side-float .ub-panel {
    overflow: hidden !important;          /* 任何内容不得越界 */
    border-radius: 12px;
    background: #fff;
}
.prod-side-float .ub-panel > .head {
    position: relative;
    z-index: 10;                         /* 标题永远在上层 */
    padding: 13px 14px 14px;             /* 底部多留 2px 呼吸位 */
    border-radius: 12px 12px 0 0 !important;
    line-height: 22px;
    min-height: 50px;
    box-sizing: border-box;
}
.prod-side-float .ub-panel > .body {
    position: relative;
    z-index: 1;
    background: #fff;
    border-radius: 0 0 12px 12px;
    padding: 10px 0 4px !important;      /* 顶部 10px 安全间距 */
    overflow: hidden;
}
.prod-side-float .rec-item {
    position: relative;
    z-index: 1;
    overflow: hidden;
}
.prod-side-float .rec-item:first-child { border-top: none; }
/* (已合并到统一规则, 移除此缺失尺寸的覆盖) */


/* ===== 推荐框 v3: 缩略图强制统一尺寸(解决首条大小不一/压标题) ===== */
.prod-side-float .rec-item {
    display: flex !important; gap: 10px; align-items: center;
    padding: 10px 12px; border-bottom: 1px solid #f2f5f9;
    text-decoration: none; color: #1f2937;
}
.prod-side-float .rec-thumb,
.prod-side-float .rec-thumb-case {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    flex: none !important;
    border-radius: 8px;
    overflow: hidden;
    background: #eef3fb;
    position: relative; z-index: 0;
    box-sizing: border-box;
}
.prod-side-float .rec-thumb img {
    width: 100% !important; height: 100% !important;
    object-fit: cover !important; object-position: center;
    display: block; margin: 0;
}
.prod-side-float .rec-title {
    flex: 1; min-width: 0;
    font-size: 13px; line-height: 1.45; color: #1f2937;
    overflow: hidden;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}
.prod-side-float .rec-item-case { padding: 9px 12px; }
.prod-side-float .rec-item-case .rec-title { font-size: 12px; color: #4b5563; }

/* 标题与内容区层级隔离, 杜绝任何重叠 */
.prod-side-float .ub-panel { overflow: hidden !important; background:#fff; border-radius:12px; }
.prod-side-float .ub-panel > .head {
    position: relative; z-index: 10;
    padding: 13px 14px 15px !important;
    border-radius: 12px 12px 0 0 !important;
    line-height: 22px; min-height: 52px; box-sizing: border-box;
}
.prod-side-float .ub-panel > .body {
    position: relative; z-index: 1;
    background: #fff; border-radius: 0 0 12px 12px;
    padding: 12px 0 6px !important;
    overflow: hidden;
}

/* ===== 推荐框 v4: 缩略图描边 + 强制裁切(原图比例1.33~4.58不等) ===== */
.prod-side-float .rec-thumb,
.prod-side-float .rec-thumb-case {
    width: 52px !important; height: 52px !important;
    min-width: 52px !important; min-height: 52px !important;
    max-width: 52px !important; max-height: 52px !important;
    flex: 0 0 52px !important;
    box-sizing: border-box;
    border: 1px solid #dde5f0;            /* 描边: 一眼看出框的大小是否一致 */
    border-radius: 9px;
    overflow: hidden;
    background: #eef3fb;
    position: relative;
    z-index: 0;
    line-height: 0;                      /* 消除img基线空隙 */
    font-size: 0;
}
.prod-side-float .rec-thumb img {
    display: block !important;
    width: 100% !important; height: 100% !important;
    max-width: 100% !important; max-height: 100% !important;
    object-fit: cover !important;         /* 关键: 统一裁切填满, 无视原图比例 */
    object-position: center !important;
    margin: 0 !important; padding: 0 !important;
    border: 0 !important;
    float: none !important;
}
.prod-side-float .rec-item:hover .rec-thumb img { transform: scale(1.06); }

/* 兜底: 任何主题默认样式也不能破坏尺寸 */
.prod-side-float .rec-item > span:first-child {
    width: 52px !important; height: 52px !important; flex: 0 0 52px !important;
}
.prod-side-float .rec-item-case > span:first-child {
    width: 52px !important; height: 52px !important; flex: 0 0 52px !important;
}

/* ===== v5 通用侧栏推荐组件(全站统一, 以后只改这里) ===== */
.detail-side-float .ub-panel {
    overflow: hidden !important; background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(15,35,70,.06);
}
.detail-side-float .ub-panel > .head {
    position: relative; z-index: 10;
    background: linear-gradient(135deg,#1d4ed8,#2563eb);
    padding: 13px 14px 15px !important;
    border-radius: 12px 12px 0 0 !important;
    min-height: 52px; box-sizing: border-box; line-height: 22px;
}
.detail-side-float .ub-panel > .head .title {
    color:#fff; font-weight:700; font-size:15px; margin:0;
}
.detail-side-float .ub-panel > .body {
    position: relative; z-index: 1;
    background:#fff; border-radius: 0 0 12px 12px;
    padding: 12px 0 6px !important;
    overflow: hidden;
}

/* 条目 */
.detail-side-float .rec-item {
    display: flex !important; gap: 10px; align-items: center;
    padding: 10px 12px; border-bottom: 1px solid #f2f5f9;
    text-decoration: none; color: #1f2937;
    transition: background .18s ease;
}
.detail-side-float .rec-item:last-child { border-bottom: none; }
.detail-side-float .rec-item:hover { background: #f5f9ff; }

/* 缩略图: 强制统一尺寸 + 描边 */
.detail-side-float .rec-thumb,
.detail-side-float .rec-thumb-case {
    width: 52px !important; height: 52px !important;
    min-width: 52px !important; min-height: 52px !important;
    max-width: 52px !important; max-height: 52px !important;
    flex: 0 0 52px !important;
    box-sizing: border-box;
    border: 1px solid #dde5f0; border-radius: 8px;
    overflow: hidden; background: #eef3fb;
    position: relative; z-index: 0;
    line-height: 0; font-size: 0;
}
.detail-side-float .rec-thumb img {
    display:block !important;
    width:100% !important; height:100% !important;
    max-width:100% !important; max-height:100% !important;
    object-fit: cover !important; object-position: center !important;
    margin:0 !important; padding:0 !important; border:0 !important;
}
.detail-side-float .rec-item:hover .rec-thumb img { transform: scale(1.06); }
.detail-side-float .rec-title {
    flex:1; min-width:0; font-size:13px; line-height:1.45; color:#1f2937;
    overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
}
.detail-side-float .rec-item-case { padding: 9px 12px; }
.detail-side-float .rec-item-case .rec-title { font-size:12px; color:#4b5563; }

/* 分区标题 / 空状态 */
.detail-side-float .rec-sub {
    padding: 11px 12px 7px; font-size:13px; font-weight:700; color:#1f2937;
    border-top: 1px solid #eef2f7; margin-top: 4px;
    display:flex; align-items:center; gap:6px;
}
.detail-side-float .rec-sub i { width:3px; height:13px; background:#1d4ed8; border-radius:2px; display:inline-block; }
.detail-side-float .rec-empty { padding:16px 12px; color:#94a3b8; font-size:13px; text-align:center; }

/* 咨询CTA */
.detail-side-float .rec-cta {
    margin: 12px; padding: 14px; border-radius: 10px;
    background: linear-gradient(135deg,#1d4ed8,#2563eb); color:#fff;
}
.detail-side-float .rec-cta-tip { font-size:13px; opacity:.95; margin-bottom:2px; }
.detail-side-float .rec-cta .phone-hl {
    display:block; font-size:18px; font-weight:700; color:#fff;
    text-decoration:none; margin:4px 0;
}
.detail-side-float .rec-cta-map {
    display:block; margin-top:8px; font-size:12px; color:#dbeafe; text-decoration:none;
}
.detail-side-float .rec-cta-btn {
    display:inline-block; margin-top:10px; padding:8px 12px;
    background:#fff; color:#1d4ed8; border-radius:6px;
    font-size:13px; font-weight:600; text-decoration:none;
}

/* ===== v6 悬浮框: 自适应高度, 保证CTA电话与报价按钮永不被裁切 ===== */
@media (min-width: 992px) {
    .detail-side-float {
        position: fixed !important;
        right: 74px;
        top: 76px !important;               /* 顶部对齐 */
        bottom: auto !important;            /* 改为内容自适应高度, 消除中间空白 */
        max-height: calc(100vh - 92px);     /* 但不超过视口 */
        overflow-y: auto;
        transform: none !important;
        width: 290px;
        max-height: none !important;
        display: flex !important;
        flex-direction: column;
        overflow: hidden !important;
        z-index: 120;
    }
    /* 面板按内容高度, 不拉伸 */
    .detail-side-float > .ub-panel {
        display: block !important;
        margin: 0 !important;
    }
    /* 标题固定 */
    .detail-side-float .ub-panel > .head { flex: 0 0 auto !important; }
    /* 推荐列表可滚动, 空间不足时只滚动这里 */
    .detail-side-float .ub-panel > .body {
        overflow: visible !important;      /* 内容自然展开, 不内部滚动 */
        max-height: none !important;
    }
    /* 电话CTA 永远固定可见, 永不滚出 */
    .detail-side-float .rec-cta {
        margin: 10px !important;
        padding: 12px !important;
        border-radius: 10px;
    }
    .detail-side-float .rec-cta .phone-hl { font-size: 17px; margin: 3px 0; }
    .detail-side-float .rec-cta-map { font-size: 11.5px; margin-top: 6px; }
    .detail-side-float .rec-cta-btn { margin-top: 8px; padding: 7px 12px; }
}
/* 矮屏(笔记本/小窗)进一步压缩 */
@media (min-width: 992px) and (max-height: 800px) {
    .detail-side-float { top: 68px !important; max-height: calc(100vh - 80px) !important; }
    .detail-side-float .rec-item { padding: 8px 12px !important; }
    .detail-side-float .rec-thumb,
    .detail-side-float .rec-thumb-case {
        width: 46px !important; height: 46px !important;
        min-width: 46px !important; min-height: 46px !important;
        max-width: 46px !important; max-height: 46px !important;
        flex: 0 0 46px !important;
    }
    .detail-side-float .rec-cta .phone-hl { font-size: 16px; }
}
/* 滚动条美化 */
.detail-side-float .ub-panel > .body::-webkit-scrollbar { width: 5px; }
.detail-side-float .ub-panel > .body::-webkit-scrollbar-thumb {
    background: #cfd9e6; border-radius: 3px;
}
.detail-side-float .ub-panel > .body::-webkit-scrollbar-track { background: transparent; }

/* ===== v7 侧栏避让客服悬浮球(球在右侧 bottom 竖排, 侧栏右移不遮挡) ===== */
@media (min-width: 992px) {
    .detail-side-float {
        right: 74px !important;        /* 让开右侧客服球列 */
        width: 280px !important;
    }
    /* 报价按钮上方留出球的横向空间, 避免贴边被压 */
    .detail-side-float .rec-cta-btn { margin-right: 0; }
}
/* 超宽屏: 拉回一些, 贴近正文栏 */
@media (min-width: 1600px) {
    .detail-side-float { right: 64px !important; width: 300px !important; }
}

/* ===== v8 移动端: 推荐框回归页面底部(取消fixed), 消除空白与裁切 ===== */
@media (max-width: 991px) {
    .detail-side-float {
        position: static !important;      /* 关键: 取消fixed, 回到文档流 */
        width: 100% !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        transform: none !important;
        margin: 16px 0 0 !important;
        padding: 0 12px;
        box-sizing: border-box;
    }
    .detail-side-float-ghost { display: none !important; }
    .detail-side-float > .ub-panel {
        display: block !important;
        overflow: visible !important;
        box-shadow: 0 2px 10px rgba(15,35,70,.06);
    }
    .detail-side-float .ub-panel > .head {
        position: static !important;
        padding: 12px 14px !important;
        min-height: 0 !important;
    }
    .detail-side-float .ub-panel > .body {
        overflow: visible !important;      /* 不再内部滚动, 全部展开 */
        max-height: none !important;
        padding: 4px 0 6px !important;
    }
    .detail-side-float .rec-cta {
        margin: 10px 0 0 !important;
        padding: 14px !important;
        border-radius: 0 0 12px 12px;
    }
    .detail-side-float .rec-cta .phone-hl { font-size: 17px !important; display:block !important; margin: 4px 0 !important; }
    .detail-side-float .rec-cta-map { display:block !important; margin-top:8px !important; font-size:12.5px !important; }
    .detail-side-float .rec-cta-btn { display:inline-block !important; margin-top:10px !important; padding:9px 14px !important; }
}

/* ===== v9 移动端: 侧栏(推荐+电话)一律排到页面内容最末尾 ===== */
@media (max-width: 991px) {
    .row:has(> .gaite-side-ghost),
    .row:has(> .gaite-side) {
        display: flex !important;
        flex-direction: column !important;
    }
    /* 侧栏推到最下 */
    .row > .gaite-side-ghost,
    .row > .gaite-side {
        order: 99 !important;
        width: 100% !important;
        margin-top: 20px !important;
    }
    /* 正文的 col-md-9 / col-md-8 等排前面 */
    .row > .col-md-9,
    .row > .col-md-8,
    .row > [class*="col-md-"]:not(.gaite-side):not(.gaite-side-ghost) {
        order: 1 !important;
    }
    /* 列表页 wrap 包裹的情况 */
    .side-recommend-wrap {
        order: 99 !important;
        width: 100%;
        margin-top: 20px !important;
    }
    .side-recommend-wrap .gaite-side,
    .side-recommend-wrap .gaite-side-ghost { display: contents !important; }
    /* 隐藏PC幽灵占位 */
    .gaite-side-ghost { display: none !important; }
    .gaite-side {
        position: static !important;
        width: 100% !important;
        margin: 20px 12px 0 !important;
        max-height: none !important;
        overflow: visible !important;
        transform: none !important;
    }
    .gaite-side > .ub-panel { display: block !important; overflow: visible !important; }
    .gaite-side .ub-panel > .body { overflow: visible !important; max-height: none !important; }
    .gaite-side .rec-cta { margin: 10px 0 0 !important; border-radius: 0 0 12px 12px; }
}

/* ===== v10 首页轮播高度: 对齐老站(1440宽时约500px高, 约2.88:1) ===== */
@media (min-width: 992px) {
    .ub-banner.ratio-3-1 {
        height: 500px !important;
        min-height: 420px;
        max-height: 560px;
    }
    .ub-banner.ratio-3-1 .swiper,
    .ub-banner.ratio-3-1 .swiper-container,
    .ub-banner.ratio-3-1 .swiper-wrapper,
    .ub-banner.ratio-3-1 .swiper-slide {
        height: 100% !important;
    }
    /* 小屏笔记本按比例缩放, 避免超出 */
    @media (max-height: 800px) {
        .ub-banner.ratio-3-1 { height: 440px !important; }
    }
    /* 超宽屏不超过560, 防止过度拉伸 */
    @media (min-width: 1800px) {
        .ub-banner.ratio-3-1 { height: 540px !important; }
    }
}

/* ===== 推荐框: 关闭按钮 + 拖动手柄(v12) ===== */
/* 提到导航栏之上: 用户把框拖到顶部时, 关闭按钮仍可点击 */
.detail-side-float.gaite-side.rec-draggable {
    position: fixed;
    z-index: 100050;
}
.detail-side-float.gaite-side.rec-draggable .rec-bar { position: relative; z-index: 2; }
.detail-side-float.gaite-side.rec-draggable .ub-panel { position: relative; z-index: 1; }
.rec-bar {
    display: flex; align-items: center; justify-content: space-between;
    gap: 6px; padding: 5px 6px 5px 10px;
    background: #1d4ed8; color: #fff;
    border-radius: 8px 8px 0 0; margin: -1px -1px 8px;
    font-size: 12px; user-select: none;
}
.rec-bar-tip { cursor: move; opacity: .9; letter-spacing: 1px; }
.rec-bar-close {
    width: 22px; height: 22px; line-height: 18px; text-align: center;
    border: 0; border-radius: 4px; background: rgba(255,255,255,.18);
    color: #fff; font-size: 17px; cursor: pointer; padding: 0;
}
.rec-bar-close:hover { background: #dc2626; }
/* 首页不显示固定悬浮推荐框: 避免遮挡首屏(用户要求) */
body.gaite-home .detail-side-float.gaite-side { display: none !important; }
body.gaite-home .detail-side-float-ghost { display: none !important; }
/* 首页内联推荐框: 不固定, 随页面滚动 */
.gaite-side-inline { width: 100%; max-width: 100%; }
.gaite-side-inline .ub-panel { max-width: 100%; }
/* 关闭态: 用独立 class + !important, 避免被框架的 display 规则覆盖 */
.detail-side-float.gaite-side.rec-closed,
.detail-side-float-ghost.rec-closed { display: none !important; }

/* ===== 推荐框: 控制条与标题合并为一条(v13) ===== */
.rec-panel { overflow: hidden; }
.rec-panel > .head {
    display: flex; align-items: center; gap: 8px;
    padding: 10px 8px 10px 12px;
    background: #1d4ed8; color: #fff;
    border-radius: 8px 8px 0 0;
    user-select: none;
}
.rec-head-drag { cursor: move; }
/* 拖动把手: 六点网格, 比文字更直观 */
.rec-grip {
    flex: 0 0 auto; width: 10px; height: 16px;
    background-image: radial-gradient(currentColor 1.4px, transparent 1.4px);
    background-size: 5px 5px;
    opacity: .75;
}
.rec-panel > .head > .title {
    flex: 1 1 auto; color: #fff; font-size: 15px; font-weight: 700;
    line-height: 1.4; margin: 0;
}
.rec-close {
    flex: 0 0 auto;
    width: 24px; height: 24px; line-height: 1;
    display: flex; align-items: center; justify-content: center;
    border: 0; border-radius: 4px; padding: 0;
    background: rgba(255,255,255,.18); color: #fff;
    font-size: 18px; line-height: 1; cursor: pointer;
    transition: background .15s;
}
.rec-close:hover { background: #dc2626; }
/* 旧样式作废 */
.rec-bar, .rec-bar-tip, .rec-bar-close { display: none !important; }

/* ===== 列表页: 无子栏目时的紧凑标题行(v14) ===== */
.gaite-list-head {
    margin-bottom: 12px;
    border-left: 4px solid #1d4ed8;
    padding: 2px 0 2px 12px;
}
.gaite-list-head-title {
    font-size: 20px; font-weight: 700; color: #1f2937; line-height: 1.4;
}

/* ===== 推荐框: 收起态 + 收起按钮(v15) ===== */
.rec-collapse {
    flex: 0 0 auto;
    width: 24px; height: 24px; padding: 0;
    display: flex; align-items: center; justify-content: center;
    border: 0; border-radius: 4px;
    background: rgba(255,255,255,.18); color: #fff;
    cursor: pointer; transition: background .15s;
}
.rec-collapse:hover { background: rgba(255,255,255,.34); }
/* 三角图标: 收起时朝下(可展开), 展开时朝上(可收起) */
.rec-ico {
    width: 0; height: 0; display: block;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid currentColor;
    transition: transform .2s;
}
.rec-collapsed .rec-ico { transform: rotate(180deg); }

/* 收起后只保留标题条 */
.rec-collapsed .rec-panel > .body,
.rec-collapsed .rec-panel > .rec-cta { display: none !important; }
.rec-collapsed .rec-panel > .head {
    border-radius: 8px;
    cursor: pointer;
}
.rec-collapsed { min-height: 0 !important; max-height: none !important; }

/* ---- 产品中心列表: 避让右侧推荐悬浮框 + 标题完整显示 ---- */
@media (min-width: 992px) {
    /* 主列表用 calc 扣掉右侧浮框宽度, 彻底避免被压住 */
    .gaite-pl-main {
        width: calc(75% - 324px) !important;
        flex: 0 0 calc(75% - 324px) !important;
        max-width: calc(75% - 324px) !important;
    }
}
/* 产品标题: 最多两行, 超出省略, 不再被硬切一半 */
.item-p .item-p-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 2.6em;
    line-height: 1.3;
    text-align: center;
    word-break: break-word;
    transition: color .15s;
}
.item-p .item-p-title:hover { color: #1d4ed8; }

/* ---- 产品详情页主图: 完整显示, 不裁掉右下角水印 ---- */
.gaite-pic-cover {
    width: 100%;
    height: 0;
    padding-bottom: 70.7%;      /* 1200x847 原图比例, 避免 cover 裁切 */
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 10px;
    overflow: hidden;
}
/* 容器放宽, 让主图更大更清晰 */
.ub-content .panel-b .box .c .c1 {
    width: 20rem !important;
    flex-shrink: 0;
}
@media screen and (max-width: 50rem) {
    .ub-content .panel-b .box .c .c1 { width: 100% !important; }
}

/* ---- 产品主图灯箱: 点击查看大图 + 缩放 + 拖动 ---- */
.c1-inner { width: 100%; }
.gaite-pic-zoom {
    position: relative;
    cursor: zoom-in;
    transition: box-shadow .2s, transform .2s;
}
.gaite-pic-zoom:hover {
    box-shadow: 0 6px 22px rgba(29, 78, 216, .28);
    transform: translateY(-2px);
}
.gaite-zoom-tip {
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%);
    padding: 4px 12px;
    border-radius: 999px;
    background: rgba(13, 42, 94, .78);
    color: #fff;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap;
    opacity: 0;
    transition: opacity .2s;
    pointer-events: none;
}
.gaite-pic-zoom:hover .gaite-zoom-tip { opacity: 1; }

.gaite-lightbox {
    position: fixed;
    inset: 0;
    z-index: 100200;
    display: none;
}
.gaite-lightbox.open { display: block; }
.gaite-lightbox-mask {
    position: absolute;
    inset: 0;
    background: rgba(8, 12, 24, .88);
    animation: gaiteLbFade .18s ease;
}
@keyframes gaiteLbFade { from { opacity: 0; } to { opacity: 1; } }
.gaite-lightbox-panel {
    position: absolute;
    inset: 2.5vh 2vw;
    display: flex;
    flex-direction: column;
    background: #0d1524;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .55);
}
.gaite-lightbox-close {
    position: absolute;
    top: 10px; right: 12px;
    z-index: 3;
    width: 36px; height: 36px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .14);
    color: #fff;
    font-size: 24px;
    line-height: 34px;
    cursor: pointer;
    transition: background .15s;
}
.gaite-lightbox-close:hover { background: rgba(255, 255, 255, .28); }
.gaite-lightbox-stage {
    flex: 1 1 auto;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: grab;
    min-height: 0;
}
.gaite-lightbox-stage.dragging { cursor: grabbing; }
.gaite-lightbox-img {
    max-width: 100%;
    max-height: 100%;
    transform-origin: center center;
    transition: transform .12s ease-out;
    user-select: none;
    -webkit-user-drag: none;
}
/* 平移: transform 里带 translate, 与缩放叠加 */
.gaite-lightbox-stage { cursor: zoom-in; }
.gaite-lightbox-stage.dragging { cursor: grabbing; }
.gaite-lightbox-stage.dragging .gaite-lightbox-img { transition: none; }
.gaite-lightbox-bar {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 8px 0 10px;
    background: rgba(255, 255, 255, .05);
}
.gaite-lb-btn {
    min-width: 34px;
    height: 30px;
    padding: 0 10px;
    border: 0;
    border-radius: 6px;
    background: rgba(255, 255, 255, .14);
    color: #fff;
    font-size: 14px;
    cursor: pointer;
    transition: background .15s;
}
.gaite-lb-btn:hover { background: rgba(255, 255, 255, .3); }
.gaite-lightbox-scale {
    min-width: 52px;
    text-align: center;
    color: #dbe3f0;
    font-size: 13px;
}
.gaite-lightbox-title {
    flex: 0 0 auto;
    padding: 0 16px 12px;
    text-align: center;
    color: #e6edf8;
    font-size: 15px;
    font-weight: 600;
}
@media (max-width: 991px) {
    .gaite-zoom-tip { display: none; }
    .gaite-lightbox-panel { inset: 1.2vh 1.2vw; }
}

/* ---- 顶部横幅主图: 放大并完整显示, 不裁切 ---- */
@media (min-width: 992px) {
    .ub-content .panel-b .box .c .c1 {
        width: 23rem !important;     /* 横幅尺寸: 30rem 太大, 收到 23rem */
        flex-shrink: 0;
    }
    .ub-content .panel-b .box .c .c1 .c1-inner {
        width: 100%;
    }
    .ub-content .panel-b .box .c .c1 .gaite-pic-cover {
        width: 100%;
        height: 0;
        padding-bottom: 70.7%;        /* 1200:847 原图比例 */
        background-size: 100% 100%;  /* 完整显示不裁切 */
        background-position: center;
        background-repeat: no-repeat;
        border-radius: 10px;
        cursor: default;
        box-shadow: none;
    }
    /* 标题区垂直居中 */
    .ub-content .panel-b .box .c .c2 {
        padding-left: 1.5rem;
    }
}
@media (max-width: 991px) {
    .ub-content .panel-b .box .c .c1 .gaite-pic-cover {
        width: 100%;
        height: 0;
        padding-bottom: 70.7%;
        background-size: 100% 100%;
        border-radius: 10px;
    }
}
/* 正文主图保持灯箱交互样式 */
.col-md-4 .image .gaite-pic-cover {
    cursor: zoom-in;
    transition: box-shadow .2s, transform .2s;
}
.col-md-4 .image .gaite-pic-cover:hover {
    box-shadow: 0 6px 22px rgba(29, 78, 216, .28);
    transform: translateY(-2px);
}

/* ---- 灯箱操作提示条 ---- */
.gaite-lightbox-hint {
    flex: 0 0 auto;
    padding: 8px 16px 0;
    text-align: center;
    color: #9fb0c8;
    font-size: 12.5px;
    letter-spacing: .3px;
    user-select: none;
}
.gaite-lightbox-stage { cursor: zoom-in; }
.gaite-lightbox-stage.dragging { cursor: grabbing; }
@media (max-width: 991px) {
    .gaite-lightbox-hint { display: none; }
}
/* FAQ 文字区域可换行(避免被 flex 挤压) */
.gaite-faq-item .q > :not(.mark),
.gaite-faq-item .a > :not(.mark) { flex: 1; min-width: 0; }
