/* ============================================
   自托管字体（本地 font/ 目录，不依赖任何外部 CDN）
   · 正文：Archivo（可变字体，覆盖字重 100-900）
   · 标题 / 加粗 / 强调：Barlow Condensed（700 / 800 / 900）
   来源：Google Fonts，已下载至项目 font/ 目录
============================================ */

/* ---------- Archivo · 正文 ---------- */
@font-face {
    font-family: 'Archivo';
    font-style: normal;
    font-weight: 100 900;
    font-stretch: 100%;
    font-display: swap;
    src: url('../font/archivo/archivo-latin.woff2') format('woff2');
    unicode-range: U+0000-0025, U+0027-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Archivo';
    font-style: normal;
    font-weight: 100 900;
    font-stretch: 100%;
    font-display: swap;
    src: url('../font/archivo/archivo-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Archivo';
    font-style: normal;
    font-weight: 100 900;
    font-stretch: 100%;
    font-display: swap;
    src: url('../font/archivo/archivo-vietnamese.woff2') format('woff2');
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* ---------- Barlow Condensed · 标题 / 加粗 / 强调 ---------- */
@font-face {
    font-family: 'Barlow Condensed';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../font/barlow-condensed/barlow-condensed-700-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Barlow Condensed';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../font/barlow-condensed/barlow-condensed-700-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Barlow Condensed';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../font/barlow-condensed/barlow-condensed-700-vietnamese.woff2') format('woff2');
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
    font-family: 'Barlow Condensed';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('../font/barlow-condensed/barlow-condensed-800-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Barlow Condensed';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('../font/barlow-condensed/barlow-condensed-800-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Barlow Condensed';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('../font/barlow-condensed/barlow-condensed-800-vietnamese.woff2') format('woff2');
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
    font-family: 'Barlow Condensed';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('../font/barlow-condensed/barlow-condensed-900-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Barlow Condensed';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('../font/barlow-condensed/barlow-condensed-900-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Barlow Condensed';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('../font/barlow-condensed/barlow-condensed-900-vietnamese.woff2') format('woff2');
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* ---------- HarmonyOS · 中文回退 ---------- */
@font-face {
    font-family: 'HarmonyOS';
    src: url('../font/HARMONYOS.TTF');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'HarmonyOS';
    src: url('../font/HARMONYOS-Black.ttf');
    font-weight: bold;
    font-style: normal;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Archivo', 'HarmonyOS', 'PingFang SC', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #333;
    background: #fff;
    /* 注意：此处不能只写 overflow-x: hidden。
       只写 hidden 会把 overflow-y 计算为 auto，使 body 成为滚动容器，
       从而让后代 position: sticky（各页 header）失去吸附参照而失效。
       clip 同样裁剪横向溢出、但不创建滚动容器，sticky 正常；
       先写 hidden 作为不支持 clip 的老浏览器回退。 */
    overflow-x: hidden;
    overflow-x: clip;
    min-height: 100vh;
}

html {
    /* 同上：clip 不创建滚动容器，保证 sticky 吸附生效 */
    overflow-x: hidden;
    overflow-x: clip;
    scroll-behavior: smooth;
}

body {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

body::-webkit-scrollbar {
    display: none;
}
/* wow.js 动画元素初始样式 - 修复滚动到底部出现空白的问题 */
.wow {
    visibility: hidden;
    overflow: hidden;
}

a {
    text-decoration: none;
    color: inherit;
}

ul {
    list-style: none;
}

img {
    max-width: 100%;
    height: auto;
}

/* ============================================
   WOW 用户偏好：动画减弱时禁用（更友好的可访问性体验）
============================================ */
@media (prefers-reduced-motion: reduce) {
    .wow, .wow.animated { animation: none !important; transition: none !important; }
    .wow { visibility: visible !important; }
}

/* ============================================
   全局：根字号响应式 (基准 16px @ 1440+)
============================================ */
/* ============================================
   全站内容容器（1920×1080 基准）
   · --sljy-max    容器（含左右内边距）上限 = 120rem = 1920px @16px 根字号
   · --sljy-gutter 容器左右安全内边距；≥1440 为 4.5rem = 72px
     （与首页 hero 文字 left:4.5rem 落在同一条竖线上）
   ------------------------------------------------------------
   背景：原设计同时存在两套互不对齐的限宽值——
     · 外壳 90rem(1440px) + 2.25rem 内边距 → 1440 下内容 1368px
     · 正文 82rem(1312px) + 4rem 内边距   → 1440 下内容 1184px（双重内缩）
   且根字号在 1440 处停止缩放，1920 视口下内容仅占 68%，
   两侧各空 240–304px。
   ------------------------------------------------------------
   统一后：1440 视口内容区 1296px（= 设计稿栅格，与参考图一致）；
           1920 视口内容区 1776px，两侧各 72px。
   ≤1023 视口下 max-width 本就不生效（容器满宽），故基础规则不动。
============================================ */
:root {
    --sljy-max: 120rem;
    --sljy-gutter: 4rem;
}
@media (min-width: 1440px) {
    :root { --sljy-gutter: 4.5rem; }
}

html { font-size: 16px; }
@media (max-width: 1439px) { html { font-size: max(13px, calc(100vw / 90)); } }
@media (max-width: 1023px) { html { font-size: 14px; } }
@media (max-width: 767px)  { html { font-size: 13.5px; } }
@media (max-width: 480px)  { html { font-size: 13px; } }

/* 全局：H 标签统一 */
h1.h1, h2.h2, h3.h3, h4.h4, h5.h5, h6.h6 { font-weight: 700; line-height: 1.2; }

/* ============================================
   全局字体规则（统一排版，严格区分标题与正文）
   · 标题 / 加粗 / 强调内容 → Barlow Condensed
   · 正文 / 段落 / 列表 / 表单   → Archivo
   注：各板块 .*-title 类已单独指定，此处为全局兜底
   · 例外：页脚栏微型小标题（*-footer-col-title，0.875rem 级别）
     属微型标签，沿用正文 Archivo，避免过窄影响可读性；
     其分区规则在文件后部显式声明，优先级覆盖本兜底规则
============================================ */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
[class*="-title"],
strong, b, em, i, mark,
.highlight, .text-accent {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS', sans-serif;
}

/* 全局：仅屏阅读器可见 */
.sljy-index-hero-sr {
    position: absolute;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

/* ============================================
   全站共用：移动端抽屉导航 sljy-mob-*（≤1023px 显示）
   index / products / about / new / contact / construction / video 七页共用
   · 汉堡按钮展开/收起；链接跳转后自动关闭；不改变 body 滚动位置
   · 桌面尺寸（≥1024px）整体不渲染
============================================ */
html.sljy-nav-lock,
body.sljy-nav-lock { overflow: hidden; }

.sljy-mob-overlay {
    position: fixed;
    inset: 0;
    background: rgba(6, 18, 22, 0.55);
    opacity: 0;
    visibility: hidden;
    transition: opacity .32s ease, visibility .32s ease;
    z-index: 110;
}
.sljy-mob-overlay.is-open { opacity: 1; visibility: visible; }

.sljy-mob-nav {
    position: fixed;
    top: 0;
    right: 0;
    height: 100dvh;
    width: min(21rem, 84vw);
    display: flex;
    flex-direction: column;
    background: #0F2429;
    box-shadow: -0.5rem 0 1.5rem rgba(0, 0, 0, .35);
    transform: translateX(100%);
    visibility: hidden;
    transition: transform .34s cubic-bezier(.4, 0, .2, 1), visibility 0s .34s;
    z-index: 120;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}
.sljy-mob-nav.is-open { transform: translateX(0); visibility: visible; transition-delay: 0s; }

.sljy-mob-nav-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
    flex: 0 0 auto;
}
.sljy-mob-nav-logo img { display: block; height: 1.875rem; width: auto; }
.sljy-mob-nav-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem; height: 2.25rem;
    font-size: 1.25rem;
    color: #fff;
    background: transparent;
    border: 0;
    cursor: pointer;
    transition: color .2s ease, transform .2s ease;
}
.sljy-mob-nav-close:hover { color: #B0D6D9; transform: rotate(90deg); }

.sljy-mob-nav-body { flex: 1 1 auto; }
.sljy-mob-nav-list { display: flex; flex-direction: column; }
.sljy-mob-nav-item { border-bottom: 1px solid rgba(255, 255, 255, .08); }
.sljy-mob-nav-item > a,
.sljy-mob-nav-row > a {
    display: block;
    padding: 1rem 1.5rem;
    color: #fff;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    transition: color .2s ease, background .2s ease;
}
.sljy-mob-nav-item > a:hover,
.sljy-mob-nav-row > a:hover { color: #B0D6D9; background: rgba(255, 255, 255, .04); }
.sljy-mob-nav-item--contact > a { color: #B0D6D9; }

.sljy-mob-nav-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.sljy-mob-nav-row > a { flex: 1 1 auto; }
.sljy-mob-submenu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.25rem; height: 3.25rem;
    color: #fff;
    background: transparent;
    border: 0;
    cursor: pointer;
    font-size: 1rem;
    transition: transform .3s ease, color .2s ease;
}
.sljy-mob-nav-item--sub.is-open .sljy-mob-submenu-toggle { transform: rotate(180deg); color: #B0D6D9; }

.sljy-mob-submenu {
    max-height: 0;
    overflow: hidden;
    transition: max-height .34s ease;
    background: rgba(255, 255, 255, .03);
}
.sljy-mob-nav-item--sub.is-open .sljy-mob-submenu { max-height: 40rem; }
.sljy-mob-submenu li a {
    display: block;
    padding: .75rem 1.5rem .75rem 2.25rem;
    color: rgba(255, 255, 255, .78);
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: .875rem;
    font-weight: 500;
    transition: color .2s ease, background .2s ease;
}
.sljy-mob-submenu li a:hover { color: #B0D6D9; background: rgba(255, 255, 255, .04); }

.sljy-mob-nav-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.25rem 1.5rem;
    border-top: 1px solid rgba(255, 255, 255, .12);
    flex: 0 0 auto;
}
.sljy-mob-nav-lang {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: #fff;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: .875rem;
    font-weight: 500;
}
.sljy-mob-nav-search {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem; height: 2rem;
    font-size: 1.25rem;
    color: #fff;
}

/* 桌面尺寸：抽屉与遮罩不渲染（避免与固定 header 的桌面导航冲突） */
@media (min-width: 1024px) {
    .sljy-mob-nav,
    .sljy-mob-overlay { display: none !important; }
}

/* ============================================
   sljy-index-header 顶部导航
============================================ */
.sljy-index-header {
    position: fixed;
    top: 0; left: 0; right: 0;
    height: 5.375rem;
    background: rgba(10, 25, 30, 0.18);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    z-index: 100;
    transition: background .35s ease, box-shadow .35s ease, height .35s ease;
}
.sljy-index-header.is-scrolled {
    background: rgba(15, 36, 41, 0.96);
    box-shadow: 0 0.125rem 0.625rem rgba(0, 0, 0, .18);
    height: 4.5rem;
}
.sljy-index-header-inner {
    max-width: 90rem;
    height: 100%;
    margin: 0 auto;
    padding: 0 2.25rem;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    justify-content: space-between;
}
.sljy-index-header-logo {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    margin-right: 2.5rem;
}
.sljy-index-header-logo img {
    display: block;
    height: 2.125rem;
    width: auto;
}
.sljy-index-header-nav {
    flex: 1 1 auto;
}
.sljy-index-header-nav ul {
    display: flex;
    align-items: center;
    gap: 3.25rem;
}
.sljy-index-header-nav-item a {
    position: relative;
    display: inline-block;
    padding: 0.5rem 0;
    color: rgba(255, 255, 255, 0.92);
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: 0;
    transition: color .2s ease;
}
.sljy-index-header-nav-item a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -0.5rem;
    transform: translateX(-50%) scaleX(0);
    width: 3rem; height: 0.1875rem;
    background: #477F84;
    border-radius: 0.0938rem;
    transition: transform .25s ease;
}
.sljy-index-header-nav-item a:hover { color: #fff; }
.sljy-index-header-nav-item a:hover::after { transform: translateX(-50%) scaleX(1); }
.sljy-index-header-nav-item.is-active a { color: #B0D6D9; }
.sljy-index-header-nav-item.is-active a::after { transform: translateX(-50%) scaleX(1); }
.sljy-index-header-nav-contact a { font-size: 0.9375rem; font-weight: 800; }

.sljy-index-header-utils {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    color: #fff;
}
.sljy-index-header-search {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.6875rem; height: 1.6875rem;
    font-size: 1.25rem;
    color: #fff;
    transition: color .2s ease, transform .2s ease;
}
.sljy-index-header-search:hover { color: #B0D6D9; transform: scale(1.08); }
.sljy-index-header-divider {
    width: 1px; height: 1.625rem;
    background: rgba(255, 255, 255, 0.35);
}
.sljy-index-header-lang {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    color: #fff;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    transition: color .2s ease;
}
.sljy-index-header-lang::before {
    content: "";
    display: inline-block;
    width: 0.5rem; height: 0.5rem;
    border-radius: 50%;
    background: #A4C7C8;
}
.sljy-index-header-lang:hover { color: #B0D6D9; }

.sljy-index-header-burger {
    display: none;
    width: 2.5rem; height: 2.5rem;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: #fff;
}

/* Keep every page's compact header aligned with the homepage menu. */
@media (max-width: 1023px) {
    header[class$="-header"] > [class$="-header-inner"] { justify-content: space-between; }
}

@media (max-width: 480px) {
    header[class$="-header"]:not(.sljy-index-header) > [class$="-header-inner"] { height: 3.75rem; }
    header[class$="-header"]:not(.sljy-index-header) [class$="-header-logo"] img { height: 1.5rem; }
}

@media (max-width: 1023px) {
    .sljy-index-header-nav,
    .sljy-index-header-utils { display: none; }
    .sljy-index-header-burger { display: inline-flex; }
    .sljy-index-header-inner { padding: 0 1.25rem; }
}
@media (max-width: 480px) {
    .sljy-index-header { height: 3.75rem; }
    .sljy-index-header.is-scrolled { height: 3.5rem; }
    .sljy-index-header-logo img { height: 1.5rem; }
}


/* ============================================
   sljy-index-hero 英雄区
   背景：Figma 808-1458 顶部 banner（主视觉 + 6 张厂区照 + 底部深色装饰带）
   文本与按钮由代码定位叠在背景图上
============================================ */
.sljy-index-hero {
    position: relative;
    width: 100%;
    aspect-ratio: 1920 / 1025;
    min-height: 32rem;
    overflow: hidden;
    background: #0F2429;
}
.sljy-index-hero-swiper {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.sljy-index-hero-slide {
    position: relative;
    overflow: hidden;
}
.sljy-index-hero-bg {
    position: absolute;
    inset: 0;
    background-image: none;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    transform: scale(1.04);
    animation: sljyHeroZoom 14s ease-out forwards;
}
.sljy-index-hero-bg--fallback {
    background-image: url('../images/banner2.jpg');
}
/* 分页器（右下角，不遮挡左侧文案） */
.sljy-index-hero-pagination {
    position: absolute;
    right: 4.5rem;
    bottom: 2.25rem;
    z-index: 3;
    width: auto;
    text-align: right;
}
.sljy-index-hero-pagination .swiper-pagination-bullet {
    width: 0.625rem;
    height: 0.625rem;
    margin: 0 0 0 0.625rem;
    background: rgba(255, 255, 255, 0.45);
    border: 1px solid rgba(255, 255, 255, 0.75);
    opacity: 1;
    transition: width .3s ease, background .3s ease;
}
.sljy-index-hero-pagination .swiper-pagination-bullet-active {
    width: 1.75rem;
    border-radius: 0.3125rem;
    background: #ffffff;
}
@keyframes sljyHeroZoom {
    from { transform: scale(1.06); }
    to   { transform: scale(1); }
}

/* 文本块：落在左半侧青色面板上（面板为斜边楔形，按最窄处规划宽度） */
.sljy-index-hero-text {
    position: absolute;
    left: 4.5rem;
    top: 16%;
    width: 32%;
    max-width: 31rem;
    min-width: 18rem;
    z-index: 2;
    color: #fff;
    pointer-events: none;
}
.sljy-index-hero-text > * { pointer-events: auto; }

.sljy-index-hero-title {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS Sans', 'PingFang SC', sans-serif;
    font-size: 2.125rem;
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: 0.005em;
    color: #ffffff;
    text-shadow: 0 0.125rem 0.625rem rgba(10, 30, 35, 0.4);
    margin: 0 0 1rem;
}
.sljy-index-hero-rule {
    display: block;
    width: 3rem;
    height: 0.1875rem;
    background: #ffffff;
    margin: 0 0 1rem;
}
.sljy-index-hero-desc {
    font-family: 'Archivo', 'HarmonyOS Sans', 'PingFang SC', sans-serif;
    font-size: 0.9375rem;
    line-height: 1.65;
    font-weight: 400;
    color: #ffffff;
    margin: 0 0 1.75rem;
    text-shadow: 0 0.0625rem 0.375rem rgba(10, 30, 35, 0.45);
}
.sljy-index-hero-cta {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    width: 14rem;
    height: 3rem;
    padding: 0 1.125rem 0 1.5rem;
    background: rgba(10, 15, 18, 0.92);
    border: 1px solid #A3C7C9;
    border-radius: 0.125rem;
    color: #fff;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    transition: background .3s ease, transform .3s ease, border-color .3s ease;
}
.sljy-index-hero-cta::before {
    content: "";
    position: absolute;
    top: 0; left: -100%;
    width: 100%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.22), transparent);
    transition: left .55s ease;
}
.sljy-index-hero-cta:hover { background: #1A4F58; border-color: #fff; transform: translateY(-0.125rem); }
.sljy-index-hero-cta:hover::before { left: 100%; }
.sljy-index-hero-cta-text { position: relative; z-index: 1; }
.sljy-index-hero-cta-arrow {
    font-size: 1.125rem;
    transition: transform .3s ease;
    position: relative; z-index: 1;
}
.sljy-index-hero-cta:hover .sljy-index-hero-cta-arrow { transform: translateX(0.25rem); }

/* 底部 "BUILT FOR PERFORMANCE / DELIVERED WITH COMMITMENT" 已烘焙在 banner2.jpg 中 */

@media (max-width: 1023px) {
    .sljy-index-hero { aspect-ratio: auto; height: 38rem; }
    /* 顶部偏移：确保标题落在固定 header（5.375rem）下方，不再被遮挡 */
    .sljy-index-hero-text { left: 1.5rem; top: 6.75rem; width: 70%; max-width: none; min-width: 0; }
    .sljy-index-hero-title { font-size: 1.75rem; white-space: normal; }
    .sljy-index-hero-pagination { right: 1.5rem; bottom: 1.5rem; }
}
@media (max-width: 600px) {
    .sljy-index-hero { height: 30rem; }
    .sljy-index-hero-text { left: 1rem; top: 6.5rem; width: 92%; }
    .sljy-index-hero-title { font-size: 1.375rem; }
    .sljy-index-hero-desc { font-size: 0.8125rem; }
    .sljy-index-hero-cta { width: 11.5rem; height: 2.625rem; font-size: 0.6875rem; padding-left: 1rem; padding-right: 1rem; }
    .sljy-index-hero-pagination { right: 1rem; bottom: 1rem; }
}
@media (max-width: 480px) {
    .sljy-index-hero { height: 26rem; }
    /* header 在 ≤480px 收窄为 3.75rem，文本相应上移但仍保持净空 */
    .sljy-index-hero-text { top: 4.75rem; }
    .sljy-index-hero-title { font-size: 1.25rem; line-height: 1.15; }
    .sljy-index-hero-rule { width: 2.25rem; }
}

/* ============================================
   sljy-index-products 产品系统
   —— 按 Figma「02 Product System — Premium Showcase」(node 799-337) 还原
   设计稿基准：1440 视口，内容区 76..1372（1296px），节高 920。
   本站容器沿用「最新确认的比例」（--sljy-gutter），内容区起点 72；
   板块内部一律按「相对内容区左缘的偏移」取值，故整体随容器平移。
============================================ */
.sljy-index-products {
    position: relative;
    width: 100%;
    background: #fff;
    background-image: linear-gradient(90deg, #FFFFFF 0%, #FBFCFB 100%);
    /* 设计稿：搜索行 17..79、卡片 108..278、舞台 340..810、翻页器 826..870、节高 920 */
    padding: 1.0625rem 0 3.125rem;
    overflow: hidden;
}
.sljy-index-products::before {
    /* 设计稿背景图（节点 799:338）1440×883 置于 y=37，含圆环与水印；
       素材取自设计稿原图，2880×1766 WebP q92（与原图最大偏差 0.48/255） */
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 12.3125rem;
    bottom: 0;
    background-image: url('../images/image 2.jpg');
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    pointer-events: none;
}
.sljy-index-products > * { position: relative; z-index: 1; }

/* ---------- 搜索行（设计稿整行高 62，无整行下边框） ---------- */
.sljy-index-products-search {
    max-width: var(--sljy-max);
    margin: 0 auto;
    padding: 0 0.5rem;
    display: flex;
    align-items: center;
    gap: 0;
    height: 3.875rem;
}
/* 下拉区：宽 370，下划线落在行内 y=55（设计稿 y=72） */
.sljy-index-products-search-dropdown {
    flex: 0 1 23.125rem;
    min-width: 11.5rem;
    align-self: flex-start;
    height: 3.4375rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-right: 1.75rem;
    border-bottom: 1px solid #E5EBED;
    color: #1A1C21;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.0538em;
    white-space: nowrap;
    cursor: pointer;
}
/* 下拉箭头：设计稿为实心小三角（非描边箭头） */
.sljy-index-products-search-caret {
    flex: 0 0 auto;
    width: 0;
    height: 0;
    border-left: 0.25rem solid transparent;
    border-right: 0.25rem solid transparent;
    border-top: 0.375rem solid #6B707A;
}
.sljy-index-products-search-divider {
    flex: 0 0 1px;
    width: 1px;
    height: 3.5rem;
    background: #E8EBED;
    margin-left: 0.875rem;
    margin-right: 2.1875rem;
    align-self: flex-start;
    margin-top: 0.6875rem;
}
/* 输入区：宽 340，青色下划线 */
.sljy-index-products-search-input {
    flex: 0 1 21.25rem;
    min-width: 6rem;
    align-self: flex-start;
    height: 3.4375rem;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #477F84;
}
.sljy-index-products-search-placeholder {
    color: #9CA1AB;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.875rem;
    white-space: nowrap;
}
.sljy-index-products-search-btn {
    flex: 0 0 3.375rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.375rem;
    height: 3.375rem;
    margin-left: 0.375rem;
    color: #fff;
    background: linear-gradient(220deg, #A0C2C4 0%, #294E54 100%);
    border-radius: 0.625rem 0.125rem 0.625rem 0.125rem;
    transition: transform .3s ease, box-shadow .3s ease;
}
.sljy-index-products-search-btn img { display: block; width: 2.4375rem; height: 2.4375rem; }
.sljy-index-products-search-btn:hover { transform: translateY(-0.125rem); box-shadow: 0 0.5rem 1rem rgba(41, 78, 84, 0.35); }
.sljy-index-products-search-col {
    flex: 0 0 1px;
    width: 1px;
    height: 3.75rem;
    background: rgba(209, 214, 212, 0.9);
    margin-left: 1.375rem;
    margin-right: 1.3125rem;
}
/* 芯片区：宽 388 → 恰好 4 列（4×88 + 3×12），与设计稿 4+3 换行一致 */
.sljy-index-products-search-chips {
    flex: 0 1 24.25rem;
    min-width: 11.875rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem 0.75rem;
}
.sljy-index-products-search-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 1.75rem;
    border: 1px solid #CFDEDE;
    border-radius: 0.1875rem;
    color: #3D4547;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all .25s ease;
}
.sljy-index-products-search-chip:hover { color: #294E54; border-color: #477F84; }
.sljy-index-products-search-chip.is-active {
    color: #fff;
    background: linear-gradient(220deg, #A0C2C4 0%, #294E54 100%);
    border-color: transparent;
}

/* ---------- 卡片行（设计稿 y 108..278） ---------- */
.sljy-index-products-rail {
    position: relative;
    max-width: var(--sljy-max);
    margin: 1.5625rem auto 0;
}
.sljy-index-products-rail-track {
    display: flex;
    /* 12px 间距：6×206 + 5×12 = 1296，正好铺满设计稿内容区 */
    gap: 0.75rem;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
    padding: 0.25rem 0;
}
.sljy-index-products-rail-track::-webkit-scrollbar { display: none; }
.sljy-index-products-card {
    flex: 0 0 12.875rem;
    height: 10.625rem;
    position: relative;
    display: block;
    padding: 0.8125rem 0 0;
    /* 设计稿卡片标题为水平居中 */
    text-align: center;
    background: #EEF4F4;
    border: 1px solid #CFDEDE;
    /* 设计稿卡片为直角 */
    border-radius: 0;
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.sljy-index-products-card.is-active {
    background: linear-gradient(220deg, #A0C2C4 0%, #294E54 100%);
    border-color: rgba(71, 127, 132, 0.65);
}
.sljy-index-products-card.is-active .sljy-index-products-card-title { color: #fff; }
.sljy-index-products-card:hover { transform: translateY(-0.25rem); box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, .12); }
.sljy-index-products-card-title {
    display: block;
    color: #141C1A;
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.25rem;
    position: relative;
    z-index: 2;
}
/* 卡片配图：设计稿为「水平居中 + 指定高度与顶距」，逐张对齐（无投影） */
.sljy-index-products-card img {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: auto;
    z-index: 1;
    pointer-events: none;
}
.sljy-index-products-card:nth-child(1) img { top: 25.000%; height: 64.881%; }
.sljy-index-products-card:nth-child(2) img { top: 22.619%; height: 69.643%; }
.sljy-index-products-card:nth-child(3) img { top: 27.381%; height: 67.857%; }
.sljy-index-products-card:nth-child(4) img { top: 29.167%; height: 63.095%; }
.sljy-index-products-card:nth-child(5) img { top: 29.167%; height: 61.310%; }
.sljy-index-products-card:nth-child(6) img { top: 26.786%; height: 67.262%; }

.sljy-index-products-rail-prev,
.sljy-index-products-rail-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2.625rem;
    height: 2.625rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #E0E5EB;
    border-radius: 50%;
    color: #1A1C21;
    font-size: 1.5rem;
    z-index: 3;
    box-shadow: 0 0.25rem 0.75rem rgba(0,0,0,.06);
    transition: all .25s ease;
}
.sljy-index-products-rail-prev { left: 1.25rem; }
.sljy-index-products-rail-next { right: 1.25rem; }
.sljy-index-products-rail-prev:hover,
.sljy-index-products-rail-next:hover { background: #1A1C21; color: #fff; }

/* ---------- 舞台（设计稿 340..810，右栏注解 y 430/570/710） ---------- */
.sljy-index-products-stage {
    max-width: var(--sljy-max);
    margin: 0 auto;
    padding: 3.625rem 0.5rem 1rem;
    display: grid;
    /* 按设计稿反推：三栏 223 / 765 / 260（含 24 间距），
       中栏中心落在内容区 629.5 → 机器与翻页器同轴 */
    grid-template-columns: 17.207% 59.028% 20.062%;
    gap: 1.5rem;
    align-items: start;
}
/* 设计稿标题 cap 顶 393（Barlow Condensed 800 52/56 的半行距 + 上伸部约 13px，
   故容器 padding 取 40 使 cap 顶落在 393）；.wow 全局规则含 overflow:hidden，
   会裁掉左栏内溢出到 350 宽的描述，此处放开 */
.sljy-index-products-stage-left { padding-top: 2.5rem; overflow: visible; }
.sljy-index-products-stage-title {
    color: #1A1C21;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    /* 设计稿节点 799:392：Barlow Condensed ExtraBold 800 52/56 UPPER。
       实测 ROTARY 143.5 / DRILLING 167.5，故不设字距（负字距会窄 3~4px） */
    font-size: 3.25rem;
    font-weight: 800;
    line-height: 3.5rem;
    text-transform: uppercase;
}
.sljy-index-products-stage-rule {
    width: 3.5rem;
    height: 0.25rem;
    background: #477F84;
    /* 标题盒底 492 → 色条 518 → 描述盒顶 548（设计稿 y518 / y548） */
    margin: 1.625rem 0;
}
.sljy-index-products-stage-desc {
    color: #6B707A;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.9375rem;
    line-height: 1.5rem;
    /* 设计稿节点 799:394：x76 y548 350×54，Archivo 400 15/24，内含一个换行 → 2 行 */
    width: 21.875rem;
    max-width: none;
    margin-bottom: 6.5rem;
}
.sljy-index-products-stage-link {
    color: #1A1C21;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.0385em;
    /* line-height 归一，避免继承 1.6 的行高把文字压到盒中心以下
       （设计稿文字墨迹顶 y702，盒顶 y700） */
    line-height: 1;
    vertical-align: top;
    display: inline-flex;
    align-items: center;
    gap: 0.53125rem;
    transition: color .2s ease, gap .2s ease;
}
.sljy-index-products-stage-link i { font-size: 0.875rem; line-height: 1; }
.sljy-index-products-stage-link:hover { color: #477F84; gap: 0.625rem; }

.sljy-index-products-stage-center { text-align: center; }
.sljy-index-products-stage-img {
    display: block;
    width: 22.8125rem;
    height: 29.375rem;
    margin: 0 auto;
    transition: transform .6s ease;
}
.sljy-index-products-stage-center:hover .sljy-index-products-stage-img { transform: rotate(-2deg) scale(1.02); }

/* 右栏：三组注解按设计稿固定节距 140（非等高间距） */
.sljy-index-products-stage-right {
    position: relative;
    height: 23rem;
    margin-top: 5.625rem;
}
.sljy-index-products-anno {
    position: absolute;
    left: 0;
    right: 0;
    /* 设计稿节点 799:399 等：文字左缘 x1124，右栏左缘 x1112 → 内缩 12px */
    padding-left: 0.75rem;
    text-align: left;
}
.sljy-index-products-anno:nth-child(1) { top: 0; }
.sljy-index-products-anno:nth-child(2) { top: 8.75rem; }
.sljy-index-products-anno:nth-child(3) { top: 17.5rem; }
.sljy-index-products-anno-kicker {
    display: block;
    color: #477F84;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.625rem;
    font-weight: 600;
    line-height: 0.8125rem;
    letter-spacing: 0.08em;
    margin-bottom: 0.6875rem;
}
.sljy-index-products-anno-title {
    display: block;
    color: #000;
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.25rem;
    margin-bottom: 0.5rem;
}
.sljy-index-products-anno-desc {
    display: block;
    color: #6B707A;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.8125rem;
    line-height: 1.125rem;
}
/* 引导线 / 端点 / 折线：全部相对本组注解定位，百分比随内容区等比缩放 */
.sljy-index-products-anno-line {
    position: absolute;
    height: 1px;
    background: #477F84;
    pointer-events: none;
}
.sljy-index-products-anno-dot {
    position: absolute;
    width: 0.5rem;
    height: 0.5rem;
    background: #477F84;
    border-radius: 50%;
    pointer-events: none;
}
.sljy-index-products-anno-diag {
    position: absolute;
    pointer-events: none;
    overflow: visible;
}
.sljy-index-products-anno-diag line { stroke: #477F84; stroke-width: 1; }
/* 第 1 组：端点 → 斜折线 → 水平线 */
.sljy-index-products-anno:nth-child(1) .sljy-index-products-anno-dot { left: -175.385%; top: 6.25rem; }
.sljy-index-products-anno:nth-child(1) .sljy-index-products-anno-diag { left: -174.231%; top: 1.875rem; width: 36.154%; height: 4.625rem; }
.sljy-index-products-anno:nth-child(1) .sljy-index-products-anno-line { left: -138.077%; top: 1.875rem; width: 138.077%; }
/* 第 2 组：端点 → 水平线 */
.sljy-index-products-anno:nth-child(2) .sljy-index-products-anno-dot { left: -108.077%; top: 2.25rem; }
.sljy-index-products-anno:nth-child(2) .sljy-index-products-anno-line { left: -105.000%; top: 2.5rem; width: 105.000%; }
/* 第 3 组：端点 → 水平线 */
.sljy-index-products-anno:nth-child(3) .sljy-index-products-anno-dot { left: -113.846%; top: 2.125rem; }
.sljy-index-products-anno:nth-child(3) .sljy-index-products-anno-line { left: -112.308%; top: 2.375rem; width: 112.308%; }

/* ---------- 翻页器（设计稿 826..870，与机器同轴） ---------- */
.sljy-index-products-pager {
    max-width: var(--sljy-max);
    margin: 0 auto;
    padding: 0 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
}
.sljy-index-products-pager-prev,
.sljy-index-products-pager-next {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    background: #fff;
    color: #1A1C21;
    border-radius: 50%;
    font-size: 1.5rem;
    box-shadow: 0 0.3125rem 0.875rem rgba(0, 0, 0, .08);
    transition: all .25s ease;
}
.sljy-index-products-pager-prev { margin-right: 2.9375rem; }
.sljy-index-products-pager-next { margin-left: 2.8125rem; }
.sljy-index-products-pager-prev:hover,
.sljy-index-products-pager-next:hover { background: #1A1C21; color: #fff; }
.sljy-index-products-pager-num {
    color: #477F84;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1.5625rem;
    font-weight: 700;
    line-height: 1.2;
}
.sljy-index-products-pager-total {
    color: #6B707A;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.8125rem;
    font-weight: 500;
    margin-left: 0.3125rem;
}

/* 1024–1279：内容区不足以支撑设计稿的三栏比例，回退为等比三栏，
   右栏注解回到文档流（引导线在该区间隐藏） */
@media (min-width: 1024px) and (max-width: 1279px) {
    .sljy-index-products-stage { grid-template-columns: 1fr 1.1fr 1fr; }
    .sljy-index-products-stage-left { padding-top: 1.5rem; }
    .sljy-index-products-stage-desc { width: auto; max-width: 22rem; }
    .sljy-index-products-stage-right {
        position: static;
        height: auto;
        margin-top: 2rem;
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }
    .sljy-index-products-anno { position: static; }
    .sljy-index-products-anno-dot,
    .sljy-index-products-anno-line,
    .sljy-index-products-anno-diag { display: none; }
}

@media (max-width: 1023px) {
    .sljy-index-products-search { flex-wrap: wrap; height: auto; padding: 1rem; gap: 0.75rem; }
    .sljy-index-products-search-dropdown {
        flex: 0 0 auto;
        width: 100%;
        height: auto;
        padding: 0 0 0.5rem;
    }
    .sljy-index-products-search-divider,
    .sljy-index-products-search-col { display: none; }
    .sljy-index-products-search-input {
        flex: 1 1 100%;
        width: auto;
        height: auto;
        padding-bottom: 0.5rem;
    }
    .sljy-index-products-search-btn { flex: 0 0 auto; margin-left: auto; }
    .sljy-index-products-search-chips { flex: 1 1 100%; width: auto; justify-content: center; }
    .sljy-index-products-rail { margin-top: 1.5rem; padding: 0 1rem; }
    .sljy-index-products-stage { grid-template-columns: 1fr; padding: 1.5rem 1rem 0; }
    .sljy-index-products-stage-left { padding-top: 0; }
    .sljy-index-products-stage-desc { margin-bottom: 2rem; }
    .sljy-index-products-stage-right {
        position: static;
        height: auto;
        margin-top: 0;
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }
    .sljy-index-products-anno { position: static; text-align: left; }
    .sljy-index-products-anno-dot,
    .sljy-index-products-anno-line,
    .sljy-index-products-anno-diag { display: none; }
    .sljy-index-products-rail-prev { left: 0.25rem; }
    .sljy-index-products-rail-next { right: 0.25rem; }
}

/* ============================================
   sljy-index-cases 项目案例
   —— 按 Figma「03 Project Cases — Field Applications」(node 799-422) 还原
   设计稿基准：1440 视口，内容区 64..1376（1312px），节高 644。
   本站容器沿用「最新确认的比例」（--sljy-gutter，1440 时内容区起点 72）；
   板块内部横向按「占内容区的百分比」取值、纵向用 rem，随容器等比落位。
============================================ */
.sljy-index-cases {
    background: #F6F9F9;
    /* 设计稿：kicker 悬顶 31（墨迹 34）、大标题 55..117、卡片 148..538、控件 558..606、节高 644 */
    padding: 1.9375rem 0 2.375rem;
    overflow: hidden;
}

/* ---- 头部：kicker + 大标题（左）｜ 简介（起点 62.805%，宽 438）---- */
.sljy-index-cases-head {
    max-width: var(--sljy-max);
    margin: 0 auto;
    padding: 0 1rem;
    display: grid;
    grid-template-columns: 62.805% 1fr;   /* 设计稿：简介起点 824/1312 */
    align-items: start;
}
.sljy-index-cases-head-left { grid-column: 1; }
.sljy-index-cases-kicker {
    display: block;
    color: #414D4E;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.6875rem;       /* 11 */
    font-weight: 600;
    line-height: 0.75rem;       /* 设计稿行高 12 */
    letter-spacing: 0.1455em;
    margin-bottom: 0.6875rem;   /* 设计稿：kicker 行盒底 44 → 大标题行盒顶 55 */
}
.sljy-index-cases-title {
    color: #0B1112;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 3.8125rem;       /* 61 */
    font-weight: 800;
    line-height: 3.875rem;      /* 62 */
    letter-spacing: -0.0164em;
    text-transform: uppercase;
}
.sljy-index-cases-sub {
    grid-column: 2;
    margin-top: 2.25rem;        /* 设计稿：简介墨迹 y73 */
    width: 27.375rem;           /* 设计稿 438，复现与设计稿一致的两行断行 */
    max-width: 100%;
    color: #475351;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.9375rem;       /* 15 */
    line-height: 1.4375rem;     /* 23 */
}

/* ---- 卡片视口：单卡 1032 + 右侧露边（可横向滚动）---- */
.sljy-index-cases-viewport {
    max-width: var(--sljy-max);
    margin: 2rem auto 0;        /* 设计稿：头部底 116 → 卡片顶 148 */
    padding: 0 1rem;
    overflow: hidden;
}
.sljy-index-cases-track {
    display: flex;
    gap: 1.8293%;               /* 设计稿 24/1312 */
    transition: transform .6s cubic-bezier(.4, 0, .2, 1);
}
.sljy-index-cases-card {
    position: relative;
    flex: 0 0 78.6585%;         /* 设计稿 1032/1312 */
    height: 24.375rem;          /* 390 */
    border: 1px solid rgba(204, 212, 209, .9);
    border-radius: 0;           /* 设计稿为直角 */
    overflow: hidden;
    display: block;
}
.sljy-index-cases-card-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform .8s ease;
}
.sljy-index-cases-card:hover .sljy-index-cases-card-bg { transform: scale(1.03); }
.sljy-index-cases-card-shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(6, 23, 28, .83) 0%, rgba(6, 23, 28, .04) 72%);
}

/* 卡内文案：设计稿标题墨迹 y34.5、meta 墨迹 y140（卡内坐标）；1px 描边内让 1px */
.sljy-index-cases-card-cap {
    position: absolute;
    left: 2.1875rem;
    top: 2rem;
    width: 37.5rem;             /* 设计稿文本层宽 600 */
    max-width: calc(100% - 4.375rem);
}
.sljy-index-cases-card-title {
    color: #fff;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 2.25rem;         /* 36 */
    font-weight: 700;           /* 设计稿为 Bold（非 ExtraBold） */
    line-height: 1.5rem;        /* 24 */
    text-transform: uppercase;
}
.sljy-index-cases-card-meta {
    color: #D1D6D6;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.875rem;        /* 14 */
    line-height: 1;
    margin-top: 5.0625rem;
}
.sljy-index-cases-card-play {
    position: absolute;
    left: 2.1875rem;
    top: 17.5625rem;            /* 设计稿 (36,282) */
    width: 3.75rem;             /* 60 */
    height: 3.75rem;
    transition: opacity .25s ease;
}
.sljy-index-cases-card-play svg { display: block; width: 100%; height: 100%; }
.sljy-index-cases-card:hover .sljy-index-cases-card-play { opacity: .85; }

/* ---- 底部：链接 ｜ 页码 ｜ 翻页按钮 ---- */
.sljy-index-cases-foot {
    max-width: var(--sljy-max);
    margin: 1.25rem auto 0;     /* 设计稿：卡片底 538 → 控件顶 558 */
    padding: 0 1rem;
    height: 3rem;               /* 48（与翻页按钮同高，三者垂直居中） */
    display: grid;
    grid-template-columns: 40.1677% 1fr;   /* 设计稿：页码起点 527/1312 */
    align-items: center;
}
.sljy-index-cases-link {
    justify-self: start;
    color: #3B6B70;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.75rem;         /* 12 */
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.0667em;
    margin-bottom: 0.1875rem;   /* 设计稿链接墨迹 y576.5，比控件轴心略高 */
    transition: color .2s ease;
}
.sljy-index-cases-link:hover { color: #294E54; }
.sljy-index-cases-foot-right {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.sljy-index-cases-pager {
    display: flex;
    gap: 1.75rem;               /* 设计稿 28 */
    /* 设计稿页码墨迹 y569.5（比按钮轴心 582 高 6）*/
    margin-bottom: 0.75rem;
}
.sljy-index-cases-pager-num {
    width: 2.5rem;              /* 设计稿 40 */
    text-align: center;
    color: #3B6B70;             /* 设计稿三档同色（无深浅区分）*/
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1.125rem;        /* 18 */
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.0444em;
    cursor: pointer;
    transition: color .2s ease;
}
.sljy-index-cases-pager-num:hover { color: #294E54; }
.sljy-index-cases-nav { display: flex; gap: 1rem; }   /* 设计稿 16 */
.sljy-index-cases-prev,
.sljy-index-cases-next { display: block; width: 3rem; height: 3rem; line-height: 0; }
.sljy-index-cases-prev svg,
.sljy-index-cases-next svg { display: block; width: 100%; height: 100%; }

@media (max-width: 1023px) {
    .sljy-index-cases { padding: 1.5rem 0 2rem; }
    .sljy-index-cases-head { display: block; padding: 0 1rem; }
    .sljy-index-cases-sub { margin-top: 0.75rem; width: auto; max-width: 30rem; }
    .sljy-index-cases-viewport { margin-top: 1.5rem; padding: 0 1rem; }
    .sljy-index-cases-card { flex: 0 0 84%; height: 18rem; }
    .sljy-index-cases-card-cap {
        left: 1.25rem; top: 1.25rem;
        width: auto; max-width: none; right: 1.25rem;
    }
    .sljy-index-cases-card-title { font-size: 1.75rem; line-height: 1.2; }
    .sljy-index-cases-card-meta { margin-top: 0.5rem; }
    .sljy-index-cases-card-play { left: 1.25rem; top: auto; bottom: 1.5rem; width: 3rem; height: 3rem; }
    .sljy-index-cases-foot {
        height: auto;
        margin-top: 1.25rem;
        padding: 0 1rem;
        grid-template-columns: 1fr auto;
        gap: 1rem;
    }
    .sljy-index-cases-foot-right { justify-content: flex-end; }
    .sljy-index-cases-pager { margin-bottom: 0; display: none; }
    .sljy-index-cases-nav { margin-left: auto; }
}

/* ============================================
   sljy-index-process 制造工艺
============================================ */
.sljy-index-process {
    background: #F6F9F9;
    padding: 2.5rem 0 5rem;
    position: relative;
}
.sljy-index-process-head {
    max-width: 82rem;
    margin: 0 auto;
    padding: 0 4rem;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    flex-wrap: wrap;
}
.sljy-index-process-head-left { flex: 0 0 auto; }
.sljy-index-process-kicker {
    display: block;
    color: #45524F;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.1455em;
    margin-bottom: 0.625rem;
}
.sljy-index-process-title {
    color: #0B1112;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 3.6875rem;
    font-weight: 800;
    line-height: 1.02;
    letter-spacing: -0.0085em;
}
.sljy-index-process-sub {
    color: #54615C;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.9375rem;
    line-height: 1.5;
    max-width: 26rem;
    flex: 0 1 26rem;
    margin-bottom: 0.5rem;
}
.sljy-index-process-rule {
    max-width: 82rem;
    height: 1px;
    background: rgba(219, 227, 223, 0.75);
    margin: 1.5rem auto 1.5rem;
    padding: 0 4rem;
    position: relative;
}
.sljy-index-process-rule::after {
    content: "";
    position: absolute;
    left: 4rem; right: 4rem;
    height: 1px;
    background: rgba(219, 227, 223, 0.75);
}
.sljy-index-process-grid {
    max-width: 82rem;
    margin: 0 auto;
    padding: 0 4rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}
.sljy-index-process-card {
    position: relative;
    aspect-ratio: 421 / 244;
    border-radius: 0.25rem;
    overflow: hidden;
    display: block;
    border: 1px solid rgba(204, 212, 209, 0.9);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, .05);
    transition: transform .35s ease, box-shadow .35s ease;
}
.sljy-index-process-card:hover { transform: translateY(-0.375rem); box-shadow: 0 1rem 2rem rgba(0, 0, 0, .15); }
.sljy-index-process-card-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transform: scale(1.02);
    transition: transform .8s ease;
}
.sljy-index-process-card:hover .sljy-index-process-card-bg { transform: scale(1.06); }
.sljy-index-process-card-shade {
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 6.25rem;
    background: linear-gradient(180deg, rgba(15, 36, 41, 0) 0%, rgba(15, 36, 41, 0.88) 100%);
}
.sljy-index-process-card-tag {
    position: absolute;
    left: 1.5rem;
    bottom: 1.5rem;
    color: #fff;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 1.625rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.02em;
    z-index: 2;
}

@media (max-width: 1023px) {
    .sljy-index-process { padding: 1.5rem 0 3rem; }
    .sljy-index-process-head, .sljy-index-process-grid { padding-left: 1rem; padding-right: 1rem; }
    .sljy-index-process-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .sljy-index-process-grid { grid-template-columns: 1fr; }
    .sljy-index-process-card { aspect-ratio: 16 / 10; }
}

/* ============================================
   sljy-index-about 关于伏尔加
============================================ */
.sljy-index-about {
    background: #F6F9F9;
    padding: 2.5rem 4rem 3rem;
    max-width: 90rem;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    grid-template-rows: auto auto;
    column-gap: 2.5rem;
    row-gap: 2rem;
    align-items: start;
}
.sljy-index-about-text { grid-column: 1; grid-row: 1; padding-top: 0.5rem; }
.sljy-index-about-title {
    color: #080D0D;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 2.875rem;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.0109em;
    text-transform: uppercase;
}
.sljy-index-about-rule {
    width: 4.875rem; height: 0.25rem;
    background: #477F84;
    margin: 1rem 0 1.125rem;
}
.sljy-index-about-desc {
    color: #616E69;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1.0625rem;
    line-height: 1.55;
    max-width: 32rem;
    margin-bottom: 1.5rem;
}
.sljy-index-about-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0 1.75rem;
    height: 3rem;
    color: #fff;
    background: linear-gradient(220deg, #A0C2C4 0%, #294E54 100%);
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    letter-spacing: 0.0333em;
    border-radius: 0.125rem;
    transition: all .3s ease;
    overflow: hidden;
    position: relative;
}
.sljy-index-about-cta::before {
    content: "";
    position: absolute;
    top: 0; left: -100%;
    width: 100%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left .55s ease;
}
.sljy-index-about-cta:hover { transform: translateY(-0.125rem); box-shadow: 0 0.625rem 1.25rem rgba(41, 78, 84, .35); }
.sljy-index-about-cta:hover::before { left: 100%; }
.sljy-index-about-cta i { font-size: 0.875rem; }
.sljy-index-about-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }
.sljy-index-about-video {
    display: inline-flex; align-items: center; gap: .75rem; border: 0; padding: 0;
    background: transparent; color: #263b37; cursor: pointer;
    font: 500 .75rem/1.2 'Archivo', 'HarmonyOS', sans-serif; letter-spacing: .025em;
}
.sljy-index-about-video-icon {
    display: grid; place-items: center; width: 2.25rem; height: 2.25rem; padding-left: .125rem;
    border-radius: 50%; background: #e5f2ed; color: #0d5537; font-size: .625rem;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}
.sljy-index-about-video:hover .sljy-index-about-video-icon { background: #009b4b; color: #fff; transform: scale(1.06); }
.sljy-index-about-actions :is(a, button):focus-visible { outline: 2px solid #477f84; outline-offset: 4px; }

.sljy-index-about-media {
    grid-column: 2; grid-row: 1;
    position: relative;
    border-radius: 0.5rem;
    overflow: hidden;
    box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, .12);
}
.sljy-index-about-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(15, 36, 41, 0) 50%, rgba(15, 36, 41, .25) 100%);
    pointer-events: none;
}
.sljy-index-about-media img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 718 / 404;
    object-fit: cover;
    transition: transform .8s ease;
}
.sljy-index-about-media:hover img { transform: scale(1.04); }

.sljy-index-about-partners {
    grid-column: 1 / -1;
    grid-row: 2;
    padding-top: 1rem;
}
.sljy-index-about-partners-title {
    color: #080D0D;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 1.75rem;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.0179em;
    text-transform: uppercase;
    margin-bottom: 0.875rem;
}
.sljy-index-about-partners-wall {
    background: #fff;
    border-radius: 0.375rem;
    padding: 1rem 0.75rem;
    min-width: 0;
    box-shadow: 0 0.25rem 0.625rem rgba(0, 0, 0, .04);
}
.sljy-index-about-partners-swiper { width: 100%; overflow: hidden; }
.sljy-index-about-partners-swiper .swiper-wrapper { align-items: center; }
.sljy-index-about-partner {
    flex: 0 0 auto;
    height: 3.875rem;
    width: calc((100% - 6.25rem) / 6);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 0.75rem;
    filter: grayscale(35%);
    opacity: .85;
    transition: filter .3s ease, opacity .3s ease, transform .3s ease;
}
.sljy-index-about-partner:hover { filter: grayscale(0); opacity: 1; transform: translateY(-0.125rem); }
.sljy-index-about-partner img { max-width: 100%; max-height: 2.5rem; width: auto; object-fit: contain; }
.sljy-index-about-partner-text {
    color: #0F0F0F;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1.375rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}

@media (max-width: 1023px) {
    .sljy-index-about { grid-template-columns: 1fr; padding: 1.5rem 1rem 2rem; }
    .sljy-index-about-text, .sljy-index-about-media { grid-column: 1; }
    .sljy-index-about-media { grid-row: 2; }
    .sljy-index-about-partners { grid-row: 3; }
    .sljy-index-about-partner { width: calc((100% - 0.5rem) / 2); height: 3rem; }
}
@media (max-width: 480px) {
    .sljy-index-about-partner { width: 100%; }
}

/* ============================================
   首页证书：卡片按原图比例展示，激活项居中，轮播间距由实际宽度计算。
   --u 随舞台宽度缩放；移动端使用固定比例，横版卡片限制在视口内。
============================================ */
.sljy-index-certificates {
    background: #203F46;
    position: relative;
    overflow: hidden;
    overflow: clip;                 /* 裁掉两侧卡片，并避免切换时焦点触发容器横向滚动 */
}

/* ---- 舞台：满宽、上限 1920、锁 1440:400 高宽比；同时是 cqw 的容器 ---- */
.sljy-index-certificates-stage {
    position: relative;
    width: 100%;
    max-width: var(--sljy-max);
    margin: 0 auto;
    aspect-ratio: 1440 / 400;
    container-type: inline-size;
    --u: 1cqw;
}

/* ---- 标题：设计稿 (64,36) Barlow Condensed ExtraBold 800 52/62 ls-.0115em ---- */
.sljy-index-certificates-title {
    position: absolute;
    left: 0;
    right: 0;
    top: 2.125rem;                  /* 设计稿字冠顶 y51（52/62 行盒首行字冠比盒顶低 17px） */
    margin: 0;
    padding-left: 1rem;             /* ≥1024 由「全站容器统一」规则覆盖为 --sljy-gutter */
    padding-right: 1rem;
    color: #FFFFFF;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 3.25rem;             /* 52 */
    font-weight: 800;
    line-height: 3.875rem;          /* 62 */
    letter-spacing: -0.0115em;
    text-transform: uppercase;
}

/* ---- 轨道：铺满舞台 ---- */
.sljy-index-certificates-rail { position: absolute; inset: 0; }
.sljy-index-certificates-rail-inner { position: absolute; inset: 0; }

/* ---- 卡片：按原图比例确定宽度，所有证书垂直居中 ---- */
.sljy-index-certificates-card {
    position: absolute;
    top: calc(16.73611 * var(--u));
    left: calc(50% + var(--certificate-offset, calc(var(--dir, 0) * var(--off, 0) * var(--u))));
    width: calc((11.68472 * var(--certificate-ratio, .7153) + 1.50972) * var(--u));
    max-width: calc(100cqw - 6rem);
    height: auto;
    padding: calc(.754861 * var(--u));
    box-sizing: border-box;
    transform: translate(-50%, -50%);
    border-radius: calc(var(--r, 1.05941) * var(--u));
    background: #1A211F;
    opacity: var(--o, 1);
    box-shadow: 0 calc(var(--shy, 0) * var(--u)) calc(var(--shb, 0) * var(--u)) rgba(0, 0, 0, var(--sha, .2));
    transition: opacity .35s ease;
}
.sljy-index-certificates-card[data-side="l"] { --dir: -1; }
.sljy-index-certificates-card[data-side="r"] { --dir:  1; }

/* 档位 0：激活卡（设计稿 799:509）——最大、最实、带 #477F84 描边 */
.sljy-index-certificates-card[data-d="0"] { --w:9.43819; --r:1.05941;  --pad:0.754861; --ir:0.660687;
    --shy:0.866792; --shb:1.444646; --sha:.34; --o:1;  --off:0;        }
.sljy-index-certificates-card[data-d="1"] { --w:9.35069; --r:1.142826; --pad:0.747917; --ir:0.654528;
    --shy:0.519465; --shb:0.935042; --sha:.2;  --o:.9; --off:10.78333; }
.sljy-index-certificates-card[data-d="2"] { --w:9.24722; --r:1.2405;   --pad:0.739583; --ir:0.647319;
    --shy:0.563868; --shb:1.014958; --sha:.2;  --o:.8; --off:21.47083; }
.sljy-index-certificates-card[data-d="3"] { --w:9.125;   --r:1.356437; --pad:0.729861; --ir:0.638757;
    --shy:0.616563; --shb:1.109812; --sha:.2;  --o:.7; --off:32.04653; }
.sljy-index-certificates-card[data-d="4"] { --w:8.97778; --r:1.496278; --pad:0.718056; --ir:0.680125;
    --shy:0.680125; --shb:1.224229; --sha:.2;  --o:.6; --off:42.48611; }
.sljy-index-certificates-card[data-d="5"] { --w:8.79653; --r:1.668264; --pad:0.758299; --ir:0.758299;
    --shy:0.758299; --shb:1.364944; --sha:.2;  --o:.5; --off:52.76181; }
/* 距离 > 5 的卡片在轨道之外（设计稿只绘 11 张，视口内永远看不到） */
.sljy-index-certificates-card[data-d="6"] { display: none; }

/* 设计稿描边 1.3869px 为居中描边：用等宽内描边环复现（外露 0.693、内压 0.693） */
.sljy-index-certificates-card[data-d="0"]::after {
    content: "";
    position: absolute;
    inset: calc(-0.04816 * var(--u));
    border: calc(0.09631 * var(--u)) solid #477F84;
    border-radius: calc(1.10756 * var(--u));
    pointer-events: none;
}

/* ---- 卡内证书图：保留原图比例，横版与竖版证书均居中完整显示 ---- */
.sljy-index-certificates-card-inner {
    display: block;
    position: relative;
    border-radius: calc(var(--ir, 0.660687) * var(--u));
    overflow: hidden;
}
.sljy-index-certificates-card-inner img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
}
/* 设计稿：卡 10 在证书图上叠 30% 深度渐变（拟合残差 4.9/255，与其它卡同量级） */
.sljy-index-certificates-card-inner::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #384045 0%, #121C1A 100%);
    opacity: 0;
    pointer-events: none;
}
.sljy-index-certificates-card-inner[data-overlay]::after { opacity: .3; }
/* 设计稿：卡 01 / 卡 11 无证书图，分别是纯色 #521F14 与纯渐变（最外侧仅露 ~13px） */
.sljy-index-certificates-card--fig-01 .sljy-index-certificates-card-inner { background: #521F14; }
.sljy-index-certificates-card--fig-11 .sljy-index-certificates-card-inner {
    background: linear-gradient(90deg, #384045 0%, #121C1A 100%);
}

/* ---- 翻页钮：设计稿 48×48，距节框左右各 20、顶 y211（比卡片中心高 6） ---- */
.sljy-index-certificates-prev,
.sljy-index-certificates-next {
    position: absolute;
    top: calc(14.65278 * var(--u));
    width: calc(3.33333 * var(--u));
    height: calc(3.33333 * var(--u));
    z-index: 5;
    display: block;
    transition: transform .25s ease;
}
.sljy-index-certificates-prev { left: calc(1.38889 * var(--u)); }
.sljy-index-certificates-next { right: calc(1.38889 * var(--u)); }
.sljy-index-certificates-prev svg,
.sljy-index-certificates-next svg { display: block; width: 100%; height: 100%; }
.sljy-index-certificates-prev:hover,
.sljy-index-certificates-next:hover { transform: scale(1.08); }

/* ---- ≤1023：扇形改定尺（--u 由 cqw 换成 rem，整块 = 设计稿 × 0.875） ---- */
@media (max-width: 1023px) {
    .sljy-index-certificates-stage {
        --u: 0.9rem;
        aspect-ratio: auto;
        height: 25rem;              /* 设计稿节高 400 × 0.875 */
    }
}

/* ============================================
   sljy-index-news 新闻
============================================ */
.sljy-index-news {
    background: #F4F8F8;
    padding: 2.25rem 4rem 3rem;
    position: relative;
}
.sljy-index-news-kicker {
    display: block;
    max-width: 82rem;
    margin: 0 auto 0.25rem;
    color: #404D4F;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.1455em;
}
.sljy-index-news-head {
    max-width: 82rem;
    margin: 0 auto 1.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}
.sljy-index-news-title {
    color: #090E0D;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 4rem;
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -0.0125em;
    text-transform: uppercase;
}
.sljy-index-news-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 2.625rem;
    padding: 0 1.5rem;
    background: #fff;
    color: #477F84;
    border: 1px solid #DCE8E8;
    border-radius: 0.25rem;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.0538em;
    transition: all .25s ease;
}
.sljy-index-news-all i { margin-left: 0.5rem; font-size: 0.875rem; }
.sljy-index-news-all:hover { background: #477F84; color: #fff; border-color: #477F84; }

.sljy-index-news-rule {
    max-width: 82rem;
    height: 1px;
    background: #DEE5E3;
    margin: 0 auto 1.875rem;
}
.sljy-index-news-rule-bot { margin: 2.5rem auto 0; }

.sljy-index-news-grid {
    max-width: 82rem;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}
.sljy-index-news-card {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #DCE8E8;
    border-radius: 0.375rem;
    overflow: hidden;
    box-shadow: 0 0.5rem 1.375rem rgba(0, 0, 0, .05);
    transition: transform .35s ease, box-shadow .35s ease;
    padding-bottom: 1.5rem;
}
.sljy-index-news-card:hover { transform: translateY(-0.5rem); box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, .12); }
.sljy-index-news-card-media {
    position: relative;
    overflow: hidden;
}
.sljy-index-news-card-media img {
    display: block;
    width: 100%;
    height: 14.5rem;
    object-fit: cover;
    transition: transform .8s ease;
}
.sljy-index-news-card:hover .sljy-index-news-card-media img { transform: scale(1.06); }
.sljy-index-news-card-accent {
    position: absolute;
    left: 0; bottom: 0;
    width: 100%; height: 0.1875rem;
    background: #477F84;
    z-index: 2;
}
.sljy-index-news-card-meta {
    display: block;
    margin: 1.5rem 1.375rem 0.75rem;
    color: #477F84;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.0545em;
    line-height: 1.3;
}
.sljy-index-news-card-title {
    margin: 0 1.375rem 0.75rem;
    color: #090E0D;
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
}
.sljy-index-news-card-desc {
    margin: 0 1.375rem 1.5rem;
    color: #57665E;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.8125rem;
    line-height: 1.55;
}
.sljy-index-news-card-more {
    margin: auto 1.375rem 0;
    color: #477F84;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.0417em;
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    transition: gap .25s ease;
}
.sljy-index-news-card-more i { font-size: 0.75rem; }
.sljy-index-news-card:hover .sljy-index-news-card-more { gap: 0.625rem; }

@media (max-width: 1023px) {
    .sljy-index-news { padding: 1.5rem 1rem 2rem; }
    .sljy-index-news-head { flex-direction: column; align-items: flex-start; }
    .sljy-index-news-title { font-size: 2.5rem; }
    .sljy-index-news-grid { grid-template-columns: 1fr; }
    .sljy-index-news-card-media img { height: 12rem; }
}

/* ============================================
   sljy-index-footer 底部
============================================ */
.sljy-index-footer {
    /* 深色底铺满整行宽度（不受内容容器限制），避免宽屏下两侧露出浅色底形成白边 */
    background: #203F46;
    color: #fff;
}
.sljy-index-footer-top {
    /* 背景交由父级 .sljy-index-footer 铺满，此处只作为内容容器 */
    background: transparent;
    max-width: 90rem;
    margin: 0 auto;
    padding: 3.5rem 2.25rem 2.5rem;
    display: grid;
    grid-template-columns: 1.2fr repeat(5, 1fr);
    gap: 1.5rem;
    align-items: start;
}
.sljy-index-footer-brand {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    padding-right: 1rem;
}
.sljy-index-footer-logo { display: inline-flex; }
.sljy-index-footer-logo img { display: block; height: 2rem; width: auto; }
.sljy-index-footer-tagline {
    color: #B6CECE;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.875rem;
    line-height: 1.5;
}
.sljy-index-footer-social {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}
.sljy-index-footer-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.125rem; height: 2.125rem;
    color: #fff;
    font-size: 1.0625rem;
    border-radius: 50%;
    transition: all .3s ease;
}
.sljy-index-footer-social a:hover { background: #477F84; transform: translateY(-0.25rem); }

.sljy-index-footer-col {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    color: #fff;
    position: relative;
}
.sljy-index-footer-num {
    color: #A4C7C8;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.0545em;
}
.sljy-index-footer-col-title {
    color: #fff;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    margin-bottom: 0.5rem;
}
.sljy-index-footer-col-rule {
    width: 100%; height: 1px;
    background: rgba(255, 255, 255, 0.08);
    margin-bottom: 0.75rem;
}
.sljy-index-footer-col ul { display: flex; flex-direction: column; gap: 0.625rem; }
.sljy-index-footer-col li a {
    color: #F6F6F6;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.75rem;
    line-height: 1.4;
    transition: color .2s ease, padding-left .2s ease;
    display: inline-block;
}
.sljy-index-footer-col li a:hover { color: #A4C7C8; padding-left: 0.25rem; }

.sljy-index-footer-place-kicker {
    color: #A4C7C8;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.0545em;
    margin-top: 0.25rem;
}
.sljy-index-footer-place {
    color: #BDD3D3;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.8125rem;
    line-height: 1.5;
    margin-top: 0.25rem;
}
.sljy-index-footer-tel {
    color: #fff;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.5;
    margin-top: 0.75rem;
    display: block;
}
.sljy-index-footer-mail {
    color: #BDD3D3;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.8125rem;
    line-height: 1.5;
    margin-top: 0.5rem;
    display: block;
}

.sljy-index-footer-rule {
    max-width: 82rem;
    height: 1px;
    background: rgba(255, 255, 255, 0.42);
    margin: 0 auto;
}
.sljy-index-footer-bottom {
    /* 与页脚深色底一体，不再单独铺浅色底 */
    background: transparent;
    /* 与上方 .sljy-index-footer-rule（82rem）同宽，左右边缘对齐 */
    max-width: 82rem;
    margin: 0 auto;
    padding: 0.75rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}
.sljy-index-footer-copy {
    color: #6B7A73;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.75rem;
    line-height: 1.5;
}
.sljy-index-footer-bottom-nav {
    display: flex;
    gap: 1.25rem;
}
.sljy-index-footer-bottom-nav a {
    color: #6B7A73;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.75rem;
    transition: color .2s ease;
}
.sljy-index-footer-bottom-nav a:hover { color: #A4C7C8; }

@media (max-width: 1023px) {
    .sljy-index-footer-top { grid-template-columns: repeat(2, 1fr); padding: 2rem 1rem; }
    .sljy-index-footer-brand { grid-column: 1 / -1; }
    /* 窄屏下分隔线与内容、底栏共用同一条 1rem 侧边距，不再满幅出血 */
    .sljy-index-footer-rule { margin: 0 1rem; }
    /* 窄屏下底部条与上方内容同样留出 1rem 内边距 */
    .sljy-index-footer-bottom { padding: 0.75rem 1rem; }
}

/* 移动端：品牌区独占整行，其余 5 个栏目两列一行；整体收紧间距 */
@media (max-width: 767px) {
    .sljy-index-footer-top {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem 1.25rem;
        padding: 1.5rem 1rem 1.25rem;
    }
    .sljy-index-footer-brand {
        grid-column: 1 / -1;
        gap: 0.875rem;
        padding-right: 0;
    }
    .sljy-index-footer-tagline { font-size: 0.75rem; line-height: 1.45; }
    .sljy-index-footer-social { gap: 0.375rem; }
    .sljy-index-footer-social a { width: 1.875rem; height: 1.875rem; font-size: 0.9375rem; }

    /* 栏目内部收紧；li 需显式行高，否则继承 body 的 16px/1.6 撑高整行 */
    .sljy-index-footer-col { gap: 0.25rem; }
    .sljy-index-footer-num { line-height: 1.2; }
    .sljy-index-footer-col-title { line-height: 1.2; margin-bottom: 0.25rem; }
    .sljy-index-footer-col-rule { margin-bottom: 0.5rem; }
    .sljy-index-footer-col ul { gap: 0.375rem; }
    .sljy-index-footer-col li { font-size: 0.75rem; line-height: 1.4; }

    .sljy-index-footer-place-kicker,
    .sljy-index-footer-place,
    .sljy-index-footer-tel,
    .sljy-index-footer-mail { line-height: 1.45; }
    .sljy-index-footer-tel { margin-top: 0.5rem; }
    .sljy-index-footer-mail { margin-top: 0.25rem; }

    .sljy-index-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
        padding: 0.625rem 1rem;
    }
    .sljy-index-footer-bottom-nav { gap: 1rem; flex-wrap: wrap; }
}

/* ============================================
   sljy-products-* 产品分类页（Figma 799-630）
   -- 青色渐变（天青色一渐变色）
============================================ */
:root {
    --sljy-teal-grad: linear-gradient(220deg, #A0C2C4 0%, #294E54 100%);
}

/* ---------- header（浅色 sticky，Products 高亮） ---------- */
.sljy-products-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(255, 255, 255, 0.92);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid #E6ECEA;
    transition: background .3s ease, box-shadow .3s ease;
}
.sljy-products-header.is-scrolled {
    background: #ffffff;
    box-shadow: 0 0.125rem 0.75rem rgba(20, 40, 45, 0.10);
}
.sljy-products-header-inner {
    max-width: 90rem;
    height: 5.375rem;
    margin: 0 auto;
    padding: 0 2.25rem;
    display: flex;
    align-items: center;
    gap: 1.5rem;
}
.sljy-products-header-logo { display: flex; align-items: center; flex: 0 0 auto; margin-right: 2.5rem; }
.sljy-products-header-logo img { display: block; height: 2.125rem; width: auto; }
.sljy-products-header-nav { flex: 1 1 auto; }
.sljy-products-header-nav ul { display: flex; align-items: center; gap: 2.5rem; }
.sljy-products-header-nav-item a {
    position: relative;
    display: inline-block;
    padding: 0.5rem 0;
    color: #141A20;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    transition: color .2s ease;
}
.sljy-products-header-nav-item a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -0.5rem;
    transform: translateX(-50%) scaleX(0);
    width: 3rem; height: 0.1875rem;
    background: #477F84;
    border-radius: 0.0938rem;
    transition: transform .25s ease;
}
.sljy-products-header-nav-item a:hover { color: #294E54; }
.sljy-products-header-nav-item a:hover::after { transform: translateX(-50%) scaleX(1); }
.sljy-products-header-nav-item.is-active a { color: #477F84; }
.sljy-products-header-nav-item.is-active a::after { transform: translateX(-50%) scaleX(1); }
.sljy-products-header-nav-contact a { font-size: 0.9375rem; font-weight: 800; }

.sljy-products-header-utils { display: flex; align-items: center; gap: 0.875rem; color: #141A20; }
.sljy-products-header-search {
    display: inline-flex; align-items: center; justify-content: center;
    width: 1.6875rem; height: 1.6875rem; font-size: 1.25rem; color: #141A20;
    transition: color .2s ease, transform .2s ease;
}
.sljy-products-header-search:hover { color: #477F84; transform: scale(1.08); }
.sljy-products-header-divider { width: 1px; height: 1.625rem; background: rgba(20, 30, 35, 0.18); }
.sljy-products-header-lang {
    display: inline-flex; align-items: center; gap: 0.375rem; color: #141A20;
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 500;
    transition: color .2s ease;
}
.sljy-products-header-lang::before {
    content: ""; display: inline-block; width: 0.5rem; height: 0.5rem;
    border-radius: 50%; background: #477F84;
}
.sljy-products-header-lang:hover { color: #294E54; }
.sljy-products-header-burger {
    display: none; width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center;
    font-size: 1.5rem; color: #141A20;
}
@media (max-width: 1023px) {
    .sljy-products-header-nav, .sljy-products-header-utils { display: none; }
    .sljy-products-header-burger { display: inline-flex; }
    .sljy-products-header-inner { padding: 0 1.25rem; }
}
@media (max-width: 480px) {
    .sljy-products-header-inner { height: 3.75rem; }
    .sljy-products-header-logo img { height: 1.5rem; }
}

/* ---------- hero ---------- */
.sljy-products-hero { background: #FFFFFF; padding: 3.5rem 0 1.5rem; }
.sljy-products-hero-inner { max-width: 82rem; margin: 0 auto; padding: 0 4rem; }
.sljy-products-hero-title {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-size: 3.625rem; line-height: 1.05; font-weight: 800; letter-spacing: 0.01em;
    color: #141A20; margin: 0; text-transform: uppercase;
}
.sljy-products-hero-desc {
    font-family: 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-size: 0.9375rem; line-height: 1.55; color: #68707A;
    max-width: 45rem; margin: 1rem 0 0;
}
.sljy-products-hero-divider { display: block; width: 100%; height: 1px; background: #E3E9E6; margin-top: 2.25rem; }
@media (max-width: 600px) {
    .sljy-products-hero { padding: 2rem 0 1rem; }
    .sljy-products-hero-inner { padding: 0 1.25rem; }
    .sljy-products-hero-title { font-size: 2.25rem; }
    .sljy-products-hero-desc { font-size: 0.875rem; }
}

/* ---------- Single-row product categories ---------- */
.sljy-products-categories { background: #FFFFFF; padding: 0 0 3.5rem; }
.sljy-products-categories-inner { display: flex; align-items: center; gap: .75rem; max-width: 82rem; margin: 0 auto; padding: 0 4rem; }
.sljy-products-categories-grid {
    display: flex; flex: 1; min-width: 0; overflow-x: auto; overscroll-behavior-x: contain;
    scroll-snap-type: x proximity; scrollbar-width: thin; scrollbar-color: #8eb3b6 #f0f5f3;
}
.sljy-products-categories-arrow {
    display: inline-flex; flex: 0 0 2.25rem; align-items: center; justify-content: center;
    width: 2.25rem; height: 2.25rem; padding: 0; border: 1px solid #dce6e3;
    border-radius: 50%; background: #fff; color: #477f84; cursor: pointer;
}
.sljy-products-categories-arrow[hidden] { display: none; }
.sljy-products-categories-arrow[data-category-scroll="-1"] i { transform: rotate(180deg); }
.sljy-products-categories-arrow:hover:not(:disabled) { background: #f0faf3; border-color: #477f84; }
.sljy-products-categories-arrow:disabled { opacity: .35; cursor: default; }
.sljy-products-categories-arrow:focus-visible { outline: 2px solid #477f84; outline-offset: 2px; }
.sljy-products-cat {
    position: relative; flex: 1 0 calc(100% / 6); min-width: 8rem; box-sizing: border-box; scroll-snap-align: start;
    display: flex; flex-direction: column; align-items: center; justify-content: flex-start;
    padding: 1.5rem 0.5rem 1.25rem;
    background: #FFFFFF;
    border: 1px solid #E3E9E6;
    margin-right: 0; margin-bottom: 0;
    cursor: pointer; text-align: center;
    font-family: inherit;
    transition: background .25s ease, box-shadow .25s ease;
}
.sljy-products-cat-thumb {
    display: flex; align-items: center; justify-content: center;
    width: 4.6875rem; height: 4.6875rem; margin-bottom: 0.875rem;
}
.sljy-products-cat-thumb img {
    max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain;
    opacity: 0.5; transition: opacity .25s ease, transform .25s ease;
}
.sljy-products-cat-name {
    font-family: 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-size: 0.8125rem; font-weight: 600; line-height: 1.3; color: #303842; letter-spacing: 0.01em;
}
.sljy-products-cat:hover { box-shadow: 0 0.5rem 1.5rem rgba(20, 40, 45, 0.10); z-index: 2; }
.sljy-products-cat:hover .sljy-products-cat-thumb img { opacity: 0.85; transform: translateY(-0.125rem); }
.sljy-products-cat:focus-visible { outline: 0.1875rem solid rgba(71, 127, 132, 0.42); outline-offset: 0.1875rem; z-index: 3; }
.sljy-products-cat.is-active { background: #F0FAF3; }
.sljy-products-cat.is-active .sljy-products-cat-thumb img { opacity: 1; }
.sljy-products-cat.is-active .sljy-products-cat-name { color: #477F84; }
.sljy-products-cat.is-active::after {
    content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 0.25rem;
    background: #477F84;
}
@media (max-width: 1023px) {
    .sljy-products-categories-inner { padding: 0 1.25rem; }
}
@media (max-width: 600px) {
    .sljy-products-cat-thumb { width: 3.75rem; height: 3.75rem; }
}

/* ---------- featured 详情 ---------- */
.sljy-products-featured { background: #FFFFFF; padding: 0 0 3.5rem; }
.sljy-products-featured-inner {
    max-width: 82rem; margin: 0 auto; padding: 0 4rem;
    display: grid; grid-template-columns: 45% 55%;
    background: #F8FAF9; border: 1px solid #E3E9E6; overflow: hidden;
}
.sljy-products-featured-visual {
    background: #F2F5F3; display: flex; align-items: center; justify-content: center;
    padding: 3rem 2rem; min-height: 35.375rem;
}
.sljy-products-featured-img {
    max-width: 100%; max-height: 31.25rem; width: auto; height: auto; object-fit: contain;
    filter: drop-shadow(0 1.5rem 2.5rem rgba(20, 40, 45, 0.12));
    transition: transform .4s ease;
}
.sljy-products-featured-visual:hover .sljy-products-featured-img { transform: scale(1.03); }
.sljy-products-featured-info {
    padding: 3.5rem;
    display: flex; flex-direction: column; align-items: flex-start;
}
.sljy-products-featured-title {
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 2.625rem; line-height: 1.08; font-weight: 800; color: #141A20; margin: 0;
}
.sljy-products-featured-desc {
    font-family: 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-size: 1rem; line-height: 1.625; color: #56606B; margin: 1.25rem 0 0; max-width: 26.25rem;
}
.sljy-products-featured-desc--muted { color: #68707A; font-size: 0.875rem; margin-bottom: 1.5rem; }
.sljy-products-featured-accent { display: block; width: 4.375rem; height: 0.25rem; background: #477F84; margin: 1.5rem 0; }
.sljy-products-featured-btn {
    display: inline-flex; align-items: center; justify-content: space-between;
    min-width: 15.0625rem; height: 3.125rem; padding: 0 1.5rem;
    background: var(--sljy-teal-grad); color: #fff; border-radius: 0.125rem;
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; font-weight: 600;
    letter-spacing: 0.06em; text-transform: uppercase; overflow: hidden; position: relative;
    transition: transform .3s ease, box-shadow .3s ease;
}
.sljy-products-featured-btn::before {
    content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
    transition: left .55s ease;
}
.sljy-products-featured-btn:hover { transform: translateY(-0.125rem); box-shadow: 0 0.5rem 1.25rem rgba(41, 78, 84, 0.25); }
.sljy-products-featured-btn:hover::before { left: 100%; }
.sljy-products-featured-btn i { font-size: 1.0625rem; }
@media (max-width: 900px) {
    .sljy-products-featured-inner { grid-template-columns: 1fr; padding: 0 1.25rem; }
    .sljy-products-featured-visual { min-height: 20rem; padding: 2rem; }
    .sljy-products-featured-info { padding: 2rem; }
}
@media (max-width: 600px) {
    .sljy-products-featured-title { font-size: 2rem; }
    .sljy-products-featured-btn { min-width: 12.5rem; height: 2.75rem; font-size: 0.75rem; }
}

/* ---------- inquiry 询盘表单 ---------- */
.sljy-products-inquiry { background: #FFFFFF; padding: 0 0 4rem; }
.sljy-products-inquiry-inner { max-width: 82rem; margin: 0 auto; padding: 0 4rem; }
.sljy-products-inquiry-title {
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 2.375rem; line-height: 1.1; font-weight: 800; color: #141A20; margin: 0;
}
.sljy-products-inquiry-sub {
    font-family: 'Archivo', 'HarmonyOS Sans', sans-serif; font-size: 0.875rem; line-height: 1.55;
    color: #68707A; margin: 0.75rem 0 0; max-width: 45rem;
}
.sljy-products-inquiry-form {
    margin-top: 2rem; background: #FFFFFF; border: 1px solid #E2E8E6; padding: 1.75rem;
}
.sljy-products-inquiry-label {
    display: block; font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.08em; color: #7D858F;
    margin-bottom: 0.5rem; text-transform: uppercase;
}
.sljy-products-inquiry-control input,
.sljy-products-inquiry-control select,
.sljy-products-inquiry-control textarea {
    width: 100%; border: 1px solid #DCE4E1; background: #FFFFFF; color: #141A20;
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem;
    padding: 0 1rem; height: 3rem; border-radius: 0.125rem;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.sljy-products-inquiry-control textarea { height: 5.75rem; padding: 0.75rem 1rem; resize: vertical; line-height: 1.55; }
.sljy-products-inquiry-control input::placeholder,
.sljy-products-inquiry-control textarea::placeholder { color: #98A0AA; }
.sljy-products-inquiry-control input:focus,
.sljy-products-inquiry-control select:focus,
.sljy-products-inquiry-control textarea:focus {
    outline: none; border-color: #477F84; box-shadow: 0 0 0 0.1875rem rgba(71, 127, 132, 0.12);
}
.sljy-products-inquiry-select {
    -webkit-appearance: none; appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2368707A' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right 1rem center;
    padding-right: 2.5rem;
}
.sljy-products-inquiry-field { margin-bottom: 1.75rem; }
.sljy-products-inquiry-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.sljy-products-inquiry-actions { display: flex; gap: 1rem; margin-top: 0.5rem; }
.sljy-products-inquiry-submit {
    display: inline-flex; align-items: center; justify-content: space-between; gap: 0.75rem;
    min-width: 16rem; height: 3.125rem; padding: 0 1.5rem; border: none; cursor: pointer;
    background: var(--sljy-teal-grad); color: #fff; border-radius: 0.125rem;
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; font-weight: 600;
    letter-spacing: 0.06em; text-transform: uppercase;
    transition: transform .3s ease, box-shadow .3s ease;
}
.sljy-products-inquiry-submit:hover { transform: translateY(-0.125rem); box-shadow: 0 0.5rem 1.25rem rgba(41, 78, 84, 0.25); }
.sljy-products-inquiry-reset {
    display: inline-flex; align-items: center; justify-content: center; cursor: pointer;
    min-width: 16rem; height: 3.125rem; padding: 0 1.5rem;
    background: #FFFFFF; border: 1px solid #DCE4E1; color: #141A20; border-radius: 0.125rem;
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; font-weight: 600;
    letter-spacing: 0.06em; text-transform: uppercase;
    transition: border-color .2s ease, color .2s ease;
}
.sljy-products-inquiry-reset:hover { border-color: #477F84; color: #477F84; }
.sljy-products-inquiry-feedback { margin: 1rem 0 0; font-family: 'Archivo', sans-serif; font-size: 0.875rem; color: #477F84; }
.sljy-products-inquiry-feedback.is-error { color: #C0392B; }
@media (max-width: 600px) {
    .sljy-products-inquiry-inner { padding: 0 1.25rem; }
    .sljy-products-inquiry-title { font-size: 1.75rem; }
    .sljy-products-inquiry-row { grid-template-columns: 1fr; gap: 0; }
    .sljy-products-inquiry-row .sljy-products-inquiry-field:first-child { margin-bottom: 1.75rem; }
    .sljy-products-inquiry-actions { flex-direction: column; }
    .sljy-products-inquiry-submit, .sljy-products-inquiry-reset { width: 100%; min-width: 0; }
}

/* ---------- footer（与整站一致，仅前缀不同） ---------- */
.sljy-products-footer {
    /* 深色底铺满整行宽度（不受内容容器限制），避免宽屏下两侧露出浅色底形成白边 */
    background: #203F46;
    color: #fff;
}
.sljy-products-footer-top {
    /* 背景交由父级 .sljy-products-footer 铺满，此处只作为内容容器 */
    background: transparent; max-width: 90rem; margin: 0 auto; padding: 3.5rem 2.25rem 2.5rem; display: grid; grid-template-columns: 1.2fr repeat(5, 1fr); gap: 1.5rem; align-items: start;
}
.sljy-products-footer-brand { display: flex; flex-direction: column; gap: 1.5rem; padding-right: 1rem; }
.sljy-products-footer-logo { display: inline-flex; }
.sljy-products-footer-logo img { display: block; height: 2rem; width: auto; }
.sljy-products-footer-tagline { color: #B6CECE; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; line-height: 1.5; }
.sljy-products-footer-social { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.sljy-products-footer-social a {
    display: inline-flex; align-items: center; justify-content: center;
    width: 2.125rem; height: 2.125rem; color: #fff; font-size: 1.0625rem; border-radius: 50%;
    transition: all .3s ease;
}
.sljy-products-footer-social a:hover { background: #477F84; transform: translateY(-0.25rem); }
.sljy-products-footer-col { display: flex; flex-direction: column; gap: 0.5rem; color: #fff; position: relative; }
.sljy-products-footer-num { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; }
.sljy-products-footer-col-title { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 600; letter-spacing: 0.04em; margin-bottom: 0.5rem; }
.sljy-products-footer-col-rule { width: 100%; height: 1px; background: rgba(255, 255, 255, 0.08); margin-bottom: 0.75rem; }
.sljy-products-footer-col ul { display: flex; flex-direction: column; gap: 0.625rem; }
.sljy-products-footer-col li a { color: #F6F6F6; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.4; transition: color .2s ease, padding-left .2s ease; display: inline-block; }
.sljy-products-footer-col li a:hover { color: #A4C7C8; padding-left: 0.25rem; }
.sljy-products-footer-place-kicker { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; margin-top: 0.25rem; }
.sljy-products-footer-place { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.25rem; }
.sljy-products-footer-tel { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; font-weight: 500; line-height: 1.5; margin-top: 0.75rem; display: block; }
.sljy-products-footer-mail { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.5rem; display: block; }
.sljy-products-footer-rule { max-width: 82rem; height: 1px; background: rgba(255, 255, 255, 0.42); margin: 0 auto; }
.sljy-products-footer-bottom { background: transparent; max-width: 82rem; margin: 0 auto; padding: 0.75rem 0; display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.sljy-products-footer-copy { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.5; }
.sljy-products-footer-bottom-nav { display: flex; gap: 1.25rem; }
.sljy-products-footer-bottom-nav a { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; transition: color .2s ease; }
.sljy-products-footer-bottom-nav a:hover { color: #A4C7C8; }
@media (max-width: 1023px) {
    .sljy-products-footer-top { grid-template-columns: repeat(2, 1fr); padding: 2rem 1rem; }
    .sljy-products-footer-brand { grid-column: 1 / -1; }
    /* 窄屏下分隔线与内容、底栏共用同一条 1rem 侧边距，不再满幅出血 */
    .sljy-products-footer-rule { margin: 0 1rem; }
    /* 窄屏下底部条与上方内容同样留出 1rem 内边距 */
    .sljy-products-footer-bottom { padding: 0.75rem 1rem; }
}
/* 移动端：品牌区独占整行，其余 5 个栏目两列一行；整体收紧间距 */
@media (max-width: 767px) {
    .sljy-products-footer-top {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem 1.25rem;
        padding: 1.5rem 1rem 1.25rem;
    }
    .sljy-products-footer-brand { grid-column: 1 / -1; gap: 0.875rem; padding-right: 0; }
    .sljy-products-footer-tagline { font-size: 0.75rem; line-height: 1.45; }
    .sljy-products-footer-social { gap: 0.375rem; }
    .sljy-products-footer-social a { width: 1.875rem; height: 1.875rem; font-size: 0.9375rem; }

    /* 栏目内部收紧；li 需显式行高，否则继承 body 的 16px/1.6 撑高整行 */
    .sljy-products-footer-col { gap: 0.25rem; }
    .sljy-products-footer-num { line-height: 1.2; }
    .sljy-products-footer-col-title { line-height: 1.2; margin-bottom: 0.25rem; }
    .sljy-products-footer-col-rule { margin-bottom: 0.5rem; }
    .sljy-products-footer-col ul { gap: 0.375rem; }
    .sljy-products-footer-col li { font-size: 0.75rem; line-height: 1.4; }

    .sljy-products-footer-place-kicker,
    .sljy-products-footer-place,
    .sljy-products-footer-tel,
    .sljy-products-footer-mail { line-height: 1.45; }
    .sljy-products-footer-tel { margin-top: 0.5rem; }
    .sljy-products-footer-mail { margin-top: 0.25rem; }

    .sljy-products-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
        padding: 0.625rem 1rem;
    }
    .sljy-products-footer-bottom-nav { gap: 1rem; flex-wrap: wrap; }
}

/* ============================================
   sljy-construction-header 顶部导航（Construction Cases 高亮）
============================================ */
.sljy-construction-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(255, 255, 255, 0.92);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid #E6ECEA;
    transition: background .3s ease, box-shadow .3s ease;
}
.sljy-construction-header.is-scrolled {
    background: #ffffff;
    box-shadow: 0 0.125rem 0.75rem rgba(20, 40, 45, 0.10);
}
.sljy-construction-header-inner {
    max-width: 90rem;
    height: 5.375rem;
    margin: 0 auto;
    padding: 0 2.25rem;
    display: flex;
    align-items: center;
    gap: 1.5rem;
}
.sljy-construction-header-logo { display: flex; align-items: center; flex: 0 0 auto; margin-right: 2.5rem; }
.sljy-construction-header-logo img { display: block; height: 2.125rem; width: auto; }
.sljy-construction-header-nav { flex: 1 1 auto; }
.sljy-construction-header-nav ul { display: flex; align-items: center; gap: 2.5rem; }
.sljy-construction-header-nav-item a {
    position: relative;
    display: inline-block;
    padding: 0.5rem 0;
    color: #141A20;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    transition: color .2s ease;
}
.sljy-construction-header-nav-item a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -0.5rem;
    transform: translateX(-50%) scaleX(0);
    width: 3rem; height: 0.1875rem;
    background: #477F84;
    border-radius: 0.0938rem;
    transition: transform .25s ease;
}
.sljy-construction-header-nav-item a:hover { color: #294E54; }
.sljy-construction-header-nav-item a:hover::after { transform: translateX(-50%) scaleX(1); }
.sljy-construction-header-nav-item.is-active a { color: #477F84; }
.sljy-construction-header-nav-item.is-active a::after { transform: translateX(-50%) scaleX(1); }
.sljy-construction-header-nav-contact a { font-size: 0.9375rem; font-weight: 800; }

.sljy-construction-header-utils { display: flex; align-items: center; gap: 0.875rem; color: #141A20; }
.sljy-construction-header-search {
    display: inline-flex; align-items: center; justify-content: center;
    width: 1.6875rem; height: 1.6875rem; font-size: 1.25rem; color: #141A20;
    transition: color .2s ease, transform .2s ease;
}
.sljy-construction-header-search:hover { color: #477F84; transform: scale(1.08); }
.sljy-construction-header-divider { width: 1px; height: 1.625rem; background: rgba(20, 30, 35, 0.18); }
.sljy-construction-header-lang {
    display: inline-flex; align-items: center; gap: 0.375rem; color: #141A20;
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 500;
    transition: color .2s ease;
}
.sljy-construction-header-lang::before {
    content: ""; display: inline-block; width: 0.5rem; height: 0.5rem;
    border-radius: 50%; background: #477F84;
}
.sljy-construction-header-lang:hover { color: #294E54; }
.sljy-construction-header-burger {
    display: none; width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center;
    font-size: 1.5rem; color: #141A20;
}
@media (max-width: 1023px) {
    .sljy-construction-header-nav, .sljy-construction-header-utils { display: none; }
    .sljy-construction-header-burger { display: inline-flex; }
    .sljy-construction-header-inner { padding: 0 1.25rem; }
}
@media (max-width: 480px) {
    .sljy-construction-header-inner { height: 3.75rem; }
    .sljy-construction-header-logo img { height: 1.5rem; }
}

/* ---------- hero 标题区 ---------- */
.sljy-construction-hero { background: #FFFFFF; padding: 4rem 0 2.5rem; }
.sljy-construction-hero-inner { max-width: 90rem; margin: 0 auto; padding: 0 4rem; }
.sljy-construction-hero-title {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-size: 4.625rem; line-height: 4.125rem; font-weight: 800; letter-spacing: 0.01em;
    color: #000000; margin: 0; text-transform: uppercase;
}
.sljy-construction-hero-desc {
    font-family: 'Archivo', 'HarmonyOS Sans', sans-serif;
    max-width: 45rem; margin: 1.25rem 0 0;
}
.sljy-construction-hero-desc p {
    font-size: 0.9375rem; line-height: 1.5; color: #475452; margin: 0;
    animation-delay: .25s;
}
@media (max-width: 1023px) {
    .sljy-construction-hero-inner { padding: 0 1.25rem; }
    .sljy-construction-hero-title { font-size: 3rem; line-height: 3rem; }
}
@media (max-width: 600px) {
    .sljy-construction-hero { padding: 2.5rem 0 1.5rem; }
    .sljy-construction-hero-title { font-size: 2.25rem; line-height: 2.25rem; }
    .sljy-construction-hero-desc p { font-size: 0.875rem; }
}

/* ---------- cases 居中图片轮播 ---------- */
.sljy-construction-cases { background: #FFFFFF; padding: 1rem 0 4.5rem; overflow: hidden; }
.sljy-construction-cases-swiper { width: 100%; overflow: hidden; }
.sljy-construction-cases-swiper .swiper-slide.sljy-construction-slide {
    width: 70rem;
    box-sizing: border-box;
    background: #fff;
    opacity: 0.68;
    transition: opacity .5s ease;
}
.sljy-construction-cases-swiper .swiper-slide.sljy-construction-slide.swiper-slide-active { opacity: 1; }
.sljy-construction-slide-photo {
    position: relative;
    width: 66rem;
    max-width: calc(100% - 4rem);
    margin: 0 auto;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 0.125rem;
    background: #0B1112;
}
.sljy-construction-slide-img {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    display: block;
}
.sljy-construction-slide-shade {
    position: absolute; top: 0; left: 0; right: 0;
    height: 11.875rem;
    background: linear-gradient(180deg, rgba(6,19,23,0.8) 0%, rgba(6,19,23,0) 100%);
    pointer-events: none;
}
.sljy-construction-slide-cap {
    position: absolute; top: 2.125rem; left: 2rem; right: 2rem;
    margin: 0;
    color: #FFFFFF;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-weight: 800; font-size: 1.875rem; line-height: 2.25rem;
    text-shadow: 0 0.0625rem 0.25rem rgba(0,0,0,0.35);
}
.sljy-construction-slide-bar {
    width: 66rem;
    max-width: calc(100% - 4rem);
    margin: 1.5rem auto 0;
    display: flex;
    align-items: center;
    gap: 1rem;
}
.sljy-construction-slide-region {
    flex: 0 0 auto;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-weight: 700; font-size: 0.875rem; line-height: 1.5rem;
    letter-spacing: 0.08em; color: #203F46;
}
.sljy-construction-slide-count {
    flex: 1 1 auto; text-align: center;
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-weight: 700; font-size: 0.875rem; letter-spacing: 0.05em; color: #203F46;
}
.sljy-construction-slide-nav { display: flex; gap: 0.5rem; flex: 0 0 auto; }
.sljy-construction-nav-prev, .sljy-construction-nav-next {
    display: inline-flex; align-items: center; justify-content: center;
    width: 3rem; height: 3rem;
    border: 1px solid #203F46; border-radius: 50%;
    background: #FFFFFF; color: #203F46; font-size: 1.125rem;
    cursor: pointer; transition: all .25s ease;
}
.sljy-construction-nav-prev:hover, .sljy-construction-nav-next:hover {
    background: #203F46; color: #FFFFFF; transform: translateY(-0.125rem);
}
@media (max-width: 1023px) {
    .sljy-construction-cases-swiper .swiper-slide.sljy-construction-slide { width: 88%; }
    .sljy-construction-slide-photo,
    .sljy-construction-slide-bar { width: 100%; max-width: 100%; }
    .sljy-construction-slide-cap { font-size: 1.25rem; line-height: 1.5rem; top: 1.25rem; left: 1.25rem; right: 1.25rem; }
}
@media (max-width: 600px) {
    .sljy-construction-cases { padding: 0.5rem 0 3rem; }
    .sljy-construction-slide-bar { flex-wrap: wrap; gap: 0.5rem; margin-top: 1rem; }
    .sljy-construction-slide-count { order: 3; flex-basis: 100%; text-align: left; }
    .sljy-construction-nav-prev, .sljy-construction-nav-next { width: 2.5rem; height: 2.5rem; font-size: 1rem; }
}

/* ---------- footer 深色导航坞 ---------- */
.sljy-construction-footer {
    /* 深色底铺满整行宽度（不受内容容器限制），避免宽屏下两侧露出浅色底形成白边 */
    background: #203F46;
    color: #fff;
}
.sljy-construction-footer-top {
    /* 背景交由父级 .sljy-construction-footer 铺满，此处只作为内容容器 */
    background: transparent; max-width: 90rem; margin: 0 auto; padding: 3.5rem 2.25rem 2.5rem; display: grid; grid-template-columns: 1.2fr repeat(5, 1fr); gap: 1.5rem; align-items: start;
}
.sljy-construction-footer-brand { display: flex; flex-direction: column; gap: 1.5rem; padding-right: 1rem; }
.sljy-construction-footer-logo { display: inline-flex; }
.sljy-construction-footer-logo img { display: block; height: 2rem; width: auto; }
.sljy-construction-footer-tagline { color: #B6CECE; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; line-height: 1.5; }
.sljy-construction-footer-social { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.sljy-construction-footer-social a {
    display: inline-flex; align-items: center; justify-content: center;
    width: 2.125rem; height: 2.125rem; color: #fff; font-size: 1.0625rem; border-radius: 50%;
    transition: all .3s ease;
}
.sljy-construction-footer-social a:hover { background: #477F84; transform: translateY(-0.25rem); }
.sljy-construction-footer-col { display: flex; flex-direction: column; gap: 0.5rem; color: #fff; position: relative; }
.sljy-construction-footer-num { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; }
.sljy-construction-footer-col-title { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 600; letter-spacing: 0.04em; margin-bottom: 0.5rem; }
.sljy-construction-footer-col-rule { width: 100%; height: 1px; background: rgba(255, 255, 255, 0.08); margin-bottom: 0.75rem; }
.sljy-construction-footer-col ul { display: flex; flex-direction: column; gap: 0.625rem; }
.sljy-construction-footer-col li a { color: #F6F6F6; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.4; transition: color .2s ease, padding-left .2s ease; display: inline-block; }
.sljy-construction-footer-col li a:hover { color: #A4C7C8; padding-left: 0.25rem; }
.sljy-construction-footer-place-kicker { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; margin-top: 0.25rem; }
.sljy-construction-footer-place { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.25rem; }
.sljy-construction-footer-tel { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; font-weight: 500; line-height: 1.5; margin-top: 0.75rem; display: block; }
.sljy-construction-footer-mail { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.5rem; display: block; }
.sljy-construction-footer-rule { max-width: 82rem; height: 1px; background: rgba(255, 255, 255, 0.42); margin: 0 auto; }
.sljy-construction-footer-bottom { background: transparent; max-width: 82rem; margin: 0 auto; padding: 0.75rem 0; display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.sljy-construction-footer-copy { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.5; }
.sljy-construction-footer-bottom-nav { display: flex; gap: 1.25rem; }
.sljy-construction-footer-bottom-nav a { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; transition: color .2s ease; }
.sljy-construction-footer-bottom-nav a:hover { color: #A4C7C8; }
@media (max-width: 1023px) {
    .sljy-construction-footer-top { grid-template-columns: repeat(2, 1fr); padding: 2rem 1rem; }
    .sljy-construction-footer-brand { grid-column: 1 / -1; }
    /* 窄屏下分隔线与内容、底栏共用同一条 1rem 侧边距，不再满幅出血 */
    .sljy-construction-footer-rule { margin: 0 1rem; }
    /* 窄屏下底部条与上方内容同样留出 1rem 内边距 */
    .sljy-construction-footer-bottom { padding: 0.75rem 1rem; }
}
/* 移动端：品牌区独占整行，其余 5 个栏目两列一行；整体收紧间距 */
@media (max-width: 767px) {
    .sljy-construction-footer-top {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem 1.25rem;
        padding: 1.5rem 1rem 1.25rem;
    }
    .sljy-construction-footer-brand { grid-column: 1 / -1; gap: 0.875rem; padding-right: 0; }
    .sljy-construction-footer-tagline { font-size: 0.75rem; line-height: 1.45; }
    .sljy-construction-footer-social { gap: 0.375rem; }
    .sljy-construction-footer-social a { width: 1.875rem; height: 1.875rem; font-size: 0.9375rem; }

    /* 栏目内部收紧；li 需显式行高，否则继承 body 的 16px/1.6 撑高整行 */
    .sljy-construction-footer-col { gap: 0.25rem; }
    .sljy-construction-footer-num { line-height: 1.2; }
    .sljy-construction-footer-col-title { line-height: 1.2; margin-bottom: 0.25rem; }
    .sljy-construction-footer-col-rule { margin-bottom: 0.5rem; }
    .sljy-construction-footer-col ul { gap: 0.375rem; }
    .sljy-construction-footer-col li { font-size: 0.75rem; line-height: 1.4; }

    .sljy-construction-footer-place-kicker,
    .sljy-construction-footer-place,
    .sljy-construction-footer-tel,
    .sljy-construction-footer-mail { line-height: 1.45; }
    .sljy-construction-footer-tel { margin-top: 0.5rem; }
    .sljy-construction-footer-mail { margin-top: 0.25rem; }

    .sljy-construction-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
        padding: 0.625rem 1rem;
    }
    .sljy-construction-footer-bottom-nav { gap: 1rem; flex-wrap: wrap; }
}

/* ============================================
   sljy-about-header 顶部导航（About Us 高亮）
============================================ */
.sljy-about-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(255, 255, 255, 0.92);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid #E6ECEA;
    transition: background .3s ease, box-shadow .3s ease;
}
.sljy-about-header.is-scrolled {
    background: #ffffff;
    box-shadow: 0 0.125rem 0.75rem rgba(20, 40, 45, 0.10);
}
.sljy-about-header-inner {
    max-width: 90rem;
    height: 5.375rem;
    margin: 0 auto;
    padding: 0 2.25rem;
    display: flex;
    align-items: center;
    gap: 1.5rem;
}
.sljy-about-header-logo { display: flex; align-items: center; flex: 0 0 auto; margin-right: 2.5rem; }
.sljy-about-header-logo img { display: block; height: 2.125rem; width: auto; }
.sljy-about-header-nav { flex: 1 1 auto; }
.sljy-about-header-nav ul { display: flex; align-items: center; gap: 2.5rem; }
.sljy-about-header-nav-item a {
    position: relative;
    display: inline-block;
    padding: 0.5rem 0;
    color: #141A20;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    transition: color .2s ease;
}
.sljy-about-header-nav-item a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -0.5rem;
    transform: translateX(-50%) scaleX(0);
    width: 3rem; height: 0.1875rem;
    background: #477F84;
    border-radius: 0.0938rem;
    transition: transform .25s ease;
}
.sljy-about-header-nav-item a:hover { color: #294E54; }
.sljy-about-header-nav-item a:hover::after { transform: translateX(-50%) scaleX(1); }
.sljy-about-header-nav-item.is-active a { color: #477F84; }
.sljy-about-header-nav-item.is-active a::after { transform: translateX(-50%) scaleX(1); }
.sljy-about-header-nav-contact a { font-size: 0.9375rem; font-weight: 800; }

.sljy-about-header-utils { display: flex; align-items: center; gap: 0.875rem; color: #141A20; }
.sljy-about-header-search {
    display: inline-flex; align-items: center; justify-content: center;
    width: 1.6875rem; height: 1.6875rem; font-size: 1.25rem; color: #141A20;
    transition: color .2s ease, transform .2s ease;
}
.sljy-about-header-search:hover { color: #477F84; transform: scale(1.08); }
.sljy-about-header-divider { width: 1px; height: 1.625rem; background: rgba(20, 30, 35, 0.18); }
.sljy-about-header-lang {
    display: inline-flex; align-items: center; gap: 0.375rem; color: #141A20;
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 500;
    transition: color .2s ease;
}
.sljy-about-header-lang::before {
    content: ""; display: inline-block; width: 0.5rem; height: 0.5rem;
    border-radius: 50%; background: #477F84;
}
.sljy-about-header-lang:hover { color: #294E54; }
.sljy-about-header-burger {
    display: none; width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center;
    font-size: 1.5rem; color: #141A20;
}
@media (max-width: 1023px) {
    .sljy-about-header-nav, .sljy-about-header-utils { display: none; }
    .sljy-about-header-burger { display: inline-flex; }
    .sljy-about-header-inner { padding: 0 1.25rem; }
}
@media (max-width: 480px) {
    .sljy-about-header-inner { height: 3.75rem; }
    .sljy-about-header-logo img { height: 1.5rem; }
}

/* ---------- hero 标题 + 图文拼贴 ---------- */
.sljy-about-hero { background: #FFFFFF; padding: 4.5rem 0 3rem; }
.sljy-about-hero-inner { max-width: 90rem; margin: 0 auto; padding: 0 5.25rem; }
.sljy-about-hero-grid { display: grid; grid-template-columns: 1fr 42.25rem; gap: 3.5rem; align-items: center; }
.sljy-about-hero-title {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-weight: 800;
    font-size: 4.625rem;
    line-height: 4.375rem;
    color: #0A0E0F;
    text-transform: uppercase;
    letter-spacing: 0.01em;
}
.sljy-about-hero-title.animated { animation-duration: .8s; }
.sljy-about-hero-desc { margin-top: 1.75rem; }
.sljy-about-hero-desc p {
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.875rem;
    line-height: 1.5rem;
    color: #475254;
    margin: 0 0 0.5rem;
}
.sljy-about-hero-desc p.animated { animation-duration: .8s; }
.sljy-about-hero-desc p:nth-child(1).animated { animation-delay: .15s; }
.sljy-about-hero-desc p:nth-child(2).animated { animation-delay: .25s; }
.sljy-about-hero-desc p:nth-child(3).animated { animation-delay: .35s; }
.sljy-about-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1.125rem; margin-top: 1.75rem; }
.sljy-about-hero-profile-link {
    display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
    min-height: 2.625rem; padding: .65rem 1.25rem; border-radius: 999px;
    background: #009b4b; color: #fff; text-decoration: none;
    font: 700 .6875rem/1 'Archivo', 'HarmonyOS', sans-serif; letter-spacing: .025em;
    transition: background .2s ease, transform .2s ease;
}
.sljy-about-hero-profile-link:hover { background: #087f42; color: #fff; transform: translateY(-1px); }
.sljy-about-hero-video-link {
    display: inline-flex; align-items: center; gap: .75rem; border: 0; padding: 0;
    background: transparent; color: #263b37; cursor: pointer;
    font: 500 .6875rem/1.2 'Archivo', 'HarmonyOS', sans-serif; letter-spacing: .025em;
}
.sljy-about-hero-video-icon {
    display: grid; place-items: center; width: 2rem; height: 2rem; padding-left: .125rem;
    border-radius: 50%; background: #e5f2ed; color: #0d5537; font-size: .625rem;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}
.sljy-about-hero-video-link:hover .sljy-about-hero-video-icon { background: #009b4b; color: #fff; transform: scale(1.06); }
.sljy-about-hero-actions :is(a, button):focus-visible { outline: 2px solid #477f84; outline-offset: 4px; }
.sljy-about-hero-media { display: flex; flex-direction: column; gap: 0.875rem; }
.sljy-about-hero-main { width: 100%; height: 16.25rem; object-fit: cover; border-radius: 0.25rem; display: block; }
.sljy-about-hero-mosaic { display: grid; grid-template-columns: 1fr 1fr; gap: 0.625rem; }
.sljy-about-hero-mosaic img { width: 100%; object-fit: cover; border-radius: 0.25rem; display: block; }
.sljy-about-hero-m1, .sljy-about-hero-m2 { height: 7.5rem; }
.sljy-about-hero-m3, .sljy-about-hero-m4 { height: 8.75rem; }

/* ---------- stats 数据条 ---------- */
.sljy-about-stats { padding: 3rem 0; }
.sljy-about-stats-inner { max-width: 90rem; margin: 0 auto; padding: 0 5.25rem; }
.sljy-about-stats-bar {
    background: #FAFBFA; display: flex; align-items: center; justify-content: space-between;
    padding: 1.875rem 2.25rem; border-radius: 0.25rem;
}
.sljy-about-stat { display: flex; flex-direction: column; align-items: center; gap: 0.25rem; flex: 1 1 0; }
.sljy-about-stat-num {
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-weight: 700;
    font-size: 2.1875rem; line-height: 2rem; color: #477F84; white-space: nowrap;
}
.sljy-about-stat-label {
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-weight: 600;
    font-size: 0.75rem; line-height: 1rem; color: #0A0E0F; text-align: center; letter-spacing: 0.04em;
}
.sljy-about-stat-div { width: 1px; height: 3.875rem; background: #DBE0DE; flex: 0 0 auto; }

/* ---------- capacity 产能表现 ---------- */
.sljy-about-capacity { padding: 3.5rem 0; background: #FFFFFF; }
.sljy-about-capacity-inner { max-width: 90rem; margin: 0 auto; padding: 0 5.25rem; }
.sljy-about-capacity-head { margin-bottom: 2rem; }
.sljy-about-capacity-title {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-weight: 800; font-size: 2.625rem; line-height: 2.875rem; color: #0A0E0F; text-transform: uppercase;
}
.sljy-about-capacity-sub {
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem;
    line-height: 1.25rem; color: #475254; margin-top: 0.5rem;
}
.sljy-about-capacity-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2.6875rem; }
.sljy-about-cap-card {
    background: #fff; border: 1px solid #DBE0DE; border-radius: 0.25rem;
    padding: 1.75rem; display: flex; flex-direction: column; min-height: 12.8125rem;
}
.sljy-about-cap-icon {
    width: 2.625rem; height: 2.625rem; border-radius: 50%; background: #E4EEEE;
    display: inline-flex; align-items: center; justify-content: center;
    color: #477F84; font-size: 1.125rem; margin-bottom: 1.25rem; overflow: hidden;
}
.sljy-about-cap-icon-img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; display: block; }
.sljy-about-cap-year {
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-weight: 700;
    font-size: 1.5rem; line-height: 1.75rem; color: #477F84;
}
.sljy-about-cap-label {
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-weight: 400;
    font-size: 0.75rem; line-height: 1.125rem; color: #0A0E0F; margin-top: 0.625rem;
}
.sljy-about-cap-value {
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-weight: 700;
    font-size: 1.0625rem; line-height: 1.375rem; color: #0A0E0F; margin-top: 0.25rem;
}
.sljy-about-cap-value-wide { margin-top: 0.625rem; }

/* ---------- factory 工厂概览 ---------- */
.sljy-about-factory { padding: 3.5rem 0; background: #FFFFFF; }
.sljy-about-factory-inner { max-width: 90rem; margin: 0 auto; padding: 0 5.25rem; }
.sljy-about-factory-head { margin-bottom: 2rem; }
.sljy-about-factory-title {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-weight: 800; font-size: 2.625rem; line-height: 2.875rem; color: #0A0E0F; text-transform: uppercase;
}
.sljy-about-factory-sub {
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem;
    line-height: 1.25rem; color: #475254; margin-top: 0.5rem;
}
.sljy-about-factory-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.3125rem; }
.sljy-about-factory-photo {
    width: 100%; height: 12.3125rem; object-fit: cover;
    border: 1px solid #DBE3E0; border-radius: 0.125rem; display: block;
}

/* ---------- partners 合作伙伴 ---------- */
.sljy-about-partners { padding: 3.5rem 0 4rem; background: #FFFFFF; }
.sljy-about-partners-inner { max-width: 90rem; margin: 0 auto; padding: 0 5.25rem; }
.sljy-about-partners-head { margin-bottom: 2rem; }
.sljy-about-partners-title {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-weight: 800; font-size: 2.625rem; line-height: 2.875rem; color: #0A0E0F; text-transform: uppercase;
}
.sljy-about-partners-sub {
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem;
    line-height: 1.25rem; color: #475254; margin-top: 0.5rem;
}
/* 固定一行四个，8 条数据即为整齐的两行 */
.sljy-about-partners-grid {
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.875rem;
}
.sljy-about-partner {
    height: 5.625rem; border: 1px solid #DBE3E0; border-radius: 0.125rem;
    display: flex; align-items: center; justify-content: center; background: #fff; padding: 1rem;
}
.sljy-about-partner img { max-width: 100%; max-height: 100%; object-fit: contain; }
.sljy-about-partner-text {
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-weight: 800;
    font-size: 2rem; color: #0F0F0F; letter-spacing: 0.04em;
}

/* ---------- footer 深色导航坞 ---------- */
.sljy-about-footer {
    /* 深色底铺满整行宽度（不受内容容器限制），避免宽屏下两侧露出浅色底形成白边 */
    background: #203F46;
    color: #fff;
}
.sljy-about-footer-top {
    /* 背景交由父级 .sljy-about-footer 铺满，此处只作为内容容器 */
    background: transparent; max-width: 90rem; margin: 0 auto; padding: 3.5rem 2.25rem 2.5rem; display: grid; grid-template-columns: 1.2fr repeat(5, 1fr); gap: 1.5rem; align-items: start;
}
.sljy-about-footer-brand { display: flex; flex-direction: column; gap: 1.5rem; padding-right: 1rem; }
.sljy-about-footer-logo { display: inline-flex; }
.sljy-about-footer-logo img { display: block; height: 2rem; width: auto; }
.sljy-about-footer-tagline { color: #B6CECE; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; line-height: 1.5; }
.sljy-about-footer-social { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.sljy-about-footer-social a {
    display: inline-flex; align-items: center; justify-content: center;
    width: 2.125rem; height: 2.125rem; color: #fff; font-size: 1.0625rem; border-radius: 50%;
    transition: all .3s ease;
}
.sljy-about-footer-social a:hover { background: #477F84; transform: translateY(-0.25rem); }
.sljy-about-footer-col { display: flex; flex-direction: column; gap: 0.5rem; color: #fff; position: relative; }
.sljy-about-footer-num { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; }
.sljy-about-footer-col-title { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 600; letter-spacing: 0.04em; margin-bottom: 0.5rem; }
.sljy-about-footer-col-rule { width: 100%; height: 1px; background: rgba(255, 255, 255, 0.08); margin-bottom: 0.75rem; }
.sljy-about-footer-col ul { display: flex; flex-direction: column; gap: 0.625rem; }
.sljy-about-footer-col li a { color: #F6F6F6; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.4; transition: color .2s ease, padding-left .2s ease; display: inline-block; }
.sljy-about-footer-col li a:hover { color: #A4C7C8; padding-left: 0.25rem; }
.sljy-about-footer-place-kicker { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; margin-top: 0.25rem; }
.sljy-about-footer-place { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.25rem; }
.sljy-about-footer-tel { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; font-weight: 500; line-height: 1.5; margin-top: 0.75rem; display: block; }
.sljy-about-footer-mail { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.5rem; display: block; }
.sljy-about-footer-rule { max-width: 82rem; height: 1px; background: rgba(255, 255, 255, 0.42); margin: 0 auto; }
.sljy-about-footer-bottom { background: transparent; max-width: 82rem; margin: 0 auto; padding: 0.75rem 0; display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.sljy-about-footer-copy { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.5; }
.sljy-about-footer-bottom-nav { display: flex; gap: 1.25rem; }
.sljy-about-footer-bottom-nav a { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; transition: color .2s ease; }
.sljy-about-footer-bottom-nav a:hover { color: #A4C7C8; }

/* ---------- 响应式 ---------- */
@media (max-width: 1023px) {
    .sljy-about-hero-grid { grid-template-columns: 1fr; gap: 2.5rem; }
    .sljy-about-capacity-grid { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
    .sljy-about-factory-grid { grid-template-columns: repeat(2, 1fr); }
    .sljy-about-partners-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sljy-about-stats-bar { flex-wrap: wrap; gap: 1.25rem; }
    .sljy-about-stat { flex: 1 1 28%; }
    .sljy-about-stat-div { display: none; }
    .sljy-about-footer-top { grid-template-columns: repeat(2, 1fr); padding: 2rem 1rem; }
    .sljy-about-footer-brand { grid-column: 1 / -1; }
    /* 窄屏下分隔线与内容、底栏共用同一条 1rem 侧边距，不再满幅出血 */
    .sljy-about-footer-rule { margin: 0 1rem; }
    /* 窄屏下底部条与上方内容同样留出 1rem 内边距 */
    .sljy-about-footer-bottom { padding: 0.75rem 1rem; }
}
@media (max-width: 640px) {
    .sljy-about-hero-inner, .sljy-about-stats-inner, .sljy-about-capacity-inner,
    .sljy-about-factory-inner, .sljy-about-partners-inner { padding: 0 1.25rem; }
    .sljy-about-hero { padding: 2.5rem 0 2rem; }
    .sljy-about-hero-title { font-size: 3rem; line-height: 3rem; }
    .sljy-about-capacity-grid { grid-template-columns: 1fr; }
    .sljy-about-factory-grid { grid-template-columns: 1fr; }
    .sljy-about-partners-grid { grid-template-columns: 1fr; }
    .sljy-about-stats-bar { flex-direction: column; gap: 1rem; }
    .sljy-about-stat { flex: 1 1 100%; }
}

/* 移动端：品牌区独占整行，其余 5 个栏目两列一行；整体收紧间距 */
@media (max-width: 767px) {
    .sljy-about-footer-top {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem 1.25rem;
        padding: 1.5rem 1rem 1.25rem;
    }
    .sljy-about-footer-brand { grid-column: 1 / -1; gap: 0.875rem; padding-right: 0; }
    .sljy-about-footer-tagline { font-size: 0.75rem; line-height: 1.45; }
    .sljy-about-footer-social { gap: 0.375rem; }
    .sljy-about-footer-social a { width: 1.875rem; height: 1.875rem; font-size: 0.9375rem; }

    /* 栏目内部收紧；li 需显式行高，否则继承 body 的 16px/1.6 撑高整行 */
    .sljy-about-footer-col { gap: 0.25rem; }
    .sljy-about-footer-num { line-height: 1.2; }
    .sljy-about-footer-col-title { line-height: 1.2; margin-bottom: 0.25rem; }
    .sljy-about-footer-col-rule { margin-bottom: 0.5rem; }
    .sljy-about-footer-col ul { gap: 0.375rem; }
    .sljy-about-footer-col li { font-size: 0.75rem; line-height: 1.4; }

    .sljy-about-footer-place-kicker,
    .sljy-about-footer-place,
    .sljy-about-footer-tel,
    .sljy-about-footer-mail { line-height: 1.45; }
    .sljy-about-footer-tel { margin-top: 0.5rem; }
    .sljy-about-footer-mail { margin-top: 0.25rem; }

    .sljy-about-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
        padding: 0.625rem 1rem;
    }
    .sljy-about-footer-bottom-nav { gap: 1rem; flex-wrap: wrap; }
}

/* ============================================
   sljy-new-header 顶部导航（News 高亮）
============================================ */
.sljy-new-header {
    position: sticky; top: 0; z-index: 100;
    background: rgba(255, 255, 255, 0.92);
    -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
    border-bottom: 1px solid #E6ECEA;
    transition: background .3s ease, box-shadow .3s ease;
}
.sljy-new-header.is-scrolled { background: #ffffff; box-shadow: 0 0.125rem 0.75rem rgba(20, 40, 45, 0.10); }
.sljy-new-header-inner { max-width: 90rem; height: 5.375rem; margin: 0 auto; padding: 0 2.25rem; display: flex; align-items: center; gap: 1.5rem; }
.sljy-new-header-logo { display: flex; align-items: center; flex: 0 0 auto; margin-right: 2.5rem; }
.sljy-new-header-logo img { display: block; height: 2.125rem; width: auto; }
.sljy-new-header-nav { flex: 1 1 auto; }
.sljy-new-header-nav ul { display: flex; align-items: center; gap: 2.5rem; }
.sljy-new-header-nav-item a {
    position: relative; display: inline-block; padding: 0.5rem 0;
    color: #141A20; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 1rem; font-weight: 700; transition: color .2s ease;
}
.sljy-new-header-nav-item a::after {
    content: ""; position: absolute; left: 50%; bottom: -0.5rem;
    transform: translateX(-50%) scaleX(0); width: 3rem; height: 0.1875rem;
    background: #477F84; border-radius: 0.0938rem; transition: transform .25s ease;
}
.sljy-new-header-nav-item a:hover { color: #294E54; }
.sljy-new-header-nav-item a:hover::after { transform: translateX(-50%) scaleX(1); }
.sljy-new-header-nav-item.is-active a { color: #477F84; }
.sljy-new-header-nav-item.is-active a::after { transform: translateX(-50%) scaleX(1); }
.sljy-new-header-nav-contact a { font-size: 0.9375rem; font-weight: 800; }
.sljy-new-header-utils { display: flex; align-items: center; gap: 0.875rem; color: #141A20; }
.sljy-new-header-search { display: inline-flex; align-items: center; justify-content: center; width: 1.6875rem; height: 1.6875rem; font-size: 1.25rem; color: #141A20; transition: color .2s ease, transform .2s ease; }
.sljy-new-header-search:hover { color: #477F84; transform: scale(1.08); }
.sljy-new-header-divider { width: 1px; height: 1.625rem; background: rgba(20, 30, 35, 0.18); }
.sljy-new-header-lang { display: inline-flex; align-items: center; gap: 0.375rem; color: #141A20; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 500; transition: color .2s ease; }
.sljy-new-header-lang::before { content: ""; display: inline-block; width: 0.5rem; height: 0.5rem; border-radius: 50%; background: #477F84; }
.sljy-new-header-lang:hover { color: #294E54; }
.sljy-new-header-burger { display: none; width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center; font-size: 1.5rem; color: #141A20; }
@media (max-width: 1023px) {
    .sljy-new-header-nav, .sljy-new-header-utils { display: none; }
    .sljy-new-header-burger { display: inline-flex; }
    .sljy-new-header-inner { padding: 0 1.25rem; }
}
@media (max-width: 480px) {
    .sljy-new-header-inner { height: 3.75rem; }
    .sljy-new-header-logo img { height: 1.5rem; }
}

/* ---------- sljy-new-hero 横幅 + 标题 ---------- */
.sljy-new-hero { background: #FFFFFF; padding: 2.5rem 0 0; }
.sljy-new-hero-inner { max-width: 90rem; margin: 0 auto; padding: 0 4rem; }
.sljy-new-hero-banner { position: relative; width: 100%; aspect-ratio: 1312 / 472; border-radius: 0.375rem; overflow: hidden; }
.sljy-new-hero-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sljy-new-hero-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: center; padding: 0 4rem; }
.sljy-new-hero-title {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-size: 4.625rem; line-height: 1.03; font-weight: 800; letter-spacing: 0.01em;
    color: #090B0D; text-transform: uppercase; margin: 0; max-width: 40rem;
}
.sljy-new-hero-title.animated { animation-duration: .8s; }
.sljy-new-hero-desc { margin-top: 1.25rem; max-width: 35rem; color: #474F54; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 1.375rem; line-height: 1.545; }
.sljy-new-hero-desc.animated { animation-duration: .8s; animation-delay: .15s; }

/* ---------- sljy-new-subnav News 二级菜单（New / Video 切换） ---------- */
.sljy-new-subnav { background: #FFFFFF; }
.sljy-new-subnav-inner { max-width: 90rem; margin: 0 auto; padding: 2rem 4rem 0; display: flex; gap: 2.5rem; border-bottom: 1px solid #E3E8E8; }
.sljy-new-subnav-tab {
    position: relative; display: inline-block; padding: 0 0 1rem;
    color: #141A20; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 1.0625rem; font-weight: 700; transition: color .2s ease;
}
.sljy-new-subnav-tab::after {
    content: ""; position: absolute; left: 0; bottom: -1px; width: 100%; height: 0.1875rem;
    background: #477F84; border-radius: 0.0938rem; transform: scaleX(0); transform-origin: left; transition: transform .25s ease;
}
.sljy-new-subnav-tab:hover { color: #294E54; }
.sljy-new-subnav-tab:hover::after { transform: scaleX(1); }
.sljy-new-subnav-tab.is-active { color: #477F84; }
.sljy-new-subnav-tab.is-active::after { transform: scaleX(1); }

/* ---------- sljy-new-cards 新闻卡片 ---------- */
.sljy-new-cards { background: #FFFFFF; padding: 2.5rem 0 4rem; }
.sljy-new-cards-inner { max-width: 90rem; margin: 0 auto; padding: 0 4rem; }
.sljy-new-cards-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
.sljy-new-card { background: #FFFFFF; border: 1px solid #DBE0E3; border-radius: 0.25rem; overflow: hidden; display: flex; flex-direction: column; transition: box-shadow .3s ease, transform .3s ease; }
.sljy-new-card:hover { box-shadow: 0 0.5rem 1.5rem rgba(20, 40, 45, 0.10); transform: translateY(-0.25rem); }
.sljy-new-card-media { display: block; }
.sljy-new-card-media img { width: 100%; aspect-ratio: 416 / 390; object-fit: cover; display: block; }
.sljy-new-card-body { display: flex; flex-direction: column; padding: 1.5rem 1.25rem 1.75rem; flex: 1; }
.sljy-new-card-meta { display: flex; align-items: center; gap: 0.625rem; margin-bottom: 1rem; }
.sljy-new-card-icon { display: inline-block; width: 1.5rem; height: 1.5rem; flex: 0 0 auto; }
.sljy-new-card-icon::before { content: ""; display: block; width: 100%; height: 100%; background: url(../images/new-card-icon.png) center / contain no-repeat; }
.sljy-new-card-date { font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; color: #404A4F; }
.sljy-new-card-sep { color: #C2C9CC; margin: 0 0.25rem; }
.sljy-new-card-cat { font-family: 'Barlow Condensed', 'Archivo', sans-serif; font-weight: 800; font-style: normal; color: #477F84; text-transform: uppercase; }
.sljy-new-card-title { font-family: 'Barlow Condensed', 'Archivo', sans-serif; font-size: 1.4375rem; line-height: 1.22; font-weight: 700; color: #0D1214; margin: 0 0 0.75rem; }
.sljy-new-card-desc { font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; line-height: 1.714; color: #4F575C; margin: 0 0 1.25rem; flex: 1; }
.sljy-new-card-more { font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.9375rem; font-weight: 700; color: #477F84; text-decoration: none; display: inline-flex; align-items: center; gap: 0.375rem; transition: gap .2s ease; }
.sljy-new-card-more:hover { gap: 0.625rem; }

/* ---------- sljy-new-footer 底部导航坞 ---------- */
.sljy-new-footer {
    /* 深色底铺满整行宽度（不受内容容器限制），避免宽屏下两侧露出浅色底形成白边 */
    background: #203F46;
    color: #fff;
}
.sljy-new-footer-top {
    /* 背景交由父级 .sljy-new-footer 铺满，此处只作为内容容器 */
    background: transparent; max-width: 90rem; margin: 0 auto; padding: 3.5rem 2.25rem 2.5rem; display: grid; grid-template-columns: 1.2fr repeat(5, 1fr); gap: 1.5rem; align-items: start;
}
.sljy-new-footer-brand { display: flex; flex-direction: column; gap: 1.5rem; padding-right: 1rem; }
.sljy-new-footer-logo { display: inline-flex; }
.sljy-new-footer-logo img { display: block; height: 2rem; width: auto; }
.sljy-new-footer-tagline { color: #B6CECE; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; line-height: 1.5; }
.sljy-new-footer-social { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.sljy-new-footer-social a { display: inline-flex; align-items: center; justify-content: center; width: 2.125rem; height: 2.125rem; color: #fff; font-size: 1.0625rem; border-radius: 50%; transition: all .3s ease; }
.sljy-new-footer-social a:hover { background: #477F84; transform: translateY(-0.25rem); }
.sljy-new-footer-col { display: flex; flex-direction: column; gap: 0.5rem; color: #fff; position: relative; }
.sljy-new-footer-num { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; }
.sljy-new-footer-col-title { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 600; letter-spacing: 0.04em; margin-bottom: 0.5rem; }
.sljy-new-footer-col-rule { width: 100%; height: 1px; background: rgba(255, 255, 255, 0.08); margin-bottom: 0.75rem; }
.sljy-new-footer-col ul { display: flex; flex-direction: column; gap: 0.625rem; }
.sljy-new-footer-col li a { color: #F6F6F6; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.4; transition: color .2s ease, padding-left .2s ease; display: inline-block; }
.sljy-new-footer-col li a:hover { color: #A4C7C8; padding-left: 0.25rem; }
.sljy-new-footer-place-kicker { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; margin-top: 0.25rem; }
.sljy-new-footer-place { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.25rem; }
.sljy-new-footer-tel { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; font-weight: 500; line-height: 1.5; margin-top: 0.75rem; display: block; }
.sljy-new-footer-mail { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.5rem; display: block; }
.sljy-new-footer-rule { max-width: 82rem; height: 1px; background: rgba(255, 255, 255, 0.42); margin: 0 auto; }
.sljy-new-footer-bottom { background: transparent; max-width: 82rem; margin: 0 auto; padding: 0.75rem 0; display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.sljy-new-footer-copy { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.5; }
.sljy-new-footer-bottom-nav { display: flex; gap: 1.25rem; }
.sljy-new-footer-bottom-nav a { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; transition: color .2s ease; }
.sljy-new-footer-bottom-nav a:hover { color: #A4C7C8; }

@media (max-width: 1023px) {
    .sljy-new-cards-grid { grid-template-columns: repeat(2, 1fr); }
    .sljy-new-footer-top { grid-template-columns: repeat(2, 1fr); padding: 2rem 1rem; }
    .sljy-new-footer-brand { grid-column: 1 / -1; }
    /* 窄屏下分隔线与内容、底栏共用同一条 1rem 侧边距，不再满幅出血 */
    .sljy-new-footer-rule { margin: 0 1rem; }
    /* 窄屏下底部条与上方内容同样留出 1rem 内边距 */
    .sljy-new-footer-bottom { padding: 0.75rem 1rem; }
    .sljy-new-hero-overlay { padding: 0 2rem; }
}
@media (max-width: 640px) {
    .sljy-new-hero { padding: 1.5rem 0 0; }
    .sljy-new-hero-inner, .sljy-new-subnav-inner, .sljy-new-cards-inner { padding-left: 1.25rem; padding-right: 1.25rem; }
    .sljy-new-hero-title { font-size: 2.75rem; line-height: 1.02; }
    .sljy-new-hero-desc { font-size: 1.0625rem; margin-top: 0.875rem; }
    .sljy-new-subnav-inner { gap: 1.5rem; }
    .sljy-new-cards-grid { grid-template-columns: 1fr; }
}

/* 移动端：品牌区独占整行，其余 5 个栏目两列一行；整体收紧间距 */
@media (max-width: 767px) {
    .sljy-new-footer-top {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem 1.25rem;
        padding: 1.5rem 1rem 1.25rem;
    }
    .sljy-new-footer-brand { grid-column: 1 / -1; gap: 0.875rem; padding-right: 0; }
    .sljy-new-footer-tagline { font-size: 0.75rem; line-height: 1.45; }
    .sljy-new-footer-social { gap: 0.375rem; }
    .sljy-new-footer-social a { width: 1.875rem; height: 1.875rem; font-size: 0.9375rem; }

    /* 栏目内部收紧；li 需显式行高，否则继承 body 的 16px/1.6 撑高整行 */
    .sljy-new-footer-col { gap: 0.25rem; }
    .sljy-new-footer-num { line-height: 1.2; }
    .sljy-new-footer-col-title { line-height: 1.2; margin-bottom: 0.25rem; }
    .sljy-new-footer-col-rule { margin-bottom: 0.5rem; }
    .sljy-new-footer-col ul { gap: 0.375rem; }
    .sljy-new-footer-col li { font-size: 0.75rem; line-height: 1.4; }

    .sljy-new-footer-place-kicker,
    .sljy-new-footer-place,
    .sljy-new-footer-tel,
    .sljy-new-footer-mail { line-height: 1.45; }
    .sljy-new-footer-tel { margin-top: 0.5rem; }
    .sljy-new-footer-mail { margin-top: 0.25rem; }

    .sljy-new-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
        padding: 0.625rem 1rem;
    }
    .sljy-new-footer-bottom-nav { gap: 1rem; flex-wrap: wrap; }
}

/* ============================================
   sljy-video-header 顶部导航（News 高亮）
============================================ */
.sljy-video-header {
    position: sticky; top: 0; z-index: 100;
    background: rgba(255, 255, 255, 0.92);
    -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
    border-bottom: 1px solid #E6ECEA;
    transition: background .3s ease, box-shadow .3s ease;
}
.sljy-video-header.is-scrolled { background: #ffffff; box-shadow: 0 0.125rem 0.75rem rgba(20, 40, 45, 0.10); }
.sljy-video-header-inner { max-width: 90rem; height: 5.375rem; margin: 0 auto; padding: 0 2.25rem; display: flex; align-items: center; gap: 1.5rem; }
.sljy-video-header-logo { display: flex; align-items: center; flex: 0 0 auto; margin-right: 2.5rem; }
.sljy-video-header-logo img { display: block; height: 2.125rem; width: auto; }
.sljy-video-header-nav { flex: 1 1 auto; }
.sljy-video-header-nav ul { display: flex; align-items: center; gap: 2.5rem; }
.sljy-video-header-nav-item a {
    position: relative; display: inline-block; padding: 0.5rem 0;
    color: #141A20; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 1rem; font-weight: 700; transition: color .2s ease;
}
.sljy-video-header-nav-item a::after {
    content: ""; position: absolute; left: 50%; bottom: -0.5rem;
    transform: translateX(-50%) scaleX(0); width: 3rem; height: 0.1875rem;
    background: #477F84; border-radius: 0.0938rem; transition: transform .25s ease;
}
.sljy-video-header-nav-item a:hover { color: #294E54; }
.sljy-video-header-nav-item a:hover::after { transform: translateX(-50%) scaleX(1); }
.sljy-video-header-nav-item.is-active a { color: #477F84; }
.sljy-video-header-nav-item.is-active a::after { transform: translateX(-50%) scaleX(1); }
.sljy-video-header-nav-contact a { font-size: 0.9375rem; font-weight: 800; }
.sljy-video-header-utils { display: flex; align-items: center; gap: 0.875rem; color: #141A20; }
.sljy-video-header-search { display: inline-flex; align-items: center; justify-content: center; width: 1.6875rem; height: 1.6875rem; font-size: 1.25rem; color: #141A20; transition: color .2s ease, transform .2s ease; }
.sljy-video-header-search:hover { color: #477F84; transform: scale(1.08); }
.sljy-video-header-divider { width: 1px; height: 1.625rem; background: rgba(20, 30, 35, 0.18); }
.sljy-video-header-lang { display: inline-flex; align-items: center; gap: 0.375rem; color: #141A20; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 500; transition: color .2s ease; }
.sljy-video-header-lang::before { content: ""; display: inline-block; width: 0.5rem; height: 0.5rem; border-radius: 50%; background: #477F84; }
.sljy-video-header-lang:hover { color: #294E54; }
.sljy-video-header-burger { display: none; width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center; font-size: 1.5rem; color: #141A20; }
@media (max-width: 1023px) {
    .sljy-video-header-nav, .sljy-video-header-utils { display: none; }
    .sljy-video-header-burger { display: inline-flex; }
    .sljy-video-header-inner { padding: 0 1.25rem; }
}
@media (max-width: 480px) {
    .sljy-video-header-inner { height: 3.75rem; }
    .sljy-video-header-logo img { height: 1.5rem; }
}

/* ---------- sljy-video-hero 标题（纯文字） ---------- */
.sljy-video-hero { background: #FFFFFF; padding: 4.5rem 0 2.5rem; }
.sljy-video-hero-inner { max-width: 90rem; margin: 0 auto; padding: 0 4rem; }
.sljy-video-hero-title {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-size: 4.375rem; line-height: 1.03; font-weight: 800; letter-spacing: 0.01em;
    color: #0A0D0F; text-transform: uppercase; margin: 0;
}
.sljy-video-hero-title.animated { animation-duration: .8s; }
.sljy-video-hero-desc { margin-top: 1rem; max-width: 32rem; color: #57616B; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 1.1875rem; line-height: 1.58; }
.sljy-video-hero-desc.animated { animation-duration: .8s; animation-delay: .15s; }

/* ---------- sljy-video-subnav News 二级菜单（New / Video 切换） ---------- */
.sljy-video-subnav { background: #FFFFFF; }
.sljy-video-subnav-inner { max-width: 90rem; margin: 0 auto; padding: 2rem 4rem 0; display: flex; gap: 2.5rem; border-bottom: 1px solid #E3E8E8; }
.sljy-video-subnav-tab {
    position: relative; display: inline-block; padding: 0 0 1rem;
    color: #141A20; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 1.0625rem; font-weight: 700; transition: color .2s ease;
}
.sljy-video-subnav-tab::after {
    content: ""; position: absolute; left: 0; bottom: -1px; width: 100%; height: 0.1875rem;
    background: #477F84; border-radius: 0.0938rem; transform: scaleX(0); transform-origin: left; transition: transform .25s ease;
}
.sljy-video-subnav-tab:hover { color: #294E54; }
.sljy-video-subnav-tab:hover::after { transform: scaleX(1); }
.sljy-video-subnav-tab.is-active { color: #477F84; }
.sljy-video-subnav-tab.is-active::after { transform: scaleX(1); }

/* ---------- sljy-video-cards 视频卡片 ---------- */
.sljy-video-cards { background: #FFFFFF; padding: 2.5rem 0 4rem; }
.sljy-video-cards-inner { max-width: 90rem; margin: 0 auto; padding: 0 4rem; }
.sljy-video-grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 2rem; row-gap: 2.25rem; }
.sljy-video-card { background: #FFFFFF; border: 1px solid #E0E5E5; border-radius: 0.25rem; overflow: hidden; display: flex; flex-direction: column; transition: box-shadow .3s ease, transform .3s ease; }
.sljy-video-card:hover { box-shadow: 0 0.5rem 1.5rem rgba(20, 40, 45, 0.10); transform: translateY(-0.25rem); }
.sljy-video-card-media { position: relative; display: block; }
.sljy-video-card-media img { width: 100%; aspect-ratio: 416 / 270; object-fit: cover; display: block; }
.sljy-video-play {
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 3.875rem; height: 3.875rem; border-radius: 50%;
    background: rgba(0, 0, 0, 0.35); border: 2px solid #fff; color: #fff;
    display: flex; align-items: center; justify-content: center; font-size: 1.5rem;
    transition: background .25s ease, transform .25s ease;
}
.sljy-video-card:hover .sljy-video-play { background: rgba(0, 0, 0, 0.5); transform: translate(-50%, -50%) scale(1.06); }
.sljy-video-card-body { display: flex; flex-direction: column; padding: 1.375rem 1.375rem 1.5rem; flex: 1; }
.sljy-video-card-title { font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS', sans-serif; font-size: 1.5rem; line-height: 1.167; font-weight: 600; color: #141A1C; margin: 0 0 0.75rem; }
.sljy-video-card-desc { font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; line-height: 1.571; color: #616B75; margin: 0 0 1.5rem; flex: 1; }
.sljy-video-card-more { font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 700; color: #477F84; text-decoration: none; display: inline-flex; align-items: center; gap: 0.375rem; transition: gap .2s ease; }
.sljy-video-card-more:hover { gap: 0.625rem; }

/* ---------- sljy-video-footer 底部导航坞 ---------- */
.sljy-video-footer {
    /* 深色底铺满整行宽度（不受内容容器限制），避免宽屏下两侧露出浅色底形成白边 */
    background: #203F46;
    color: #fff;
}
.sljy-video-footer-top {
    /* 背景交由父级 .sljy-video-footer 铺满，此处只作为内容容器 */
    background: transparent; max-width: 90rem; margin: 0 auto; padding: 3.5rem 2.25rem 2.5rem; display: grid; grid-template-columns: 1.2fr repeat(5, 1fr); gap: 1.5rem; align-items: start;
}
.sljy-video-footer-brand { display: flex; flex-direction: column; gap: 1.5rem; padding-right: 1rem; }
.sljy-video-footer-logo { display: inline-flex; }
.sljy-video-footer-logo img { display: block; height: 2rem; width: auto; }
.sljy-video-footer-tagline { color: #B6CECE; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; line-height: 1.5; }
.sljy-video-footer-social { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.sljy-video-footer-social a { display: inline-flex; align-items: center; justify-content: center; width: 2.125rem; height: 2.125rem; color: #fff; font-size: 1.0625rem; border-radius: 50%; transition: all .3s ease; }
.sljy-video-footer-social a:hover { background: #477F84; transform: translateY(-0.25rem); }
.sljy-video-footer-col { display: flex; flex-direction: column; gap: 0.5rem; color: #fff; position: relative; }
.sljy-video-footer-num { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; }
.sljy-video-footer-col-title { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 600; letter-spacing: 0.04em; margin-bottom: 0.5rem; }
.sljy-video-footer-col-rule { width: 100%; height: 1px; background: rgba(255, 255, 255, 0.08); margin-bottom: 0.75rem; }
.sljy-video-footer-col ul { display: flex; flex-direction: column; gap: 0.625rem; }
.sljy-video-footer-col li a { color: #F6F6F6; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.4; transition: color .2s ease, padding-left .2s ease; display: inline-block; }
.sljy-video-footer-col li a:hover { color: #A4C7C8; padding-left: 0.25rem; }
.sljy-video-footer-place-kicker { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; margin-top: 0.25rem; }
.sljy-video-footer-place { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.25rem; }
.sljy-video-footer-tel { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; font-weight: 500; line-height: 1.5; margin-top: 0.75rem; display: block; }
.sljy-video-footer-mail { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.5rem; display: block; }
.sljy-video-footer-rule { max-width: 82rem; height: 1px; background: rgba(255, 255, 255, 0.42); margin: 0 auto; }
.sljy-video-footer-bottom { background: transparent; max-width: 82rem; margin: 0 auto; padding: 0.75rem 0; display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.sljy-video-footer-copy { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.5; }
.sljy-video-footer-bottom-nav { display: flex; gap: 1.25rem; }
.sljy-video-footer-bottom-nav a { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; transition: color .2s ease; }
.sljy-video-footer-bottom-nav a:hover { color: #A4C7C8; }

@media (max-width: 1023px) {
    .sljy-video-grid { grid-template-columns: repeat(2, 1fr); }
    .sljy-video-footer-top { grid-template-columns: repeat(2, 1fr); padding: 2rem 1rem; }
    .sljy-video-footer-brand { grid-column: 1 / -1; }
    /* 窄屏下分隔线与内容、底栏共用同一条 1rem 侧边距，不再满幅出血 */
    .sljy-video-footer-rule { margin: 0 1rem; }
    /* 窄屏下底部条与上方内容同样留出 1rem 内边距 */
    .sljy-video-footer-bottom { padding: 0.75rem 1rem; }
}
@media (max-width: 640px) {
    .sljy-video-hero { padding: 2.5rem 0 1.5rem; }
    .sljy-video-hero-inner { padding: 0 1.25rem; }
    .sljy-video-hero-title { font-size: 2.5rem; line-height: 1.02; }
    .sljy-video-hero-desc { font-size: 1rem; }
    .sljy-video-subnav-inner { padding: 1.5rem 1.25rem 0; gap: 1.5rem; }
    .sljy-video-cards-inner { padding: 0 1.25rem; }
    .sljy-video-grid { grid-template-columns: 1fr; }
}

/* 移动端：品牌区独占整行，其余 5 个栏目两列一行；整体收紧间距 */
@media (max-width: 767px) {
    .sljy-video-footer-top {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem 1.25rem;
        padding: 1.5rem 1rem 1.25rem;
    }
    .sljy-video-footer-brand { grid-column: 1 / -1; gap: 0.875rem; padding-right: 0; }
    .sljy-video-footer-tagline { font-size: 0.75rem; line-height: 1.45; }
    .sljy-video-footer-social { gap: 0.375rem; }
    .sljy-video-footer-social a { width: 1.875rem; height: 1.875rem; font-size: 0.9375rem; }

    /* 栏目内部收紧；li 需显式行高，否则继承 body 的 16px/1.6 撑高整行 */
    .sljy-video-footer-col { gap: 0.25rem; }
    .sljy-video-footer-num { line-height: 1.2; }
    .sljy-video-footer-col-title { line-height: 1.2; margin-bottom: 0.25rem; }
    .sljy-video-footer-col-rule { margin-bottom: 0.5rem; }
    .sljy-video-footer-col ul { gap: 0.375rem; }
    .sljy-video-footer-col li { font-size: 0.75rem; line-height: 1.4; }

    .sljy-video-footer-place-kicker,
    .sljy-video-footer-place,
    .sljy-video-footer-tel,
    .sljy-video-footer-mail { line-height: 1.45; }
    .sljy-video-footer-tel { margin-top: 0.5rem; }
    .sljy-video-footer-mail { margin-top: 0.25rem; }

    .sljy-video-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
        padding: 0.625rem 1rem;
    }
    .sljy-video-footer-bottom-nav { gap: 1rem; flex-wrap: wrap; }
}

/* ============================================
   sljy-contact-header 顶部导航（Contact Us 高亮）
============================================ */
.sljy-contact-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(255, 255, 255, 0.92);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid #E6ECEA;
    transition: background .3s ease, box-shadow .3s ease;
}
.sljy-contact-header.is-scrolled {
    background: #ffffff;
    box-shadow: 0 0.125rem 0.75rem rgba(20, 40, 45, 0.10);
}
.sljy-contact-header-inner {
    max-width: 90rem;
    height: 5.375rem;
    margin: 0 auto;
    padding: 0 2.25rem;
    display: flex;
    align-items: center;
    gap: 1.5rem;
}
.sljy-contact-header-logo { display: flex; align-items: center; flex: 0 0 auto; margin-right: 2.5rem; }
.sljy-contact-header-logo img { display: block; height: 2.125rem; width: auto; }
.sljy-contact-header-nav { flex: 1 1 auto; }
.sljy-contact-header-nav ul { display: flex; align-items: center; gap: 2.5rem; }
.sljy-contact-header-nav-item a {
    position: relative;
    display: inline-block;
    padding: 0.5rem 0;
    color: #141A20;
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    transition: color .2s ease;
}
.sljy-contact-header-nav-item a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -0.5rem;
    transform: translateX(-50%) scaleX(0);
    width: 3rem; height: 0.1875rem;
    background: #477F84;
    border-radius: 0.0938rem;
    transition: transform .25s ease;
}
.sljy-contact-header-nav-item a:hover { color: #294E54; }
.sljy-contact-header-nav-item a:hover::after { transform: translateX(-50%) scaleX(1); }
.sljy-contact-header-nav-item.is-active a { color: #477F84; }
.sljy-contact-header-nav-item.is-active a::after { transform: translateX(-50%) scaleX(1); }
.sljy-contact-header-nav-contact a { font-size: 0.9375rem; font-weight: 800; }
.sljy-contact-header-utils { display: flex; align-items: center; gap: 0.875rem; color: #141A20; }
.sljy-contact-header-search {
    display: inline-flex; align-items: center; justify-content: center;
    width: 1.6875rem; height: 1.6875rem; font-size: 1.25rem; color: #141A20;
    transition: color .2s ease, transform .2s ease;
}
.sljy-contact-header-search:hover { color: #477F84; transform: scale(1.08); }
.sljy-contact-header-divider { width: 1px; height: 1.625rem; background: rgba(20, 30, 35, 0.18); }
.sljy-contact-header-lang {
    display: inline-flex; align-items: center; gap: 0.375rem; color: #141A20;
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 500;
    transition: color .2s ease;
}
.sljy-contact-header-lang::before {
    content: ""; display: inline-block; width: 0.5rem; height: 0.5rem;
    border-radius: 50%; background: #477F84;
}
.sljy-contact-header-lang:hover { color: #294E54; }
.sljy-contact-header-burger {
    display: none; width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center;
    font-size: 1.5rem; color: #141A20;
}

/* ---------- hero 标题区 ---------- */
.sljy-contact-hero { background: #FFFFFF; padding: 3.5rem 0 1.5rem; }
.sljy-contact-hero-inner { max-width: 90rem; margin: 0 auto; padding: 0 4rem; }
.sljy-contact-hero-title {
    font-family: 'Barlow Condensed', 'Archivo', 'HarmonyOS Sans', sans-serif;
    font-size: 4.875rem; line-height: 1.0; font-weight: 800; letter-spacing: -0.0128em;
    color: #0A0F12; margin: 0; text-transform: uppercase;
}
.sljy-contact-hero-desc {
    font-family: 'Archivo', 'HarmonyOS Sans', sans-serif;
    color: #4D575E; font-size: 1.25rem; line-height: 2rem; margin-top: 1rem;
    max-width: 33.375rem;
}
.sljy-contact-hero-desc p { margin: 0; }

/* ---------- main 双卡片 ---------- */
.sljy-contact-main { padding: 1rem 0 3rem; }
.sljy-contact-main-inner {
    max-width: 90rem; margin: 0 auto; padding: 0 4rem;
    display: grid; grid-template-columns: 38.125rem 1fr; gap: 1.875rem; align-items: stretch;
}

/* 左侧信息卡 */
.sljy-contact-info-card {
    background: #FFFFFF; border: 1px solid #D6DEDE; border-radius: 0.125rem;
    padding: 2.5rem; min-height: 51.75rem;
}
.sljy-contact-info-title {
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 2.25rem; line-height: 1.1; font-weight: 800; color: #0A0F12;
    margin: 0; text-transform: uppercase;
}
/* 设计稿：色条 42×3，距标题行盒底 22 */
.sljy-contact-info-accent {
    display: block; width: 2.625rem; height: 0.1875rem; background: #477F84;
    border-radius: 0.0938rem; margin-top: 1.25rem;
}
.sljy-contact-info-list { margin-top: 0.5625rem; }
.sljy-contact-info-item {
    position: relative; display: flex; align-items: center; gap: 1.875rem;
    padding: 2.25rem 0;
}
/* 设计稿分隔线只覆盖文字列：从图标列右侧（58+30=88）到内容区右缘 */
.sljy-contact-info-item:not(:last-child)::after {
    content: ""; position: absolute; left: 5.5rem; right: 0; bottom: 0;
    height: 1px; background: #D6DEDE;
}
/* 约束 #10：图标图片通过伪元素实现，不使用 img 标签
   素材已按不透明内容裁成正方形（原图带 15% 透明内边距会画小一圈） */
.sljy-contact-info-item::before {
    content: ""; flex: 0 0 3.625rem; width: 3.625rem; height: 3.625rem;
    background-repeat: no-repeat; background-position: center; background-size: contain;
}
.sljy-contact-info-item.is-address::before { background-image: url(../images/contact-icon-address.webp); }
.sljy-contact-info-item.is-phone::before { background-image: url(../images/contact-icon-phone.webp); }
.sljy-contact-info-item.is-whatsapp::before { background-image: url(../images/contact-icon-whatsapp.webp); }
.sljy-contact-info-text { flex: 1 1 auto; }
.sljy-contact-info-text p {
    margin: 0; color: #4F5961; font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 1rem; line-height: 1.5rem;
}

/* 右侧表单卡 */
.sljy-contact-form-card {
    background: #FFFFFF; border: 1px solid #D6DEDE; border-radius: 0.125rem;
    padding: 2.5rem; min-height: 51.75rem;
}
.sljy-contact-form-title {
    font-family: 'Barlow Condensed', 'Archivo', sans-serif;
    font-size: 2.125rem; line-height: 1.1; font-weight: 800; color: #0A0F12;
    margin: 0; text-transform: uppercase;
}
/* 设计稿：色条 42×3，距标题行盒底 22；表单距色条底 38 */
.sljy-contact-form-accent {
    display: block; width: 2.625rem; height: 0.1875rem; background: #477F84;
    border-radius: 0.0938rem; margin-top: 1.5rem;
}
.sljy-contact-form { margin-top: 2.25rem; max-width: 35rem; }
.sljy-contact-form-row { margin-bottom: 1.75rem; }
.sljy-contact-form-row--2 { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.sljy-contact-label {
    display: block; color: #0A0F12; font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.9375rem; font-weight: 600; line-height: 1.25rem; margin-bottom: 0.5625rem;
}
.sljy-contact-req { color: #FF0004; font-weight: 700; }
.sljy-contact-input {
    width: 100%; height: 3.5rem; border: 1px solid #D6DEDE; border-radius: 0.125rem;
    padding: 0 1.125rem; font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-size: 0.875rem; color: #0A0F12; background: #FFFFFF; outline: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.sljy-contact-input:focus { border-color: #477F84; box-shadow: 0 0 0 0.1875rem rgba(71, 127, 132, 0.12); }
.sljy-contact-input::placeholder { color: #9EA8B0; }
.sljy-contact-field { position: relative; }
.sljy-contact-field--select .sljy-contact-select {
    appearance: none; -webkit-appearance: none; -moz-appearance: none; cursor: pointer;
}
/* 约束 #10：下拉箭头用伪元素绘制（设计稿是细窄箭头「⌄」而非实心三角，且垂直居中） */
.sljy-contact-field--select::after {
    content: ""; position: absolute; right: 1.375rem; bottom: 1.5rem;
    width: 0.4375rem; height: 0.4375rem;
    border-right: 0.09375rem solid #616B75;
    border-bottom: 0.09375rem solid #616B75;
    transform: rotate(45deg);
    pointer-events: none;
}
.sljy-contact-textarea { height: 8.125rem; padding: 1.125rem; resize: none; line-height: 1.5rem; }
.sljy-contact-form-actions { display: flex; gap: 1.875rem; margin-top: 4rem; }
.sljy-contact-form-submit {
    flex: 0 0 16.125rem; height: 3.625rem; border: none; border-radius: 0.125rem;
    background: linear-gradient(220deg, #A0C2C4 0%, #294E54 100%); color: #FFFFFF;
    font-family: 'Archivo', 'HarmonyOS', sans-serif; font-weight: 700; font-size: 1.0625rem;
    letter-spacing: 0.02em; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
.sljy-contact-form-submit:hover { transform: translateY(-0.125rem); box-shadow: 0 0.5rem 1.25rem rgba(41, 78, 84, 0.25); }
.sljy-contact-form-reset {
    flex: 1 1 auto; height: 3.625rem; border: 1px solid #477F84; border-radius: 0.125rem;
    background: #FFFFFF; color: #477F84; font-family: 'Archivo', 'HarmonyOS', sans-serif;
    font-weight: 700; font-size: 1.0625rem; letter-spacing: 0.02em; cursor: pointer;
    transition: background .2s ease, color .2s ease;
}
.sljy-contact-form-reset:hover { background: #477F84; color: #FFFFFF; }
/* 反馈消息：空闲时不占用高度（设计稿卡片高 = min-height 基准高）
   有消息时才撑开，避免无谓地比设计稿高出一截 */
.sljy-contact-form-msg {
    margin-top: 1rem; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.9375rem;
    color: #477F84; min-height: 0;
}

/* ---------- map 地图 ---------- */
.sljy-contact-map { padding: 0 0 4rem; }
.sljy-contact-map-inner { max-width: 90rem; margin: 0 auto; padding: 0 4rem; }
.sljy-contact-map-img {
    width: 100%; height: 26.25rem; object-fit: cover; display: block;
    border: 1px solid #D6DEDE; border-radius: 0.125rem;
}

/* ---------- footer 深色导航坞 ---------- */
.sljy-contact-footer {
    /* 深色底铺满整行宽度（不受内容容器限制），避免宽屏下两侧露出浅色底形成白边 */
    background: #203F46;
    color: #fff;
}
.sljy-contact-footer-top {
    /* 背景交由父级 .sljy-contact-footer 铺满，此处只作为内容容器 */
    background: transparent; max-width: 90rem; margin: 0 auto; padding: 3.5rem 2.25rem 2.5rem; display: grid; grid-template-columns: 1.2fr repeat(5, 1fr); gap: 1.5rem; align-items: start;
}
.sljy-contact-footer-brand { display: flex; flex-direction: column; gap: 1.5rem; padding-right: 1rem; }
.sljy-contact-footer-logo { display: inline-flex; }
.sljy-contact-footer-logo img { display: block; height: 2rem; width: auto; }
.sljy-contact-footer-tagline { color: #B6CECE; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; line-height: 1.5; }
.sljy-contact-footer-social { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.sljy-contact-footer-social a {
    display: inline-flex; align-items: center; justify-content: center;
    width: 2.125rem; height: 2.125rem; color: #fff; font-size: 1.0625rem; border-radius: 50%;
    transition: all .3s ease;
}
.sljy-contact-footer-social a:hover { background: #477F84; transform: translateY(-0.25rem); }
.sljy-contact-footer-col { display: flex; flex-direction: column; gap: 0.5rem; color: #fff; position: relative; }
.sljy-contact-footer-num { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; }
.sljy-contact-footer-col-title { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.875rem; font-weight: 600; letter-spacing: 0.04em; margin-bottom: 0.5rem; }
.sljy-contact-footer-col-rule { width: 100%; height: 1px; background: rgba(255, 255, 255, 0.08); margin-bottom: 0.75rem; }
.sljy-contact-footer-col ul { display: flex; flex-direction: column; gap: 0.625rem; }
.sljy-contact-footer-col li a { color: #F6F6F6; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.4; transition: color .2s ease, padding-left .2s ease; display: inline-block; }
.sljy-contact-footer-col li a:hover { color: #A4C7C8; padding-left: 0.25rem; }
.sljy-contact-footer-place-kicker { color: #A4C7C8; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.0545em; margin-top: 0.25rem; }
.sljy-contact-footer-place { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.25rem; }
.sljy-contact-footer-tel { color: #fff; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; font-weight: 500; line-height: 1.5; margin-top: 0.75rem; display: block; }
.sljy-contact-footer-mail { color: #BDD3D3; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.8125rem; line-height: 1.5; margin-top: 0.5rem; display: block; }
.sljy-contact-footer-rule { max-width: 82rem; height: 1px; background: rgba(255, 255, 255, 0.42); margin: 0 auto; }
.sljy-contact-footer-bottom { background: transparent; max-width: 82rem; margin: 0 auto; padding: 0.75rem 0; display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.sljy-contact-footer-copy { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; line-height: 1.5; }
.sljy-contact-footer-bottom-nav { display: flex; gap: 1.25rem; }
.sljy-contact-footer-bottom-nav a { color: #6B7A73; font-family: 'Archivo', 'HarmonyOS', sans-serif; font-size: 0.75rem; transition: color .2s ease; }
.sljy-contact-footer-bottom-nav a:hover { color: #A4C7C8; }

/* ---------- 响应式 ---------- */
@media (max-width: 1023px) {
    .sljy-contact-header-nav, .sljy-contact-header-utils { display: none; }
    .sljy-contact-header-burger { display: inline-flex; }
    .sljy-contact-header-inner { padding: 0 1.25rem; }
    .sljy-contact-hero-inner, .sljy-contact-main-inner, .sljy-contact-map-inner { padding: 0 2rem; }
    .sljy-contact-main-inner { grid-template-columns: 1fr; }
    .sljy-contact-info-card, .sljy-contact-form-card { min-height: 0; }
    .sljy-contact-footer-top { grid-template-columns: repeat(2, 1fr); padding: 2rem 1rem; }
    .sljy-contact-footer-brand { grid-column: 1 / -1; }
    /* 窄屏下分隔线与内容、底栏共用同一条 1rem 侧边距，不再满幅出血 */
    .sljy-contact-footer-rule { margin: 0 1rem; }
    /* 窄屏下底部条与上方内容同样留出 1rem 内边距 */
    .sljy-contact-footer-bottom { padding: 0.75rem 1rem; }
}
@media (max-width: 640px) {
    .sljy-contact-hero { padding: 2.5rem 0 1rem; }
    .sljy-contact-hero-inner { padding: 0 1.25rem; }
    .sljy-contact-hero-title { font-size: 3rem; line-height: 1.02; }
    .sljy-contact-hero-desc { font-size: 1rem; line-height: 1.6rem; }
    .sljy-contact-main-inner { padding: 0 1.25rem; }
    .sljy-contact-info-card, .sljy-contact-form-card { padding: 1.5rem; }
    .sljy-contact-form-row--2 { grid-template-columns: 1fr; gap: 0; }
    .sljy-contact-form-row--2 .sljy-contact-field:first-child { margin-bottom: 1.5rem; }
    .sljy-contact-form { max-width: 100%; }
    .sljy-contact-form-actions { flex-direction: column; gap: 1rem; }
    .sljy-contact-form-submit, .sljy-contact-form-reset { flex: 1 1 auto; width: 100%; }
    .sljy-contact-map { padding: 0 0 2.5rem; }
    .sljy-contact-map-inner { padding: 0 1.25rem; }
    .sljy-contact-map-img { height: 15rem; }
}

/* 移动端：品牌区独占整行，其余 5 个栏目两列一行；整体收紧间距 */
@media (max-width: 767px) {
    .sljy-contact-footer-top {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem 1.25rem;
        padding: 1.5rem 1rem 1.25rem;
    }
    .sljy-contact-footer-brand { grid-column: 1 / -1; gap: 0.875rem; padding-right: 0; }
    .sljy-contact-footer-tagline { font-size: 0.75rem; line-height: 1.45; }
    .sljy-contact-footer-social { gap: 0.375rem; }
    .sljy-contact-footer-social a { width: 1.875rem; height: 1.875rem; font-size: 0.9375rem; }

    /* 栏目内部收紧；li 需显式行高，否则继承 body 的 16px/1.6 撑高整行 */
    .sljy-contact-footer-col { gap: 0.25rem; }
    .sljy-contact-footer-num { line-height: 1.2; }
    .sljy-contact-footer-col-title { line-height: 1.2; margin-bottom: 0.25rem; }
    .sljy-contact-footer-col-rule { margin-bottom: 0.5rem; }
    .sljy-contact-footer-col ul { gap: 0.375rem; }
    .sljy-contact-footer-col li { font-size: 0.75rem; line-height: 1.4; }

    .sljy-contact-footer-place-kicker,
    .sljy-contact-footer-place,
    .sljy-contact-footer-tel,
    .sljy-contact-footer-mail { line-height: 1.45; }
    .sljy-contact-footer-tel { margin-top: 0.5rem; }
    .sljy-contact-footer-mail { margin-top: 0.25rem; }

    .sljy-contact-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
        padding: 0.625rem 1rem;
    }
    .sljy-contact-footer-bottom-nav { gap: 1rem; flex-wrap: wrap; }
}


/* ============================================
   全站容器统一（≥1024 生效）
   ------------------------------------------------------------
   把各页原先「90rem 外壳 / 82rem 正文」两套限宽收敛成一个变量，
   并统一左右内边距 → 全站内容左右边缘落在同一条竖线上。
   只覆盖 max-width 与左右内边距，上下内边距与 ≤1023 的排版保持原样。
============================================ */
@media (min-width: 1024px) {
    /* 首页 */
    .sljy-index-header-inner,
    .sljy-index-footer-top,
    .sljy-index-certificates-rail,
    .sljy-index-about,
    .sljy-index-footer-rule,
    .sljy-index-footer-bottom {
        max-width: var(--sljy-max);
        padding-left: var(--sljy-gutter);
        padding-right: var(--sljy-gutter);
    }

    /* 首页·产品板块 */
    .sljy-index-products-search,
    .sljy-index-products-rail,
    .sljy-index-products-stage,
    .sljy-index-products-pager {
        max-width: var(--sljy-max);
        padding-left: var(--sljy-gutter);
        padding-right: var(--sljy-gutter);
    }

    /* 首页·案例/流程/证书/资讯 */
    .sljy-index-cases-head,
    .sljy-index-cases-viewport,
    .sljy-index-cases-foot,
    .sljy-index-process-head,
    .sljy-index-process-rule,
    .sljy-index-process-grid,
    .sljy-index-certificates-title,
    .sljy-index-news-kicker,
    .sljy-index-news-head,
    .sljy-index-news-rule,
    .sljy-index-news-grid {
        max-width: var(--sljy-max);
        padding-left: var(--sljy-gutter);
        padding-right: var(--sljy-gutter);
    }

    /* 产品分类 products */
    .sljy-products-header-inner,
    .sljy-products-hero-inner,
    .sljy-products-categories-inner,
    .sljy-products-featured-inner,
    .sljy-products-inquiry-inner,
    .sljy-products-footer-top,
    .sljy-products-footer-rule,
    .sljy-products-footer-bottom {
        max-width: var(--sljy-max);
        padding-left: var(--sljy-gutter);
        padding-right: var(--sljy-gutter);
    }

    /* 施工能力 construction */
    .sljy-construction-header-inner,
    .sljy-construction-hero-inner,
    .sljy-construction-footer-top,
    .sljy-construction-footer-rule,
    .sljy-construction-footer-bottom {
        max-width: var(--sljy-max);
        padding-left: var(--sljy-gutter);
        padding-right: var(--sljy-gutter);
    }

    /* 关于 about */
    .sljy-about-header-inner,
    .sljy-about-hero-inner,
    .sljy-about-stats-inner,
    .sljy-about-capacity-inner,
    .sljy-about-factory-inner,
    .sljy-about-partners-inner,
    .sljy-about-footer-top,
    .sljy-about-footer-rule,
    .sljy-about-footer-bottom {
        max-width: var(--sljy-max);
        padding-left: var(--sljy-gutter);
        padding-right: var(--sljy-gutter);
    }

    /* 新品 new */
    .sljy-new-header-inner,
    .sljy-new-hero-inner,
    .sljy-new-subnav-inner,
    .sljy-new-cards-inner,
    .sljy-new-footer-top,
    .sljy-new-footer-rule,
    .sljy-new-footer-bottom {
        max-width: var(--sljy-max);
        padding-left: var(--sljy-gutter);
        padding-right: var(--sljy-gutter);
    }

    /* 视频 video */
    .sljy-video-header-inner,
    .sljy-video-hero-inner,
    .sljy-video-subnav-inner,
    .sljy-video-cards-inner,
    .sljy-video-footer-top,
    .sljy-video-footer-rule,
    .sljy-video-footer-bottom {
        max-width: var(--sljy-max);
        padding-left: var(--sljy-gutter);
        padding-right: var(--sljy-gutter);
    }

    /* 联系 contact */
    .sljy-contact-header-inner,
    .sljy-contact-hero-inner,
    .sljy-contact-main-inner,
    .sljy-contact-map-inner,
    .sljy-contact-footer-top,
    .sljy-contact-footer-rule,
    .sljy-contact-footer-bottom {
        max-width: var(--sljy-max);
        padding-left: var(--sljy-gutter);
        padding-right: var(--sljy-gutter);
    }

    /* 该 section 是「整幅浅色底 + 自带 4rem 内边距」的结构，
       会与内部内容块的容器内边距叠加成双重内缩（内容被压到 1168px）→
       宽屏下把左右内边距完全交给内容块，section 只负责铺底色 */
    .sljy-index-news {
        padding-left: 0;
        padding-right: 0;
    }

    /* 分隔线：背景只画在内容区，避免内边距把线拉长 */
    .sljy-index-process-rule,
    .sljy-index-news-rule,
    .sljy-index-footer-rule,
    .sljy-products-footer-rule,
    .sljy-construction-footer-rule,
    .sljy-about-footer-rule,
    .sljy-new-footer-rule,
    .sljy-video-footer-rule,
    .sljy-contact-footer-rule { background-clip: content-box; }
}

/* ============================================
   产品板块（首页）：宽屏下让卡片与箭头跟随新的内容区
   · 卡片由「固定 12.875rem」改为等分流式 → 6 张正好铺满内容区
     （1440 视口下每张仍为 206px，与改造前逐像素一致）
   · 箭头改用「内边距 - 自身半径 - 间隙」定位，
     重写原 left:-2.75rem（那是相对 82rem 容器外侧算的，容器变宽后会跑出屏幕）
============================================ */
@media (min-width: 1440px) {
    .sljy-index-products-card { flex: 1 1 0; min-width: 0; }
}
@media (min-width: 1200px) {
    .sljy-index-products-rail-prev { left: calc(var(--sljy-gutter) - 3.125rem); }
    .sljy-index-products-rail-next { right: calc(var(--sljy-gutter) - 3.125rem); }
}

/* 翻页器与舞台中栏（机器）同轴：设计稿中两者中心均在内容区 628/1296 处，
   故在居中基础上整体左移 1.25rem（= 右内边距 +2.5rem） */
@media (min-width: 1024px) {
    .sljy-index-products-pager { padding-right: calc(var(--sljy-gutter) + 2.5rem); }
}


/* Product navigation dropdown (shared by all desktop headers). */
nav[aria-label="Primary"] .sljy-products-nav-item { position: relative; }
nav[aria-label="Primary"] .sljy-products-nav-dropdown {
    display: block; position: absolute; top: 100%; left: -1.25rem; z-index: 110;
    width: 17rem; max-height: min(30rem, 70vh); overflow-y: auto;
    padding: .55rem 0; margin: 0; background: #fff; border: 1px solid #e2e9e8;
    box-shadow: 0 1rem 2rem rgba(23, 48, 53, .13);
    opacity: 0; visibility: hidden; transform: translateY(.5rem);
    transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
}
nav[aria-label="Primary"] .sljy-products-nav-item:hover > .sljy-products-nav-dropdown,
nav[aria-label="Primary"] .sljy-products-nav-item:focus-within > .sljy-products-nav-dropdown {
    opacity: 1; visibility: visible; transform: translateY(0);
}
nav[aria-label="Primary"] .sljy-products-nav-dropdown li { display: block; width: 100%; }
nav[aria-label="Primary"] .sljy-products-nav-dropdown a {
    display: block; width: 100%; padding: .9rem 1.25rem; color: #314047;
    font: 600 .875rem/1.35 'Archivo', sans-serif; border-bottom: 1px solid #eef1f0;
}
nav[aria-label="Primary"] .sljy-products-nav-dropdown li:last-child a { border-bottom: 0; }
nav[aria-label="Primary"] .sljy-products-nav-dropdown a:hover,
nav[aria-label="Primary"] .sljy-products-nav-dropdown a:focus-visible { background: linear-gradient(110deg, #294e54, #8eb3b6); color: white; }
nav[aria-label="Primary"] .sljy-products-nav-dropdown a::after { display: none; }

/* Shared product pages: header/footer retain the exact existing products component. */
.sljy-product-category-page, .sljy-product-detail-page { color: #151c21; background: #fff; }
.sljy-product-category-page *, .sljy-product-detail-page * { box-sizing: border-box; }
.sljy-product-category-container, .sljy-product-detail-container { max-width: 90rem; margin: 0 auto; padding: 0 3.5rem; }
.sljy-product-eyebrow { color: #52878d; font: 700 .7rem/1.5 'Archivo', sans-serif; letter-spacing: .015em; text-transform: uppercase; }
.sljy-product-eyebrow a { color: inherit; }
.sljy-product-category-page h1, .sljy-product-category-page h2, .sljy-product-category-page h3,
.sljy-product-detail-page h1, .sljy-product-detail-page h2, .sljy-product-detail-page h3 {
    font-family: 'Barlow Condensed', 'Archivo', sans-serif; font-weight: 800; line-height: 1.06; text-transform: uppercase;
}
.sljy-product-category-hero { background: #f7f9f8; padding: 2.2rem 0 1.4rem; }
.sljy-product-category-hero h1 { margin: 1.8rem 0 .35rem; font-size: clamp(2.5rem, 4vw, 3.8rem); }
.sljy-product-category-hero p:not(.sljy-product-eyebrow) { color: #77818a; font: .95rem/1.6 'Archivo', sans-serif; }
.sljy-product-category-hero .sljy-product-category-container { padding-bottom: 2rem; border-bottom: 1px solid #e3e9e8; }
.sljy-product-category-content { padding: 3rem 0 5rem; background: #fff; }
.sljy-product-category-layout { display: grid; grid-template-columns: 17rem minmax(0, 1fr); gap: 2.25rem; }
.sljy-product-category-sidebar { align-self: stretch; padding: 1.5rem 1.35rem; border: 1px solid #e3eae9; }
.sljy-product-category-sidebar h2 { margin: 1rem 0 .2rem; font-size: 1.55rem; }
.sljy-product-sidebar-count { color: #818a91; font-size: .85rem; }
.sljy-product-sidebar-nav { display: flex; flex-direction: column; margin-top: 2rem; }
.sljy-product-sidebar-nav a { display: flex; justify-content: space-between; align-items: center; min-height: 3.4rem; padding: .75rem .9rem; color: #303a3e; font: 600 .78rem/1.35 'Archivo', sans-serif; border-bottom: 1px solid #e3eae9; }
.sljy-product-sidebar-nav a:hover { color: #477f84; }
.sljy-product-sidebar-nav a.is-active { background: linear-gradient(110deg, #2a4f55, #91b7b9); color: #fff; border-color: transparent; }
.sljy-product-sidebar-nav span { color: #52878d; font-size: .7rem; }
.sljy-product-sidebar-nav .is-active span { color: #fff; }
.sljy-product-category-results-head { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: .4rem 0 2rem; margin-bottom: 2rem; border-bottom: 1px solid #e3eae9; }
.sljy-product-category-results-head h2 { margin: .75rem 0 .25rem; font-size: 2rem; }
.sljy-product-category-results-head p:not(.sljy-product-eyebrow) { color: #7d8790; font-size: .84rem; line-height: 1.5; }
.sljy-product-search { display: flex; flex: 0 0 22rem; height: 3rem; }
.sljy-product-search input { min-width: 0; flex: 1; padding: 0 1rem; border: 1px solid #e0e7e5; outline-color: #477f84; font: .8rem 'Archivo', sans-serif; }
.sljy-product-search button, .sljy-product-card-action, .sljy-product-detail-inquiry { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; background: linear-gradient(110deg, #294e54, #93babc); color: #fff; font: 700 .82rem 'Archivo', sans-serif; white-space: nowrap; }
.sljy-product-search button { border: 0; padding: 0 1.25rem; cursor: pointer; }
.sljy-product-card-action:hover, .sljy-product-detail-inquiry:hover, .sljy-product-search button:hover { background: #294e54; color: #fff; }
.sljy-product-model-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.sljy-product-card { display: flex; flex-direction: column; border: 1px solid #e9eeec; background: #fff; min-width: 0; }
.sljy-product-card-media { height: 16rem; display: flex; align-items: center; justify-content: center; background: #f6f8f7; }
.sljy-product-card-media img { display: block; max-width: 72%; max-height: 85%; width: auto; height: auto; object-fit: contain; filter: grayscale(1); opacity: .72; }
.sljy-product-card-body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 1.3rem; }
.sljy-product-card-body h3 { font: 800 1.7rem/1.1 'Archivo', sans-serif; margin: .75rem 0 .45rem; }
.sljy-product-card-body > p:not(.sljy-product-eyebrow) { color: #747f89; font-size: .82rem; }
.sljy-product-card-body .sljy-product-card-note { color: #9aa4ad !important; font-size: .73rem !important; margin: auto 0 .7rem; padding-top: 1rem; }
.sljy-product-card-specs { display: flex; gap: 2rem; margin-top: 1rem; }
.sljy-product-card-specs span { display: flex; flex-direction: column; gap: .25rem; }
.sljy-product-card-specs b { color: #52878d; font-size: .65rem; }
.sljy-product-card-specs strong { font-size: .85rem; }
.sljy-product-card-action { min-width: 10rem; min-height: 2.6rem; padding: .5rem 1rem; }
.sljy-product-card-body h3 a { color: inherit; }
.sljy-product-card-body h3 a:hover { color: #477f84; }
.sljy-product-search-empty { padding: 2rem 0; color: #747f89; }
.sljy-product-search-empty[hidden] { display: none; }
.sljy-product-sidebar-back { color: #477f84 !important; }
.sljy-products-cat:focus-visible, .sljy-product-card a:focus-visible, .sljy-product-sidebar-nav a:focus-visible { outline: 2px solid #477f84; outline-offset: 3px; }

/* Product hero: full-width composition shared by the specification column and image stage. */
.sljy-product-detail-hero { padding: clamp(1.6rem, 2.1vw, 2.7rem) 0 clamp(2rem, 3vw, 4rem); background: #fff; overflow: hidden; }
.sljy-product-detail-hero .sljy-product-detail-container {
    max-width: none; padding-inline: clamp(2rem, 6.75vw, 8.75rem);
    display: grid; grid-template-columns: 38% minmax(0, 62%);
    height: clamp(41rem, 48vw, 61rem);
}
.sljy-product-detail-info { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: clamp(1.6rem, 2vw, 2.7rem) clamp(2rem, 3.1vw, 4rem) clamp(1rem, 1vw, 1.4rem) 0; }
.sljy-product-detail-info h1 { font-size: clamp(4rem, 4.65vw, 6.1rem); line-height: .95; margin: 0 0 clamp(1.1rem, 1.4vw, 1.9rem); }
.sljy-product-detail-subtitle { margin: 0; color: #737e88; font-size: clamp(1rem, 1.08vw, 1.4rem); }
.sljy-product-detail-rule { width: clamp(3.5rem, 3.6vw, 4.7rem); height: .3rem; background: #477f84; margin: clamp(0rem, 2.7vw, 0.5rem) 0 clamp(0rem, 2vw, 0.5rem); }
.sljy-product-detail-info > .sljy-product-eyebrow { color: #548b91; font: 700 clamp(.73rem, .72vw, .95rem) 'Archivo', sans-serif; margin: 0; }
.sljy-product-spec-list { width: 100%; margin: clamp(.45rem, .7vw, .95rem) 0 2rem; }
.sljy-product-spec-row { display: grid; gap: .55rem; border-bottom: 1px solid #e4eae8; padding: clamp(.9rem, 1vw, 1.35rem) 0; }
.sljy-product-spec-row dt { color: #747e88; font: 700 clamp(.72rem, .69vw, .9rem) 'Archivo', sans-serif; }
.sljy-product-spec-row dd { margin: 0; font: 700 clamp(1.4rem, 1.55vw, 2rem)/1.3 'Archivo', sans-serif; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.sljy-product-spec-row:last-child { border: 0; }
.sljy-product-spec-row--text dd { font-size: clamp(.95rem, 1.06vw, 1.35rem); line-height: 1.5; }
.sljy-product-detail-inquiry { min-width: clamp(13rem, 14.6vw, 19rem); min-height: clamp(3.5rem, 3.5vw, 4.6rem); padding: .75rem 1rem; margin-top: auto; align-self: flex-start; font-size: clamp(.83rem, .82vw, 1.05rem); }
.sljy-product-detail-gallery { min-width: 0; min-height: 0; height: 100%; display: flex; flex-direction: column; }
.sljy-product-detail-gallery-head { display: flex; justify-content: space-between; align-items: center; padding: 0 clamp(1rem, 5.1vw, 6.7rem) 0 clamp(1.4rem, 5.6vw, 7.3rem); color: #52878d; font: 700 clamp(.72rem, .69vw, .9rem) 'Archivo', sans-serif; }
.sljy-product-detail-gallery-head b { color: #8b949f; font-weight: 700; }
.sljy-product-detail-stage {
    position: relative; flex: 1 1 0; min-height: 0;
    display: flex; align-items: center; justify-content: center;
    background: url('../images/product-bg.webp') left top / 110% 95% no-repeat;
}
.sljy-product-detail-stage img { position: relative; display: block; width: auto; height: 73%; max-width: 75%; object-fit: contain; filter: grayscale(1); transform: translate(9%, -9%); }
.sljy-product-detail-stage img.is-changing { animation: sljy-product-view-enter .38s ease-out; }
@keyframes sljy-product-view-enter { from { opacity: .12; } to { opacity: 1; } }
.sljy-product-detail-arrow { position: absolute; z-index: 2; top: 49%; display: grid; place-items: center; width: clamp(2.25rem, 3vw, 3.25rem); height: clamp(2.25rem, 3vw, 3.25rem); border: 1px solid #dce5e4; border-radius: 50%; background: rgba(255, 255, 255, .85); color: #3f797e; font: 300 clamp(1.6rem, 2.2vw, 2.5rem)/1 'Archivo', sans-serif; cursor: pointer; opacity: .65; transform: translateY(-50%); transition: opacity .2s, background-color .2s, border-color .2s; }
.sljy-product-detail-arrow--prev { left: 2%; }
.sljy-product-detail-arrow--next { right: 1%; }
.sljy-product-detail-arrow:is(:hover, :focus-visible) { opacity: 1; background: #fff; border-color: #477f84; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
    .sljy-product-detail-stage img.is-changing { animation: none; }
    .sljy-product-detail-arrow { transition: none; }
}
.sljy-product-detail-thumbs { flex: 0 0 auto; display: flex; justify-content: center; align-items: center; gap: clamp(1rem, 3.3vw, 4.4rem); padding-top: clamp(.3rem, 1vw, 1rem); transform: translateX(clamp(1rem, 3.2vw, 4.2rem)); }
.sljy-product-detail-thumbs button { cursor: pointer; display: flex; align-items: center; justify-content: center; width: clamp(6rem, 8.5vw, 11rem); height: clamp(4.7rem, 5.45vw, 7.1rem); padding: .45rem; border: 1px solid #e3e8e6; background: #fff; transition: border-color .2s ease; }
.sljy-product-detail-thumbs button:hover, .sljy-product-detail-thumbs button:focus-visible { border-color: #477f84; }
.sljy-product-detail-thumbs button.is-active { border: 2px solid #477f84; }
.sljy-product-detail-thumbs img { display: block; max-width: 100%; max-height: 100%; object-fit: contain; }
.sljy-product-detail-description { padding: 4.5rem 0 5.5rem; background: #f8faf9; }
.sljy-product-detail-description-head { max-width: 49rem; margin-bottom: 2rem; }
.sljy-product-detail-description-head h2 { font-size: 2.8rem; margin: .75rem 0 1rem; }
.sljy-product-detail-description-head > p:last-child { color: #6e7981; line-height: 1.7; }
/* One root namespace for all HTML generated by the product rich-text editor. */
.sljy-product-detail-richtext { max-width: 70rem; color: #3e4b50; font: 1rem/1.8 'Archivo', 'HarmonyOS', sans-serif; overflow-x: auto; }
.sljy-product-detail-richtext :is(h2, h3, h4) { color: #172125; margin: 2rem 0 .9rem; line-height: 1.3; }
.sljy-product-detail-richtext :is(p, ul, ol, blockquote, table, img) { margin: 0 0 1.5rem; }
.sljy-product-detail-richtext :is(ul, ol) { padding-left: 1.5rem; }
.sljy-product-detail-richtext li { margin-bottom: .35rem; }
.sljy-product-detail-richtext a { color: #477f84; text-decoration: underline; }
.sljy-product-detail-richtext img { max-width: 100%; height: auto; }
.sljy-product-detail-richtext table { border-collapse: collapse; min-width: 38rem; width: 100%; background: white; }
.sljy-product-detail-richtext :is(th, td) { border: 1px solid #dbe4e1; padding: .9rem 1rem; text-align: left; vertical-align: top; }
.sljy-product-detail-richtext th { background: #eaf0ee; font-weight: 700; }
.sljy-product-detail-richtext blockquote { border-left: 3px solid #477f84; padding: .3rem 1.2rem; color: #52656b; }

@media (min-width: 768px) and (max-width: 1100px) {
    .sljy-product-detail-hero .sljy-product-detail-container { grid-template-columns: 39% minmax(0, 61%); height: 38rem; }
    .sljy-product-detail-info { padding-right: 2rem; }
    .sljy-product-detail-stage img { height: 72%; }
}
@media (max-width: 1100px) {
    .sljy-product-category-layout { grid-template-columns: 14rem minmax(0, 1fr); gap: 1.5rem; }
    .sljy-product-model-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sljy-product-category-results-head { flex-direction: column; align-items: stretch; }
    .sljy-product-search { flex: none; width: 100%; max-width: 28rem; }
}
@media (max-width: 767px) {
    .sljy-product-category-container, .sljy-product-detail-container { padding: 0 1.25rem; }
    .sljy-product-category-hero { padding-top: 1.5rem; }
    .sljy-product-category-layout { display: flex; flex-direction: column; }
    .sljy-product-category-sidebar { padding: 1rem; }
    .sljy-product-sidebar-nav { flex-direction: row; overflow-x: auto; margin-top: 1rem; gap: .4rem; }
    .sljy-product-sidebar-nav a { flex: 0 0 auto; min-height: 2.6rem; border: 1px solid #e3eae9; }
    .sljy-product-model-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
    .sljy-product-card-media { height: 11rem; }
    .sljy-product-card-body { padding: .9rem; }
    .sljy-product-card-body h3 { font-size: 1.15rem; }
    .sljy-product-card-action { min-width: 0; width: 100%; font-size: .7rem; }
    .sljy-product-detail-hero .sljy-product-detail-container { display: flex; flex-direction: column; height: auto; min-height: 0; gap: 2.5rem; padding: 0 1.25rem; }
    .sljy-product-detail-gallery { order: -1; height: auto; min-height: 0; }
    .sljy-product-detail-gallery-head { padding: 0 .25rem; }
    .sljy-product-detail-stage { height: clamp(18rem, 68vw, 31rem); flex: none; background-size: 100% 100%; }
    .sljy-product-detail-thumbs { transform: none; }
    .sljy-product-detail-stage img { height: 77%; max-width: 72%; transform: translateY(-5%); }
    .sljy-product-detail-arrow { opacity: .85; width: 2.25rem; height: 2.25rem; }
    .sljy-product-detail-arrow--prev { left: 0; }
    .sljy-product-detail-arrow--next { right: 0; }
    .sljy-product-detail-info { padding: 0; }
    .sljy-product-detail-info h1 { font-size: clamp(3.8rem, 12vw, 5.5rem); }
    .sljy-product-detail-inquiry { margin-top: 1rem; }
    .sljy-product-detail-description-head h2 { font-size: 2.2rem; }
}
@media (max-width: 480px) {
    .sljy-product-model-grid { grid-template-columns: 1fr; }
    .sljy-product-detail-stage { height: 19rem; }
    .sljy-product-detail-thumbs { gap: .7rem; }
    .sljy-product-detail-thumbs button { width: 5.4rem; }
}

/* Database-backed product catalogue refinements. */
.sljy-product-list-page { color: #151c21; background: #fff; }
.sljy-product-list-page * { box-sizing: border-box; }
.sljy-product-list-page h1, .sljy-product-list-page h2, .sljy-product-list-page h3 { font-family: "Barlow Condensed", "Archivo", sans-serif; font-weight: 800; line-height: 1.06; }
.sljy-product-card:focus-visible { outline: 2px solid #477f84; outline-offset: 3px; }
.sljy-product-detail-thumbs { flex-wrap: wrap; }

#modelCount { margin-right: .22em; }
.sljy-product-detail-stage:focus-visible { outline: 2px solid #477f84; outline-offset: 3px; }
.sljy-product-spec-row dd { overflow-wrap: anywhere; }

/* 首页后台板块：保留原布局，兼容富文本及独立隐藏公司介绍。 */
.sljy-index-about-desc > :last-child { margin-bottom: 0; }
.sljy-index-about-desc p + p { margin-top: 0.75rem; }
.sljy-index-about--partners-only .sljy-index-about-partners { grid-row: 1; padding-top: 0; }
.sljy-index-certificates button { border: 0; padding: 0; background: transparent; cursor: pointer; }
.sljy-index-certificates button:focus-visible { outline: 2px solid #477F84; outline-offset: 4px; }
.sljy-index-certificates-sub { position: relative; z-index: 1; margin: 0.5rem auto 0; color: #616E69; text-align: center; max-width: 36rem; }

/* Homepage product system: published catalog controls, not static demo specifications. */
.sljy-index-products--catalog .sljy-index-products-search { height: auto; min-height: 3.875rem; }
.sljy-index-products-search-select { appearance: none; border: 0; background: transparent; color: inherit; font: inherit; width: 100%; min-width: 0; padding: .75rem 1rem .75rem 0; cursor: pointer; }
.sljy-index-products--catalog .sljy-index-products-search-input input { width: 100%; min-width: 0; border: 0; background: transparent; padding: .75rem 0; color: #1A1C21; font: .875rem 'Archivo', 'HarmonyOS', sans-serif; }
.sljy-index-products--catalog .sljy-index-products-search-input input::placeholder { color: #9CA1AB; }
.sljy-index-products--catalog .sljy-index-products-search-btn { border: 0; cursor: pointer; }
.sljy-index-products--catalog .sljy-index-products-search-chip { width: auto; min-width: 5.5rem; padding: 0 .6rem; font-size: .8125rem; white-space: nowrap; }
.sljy-index-products-search-results { max-width: var(--sljy-max); margin: 1rem auto 0; padding: .75rem var(--sljy-gutter); }
.sljy-index-products-search-results[hidden] { display: none; }
.sljy-index-products-search-status { color: #477F84; font-size: .875rem; margin-bottom: .75rem; }
.sljy-index-products-search-links { display: flex; flex-wrap: wrap; gap: .75rem; }
.sljy-index-products-search-links a { padding: .75rem 1rem; border: 1px solid #CFDEDE; color: #294E54; background: #fff; font-size: .875rem; }
.sljy-index-products-search-links a:hover { border-color: #477F84; background: #EEF4F4; }
.sljy-index-products--catalog .sljy-index-products-stage { grid-template-columns: 24% 44% 28%; column-gap: 2%; }
.sljy-index-products--catalog .sljy-index-products-stage-title { overflow-wrap: anywhere; }
.sljy-index-products--catalog .sljy-index-products-stage-desc { width: auto; max-width: 100%; margin-bottom: 2rem; }
.sljy-index-products-stage-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 1.25rem; }
.sljy-index-products-category-link { font: 600 .8125rem 'Archivo', sans-serif; color: #477F84; }
.sljy-index-products--catalog .sljy-index-products-stage-img { max-width: 100%; object-fit: contain; }
.sljy-index-products--catalog .sljy-index-products-stage-right { position: static; height: auto; display: flex; flex-direction: column; gap: 2rem; margin-top: 2.5rem; }
.sljy-index-products--catalog .sljy-index-products-anno { position: relative; top: auto; overflow-wrap: anywhere; }
.sljy-index-products--catalog .sljy-index-products-anno-title { line-height: 1.25; }
.sljy-index-products--catalog .sljy-index-products-anno-line { left: -32%; top: .65rem; width: 32%; }
.sljy-index-products--catalog .sljy-index-products-anno-dot { left: -32%; top: .4rem; }
.sljy-index-products--catalog .sljy-index-products-pager button { border: 1px solid #E0E5EB; cursor: pointer; }
.sljy-index-products--catalog button:disabled { opacity: .4; cursor: default; }
.sljy-index-products--catalog :is(a, button, input, select):focus-visible { outline: 2px solid #477F84; outline-offset: 3px; }
@media (min-width: 1200px) {
    .sljy-index-products--catalog .sljy-index-products-card { flex: 1 1 0; min-width: 0; }
}
@media (max-width: 1023px) {
    .sljy-index-products--catalog .sljy-index-products-stage { grid-template-columns: 1fr; gap: 1.5rem; }
    .sljy-index-products--catalog .sljy-index-products-search-input { flex: 1 1 0; }
    .sljy-index-products--catalog .sljy-index-products-stage-right { margin-top: 0; }
    .sljy-index-products-search-results { padding-left: 1rem; padding-right: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
    .sljy-index-products--catalog .sljy-index-products-stage-center:hover img { transform: none; }
}

/* Backend-driven cases: preserve the existing layout with real, longer project titles. */
.sljy-index-cases--catalog .sljy-index-cases-card { background: #203f46; }
.sljy-index-cases--catalog img.sljy-index-cases-card-bg { width: 100%; height: 100%; object-fit: cover; }
.sljy-index-cases--catalog .sljy-index-cases-card-title { line-height: 1.15; overflow-wrap: anywhere; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.sljy-index-cases--catalog .sljy-index-cases-card-meta { margin-top: 1rem; line-height: 1.4; }
.sljy-index-cases-links { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; }
.sljy-index-cases--catalog button { appearance: none; border: 0; background: transparent; padding: 0; cursor: pointer; }
.sljy-index-cases--catalog button:focus-visible, .sljy-index-cases--catalog a:focus-visible { outline: 2px solid #3b6b70; outline-offset: 4px; }
.sljy-index-cases--catalog .sljy-index-cases-pager-num.is-active { font-weight: 700; text-decoration: underline; text-underline-offset: .3em; }
.sljy-construction-slide-cap { overflow-wrap: anywhere; }
.sljy-cases-empty { max-width: var(--sljy-max); margin: 3rem auto; padding: 2rem 1rem; text-align: center; color: #315b61; }
@media (max-width: 767px) {
    .sljy-index-cases--catalog .sljy-index-cases-card-title { font-size: 1.6rem; }
    .sljy-index-cases--catalog .sljy-index-cases-card-meta { margin-top: .75rem; }
    .sljy-index-cases--catalog .sljy-index-cases-card-cap { max-height: calc(100% - 6.5rem); overflow: hidden; }
}

/* PROJECT CASES now uses video summaries, which may be longer than region labels. */
.sljy-index-cases--catalog .sljy-index-cases-card-meta { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }

/* Shared contact fields from /site/contact. */
.sljy-contact-info-text a { color: inherit; overflow-wrap: anywhere; }
.sljy-contact-info-text a:hover { text-decoration: underline; }
.sljy-contact-form-msg:empty { display: none; }
.sljy-contact-form-msg.is-error { color: #c42b2b; }
.sljy-contact-form-submit:disabled { cursor: wait; opacity: .65; }
.sljy-contact-form-reset:disabled { opacity: .65; }
footer [class$="-footer-place"], footer [class$="-footer-mail"], footer [class$="-footer-tel"] { overflow-wrap: anywhere; }
footer a[class$="-footer-mail"], footer a[class$="-footer-tel"] { display: block; }
footer .site-footer-contact-person { margin-top: .75rem; }
footer a[class$="-footer-mail"]:hover, footer a[class$="-footer-tel"]:hover { text-decoration: underline; }

/* Product inquiry pending state. */
.sljy-products-inquiry-submit:disabled { cursor: wait; opacity: .65; }
.sljy-products-inquiry-reset:disabled { opacity: .65; }

/* Shared navigation product search */
html.sljy-search-lock, body.sljy-search-lock { overflow: hidden; }
html.sljy-search-lock .sljy-mob-nav, html.sljy-search-lock .sljy-mob-overlay { visibility: hidden; }
.sljy-site-search {
    width: min(46rem, calc(100% - 2.5rem)); max-width: none; max-height: 85vh;
    margin: auto; padding: 0; border: 0; border-top: 4px solid #477f84;
    background: #fff; color: #141a20; box-shadow: 0 1.5rem 5rem rgba(0, 0, 0, .2);
    font-family: 'Archivo', 'HarmonyOS', sans-serif;
}
.sljy-site-search:not([open]) { display: none; }
.sljy-site-search::backdrop { background: rgba(15, 31, 34, .65); }
.sljy-site-search-panel { position: relative; padding: 3rem; }
.sljy-site-search-close {
    position: absolute; top: 1rem; right: 1rem; width: 2.5rem; height: 2.5rem;
    border: 0; background: transparent; color: #477f84; font-size: 1.4rem; cursor: pointer;
}
.sljy-site-search-panel h2 { margin: .7rem 0 1rem; font-size: clamp(1.8rem, 4vw, 2.6rem); line-height: 1.1; }
.sljy-site-search-hint { margin-bottom: 1.8rem; color: #747f89; font-size: .95rem; line-height: 1.6; }
.sljy-site-search-label { display: block; margin-bottom: .6rem; font-size: .8rem; color: #477f84; }
.sljy-site-search-control { display: flex; border: 1px solid #cfdede; background: #fff; }
.sljy-site-search-control:focus-within { border-color: #477f84; box-shadow: 0 0 0 2px rgba(71, 127, 132, .15); }
.sljy-site-search-control input { flex: 1; width: 0; min-width: 0; padding: 1rem; border: 0; outline: none; background: transparent; font: inherit; color: #141a20; }
.sljy-site-search-control button { flex: none; padding: 1rem 1.3rem; border: 0; background: #477f84; color: #fff; font: 600 .8rem 'Archivo', sans-serif; cursor: pointer; }
.sljy-site-search-control button span { margin-left: 1rem; }
.sljy-site-search-control button:hover { background: #326369; }
.sljy-site-search-close:focus-visible, .sljy-site-search-control button:focus-visible, .sljy-site-search-back:focus-visible,
.sljy-site-search-results .sljy-product-card:focus-visible { outline: 2px solid #477f84; outline-offset: 3px; }
.sljy-site-search-results { padding: 1rem 0 4rem; }
.sljy-site-search-results-head { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-bottom: 2rem; }
.sljy-site-search-results-head > div { min-width: 0; }
.sljy-site-search-results-head h2 { margin: .7rem 0; font-size: 1.7rem; line-height: 1.3; overflow-wrap: anywhere; }
.sljy-site-search-back { display: inline-block; color: #477f84; font-size: .9rem; }
.sljy-site-search-results-head .sljy-site-search-form { flex: 0 0 26rem; }
@media (max-width: 767px) {
    .sljy-site-search-panel { padding: 3rem 1.25rem 1.5rem; }
    .sljy-site-search-control input { padding: .9rem .7rem; font-size: .85rem; }
    .sljy-site-search-control button { padding: .9rem .8rem; font-size: .75rem; }
    .sljy-site-search-control button span { margin-left: .4rem; }
    .sljy-site-search-results-head { flex-direction: column; align-items: stretch; gap: 1.5rem; }
    .sljy-site-search-results-head .sljy-site-search-form { flex: none; }
    .sljy-site-search-results .sljy-product-model-grid { grid-template-columns: 1fr; }
}

/* Shared quick-contact rail; expanded initially, collapses on downward scroll. */
.sljy-contact-rail { display: flex; flex-direction: column-reverse; align-items: flex-end; gap: 10px; position: fixed; right: 18px; top: 50%; transform: translateY(-50%); z-index: 900; font-family: 'Archivo', sans-serif; }
.sljy-contact-rail-items { display: none; flex-direction: column; width: 68px; padding: 5px; background: #fff; border: 1px solid #dce6e5; border-radius: 8px; box-shadow: 0 8px 28px rgba(30, 65, 70, .14); }
.sljy-contact-rail-item { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; width: 56px; min-height: 57px; padding: 8px 2px; background: transparent; color: #294e54; border: 0; border-bottom: 1px solid #e8eeee; border-radius: 3px; font: inherit; text-decoration: none; cursor: pointer; transition: background .18s, color .18s; }
.sljy-contact-rail-item:last-child { border-bottom: 0; }
.sljy-contact-rail-item > .iconfont { font-size: 24px; line-height: 1; }
.sljy-contact-rail-person { display: none; }
.sljy-contact-rail-label { font-size: 9px; line-height: 1.3; font-weight: 600; white-space: nowrap; }
.sljy-contact-rail-item:hover, .sljy-contact-rail-item:focus-visible { color: #fff; background: #477f84; }
.sljy-contact-rail-item:focus-visible, .sljy-contact-rail-toggle:focus-visible { outline: 2px solid #294e54; outline-offset: 3px; }
.sljy-contact-rail-tooltip { position: absolute; right: calc(100% + 14px); top: 50%; transform: translateY(-50%); width: max-content; max-width: min(250px, calc(100vw - 106px)); padding: 10px 14px; color: #fff; background: #294e54; border-radius: 4px; box-shadow: 0 4px 16px rgba(30, 65, 70, .15); text-align: left; font-size: 12px; line-height: 1.6; font-weight: 400; overflow-wrap: anywhere; opacity: 0; visibility: hidden; pointer-events: none; }
.sljy-contact-rail-tooltip::after { content: ''; position: absolute; left: 100%; top: calc(50% - 5px); border: 5px solid transparent; border-left-color: #294e54; }
.sljy-contact-rail-tooltip strong, .sljy-contact-rail-tooltip span { display: block; }
.sljy-contact-rail-item:hover .sljy-contact-rail-tooltip, .sljy-contact-rail-item:focus-visible .sljy-contact-rail-tooltip { opacity: 1; visibility: visible; }
.sljy-contact-rail.is-open .sljy-contact-rail-items { display: flex; }
.sljy-contact-rail-toggle { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; width: 68px; height: 54px; padding: 6px 2px; border: 0; border-radius: 6px; background: #294e54; color: #fff; box-shadow: 0 4px 18px rgba(30, 65, 70, .2); cursor: pointer; font: 600 10px/1.2 'Archivo', sans-serif; transition: background .18s; }
.sljy-contact-rail-toggle:hover { background: #477f84; }
.sljy-contact-rail-toggle .iconfont { font-size: 23px; line-height: 1; transform: rotate(180deg); transition: transform .18s; }
.sljy-contact-rail.is-open .sljy-contact-rail-toggle .iconfont { transform: rotate(0deg); }
.sljy-contact-rail-status { position: absolute; top: 100%; right: 0; width: 240px; max-width: calc(100vw - 32px); margin-top: 10px; padding: 12px 14px; background: #fff; color: #294e54; border: 1px solid #dce6e5; box-shadow: 0 4px 20px rgba(30, 65, 70, .14); border-radius: 4px; font-size: 12px; line-height: 1.5; }
.sljy-nav-lock .sljy-contact-rail, .sljy-contact-rail.is-chat-open { display: none; }
@media (max-width: 767px) {
    .sljy-contact-rail { top: auto; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); right: 12px; transform: none; }
    .sljy-contact-rail-toggle { width: 58px; height: 58px; }
    .sljy-contact-rail-items { display: none; position: absolute; bottom: calc(100% + 10px); right: 0; width: 58px; padding: 4px; max-height: calc(100dvh - 110px); overflow-y: auto; }
    .sljy-contact-rail-item { width: 48px; min-height: 46px; flex-shrink: 0; gap: 4px; padding: 6px 0; }
    .sljy-contact-rail-item > .iconfont { font-size: 21px; }
    .sljy-contact-rail-label { font-size: 8px; }
    .sljy-contact-rail-person { display: block; max-width: 44px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 9px; line-height: 1.2; }
    .sljy-contact-rail-tooltip { display: none; }
    .sljy-contact-rail-status { top: auto; bottom: calc(100% + 10px); right: 70px; width: min(225px, calc(100vw - 98px)); margin: 0; }
}
@media (prefers-reduced-motion: reduce) { .sljy-contact-rail-item, .sljy-contact-rail-toggle, .sljy-contact-rail-toggle .iconfont { transition: none; } }
