/*修改nav样式*/
body{
    background: #ffffff;
}

:root {
    --nav-glass-background: rgba(255, 255, 255, 0.84);
    --nav-glass-blur: blur(18px);
}

/* ==================== 首页 2026 视觉改版 ==================== */
.home-page {
    min-width: 320px;
    background: #fff;
    color: #313240;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

.home-page main {
    overflow: hidden;
}

.home-page .home-content-width {
    width: min(1400px, calc(100% - 80px));
    margin-right: auto;
    margin-left: auto;
}

.home-hero {
    display: block;
    width: 100%;
    aspect-ratio: 1920 / 860;
    background: url('/themes/zgblog/resources/images/index-banner/new-banner.png') no-repeat center;
    background-size: cover;
}

/* 首页数据 */
.home-metrics {
    height: 264px;
    background: #fff;
}

.home-metrics-inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    align-items: center;
    width: min(1400px, calc(100% - 80px));
    height: 100%;
    margin: 0 auto;
}

.home-metric {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #444553;
}

.home-metric:not(:last-child)::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: 84px;
    content: "";
    background: #c7c8d1;
    transform: translateY(-50%);
}

.home-metric strong {
    font-size: 86px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: -2px;
}

.home-metric sup {
    position: relative;
    top: -0.15em;
    margin-left: 4px;
    font-size: 44px;
    font-weight: 600;
}

.home-metric span {
    margin-top: 6px;
    font-size: 30px;
    line-height: 1;
}

/* 通用分区标题 */
.home-section-heading {
    height: 84px;
    border-bottom: 1px solid #cbd0d8;
    /* 锚点定位：滚动后标题停靠在导航栏（70px）底部下方 20px 处 */
    scroll-margin-top: 90px;
}

/* 锚点平滑滚动 */
html {
    scroll-behavior: smooth;
}

.home-section-heading h2 {
    position: relative;
    display: inline-flex;
    align-items: baseline;
    height: 84px;
    margin: 0;
    color: #323746;
    font-size: 32px;
    font-weight: 400;
    line-height: 84px;
}

.home-section-heading h2::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 4px;
    content: "";
    background: #2d99df;
}

/* 标题锚点链接：继承标题样式，点击平滑滚动到导航栏下方 */
.home-section-heading h2 a {
    display: inline-flex;
    align-items: baseline;
    color: inherit;
    text-decoration: none;
}

.home-section-heading h2 span,
.company-image h2 span {
    margin-left: 20px;
    color: #b7bdc8;
    font-size: 20px;
    font-weight: 300;
}

/* 业务板块 */
.business-section,
.partner-section,
.culture-section {
    margin-top: 30px;
}

.business-showcase {
    display: grid;
    grid-template-columns: 1fr 1fr;
    height: 380px;
    margin-top: 20px;
    overflow: hidden;
    transition: grid-template-columns 0.45s ease;
}

.business-card {
    position: relative;
    display: block;
    overflow: hidden;
    color: #fff;
    transition: all 0.4s ease;
}

.business-environment-card {
    background: url('/themes/zgblog/resources/images/首页_slices/image_00000@2x.png') no-repeat center;
    background-size: cover;
}

/* 激活卡片后再展开对应区域 */
.business-showcase:has(.business-environment-card.active) {
    grid-template-columns: 5fr 2fr;
}

.business-showcase:has(.business-energy-card.active) {
    grid-template-columns: 2fr 5fr;
}

/* 默认状态：仅激活卡片显示描述 */
.business-copy {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    padding: 30px 40px;
    background: rgba(100, 170, 220, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
}

/* 首次刷新：两侧均显示模块标题和描述 */
.business-showcase.is-initial-state .business-copy {
    opacity: 1;
}

.business-showcase.is-initial-state .business-title {
    opacity: 0;
}

/* 激活状态：当前卡片隐藏标题，显示描述 */
.business-card.active .business-copy {
    opacity: 1;
}

/* 默认状态：显示居中标题 */
.business-title {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    display: block;
    width: 100%;
    padding: 0 24px;
    color: #fff;
    font-size: 38px;
    font-weight: 300;
    line-height: 1.2;
    text-align: center;
    transform: translate(-50%, -50%);
    opacity: 1;
    transition: opacity 0.35s ease, transform 0.35s ease;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
}

/* 激活状态：标题隐藏 */
.business-card.active .business-title {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.92);
}

.business-copy h3,
.business-energy-card h3 {
    margin: 0;
    color: #fff;
    font-size: 36px;
    font-weight: 400;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);
}

.business-copy p {
    width: 94%;
    margin-top: 20px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 22px;
    line-height: 1.8;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);
}

.business-arrow {
    display: inline-block;
    margin-top: auto;
    font-size: 52px;
    font-weight: 200;
    line-height: 1;
    color: #fff;
    transition: transform 0.6s ease 0.4s;
}

/* 激活状态：箭头缓慢向前移动 20px */
.business-card.active .business-arrow {
    transform: translateX(20px);
}

.business-energy-card {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    background-image: linear-gradient(rgba(7, 54, 95, 0.26), rgba(4, 30, 65, 0.48)),
        url('/themes/zgblog/resources/images/index-banner/new-banner.png');
    background-repeat: no-repeat;
    background-position: 91% 73%;
    background-size: auto 270%;
}

.business-energy-card .business-copy {
    background: rgba(15, 110, 190, 0.7);
}

/* 企业文化 */
.culture-section {
    margin-top: 30px;
}

.culture-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-top: 20px;
    overflow: visible;
}

.culture-card {
    position: relative;
    aspect-ratio: 440 / 260;
    min-width: 0;
    padding: 0;
    overflow: hidden;
    color: inherit;
    font: inherit;
    text-align: left;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 2;
    box-shadow: 0 28px 56px rgba(26, 39, 58, 0.28);
}

.culture-card::after {
    position: absolute;
    inset: 0;
    content: "";
    background: rgba(20, 35, 54, 0.52);
}

.culture-card h3 {
    position: absolute;
    top: 34%;
    left: 40px;
    z-index: 1;
    margin: 0;
    color: #fff;
    font-size: 56px;
    font-weight: 300;
    transform: translateY(-50%) scale(0.72);
    transform-origin: left center;
}

.culture-card-desc {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px 30px;
    z-index: 1;
    opacity: 1;
    transform: translateY(0);
}

.culture-card-desc::before {
    display: block;
    width: 100%;
    height: 1px;
    margin-bottom: 12px;
    content: "";
    background: rgba(255, 255, 255, 0.62);
}

.culture-card-desc p {
    margin: 0;
    color: #fff;
    font-size: 18px;
    line-height: 1.6;
}

.culture-vision {
    background-image: url('/themes/zgblog/resources/images/首页_slices/图层 12@2x.png');
}

.culture-mission {
    background-image: url('/themes/zgblog/resources/images/首页_slices/创成式填充@2x.png');
}

.culture-values {
    background-image: url('/themes/zgblog/resources/images/首页_slices/图层 16@2x.png');
}

/* 公司介绍 */
.company-section {
    margin-top: 60px;
}

.company-showcase {
    position: relative;
    height: 500px;
}

.company-image {
    position: relative;
    width: 1300px;
    max-width: calc(100% - 100px);
    height: 500px;
    background: url('/themes/zgblog/resources/images/首页_slices/图层 5@2x.png') no-repeat center;
    background-size: cover;
}

.company-image h2 {
    margin: 0;
    padding: 34px 60px;
    color: #fff;
    font-size: 32px;
    font-weight: 400;
}

.company-image h2 span {
    color: rgba(255, 255, 255, 0.7);
}

.company-copy {
    position: absolute;
    top: 130px;
    right: 0;
    width: 924px;
    min-height: 320px;
    padding: 48px 50px;
    color: rgba(255, 255, 255, 0.92);
    background: rgba(83, 156, 203, 0.82);
}

.company-copy p {
    margin: 0 0 30px;
    font-size: 18px;
    line-height: 1.8;
}

.company-copy p:last-child {
    margin-bottom: 0;
}

/* 合作客户 */
.partner-section {
    margin-top: 30px;
}

.partner-grid {
    margin-top: 60px;
    margin-bottom: 96px;
}

.partner-list {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 1px;
    margin: 0;
    padding: 1px;
    list-style: none;
    background: #e1e3e7;
}

.partner-list li {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 120px;
    background: #fff;
}

.partner-list img {
    display: block;
    width: 80%;
    height: 80px;
    object-fit: contain;
}

.partner-carousel {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) 36px;
    gap: 0 12px;
    align-items: center;
}

.partner-viewport {
    position: relative;
    min-width: 0;
    height: 243px;
    overflow: hidden;
}

.partner-page {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .45s ease, visibility 0s linear .45s;
}

.partner-page.is-active {
    opacity: 1;
    visibility: visible;
    transition: opacity .45s ease;
}

.partner-arrow {
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid #d5dbe2;
    border-radius: 50%;
    background: #fff;
    color: #4179a6;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}

.partner-arrow:hover,
.partner-arrow:focus-visible {
    border-color: #2d94df;
    color: #2d94df;
}

.partner-dots {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 16px;
}

.partner-dot {
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #c8d0d8;
    cursor: pointer;
}

.partner-dot.is-active { background: #2d94df; }

@media (min-width: 721px) and (max-width: 1024px) {
    .partner-list { grid-template-columns: repeat(4, 1fr); }
    .partner-list li { height: 100px; }
    .partner-viewport { height: 203px; }
}

@media (prefers-reduced-motion: reduce) {
    .partner-page, .partner-page.is-active { transition: none; }
}

/* 首页页脚 */
.home-footer {
    position: relative;
    z-index: 1;
    padding: 0;
    color: #d8d9e0;
    background: #575867;
}

.home-footer-main {
    display: flex;
    justify-content: space-between;
    width: min(1400px, calc(100% - 80px));
    min-height: 308px;
    margin: 0 auto;
    padding-top: 54px;
}

.home-footer-contact {
    display: flex;
    flex-direction: column;
}

.home-footer-contact strong,
.home-footer-phone {
    color: #fff;
    font-size: 44px;
    font-weight: 600;
    line-height: 1;
}

.home-footer-phone:hover {
    color: #fff;
}

.home-footer-contact span {
    margin-top: 12px;
    color: #9294a1;
    font-size: 22px;
}

.home-footer-contact p {
    margin-top: 88px;
    color: #d7d8df;
    font-size: 22px;
}

.home-footer-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.home-footer-nav {
    display: flex;
    gap: 40px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.home-footer-nav a {
    color: #9ea0ac;
    font-size: 20px;
}

.home-footer-nav a:hover {
    color: #fff;
}

.home-footer-qr {
    width: 120px;
    height: 120px;
    margin-top: 54px;
    object-fit: contain;
}

.home-footer-copyright {
    height: 54px;
    color: #777988;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    font-size: 16px;
    line-height: 54px;
    text-align: center;
}

@media (max-width: 720px) {
    .home-page .home-content-width,
    .home-metrics-inner {
        width: min(100% - 28px, 560px);
    }

    .home-hero {
        aspect-ratio: 750 / 438;
        background-position: center;
    }

    .home-metrics {
        height: 96px;
        padding: 0;
    }

    .home-metric strong {
        font-size: clamp(25px, 7.6vw, 34px);
        letter-spacing: -1px;
    }

    .home-metric sup {
        margin-left: 2px;
        font-size: 13px;
    }

    .home-metric span {
        margin-top: 4px;
        font-size: 12px;
    }

    .home-metric:not(:last-child)::after {
        height: 38px;
    }

    .home-section-heading {
        height: auto;
        border-bottom: 0;
    }

    .home-section-heading h2 {
        display: flex;
        height: auto;
        padding-left: 14px;
        font-size: 25px;
        line-height: 1.25;
        white-space: nowrap;
    }

    .home-section-heading h2::after {
        top: 5px;
        right: auto;
        bottom: auto;
        width: 4px;
        height: 24px;
        border-radius: 4px;
    }

    .home-section-heading h2 span,
    .company-image h2 span {
        margin-left: 12px;
        font-size: 17px;
    }

    .business-showcase,
    .business-showcase:has(.business-energy-card.active),
    .business-showcase:has(.business-energy-card:hover) {
        display: flex;
        grid-template-columns: none;
        gap: 10px;
        width: calc(100% - 14px);
        height: 190px;
        margin-top: 18px;
        margin-right: 0;
        margin-left: 14px;
        padding-right: 14px;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        /* touch-action 不设 pan-x，避免阻止页面垂直滚动 */
    }

    .business-showcase::-webkit-scrollbar {
        display: none;
    }

    .business-card {
        flex: 0 0 calc(100% - 56px);
        min-height: 190px;
        scroll-snap-align: center;
        scroll-snap-stop: always;
    }

    .business-title {
        display: none;
    }

    .business-copy,
    .business-card.active .business-copy {
        padding: 18px 22px 14px;
        opacity: 1;
    }

    .business-copy h3,
    .business-energy-card h3 {
        font-size: 22px;
    }

    .business-copy p {
        display: -webkit-box;
        width: 100%;
        margin-top: 9px;
        overflow: hidden;
        font-size: 12px;
        line-height: 1.7;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
    }

    .business-arrow {
        font-size: 28px;
    }

    .business-energy-card {
        min-height: 190px;
        background-position: 72% 69%;
        background-size: auto 285%;
    }

    .business-section,
    .culture-section,
    .partner-section {
        margin-top: 34px;
    }

    .culture-grid {
        display: flex;
        grid-template-columns: none;
        align-items: center;
        gap: 10px;
        height: 142px;
        margin-top: 20px;
        overflow: visible;
    }

    .culture-card,
    .culture-card.is-active {
        flex: 1 1 0;
        height: 112px;
        aspect-ratio: auto;
        transform: none;
        box-shadow: none;
        transition: flex 0.4s ease, height 0.4s ease, box-shadow 0.4s ease;
    }

    .culture-card.is-active {
        z-index: 2;
        flex-grow: 2;
        height: 142px;
        box-shadow: 0 12px 30px rgba(26, 39, 58, 0.24);
    }

    .culture-card h3 {
        top: 50%;
        left: 50%;
        width: 100%;
        font-size: 20px;
        text-align: center;
        white-space: nowrap;
        transform: translate(-50%, -50%);
    }

    .culture-card.is-active h3 {
        top: 38%;
        left: 50%;
        font-size: 22px;
        transform: translate(-50%, -50%);
    }

    .culture-card-desc {
        padding: 9px 14px;
        text-align: center;
    }

    .culture-card-desc::before {
        margin-bottom: 7px;
    }

    .culture-card-desc p {
        overflow: hidden;
        font-size: 10px;
        white-space: nowrap;
    }

    .company-section {
        margin-top: 58px;
    }

    .company-showcase {
        width: 100%;
        height: 292px;
    }

    .company-image {
        width: 100%;
        max-width: none;
        height: 245px;
        background-position: 31% center;
    }

    .company-image h2 {
        padding: 22px 24px;
        font-size: 25px;
    }

    .company-copy {
        top: 82px;
        right: 20px;
        left: 20px;
        width: auto;
        min-height: 0;
        padding: 14px 16px;
        background: rgba(83, 156, 203, 0.83);
    }

    .company-copy p {
        margin-bottom: 12px;
        font-size: 11px;
        line-height: 1.75;
    }

    .partner-section {
        margin-top: 34px;
    }

    .partner-grid {
        width: calc(100% - 28px);
        margin-top: 18px;
        margin-bottom: 38px;
    }

    .partner-list {
        grid-template-columns: repeat(3, 1fr);
    }

    .partner-list li {
        height: 70px;
    }

    .partner-carousel {
        grid-template-columns: 28px minmax(0, 1fr) 28px;
        column-gap: 5px;
    }

    .partner-viewport { height: 143px; }
    .partner-arrow { width: 28px; height: 28px; font-size: 20px; }

    .partner-list img {
        width: 80%;
        height: 48px;
    }

    .home-footer-main {
        flex-direction: column;
        align-items: center;
        width: 100%;
        min-height: 0;
        padding-top: 24px;
    }

    .home-footer-contact {
        align-items: center;
        text-align: center;
    }

    .home-footer-phone {
        font-size: 28px;
    }

    .home-footer-contact span {
        margin-top: 6px;
        font-size: 12px;
    }

    .home-footer-contact p {
        max-width: none;
        margin-top: 14px;
        font-size: 11px;
        line-height: 1.3;
    }

    .home-footer-nav {
        display: flex;
        justify-content: center;
        width: 100%;
        gap: 0;
        padding: 0 18px 10px;
    }

    .home-footer-nav a {
        flex: 1;
        font-size: 10px;
        text-align: center;
    }

    .home-footer-qr {
        width: 72px;
        height: 72px;
        margin-top: 24px;
    }

    .home-footer-right {
        align-items: center;
        width: 100%;
        margin-top: 24px;
    }

    .home-footer-copyright {
        height: 38px;
        margin-top: 26px;
        font-size: 8px;
        line-height: 38px;
    }
}

/* ==================== 环境业务页 1920 视觉改版 ==================== */
.business-environment-page {
    min-width: 320px;
    margin: 0;
    color: #30333d;
    background: #f3f4f6;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

.environment-main {
    overflow: hidden;
}

.environment-content-width {
    width: min(1400px, calc(100% - 80px));
    margin-right: auto;
    margin-left: auto;
}

.environment-hero {
    width: 100%;
    height: 460px;
    background:
        linear-gradient(90deg, rgba(255, 169, 82, 0.16), rgba(70, 144, 190, 0.08)),
        url('/themes/zgblog/resources/images/yewubankuai.png') no-repeat center 66%;
    background-size: cover;
}

/* 业务方向 Tab */
.business-direction-tabs {
    height: 100px;
    background: #f0f0f0;
}

.business-direction-tabs .environment-content-width {
    display: flex;
    align-items: flex-end;
    height: 100%;
}

.business-direction-tab {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 300px;
    height: 62px;
    color: #b6bac1;
    background: #dedfe1;
    border-radius: 24px 24px 0 0;
    font-size: 24px;
}

.business-direction-tab + .business-direction-tab {
    margin-left: 10px;
}

.business-direction-tab.is-active {
    color: #1686cd;
    background: #fff;
}

/* 方案简介 */
.environment-overview {
    padding: 42px 0 74px;
    background: #fff;
}

.environment-intro {
    padding: 0 20px;
    color: #555a63;
    font-size: 18px;
    line-height: 1.8;
}

.environment-intro p {
    margin: 0 0 8px;
}

.environment-intro dl,
.environment-intro dd {
    margin: 0;
}

.environment-intro dl > div {
    display: flex;
}

.environment-intro dt {
    flex: 0 0 170px;
    color: #292d35;
}

.environment-solution-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    margin-top: 48px;
}

.environment-solution-card {
    position: relative;
    display: block;
    height: 320px;
    overflow: hidden;
    color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.environment-solution-card::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(180deg, rgba(8, 19, 31, 0.12) 10%, rgba(7, 18, 30, 0.78) 100%);
}

.environment-monitoring {
    border: 4px solid #168ddd;
    background-image: url('/themes/zgblog/resources/images/首页_slices/image_00000@2x.png');
}

.environment-access {
    background-image: url('/themes/zgblog/resources/images/plan/zhaji.png');
}

.environment-solution-copy {
    position: absolute;
    right: 34px;
    bottom: 34px;
    left: 34px;
    z-index: 1;
}

.environment-solution-copy h2 {
    margin: 0;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    color: #fff;
    font-size: 32px;
    font-weight: 400;
}

.environment-solution-copy p {
    margin: 16px 0 0;
    color: rgba(255, 255, 255, 0.86);
    font-size: 18px;
    line-height: 1.75;
}

/* 分区标题 */
.environment-section {
    background: #fff;
}

.environment-section-heading {
    height: 94px;
    border-bottom: 1px solid #c9cbd1;
}

.environment-section-heading .environment-content-width {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    height: 100%;
}

.environment-section-heading h2 {
    position: relative;
    height: 70px;
    margin: 0;
    color: #30333d;
    font-size: 30px;
    font-weight: 400;
    line-height: 70px;
}

.environment-section-heading h2::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 3px;
    content: "";
    background: #168ddd;
}

.environment-series-select {
    position: relative;
    margin-bottom: 12px;
}

.environment-series-select::after {
    position: absolute;
    top: 50%;
    right: 18px;
    width: 13px;
    height: 13px;
    content: "";
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    pointer-events: none;
    transform: translateY(-70%) rotate(45deg);
}

.environment-series-select select {
    width: 178px;
    height: 38px;
    padding: 0 42px 0 16px;
    color: #fff;
    background: #1686c5;
    border: 0;
    border-radius: 0;
    outline: 0;
    appearance: none;
    -webkit-appearance: none;
    font-size: 16px;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* 硬件产品 */
.environment-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    padding-top: 40px;
}

.environment-product-panel[hidden] {
    display: none;
}

.environment-product-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    color: #333842;
    background: #fff;
    border: 1px solid #dfe1e6;
    transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.environment-product-card:hover {
    color: #1686c5;
    border-color: #168ddd;
    box-shadow: 0 10px 30px rgba(23, 102, 153, 0.12);
    transform: translateY(-4px);
}

.environment-product-card img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1.18;
    padding: 20px;
    /* background: #edf7fd; */
    object-fit: contain;
}

.environment-product-card span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 86px;
    padding: 12px;
    border-top: 1px solid #e1e3e7;
    font-size: 18px;
    text-align: center;
}

