/* 正式首页专用样式，限定作用域以免影响其他栏目。 */
.home-page .header_v3.v4 .top .box .left { min-width: 22rem; }
.home-page .header_v3.v4 .top .box .left .home-slogan-text { padding-left: 0; border-left: 0; }
.home-page .header_v3.v4 .home-slogan { display: flex; width: 22rem; height: 3.2rem; align-items: center; }
.home-page .header_v3.v4 .home-slogan img { width: 100%; height: 100%; object-fit: contain; object-position: left center; }
/* Logo 与导航位于同一行，移除旧布局为顶部 Logo 预留的空白。 */
.home-page .header_v3.v4 > .flex { align-items: center; }
.home-page .header_v3.v4 > .flex > .home-nav-logo { display: flex; width: 22rem; height: 4.6rem; flex-shrink: 0; margin-right: 4rem; align-items: center; }
.home-page .header_v3.v4 > .flex > .home-nav-logo img { width: 100%; height: 100%; object-fit: contain; object-position: left center; }
.home-page .header_v3.v4 > .flex > .right { padding-left: 0; min-width: 0; }
.home-page .header_v3.v4 > .flex > .right > .menu > .one > .link { font-size: 1.8rem; }
.home-page .header_v3.v4 > .flex > .right > .menu > span { margin: 0 2.4rem; }

/* 技术服务文字继续由原后台维护；字号按设计稿的大标题 / 小标题 / 正文分层。 */
.home-page .pc .index .floor7 .box .name { font-size: 2.4rem; line-height: 3.4rem; }
.home-page .pc .index .floor7 .description-subtitle { font-size: 1.6rem; line-height: 2.6rem; }
.home-page .pc .index .floor7 .description-content { font-size: 1.4rem; line-height: 2.4rem; }
.home-page .index .floor7 .box { overflow: hidden; }
.home-page .index .floor7 .bg { pointer-events: none; opacity: 1; }
.home-page .index .floor7 .bg.home-custom-watermark { opacity: .09; }
.home-page .index .floor7 .bg img { width: 100%; height: 100%; object-fit: contain; object-position: right bottom; }