.environment-pagination {
    display: flex;
    justify-content: center;
    gap: 8px;
    padding: 46px 0 118px;
}

.environment-pagination button {
    width: 28px;
    height: 30px;
    color: #8d929b;
    background: #fff;
    border: 1px solid #bfc3ca;
    font-size: 16px;
}

.environment-pagination button.is-current {
    color: #5e626a;
    background: #f5f6f7;
}

/* 环境服务 */
.environment-service-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    padding: 40px 0 76px;
}

.environment-service-card {
    position: relative;
    height: 580px;
    overflow: hidden;
    color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.environment-service-card::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(180deg, transparent 52%, rgba(20, 32, 54, 0.86) 100%);
}

.environment-consulting {
    background-image: url('/themes/zgblog/resources/images/Frame4.png');
}

.environment-customization {
    background-image: url('/themes/zgblog/resources/images/service/service2.png');
}

.environment-engineering {
    background-image: url('/themes/zgblog/resources/images/index-left.png');
}

.environment-service-card > div {
    position: absolute;
    right: 34px;
    bottom: 34px;
    left: 34px;
    z-index: 1;
}

.environment-service-card h3 {
    margin: 0;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.52);
    color: #fff;
    font-size: 30px;
    font-weight: 400;
}

.environment-service-card p {
    margin: 14px 0 0;
    color: rgba(255, 255, 255, 0.85);
    font-size: 18px;
    line-height: 1.7;
}

@media (max-width: 1024px) {
    .environment-content-width {
        width: calc(100% - 32px);
    }

    .environment-hero {
        height: 46vw;
        min-height: 300px;
        max-height: 460px;
    }

    .business-direction-tabs {
        height: 76px;
    }

    .business-direction-tab {
        width: 50%;
        height: 52px;
        border-radius: 16px 16px 0 0;
        font-size: 18px;
    }

    .environment-overview {
        padding: 32px 0 48px;
    }

    .environment-intro {
        padding: 0;
        font-size: 15px;
    }

    .environment-intro dl > div {
        display: block;
        margin-top: 8px;
    }

    .environment-intro dt {
        display: inline;
    }

    .environment-intro dd {
        display: inline;
    }

    .environment-solution-grid,
    .environment-service-grid {
        grid-template-columns: 1fr;
    }

    .environment-solution-card {
        height: 320px;
    }

    .environment-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .environment-section-heading h2 {
        font-size: 24px;
    }

    .environment-service-card {
        height: min(115vw, 580px);
    }
}

@media (max-width: 560px) {
    .environment-content-width {
        width: calc(100% - 20px);
    }

    .environment-hero {
        min-height: 260px;
        background-position: 35% center;
    }

    .environment-intro {
        font-size: 14px;
    }

    .environment-solution-grid {
        margin-top: 28px;
    }

    .environment-solution-card {
        height: 270px;
    }

    .environment-solution-copy {
        right: 20px;
        bottom: 20px;
        left: 20px;
    }

    .environment-solution-copy h2 {
        font-size: 24px;
    }

    .environment-solution-copy p {
        font-size: 14px;
    }

    .environment-section-heading {
        height: 76px;
    }

    .environment-section-heading h2 {
        height: 58px;
        font-size: 20px;
        line-height: 58px;
    }

    .environment-series-select select {
        width: 142px;
        font-size: 13px;
    }

    .environment-product-grid {
        gap: 8px;
        padding-top: 24px;
    }

    .environment-product-card img {
        padding: 8px;
    }

    .environment-product-card span {
        min-height: 62px;
        font-size: 14px;
    }

    .environment-pagination {
        padding: 32px 0 64px;
    }

    .environment-service-grid {
        padding: 24px 0 42px;
    }

    .environment-service-card > div {
        right: 24px;
        bottom: 24px;
        left: 24px;
    }

    .environment-service-card h3 {
        font-size: 24px;
    }

    .environment-service-card p {
        font-size: 15px;
    }
}
body.body-gray-bg {
    background: #eee;
}
.layui-nav{
    background: #fff!important;
}
.site-header{
    height: 70px;
    border-bottom: 0;
    background: rgba(255, 255, 255, 0.95);
    box-shadow: none;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9999;
}
/* 全局导航开始 */
.nav-container{
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: min(1400px, calc(100% - 80px));
    height: 70px;
    margin: 0 auto;
}
.nav-main{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}
.nav-main > nav,
.nav-main .nav-ul,
.nav-main .nav-li {
    display: flex;
    align-items: center;
}
.nav-main .nav-ul {
    flex-wrap: nowrap;
    margin: 0;
    padding: 0;
    list-style: none;
}
.nav-main .nav-li { flex: 0 0 auto; }
/*.nav-container .nav-a {*/
/*    background: #ff0;*/
/*    color: #000!important;*/
/*}*/
/*.nav-container .nav-li .link {*/
/*    background: #ff0;*/
/*    color: #000!important;*/
/*}*/
.header-logo{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 192px;
    height: 44px;
    flex: 0 0 192px;
    overflow: hidden;
    background: url('/themes/zgblog/resources/images/首页_slices/logo@2x.png') no-repeat center center;
    background-size: contain;
}
.header-logo--custom{
    background: none;
}
.header-logo img{
    display: block;
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
}
.logo-text{
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.product-nav .product-nav-menu-v2{
    display: none;
    top: 70px;
    left: 50%;
    margin-top: 0;
    transform: translateX(-50%);
}
.product-nav:hover .product-nav-menu-v2{
    display: block;
}
.product-nav .product-nav-menu,
.business-nav .biz-dropdown{
    visibility: hidden;
    pointer-events: none;
    position: absolute;
    top: 70px;
    left: 0;
    width: 100vw;
    box-shadow: none;
    z-index: 100;
    opacity: 0;
    transform: translateY(-14px);
    transition: opacity 0.4s ease, transform 0.4s ease, visibility 0s linear 0.4s;
}
.product-nav .product-nav-menu {
    background: var(--nav-glass-background);
    backdrop-filter: var(--nav-glass-blur);
    -webkit-backdrop-filter: var(--nav-glass-blur);
}
.business-nav .biz-dropdown {
    border-top: 1px solid #efefef;
    background: rgba(255, 255, 255, 0.95);
}
.business-nav:hover .biz-dropdown{
    visibility: visible;
    pointer-events: auto;
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0s;
}

.product-nav .product-dropdown {
    position: absolute;
    top: 70px;
    left: 0;
    z-index: 100;
    width: 100vw;
    max-height: calc(100vh - 70px);
    overflow-y: auto;
    border-top: 1px solid #efefef;
    background: rgba(255, 255, 255, 0.95);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-14px);
    transition: opacity .4s ease, transform .4s ease, visibility 0s linear .4s;
}

@media (min-width: 1025px) {
    .product-nav:hover .product-dropdown.is-ready,
    .product-nav:focus-within .product-dropdown.is-ready {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
        transition-delay: 0s;
    }

    .product-nav.is-dropdown-dismissed .product-dropdown {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(-14px);
        transition: none;
    }
}

.product-dropdown-inner {
    width: min(1400px, calc(100% - 80px));
    margin: 0 auto;
    padding: 20px 0 26px;
}

.product-dropdown-group { min-width: 0; }

.product-dropdown-heading {
    margin: 0 0 20px;
    color: #26384b;
    font-size: 21px;
    font-weight: 600;
    line-height: 1.4;
}

.product-dropdown-heading a { color: inherit; text-decoration: none; }
.product-dropdown-heading a:hover,
.product-dropdown-heading a:focus-visible { color: #1877bd; }

.product-dropdown-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: stretch;
}

.product-dropdown-category {
    flex: 0 0 180px;
    min-width: 0;
    padding: 16px 15px;
    border: 1px solid #e4eaf0;
    border-radius: 12px;
    background: rgba(255, 255, 255, .72);
}

.product-dropdown-category-title {
    margin: 0 0 12px;
    color: #303c4c;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.45;
}

.product-dropdown-category-title a { color: inherit; text-decoration: none; }
.product-dropdown-category-title a:hover,
.product-dropdown-category-title a:focus-visible { color: #1877bd; }

.product-dropdown-products {
    margin: 0;
    padding: 0;
    list-style: none;
}

.product-dropdown-product + .product-dropdown-product { margin-top: 8px; }

.product-dropdown-product a {
    display: flex;
    align-items: baseline;
    gap: 8px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.product-dropdown-product a::before {
    flex: 0 0 5px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #aab5c1;
    content: "";
}

.product-dropdown-product a:hover,
.product-dropdown-product a:focus-visible { color: #1877bd; }
.product-dropdown-product a:hover::before,
.product-dropdown-product a:focus-visible::before { background: #1877bd; }

@media (min-width: 1025px) and (max-width: 1320px) {
    .product-dropdown-inner { width: calc(100% - 48px); }
    .product-dropdown-categories { gap: 9px; }
    .product-dropdown-category { padding: 12px 10px; }
    .product-dropdown-category-title { font-size: 14px; }
    .product-dropdown-product a { font-size: 12px; }
}

/* 轮播容器：箭头 + 视口 */
.product-dropdown-carousel {
    display: flex;
    align-items: center;
    gap: 16px;
    width: min(1440px, calc(100% - 80px));
    margin: 0 auto;
    padding: 20px 0 26px;
}

/* 轮播视口 */
.product-dropdown-carousel .product-dropdown-inner {
    flex: 1;
    min-width: 0;
    display: block;
    width: auto;
    margin: 0;
    overflow: hidden;
    padding: 0;
}

/* 轨道：横向排列大分类 */
.product-dropdown-track {
    display: flex;
    gap: 16px;
    transition: transform .45s cubic-bezier(.22, .61, .36, 1);
    will-change: transform;
}

/* 每个大分类宽度由卡片数量自动撑开 */
.product-dropdown-track .product-dropdown-group {
    flex: 0 0 auto;
    min-width: 0;
    max-width: 100%;
}

/* 轮播箭头 */
.product-dropdown-arrow {
    appearance: none;
    -webkit-appearance: none;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border: 1px solid #d8e0e8;
    border-radius: 50%;
    background: #fff;
    color: #1877bd;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(24, 119, 189, .08);
    transition: opacity .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.product-dropdown-arrow:hover {
    border-color: #1877bd;
    box-shadow: 0 4px 14px rgba(24, 119, 189, .18);
}

/* 向右箭头：1 秒内向右脉动两次，带惯性回弹 */
.product-dropdown-arrow-right:not(.is-disabled) {
    animation: arrowNudgeRight 1s cubic-bezier(.36, .07, .19, .97) infinite;
}

/* 向左箭头：1 秒内向左脉动两次，带惯性回弹 */
.product-dropdown-arrow-left:not(.is-disabled) {
    animation: arrowNudgeLeft 1s cubic-bezier(.36, .07, .19, .97) infinite;
}

@keyframes arrowNudgeRight {
    0%   { transform: translateX(0); }
    25%  { transform: translateX(6px); }
    40%  { transform: translateX(0); }
    70%  { transform: translateX(6px); }
    100% { transform: translateX(0); }
}

@keyframes arrowNudgeLeft {
    0%   { transform: translateX(0); }
    25%  { transform: translateX(-6px); }
    40%  { transform: translateX(0); }
    70%  { transform: translateX(-6px); }
    100% { transform: translateX(0); }
}

/* 置灰态 */
.product-dropdown-arrow.is-disabled {
    opacity: .3;
    cursor: not-allowed;
    animation: none;
    box-shadow: none;
}

@media (min-width: 1025px) and (max-width: 1320px) {
    .product-dropdown-carousel {
        width: calc(100% - 48px);
        gap: 10px;
    }
    .product-dropdown-track .product-dropdown-group { flex: 0 0 auto; }
    .product-dropdown-track { gap: 16px; }
    .product-dropdown-categories { gap: 16px; }
    .product-dropdown-arrow { flex-basis: 38px; width: 38px; height: 38px; font-size: 20px; }
}

@media (max-width: 1024px) {
    .product-dropdown-carousel {
        width: calc(100% - 32px);
        flex-direction: column;
        gap: 12px;
    }
    .product-dropdown-track .product-dropdown-group { flex-basis: 80vw; }
    .product-dropdown-arrow {
        flex-basis: 36px;
        width: 36px;
        height: 36px;
        font-size: 18px;
    }
}

.biz-dropdown-inner{
    max-width: 1440px;
    margin: 0 auto;
    padding: 18px 30px 20px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 40px;
}
.biz-card{
    min-width: 0;
    display: flex;
    align-items: stretch;
    gap: 24px;
    padding: 6px 10px;
    border: 1px solid transparent;
    border-radius: 0;
    text-decoration: none;
    transition: border-color 0.25s ease, opacity 0.25s ease;
}
.biz-card:hover,
.biz-card:focus-visible{
    background: transparent;
    border-color: #2d94df;
    box-shadow: none;
    opacity: 0.84;
}
.biz-card-img{
    display: block;
    flex-shrink: 0;
    width: 280px;
    aspect-ratio: 3 / 2;
    align-self: center;
    border-radius: 0;
    overflow: hidden;
    background: #f0f0f0;
}
.biz-card-img img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.biz-card-body{
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.biz-card-body h3{
    font-size: 26px;
    font-weight: 700;
    color: #1a202c;
    margin: 0 0 12px 0;
}
.biz-card-body h3 a { color: inherit; text-decoration: none; }
.biz-card-body h3 a:hover,
.biz-card-body h3 a:focus-visible { color: #1877bd; }
.biz-card-body p{
    font-size: 16px;
    color: #64748b;
    line-height: 1.7;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.biz-card-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 14px;
    margin-top: 12px;
}
.biz-card-categories a {
    color: #64748b;
    font-size: 13px;
    line-height: 1.5;
    text-decoration: none;
}
.biz-card-categories a:hover,
.biz-card-categories a:focus-visible { color: #1877bd; text-decoration: underline; }
.biz-card-arrow{
    align-self: flex-start;
    margin-top: 16px;
    color: #168fe5;
    font-size: 24px;
    transition: color 0.3s ease, transform 0.3s ease;
}
.biz-card:hover .biz-card-arrow{
    color: #2d94df;
    transform: translateX(4px);
}
.product-nav-menu .product-nav-menu-item-title1 {
    flex-shrink: 0;
    font-size: 18px!important;
}
.product-nav-menu .product-nav-menu-item-title1,
.product-nav-menu .product-nav-menu-item-title2 {
    font-size: 15px;
    font-weight: bold;
    flex-shrink: 0;
    width: 140px;
    margin-top: 10px;
}
.product-nav-menu .product-nav-menu-item-title1{
    width: 100px;
}
.product-nav-menu .product-nav-menu-item-bg{
    background: #F4f4F4;
    width: 140px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-size: 14px;
    margin: 8px 8px 8px 0;
    border-radius: 8px;
}
.product-nav:hover .product-nav-menu {
    left: 488px;
    display: flex;
    width: auto;
}
/*.nav .nav-li:nth-child(2) .link {*/
/*    background: #f4f4f4;*/
/*}*/
.nav .link.active{
    color: #344353;
    background: transparent;
    box-shadow: inset 0 -3px 0 #168fe5;
}
.nav .link {
    display: block;
    height: 70px;
    padding: 0 22px;
    color: #485361;
    font-size: 16px;
    line-height: 70px;
    white-space: nowrap;
    transition: color 0.2s ease, background-color 0.2s ease;
}
.nav .link:active {
    color: #1E9FFF;
}
.nav .nav-li:hover .link,
.business-nav:hover ,
.business-nav:hover > .link,
.product-nav:hover > .link{
    color: #1E9FFF;
}
.product-nav:hover .product-nav-menu
{
    display: flex;
}
/*footer*/
.saoyisao{
    margin-top: -26px!important;
}
.footer {
    background-color: #18202B;
}
.footer .text-gray {
    color: #959595;
}
.inner-container{
    margin: 0 auto;
    max-width: 1350px;
}
.inner-container .title-left {
    text-align: left;
}
.banner {
    min-height: 720px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
    background-size: 100% 100%;
}
.banner.banner-black{
    color: #fff;
}
.banner.news-banner-short {
    height:420px!important;
    min-height:420px!important;
    background: url('/themes/zgblog/resources/images/news-banner.jpg') no-repeat center center;
}
.index-environment-banner {
    background: url('/themes/zgblog/resources/images/index-banner/environment.png') no-repeat center center;
}
.index-energy-banner {
    background: url('/themes/zgblog/resources/images/index-banner/energy.png') no-repeat center center;
}
.index-new-banner {
    background: url('/themes/zgblog/resources/images/index-banner/new-banner.png') no-repeat center center;
    background-size: cover;
}
.banner.index-environment-banner-short {
    min-height: 600px;
    background: url('/themes/zgblog/resources/images/environment-banner.png') no-repeat center center;
}
.banner.index-energy-banner-short {
    min-height: 600px;
    background: url('/themes/zgblog/resources/images/energy-banner.png') no-repeat center center;
}
.banner.contact-us-banner-short {
    min-height: 500px;
    background: url('/themes/zgblog/resources/images/contact-us/contact-us-banner.jpg') no-repeat center center;
}
.banner-title {
    position: relative;
    text-align: center;
    font-weight: 1000;
    font-size: 80px;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}
.banner .banner-title .banner-title-small{
    font-weight: 300;
    font-size: 48px;
    display: block;
    margin-top: 20px;
}
#carousel-banner .banner-title {
    margin-top: 200px;
    margin-left: -200px;
}
/*index*/
.logo-container >li{
    float: left;
    width: 20%;
    height: 90px;
    margin-bottom: 20px;
    /*padding: 20px;*/
    box-sizing: border-box;
    overflow: hidden;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.logo-container li img{
    object-fit: contain;
    width: 100%;
    height: 90px;
    padding: 15px;
}
.business-left {
    height: 600px;
    /*background: url('/themes/zgblog/resources/images/Frame4.png') no-repeat center center;*/
    /*background: url('/themes/zgblog/resources/images/Frame4-short.png') no-repeat center center;*/
    /*background: url('/themes/zgblog/resources/images/index-left.png') no-repeat center center;*/
    background-size: 100% 100%;
    background: linear-gradient(rgba(64, 144, 184, 1), rgba(64, 144, 184, 1)); /* 标准语法 */
    background: -webkit-linear-gradient(rgba(64, 144, 184, 1), rgba(64, 144, 184, 1)); /* Safari 5.1 - 6.0 */
    background: -o-linear-gradient(rgba(64, 144, 184, 1), rgba(64, 144, 184, 1)); /* Opera 11.1 - 12.0 */
    background: -moz-linear-gradient(rgba(64, 144, 184, 1), rgba(64, 144, 184, 1)); /* Firefox 3.6 - 15 */
}
.business-right {
    color: white!important;
    height: 600px;
    /*background: url('/themes/zgblog/resources/images/Frame6.png') no-repeat center center;*/
    /*background: url('/themes/zgblog/resources/images/Frame6-short.png') no-repeat center center;*/
    /*background: url('/themes/zgblog/resources/images/index-right.png') no-repeat center center;*/
    background-size: 100% 100%;
    background: linear-gradient(rgba(59, 166, 178, 1), rgba(118, 201, 210, 1)); /* 标准语法 */
    background: -webkit-linear-gradient(rgba(59, 166, 178, 1), rgba(118, 201, 210, 1)); /* Safari 5.1 - 6.0 */
    background: -o-linear-gradient(rgba(59, 166, 178, 1), rgba(118, 201, 210, 1)); /* Opera 11.1 - 12.0 */
    background: -moz-linear-gradient(rgba(59, 166, 178, 1), rgba(118, 201, 210, 1)); /* Firefox 3.6 - 15 */

}
.plan-left,.plan-right{
    overflow: hidden;
    background: #fff;
    margin-bottom: 20px;
}
.plan-left .project-bg,.plan-right .project-bg {
    height: 30rem;
    background-size: 100% 100%;
}
.plan-left .project-bg {
    /* plan/environment.png - 环境数字化监控 */
    background: url('/themes/zgblog/resources/images/plan/environment.png') no-repeat center center;
}
.plan-right .project-bg {
    /* plan/zhaji.png - 智慧门禁，ESD闸机 */
    background: url('/themes/zgblog/resources/images/plan/zhaji.png') no-repeat center center;
}
.plan-left .project-bg-energy {
    background: url('/themes/zgblog/resources/images/energy-plan/energy-left.png') no-repeat center center;
    background-size: 100% 100%;
}
.plan-right .project-bg-energy {
    background: url('/themes/zgblog/resources/images/energy-plan/energy-right.png') no-repeat center center;
    background-size: 100% 100%;
}
/*culture*/
.culture-1,.culture-2,.culture-3 {
    color: transparent!important;
    width: 100%;
    height: 10rem;
    background: url('/themes/zgblog/resources/images/culture.png') no-repeat center center;
    background-size: contain top;
}
.culture .culture-1 {
    background: url('/themes/zgblog/resources/images/culture/3.png') no-repeat center center;
}
.culture .culture-2 {
    background: url('/themes/zgblog/resources/images/culture/1.png') no-repeat center center;
}
.culture .culture-3 {
    background: url('/themes/zgblog/resources/images/culture/2.png') no-repeat center center;
}

/*company-intro*/
.company-introduction {
    width: 100%;
    height: 460px;
    background: url('/themes/zgblog/resources/images/Group1.png') no-repeat center center;
    background-size: 100% 100%;
}
.company-intro-p{
    text-indent: 2em;
}
/*partner*/
.partner {
    width: 100%;
    height: 20rem;
    /*background: url('/themes/zgblog/resources/images/Frame133.png') no-repeat center center;*/
    /*background-size: contain top;*/
}

/**/
.be-product-container .be-product-item{
    background: #fff;
}
.be-product-container .be-product-item {
    padding: 30px;
    padding-bottom: 15px;
    margin-bottom: 20px
}
.be-product-container .be-product-item .title{
    border-left: 6px solid #1E9FFF;
    margin-bottom:20px;
    text-indent: 10px;
    font-size: 22px;font-weight: bold
}
.be-product-container .be-product-item .product-link{
    margin:0 10px 10px 0;
    width:168px;
    font-size: 16px;
    line-height: 50px;
    text-align: center;
    background: #F4f4F4;border-radius:6px
}
.business-environment .service-container .service-1,
.business-environment .service-container .service-2,
.business-environment .service-container .service-3{
    flex: 1;
    height: 30rem;
    background-size: contain top;
    color: #ffffff;
}
.business-environment .service-container .service-1 p,
.business-environment .service-container .service-2 p,
.business-environment .service-container .service-3 p{
    color: #eeeeee;
}
.business-environment .service-container .service-1{
    /* service/service1.png - 数字化环境管控咨询 */
    background: url('/themes/zgblog/resources/images/service/service1.png') no-repeat center center;
    background-size: 100%;
}
.business-environment .service-container .service-2 {
    /* service/service2.png - 环境治理方案定制 */
    background: url('/themes/zgblog/resources/images/service/service2.png') no-repeat center center;
    background-size: 100%;
}
.business-environment .service-container .service-3{
    /* service/service3.png - 环境治理工程 */
    background: url('/themes/zgblog/resources/images/service/service3.png') no-repeat center center;
    background-size: 100%;
}
/*product-environment*/
.product-environment .product-container .product-item {
    margin: 0 10px 10px 0;
    padding: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    border: 1px solid rgba(32, 36, 37, 0.1);
    height: 360px;
    width: 290px;
    box-sizing: border-box;
}
.product-environment .product-container .product-item >span{
    position: relative;
    bottom: 90px;
}
/*product-energy*/
.product-energy .product-container .energy-title1 {
    font-size: 40px;
    font-weight: bold;
    margin: 30px 0;
}
.product-energy .product-container .energy-title2 {
    margin: 10px 0;
    font-size: 24px;
    font-weight: bold;
}
.product-energy .product-container .energy-desc{
    margin-bottom: 20px;
    font-size: 20px;
    color: rgba(32, 36, 37, 1);
}
.product-energy .product-container .image-container:first-child {
    margin-right: 20px;
}
.product-energy .product-container .product-image{
    padding: 50px;
    text-align: center;
    border: 1px solid rgba(32, 36, 37, .1);
}
/*business-energy*/
.energy-service-container > a{
    display: inline-block;
}
.energy-service-container .energy-service-title:active,
.energy-service-container .energy-service-title:hover{
    color: #1E9FFF;
}
.energy-service-container .energy-service-title{
    width: 30%;
    line-height: 140px;
    background: #ffffff;
    text-align: center;
    margin-right: 4.6%;
    margin-bottom: 50px;
    font-size: 24px;
    font-weight: bold;
}
.energy-service-container .energy-service-title:nth-child(4){
    margin-right: 0;
}
/*css nav*/
/* Tab容器 */
.tab-container {
    margin: 25px auto 0;
    overflow: hidden;
}
/* 隐藏radio按钮 */
.tab-radio {
    display: none;
}
/* Tab导航栏 */
.tab-nav {
    display: flex;
    background-color: #f5f5f5;
    border-bottom: 1px solid #e0e0e0;
}
/* Tab标签样式 */
.tab-label {
    font-size: 18px;
    color: #aaaaaa;
    margin-right: 30px;
    padding: 25px 0 15px;
    cursor: pointer;
    /*transition: all 0.3s ease;*/
    border-bottom: 3px solid transparent;
    font-weight: 500;
}

.tab-label:hover {
    color: #1E9FFF;
    /*background-color: #e9e9e9;*/
}

/* 选中状态的Tab标签 */
.tab-radio:checked + .tab-label {
    color: #1E9FFF;
    border-bottom-color: #1E9FFF;
    background-color: white;
}

/* Tab内容区域 */
.tab-content {
    display: none;
    margin-top: 40px;
    /*animation: fadeIn .5s ease;*/
    flex-wrap: wrap;
}

/* 显示选中Tab对应的内容 */
#tab1:checked ~ #content1,
#tab2:checked ~ #content2,
#tab3:checked ~ #content3,
#tab4:checked ~ #content4,
#tab5:checked ~ #content5,
#tab6:checked ~ #content6
{
    display: flex;
}
/*.tab-content .product-item:nth-child(4n) {*/
/*    margin-right: 0;*/
/*}*/
.tab-content .product-item:hover {
    border: 1px solid #1E9FFF;
}
.tab-content .product-item:hover span {
    color: #1E9FFF;
}
/*新闻detail*/
.news-detail .news-detail-title.text-left{
    text-align: left;
}
.news-detail .news-detail-title {
    font-size: 36px;
    font-weight: bold;
    line-height: 36px;
    color: #0d6eb8;
    text-align: center;
    margin: 60px auto 30px;
}
.news-detail .news-detail-post-time > span{
    margin: 0 30px;
}
.news-detail .news-detail-post-time{
    display: flex;
    display: -webkit-flex;
    font-size: 16px;
    color: #afafaf;
    justify-content: center;
    align-items: center;
    padding: 12px 0;
    margin-top: 30px;
}
.news-detail .to-news-list{
    font-size: 18px;
    background-color: white;
    border: 1px #d6d6d6 solid;
    border-radius: 30px;
    padding: 10px 26px;
}
/*新闻detail*/
/*新闻*/
.tab-content .product-item.news {
    width:100%;padding:15px 20px 15px 0;background: #eee;
    height: 120px;
    text-align: left;
    padding-bottom: 0;
}
.tab-content .product-item.news:hover {
    border: 1px solid #1E9FFF;
    color: #0C0C0C;
    background: rgba(30,159,255,.1);
}
.tab-content .product-item.news > div {
    align-items: center;height:80px;
}
.tab-content .product-item.news h3 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 5px;
    /*line-height: 40px;*/
    /*height: 40px;*/
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.tab-content .product-item.news p {
    color: #666666;
}
.tab-content .product-item.news .content {
    height: 60px;
    color: #666666;
    margin-top: 15px;
    line-height: 28px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    margin-bottom: 15px;
}
.tab-content .product-item.news .flex-left{
    flex-shrink: 0;
    text-align: center;border-right:1px solid #cccccc;
    padding:0 30px;margin-right:30px;width:140px;
}
.tab-content .product-item.news .content1  {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
}
.tab-content .product-item.news .detail {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #e0e0e0;
}
/*新闻*/

.tab-content .product-item {
    margin-bottom: 15px;
    /*margin-right: 1.3%;*/
    width: 24%;
    text-align: center;
    /*height: 100px;*/
    border: 1px solid #eeeeee;
    padding: 20px;
    box-sizing: border-box;
}
.tab-content .product-item img {
    object-fit: contain;
    width: 100%;
    height: 220px;
}
.tab-content .product-item span {
    line-height: 50px;
}
/* 内容动画效果 */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateX(10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}
/* [已废弃] 旧版联系页面浮动样式 - 2026新版已采用flex布局，以下样式已注释保留备查 */
/*contact us*/
/*.company-zh:after {
    position: absolute;
    left: 0px;
    width: 30px;
    height: 2px;
    background: #0d6eb8;
    content: "";
    top: 20px;
}
/*.company-zh {
    margin-top: 30px;
    font-size: 30px;
    font-weight: bold;
    color: #0d6eb8;
    padding-left: 40px;
    letter-spacing: 4px;
    position: relative;
}
/*.company-en {
    font-size: 18px;
    padding-left: 40px;
    color: #ccc;
    text-transform: uppercase;
}
/*.contact-us ul{
    overflow: hidden;
    margin-top: 30px;
    /*box-shadow: 0 5px 20px #d6d6d6;*/
/* } */
/*.contact-us ul li:last-child {
    border-right: 1px solid #e6e6e6;
}
/*.contact-us ul li{
    width: 33.3%;
    height: 270px;
    float: left;
    background: #fff;
    border: 1px solid #e6e6e6;
    border-right: none;
    padding: 60px 40px;
    text-align: center;
}
/*.contact-us ul li h4{
    margin: 10px auto;
    font-weight: bold;
    color: #333;
    font-size: 18px;
}
/*.contact-us ul li p{
    font-size: 16px;
    color: #333;
    line-height: 30px;
}
/*.contact-us .message {
    width: 100%;
    margin: 60px auto 0;
    background: #fff;
    padding: 40px;
    overflow: hidden;
    border: 1px solid #e6e6e6;
}
/*.contact-us .message h3{
    text-align: center;
    color: #333;
    font-size: 24px;
    font-weight: bold;
}
/*.contact-us .message ol{
    width: 100%;
    float: left;
    margin-top: 30px;
}
/*.contact-us .message ol li{
    float: left;
    width: 49%;
    margin-bottom: 20px;
    background: #fff;
}
/*.message ol li:nth-child(2n){
    float: right;
}
/*.contact-us li > input{
    width: 100%;
    height: 50px;
    background: none;
    border: 1px solid #e6e6e6;
    color: #999;
    padding: 0 15px;
}
/*.contact-us .message ol li textarea{
    padding: 15px;
    width: 100%;
    height: 180px;
    border: 1px solid #e6e6e6;
    background: none;
    color: #999;
}
/*.contact-us .message ol li .btn,.contact-us .message ol li .btn2{
    color: #fff;
    font-size: 16px;
    cursor: pointer;
}
/*.contact-us .message ol li .btn2,
/*.contact-us .message ol li .btn{
    background: #0d6eb8;
}*/
/*product-detail*/
.product-detail {
    /*display: flex;*/
    margin-top: 30px;
}
.product-detail h5{
    margin-top: 20px;
    font-size: 20px;
    font-weight: bold;
}
.product-detail img{
    margin-top: 10px;
    max-width: 100%;
    border: 1px solid #e6e6e6;
    margin-right: 30px;
}
.product-detail .product-info{

}
.product-detail .product-info h4{
    font-size: 26px;
    font-weight: bold;
}
.product-detail .product-info h5{
    margin-top: 20px;
    font-size: 20px;
    font-weight: bold;
}
.product-detail .product-info p{
    font-size: 16px;
    line-height: 30px;
}
.product-detail-page-title {
    font-size: 30px;
    font-weight: bold;
    margin-top: 40px;
    padding: 10px 30px;
    border-left: 5px solid #1E9FFF;
    background: #eee;
    text-align: center;
}
#content1{
    clear: both;
}



/*nav*/
/* Tab容器 */
.tab-container1 {
    margin: 25px auto 0;
    overflow: hidden;
    position: absolute;
    top:71px;
    width: 770px;
    background: white;
    padding: 20px 0 10px 20px;
    z-index: 10
}

/* 隐藏radio按钮 */
.tab-radio1 {
    display: none;
}
/* Tab导航栏 */
.tab-nav1 {
    display: flex;
    background-color: #f5f5f5;
    border-bottom: 1px solid #e0e0e0;
}
.product-title-in-tab{
    width: 100% !important;
}
/* Tab标签样式 */
.tab-label1 {
    float:left;
    font-size: 18px;
    color: #aaaaaa;
    padding-right: 30px;
    padding-bottom: 20px;
    cursor: pointer;
    font-weight: 500;
}
.tab-label1.tab-label1-last {
    clear: left;
}
.tab-label1:hover {
    color: #1E9FFF;
}
/* 选中状态的Tab标签 */
.tab-radio1:checked + .tab-label1 {
    color: #1E9FFF;
}
/* Tab内容区域 */
.tab-content1 {
    margin-left: 100px;
    display: none;
    margin-top: 0px;
    /*animation: fadeIn .5s ease;*/
}
.tab-content1 h3:first-child {
    margin-top: 0;
}
.tab-content1 h3{
    font-size: 20px;
    font-weight: bold;
    margin: 20px 0 10px;
}
/* 显示选中Tab对应的内容 */
#tab11:checked ~ #content11,
#tab21:checked ~ #content21
{
    display: block;
}
/*.tab-content1 .product-item1:nth-child(4n) {*/
/*    margin-right: 0;*/
/*}*/
.tab-content1 .product-item1:hover {
    border: 1px solid #1E9FFF;
}
.tab-content1 .product-item1:hover span {
    color: #1E9FFF;
}
.tab-content1 .product-item1 {
    display: inline-block;
    border: 1px solid #F4f4F4;
    margin: 0 0 5px 0;
    width: 150px;
    font-size: 14px;
    line-height: 40px;
    text-align: center;
    background: #F4f4F4;
    border-radius: 6px;
}
.tab-content1 .product-item1 span {
    line-height: 40px;
}

/*上下篇*/
.page-container {
    /*margin-bottom: 20px;*/
}
.page-container .page-title{
    font-size: 20px;
    font-weight: bold;
}
.page-container .none{
    margin-left: 20px;
}
.page-container .page-link{
    color: #0d6eb8;
    display: inline-block;
    margin-left: 20px;
    line-height: 50px;
}

/*客服模块*/
.affim-collapse-toggle {
    position: fixed;
    z-index: 2147482101;
    display: grid;
    place-items: center;
    width: 30px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 0 6px 6px 0;
    background: #4e6ef2;
    box-shadow: 2px 2px 8px rgba(34, 53, 126, 0.22);
    color: #fff;
    font: 28px/1 Arial, sans-serif;
    cursor: pointer;
    transition: left 0.25s ease, background-color 0.2s ease;
}

.affim-collapse-toggle[hidden] { display: none; }
.affim-collapse-toggle:hover { background: #3859d6; }
.affim-collapse-toggle:focus-visible { outline: 2px solid #fff; outline-offset: -4px; }

body .embed-components { transition: transform 0.25s ease; }

body.affim-collapsed .embed-components {
    transform: translateX(-100vw) !important;
    pointer-events: none !important;
}

body.affim-collapsed .embed-hot-issue {
    visibility: hidden !important;
    pointer-events: none !important;
}

@media (prefers-reduced-motion: reduce) {
    .affim-collapse-toggle,
    body .embed-components { transition: none; }
}

.y-kefu-box{position:fixed; right:0; top:20%; z-index:9999; font-size:13px;}
.y-kefu-box img{display: block; width:100%; height:auto;}
.y-kefu-box01 .icon{display:block; background:url('/themes/zgblog/resources/images/icons01.png') no-repeat; margin:0 auto 6px;}
.y-kefu-box01{width:54px; color: #666; text-align: center;}
.y-kefu-box01 .kf-close-btn{width:27px; height:27px; background-position:-5px -115px; position: relative; cursor:pointer;}
.y-kefu-box01 .kf-close-btn:before{content:''; display: block; width:1px; height:12px; background-color:#1E9FFF; position: absolute; bottom:-12px; left:13px; z-index: 1;}
.y-kefu-box01 .show-status>a, .y-kefu-box01 .show-status>div{display:block; width:52px; padding:8px 0 12px; background-color:#fff; border-left:solid 1px #efefef; border-top:solid 1px #efefef; border-right:solid 1px #efefef; position:relative;}
.y-kefu-box01 .show-status{position: relative;}
.y-kefu-box01 .show-status .kf-qiao{background-color:#1E9FFF; border-color: #1E9FFF; color: #fff; margin: 10px 0 7px;}
.y-kefu-box01 .kf-qiao{border-radius:2px;}
.y-kefu-box01 .kf-qiao i{width:21px; height:22px; background-position:-30px -150px;}
.y-kefu-box01 .kf-QQ{border-top-left-radius:2px;border-top-right-radius:2px;}
.y-kefu-box01 .kf-QQ>i{width:21px; height:22px; background-position:-5px -5px;}
.y-kefu-box01 .kf-QQ:hover>i{background-position:-30px -5px;}
.y-kefu-box01 .kf-zixun{border-radius:2px;}
.y-kefu-box01 .kf-zixun i{width:21px;height:22px;background-position:-30px -150px;}
.y-kefu-box01 .kf-mobile{border-top-left-radius:2px; border-top-right-radius:2px;}
.y-kefu-box01 .kf-mobile>i{width:18px; height:18px; background-position:-5px -32px;}
.y-kefu-box01 .kf-mobile:hover>i{background-position:-30px -32px;}
.y-kefu-box01 .kf-weChat>i{width:22px; height:19px; background-position:-5px -55px;}
.y-kefu-box01 .kf-weChat:hover>i{background-position:-30px -55px;}
.y-kefu-box01 .kf-email{border-bottom-left-radius:2px; border-bottom-right-radius:2px;}
.y-kefu-box01 .kf-email>i{width:18px; height:14px; background-position:-5px -80px;}
.y-kefu-box01 .kf-email:hover>i{background-position:-30px -80px;}
.y-kefu-box01 .back-top i{width:13px; height:11px; background-position:-5px -98px;}
.y-kefu-box01 .back-top:hover i{background-position:-30px -98px;}
.y-kefu-box01 .kf-email, .y-kefu-box01 .back-top{border-bottom:solid 1px #efefef;}
.y-kefu-box01 .back-top{margin-top:-1px; border-radius:2px; left:55px;}
.y-kefu-box01 .hver:hover{background-color:#1E9FFF; border-color:#1E9FFF;}
.y-kefu-box01 .hver:hover>p{color:#fff;}
.y-kefu-box01 .mobile-infos,.y-kefu-box01 .QQ-infos, .y-kefu-box01 .y-ewm-box, .y-kefu-box01 .y-email-infos{background-color:#fff; border:solid 1px #efefef; position:absolute; right:90px; z-index:2; border-radius:2px; display:none;}
.y-kefu-box01 .mobile-infos{width:215px; text-align:left; top:0;}
.y-kefu-box01 .mobile-infos>div{padding:20px 0 20px 45px; position:relative;}
.y-kefu-box01 .mobile-infos>div i{width:15px; height:15px; background-position:-52px -32px; position:absolute; top:22px; left:20px; z-index:2;}
.y-kefu-box01 .mobile-infos .online1{border-bottom:solid 1px #efefef;}
.y-kefu-box01 .mobile-infos span{color:#999;}
.y-kefu-box01 .mobile-infos p{color:#1E9FFF; font-size:18px;}
.y-kefu-box01 .QQ-infos{width:320px;text-align: left;top: 0;}
.y-kefu-box01 .part01{padding:20px 20px 20px 30px; border-bottom:solid 1px #e9e9e9; position:relative;}
.y-kefu-box01 .part01 p{font-size:16px; color:#1E9FFF; padding-bottom:5px;}
.y-kefu-box01 .part01 i{width:28px; height: 26px; background-position:-40px -5px; position: absolute; left:0; top:18px; z-index:2;}
.y-kefu-box01 .part02{padding:20px;}
.y-kefu-box01 .part02 li{width:86px; float:left; position:relative; margin:10px; padding-left:30px;}
.y-kefu-box01 .part02 i{width:22px; height:22px; background-position:-5px -5px; position:absolute; left:0; top:0; z-index:2;}
.y-kefu-box01 .part02 li:hover a{color:#1E9FFF;}
.ri{width:12px; height:12px; position:absolute; right:-12px; top:24px;}
.ri-arrow1,.ri-arrow2{width:0; height:0; display:block; position:absolute; left:0; top:0; border-top:6px transparent dashed; border-right:6px transparent dashed; border-bottom:6px transparent dashed; border-left:6px white solid; overflow:hidden;}
.ri-arrow1{left:1px; border-left:6px #efefef solid;}
.ri-arrow2{border-left:6px white solid;}

/* 移动端隐藏客服模块 */
@media (max-width: 720px) {
    .y-kefu-box {
        display: none;
    }
}

.y-kefu-box01 .y-ewm-box{width:151px; height:178px; top:-60px;}
.y-kefu-box01 .y-ewm-box>div{width:151px; height:178px;}
.y-kefu-box01 .y-ewm-box img{width:94px; height:94px; margin:30px auto 10px;}
.y-kefu-box01 .y-ewm-box .y-ewm-img1{width:150px; border-right:solid 1px #efefef;}
.y-kefu-box01 .y-ewm-box .right{top:84px;}

.y-kefu-box01 .y-email-infos{padding:28px 20px 28px 45px; color:#999; text-align:left; bottom:0;}
.y-kefu-box01 .y-email-infos p{color:#1E9FFF; font-size:16px;}
.y-kefu-box01 .y-email-infos>i{width:18px; height:13px; background-position:-52px -80px; position:absolute; left:15px; top:30px;}
.y-kefu-box01 .y-email-infos .right{top:55px;}
.y-kefu-box01 .hide-status{width:54px; height:65px; background-color:#1E9FFF; position:absolute; top:37px; left:55px; z-index:9;}
.y-kefu-box01 .hide-status .kf-zixun{padding:10px 0 7px; color:#fff; cursor:pointer;}

/* 富文本内容区域样式恢复 */
.rich-text-content-container {
    margin-bottom: 20px;
    /* 恢复基础文本样式 */
    line-height: 1.6;
    color: #333;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
.rich-text-content-container img{
    width: 100%;
}
/* 恢复标题默认样式 */
.rich-text-content-container h1 {
    font-size: 2em;
    font-weight: bold;
    margin: 0.67em 0;
    display: block;
}

.rich-text-content-container h2 {
    font-size: 1.5em;
    font-weight: bold;
    margin: 0.83em 0;
    display: block;
}

.rich-text-content-container h3 {
    font-size: 1.17em;
    font-weight: bold;
    margin: 1em 0;
    display: block;
}

.rich-text-content-container h4 {
    font-size: 1em;
    font-weight: bold;
    margin: 1.33em 0;
    display: block;
}

.rich-text-content-container h5 {
    font-size: 0.83em;
    font-weight: bold;
    margin: 1.67em 0;
    display: block;
}

.rich-text-content-container h6 {
    font-size: 0.67em;
    font-weight: bold;
    margin: 2.33em 0;
    display: block;
}

/* 恢复表格默认样式 */
.rich-text-content-container table {
    border-collapse: separate;
    border-spacing: 2px;
    display: table;
    margin: 1em 0;
}

.rich-text-content-container th {
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    padding: 4px;
    border: 1px solid #ccc;
}

.rich-text-content-container td {
    vertical-align: top;
    padding: 4px;
    border: 1px solid #ccc;
}

/* 恢复段落和列表样式 */
.rich-text-content-container p {
    margin: 1em 0;
    display: block;
}

.rich-text-content-container ul, .rich-text-content-container ol {
    margin: 1em 0;
    padding-left: 2em;
    display: block;
}

.rich-text-content-container ul {
    list-style-type: disc;
}

.rich-text-content-container ol {
    list-style-type: decimal;
}

.rich-text-content-container li {
    display: list-item;
    margin: 0.25em 0;
}

/* 恢复链接样式 */
.rich-text-content-container a {
    color: #0645ad;
    text-decoration: underline;
    cursor: pointer;
}

.rich-text-content-container a:hover {
    color: #0b0080;
}

/* 恢复其他内联元素样式 */
.rich-text-content-container em {
    font-style: italic;
}

.rich-text-content-container strong {
    font-weight: bold;
}

.rich-text-content-container blockquote {
    margin: 1em 2em;
    padding: 0 1em;
    border-left: 2px solid #ccc;
    display: block;
}

/*兼容pc、移动代码*/
.menu-toggle {
    display: none;
    cursor: pointer;
}

.menu-btn {
    width: 30px;
    height: 30px;
    position: relative;
}

.menu-btn span,
.menu-btn span::before,
.menu-btn span::after {
    display: block;
    background: #333;
    height: 3px;
    width: 100%;
    border-radius: 2px;
    position: absolute;
    left: 0;
    transition: all 0.3s ease;
}

.menu-btn span {
    top: 50%;
    transform: translateY(-50%);
}

.menu-btn span::before,
.menu-btn span::after {
    content: '';
    position: absolute;
}

.menu-btn span::before {
    top: -8px;
}

.menu-btn span::after {
    top: 8px;
}

.menu-btn.active span {
    background: transparent;
}

.menu-btn.active span::before {
    transform: rotate(45deg);
    top: 0;
}

.menu-btn.active span::after {
    transform: rotate(-45deg);
    top: 0;
}

.dropdown-menu {
    position: fixed;
    top: 70px;
    left: 0;
    right: 0;
    background: white;
    display: none;
    flex-direction: column;
    padding: 1rem;
    border-top: 1px solid #ccc;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.dropdown-menu.active {
    display: flex;
}

.dropdown-link {
    padding: 0.8rem 1rem;
    text-decoration: none;
    color: #333;
    border-bottom: 1px solid #f0f0f0;
    transition: all 0.3s ease;
}

.dropdown-link:hover {
    background: rgba(102, 126, 234, 0.05);
    color: #667eea;
}

.content {
    margin-top: 70px;
    padding: 2rem;
    color: white;
    text-align: center;
}
.contact-us > .logo{
    display: none;
}
@media (max-width: 1024px) {

/*}*/
/*@media (max-width: 768px) {\*/
    nav.nav,
    .nav-container .header-right{
        display: none;
    }
    .site-header{
        height: 70px;
    }
    .site-header .nav-container{
        width: calc(100% - 20px);
        height: 70px;
        margin: 0 10px;
    }
    .nav-main{
        width: auto;
    }
    .site-header .header-logo {
        width: 140px;
        height: 44px;
        flex-basis: 140px;
    }
    .menu-toggle {
        display: block;
    }
    .navbar {
        padding: 1rem;
    }
    /*index-banner*/
    .banner,
    .banner.index-energy-banner,
    .banner.index-new-banner,
    section.layui-carousel,
    .banner.index-environment-banner-short{
        width: 100vw;
        min-height: 60vh!important;
        height: 60vh;
    }
    #carousel-partner{
        background: white;
        margin-top: 30px;
        height: 250px;
        min-height: 250px!important;
    }
    .layui-carousel{
        background-color: white!important;
    }
    #carousel-partner.layui-carousel{
        background-color: white!important;
    }
    .banner.index-environment-banner,
    .banner.index-energy-banner,
    .banner.index-new-banner
    {
        background-size: auto 100%!important;
    }
    .banner-title{
        font-size: 34px!important;
        margin-top: 24vh!important;
    }
    .banner-title-small{
        display: block;
    }
    /*index-业务板块*/
    .inner-container > .title.text-5xl{
        font-size: 30px!important;
        margin-top: 30px;
        margin-bottom: 15px;
    }
    .business-modules {
        display: block!important;
    }
    .business-modules .business-right{
        height: 430px;
        background: linear-gradient(rgba(59, 166, 178, 1), rgba(118, 201, 210, 1)); /* 标准语法 */
        background: -webkit-linear-gradient(rgba(59, 166, 178, 1), rgba(118, 201, 210, 1)); /* Safari 5.1 - 6.0 */
        background: -o-linear-gradient(rgba(59, 166, 178, 1), rgba(118, 201, 210, 1)); /* Opera 11.1 - 12.0 */
        background: -moz-linear-gradient(rgba(59, 166, 178, 1), rgba(118, 201, 210, 1)); /* Firefox 3.6 - 15 */
    }
    .business-modules .business-left{
        height: 340px;
        background: linear-gradient(rgba(64, 144, 184, 1), rgba(64, 144, 184, 1)); /* 标准语法 */
        background: -webkit-linear-gradient(rgba(64, 144, 184, 1), rgba(64, 144, 184, 1)); /* Safari 5.1 - 6.0 */
        background: -o-linear-gradient(rgba(64, 144, 184, 1), rgba(64, 144, 184, 1)); /* Opera 11.1 - 12.0 */
        background: -moz-linear-gradient(rgba(64, 144, 184, 1), rgba(64, 144, 184, 1)); /* Firefox 3.6 - 15 */
    }
    .business-modules .business-left,
    .business-modules .business-right{
        margin: 0 10px 10px;
        padding: 10px 15px;
    }
    .business-modules .business-left >h4,
    .business-modules .business-right >h4{
        font-size: 26px!important;
        margin-bottom: 2px;
    }
    .business-modules .business-left >p,
    .business-modules .business-right >p{
        text-indent: 32px;
        margin-bottom: 4px;
        font-size: 16px!important;
        line-height: 28px!important;
        font-weight: normal;
    }
    /*index-culture*/
    .culture{
        display: block!important;
        margin: 0 10px 0px;
    }
    .culture .culture-1,
    .culture .culture-2,
    .culture .culture-3{
        margin-bottom: 10px;
        width: 100%;
        height: 28vh;
        background-size: 100% 100%;
    }
    /*index-company*/
    .company-introduction {
        /*margin: 0 10px 10px;*/
        background: none;
        height: auto;
    }
    .company-introduction .company-desc{
        margin: 0 15px ;
        padding: 15px;
        box-sizing: border-box;
        background: #50A1CE;
        background-size: 100% 100%;
        /*height: 370px;*/
    }
    .company-introduction .company-desc > h4{
        font-size: 26px!important;
        margin-bottom: 2px;
    }
    .company-introduction .company-desc > p{
        text-indent: 32px;
        margin-bottom: 4px;
        font-size: 16px!important;
        line-height: 28px!important;
        font-weight: normal;
    }
    /*index-logo*/
    .logo-container >li{
        width: 33.3%;
        margin-bottom: 0;
    }
    /*index-footer*/
    .footer1,
    .footer2 .inner-container .link-menu{
        display: none;
    }
    .footer2 .contact-us{
        flex: 3;
    }
    .footer2 {
        padding: 50px 15px;
    }
    .footer2 .footer2-inner .saoyisao span{
        font-size: 10px!important;
    }
    .footer2 .footer2-inner .saoyisao img{
        width: 80px;
    }
    .footer2 .footer2-inner .saoyisao{
        margin-top: 0!important;
    }
    .contact-us > .phone{
        margin-top: 2px;
    }
    .contact-us > div{
        font-size: 12px;
        transform: scale(0.9);
        transform-origin: 0 0;
    }
    .contact-us > span{
        font-size: 14px;
        color: white;
        font-weight: bold;
    }
    .contact-us > .address {
        margin-top: 0!important;
        font-size: 12px;
    }
    .contact-us > .logo{
        width: 130px;
        margin-bottom:6px;
        display: block;
    }

    /*contact-us页面*/
    .contact-us .banner.contact-us-banner-short {
        min-height: 30vh;
        height: 30vh;
        background-size: cover;
        background-position: center;
    }
    .contact-us .company-zh {
        font-size: 22px;
        letter-spacing: 2px;
        margin-top: 20px;
        padding-left: 24px;
    }
    .contact-us .company-zh:after {
        top: 14px;
    }
    .contact-us .company-en {
        font-size: 14px;
        padding-left: 24px;
    }
    .contact-us > .inner-container > ul {
        margin: 20px 10px 0;
        display: flex;
        flex-wrap: wrap;
    }
    .contact-us > .inner-container > ul li {
        float: none;
        width: 100%;
        height: auto;
        padding: 30px 20px;
        border-right: 1px solid #e6e6e6;
        border-bottom: none;
    }
    .contact-us > .inner-container > ul li:last-child {
        border-bottom: 1px solid #e6e6e6;
    }
    .contact-us > .inner-container > ul li h4 {
        font-size: 16px;
    }
    .contact-us > .inner-container > ul li p {
        font-size: 14px;
        line-height: 26px;
    }

    /*环境监控*/
    .inner-container .title-left{
        text-align: center;
    }
    .business-environment .inner-container{
        margin: 0 10px;
    }
    .plan-container{
        flex-wrap: wrap;
    }
    .plan-container .plan-right .project-bg {
        background: url('/themes/zgblog/resources/images/mobile-zhaji.png') no-repeat center center;
    }
    .plan-container .plan-right,
    .plan-container .plan-left {
        width: 100%;
        margin-right: 0;
        flex: auto;
    }
    .plan-outer-container .plan-image{
        margin-bottom: 10px!important;
    }
    .plan-container .plan-left .project-bg,
    .plan-container .plan-right .project-bg{
        height: 360px;
        background-size: cover;
    }
    .plan-container .plan-content{
        padding: 10px;
    }
    .plan-content > .h-14{
        height: 40px;
        line-height: 2.5rem;
    }
    .plan-content > div > h4{
        font-size: 26px !important;
        margin-bottom: 2px;
    }
    .plan-content > p{
        text-indent: 32px;
        margin-bottom: 4px;
        font-size: 16px !important;
        line-height: 28px !important;
        font-weight: normal;
    }
    .be-product-container > .be-product-item{
        padding: 10px;
    }
    .be-product-container > .be-product-item .product-link{
        width: 47%;
    }
    .service-container {
        flex-wrap: wrap;
    }
    .business-environment .service-container > .service-1,
    .business-environment .service-container > .service-2,
    .business-environment .service-container > .service-3{
        width: 100%;
        flex: none;
        padding: 10px;
        margin-right: 0;
        background-size: cover;
        margin-bottom: 10px;
        height: 230px;
    }
    .business-environment .service-container > .service-1 h4,
    .business-environment .service-container > .service-2 h4,
    .business-environment .service-container > .service-3 h4{
        font-size: 26px !important;
        margin-bottom: 2px;
    }
    .business-environment .service-container > .service-1 > p,
    .business-environment .service-container > .service-2 > p,
    .business-environment .service-container > .service-3 > p{
        text-indent: 32px;
        margin-bottom: 4px;
        font-size: 16px !important;
        line-height: 28px !important;
        font-weight: normal;
    }

    /*产品*/
    .inner-container.mlr-10{
        margin: 0 10px;
    }
    .inner-container .product-detail-page-title {
        margin-top: 20px;
        padding: 0 30px;
    }
    .inner-container .tab-label{
        font-size: 14px;
        margin-right: 10px;
        padding: 20px 0 10px;
    }
    .inner-container .tab-content{
        margin-top: 25px;
    }
    .inner-container .tab-content .product-item:nth-child(2n){
        margin-right: 0;
    }
    .inner-container .tab-content .product-item{
        height: auto;
        width: 49%;
        padding: 10px 10px 0;
        margin-bottom: 5px;
    }
    .tab-content .product-item img{
        height: 130px;
    }
    .tab-container{
    }
    .inner-container .product-detail h5{
        margin-top: 10px;
    }
    .inner-container .product-detail {
        margin-top: 10px;
    }
    .inner-container .product-detail.mb-10{
        margin-bottom: 0;
    }

    /*分页*/
    .page-container{
        margin: 20px 0;
    }
    .page-container .page-title .page-link{
        margin-left: 0;
        line-height: 35px;
    }

    /*新闻页面*/
    .banner.news-banner-short {
        height: 28vh !important;
        min-height: 28vh !important;
        background-size: cover;
    }
    .product-environment .inner-container {
        padding: 0 12px;
    }
    .tab-container .tab-label {
        font-size: 13px;
        margin-right: 12px;
        padding: 15px 0 10px;
        white-space: nowrap;
    }
    .tab-container .tab-content {
        margin-top: 20px;
    }
    .tab-content .product-item.news {
        width: 100% !important;
        height: auto;
        padding: 12px 10px 12px 0;
    }
    .tab-content .product-item.news .flex-left {
        width: auto;
        min-width: 60px;
        padding: 0 12px;
        margin-right: 12px;
    }
    .tab-content .product-item.news .flex-left p:first-child {
        font-size: 20px !important;
    }
    .tab-content .product-item.news .flex-left p:last-child {
        font-size: 12px;
    }
    .tab-content .product-item.news h3 {
        font-size: 15px;
        white-space: normal;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        -webkit-box-orient: vertical;
    }
    .tab-content .product-item.news .content1 {
        font-size: 13px;
    }
    .tab-content .product-item.news > div {
        height: auto;
        align-items: flex-start;
    }

    /*新闻详情页*/
    .news-detail .news-detail-title {
        font-size: 22px;
        line-height: 1.3;
        margin: 30px auto 15px;
    }
    .news-detail .news-detail-post-time {
        font-size: 13px;
        flex-wrap: wrap;
        justify-content: center;
        margin-top: 15px;
        padding: 8px 0;
    }
    .news-detail .news-detail-post-time > span {
        margin: 0 10px;
    }
    .news-detail .rich-text-content-container {
        font-size: 15px;
        line-height: 1.7;
    }
    .news-detail .rich-text-content-container img {
        height: auto;
    }
    .news-detail .rich-text-content-container table {
        display: block;
        overflow-x: auto;
    }
    .news-detail .to-news-list {
        font-size: 14px;
        padding: 8px 18px;
        flex-shrink: 0;
    }
    .news-detail .flex.justify-between.items-center.mt-10.mb-10 {
        flex-wrap: wrap;
        gap: 10px;
    }
    .news-detail .page-container {
        flex: 1;
        min-width: 200px;
    }

    .page-container .page-title{
        font-size: 18px;
    }


        /*客服*/
    .y-kefu-box{top:40%;}

}

/* 蓝湖 750px 移动端公共导航 */
@media (max-width: 720px) {
    :root {
        --mobile-header-height: 70px;
    }

    .site-header {
        height: var(--mobile-header-height);
    }

    .site-header .nav-container {
        width: calc(100% - 48px);
        height: var(--mobile-header-height);
        margin: 0 24px;
    }

    .site-header .header-logo {
        width: 90px;
        height: 28px;
        flex-basis: 110px;
    }

    .menu-toggle {
        padding: 0;
        border: 0;
    }

    .menu-btn {
        width: 20px;
        height: 20px;
    }

    .menu-btn span,
    .menu-btn span::before,
    .menu-btn span::after {
        height: 1px;
        border-radius: 0;
    }

    .menu-btn span::before {
        top: -6px;
    }

    .menu-btn span::after {
        top: 6px;
    }

    .dropdown-menu {
        position: absolute;
        top: var(--mobile-header-height);
        bottom: auto;
        z-index: 91;
        width: 100vw;
        height: calc(100vh - var(--mobile-header-height));
        padding: 0;
        overflow-y: auto;
        border-top: 1px solid #edf0f2;
        box-shadow: none;
    }

    .content {
        margin-top: var(--mobile-header-height);
    }

    .dropdown-link {
        position: relative;
        display: flex;
        align-items: center;
        min-height: 56px;
        padding: 0 25px;
        color: #343942;
        border-bottom: 1px solid #edf0f2;
        font-size: 14px;
    }

    .dropdown-link::after {
        position: absolute;
        right: 25px;
        color: #aeb3ba;
        content: "›";
        font-size: 22px;
        font-weight: 300;
    }
}

/* ==================== 产品中心列表页 2026 视觉改版 ==================== */
.product-center-page {
    min-width: 320px;
    color: #3c3d48;
    background: #f3f3f3;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

.product-center-main {
    overflow: hidden;
}

.product-center-width {
    width: min(1400px, calc(100% - 80px));
    margin-right: auto;
    margin-left: auto;
}

.product-center-hero {
    width: 100%;
    height: 400px;
    background: #f4f8fc url('/themes/zgblog/resources/images/product-center-banner.png') no-repeat center;
    background-size: cover;
}

.product-catalog {
    min-height: 610px;
    padding-bottom: 70px;
    background: #f3f3f3;
}

.product-category-nav {
    display: flex;
    align-items: flex-end;
    height: 78px;
    border-bottom: 1px solid #dcdee2;
}

.product-category-nav a {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    margin-right: 74px;
    padding-top: 12px;
    color: #a8abb2;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.4;
}

.product-category-nav a:hover,
.product-category-nav a.active {
    color: #3d3e47;
}

.product-category-nav-pending {
    display: flex;
    align-items: center;
    height: 100%;
    margin-right: 74px;
    padding-top: 12px;
    color: #c8c9cd;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.4;
    cursor: not-allowed;
}

.product-category-nav a.active::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 4px;
    content: "";
    background: #268fd6;
}

/* 产品中心统一单页：一级分组显隐，默认仅展示激活分组 */
.product-center-page .product-group-section {
    display: none;
}

.product-center-page .product-group-section.is-active {
    display: block;
}

.product-center-page .tab-container {
    margin-top: 0;
    overflow: visible;
}

.product-center-page .tab-label {
    display: inline-flex;
    align-items: center;
    height: 62px;
    margin-right: 38px;
    padding: 0;
    color: #8e9199;
    border-bottom: 0;
    font-size: 17px;
    font-weight: 400;
    scroll-margin-top: 105px;
}

.product-center-page .tab-label:hover{
    color: #268fd6;
    border-bottom: 0;
    background: transparent;
}
.product-center-page .tab-radio:checked + .tab-label {
    color: #fff;
    border-bottom: 0;
    background: transparent;
}

.product-center-page .tab-radio:checked + .tab-label {
    height: 30px;
    margin-top: 16px;
    padding: 0 14px;
    background: #268fd6;
}

.product-center-page .tab-content {
    display: none;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 34px 18px;
    margin-top: 10px;
}

.product-center-page .tab-content.is-active { display: grid; }

.product-center-page #tab1:checked ~ #content1,
.product-center-page #tab2:checked ~ #content2,
.product-center-page #tab3:checked ~ #content3 {
    display: grid;
}

.product-center-page .tab-content .product-item {
    display: flex;
    flex-direction: column;
    width: auto;
    height: auto;
    min-width: 0;
    margin: 0;
    padding: 10px 10px 0;
    overflow: hidden;
    color: #41434b;
    border: 1px solid #e7ecf1;
    background: #fff;
    box-sizing: border-box;
    transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}

.product-center-page .tab-content .product-item:hover,
.product-center-page .tab-content .product-item:focus-visible {
    color: #208ed8;
    border-color: #2699e4;
    box-shadow: 0 8px 24px rgba(48, 119, 166, 0.12);
    outline: 0;
    transform: translateY(-2px);
}

.product-center-page .tab-content .product-cover {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 4 / 3;
    padding: 16px;
    overflow: hidden;
    background: #ffffff;
}

.product-center-page .tab-content .product-cover img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-center-page .tab-content .product-cover-placeholder {
    color: #9aa7b3;
    font-size: 14px;
}

.product-center-page .tab-content .product-item span {
    position: static;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    margin: 0 !important;
    padding: 6px 10px;
    font-size: 17px;
    line-height: 1.5;
    text-align: center;
}

.product-pagination {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 38px;
}

.product-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    color: #8f95a0;
    border: 1px solid #aeb4bd;
    background: transparent;
    font-size: 17px;
    line-height: 1;
}

.product-pagination .disabled {
    color: #b9bdc4;
    border-color: #c9cdd3;
}

@media (max-width: 1024px) {
    .product-center-width {
        width: min(100% - 40px, 900px);
    }

    .product-center-page .product-category-nav {
        height: 66px;
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
    }

    .product-center-page .product-category-nav a {
        margin-right: 36px;
        padding-top: 10px;
        font-size: 19px;
        line-height: 1.4;
        white-space: nowrap;
    }

    .product-center-page .tab-content {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .product-center-page .tab-content .product-cover { padding: 14px; }
}

@media (max-width: 720px) {
    .product-center-width {
        width: calc(100% - 28px);
    }

    .product-center-hero {
        height: 240px;
        background-position: 57% center;
    }

    .product-catalog {
        padding-bottom: 38px;
    }

    .product-center-page .product-category-nav {
        height: 60px;
    }

    .product-center-page .product-category-nav a {
        margin-right: 34px;
        padding-top: 8px;
        font-size: 18px;
        line-height: 1.4;
    }

    .product-center-page .tab-label {
        margin-right: 14px;
        font-size: 13px;
    }

    .product-center-page .tab-radio:checked + .tab-label {
        padding: 0 10px;
    }

    .product-center-page .tab-content {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px 10px;
    }

    .product-center-page .tab-content .product-item,
    .product-center-page .inner-container .tab-content .product-item {
        width: auto;
        padding: 6px 6px 0;
        margin: 0;
    }

    .product-center-page .tab-content .product-cover { padding: 8px; }

    .product-center-page .tab-content .product-item span {
        min-height: 48px;
        padding: 5px 2px;
        font-size: 13px;
    }

    .product-pagination {
        margin-top: 24px;
    }

    .product-pagination span {
        width: 24px;
        height: 24px;
        font-size: 15px;
    }

    .home-footer-contact strong,
    .home-footer-phone {
        font-size: 23px;
    }

    .home-footer-contact span {
        margin-top: 4px;
        font-size: 10px;
    }

    .home-footer-contact p {
        font-size: 10px;
    }
}

/* ==================== 产品详情页统一结构 ==================== */
.product-detail-page,
.solution-detail-page {
    min-width: 320px;
    color: #313541;
    background: #f3f4f6;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

.product-detail-page > section {
    min-height: 620px;
    padding: 80px 0 26px;
    background: #f3f4f6;
}

.product-detail-shell {
    width: min(1140px, calc(100% - 40px));
    margin: 0 auto;
}

.product-detail-breadcrumb {
    display: flex;
    align-items: center;
    min-height: 38px;
    overflow: hidden;
    color: #a2a7b0;
    font-size: 16px;
    line-height: 1.6;
    white-space: nowrap;
}

.product-detail-breadcrumb a,
.product-detail-breadcrumb span,
.product-detail-breadcrumb strong {
    flex: 0 0 auto;
    color: inherit;
    font-weight: 400;
}

.product-detail-breadcrumb a:hover,
.product-detail-breadcrumb strong {
    color: #2d94df;
}

.product-detail-breadcrumb i {
    margin: 0 12px;
    color: #aeb3bb;
    font-size: 16px;
    font-style: normal;
}

.product-detail-page .product-detail-page-title {
    position: relative;
    margin: 18px 0 24px;
    padding: 0 0 0 13px;
    border: 0;
    background: transparent;
    color: #282d39;
    font-size: 21px;
    font-weight: 400;
    line-height: 24px;
    text-align: left;
}

.product-detail-page .product-detail-page-title::before {
    position: absolute;
    top: 1px;
    bottom: 1px;
    left: 0;
    width: 3px;
    content: "";
    background: #268ed6;
}

.product-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 897px) 220px;
    gap: 10px;
    align-items: start;
}

.product-detail-primary,
.product-detail-content {
    min-width: 0;
}

.product-detail-content {
    min-height: 600px;
    padding: 32px 40px 36px;
    background: #fff;
}

.product-detail-content .tab-container.in {
    width: 100%;
    margin: 0;
    overflow: visible;
}

.product-detail-page .product-detail {
    margin: 0 0 42px;
}

.product-detail-page .product-detail:last-child {
    margin-bottom: 0;
}

.product-detail-page .product-detail h5,
.product-detail-page .product-detail .product-info h5 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin: 0 0 14px;
    color: #3e424c;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    text-align: center;
}

.product-detail-page .product-detail h5::before,
.product-detail-page .product-detail h5::after {
    width: 48px;
    height: 1px;
    content: "";
    background: #d9dce1;
}

.product-detail-page .product-detail p,
.product-detail-page .product-detail .product-info p {
    margin: 0 0 10px;
    color: #8a8f98;
    font-size: 13px;
    line-height: 1.9;
    text-align: justify;
}

/* 产品详情正文图片：尊重后台编辑的宽度，仅限制不超过父元素宽度 */
.product-detail-page .product-detail img,
.product-detail-page .product-detail img[width] {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 16px auto 0;
    border: 0;
}

/* 产品详情封面：居中展示，尊重后台编辑宽度，超过父元素时限制为100%，无边框 */
.product-detail-content .product-detail:first-child > img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 20px auto 0;
    border: 0;
}

/* 右侧产品分类 */
.product-detail-sidebar {
    width: 220px;
    overflow: hidden;
    background: #fff;
}

.product-detail-sidebar-title {
    height: 40px;
    margin: 0;
    background: #3098e8;
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    line-height: 40px;
    text-align: center;
}

.product-detail-sidebar-root {
    position: relative;
    height: 38px;
    padding-left: 26px;
    border-bottom: 1px solid #e5e7eb;
    color: #555b64;
    font-size: 14px;
    line-height: 38px;
}

.product-detail-sidebar-root::before {
    position: absolute;
    top: 12px;
    bottom: 12px;
    left: 13px;
    width: 2px;
    content: "";
    background: #2b98e7;
}

.product-detail-sidebar-group {
    border-bottom: 1px solid #d9dce1;
    background: #e9eaec;
}

.product-detail-sidebar-group summary {
    position: relative;
    height: 38px;
    padding: 0 32px 0 28px;
    color: #525760;
    font-size: 13px;
    line-height: 38px;
    cursor: pointer;
    list-style: none;
}

.product-detail-sidebar-group summary::-webkit-details-marker {
    display: none;
}

.product-detail-sidebar-group summary::before {
    position: absolute;
    top: 17px;
    left: 13px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    content: "";
    background: #aeb4c8;
}

.product-detail-sidebar-group summary::after {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 7px;
    height: 7px;
    border-right: 1px solid #aeb4bd;
    border-bottom: 1px solid #aeb4bd;
    content: "";
    transform: rotate(45deg);
    transition: transform .2s ease;
}

.product-detail-sidebar-group[open] summary::after {
    top: 17px;
    transform: rotate(225deg);
}

.product-detail-sidebar-list {
    padding: 0 6px 6px;
    background: #e9eaec;
}

.product-detail-sidebar-list a {
    display: grid;
    grid-template-columns: 66px minmax(0, 1fr);
    align-items: center;
    min-height: 66px;
    margin-top: 5px;
    overflow: hidden;
    background: #fff;
    color: #444953;
    font-size: 13px;
    line-height: 1.45;
}

.product-detail-sidebar-list a:hover,
.product-detail-sidebar-list a.active {
    color: #248fdc;
}

.product-detail-sidebar-list img {
    width: 66px;
    height: 66px;
    object-fit: cover;
}

.product-detail-sidebar-list span {
    padding: 8px 10px;
}

/* 上下篇 */
.product-detail-page .page-container,
.solution-detail-page .page-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    margin: 26px 0 0;
}

.product-detail-page .page-container .page-title,
.solution-detail-page .page-container .page-title {
    display: flex;
    align-items: center;
    min-width: 0;
    min-height: 52px;
    padding: 8px 13px;
    border: 1px solid #e1e3e7;
    background: #f7f7f8;
    color: #a1a6af;
    font-size: 12px;
    font-weight: 400;
}

.product-detail-page .page-container .page-link,
.solution-detail-page .page-container .page-link {
    display: block;
    min-width: 0;
    margin-left: 10px;
    overflow: hidden;
    color: #777d87;
    line-height: 20px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.product-detail-page .page-container .page-link:hover,
.solution-detail-page .page-container .page-link:hover {
    color: #248fdc;
}

@media (max-width: 760px) {
    .product-detail-page > section {
        padding-top: 66px;
    }

    .product-detail-shell {
        width: calc(100% - 24px);
    }

    .product-detail-breadcrumb {
        overflow-x: auto;
        scrollbar-width: none;
    }

    .product-detail-breadcrumb::-webkit-scrollbar {
        display: none;
    }

    .product-detail-page .product-detail-page-title {
        margin: 14px 0 18px;
        font-size: 19px;
        line-height: 1.5;
    }

    .product-detail-layout {
        display: flex;
        flex-direction: column;
    }

    .product-detail-primary,
    .product-detail-sidebar {
        width: 100%;
    }

    .product-detail-content {
        min-height: 0;
        padding: 24px 18px 28px;
    }

    .product-detail-page .product-detail {
        margin-bottom: 30px;
    }

    .product-detail-page .page-container,
    .solution-detail-page .page-container {
        grid-template-columns: 1fr;
        margin: 16px 0 22px;
    }

    .product-detail-sidebar {
        display: none;
        order: 2;
    }
}

/* ==================== 能源业务页 1920 视觉改版 ==================== */
.business-energy-page {
    min-width: 320px;
    margin: 0;
    color: #30333d;
    background: #f3f4f6;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

.energy-main {
    overflow: hidden;
}

.energy-content-width {
    width: min(1400px, calc(100% - 80px));
    margin-right: auto;
    margin-left: auto;
}

.energy-hero {
    width: 100%;
    height: 460px;
    background:
        linear-gradient(90deg, rgba(70, 144, 190, 0.16), rgba(255, 169, 82, 0.08)),
        url('/themes/zgblog/resources/images/yewubankuai.png') no-repeat center 66%;
    background-size: cover;
}

/* 业务方向 Tab - 能源页激活状态 */
.business-energy-page .business-direction-tab.is-active {
    color: #1686cd;
    background: #fff;
}

/* 方案简介 */
.energy-overview {
    padding: 42px 0 74px;
    background: #fff;
}

.energy-intro {
    padding: 0 20px;
    color: #555a63;
    font-size: 18px;
    line-height: 1.8;
}

.energy-intro p {
    margin: 0 0 8px;
}

.energy-intro dl,
.energy-intro dt,
.energy-intro dd {
    margin: 0;
    padding: 0;
}

.energy-intro dl {
    display: grid;
    gap: 6px;
}

.energy-intro dt {
    color: #1f2430;
    font-weight: 600;
}

.energy-intro dd {
    color: #555a63;
}

/* 解决方案卡片 */
.energy-solution-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
    margin-top: 48px;
}

.energy-solution-card {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 24px;
    color: #fff;
    text-decoration: none;
    min-height: 260px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.energy-solution-card:hover,
.energy-solution-card:focus-visible {
    transform: translateY(-4px);
    box-shadow: 0 24px 48px rgba(22, 134, 205, 0.18);
    outline: none;
}

.energy-solution-card.energy-digital {
    background:
        linear-gradient(135deg, rgba(22, 134, 205, 0.92), rgba(22, 134, 205, 0.65)),
        url('/themes/zgblog/resources/images/energy-digital.jpg') center/cover no-repeat;
}

.energy-solution-card.energy-saving {
    background:
        linear-gradient(135deg, rgba(255, 169, 82, 0.92), rgba(255, 169, 82, 0.65)),
        url('/themes/zgblog/resources/images/energy-saving.jpg') center/cover no-repeat;
}

.energy-solution-copy {
    position: absolute;
    inset: 0;
    padding: 40px 36px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.energy-solution-copy h2 {
    margin: 0 0 12px;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.2;
}

.energy-solution-copy p {
    margin: 0;
    font-size: 16px;
    line-height: 1.7;
    opacity: 0.92;
}

/* 通用 section 样式 */
.energy-section {
    padding: 60px 0;
}

.energy-section + .energy-section {
    padding-top: 0;
}

.energy-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 32px;
}

.energy-section-heading h2 {
    margin: 0;
    font-size: 32px;
    font-weight: 600;
    color: #1f2430;
}

.energy-series-select {
    position: relative;
    display: inline-flex;
}

.energy-series-select select {
    appearance: none;
    -webkit-appearance: none;
    padding: 10px 44px 10px 20px;
    border-radius: 999px;
    border: 1px solid #d7dae0;
    background: #fff;
    color: #30333d;
    font-size: 16px;
    cursor: pointer;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.energy-series-select select:hover,
.energy-series-select select:focus {
    border-color: #1686cd;
    outline: none;
    box-shadow: 0 0 0 3px rgba(22, 134, 205, 0.15);
}

.energy-series-select::after {
    content: "";
    position: absolute;
    right: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid #555a63;
    border-bottom: 2px solid #555a63;
    transform: translateY(-70%) rotate(45deg);
    pointer-events: none;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* 产品网格 */
.energy-product-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 24px;
}

.energy-product-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 28px 16px;
    background: #fff;
    border-radius: 18px;
    text-decoration: none;
    color: inherit;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.energy-product-card:hover,
.energy-product-card:focus-visible {
    transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(22, 134, 205, 0.14);
    outline: none;
}

.energy-product-card img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    margin-bottom: 16px;
}

.energy-product-card span {
    font-size: 16px;
    color: #30333d;
    text-align: center;
    line-height: 1.4;
}

/* 产品分页 */
.energy-pagination {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 40px;
}

.energy-pagination button {
    min-width: 40px;
    height: 40px;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid #d7dae0;
    background: #fff;
    color: #555a63;
    font-size: 16px;
    cursor: pointer;
    transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.energy-pagination button:hover:not(:disabled) {
    border-color: #1686cd;
    color: #1686cd;
}

.energy-pagination button:disabled {
    color: #c3c7cf;
    cursor: not-allowed;
}

.energy-pagination button.is-current {
    background: #1686cd;
    border-color: #1686cd;
    color: #fff;
    font-weight: 600;
}

/* 服务卡片 */
.energy-service-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.energy-service-card {
    position: relative;
    min-height: 220px;
    border-radius: 20px;
    color: #fff;
    overflow: hidden;
    padding: 32px 28px;
    display: flex;
    align-items: flex-end;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.energy-service-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 44px rgba(22, 134, 205, 0.18);
}

.energy-service-card.energy-consulting {
    background:
        linear-gradient(135deg, rgba(22, 134, 205, 0.95), rgba(22, 134, 205, 0.7)),
        url('/themes/zgblog/resources/images/energy-consulting.jpg') center/cover no-repeat;
}

.energy-service-card.energy-customization {
    background:
        linear-gradient(135deg, rgba(255, 169, 82, 0.95), rgba(255, 169, 82, 0.7)),
        url('/themes/zgblog/resources/images/energy-customization.jpg') center/cover no-repeat;
}

.energy-service-card.energy-engineering {
    background:
        linear-gradient(135deg, rgba(70, 144, 190, 0.95), rgba(70, 144, 190, 0.7)),
        url('/themes/zgblog/resources/images/energy-engineering.jpg') center/cover no-repeat;
}

.energy-service-card > div {
    position: relative;
    z-index: 1;
}

.energy-service-card h3 {
    margin: 0 0 10px;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.3;
}

.energy-service-card p {
    margin: 0;
    font-size: 15px;
    line-height: 1.6;
    opacity: 0.95;
}

/* 移动端适配 */
@media (max-width: 1024px) {
    .energy-product-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .energy-hero {
        height: 320px;
    }

    .energy-solution-grid {
        grid-template-columns: 1fr;
    }

    .energy-product-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .energy-service-grid {
        grid-template-columns: 1fr;
    }

    .energy-section-heading {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
}

@media (max-width: 480px) {
    .energy-content-width {
        width: calc(100% - 28px);
    }

    .energy-hero {
        height: 240px;
    }

    .energy-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .energy-product-card {
        padding: 20px 12px;
    }

    .energy-solution-copy h2 {
        font-size: 24px;
    }

    .energy-solution-copy p {
        font-size: 14px;
    }

    .energy-section-heading h2 {
        font-size: 24px;
    }
}

/* 能源页复用环境治理页结构，仅覆盖能源专属视觉素材。 */
.business-energy-page .environment-hero {
    background:
        linear-gradient(90deg, rgba(70, 144, 190, 0.16), rgba(255, 169, 82, 0.08)),
        url('/themes/zgblog/resources/images/yewubankuai.png') no-repeat center 66%;
    background-size: cover;
}

.business-energy-page .energy-digital {
    border: 4px solid #168ddd;
    background-image: url('/themes/zgblog/resources/images/energy-plan/energy-right.png');
}

.business-energy-page .energy-saving {
    background-image: url('/themes/zgblog/resources/images/index-banner/energy.png');
}

.business-energy-page .energy-consulting {
    background-image: url('/themes/zgblog/resources/images/service/service1.png');
}

.business-energy-page .energy-customization {
    background-image: url('/themes/zgblog/resources/images/service/service2.png');
}

.business-energy-page .energy-engineering {
    background-image: url('/themes/zgblog/resources/images/service/service3.png');
}

@media (max-width: 560px) {
    .business-energy-page .environment-hero {
        background-position: 35% center;
    }
}

/* ==================== 新闻资讯列表页 2026 视觉改版 ==================== */
.news-list-page {
    min-width: 320px;
    color: #222233;
    background: #f0f0f0;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

.news-list-main {
    overflow: hidden;
}

.news-list-width {
    width: min(1400px, calc(100% - 80px));
    margin-right: auto;
    margin-left: auto;
}

.news-list-hero {
    width: 100%;
    height: 440px;
    background: #dfe8ef url('/themes/zgblog/resources/images/news-banner.jpg') no-repeat center;
    background-size: cover;
}

.news-catalog {
    padding-bottom: 20px;
}

/* 分类标签 */
.news-tabs {
    position: relative;
    display: flex;
    justify-content: center;
    gap: 56px;
    height: 120px;
    border-bottom: 1px solid #e2e3e6;
}

.news-tab-radio {
    display: none;
}

.news-tab-label {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    color: #5f6470;
    font-size: 17px;
    cursor: pointer;
    transition: color 0.2s ease;
}

.news-tab-label:hover {
    color: #1368ac;
}

#newsTab1:checked ~ .news-tabs label[for="newsTab1"],
#newsTab2:checked ~ .news-tabs label[for="newsTab2"],
#newsTab3:checked ~ .news-tabs label[for="newsTab3"],
#newsTab4:checked ~ .news-tabs label[for="newsTab4"] {
    color: #1368ac;
}

#newsTab1:checked ~ .news-tabs label[for="newsTab1"]::after,
#newsTab2:checked ~ .news-tabs label[for="newsTab2"]::after,
#newsTab3:checked ~ .news-tabs label[for="newsTab3"]::after,
#newsTab4:checked ~ .news-tabs label[for="newsTab4"]::after {
    position: absolute;
    right: 0;
    bottom: 24px;
    left: 0;
    height: 3px;
    content: "";
    background: #1368ac;
}

/* 列表 */
.news-panel {
    display: none;
}

#newsTab1:checked ~ #newsContent1,
#newsTab2:checked ~ #newsContent2,
#newsTab3:checked ~ #newsContent3,
#newsTab4:checked ~ #newsContent4 {
    display: block;
}

.news-item {
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr) 300px;
    align-items: center;
    padding: 42px 55px;
    color: inherit;
    border-bottom: 1px solid #e6e7e9;
    text-decoration: none;
    transition: background-color 0.25s ease;
}

.news-item:hover {
    background: #f7f7f8;
}

.news-item-date {
    align-self: start;
    padding-top: 6px;
}

.news-item-year {
    display: block;
    margin-bottom: 6px;
    color: #9fa0ac;
    font-size: 14px;
    line-height: 1;
}

.news-item-day {
    display: block;
    color: #888899;
    font-size: 36px;
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: 1px;
}

.news-item-line {
    position: relative;
    display: block;
    width: 30px;
    height: 2px;
    margin-top: 20px;
    background: #b9bcc4;
    transition: width 0.25s ease, background-color 0.25s ease;
}

.news-item-line::after {
    position: absolute;
    right: 0;
    top: 0;
    width: 10px;
    height: 2px;
    content: "";
    background: transparent;
    transform: rotate(-45deg);
    transform-origin: right top;
    transition: background-color 0.25s ease;
}

.news-item:hover .news-item-line {
    width: 56px;
    background: #1368ac;
}

.news-item:hover .news-item-line::after {
    background: #1368ac;
}

.news-item-body {
    flex: 1;
    min-width: 0;
    margin-right: 40px;
}

.news-item-body h3 {
    margin: 0 0 14px;
    overflow: hidden;
    display: -webkit-box;
    color: #222233;
    font-size: 21px;
    font-weight: 500;
    line-height: 1.5;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    transition: color 0.25s ease;
}

.news-item:hover .news-item-body h3 {
    color: #1368ac;
}

.news-item-body p {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: #6c6c74;
    font-size: 15px;
    line-height: 1.9;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.news-item-thumb {
    width: 100%;
    height: 180px;
    overflow: hidden;
}

.news-item-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 分页 */
.news-pagination {
    display: flex;
    justify-content: center;
    gap: 8px;
    padding: 42px 0 48px;
}

.news-pagination .news-page-arrow,
.news-pagination .news-page-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    color: #5f6470;
    border: 1px solid #c9ccd1;
    background: #fff;
    font-size: 17px;
    line-height: 1;
}

.news-pagination .news-page-arrow.disabled {
    color: #b9bdc4;
    border-color: #d3d5d9;
}

.news-pagination .news-page-number {
    color: #3c3d48;
}

/* 当前激活的页码 */
.news-pagination .news-page-number.active {
    color: #fff;
    background: #1E9FFF;
    border-color: #1E9FFF;
    font-weight: 500;
}

/* 新闻列表页移动端适配 */
@media (max-width: 720px) {
    .news-list-width {
        width: calc(100% - 28px);
    }

    .news-list-hero {
        height: 240px;
        background-position: center;
    }

    .news-tabs {
        height: 72px;
        gap: 0;
        padding: 0;
        border-bottom: 0;
    }

    .news-tab-label {
        flex: 1;
        justify-content: center;
        font-size: 15px;
    }

    #newsTab1:checked ~ .news-tabs label[for="newsTab1"]::after,
    #newsTab2:checked ~ .news-tabs label[for="newsTab2"]::after,
    #newsTab3:checked ~ .news-tabs label[for="newsTab3"]::after,
    #newsTab4:checked ~ .news-tabs label[for="newsTab4"]::after {
        right: 25%;
        bottom: 12px;
        left: 25%;
        height: 3px;
    }

    .news-catalog {
        padding-top: 4px;
    }

    .news-item {
        display: flex;
        align-items: flex-start;
        margin-bottom: 12px;
        padding: 16px 16px;
        border-bottom: 0;
        border-radius: 14px;
        background: #fff;
    }

    .news-item:hover {
        background: #fff;
    }

    .news-item-date {
        flex: 0 0 80px;
        width: 80px;
    }

    .news-item-year {
        margin-bottom: 4px;
        font-size: 12px;
    }

    .news-item-day {
        font-size: 24px;
        letter-spacing: 0;
    }

    .news-item-line {
        width: 22px;
        height: 2px;
        margin-top: 14px;
    }

    .news-item:hover .news-item-line {
        width: 22px;
        background: #b9bcc4;
    }

    .news-item-line::after {
        display: none;
    }

    .news-item-body {
        margin-right: 0;
    }

    .news-item-body h3 {
        display: -webkit-box;
        margin-bottom: 14px;
        padding-bottom: 14px;
        border-bottom: 1px solid #edeef0;
        font-size: 17px;
        line-height: 1.55;
        white-space: normal;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .news-item:hover .news-item-body h3 {
        color: #222233;
    }

    .news-item-body p {
        font-size: 13px;
        line-height: 1.8;
    }

    .news-item-thumb {
        display: none;
    }

    .news-pagination {
        padding: 24px 0 36px;
    }

    .news-pagination .news-page-arrow,
    .news-pagination .news-page-number {
        width: 30px;
        height: 30px;
        font-size: 15px;
    }
}

/* ==================== 新闻详情页 2026 视觉改版 ==================== */
.news-detail-page {
    --news-header-height: 70px;
    min-width: 320px;
    color: #222233;
    background: #f0f0f0;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

.news-detail-main {
    padding-top: var(--news-header-height);
    overflow: hidden;
}

.news-detail-shell {
    width: min(1400px, calc(100% - 80px));
    margin-right: auto;
    margin-left: auto;
}

.news-detail-header {
    padding-top: 40px;
}

.news-detail-page .news-detail-title {
    width: min(1400px, calc(100% - 80px));
    margin: 0 auto;
    color: #1368ac;
    font-size: 42px;
    font-weight: 400;
    line-height: 1.45;
    text-align: center;
}

/* 日期与浏览量 */
.news-detail-layout {
    display: block;
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 40px;
}

.news-detail-meta {
    margin-bottom: 20px;
}

.news-detail-date {
    display: block;
    color: #9fa0ac;
    font-size: 14px;
    line-height: 1.6;
}

.news-detail-views {
    display: block;
    margin: 4px 0 0;
    color: #aaa;
    font-size: 13px;
}

/* 正文 */
.news-detail-article {
    min-width: 0;
    text-align: center;
}

.news-detail-page .rich-text-content-container {
    margin: 0;
    color: #222233;
    font-size: 16px;
    line-height: 2;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

.news-detail-page .rich-text-content-container p {
    margin: 0 0 26px;
}

.news-detail-page .rich-text-content-container img {
    display: block;
    width: 100%;
    height: auto;
    margin: 30px 0;
}

.news-detail-page .rich-text-content-container h1,
.news-detail-page .rich-text-content-container h2,
.news-detail-page .rich-text-content-container h3,
.news-detail-page .rich-text-content-container h4 {
    margin: 34px 0 18px;
    color: #222233;
    font-weight: 700;
    line-height: 1.6;
}

.news-detail-page .rich-text-content-container table {
    max-width: 100%;
    border-collapse: collapse;
}

/* 底部：返回列表 + 上下篇 */
.news-detail-foot {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    padding: 64px 0 96px;
}

.news-detail-back {
    display: inline-flex;
    align-items: center;
    gap: 20px;
    flex: 0 0 360px;
    color: #8b909a;
    font-size: 19px;
    text-decoration: none;
    transition: color 0.2s ease;
}

.news-detail-back:hover {
    color: #1368ac;
}

.news-detail-back-icon {
    width: 30px;
    height: 30px;
    color: #9aa8b5;
    flex: 0 0 auto;
}

.news-detail-back:hover .news-detail-back-icon {
    color: #1368ac;
}

.news-detail-prevnext {
    display: flex;
    flex: 1;
    gap: 15px;
    min-width: 0;
}

.news-prevnext-card {
    display: block;
    flex: 1;
    min-width: 0;
    padding: 22px 26px 24px;
    border: 1px solid #dcdde1;
    background: #f0f0f0;
    text-decoration: none;
    transition: background-color 0.25s ease;
}

.news-prevnext-card:hover {
    background: #dddddd;
}

.news-prevnext-tag {
    display: flex;
    align-items: center;
    gap: 16px;
    color: #9f9fa3;
    font-size: 15px;
}

.news-prevnext-next .news-prevnext-tag {
    justify-content: flex-end;
}

.news-prevnext-arrow {
    width: 46px;
    height: 14px;
    color: #9f9fa3;
    flex: 0 0 auto;
}

.news-prevnext-title {
    display: block;
    margin-top: 14px;
    overflow: hidden;
    color: #6c6c74;
    font-size: 20px;
    line-height: 1.5;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.news-prevnext-next .news-prevnext-title {
    text-align: right;
}

/* 新闻详情页移动端适配 */
@media (max-width: 720px) {
    .news-detail-page {
        --news-header-height: 70px;
    }

    .news-detail-shell {
        width: calc(100% - 28px);
    }

    .news-detail-header {
        padding-top: 26px;
    }

    .news-detail-page .news-detail-title {
        width: calc(100% - 60px);
        color: #222233;
        font-size: 22px;
        font-weight: 500;
        line-height: 1.55;
    }

    .news-detail-layout {
        display: block;
        padding-top: 22px;
    }

    .news-detail-meta {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 0 22px;
    }

    .news-detail-year,
    .news-detail-sep,
    .news-detail-day {
        display: inline;
        margin: 0;
        color: #a5a6b2;
        font-size: 15px;
        font-weight: 400;
        line-height: 1;
        letter-spacing: 0;
    }

    .news-detail-sep {
        margin: 0 1px;
    }

    .news-detail-line {
        display: none;
    }

    .news-detail-views {
        margin: 0 0 0 26px;
        color: #a5a6b2;
        font-size: 14px;
    }

    .news-detail-article {
        margin: 0 -14px;
        padding: 34px 26px 40px;
        background: #fff;
    }

    .news-detail-page .rich-text-content-container {
        font-size: 15px;
        line-height: 1.9;
    }

    .news-detail-page .rich-text-content-container p {
        margin: 0 0 22px;
    }

    .news-detail-page .rich-text-content-container img {
        margin: 24px 0;
    }

    .news-detail-foot {
        display: block;
        padding: 20px 0 48px;
    }

    .news-detail-back {
        display: none;
    }

    .news-detail-prevnext {
        display: block;
    }

    .news-prevnext-card {
        display: flex;
        align-items: center;
        gap: 16px;
        margin-bottom: 12px;
        padding: 16px 20px;
        border: 1px solid #e9eaec;
        border-radius: 8px;
        background: #fafafa;
    }

    .news-prevnext-card:last-child {
        margin-bottom: 0;
    }

    .news-prevnext-card:hover {
        background: #fafafa;
    }

    .news-prevnext-card::after {
        width: 8px;
        height: 8px;
        content: "";
        border-top: 1px solid #9aa0aa;
        border-right: 1px solid #9aa0aa;
        flex: 0 0 8px;
        transform: rotate(-45deg) translateY(2px);
    }

    .news-prevnext-next::after {
        transform: rotate(135deg) translateY(2px);
    }

    .news-prevnext-tag {
        display: inline-flex;
        align-items: center;
        height: 28px;
        padding: 0 12px;
        border-radius: 4px;
        background: #f0f0f1;
        color: #9aa0aa;
        font-size: 13px;
        flex: 0 0 auto;
    }

    .news-prevnext-next .news-prevnext-tag {
        justify-content: flex-start;
    }

    .news-prevnext-arrow {
        display: none;
    }

    .news-prevnext-title {
        flex: 1;
        min-width: 0;
        margin-top: 0;
        color: #5d6270;
        font-size: 15px;
        text-align: left;
    }

    .news-prevnext-next .news-prevnext-title {
        text-align: left;
    }

    .news-prevnext-title::before {
        display: inline-block;
        width: 1px;
        height: 13px;
        margin-right: 16px;
        content: "";
        background: #d8dade;
        vertical-align: -2px;
    }
}

/* ==================== 联系我们页 2026 视觉改版 ==================== */
.contact-page {
    min-width: 320px;
    color: #222233;
    background: #f0f0f0;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

.contact-main {
    overflow: hidden;
}

/* 联系页面不显示悬浮客服，避免遮挡联系方式卡片。 */
.contact-page .embed-icon {
    display: none !important;
}

.contact-hero {
    width: 100%;
    height: 460px;
    background: #dfe9ef url('/themes/zgblog/resources/images/contact-us/contact-us-banner-lanhu@2x.png') no-repeat center;
    background-size: cover;
}

.contact-hero-inner {
    width: min(1400px, calc(100% - 80px));
    margin: 0 auto;
    padding-top: 100px;
}

.contact-company-zh {
    margin: 0;
    padding-left: 22px;
    border-left: 4px solid #1368ac;
    color: #2c313c;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.3;
}

.contact-company-en {
    margin: 12px 0 0;
    padding-left: 26px;
    color: #4b5563;
    font-size: 24px;
    line-height: 1.3;
}

/* 联系方式卡片 */
.contact-cards-section {
    padding-bottom: 126px;
    background: #f0f0f0;
}

.contact-cards {
    position: relative;
    z-index: 2;
    display: flex;
    gap: 55px;
    width: min(1400px, calc(100% - 80px));
    margin: -106px auto 0;
}

.contact-card {
    flex: 1;
    min-width: 0;
    height: 304px;
    padding: 0 30px;
    background: #fbfbfb;
    text-align: center;
}

.contact-card-icon {
    width: 144px;
    height: 144px;
    margin: -72px auto 0;
}

.contact-card-icon img {
    display: block;
    width: 100%;
    height: 100%;
}

.contact-card-body {
    display: block;
}

.contact-card-title {
    margin: 43px 0 0;
    color: #6c6c74;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.3;
}

.contact-card-line {
    display: block;
    width: 64px;
    height: 1px;
    margin: 18px auto 0;
    background: #d9dade;
}

.contact-card-value {
    margin: 20px 0 0;
    color: #222233;
    font-size: 40px;
    line-height: 1.35;
}

.contact-card:nth-child(2) .contact-card-value {
    margin-top: 26px;
    font-size: 30px;
}

.contact-card:nth-child(3) .contact-card-value {
    margin-top: 30px;
    font-size: 20px;
    line-height: 1.8;
}

.contact-card-sub {
    margin: 12px 0 0;
    color: #6c6c74;
    font-size: 24px;
    line-height: 1.3;
}

/* 联系我们页移动端适配 */
@media (max-width: 720px) {
    .contact-hero {
        height: 240px;
        background-position: center;
    }

    .contact-hero-inner {
        display: none;
    }

    .contact-cards-section {
        padding: 24px 0 30px;
    }

    .contact-cards {
        display: block;
        width: calc(100% - 48px);
        margin: 0 auto;
    }

    .contact-card {
        display: flex;
        align-items: center;
        gap: 10px;
        height: auto;
        margin-bottom: 22px;
        padding: 15px;
        border-radius: 20px;
        background: #fff;
        text-align: center;
    }

    .contact-card-icon {
        flex: 0 0 80px;
        width: 80px;
        height: 80px;
        margin: 0;
    }

    .contact-card-body {
        flex: 1;
        min-width: 0;
    }

    .contact-card-title {
        margin: 0;
        color: #9096a0;
        font-size: 15px;
    }

    .contact-card-line {
        width: 50px;
        margin: 11px auto 0;
        background: #dfe0e3;
    }

    .contact-card-value {
        margin: 13px 0 0;
        font-size: 18px;
    }

    .contact-card:nth-child(2) .contact-card-value,
    .contact-card:nth-child(3) .contact-card-value {
        margin-top: 13px;
        font-size: 19px;
        line-height: 1.5;
    }

    .contact-card-sub {
        margin: 6px 0 0;
        color: #9096a0;
        font-size: 13px;
    }
}

/* ==================== 新闻详情页面包屑导航 ==================== */
.news-detail-breadcrumb {
    display: flex;
    align-items: center;
    width: min(1400px, calc(100% - 80px));
    min-height: 38px;
    margin-right: auto;
    margin-left: auto;
    overflow: hidden;
    color: #a2a7b0;
    font-size: 12px;
    white-space: nowrap;
}

.news-detail-breadcrumb a,
.news-detail-breadcrumb span,
.news-detail-breadcrumb strong {
    flex: 0 0 auto;
    color: inherit;
    font-weight: 400;
}

.news-detail-breadcrumb a:hover,
.news-detail-breadcrumb strong {
    color: #2d94df;
}

.news-detail-breadcrumb i {
    margin: 0 12px;
    color: #aeb3bb;
    font-size: 16px;
    font-style: normal;
}

.news-detail-breadcrumb strong {
    max-width: 300px;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 新闻详情页面包屑移动端适配 */
@media (max-width: 720px) {
    .news-detail-breadcrumb {
        width: calc(100% - 28px);
        font-size: 11px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .news-detail-breadcrumb::-webkit-scrollbar {
        display: none;
    }

    .news-detail-breadcrumb strong {
        max-width: 180px;
    }
}

/* ============================================
   业务板块新设计样式
   ============================================ */

/* 页面基础 */
.business-environment-page,
.business-energy-page {
    min-width: 320px;
    margin: 0;
    color: #30333d;
    background: #fff;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

.business-main {
    overflow: hidden;
}

/* Hero 区域 */
.business-hero-section {
    width: 100%;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    padding: 40px 0;
}

.business-hero-width {
    width: min(1400px, calc(100% - 80px));
    margin: 0 auto;
}

.business-hero-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.business-hero-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 24px;
    background: #fff;
    border: 2px solid #e9ecef;
    border-radius: 12px;
    text-decoration: none;
    color: inherit;
    transition: all 0.3s ease;
}

.business-hero-card:hover {
    border-color: #168ddd;
    box-shadow: 0 4px 20px rgba(22, 141, 221, 0.15);
}

.business-hero-card.is-active {
    border-color: #168ddd;
}

.business-hero-card-image {
    flex: 0 0 180px;
    height: 120px;
    background-size: cover;
    background-position: center;
    border-radius: 8px;
}

.business-hero-card-content {
    flex: 1;
}

.business-hero-card-content h2 {
    margin: 0 0 12px;
    font-size: 22px;
    font-weight: 600;
    color: #1a1a1a;
}

.business-hero-card-content p {
    margin: 0 0 8px;
    font-size: 14px;
    line-height: 1.6;
    color: #666;
}

.business-hero-card-content p:last-child {
    margin-bottom: 0;
}

/* 方案区域 */
.business-solution-section {
    padding: 60px 0;
}

.business-solution-width {
    width: min(1400px, calc(100% - 80px));
    margin: 0 auto;
}

.business-section-title {
    margin: 0 0 20px;
    font-size: 32px;
    font-weight: 600;
    color: #1a1a1a;
    text-align: center;
}

.business-section-desc {
    margin: 0 auto 40px;
    max-width: 900px;
    font-size: 15px;
    line-height: 1.8;
    color: #666;
    text-align: center;
}

/* 分类 Tab */
.business-category-tabs {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-bottom: 40px;
}

.business-category-tab {
    padding: 12px 32px;
    background: #f0f0f0;
    border: none;
    border-radius: 24px;
    font-size: 16px;
    color: #666;
    cursor: pointer;
    transition: all 0.3s ease;
}

.business-category-tab:hover {
    background: #e0e0e0;
}

.business-category-tab.is-active {
    background: #168ddd;
    color: #fff;
}

/* 方案网格 */
.business-solution-grid {
    width: 100%;
}

/* 方案分类按后台排序纵向展示 */
.business-solution-category {
    margin-bottom: 48px;
}

.business-solution-category:last-child {
    margin-bottom: 0;
}

.business-solution-category-title {
    margin: 0 0 20px;
    padding-left: 14px;
    border-left: 4px solid #168ddd;
    color: #333;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.4;
}

/* 分类面板内部的方案卡片使用三列布局 */
.business-solution-panel {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.business-solution-card {
    position: relative;
    display: block;
    aspect-ratio: 4/3;
    overflow: hidden;
    border-radius: 12px;
    text-decoration: none;
    color: inherit;
}

.business-solution-card-image {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transition: transform 0.5s ease;
}

.business-solution-card:hover .business-solution-card-image {
    transform: scale(1.05);
}

.business-solution-card-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.4) 100%);
    color: #fff;
    text-align: center;
    padding: 20px;
}

.business-solution-card-overlay > span:first-child {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
    margin-bottom: 16px;
}

.business-solution-card-btn {
    padding: 8px 24px;
    background: rgba(255,255,255,0.2);
    border: 1px solid rgba(255,255,255,0.5);
    border-radius: 20px;
    font-size: 14px;
    backdrop-filter: blur(4px);
    transition: all 0.3s ease;
}

.business-solution-card:hover .business-solution-card-btn {
    background: rgba(255,255,255,0.3);
}

/* 服务区域 */
.business-service-section {
    padding: 60px 0 80px;
    background: #f8f9fa;
}

.business-service-width {
    width: min(1400px, calc(100% - 80px));
    margin: 0 auto;
}

.business-service-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: 40px;
}

.business-service-card {
    position: relative;
    aspect-ratio: 3/4;
    overflow: hidden;
    border-radius: 12px;
}

.business-service-card-image {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
}

.business-service-card-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 24px;
    background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.8) 100%);
    color: #fff;
}

.business-service-card-content h3 {
    margin: 0 0 12px;
    font-size: 20px;
    font-weight: 600;
}

.business-service-card-content p {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    opacity: 0.9;
}

/* 移动端适配 */
@media (max-width: 1024px) {
    .business-hero-cards {
        grid-template-columns: 1fr;
    }

    .business-solution-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .business-service-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 720px) {
    .business-hero-section {
        padding: 24px 0;
    }

    .business-hero-card {
        flex-direction: column;
        text-align: center;
    }

    .business-hero-card-image {
        flex: 0 0 100%;
        height: 160px;
    }

    .business-section-title {
        font-size: 24px;
    }

    .business-section-desc {
        font-size: 14px;
    }

    .business-category-tabs {
        flex-wrap: wrap;
    }

    .business-category-tab {
        padding: 10px 20px;
        font-size: 14px;
    }

    .business-solution-grid {
        grid-template-columns: 1fr;
    }

    .business-service-grid {
        grid-template-columns: 1fr;
    }

    .business-solution-section,
    .business-service-section {
        padding: 40px 0;
    }
}

/* ============================================
   业务板块 - 方案列表页
   ============================================ */

.business-solutions-page {
    min-width: 320px;
    margin: 0;
    color: #30333d;
    background: #fff;
    font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
    scroll-behavior: smooth;
}

.business-solutions-main {
    overflow: hidden;
}

/* Hero */
.business-solutions-hero {
    width: 100%;
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
    padding: 80px 0;
    text-align: center;
}

.business-solutions-hero-width {
    width: min(1400px, calc(100% - 80px));
    margin: 0 auto;
}

.business-solutions-hero-title {
    margin: 0 0 16px;
    font-size: 42px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 4px;
}

.business-solutions-hero-desc {
    margin: 0 auto;
    max-width: 700px;
    font-size: 16px;
    line-height: 1.8;
    color: rgba(255,255,255,0.75);
}

/* 方案区域 */
.business-solutions-section {
    padding: 60px 0 80px;
}

.business-solutions-width {
    width: min(1400px, calc(100% - 80px));
    margin: 0 auto;
}

/* 一级方向 Tab */
.business-solutions-tabs {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-bottom: 24px;
}

.business-solutions-tab {
    padding: 14px 40px;
    background: #f0f0f0;
    border: none;
    border-radius: 28px;
    font-size: 17px;
    font-weight: 500;
    color: #555;
    cursor: pointer;
    transition: all 0.3s ease;
}

.business-solutions-tab:hover {
    background: #e0e0e0;
}

.business-solutions-tab.is-active {
    background: #168ddd;
    color: #fff;
}

/* 二级分类筛选 */
.business-solutions-filters {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 36px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
}

.business-solutions-filter {
    padding: 8px 22px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 20px;
    font-size: 14px;
    color: #666;
    cursor: pointer;
    transition: all 0.25s ease;
}

.business-solutions-filter:hover {
    border-color: #168ddd;
    color: #168ddd;
}

.business-solutions-filter.is-active {
    background: #168ddd;
    border-color: #168ddd;
    color: #fff;
}

/* 方案网格 */
.business-solutions-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.business-solutions-empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 60px 0;
    color: #999;
    font-size: 16px;
}

/* 复用方案卡片样式 */
.business-solution-card {
    position: relative;
    display: block;
    aspect-ratio: 4/3;
    overflow: hidden;
    border-radius: 12px;
    text-decoration: none;
    color: inherit;
}

.business-solution-card-image {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transition: transform 0.5s ease;
}

.business-solution-card-image-placeholder {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

.business-solution-card:hover .business-solution-card-image {
    transform: scale(1.05);
}

.business-solution-card-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.4) 100%);
    color: #fff;
    text-align: center;
    padding: 20px;
}

.business-solution-card-overlay > span:first-child {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
    margin-bottom: 16px;
}

.business-solution-card-btn {
    padding: 8px 24px;
    background: rgba(255,255,255,0.2);
    border: 1px solid rgba(255,255,255,0.5);
    border-radius: 20px;
    font-size: 14px;
    backdrop-filter: blur(4px);
    transition: all 0.3s ease;
}

.business-solution-card:hover .business-solution-card-btn {
    background: rgba(255,255,255,0.3);
}

/* 响应式 */
@media (max-width: 1024px) {
    .business-solution-panel {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 720px) {
    .business-solution-panel {
        grid-template-columns: 1fr;
    }

    .business-solutions-hero {
        padding: 50px 0;
    }

    .business-solutions-hero-title {
        font-size: 28px;
        letter-spacing: 2px;
    }

    .business-solutions-hero-desc {
        font-size: 14px;
    }

    .business-solutions-tabs {
        flex-wrap: wrap;
    }

    .business-solutions-tab {
        padding: 10px 24px;
        font-size: 15px;
    }

    .business-solutions-grid {
        grid-template-columns: 1fr;
    }

    .business-solutions-section {
        padding: 40px 0;
    }
}

/* 业务板块：导航下拉与方案页 */
@media (min-width: 1025px) {
    .business-nav:focus-within .biz-dropdown {
        visibility: visible;
        pointer-events: auto;
        opacity: 1;
        transform: translateY(0);
        transition-delay: 0s;
    }

    .business-nav.is-dropdown-dismissed .biz-dropdown {
        visibility: hidden;
        pointer-events: none;
        opacity: 0;
        transform: translateY(-14px);
        transition: none;
    }

    .biz-dropdown-inner {
        width: min(1130px, calc(100% - 48px));
        max-width: none;
        gap: 28px;
        padding: 16px 0;
    }

    .biz-card {
        gap: 16px;
    }

    .biz-card-img {
        width: 160px;
    }

    .biz-card-img img {
        object-fit: cover;
    }

    .biz-card-body h3 {
        margin-bottom: 4px;
        font-size: 23px;
        line-height: 1.3;
    }

    .biz-card-body p {
        font-size: 13px;
        line-height: 1.45;
        -webkit-line-clamp: 3;
    }

    .biz-card-arrow {
        margin-top: 2px;
        font-size: 22px;
    }
}

.business-solutions-page .business-solutions-main {
    padding-top: 70px;
    overflow: clip;
}

.business-solutions-page .business-visual-banner {
    height: clamp(280px, 20vw, 380px);
    background: #d6dfdd url('/themes/zgblog/resources/images/yewubankuai.png') center 65% / cover no-repeat;
}

.business-solutions-page .business-solutions-section {
    padding: 30px 0 70px;
}

.business-solutions-page .business-solutions-width {
    width: min(1400px, calc(100% - 80px));
}

.business-solutions-page .business-direction-content {
    scroll-margin-top: 90px;
}

.business-solutions-page .business-direction-content + .business-direction-content {
    margin-top: 48px;
}

/* 方向分割线 */
.business-solutions-page .business-direction-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin: 56px 0 48px;
    padding: 0 40px;
}

.business-solutions-page .business-divider-line {
    flex: 1;
    max-width: 420px;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, #c8d6e0 50%, transparent 100%);
}

.business-solutions-page .business-divider-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: linear-gradient(135deg, #e8f4f8 0%, #d0eaf5 100%);
    color: #4a9ec5;
    flex-shrink: 0;
    box-shadow: 0 2px 12px rgba(74, 158, 197, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.business-solutions-page .business-divider-icon svg {
    width: 22px;
    height: 22px;
}

.business-solutions-page .business-direction-divider:hover .business-divider-icon {
    transform: rotate(30deg) scale(1.1);
    box-shadow: 0 4px 18px rgba(74, 158, 197, 0.25);
}

.business-solutions-page .business-section-title {
    margin: 0 0 18px;
    color: #30323b;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
}

.business-solutions-page .business-section-desc {
    max-width: none;
    margin: 0 0 32px;
    color: #777c84;
    font-size: 14px;
    line-height: 1.85;
    text-align: left;
    white-space: pre-line;
}

.business-solutions-page .business-solution-card:focus-visible {
    outline: 3px solid #55a9dd;
    outline-offset: 3px;
}

.business-solutions-page .business-solution-category {
    margin: 0;
    scroll-margin-top: 110px;
}

.business-solutions-page .business-solution-category + .business-solution-category {
    margin-top: 56px;
}

.business-solutions-page .business-solution-category-title {
    display: flex;
    align-items: center;
    min-height: 40px;
    margin: 0 0 24px;
    padding: 0 0 0 22px;
    border: 0;
    border-left: 6px solid #166dac;
    color: #30333d;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.4;
    text-align: left;
}

.business-solutions-page .business-solution-category-title a {
    color: inherit;
    text-decoration: none;
}

.business-solutions-page .business-solution-category-title a:hover,
.business-solutions-page .business-solution-category-title a:focus-visible { color: #1877bd; }

.business-solutions-page .business-solution-panel {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.business-solutions-page .business-solution-card {
    aspect-ratio: 3 / 2;
    border-radius: 0;
    border: 1px solid #efefef;
}

.business-solutions-page .business-solution-card-image {
    background-color: #34617d;
}

.business-solutions-page .business-solution-card-image-placeholder {
    background-image: url('/themes/zgblog/resources/images/business-solution-fallback.png');
    background-size: 300% 300%;
}

.business-solutions-page .business-solution-card:nth-of-type(9n + 1) .business-solution-card-image-placeholder { background-position: 0 0; }
.business-solutions-page .business-solution-card:nth-of-type(9n + 2) .business-solution-card-image-placeholder { background-position: 50% 0; }
.business-solutions-page .business-solution-card:nth-of-type(9n + 3) .business-solution-card-image-placeholder { background-position: 100% 0; }
.business-solutions-page .business-solution-card:nth-of-type(9n + 4) .business-solution-card-image-placeholder { background-position: 0 50%; }
.business-solutions-page .business-solution-card:nth-of-type(9n + 5) .business-solution-card-image-placeholder { background-position: 50% 50%; }
.business-solutions-page .business-solution-card:nth-of-type(9n + 6) .business-solution-card-image-placeholder { background-position: 100% 50%; }
.business-solutions-page .business-solution-card:nth-of-type(9n + 7) .business-solution-card-image-placeholder { background-position: 0 100%; }
.business-solutions-page .business-solution-card:nth-of-type(9n + 8) .business-solution-card-image-placeholder { background-position: 50% 100%; }
.business-solutions-page .business-solution-card:nth-of-type(9n + 9) .business-solution-card-image-placeholder { background-position: 100% 100%; }

.business-solutions-page .business-solution-card-overlay {
    padding: 20px;
    background: rgba(3, 10, 16, 0.76);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.business-solutions-page .business-solution-card:hover .business-solution-card-overlay,
.business-solutions-page .business-solution-card:focus-visible .business-solution-card-overlay {
    opacity: 1;
}

.business-solutions-page .business-solution-card-overlay > span {
    position: relative;
    z-index: 1;
}

.business-solutions-page .business-solution-card-overlay > span:first-child {
    max-width: 100%;
    margin: 0;
    font-size: 19px;
    font-weight: 400;
    line-height: 1.45;
}

.business-solutions-page .business-solution-card-btn {
    position: static !important;
    margin-top: 16px;
    padding: 5px 18px;
    border-radius: 0;
    opacity: 1;
}

@media (max-width: 1024px) {
    .business-solutions-page .business-solutions-width {
        width: min(100% - 40px, 900px);
    }

    .dropdown-menu .dropdown-sublink {
        padding-left: 42px;
        background: #f5f8fa;
        color: #586775;
        font-size: 14px;
    }

    .business-solutions-page .business-solution-panel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .business-solutions-page .business-solutions-width {
        width: calc(100% - 28px);
    }

    .business-solutions-page .business-solutions-main {
        padding-top: 70px;
    }

    .business-solutions-page .business-visual-banner {
        height: 210px;
        background-position: center;
    }

    .business-solutions-page .business-solutions-section {
        padding: 28px 0 48px;
    }

    .business-solutions-page .business-direction-content + .business-direction-content {
        margin-top: 48px;
    }

    .business-solutions-page .business-solution-category + .business-solution-category {
        margin-top: 40px;
    }

    .business-solutions-page .business-solution-category-title {
        min-height: 40px;
        padding-left: 16px;
        border-left-width: 4px;
        font-size: 19px;
    }

    .business-solutions-page .business-section-title {
        font-size: 24px;
    }

    .business-solutions-page .business-section-desc {
        margin-bottom: 25px;
        font-size: 13px;
    }

    .business-solutions-page .business-solution-panel {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .business-solutions-page .business-solution-card-overlay > span:first-child {
        font-size: 18px;
    }
}

/* 方案详情：模块、应用场景和相关产品 */
.solution-detail-document { scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
    .solution-detail-document { scroll-behavior: auto; }
}

.solution-detail-page main {
    padding-bottom: 54px;
    background: #fff;
}

.solution-detail-hero {
    height: 330px;
    overflow: hidden;
    background: linear-gradient(110deg, #dceaf5, #f3f7fa);
}

.solution-detail-hero img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.solution-detail-shell {
    width: min(1400px, calc(100% - 80px));
    margin: 0 auto;
}

.solution-detail-breadcrumb {
    padding-top: 18px;
}

.solution-detail-title {
    margin: 18px 0 28px;
    color: #1877bd;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.4;
    text-align: center;
    /* 中英混排标题的视觉重心略偏左，桌面端做轻微视觉补偿。 */
    transform: translateX(8px);
}

.solution-detail-section[id] {
    scroll-margin-top: 156px;
}

.solution-detail-tabs {
    position: sticky;
    top: 70px;
    z-index: 90;
    display: flex;
    min-height: 58px;
    margin: 0 0 34px;
    overflow-x: auto;
    border-bottom: 1px solid #dbe5ed;
    background: #ffffff;
    scrollbar-width: thin;
}

.solution-detail-tab {
    flex: 0 0 auto;
    display: block;
    max-width: 260px;
    padding: 14px 22px 11px;
    overflow: hidden;
    border-bottom: 3px solid transparent;
    color: #445365;
    font-size: 17px;
    line-height: 1.5;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: color 0.2s, border-color 0.2s;
}

.solution-detail-tab:hover,
.solution-detail-tab:focus-visible,
.solution-detail-tab.is-active {
    border-bottom-color: #258dd3;
    color: #1877bd;
    text-decoration: none;
}

.solution-detail-tab:focus-visible {
    outline: 2px solid #258dd3;
    outline-offset: -4px;
}

.solution-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 30px;
    align-items: start;
}

.solution-detail-page .product-detail-sidebar { display: none; }

.solution-detail-primary { min-width: 0; }
.solution-detail-section { margin: 0 0 48px; }
.solution-detail-heading {
    margin: 0 0 0px;
    padding: 5px 18px;
    border-left: 4px solid #258dd3;
    background: #eeee;
    color: #303c4c;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.6;
}

.solution-detail-heading a {
    color: inherit;
    text-decoration: none;
}

.solution-detail-heading a:hover,
.solution-detail-heading a:focus-visible {
    color: #1877bd;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.solution-detail-rich,
.solution-detail-section > p {
    color: #222233;
    font-size: 16px;
    line-height: 2;
    overflow-wrap: anywhere;
}

.solution-detail-rich {
    overflow-x: auto;
}

.solution-detail-page .solution-detail-rich > .product-detail {
    margin-top: 0;
}

.solution-detail-page .solution-detail-rich p {
    margin: 0 0 24px;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
    text-align: inherit;
}

.solution-detail-page .solution-detail-rich p.solution-layout-break:is(:empty, :has(> br:only-child)) {
    display: none;
}

.solution-detail-page .solution-detail-rich :is(ul, ol) {
    margin: 0 0 24px;
    padding-left: 1.7em;
    list-style: revert;
}

.solution-detail-page .solution-detail-rich li {
    display: list-item;
    /* Layui 直接重置 li，列表项需继承 ul/ol 的标记类型。 */
    list-style-type: inherit;
    padding-left: 0.2em;
}

.solution-detail-page .solution-detail-rich li + li {
    margin-top: 6px;
}

.solution-detail-page .solution-detail-rich li::marker {
    color: #258dd3;
    font-weight: 600;
}

.solution-detail-page .solution-detail-rich li > :is(ul, ol) {
    margin: 8px 0 0;
}

.solution-detail-page .solution-detail-rich dl {
    margin: 0 0 22px;
}

.solution-detail-page .solution-detail-rich dd {
    margin-left: 1.7em;
}

.solution-detail-page .solution-detail-rich :is(h1, h2, h3, h4, h5, h6) {
    display: block;
    margin: 32px 0 14px;
    color: #222233;
    font-weight: 700;
    line-height: 1.6;
    text-align: inherit;
}

.solution-detail-page .solution-detail-rich h1 { font-size: 25px; }
.solution-detail-page .solution-detail-rich h2 { font-size: 22px; }
.solution-detail-page .solution-detail-rich h3 { font-size: 19px; }
.solution-detail-page .solution-detail-rich h4 { font-size: 18px; }
.solution-detail-page .solution-detail-rich :is(h5, h6) { font-size: 16px; }

.solution-detail-page .solution-detail-rich h5::before,
.solution-detail-page .solution-detail-rich h5::after {
    content: none;
}

.solution-detail-page .solution-detail-rich :is(strong, b) {
    color: inherit;
    font-weight: 700;
}

.solution-detail-page .solution-detail-rich :is(em, i:not([class])) {
    font-style: italic;
}

.solution-detail-page .solution-detail-rich a:not([class]) {
    color: #1877bd;
    text-decoration: underline;
    text-decoration-color: rgba(24, 119, 189, 0.35);
    text-underline-offset: 3px;
}

.solution-detail-page .solution-detail-rich a:not([class]):hover {
    color: #0b5791;
    text-decoration-color: currentColor;
}

.solution-detail-page .solution-detail-rich blockquote {
    margin: 24px 0;
    padding: 0 0 0 18px;
    border-left: 2px solid #b9d9ec;
    color: #5d6772;
}

.solution-detail-page .solution-detail-rich :is(img, video, iframe) {
    max-width: 100%;
}

/* 方案详情富文本：无分栏处理时，图片尊重后台编辑宽度，仅限制不超过父元素宽度 */
.solution-detail-page .solution-detail-rich img {
    height: auto;
}

.solution-detail-page .solution-detail-rich p img {
    display: block;
    margin: 24px 0;
    border: 0;
}

/* 表格内图片不拉伸，按单元格宽度自适应。 */
.solution-detail-page .solution-detail-rich table img {
    max-width: 100%;
}

/* 富文本分栏内容容器；具体比例由编辑器写入列宽。 */
.solution-detail-page .solution-detail-rich .solution-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    align-items: start;
    margin: 28px 0;
}

.solution-detail-page .solution-detail-rich .solution-layout--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.solution-detail-page .solution-detail-rich .solution-layout--4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.solution-detail-page .solution-detail-rich .solution-layout__column {
    min-width: 0;
}

.solution-detail-page .solution-detail-rich .solution-layout__column > :first-child { margin-top: 0; }
.solution-detail-page .solution-detail-rich .solution-layout__column > :last-child { margin-bottom: 0; }
.solution-detail-page .solution-detail-rich .solution-layout__column img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0;
}

.solution-detail-page .solution-detail-rich table {
    width: 100%;
    max-width: 100%;
    height: auto !important;
    margin: 24px 0;
    border-collapse: collapse;
    font-size: 14px;
    line-height: 1.35;
}

/* 富文本编辑器会给表格及行写入固定高度，展示时按实际内容收紧。 */
.solution-detail-page .solution-detail-rich :is(tr, th, td) {
    height: auto !important;
}

.solution-detail-page .solution-detail-rich :is(th, td) {
    padding: 5px 10px;
    border: 1px solid #dfe8ef;
    line-height: 1.35;
    text-align: left;
    vertical-align: top;
}

.solution-detail-page .solution-detail-rich :is(th, td) p {
    margin: 0;
    line-height: inherit;
}

.solution-detail-page .solution-detail-rich table tr:nth-child(odd) > :is(th, td) {
    background-color: #fff !important;
}

.solution-detail-page .solution-detail-rich table tr:nth-child(even) > :is(th, td) {
    background-color: #eeeeee !important;
}

.solution-detail-page .solution-detail-rich th {
    color: #303c4c;
    font-weight: 600;
}

.solution-detail-page .solution-detail-rich pre {
    margin: 20px 0;
    padding: 18px 20px;
    overflow-x: auto;
    background: #f7f8fa;
    font-size: 14px;
    line-height: 1.6;
    white-space: pre;
}

.solution-detail-page .solution-detail-rich :not(pre) > code {
    padding: 2px 5px;
    background: #f7f8fa;
    color: #246a9d;
    font-size: 0.9em;
}

.solution-detail-page .solution-detail-rich hr {
    margin: 28px 0;
    /* 覆盖 Layui 对 hr 的全局 !important 边框规则。 */
    border: 0 !important;
    border-top: 1px solid #e3e9ef !important;
}

.solution-detail-page .solution-detail-rich > :first-child { margin-top: 0; }
.solution-detail-page .solution-detail-rich > :last-child { margin-bottom: 0; }

.solution-scenes-section {
    margin-left: -22px;
    margin-right: -22px;
    padding: 30px 22px 34px;
    background: #f3f4f6;
}

.solution-scenes-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
}

.solution-scenes-track {
    display: flex;
    flex: 1;
    gap: 16px;
    min-width: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.solution-scenes-track::-webkit-scrollbar { display: none; }
.solution-scene-card {
    position: relative;
    flex: 0 0 calc((100% - 32px) / 3);
    min-width: 0;
    height: 250px;
    overflow: hidden;
    background: #d9e3eb;
    box-shadow: 0 5px 12px rgba(0, 0, 0, .14);
    scroll-snap-align: start;
}

.solution-scene-card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.solution-scene-card p {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    max-height: 5.2em;
    margin: 0;
    padding: 9px 12px;
    overflow: hidden;
    background: rgba(20, 109, 181, .76);
    color: #fff;
    font-size: 15px;
    line-height: 1.5;
    text-align: center;
}

.solution-scenes-arrow {
    flex: 0 0 22px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #aebfd2;
    font-size: 42px;
    line-height: 1;
    cursor: pointer;
}

.solution-products-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.solution-product-card {
    display: block;
    color: #39434f;
    text-align: center;
    text-decoration: none;
}

.solution-product-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 4 / 3;
    padding: 16px;
    border: 1px solid #edf1f5;
    background: #f7f9fb;
}

.solution-product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.solution-product-name {
    display: block;
    padding: 10px 5px;
    font-size: 15px;
}

.solution-product-card:hover .solution-product-name,
.solution-product-card:focus-visible .solution-product-name {
    background: #2d94df;
    color: #fff;
}

@media (max-width: 900px) {
    .solution-detail-layout { grid-template-columns: minmax(0, 1fr); gap: 18px; }
    .solution-scene-card { flex-basis: calc((100% - 16px) / 2); }
}

@media (max-width: 1024px) {
    .solution-detail-shell { width: min(100% - 40px, 900px); }
}

@media (max-width: 760px) {
    .solution-detail-hero { height: 210px; }
    .solution-detail-title { margin: 26px 0; font-size: 23px; transform: none; }
    .solution-detail-tabs { min-height: 50px; margin-bottom: 26px; }
    .solution-detail-tab { max-width: 180px; padding: 12px 15px 9px; font-size: 14px; }
    .solution-detail-section[id] { scroll-margin-top: 146px; }
    .solution-detail-layout { display: flex; flex-direction: column; }
    .solution-detail-primary { width: 100%; }
    .solution-detail-heading { padding: 9px 13px; }
    .solution-detail-rich,
    .solution-detail-section > p { font-size: 15px; line-height: 1.9; }
    .solution-detail-page .solution-detail-rich p { margin-bottom: 22px; }
    .solution-detail-page .solution-detail-rich :is(h1, h2, h3, h4, h5, h6) { margin: 24px 0 10px; }
    .solution-detail-page .solution-detail-rich h1 { font-size: 23px; }
    .solution-detail-page .solution-detail-rich h2 { font-size: 20px; }
    .solution-detail-page .solution-detail-rich h3 { font-size: 18px; }
    .solution-detail-page .solution-detail-rich :is(th, td) { padding: 5px 8px; }
    .solution-detail-page .solution-detail-rich blockquote { padding-left: 14px; }
    .solution-detail-page .solution-detail-rich .solution-layout {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 16px;
    }
    .solution-scenes-section { margin-left: -14px; margin-right: -14px; padding: 24px 14px; }
    .solution-scene-card { flex-basis: 78%; height: 230px; }
    .solution-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .solution-product-image { padding: 8px; }
}

@media (max-width: 720px) {
    .solution-detail-shell { width: calc(100% - 28px); }
    .solution-detail-tabs { top: 70px; }
}

/* 非手机端给右侧 54px 客服工具栏留出可点击且不压正文的空间。 */
@media (min-width: 721px) {
    :is(
        .home-page .home-content-width,
        .home-metrics-inner,
        .environment-content-width,
        .product-center-width,
        .energy-content-width,
        .news-list-width,
        .news-detail-shell,
        .news-detail-page .news-detail-title,
        .news-detail-breadcrumb,
        .business-hero-width,
        .business-solution-width,
        .business-service-width,
        .business-solutions-hero-width,
        .business-solutions-page .business-solutions-width,
        .solution-detail-shell
    ) {
        width: min(1400px, calc(100% - 132px));
    }

    .product-detail-shell {
        width: min(1140px, calc(100% - 132px));
    }

    .inner-container {
        width: min(1350px, calc(100% - 132px));
    }

    .business-environment .inner-container,
    .inner-container.mlr-10 {
        margin-right: auto;
        margin-left: auto;
    }
}

/* 产品详情：图文概览、后台模块和与方案详情一致的导航 */
.product-detail-page .product-detail-shell {
    width: min(1400px, calc(100% - 80px));
}
.product-detail-page > .product-environment {
    min-height: 0;
    padding-bottom: 64px;
    background: #fff;
}
.product-detail-overview {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(36px, 5vw, 78px);
    align-items: start;
    padding: 24px 0 52px;
}
.product-detail-gallery { min-width: 0; }
.product-detail-gallery-main,
.product-detail-gallery-empty {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1.32;
    overflow: hidden;
    border: 1px solid #e8edf2;
    border-radius: 0;
    background: #fff;
}
.product-detail-gallery-main { padding: 20px; }
.product-detail-gallery-main img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.product-detail-gallery-empty { color: #97a3ae; }
.product-detail-gallery-controls {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 14px;
}
.product-detail-gallery-controls > button {
    flex: 0 0 30px;
    height: 42px;
    border: 0;
    background: transparent;
    color: #708295;
    font-size: 31px;
    cursor: pointer;
}
.product-detail-gallery-controls > button:hover { color: #258dd3; }
.product-detail-gallery-thumbs {
    display: flex;
    min-width: 0;
    gap: 10px;
    overflow-x: auto;
    scrollbar-width: thin;
}
.product-detail-gallery-thumbs button {
    flex: 0 0 84px;
    height: 68px;
    padding: 5px;
    border: 1px solid #e3eaf0;
    border-radius: 0;
    background: #fff;
    cursor: pointer;
}
.product-detail-gallery-thumbs button.is-active,
.product-detail-gallery-thumbs button:focus-visible { border-color: #258dd3; outline: 1px solid #258dd3; }
.product-detail-gallery-thumbs img { width: 100%; height: 100%; object-fit: contain; }
.product-detail-overview-copy { min-width: 0; padding-top: 14px; }
.product-detail-page .product-detail-overview .product-detail-page-title {
    margin: 0;
    padding: 0 0 20px;
    border-bottom: 1px solid #dfe7ee;
    color: #273b4d;
    font-size: clamp(25px, 2vw, 34px);
    font-weight: 400;
    line-height: 1.45;
}
.product-detail-page .product-detail-overview .product-detail-page-title::before { content: none; }
.product-detail-summary {
    min-height: 130px;
    margin: 22px 0;
    color: #526174;
    font-size: 17px;
    line-height: 1.9;
    white-space: pre-line;
}
.product-detail-tabs {
    position: sticky;
    top: 70px;
    z-index: 90;
    display: flex;
    min-height: 58px;
    margin: 0 0 34px;
    overflow-x: auto;
    border-bottom: 1px solid #dbe5ed;
    background: #fff;
    scrollbar-width: thin;
}
.product-detail-section { margin: 0 0 48px; scroll-margin-top: 156px; }
.product-detail-heading {
    margin: 0 0 22px;
    padding: 10px 18px;
    border-left: 4px solid #258dd3;
    background: #efefef;
    color: #303c4c;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.6;
}
.product-detail-heading a { color: inherit; text-decoration: none; }
.product-detail-heading a:hover { color: #1877bd; }
.product-detail-section .product-detail-rich,
.product-detail-section > p { color: #222233; font-size: 16px; line-height: 1.9; overflow-wrap: anywhere; }
.product-detail-rich :is(ul, ol) { margin: 14px 0 22px; padding-left: 2em; }
.product-detail-rich ul { list-style: disc outside; }
.product-detail-rich ol { list-style: decimal outside; }
.product-detail-rich li { display: list-item; margin: 5px 0; list-style: inherit; }
.product-detail-rich img { max-width: 100%; height: auto; }
.product-detail-rich table { width: 100%; border-collapse: collapse; }
.product-detail-rich :is(th, td) { padding: 8px 12px; border: 1px solid #dce5ed; }
.product-detail-rich tr:nth-child(even) { background: #eee; }
.product-detail-rich p.solution-layout-break:is(:empty, :has(> br:only-child)) { display: none; }
.product-detail-rich .solution-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    align-items: start;
    margin: 28px 0;
}
.product-detail-rich .solution-layout--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.product-detail-rich .solution-layout--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.product-detail-rich .solution-layout__column { min-width: 0; }
.product-detail-rich .solution-layout__column > :first-child { margin-top: 0; }
.product-detail-rich .solution-layout__column > :last-child { margin-bottom: 0; }
.product-detail-rich .solution-layout__column img { display: block; max-width: 100%; height: auto; margin: 0; }
.product-detail-page .page-container { margin-top: 44px; }
@media (max-width: 760px) {
    .product-detail-rich .solution-layout { grid-template-columns: minmax(0, 1fr) !important; gap: 16px; }
    .product-detail-page .product-detail-shell { width: calc(100% - 28px); }
    .product-detail-overview { grid-template-columns: 1fr; gap: 18px; padding: 16px 0 30px; }
    .product-detail-overview-copy { padding-top: 0; }
    .product-detail-summary { min-height: 0; margin: 16px 0; font-size: 15px; }
    .product-detail-gallery-thumbs button { flex-basis: 70px; height: 58px; }
    .product-detail-tabs { top: 70px; min-height: 50px; margin-bottom: 26px; }
    .product-detail-tabs .solution-detail-tab { max-width: 180px; padding: 12px 15px 9px; font-size: 14px; }
    .product-detail-heading { padding: 9px 13px; }
}