/* 缩小新闻卡片，底纹单独定位，保持真实文字、分类切换及整卡链接可操作。 */
.home-page .pc .index .floor9 .block { position: relative; isolation: isolate; min-height: 73.82rem; padding-bottom: 14rem; background: #f7f7fb; box-shadow: 0 .4rem 1.4rem rgba(36, 48, 93, .12); }
.home-page .pc .index .floor9 .listBox { width: 100%; gap: 9rem; }
/* 按反馈保留 386 的窄卡宽度，将高度增加到 360，主要加高图片区以形成瘦高比例。
   字号降至 20、行高 30，并以 rem 随页面缩放；固定两行文字区，避免标题撑高卡片。 */
.home-page .pc .index .floor9 .listBox .one { width: 38.6rem; height: 36rem; margin-right: 0; flex-shrink: 0; border-radius: 3rem 3rem .8rem 3rem; overflow: hidden; }
.home-page .pc .index .floor9 .listBox .one .img { height: 24.6rem; }
.home-page .pc .index .floor9 .listBox .one .img img { width: 100%; height: 100%; object-fit: cover; }
.home-page .pc .index .floor9 .listBox .one .textBox { height: 11.4rem; box-sizing: border-box; padding: 1.4rem 2.9rem 4rem; }
.home-page .pc .index .floor9 .listBox .one .name { height: 6rem; font-size: 2rem; line-height: 3rem; font-weight: 400; }
/* 1742×699 组合背景按面板宽度等比显示；保留透明留白、装饰位置和原色，不拉伸为横条。
   桌面面板最小高度容纳约 69.82rem 的图片及上下各 2rem 留白，底部预留空间保护 Logo。 */
.home-page .home-news-watermark { position: absolute; width: 100%; height: auto; max-width: 100%; object-fit: contain; bottom: 2rem; left: 0; transform: none; filter: none; opacity: 1; pointer-events: none; z-index: -1; }

/* 桌面合作单位沿用卡片尺寸，六个一行也不压缩；五个一行自动居中形成半卡错位。 */
.home-page .pc .index .home-partners .line { gap: 3rem; padding: 0; }
.home-page .pc .index .home-partners .line .one { flex: 0 0 24rem; margin: 0; }

/* 独立网格固定简介与数据的左右关系；按真实正文自然撑高，不预留固定高度。 */
.home-page .home-company { padding: 9rem 0; }
.home-page .home-company-panel { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: 12rem; width: 174rem; max-width: 100%; margin: 0 auto; padding: 9rem; border-radius: 5rem 5rem 0 5rem; background: #fff; box-shadow: 0 0 5rem rgba(29, 99, 164, .1); overflow: hidden; }
.home-page .home-company-intro { min-width: 0; }
.home-page .home-company-title { margin-bottom: 3rem; color: #222; font-family: 'hongmengB'; font-size: 3.6rem; line-height: 4.6rem; overflow-wrap: anywhere; }
.home-page .home-company-description { color: #333; font-size: 1.8rem; line-height: 2.8rem; overflow-wrap: anywhere; }
.home-page .home-company-description * { line-height: inherit; }
.home-page .home-company-description img { max-width: 100%; height: auto; }
.home-page .home-company-more { display: inline-block; margin-top: 3rem; color: #999; font-size: 1.8rem; line-height: 2.8rem; }
.home-page .home-company-more:hover { color: #4653a2; }
/* 底纹绝对定位于右栏，数据网格位于其上；不使用负层级，避免被白色面板遮住。 */
.home-page .home-company-data { position: relative; min-width: 0; isolation: isolate; }
.home-page .home-company-watermark { position: absolute; inset: 0; width: 100%; height: 100%; max-width: 100%; object-fit: contain; object-position: center; pointer-events: none; z-index: 0; }
/* 公司底图已从设计稿导出为浅灰色，直接保留原图颜色，避免再次转黑、叠加透明度。 */
.home-page .home-company-watermark.home-custom-watermark { filter: none; opacity: 1; }
.home-page .home-company-stats { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4rem; }
.home-page .home-company-stat { min-width: 0; }
.home-page .home-company-number { position: relative; width: max-content; max-width: 100%; padding-right: 3rem; color: #4653a2; font-size: 7.2rem; line-height: 1.15; }
.home-page .home-company-number .counter { font-family: 'hongmengB'; line-height: inherit; }
.home-page .home-company-suffix { position: absolute; top: .5rem; right: 0; font-size: 3.6rem; line-height: 1; }
.home-page .home-company-unit { position: absolute; bottom: .5rem; right: 0; font-size: 1.8rem; line-height: 1; }
.home-page .home-company-label { margin-top: .5rem; color: #333; font-size: 1.8rem; line-height: 2.6rem; }

/* 桌面按 1920px 设计基准定位可见图形，而非 PNG 外框；补偿导出素材的透明留白。 */
@media (min-width: 751px) {
    /* 保持 G 尺寸与横向位置，下移 4.9rem：素材缺口上沿约在 y=150px，对齐距卡片底部约 70px 的分隔线。 */
    .home-page .pc .index .floor7 .bg { width: 30.7rem; height: 29.8rem; right: -3.9rem; bottom: -7.8rem; }
    /* 公司 G 保持设计稿约 625px 的可见尺寸，靠右贴底；实际正文较长时让面板自然增高，不随正文放大品牌图形。 */
    .home-page .home-company-panel { position: relative; isolation: isolate; }
    .home-page .home-company-intro { position: relative; z-index: 1; }
    .home-page .home-company-data { position: static; isolation: auto; }
    .home-page .home-company-watermark { inset: auto -4rem -1.1rem auto; width: 74.2rem; height: 68rem; max-width: none; object-position: right bottom; }
}

/* 跟随公共样式的 750px 分界：手机简介在上、数据两列在下，不沿用桌面栏宽。 */
@media (max-width: 750px) {
    /* 中英文服务名称统一缩小，长标题允许自然换行，避免截断后台维护的完整名称。 */
    .home-page .mb .index .floor7 .box .name { font-size: 3.6rem; line-height: 5rem; white-space: normal; overflow-wrap: break-word; }
    /* 手机卡片底部分隔线距底边为 6rem 内边距 + 3rem 按钮上间距 + 4.8rem 行高 + 1px 边框。
       G 按桌面两倍尺寸显示，缺口上沿位于图片 y=30rem；用同一 rem 缩放保持各手机宽度对齐。 */
    .home-page .mb .index .floor7 .bg { width: 61.4rem; height: 59.6rem; right: -7.8rem; bottom: calc(-15.8rem + 1px); }
    .home-page .home-company { padding: 4rem 0; }
    .home-page .home-company-panel { width: 69rem; grid-template-columns: minmax(0, 1fr); gap: 5rem; padding: 6rem 4rem; }
    .home-page .home-company-title { font-size: 4rem; line-height: 6rem; }
    .home-page .home-company-description { font-size: 2.8rem; line-height: 4rem; }
    .home-page .home-company-more { display: flex; align-items: center; justify-content: center; width: 100%; margin-top: 4rem; min-height: 9.6rem; border: 1px solid #ddd; border-radius: 9.6rem; font-size: 2.8rem; }
    .home-page .home-company-stats { gap: 4rem 3rem; }
    .home-page .home-company-number { padding-right: 4rem; }
    .home-page .home-company-suffix { font-size: 4rem; }
    .home-page .home-company-unit { font-size: 2.8rem; }
    .home-page .home-company-label { margin-top: 1rem; font-size: 2.8rem; line-height: 4rem; }
}

@media (max-width: 1200px) and (min-width: 769px) {
    .home-page .header_v3.v4 > .flex > .home-nav-logo { margin-right: 2rem; }
    .home-page .header_v3.v4 > .flex > .right > .menu > span { margin: 0 1.8rem; }
}
/* 手机端保持原导航结构；正文和装饰元素适配窄屏，不照搬电脑端像素尺寸。 */
@media (max-width: 768px) {
    .home-page .mb .index .floor7 .description-subtitle { font-size: 2.8rem; line-height: 4.2rem; }
    .home-page .mb .index .floor7 .description-content { font-size: 2.6rem; line-height: 4rem; }
    .home-page .mb .index .floor9 { position: relative; isolation: isolate; padding-bottom: 9rem; }
    /* 手机首页隐藏新闻列表装饰底图，避免错位；电脑端保留原显示。 */
    .home-page .mb .home-news-watermark { display: none; }
}

/* 视频区沿用设计稿的横向布局：首条为主视频，其余按原后台排序展示。 */
.home-page .home-videos { width: 174rem; margin: 4rem auto 7rem; }
.home-page .home-video-eyebrow { display: flex; align-items: center; gap: 4rem; font-size: 2rem; color: #333; }
.home-page .home-video-eyebrow span { font-size: 1.6rem; letter-spacing: .06em; }
.home-page .home-videos h2 { margin: 2.8rem 0 2rem; font-size: 4rem; line-height: 1.4; color: #222; font-weight: 500; }
/* 简介归属首条视频的文字区，与标题、时长纵向排列，长文案允许换行。 */
.home-page .home-video-description { font-size: 1.6rem; line-height: 1.8; color: #666; overflow-wrap: anywhere; }
.home-page .home-video-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 4rem; }
.home-page .home-video-card { display: flex; align-items: center; gap: 2rem; border: 0; background: transparent; padding: 1rem; border-radius: 1rem; text-align: left; cursor: pointer; min-width: 0; font: inherit; }
.home-page .home-video-card.is-main { grid-column: 1 / -1; }
.home-page .home-video-cover { width: 8rem; height: 8rem; flex-shrink: 0; border-radius: 1.2rem; background: #111; position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.home-page .is-main .home-video-cover { width: 26rem; height: 8rem; background: linear-gradient(100deg, #4653a2, #24b6bd); }
.home-page .home-video-cover img { width: 100%; height: 100%; object-fit: cover; }
.home-page .home-video-play { position: absolute; inset: 0; margin: auto; display: flex; align-items: center; justify-content: center; width: 3.2rem; height: 3.2rem; background: white; border-radius: 50%; font-size: 1.6rem; color: #17212d; padding-left: .3rem; }
.home-page .home-video-copy { display: flex; flex-direction: column; gap: .6rem; min-width: 0; }
.home-page .home-video-name { font-size: 2rem; line-height: 1.6; color: #4653a2; overflow-wrap: anywhere; }
.home-page .home-video-pending { font-size: 1.6rem; line-height: 1.5; color: #777; }
.home-page .home-video-view { margin-left: auto; white-space: nowrap; font-size: 1.8rem; color: #444; }
.home-page .home-video-card:hover { background: #f5f6fb; }
.home-page .home-video-card:focus-visible, .home-page .home-video-close:focus-visible { outline: 3px solid #20acb8; outline-offset: 3px; }
.home-page .home-video-dialog { width: min(108rem, 92vw); max-width: 92vw; max-height: 90vh; margin: auto; padding: 0; border: 0; border-radius: 1.6rem; background: #111; color: white; box-shadow: 0 2rem 8rem #0006; }
.home-page .home-video-dialog::backdrop { background: rgba(0, 0, 0, .75); }
.home-page .home-video-dialog-heading { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 1.5rem 2rem; }
.home-page .home-video-dialog-heading h2 { font-size: 2rem; line-height: 1.6; margin: 0; overflow-wrap: anywhere; }
.home-page .home-video-close { background: transparent; color: white; border: 0; font-size: 3.6rem; line-height: 1; min-width: 44px; min-height: 44px; cursor: pointer; }
.home-page .home-video-player video { display: block; width: 100%; max-height: 72vh; background: black; }
.home-page .home-video-player p { font-size: 2rem; line-height: 1.8; text-align: center; padding: 4rem 2rem; }
@media (min-width: 751px) {
    /* 四等分网格：首条跨两列占左半区，第二、三条各占一列，共用右半区；长标题不撑宽列。 */
    .home-page .home-video-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .home-page .home-video-card.is-main { grid-column: span 2; }
}
@media (max-width: 750px) {
    .home-page .home-videos { width: auto; margin: 5rem 4rem; }
    .home-page .home-video-eyebrow { font-size: 2.8rem; gap: 2rem; }
    .home-page .home-video-eyebrow span { font-size: 2rem; }
    .home-page .home-videos h2 { font-size: 4.2rem; margin-top: 3rem; }
    .home-page .home-video-description { font-size: 2.6rem; }
    .home-page .home-video-list { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
    .home-page .home-video-card { gap: 2rem; }
    .home-page .home-video-card.is-main { grid-column: auto; }
    .home-page .home-video-cover { width: 12rem; height: 9rem; }
    .home-page .is-main .home-video-cover { width: 18rem; height: 10rem; }
    .home-page .home-video-name { font-size: 2.8rem; }
    .home-page .home-video-pending { font-size: 2.4rem; }
    .home-page .home-video-view { display: none; }
    .home-page .home-video-play { width: 5rem; height: 5rem; font-size: 2.4rem; }
    .home-page .home-video-dialog-heading h2, .home-page .home-video-player p { font-size: 3rem; }
}
.home-page .home-video-duration { font-size: 1.6rem; line-height: 1.5; color: #555; font-variant-numeric: tabular-nums; }
@media (max-width: 750px) {
    .home-page .home-video-duration { font-size: 2.4rem; }
}
