@charset "utf-8";
/* ===========================================================
   blocks.css — WP/Gutenberg 区块样式 (对齐 Astra 主题)
   作用: 补齐 fa_article.content 里抓取自源站的 Spectra/UAGB + WooCommerce
        区块标记所需样式(content.css 仅覆盖基础排版, 不含这些 block class)。
   配色/字号复用 home.css 的设计 token (--brand 等)。
   作用域: .article-content 内, 避免污染框架其它区域。
   断点: 991 / 767 / 480 (与 home.css / content.css 一致)
   =========================================================== */

/* ---------- 0. 根容器: 解除栅格限宽, 让 alignfull 区块真正全宽 ---------- */
.article-content { position: relative; }
/* alignfull: 突破 col-md-10 限宽, 撑到视口宽(标准 WP 全宽技巧) */
.article-content .alignfull {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    box-sizing: border-box;
}
.article-content .alignwide {
    width: calc(100% + 16vw);
    max-width: calc(100% + 16vw);
    margin-left: -8vw;
    margin-right: -8vw;
    box-sizing: border-box;
}

/* ---------- 1. Spectra / UAGB 通用容器 ---------- */
.article-content .wp-block-uagb-container,
.article-content .uagb-is-root-container,
.article-content .uagb-container-inner-blocks-wrap {
    width: 100%;
    box-sizing: border-box;
}
.article-content .uagb-is-root-container.alignfull {
    padding-left: max(20px, calc(50vw - var(--container-width, 1299px) / 2));
    padding-right: max(20px, calc(50vw - var(--container-width, 1299px) / 2));
    padding-top: 40px;
    padding-bottom: 40px;
}
.article-content .wp-block-uagb-container:not(.alignfull):not(.uagb-is-root-container) {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
    padding: 12px 0;
}
/* 间隔节 */
.article-content .uagb-is-root-container + .uagb-is-root-container { margin-top: 16px; }

/* ---------- 2. 高级标题 (Spectra advanced-heading) ---------- */
.article-content .wp-block-uagb-advanced-heading { margin: 36px 0 16px; }
.article-content .wp-block-uagb-advanced-heading .uagb-heading-text {
    font-size: 28px;
    font-weight: 600;
    color: var(--text-dark);
    line-height: 1.3;
    margin: 0;
}

/* ---------- 3. 段落 / 文本颜色 class (Astra) ---------- */
.article-content .wp-block-paragraph { margin: 0 0 16px; }
.article-content .has-text-color { color: var(--text-body); }
.article-content .has-link-color a { color: var(--brand); }
.article-content .has-ast-global-color-4-color { color: var(--text-body); }

/* ---------- 4. 按钮 (wp-block-button / Spectra modal) ---------- */
.article-content .wp-block-button,
.article-content .uagb-spectra-button-wrapper { margin: 20px 0; }
.article-content .wp-block-button__link,
.article-content .uagb-modal-button-link {
    display: inline-block;
    background: var(--brand);
    color: #fff !important;
    border: 2px solid var(--brand);
    border-radius: 4px;
    padding: 12px 28px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
    text-decoration: none;
    cursor: pointer;
    transition: background .2s, border-color .2s;
}
.article-content .wp-block-button__link:hover,
.article-content .uagb-modal-button-link:hover {
    background: var(--brand-hover);
    border-color: var(--brand-hover);
    color: #fff !important;
}
.article-content .uagb-modal { position: static; }

/* ---------- 5. WooCommerce 产品网格 ---------- */
.article-content .wp-block-woocommerce-product-collection { margin: 24px 0; }
.article-content .wc-block-product-template,
.article-content .wc-block-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.article-content .wc-block-product-template li,
.article-content .wc-block-grid li.wc-block-product {
    list-style: none;
    margin: 0;
    background: var(--bg-white);
    border: 1px solid var(--border-soft);
    border-radius: 8px;
    padding: 16px;
    text-align: center;
    transition: box-shadow .2s, border-color .2s;
    display: flex;
    flex-direction: column;
}
.article-content .wc-block-product-template li:hover,
.article-content .wc-block-grid li.wc-block-product:hover {
    box-shadow: 0 6px 20px rgba(0, 0, 0, .08);
    border-color: var(--brand);
}
/* 产品图 */
.article-content .wc-block-components-product-image,
.article-content .wc-block-grid__product-image {
    display: block;
    width: 100%;
    margin: 0 0 12px;
    border-radius: 6px;
    overflow: hidden;
}
/* <a> 链接必须撑满图片容器, 否则在含固有 width/height 属性的 <img> 上会收缩, 导致产品图塌成 ~140px */
.article-content .wc-block-components-product-image a,
.article-content .wc-block-grid__product-image a {
    display: block;
    width: 100%;
}
.article-content .wc-block-components-product-image img,
.article-content .wc-block-grid__product-image img {
    /* !important: 覆盖 <img width="300" height="300"> HTML 属性 + srcset/sizes 在多容器嵌套下
       把宽度计算成固有像素(实测塌缩至 140px)的行为, 确保图片填满卡片列宽 */
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    margin: 0;
    border-radius: 0;
    display: block;
}
/* 产品标题 */
.article-content .wc-block-product-template .wp-block-post-title,
.article-content .wc-block-grid .wc-block-grid__product-title {
    font-size: 15px;
    line-height: 1.4;
    margin: 0;
    font-weight: 600;
}
.article-content .wc-block-product-template .wp-block-post-title a,
.article-content .wc-block-grid .wc-block-grid__product-title a {
    color: var(--text-dark);
    text-decoration: none;
}
.article-content .wc-block-product-template .wp-block-post-title a:hover,
.article-content .wc-block-grid .wc-block-grid__product-title a:hover { color: var(--brand); }
/* 产品价格(若有) */
.article-content .wc-block-grid__product-price,
.article-content .wc-block-components-product-price {
    color: var(--brand);
    font-weight: 600;
    margin-top: 6px;
}

/* ---------- 6. Spectra 图片叠层卡 (overlay) ---------- */
.article-content .wp-block-uagb-image { margin: 0 0 20px; }
.article-content .wp-block-uagb-image__figure { margin: 0; position: relative; }
.article-content .wp-block-uagb-image img {
    /* !important: 覆盖 <img width="750" height="500"> HTML 属性, 避免在响应式列宽下塌缩;
       同样处理 lazy 加载图片未获得固有尺寸时的宽度问题 */
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    /* 保持源站 750x500 (3:2) 比例, 图片未加载(lazy)时也保留高度, 避免叠加层错位 */
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border-radius: 6px;
    display: block;
    margin: 0;
    background: var(--bg-soft);
}
/* overlay 内层: 渐变蒙层 + 标题 */
.article-content .wp-block-uagb-image--layout-overlay__inner {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    padding: 22px;
    background: linear-gradient(to top, rgba(0, 0, 0, .65) 0%, rgba(0, 0, 0, .15) 55%, rgba(0, 0, 0, 0) 100%);
    border-radius: 6px;
    pointer-events: none;
}
.article-content .wp-block-uagb-image--layout-overlay .uagb-image-heading {
    color: #fff;
    font-size: 22px;
    font-weight: 600;
    margin: 0;
    line-height: 1.3;
    text-shadow: 0 1px 4px rgba(0, 0, 0, .4);
}
/* 居中变体 */
.article-content .wp-block-uagb-image--layout-overlay__inner.center-center {
    align-items: center;
    justify-content: center;
    text-align: center;
}
/* 三个并列 overlay 卡所在的同级容器: 横排成三列.
   :not(.uagb-ship-*): 排除 about-shipping 单页的区块 (其分栏/网格走第 13 节专属布局,
   此处 3 列 grid 会把分栏 2 子容器挤窄, 把 2x2 网格挤成 3 列). */
.article-content .uagb-is-root-container .wp-block-uagb-container:has(.wp-block-uagb-image) {
    /* 由下面 grid 容器接管, 此处仅兜底 */
}
.article-content .uagb-is-root-container.alignfull:not(.uagb-ship-split):not(.uagb-ship-grid):has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image) > .uagb-container-inner-blocks-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    max-width: var(--container-width, 1299px);
    margin: 0 auto;
}

/* ---------- 7. Spectra FAQ 手风琴 ---------- */
.article-content .wp-block-uagb-faq { margin: 24px 0; max-width: 900px; }
.article-content .wp-block-uagb-faq-child { border: 1px solid var(--border-soft); border-radius: 6px; margin-bottom: 10px; overflow: hidden; background: var(--bg-white); }
.article-content .uagb-faq-questions-button {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    color: var(--text-dark);
    background: var(--bg-soft);
    user-select: none;
    list-style: none;
}
.article-content .uagb-faq-questions-button .uagb-question { flex: 1; }
/* 图标 span 内容为空 -> 用伪元素画 +/- */
.article-content .uagb-faq-questions-button .uagb-icon,
.article-content .uagb-faq-questions-button .uagb-icon-active {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
}
.article-content .uagb-faq-questions-button .uagb-icon::before {
    content: "+";
    font-size: 20px;
    font-weight: 400;
    color: var(--brand);
    line-height: 1;
}
.article-content .uagb-faq-questions-button .uagb-icon-active { display: none; }
.article-content .wp-block-uagb-faq-child.uagb-faq-active .uagb-icon::before { content: "\2212"; } /* − */
/* 答案: 默认折叠, 由 JS 切换 .uagb-faq-active 控制 */
.article-content .wp-block-uagb-faq-child .uagb-faq-content {
    max-height: 0;
    overflow: hidden;
    padding: 0 20px;
    transition: max-height .25s ease, padding .25s ease;
    color: var(--text-body);
    font-size: 15px;
    line-height: 1.7;
}
.article-content .wp-block-uagb-faq-child.uagb-faq-active .uagb-faq-content {
    max-height: 600px;
    padding: 14px 20px 18px;
}
.article-content .wp-block-uagb-faq-child .uagb-faq-content > p:last-child { margin-bottom: 0; }

/* ---------- 7.1 FAQ 区 (分类页 uagb-block-fdbbc4d3): 标题+手风琴 居中, 样式对齐目标站 ----------
   目标风格: FAQ root 的 inner-wrap 为 flex column + 居中, 标题与手风琴同处
   一个 900px 居中列; 卡片为透明背景/灰字/细边框/2px 圆角的素净风格 (本站默认是灰底深字 6px 圆角).
   块 hash fdbbc4d3(root) / 254f93d8(标题) 在所有产品分类页一致, 按 root 限定避免误伤其它 FAQ 页. */
.article-content .uagb-block-fdbbc4d3 > .uagb-container-inner-blocks-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: min(100%, 900px);
    margin: 0 auto;
}
/* 标题与手风琴都撑满这个 900px 居中列 */
.article-content .uagb-block-fdbbc4d3 > .uagb-container-inner-blocks-wrap > .wp-block-uagb-advanced-heading,
.article-content .uagb-block-fdbbc4d3 > .uagb-container-inner-blocks-wrap > .wp-block-uagb-faq {
    width: 100%;
    max-width: 100%;
}
.article-content .uagb-block-fdbbc4d3 .wp-block-uagb-faq { margin: 0; }
/* 卡片: 透明背景, 细灰边框, 2px 圆角 (覆盖默认白底/6px 圆角) */
.article-content .uagb-block-fdbbc4d3 .wp-block-uagb-faq-child {
    background: transparent;
    border: 1px solid #d2d2d2;
    border-radius: 2px;
}
/* 问题栏: 透明背景(去灰底), 灰字, 400 字重, 16px, padding 15px (覆盖默认灰底/深字/600) */
.article-content .uagb-block-fdbbc4d3 .uagb-faq-questions-button {
    background: transparent;
    color: #858a93;
    font-weight: 400;
    font-size: 16px;
    padding: 15px;
}
.article-content .uagb-block-fdbbc4d3 .uagb-faq-questions-button .uagb-question { color: #858a93; }
/* +/- 图标: 灰色对齐目标站 (默认品牌色) */
.article-content .uagb-block-fdbbc4d3 .uagb-faq-questions-button .uagb-icon::before { color: #858a93; }
/* 答案: padding 10px, 灰字, 16px (对齐目标站) */
.article-content .uagb-block-fdbbc4d3 .wp-block-uagb-faq-child .uagb-faq-content {
    padding: 0 15px;
    color: #858a93;
    font-size: 16px;
    line-height: 1.65;
}
.article-content .uagb-block-fdbbc4d3 .wp-block-uagb-faq-child.uagb-faq-active .uagb-faq-content { padding: 0 15px 10px; }

/* ---------- 7.2 FAQ 单页 (uagb-block-58b5472b): 搜索框+标题+手风琴 居中对齐 ----------
   该 root 内含 3 个直接子级: <form class=wp-block-search> / 标题(5cf87f90) / 手风琴(61d83665).
   通用规则只给 inner-blocks-wrap 设 width:100%, 没有居中限宽, 导致:
     - 搜索框 width:100% 撑满 alignfull 全宽(~1233px, 贴左右边)
     - 标题 "All FAQ" 同宽左对齐, 文字在最左
     - 手风琴自身 max-width:900px + margin auto 居中(左右各留 ~166px)
   三者宽度/对齐不一致(搜索框与标题飞到两侧, 手风琴居中收窄), 视觉错乱.
   修复: 让 inner-wrap 变 flex column 居中、max-width 900px (与手风琴一致),
        搜索框/标题/手风琴三者撑满该 900px 居中列, 在同一条轴线上对齐.
   block-id 58b5472b 跨语言一致 (en/es/pt 实测命中). */
.article-content .uagb-block-58b5472b > .uagb-container-inner-blocks-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: min(100%, 900px);
    margin: 0 auto;
}
/* 三者都撑满 900px 居中列, 宽度一致 */
.article-content .uagb-block-58b5472b > .uagb-container-inner-blocks-wrap > .wp-block-search,
.article-content .uagb-block-58b5472b > .uagb-container-inner-blocks-wrap > .wp-block-uagb-advanced-heading,
.article-content .uagb-block-58b5472b > .uagb-container-inner-blocks-wrap > .wp-block-uagb-faq {
    width: 100%;
    max-width: 100%;
}
/* 搜索框: 与下方手风琴同宽(900px 列内撑满), 收紧上下边距 */
.article-content .uagb-block-58b5472b .wp-block-search { margin: 0 0 8px; }
.article-content .uagb-block-58b5472b .wp-block-search .wp-block-search__inside-wrapper { width: 100%; max-width: 100%; }
/* 标题 "All FAQ": 居中对齐, 与手风琴标题视觉统一 (默认左对齐会与居中列错位) */
.article-content .uagb-block-58b5472b .wp-block-uagb-advanced-heading { text-align: center; }
.article-content .uagb-block-58b5472b .wp-block-uagb-faq { margin: 8px 0 0; }

/* ---------- 8. 图标列表 (Spectra icon-list, 首页/特性页常用) ---------- */
.article-content .wp-block-uagb-icon-list { list-style: none; margin: 0 0 16px; padding: 0; }
.article-content .wp-block-uagb-icon-list-child { display: flex; align-items: flex-start; gap: 8px; margin-bottom: 8px; }
.article-content .wp-block-uagb-icon-list .uagb-icon-list__label { color: var(--text-body); }

/* ---------- 9. 通用图片兜底 ---------- */
.article-content img[width="300"][height="300"] { width: auto; max-width: 100%; }

/* ===========================================================
   10. Contact 单页 (FluentForm 表单 + 右侧深色卡片两栏)
   背景: contact-us 页 content 抓取自源站, 依赖 FluentForm + Spectra
        动态 CSS (uag-css-2568.css 等), 抓取时被 sgcaptcha 拦截丢失。
   此处用 :has() 定位含表单/含 icon-list 的容器补齐布局, 不依赖
   易变的 uagb-block-xxxxxx 哈希 id, 全语言同构页面通用。
   =========================================================== */

/* Contact 页 (.single-page--full) 下所有 alignfull 不突破到视口全宽。
   原因: 目标站用 Astra 主题, alignfull 配合全宽 page 模板可安全突破;
   本站 contact 内容在 .article-detail (带 padding) 内, alignfull 的
   calc(50% - 50vw) 负 margin 会把内容推出视口(尤其窄屏), 故统一回到容器内。
   覆盖第 14 行 .article-content .alignfull 的全宽规则(选择器更具体, 优先级更高)。 */
.single-page--full .article-content .alignfull,
.single-page--full .article-content .alignwide {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}
.single-page--full .article-content .uagb-is-root-container.alignfull {
    padding-left: 0;
    padding-right: 0;
}
/* contact 全宽页: 去掉 article-detail 默认 padding, 让 alignfull 区块贴满 container。
   各 alignfull 区块自带内边距(下文 padding), 不需外层再包一层白底留白。 */
.single-page--full.article-detail,
.article-detail.single-page--full {
    padding: 0;
    background: none;
}

/* 顶栏: 仅含 "CONTACT US" h2 的首个 alignfull, 与页面 h1 重复, 弱化为小标题条.
   注意: 分类页 hero 经 extractHeroFromContent 提取后, 首块会变成 "X Manufacturer in China"
   容器 (uagb-block-dde8fdf5), 用 :not(:has(...)) 排除, 避免把章节主标题误弱化成小标题条.
   about-us 页移除首 hero (0d8009e4) 后, Leading EV Charger 区块 (40f0addf) 成首区块,
   也需排除, 否则其 padding 被压成 8px 与上下区块粘连 (见 about-us 专属限宽规则). */
.article-content > .wp-block-uagb-container.alignfull.uagb-is-root-container:first-child:has(.uagb-heading-text):not(:has(.uagb-block-f79ae0e4)):not(:has(.uagb-block-e7610aa5)):not(.uagb-block-40f0addf) {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}
.article-content > .wp-block-uagb-container.alignfull.uagb-is-root-container:first-child:has(.uagb-heading-text):not(:has(.uagb-block-f79ae0e4)):not(:has(.uagb-block-e7610aa5)) .uagb-heading-text {
    font-size: 15px;
    letter-spacing: 2px;
    color: var(--text-body);
    text-transform: uppercase;
    font-weight: 600;
}

/* 主区域两栏: 内层 alignfull root (ffd66e5e, 被外层 alignfull 包裹且同时含表单+icon-list)
   → 其 inner-wrap 布成 grid(左表单 / 右卡片)。
   用「被另一个 alignfull 包裹」精确锁定内层 root, 避免匹配到外层包裹 root (它也含两者)。
   该 root 的 inner-wrap 直接子节点 = 左栏(含表单) + 右栏(含卡片), 即两栏。
   注意: contact 页已由控制器切到 col-md-12 全宽, 但 alignfull 的负 margin 会突破到
   视口外导致横向溢出, 故此处覆盖 alignfull 的全宽偏移, 让两栏在容器宽度内正常排布。 */
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list) {
    /* 覆盖 alignfull 的 calc(50% - 50vw) 负 margin, 回到容器内 */
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list) > .uagb-container-inner-blocks-wrap {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 32px;
    align-items: stretch;
    width: 100%;
}
/* 两栏的左右子项 (含表单的容器 / 含 icon-list 的容器) 撑满行高, 防止内容撑破网格 */
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list) > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container {
    min-width: 0;
}

/* ---------- 10.1 FluentForm 表单外观 (左栏) ---------- */
.article-content .fluentform { width: 100%; }
.article-content .frm-fluent-form { margin: 0; }
.article-content .fluentform fieldset { border: none; margin: 0; padding: 0; }
/* 两列字段容器: Name/Email 一行, Phone/Company 一行 */
.article-content .fluentform .ff-t-container {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 14px;
}
.article-content .fluentform .ff-t-cell {
    /* !important 覆盖 FluentForm 内联 style="flex-basis:50%" (两 cell 加 gap 会换行) */
    flex: 0 0 calc(50% - 7px) !important;
    max-width: calc(50% - 7px);
    min-width: 0;
    box-sizing: border-box;
}
/* 字段标签 */
.article-content .fluentform .ff-el-input--label {
    margin-bottom: 6px;
    font-size: 14px;
    font-weight: 500;
    color: var(--text-dark);
}
.article-content .fluentform .ff-el-input--label label { display: inline-block; }
.article-content .fluentform .ff-el-is-required .asterisk-right::after,
.article-content .fluentform .ff-el-is-required label::after {
    content: " *";
    color: #d6334c;
}
/* 输入框 / 文本域统一外观 */
.article-content .fluentform .ff-el-form-control {
    width: 100%;
    height: auto;
    padding: 10px 12px;
    font-size: 15px;
    line-height: 1.5;
    color: var(--text-dark);
    background: var(--bg-white);
    border: 1px solid var(--border-soft);
    border-radius: 6px;
    box-shadow: none;
    transition: border-color .2s, box-shadow .2s;
    box-sizing: border-box;
}
.article-content .fluentform .ff-el-form-control::placeholder { color: #9ca3af; }
.article-content .fluentform .ff-el-form-control:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(12, 91, 162, .12);
    outline: none;
}
.article-content .fluentform textarea.ff-el-form-control { min-height: 110px; resize: vertical; }
.article-content .fluentform .ff-el-group { margin-bottom: 14px; }
/* 文件上传控件 */
.article-content .fluentform .ff_file_upload_holder {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}
.article-content .fluentform .ff_upload_btn {
    background: var(--bg-soft);
    color: var(--text-dark);
    border: 1px solid var(--border-soft);
    border-radius: 6px;
    padding: 8px 16px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
}
/* 提交按钮 */
.article-content .fluentform .ff_submit_btn_wrapper { margin: 8px 0 0; }
.article-content .fluentform .ff-btn-submit {
    background: var(--brand);
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 12px 32px;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    transition: background .2s;
    min-width: 160px;
}
.article-content .fluentform .ff-btn-submit:hover,
.article-content .fluentform .ff-btn-submit:focus {
    background: var(--brand-hover);
    color: #fff;
}

/* ---------- 10.2 右侧深色卡片列 (Get Quick Response + 联系信息) ---------- */
/* 右栏容器 = 同时含 "Get Quick Response" 文案(.has-ast-global-color-5-color) 与 icon-list
   的那个 wp-block-uagb-container (9f308f8d)。整块铺深色品牌渐变背景。
   注: 各语言该 block 的哈希 id 一致 (同套导入数据), 此处仍用结构特征定位, 不依赖 id。 */
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list):has(.has-ast-global-color-5-color) {
    background: linear-gradient(135deg, var(--brand) 0%, #0a3d6e 100%);
    color: #fff;
    border-radius: 10px;
    padding: 32px;
}
/* 深色卡内段落/标题反白 (覆盖 Astra 的 has-*-color 内联色) */
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) .wp-block-paragraph,
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) .has-text-color,
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) .has-white-color,
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) .has-ast-global-color-5-color {
    color: #fff;
}
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) .uagb-heading-text {
    color: #fff;
    font-size: 26px;
    font-weight: 700;
    margin: 4px 0 10px;
}
/* 联系信息列表项: 图标 + 文字, 白色 */
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) .wp-block-uagb-icon-list { margin: 0 0 18px; }
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) .wp-block-uagb-icon-list-child {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 0;
    color: #fff;
    line-height: 1.4;
}
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) .uagb-icon-list__source-wrap {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) .uagb-icon-list__source-wrap::before {
    content: "\f0e0"; /* 默认信封图标 (Font Awesome), 后续按语义可细化 */
    font-family: FontAwesome;
    font-size: 16px;
}
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) .uagb-icon-list__label { color: #fff; }
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) a {
    color: #fff;
    text-decoration: none;
}
.article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list)
    > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list) a:hover { color: #cfe2f3; }

/* ===========================================================
   11. 产品分类页补充区块 (ev-charger / dc-ev-charger 等 7 个分类页)
   背景: 这类页 content 是源站完整的 Spectra/WooCommerce 长文, 直接渲染后需补齐
        info-box / post-grid / 分页 / spec 表格 / 认证图 / CTA banner / split 两栏 的样式,
        方能达到视觉复刻效果。作用域仍限 .article-content。
   =========================================================== */

/* ---------- 11.1 split 两栏图文 (Key Features / Applications / Advantages) ----------
   源站结构: alignfull root > 两个并列 wp-block-uagb-container (一个含图 wp-block-image.alignleft,
   一个含标题+段落+按钮)。还原为左右两栏 (图 + 文), 对齐参考站。 */
.article-content .uagb-is-root-container.alignfull:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-image.alignleft) > .uagb-container-inner-blocks-wrap,
.article-content .uagb-is-root-container.alignfull:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-image.size-full) > .uagb-container-inner-blocks-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
    max-width: var(--container-width, 1299px);
    margin: 0 auto;
}
/* 含图的列: 图片撑满, 圆角 */
.article-content .uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-image.alignleft,
.article-content .uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(> .wp-block-image.size-full) {
    margin: 0;
}
.article-content .uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-image img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    border-radius: 8px;
    display: block;
    margin: 0;
}
/* 文本列: 标题左对齐 (覆盖居中默认), 按钮在段落后.
   排除 "Make Money With X" 分节标题 (uagb-block-b96bbdac, 需居中), 该块虽落在
   "含 heading 不含 image 的内层 container" 模式里, 但语义是分节标题而非文本列标题.
   同时排除含 Spectra 图 (wp-block-uagb-image) 的容器: about-us 的 "Proven Success" 区块
   (2ef6539e > 356a05fc) 含 uagb-image 但不含 wp-block-image, 若不排除会被此规则
   误判为 split 文本列, 强制标题左对齐 (该区块标题应居中). */
.article-content .uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-advanced-heading):not(:has(.wp-block-image)):not(:has(.wp-block-uagb-image)):not(:has(.uagb-block-b96bbdac)) .uagb-heading-text {
    text-align: left;
    font-size: 30px;
}

/* ---------- 11.2 产品分页 (wp-block-query-pagination) ---------- */
.article-content .wp-block-query-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin: 28px 0 8px;
}
.article-content .wp-block-query-pagination-numbers {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.article-content .wp-block-query-pagination-numbers .page-numbers,
.article-content .wp-block-query-pagination .wp-block-query-pagination-next,
.article-content .wp-block-query-pagination .wp-block-query-pagination-previous {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    border: 1px solid var(--border-soft);
    border-radius: 4px;
    color: var(--text-dark);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    background: var(--bg-white);
    transition: background .2s, color .2s, border-color .2s;
}
.article-content .wp-block-query-pagination-numbers .page-numbers.current {
    background: var(--brand);
    border-color: var(--brand);
    color: #fff;
}
.article-content .wp-block-query-pagination-numbers .page-numbers:not(.current):hover,
.article-content .wp-block-query-pagination .wp-block-query-pagination-next:hover,
.article-content .wp-block-query-pagination .wp-block-query-pagination-previous:hover {
    background: var(--brand);
    border-color: var(--brand);
    color: #fff;
}

/* ---------- 11.3 规格参数表 (wp-block-table, Detailed Specification) ----------
   两列等宽、全单元格透明背景、统一灰字 #858a93 400 字重、
   灰色实线网格边框 1px solid #858a93、padding 8px 的素净风格。 */
.article-content .wp-block-table {
    margin: 16px 0 32px;
    overflow-x: auto;
}
.article-content .wp-block-table table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 15px;
    background: transparent;
    border: none;
}
/* 单元格: 透明背景, 灰字, 400 字重, 灰色实线网格边框, padding 8px (对齐目标站) */
.article-content .wp-block-table table td {
    border: 1px solid #858a93;
    padding: 8px;
    color: #858a93;
    font-weight: 400;
    line-height: 1.6;
    vertical-align: middle;
    background: transparent;
}
/* 两列等宽 (50/50), 覆盖默认左窄右宽 */
.article-content .wp-block-table table tbody tr td:first-child {
    width: 50%;
}
/* 跨列说明行 (colspan=2): 同样灰字 400 (与目标站一致) */
.article-content .wp-block-table table td[colspan="2"] {
    color: #858a93;
    font-weight: 400;
}
/* Detailed Specification 标题: 对齐参考站 (中等字号, 加粗, 左对齐) */
.article-content .wp-block-table + .wp-block-uagb-advanced-heading,
.article-content .wp-block-uagb-advanced-heading:has(> .uagb-heading-text > strong) {
    margin-top: 24px;
}

/* ---------- 11.3.1 章节主标题放大 (产品分类页 "X Manufacturer in China" / "Detailed Specification")
   源站这两个标题在所有分类页 (ev-charger/ac/dc/level-2/...) 块 hash 一致 (f79ae0e4 / e7610aa5),
   故按块 hash 精确定位, 不影响其它 advanced-heading. 章节主标题 34px, 略小于 banner h1 (38px) 保层级. ---------- */
.article-content .wp-block-uagb-advanced-heading.uagb-block-f79ae0e4 .uagb-heading-text {
    font-size: 34px;
    font-weight: 700;
    color: var(--text-dark);
    line-height: 1.3;
}
.article-content .wp-block-uagb-advanced-heading.uagb-block-e7610aa5 .uagb-heading-text {
    font-size: 26px;
    font-weight: 700;
    color: var(--text-dark);
    line-height: 1.3;
}
/* "Different Type of X" 产品类型分节标题: 居中 (该块下方紧跟产品网格, 标题居中更平衡).
   块 hash 0bb8c8b5 在所有分类页一致. */
.article-content .wp-block-uagb-advanced-heading.uagb-block-0bb8c8b5 .uagb-heading-text {
    text-align: center;
}
/* "Make Money With X" 分节标题: 居中 (块 hash b96bbdac, 嵌在内层 container 20362f37 内,
   故会被上面"文本列标题左对齐"规则误伤, 已在该规则用 :not() 排除, 此处显式居中兜底). */
.article-content .wp-block-uagb-advanced-heading.uagb-block-b96bbdac .uagb-heading-text {
    text-align: center;
}
/* "FAQ" 区块标题 (uagb-block-254f93d8): 居中, 加大到 40px. */
.article-content .wp-block-uagb-advanced-heading.uagb-block-254f93d8 .uagb-heading-text {
    text-align: center;
    font-size: 40px;
    font-weight: 600;
    color: #000;
}

/* ---------- 11.4 info-box 优势卡 (What Sets Ahead, 3×2 网格) ----------
   源站: 6 个 wp-block-uagb-info-box 嵌在两层 wp-block-uagb-container 内 (3列×2行)。
   结构: alignfull root > (3列 wrap) > (3列 wrap) > 每格 info-box */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-info-box) > .uagb-container-inner-blocks-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    max-width: var(--container-width, 1299px);
    margin: 0 auto;
}
/* 标题容器 (advanced-heading): 跨越整行, 居中, 让下方 6 个 info-box 正常排 3×2 */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-info-box) > .uagb-container-inner-blocks-wrap > .wp-block-uagb-advanced-heading {
    grid-column: 1 / -1;
    text-align: center;
}
/* 两层嵌套的中间行容器: display:contents 让其内的 info-box 提升到上层 root 网格, 排成 3×2.
   覆盖两种 DOM 结构:
   - 老结构: 行容器 直接含 info-box (>:has(> .wp-block-uagb-info-box))
   - 新结构: 行容器 > 卡片容器 > info-box (行容器自身不是卡), 见 ev-charger 页 0f05eb60/47239ff5 */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-info-box) > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-info-box):not(:has(> .wp-block-uagb-info-box)) {
    display: contents;
}
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-info-box) > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(> .wp-block-uagb-info-box) {
    display: contents;
}
/* 单个 info-box 卡: 图标+标题+描述, 居中, 浅底卡 */
.article-content .wp-block-uagb-info-box {
    background: var(--bg-white);
    border: 1px solid var(--border-soft);
    border-radius: 10px;
    padding: 30px 24px;
    text-align: center;
    transition: box-shadow .2s, border-color .2s;
}
.article-content .wp-block-uagb-info-box:hover {
    box-shadow: 0 8px 24px rgba(12, 91, 162, .10);
    border-color: var(--brand);
}
.article-content .wp-block-uagb-info-box .uagb-ifb-content { display: block; }
/* 图标区: 占位图(data-icon-placeholder)隐藏, 改用品牌色圆形图标占位 (参考站为矢量图标) */
.article-content .wp-block-uagb-info-box .uagb-ifb-image-content {
    width: 64px;
    height: 64px;
    margin: 0 auto 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--brand) 0%, #0a3d6e 100%);
    border-radius: 50%;
}
.article-content .wp-block-uagb-info-box .uagb-ifb-image-content img[data-icon-placeholder] {
    display: none;
}
/* 图标圆环内: 用品牌首字母作占位 (CSS 生成, 避免 6 个图标各需素材) */
.article-content .wp-block-uagb-info-box .uagb-ifb-image-content::after {
    content: "\f00c"; /* Font Awesome check (复用 home.css 已加载的 FA) */
    font-family: FontAwesome;
    font-size: 26px;
    color: #fff;
    font-weight: 900;
}
.article-content .wp-block-uagb-info-box .uagb-ifb-title {
    font-size: 19px;
    font-weight: 600;
    color: var(--text-dark);
    margin: 0 0 10px;
    line-height: 1.3;
}
.article-content .wp-block-uagb-info-box .uagb-ifb-desc {
    font-size: 14px;
    color: var(--text-body);
    line-height: 1.6;
    margin: 0;
}

/* ---------- 11.4a distributor-portal 优势卡 (Cansin Distributor Advantages, 2×3 网格) ----------
   distributor 页结构与 ev-charger 的 info-box 区块不同, 不能直接复用 11.4 的 3 列规则:
   1) 标题下多一个介绍段容器 (bf9965f6, 仅含 <p>, 无 info-box), 通用 :has(info-box) 的
      display:contents 规则不会命中它 → 它会作为普通网格项挤进第一格, 把卡1推到第二格,
      后续卡片全部错位 (这是用户反馈的"卡片文字排列不正确"根因).
   2) 源站该区块原设计为 2 列 × 3 行 (6 卡分 3 行, 每行 2 卡), 而非 ev-charger 的 3×2.
   用区块 root 的 block-id (5207d72d, 跨语言一致) 精准定位:
   - 改为 2 列网格;
   - 标题 + 介绍段都跨整行 (grid-column:1/-1), 介绍段居中并给下边距, 与标题成视觉一组;
   - 6 卡由 3 个行容器(各 2 卡)经 display:contents 提升后自然排成 2×3. */
.article-content .uagb-is-root-container.alignfull.uagb-block-5207d72d > .uagb-container-inner-blocks-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    max-width: var(--container-width, 1299px);
    margin: 0 auto;
}
/* 标题与介绍段: 跨整行, 居中. 介绍段给上负/下正边距, 与标题紧凑成组、与卡片拉开间距 */
.article-content .uagb-is-root-container.alignfull.uagb-block-5207d72d > .uagb-container-inner-blocks-wrap > .wp-block-uagb-advanced-heading,
.article-content .uagb-is-root-container.alignfull.uagb-block-5207d72d > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:not(:has(.wp-block-uagb-info-box)) {
    grid-column: 1 / -1;
}
.article-content .uagb-is-root-container.alignfull.uagb-block-5207d72d > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:not(:has(.wp-block-uagb-info-box)) {
    text-align: center;
    margin-top: -10px;
    margin-bottom: 8px;
}
.article-content .uagb-is-root-container.alignfull.uagb-block-5207d72d > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:not(:has(.wp-block-uagb-info-box)) p {
    max-width: 760px;
    margin: 0 auto;
    font-size: 15px;
    line-height: 1.7;
    color: var(--text-body);
}
/* distributor 的 info-box 为左图标+标题布局 (icon-left-title), 与 ev-charger 的 above-title 不同:
   标题与图标同一行, 描述在下方. 调整图标区为左浮动而非居中, 标题左对齐. */
.article-content .uagb-block-5207d72d .wp-block-uagb-info-box.uagb-infobox-icon-left-title {
    text-align: left;
}
.article-content .uagb-block-5207d72d .wp-block-uagb-info-box.uagb-infobox-icon-left-title .uagb-ifb-left-title-image {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 12px;
}
.article-content .uagb-block-5207d72d .wp-block-uagb-info-box.uagb-infobox-icon-left-title .uagb-ifb-image-content {
    width: 56px;
    height: 56px;
    margin: 0;
    flex-shrink: 0;
}
.article-content .uagb-block-5207d72d .wp-block-uagb-info-box.uagb-infobox-icon-left-title .uagb-ifb-image-content::after {
    font-size: 22px;
}
.article-content .uagb-block-5207d72d .wp-block-uagb-info-box.uagb-infobox-icon-left-title .uagb-ifb-title {
    text-align: left;
    margin: 0;
}
/* 修正卡3标题前残留的空 <br> (源站抓取残留, 增加上方多余空白) */
.article-content .uagb-block-5207d72d .wp-block-uagb-info-box.uagb-infobox-icon-left-title .uagb-ifb-title br {
    display: none;
}

/* ---------- 11.5 认证图 (Our Certifications, layout-default 横排) ----------
   ev-charger 分类页 Our Certifications 结构:
     root(uagb-block-b0e81f25).alignfull > inner-wrap > [标题, 段落 p, 行容器(uagb-block-81aa00ab) > 中间容器(5个) > 图(layout-default)]
   行容器内套一层中间容器、每个中间容器直接含 1 张证书图。
   用 Spectra block-id 精准定位该区块根容器 (block-id 为内容哈希, 同页面跨语言一致;
   en 页实测 b0e81f25), 避免误伤 about-us 等其他含 layout-default 图的图文混排区块。
   注: 通用 3 列图文 grid (第 220 行) 含 :has 嵌套、特异性较高, 故本组规则在选择器
   中复用相同的祖先链并叠加 block-id class, 以稳定覆盖通用规则。 */
.article-content .uagb-is-root-container.alignfull.uagb-block-b0e81f25:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image) > .uagb-container-inner-blocks-wrap {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    max-width: var(--container-width, 1299px);
    margin: 0 auto;
    align-items: center;
}
/* 标题/段落容器: 跨整行居中 */
.article-content .uagb-is-root-container.alignfull.uagb-block-b0e81f25 > .uagb-container-inner-blocks-wrap > .wp-block-uagb-advanced-heading,
.article-content .uagb-is-root-container.alignfull.uagb-block-b0e81f25 > .uagb-container-inner-blocks-wrap > p,
.article-content .uagb-is-root-container.alignfull.uagb-block-b0e81f25 > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:not(:has(.wp-block-uagb-image--layout-default)):not(:has(.wp-block-uagb-image)) {
    grid-column: 1 / -1;
    text-align: center;
}
/* 行容器(uagb-block-81aa00ab): display:contents 暴露中间容器给网格 */
.article-content .uagb-is-root-container.alignfull.uagb-block-b0e81f25 > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container.uagb-block-81aa00ab {
    display: contents;
}
/* cert 中间容器: 同样 display:contents, 让图直接参与父网格列分配 */
.article-content .uagb-is-root-container.alignfull.uagb-block-b0e81f25 > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container > .wp-block-uagb-container:has(> .wp-block-uagb-image--layout-default) {
    display: contents;
}
/* 认证图卡: 白底+浅边+hover阴影, 图片自适应高度 (证书 500×707 竖图) */
.article-content .wp-block-uagb-image--layout-default {
    background: var(--bg-white);
    border: 1px solid var(--border-soft);
    border-radius: 8px;
    padding: 14px;
    transition: box-shadow .2s, border-color .2s;
    display: flex;
    align-items: center;
    justify-content: center;
}
.article-content .wp-block-uagb-image--layout-default:hover {
    box-shadow: 0 6px 18px rgba(0, 0, 0, .08);
    border-color: var(--brand);
}
.article-content .wp-block-uagb-image--layout-default .wp-block-uagb-image__figure { margin: 0; width: 100%; }
.article-content .wp-block-uagb-image--layout-default img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block;
    margin: 0;
    border-radius: 4px;
}
/* 证书区 (b0e81f25) 内的图: 覆盖通用 .wp-block-uagb-image img 的 3/2 横向比例 (第 183 行),
   证书原图 500×707 为 A4 竖版 (1:1.414), 保持竖版显示.
   必须限定在 b0e81f25 容器内, 否则会误伤 about-us 等页的横构图 layout-default 图. */
.article-content .uagb-block-b0e81f25 .wp-block-uagb-image--layout-default img {
    aspect-ratio: 1 / 1.414 !important;
    object-fit: contain !important;
    background: var(--bg-white);
}
/* 占位图(ISO45001 缺图): 淡化显示, 不撑破布局 */
.article-content .wp-block-uagb-image--layout-default img[src*="placeholder"] {
    opacity: .35;
    min-height: 120px;
    object-fit: contain;
}
/* Our Certifications 响应式降列 (block-id 作用域, 选择器复用 PC 规则的 :has 链
   以保持特异性不劣于 PC 5 列规则, 确保 @media 内能覆盖)。
   断点与全局一致 (991/767/480); 证书是竖图, 窄屏降列保证单图足够大、可读。 */
@media (max-width: 991px) {
    .article-content .uagb-is-root-container.alignfull.uagb-block-b0e81f25:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image) > .uagb-container-inner-blocks-wrap { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 767px) {
    .article-content .uagb-is-root-container.alignfull.uagb-block-b0e81f25:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image) > .uagb-container-inner-blocks-wrap { grid-template-columns: repeat(2, 1fr); gap: 14px; }
}
@media (max-width: 480px) {
    .article-content .uagb-is-root-container.alignfull.uagb-block-b0e81f25:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image) > .uagb-container-inner-blocks-wrap { grid-template-columns: 1fr; }
}

/* ---------- 11.6 CTA Solution 区块 (FAQ 下方 "EV Charger Solution", 居中) ----------
   源站结构 (实测): alignfull root > inner-wrap > [标题+段落容器(d17e0805), 按钮容器(a5aacfd0), post-grid 相关文章]。
   本区块是分类页底部 CTA: 标题/介绍/按钮需整体居中 (对齐参考站视觉), 下方 post-grid 保持 3 列网格。
   识别: alignfull root 同时含 advanced-heading + modal/button + post-grid (该组合唯一). */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-post-grid):has(.wp-block-uagb-advanced-heading):has(.wp-block-uagb-modal) > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-advanced-heading),
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-post-grid):has(.wp-block-uagb-advanced-heading):has(.wp-block-uagb-modal) > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-modal) {
    text-align: center;
}
/* 标题容器内段落也居中 (段落默认继承 article-content 左对齐, 此处覆盖) */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-post-grid):has(.wp-block-uagb-advanced-heading):has(.wp-block-uagb-modal) .wp-block-uagb-advanced-heading + .wp-block-paragraph {
    text-align: center;
}
/* 按钮容器内 .wp-block-button 默认 inline-block 左浮, 改居中 */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-post-grid):has(.wp-block-uagb-advanced-heading):has(.wp-block-uagb-modal) .uagb-spectra-button-wrapper,
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-post-grid):has(.wp-block-uagb-advanced-heading):has(.wp-block-uagb-modal) .wp-block-button {
    text-align: center;
}

/* ---------- 11.7 相关文章 post-grid (3 列卡片) ----------
   injectRelatedArticles 生成结构: wp-block-uagb-post-grid > article.uagb-post__inner-wrap */
.article-content .wp-block-uagb-post-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
    max-width: var(--container-width, 1299px);
    margin: 0 auto;
    list-style: none;
    padding: 0;
}
.article-content .wp-block-uagb-post-grid .uagb-post__inner-wrap {
    background: var(--bg-white);
    border: 1px solid var(--border-soft);
    border-radius: 10px;
    overflow: hidden;
    transition: box-shadow .2s, border-color .2s;
    display: flex;
    flex-direction: column;
}
.article-content .wp-block-uagb-post-grid .uagb-post__inner-wrap:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
    border-color: var(--brand);
}
/* 文章封面图 (750×500, 3:2) */
.article-content .wp-block-uagb-post-grid .uagb-post__image {
    margin: 0;
    overflow: hidden;
}
.article-content .wp-block-uagb-post-grid .uagb-post__image a { display: block; }
.article-content .wp-block-uagb-post-grid .uagb-post__image img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
    transition: transform .3s;
}
.article-content .wp-block-uagb-post-grid .uagb-post__inner-wrap:hover .uagb-post__image img {
    transform: scale(1.04);
}
/* 文章正文区 (标题/日期/摘要/CTA) 内边距 */
.article-content .wp-block-uagb-post-grid .uagb-post__inner-wrap > .uagb-post__text,
.article-content .wp-block-uagb-post-grid .uagb-post__inner-wrap > .uagb-post__title,
.article-content .wp-block-uagb-post-grid .uagb-post-grid-byline,
.article-content .wp-block-uagb-post-grid .uagb-post__excerpt,
.article-content .wp-block-uagb-post-grid .uagb-post__cta {
    padding-left: 20px;
    padding-right: 20px;
}
.article-content .wp-block-uagb-post-grid .uagb-post__title {
    font-size: 17px;
    font-weight: 600;
    line-height: 1.4;
    margin: 16px 0 8px;
}
.article-content .wp-block-uagb-post-grid .uagb-post__title a {
    color: var(--text-dark);
    text-decoration: none;
}
.article-content .wp-block-uagb-post-grid .uagb-post__title a:hover { color: var(--brand); }
.article-content .wp-block-uagb-post-grid .uagb-post-grid-byline {
    font-size: 13px;
    color: var(--text-body);
    margin: 0 0 10px;
}
.article-content .wp-block-uagb-post-grid .uagb-post__date { display: inline-block; }
.article-content .wp-block-uagb-post-grid .uagb-post__excerpt {
    font-size: 14px;
    color: var(--text-body);
    line-height: 1.6;
    margin: 0 0 16px;
    flex: 1;
}
.article-content .wp-block-uagb-post-grid .uagb-post__excerpt p { margin: 0; }
.article-content .wp-block-uagb-post-grid .uagb-post__cta { margin: 0 0 18px; }
.article-content .wp-block-uagb-post-grid .uagb-post__cta .wp-block-button__link {
    font-size: 14px;
    padding: 8px 20px;
    border-radius: 4px;
}

/* ---------- 11.7.1 首区块 hero 已移至 page-banner (见 content.css .page-banner-intro) ----------
   分类页 hero (标题/介绍/CTA) 由控制器 extractHeroFromContent() 提取并注入 page-banner,
   显示在 banner 背景图上, 对齐参考站单区块深色 hero. content 里的首区块已被移除, 此处无需样式。 */

/* ---------- 11.8 CTA Solution 深色 banner (精确定位) ----------
   含 "Solution" heading + 段落 + 按钮的 alignfull root → 深蓝底白字。
   通过结构特征匹配 (root 内同时有 heading/段落/button, 且非首区块/非含产品网格)。 */
.article-content .uagb-is-root-container.alignfull:last-of-type:has(.wp-block-uagb-advanced-heading):has(.wp-block-button):not(:has(.wc-block-product-template)):not(:has(.wp-block-uagb-info-box)):not(:has(.wp-block-uagb-post-grid)):not(:has(.wp-block-uagb-faq)):not(:has(.wp-block-uagb-icon-list)) {
    background: linear-gradient(135deg, var(--brand) 0%, #0a3d6e 100%);
    color: #fff;
}
.article-content .uagb-is-root-container.alignfull:last-of-type:has(.wp-block-uagb-advanced-heading):has(.wp-block-button):not(:has(.wc-block-product-template)):not(:has(.wp-block-uagb-info-box)):not(:has(.wp-block-uagb-post-grid)):not(:has(.wp-block-uagb-faq)):not(:has(.wp-block-uagb-icon-list)) .uagb-heading-text,
.article-content .uagb-is-root-container.alignfull:last-of-type:has(.wp-block-uagb-advanced-heading):has(.wp-block-button):not(:has(.wc-block-product-template)):not(:has(.wp-block-uagb-info-box)):not(:has(.wp-block-uagb-post-grid)):not(:has(.wp-block-uagb-faq)):not(:has(.wp-block-uagb-icon-list)) p {
    color: #fff;
}
.article-content .uagb-is-root-container.alignfull:last-of-type:has(.wp-block-uagb-advanced-heading):has(.wp-block-button):not(:has(.wc-block-product-template)):not(:has(.wp-block-uagb-info-box)):not(:has(.wp-block-uagb-post-grid)):not(:has(.wp-block-uagb-faq)):not(:has(.wp-block-uagb-icon-list)) .wp-block-button__link {
    background: #fff;
    color: var(--brand) !important;
    border-color: #fff;
}
.article-content .uagb-is-root-container.alignfull:last-of-type:has(.wp-block-uagb-advanced-heading):has(.wp-block-button):not(:has(.wc-block-product-template)):not(:has(.wp-block-uagb-info-box)):not(:has(.wp-block-uagb-post-grid)):not(:has(.wp-block-uagb-faq)):not(:has(.wp-block-uagb-icon-list)) .wp-block-button__link:hover {
    background: var(--text-dark);
    border-color: var(--text-dark);
    color: #fff !important;
}
/* CTA Solution 内层两栏 (标题+段落 在左, 按钮 在右) 居中对齐 */
.article-content .uagb-is-root-container.alignfull:last-of-type:has(.wp-block-uagb-advanced-heading):has(.wp-block-button):not(:has(.wc-block-product-template)):not(:has(.wp-block-uagb-info-box)):not(:has(.wp-block-uagb-post-grid)):not(:has(.wp-block-uagb-faq)):not(:has(.wp-block-uagb-icon-list)) > .uagb-container-inner-blocks-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    max-width: var(--container-width, 1299px);
    margin: 0 auto;
}
.article-content .uagb-is-root-container.alignfull:last-of-type:has(.wp-block-uagb-advanced-heading):has(.wp-block-button):not(:has(.wc-block-product-template)):not(:has(.wp-block-uagb-info-box)):not(:has(.wp-block-uagb-post-grid)):not(:has(.wp-block-uagb-faq)):not(:has(.wp-block-uagb-icon-list)) > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container {
    flex: 1 1 360px;
}
.article-content .uagb-is-root-container.alignfull:last-of-type:has(.wp-block-uagb-advanced-heading):has(.wp-block-button):not(:has(.wc-block-product-template)):not(:has(.wp-block-uagb-info-box)):not(:has(.wp-block-uagb-post-grid)):not(:has(.wp-block-uagb-faq)):not(:has(.wp-block-uagb-icon-list)) .uagb-heading-text { font-size: 30px; text-align: left; }

/* ---------- 11.9 Make Money overlay (2行×3列场景卡) ----------
   源站结构 (实测): alignfull root > inner-wrap > 单一container(含 heading + 2 个行容器) >
   [heading, 行容器A, 行容器B]; 每个行容器 > inner-wrap > 3 个 overlay-container(各含1张overlay图)。
   方案: 在 root 的 inner-wrap 上建 3 列网格; 让中间所有非 overlay 直接父的 wp-block-uagb-container
   及其 inner-wrap 全部 display:contents, 最终让 6 个「直接含 overlay 的 container」落入网格自动排布。
   heading 容器跨整行居中。 */
/* root 的 inner-wrap: 3 列网格 */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-overlay) > .uagb-container-inner-blocks-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: var(--container-width, 1299px);
    margin: 0 auto;
}
/* 单一包裹 container (含 heading + 行容器): contents 暴露其子 */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-overlay) > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:not(:has(> .wp-block-uagb-image--layout-overlay)) {
    display: contents;
}
/* heading: 跨整行居中 */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-overlay) .wp-block-uagb-advanced-heading {
    grid-column: 1 / -1;
    text-align: center;
}
/* heading 同级的介绍段落 (Find Project Videos 区块 inner-wrap 直接含 p):
   也跨整行居中, 否则会落入网格第 1 格, 把首行 overlay 卡片挤偏 (3 列网格首行只显 2 张). */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-overlay) > .uagb-container-inner-blocks-wrap > .wp-block-paragraph {
    grid-column: 1 / -1;
    text-align: center;
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
}
/* 行容器的 inner-wrap: contents 暴露 3 个 overlay-container (老结构: 行容器 > inner-wrap > 卡) */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-overlay) .wp-block-uagb-container:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image--layout-overlay) > .uagb-container-inner-blocks-wrap {
    display: contents;
}
/* 行容器本身 (新结构: 行容器直接含卡, 无 inner-wrap): contents 让 3 个卡落入 root 网格.
   仅作用于 overlay root 内部的中间层 container (排除直接含 overlay 的卡片卡), 保证 6 卡 3 列排布 */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-overlay) .wp-block-uagb-container:has(> .wp-block-uagb-container > .wp-block-uagb-image--layout-overlay):not(:has(> .wp-block-uagb-image--layout-overlay)) {
    display: contents;
}

/* ---------- 11.10 产品网格标题层级修正 ----------
   WooCommerce 产品卡内的 h2 (产品名) 字号 16px, 勿被 .article-content h2 的 24px 覆盖 (已有内联 style,
   此处兜底确保一致) */
.article-content .wc-block-product-template .wp-block-post-title,
.article-content .wc-block-grid .wc-block-grid__product-title {
    font-size: 16px !important;
}

/* ---------- 11.11 Key Applications 应用场景卡 (2 列横排, 标题居中) ----------
   应用场景页 (commercial/public/gas-station/fleet-ev-charger) 的 Key Applications 区块:
     root(uagb-block-0dabe6cc).alignfull > inner-wrap > [标题(5f6c2340),
       行容器(f165e042) > [中间容器(3b96efd1) > 图, 中间容器(7d7918f4) > 图], 介绍段 p]
   问题: 通用 3 列图文 grid (第 222 行) 含 :has(.wp-block-uagb-image) 会命中此 root, 把 2 张图
   排进 3 列网格 (第 3 格留空, 标题/段落被挤到第二行), 且标题左对齐. 视觉与参考站不符
   (参考站该区块标题居中、2 图并排居中).
   方案: 按 block-id 0dabe6cc 精准覆盖 — root inner-wrap 改 2 列网格; 行容器(f165e042) 跨整行
   并自身再建 2 列子网格排 2 张图; 标题/段落跨整行居中. block-id 为内容哈希, 同套导入数据 4 语言一致.
   选择器复用第 222 行的 :not(.uagb-ship-*):has 祖先链并叠加 block-id class, 使特异性高于通用规则
   (第 222 行的 2 个 :not() 各贡献 1 个类特异性, 必须复用才能持平, 再叠 block-id 反超). */
.article-content .uagb-is-root-container.alignfull.uagb-block-0dabe6cc:not(.uagb-ship-split):not(.uagb-ship-grid):has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image) > .uagb-container-inner-blocks-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    max-width: min(100%, 1100px);
    margin: 0 auto;
}
/* 标题(5f6c2340) / 介绍段落 p: 跨整行居中 */
.article-content .uagb-is-root-container.alignfull.uagb-block-0dabe6cc > .uagb-container-inner-blocks-wrap > .wp-block-uagb-advanced-heading,
.article-content .uagb-is-root-container.alignfull.uagb-block-0dabe6cc > .uagb-container-inner-blocks-wrap > p {
    grid-column: 1 / -1;
    text-align: center;
}
/* 介绍段落限宽居中 (段落较长, 不限宽会撑满 1100px 单行过长影响可读性) */
.article-content .uagb-is-root-container.alignfull.uagb-block-0dabe6cc > .uagb-container-inner-blocks-wrap > p {
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
}
/* 行容器(f165e042): 跨整行 (root 网格内), 自身再建 2 列子网格排 2 张图.
   注: 源站该行容器直接含 2 个中间容器(3b96efd1/7d7918f4), 无额外 inner-wrap,
   故在其自身建 grid 即可, 无需 display:contents 提升到 root 网格. */
.article-content .uagb-is-root-container.alignfull.uagb-block-0dabe6cc > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container.uagb-block-f165e042 {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}
/* 中间容器(3b96efd1 / 7d7918f4): 撑满子网格列, 内含图自适应填满 */
.article-content .uagb-is-root-container.alignfull.uagb-block-0dabe6cc .wp-block-uagb-container.uagb-block-f165e042 > .wp-block-uagb-container {
    min-width: 0;
}

/* ===========================================================
   响应式
   =========================================================== */
@media (max-width: 991px) {
    .article-content .wc-block-product-template,
    .article-content .wc-block-grid { grid-template-columns: repeat(2, 1fr); }
    .article-content .uagb-is-root-container.alignfull:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image) > .uagb-container-inner-blocks-wrap { grid-template-columns: repeat(2, 1fr); }
    .article-content .wp-block-uagb-advanced-heading .uagb-heading-text { font-size: 24px; }
    /* Contact 两栏: 平板单列堆叠 (表单在上, 卡片在下) */
    .article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list) > .uagb-container-inner-blocks-wrap {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    /* 11.x 分类页补充区块: 平板降列 */
    /* split 两栏图文: 平板堆叠 (图在上, 文在下) */
    .article-content .uagb-is-root-container.alignfull:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-image.alignleft) > .uagb-container-inner-blocks-wrap,
    .article-content .uagb-is-root-container.alignfull:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-image.size-full) > .uagb-container-inner-blocks-wrap {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    /* info-box 优势卡: 3→2 列 */
    .article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-info-box) > .uagb-container-inner-blocks-wrap { grid-template-columns: repeat(2, 1fr); gap: 20px; }
    /* 认证图: 5→3 列 */
    .article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-default) > .uagb-container-inner-blocks-wrap { grid-template-columns: repeat(3, 1fr); }
    /* 相关文章 post-grid: 3→2 列 */
    .article-content .wp-block-uagb-post-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
    /* Make Money overlay: 3→2 列 */
    .article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-overlay) > .uagb-container-inner-blocks-wrap { grid-template-columns: repeat(2, 1fr); }
    /* CTA Solution 两栏: 平板堆叠 */
    .article-content .uagb-is-root-container.alignfull:last-of-type:has(.wp-block-uagb-advanced-heading):has(.wp-block-button):not(:has(.wc-block-product-template)):not(:has(.wp-block-uagb-info-box)):not(:has(.wp-block-uagb-post-grid)):not(:has(.wp-block-uagb-faq)):not(:has(.wp-block-uagb-icon-list)) > .uagb-container-inner-blocks-wrap { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 767px) {
    /* alignfull 在窄屏不再全宽撑破, 回到容器内, 避免横向滚动 */
    .article-content .alignfull,
    .article-content .alignwide {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    .article-content .uagb-is-root-container.alignfull {
        padding-left: 16px;
        padding-right: 16px;
        padding-top: 28px;
        padding-bottom: 28px;
    }
    .article-content .wc-block-product-template,
    .article-content .wc-block-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .article-content .wc-block-product-template li,
    .article-content .wc-block-grid li.wc-block-product { padding: 12px; }
    .article-content .wp-block-uagb-advanced-heading .uagb-heading-text { font-size: 21px; }
    /* 章节主标题 (Manufacturer in China / Detailed Specification) 移动端等比缩小 */
    .article-content .wp-block-uagb-advanced-heading.uagb-block-f79ae0e4 .uagb-heading-text { font-size: 26px; }
    .article-content .wp-block-uagb-advanced-heading.uagb-block-e7610aa5 .uagb-heading-text { font-size: 21px; }
    .article-content .wp-block-uagb-image--layout-overlay .uagb-image-heading { font-size: 18px; }
    .article-content .wp-block-uagb-image--layout-overlay__inner { padding: 16px; }
    /* 11.x 分类页补充区块: 移动端降列/堆叠 */
    /* spec 规格表: 保持流式两列(覆盖 content.css 的 display:block 横滚),
       首列允许换行+收窄, 值列换行; 表格本身可横向滚动兜底超长内容 */
    .article-content .wp-block-table { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .article-content .wp-block-table table { display: table; width: 100%; }
    .article-content .wp-block-table table tbody tr td:first-child { white-space: normal; width: 50%; }
    .article-content .wp-block-table table td { padding: 8px 10px; font-size: 14px; }
    /* info-box 优势卡: 2→1 列 (单列堆叠, 充分展示图标+文) */
    .article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-info-box) > .uagb-container-inner-blocks-wrap { grid-template-columns: 1fr; gap: 16px; }
    /* distributor 优势卡: 专属 2 列规则在手机下降为 1 列 (专属规则特异性高于上方通用规则, 需显式覆盖) */
    .article-content .uagb-is-root-container.alignfull.uagb-block-5207d72d > .uagb-container-inner-blocks-wrap { grid-template-columns: 1fr; gap: 16px; }
    .article-content .wp-block-uagb-info-box { padding: 22px 18px; }
    /* 认证图: 3→2 列 */
    .article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-default) > .uagb-container-inner-blocks-wrap { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .article-content .wp-block-uagb-image--layout-default { padding: 10px; }
    /* 相关文章 post-grid: 2→1 列 */
    .article-content .wp-block-uagb-post-grid { grid-template-columns: 1fr; gap: 18px; }
    .article-content .wp-block-uagb-post-grid .uagb-post__image img { height: 180px; }
    /* Make Money overlay: 2→1 列 */
    .article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-overlay) > .uagb-container-inner-blocks-wrap { grid-template-columns: 1fr; gap: 14px; }
    /* Contact: 表单字段单列, 卡片内边距收紧, 提交按钮全宽 */
    .article-content .fluentform .ff-t-container { flex-direction: column; gap: 0; }
    .article-content .fluentform .ff-t-cell { flex: 0 0 100% !important; max-width: 100%; }
    /* 深色卡片(9f308f8d) padding 收紧, 用与背景一致的精确选择器 */
    .single-page--full .article-content .uagb-is-root-container.alignfull .uagb-is-root-container.alignfull:has(.fluentform):has(.wp-block-uagb-icon-list) > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:has(.wp-block-uagb-icon-list):has(.has-ast-global-color-5-color) { padding: 22px; }
    .article-content .fluentform .ff-btn-submit { width: 100%; min-width: 0; padding: 13px; }
    /* 11.11 Key Applications 应用场景卡: 窄屏保持 2 列但收紧 root 与行容器间距 */
    .article-content .uagb-is-root-container.alignfull.uagb-block-0dabe6cc:not(.uagb-ship-split):not(.uagb-ship-grid):has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image) > .uagb-container-inner-blocks-wrap { gap: 16px; }
    .article-content .uagb-is-root-container.alignfull.uagb-block-0dabe6cc > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container.uagb-block-f165e042 { gap: 16px; }
}

@media (max-width: 480px) {
    .article-content .wc-block-product-template,
    .article-content .wc-block-grid { grid-template-columns: 1fr; }
    .article-content .uagb-is-root-container.alignfull:has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image) > .uagb-container-inner-blocks-wrap { grid-template-columns: 1fr; }
    /* 认证图: 超窄屏 1 列 (证书竖图窄屏需大图) */
    .article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-image--layout-default) > .uagb-container-inner-blocks-wrap { grid-template-columns: 1fr; }
    /* 11.11 Key Applications 应用场景卡: 超窄屏 root 与行容器均 1 列堆叠 (单图满宽更易读) */
    .article-content .uagb-is-root-container.alignfull.uagb-block-0dabe6cc:not(.uagb-ship-split):not(.uagb-ship-grid):has(> .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-uagb-image) > .uagb-container-inner-blocks-wrap { grid-template-columns: 1fr; gap: 14px; }
    .article-content .uagb-is-root-container.alignfull.uagb-block-0dabe6cc > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container.uagb-block-f165e042 { grid-template-columns: 1fr; gap: 14px; }
}

/* 触屏: 关闭依赖 hover 的阴影跳动, 避免误触高亮残留 */
@media (hover: none) {
    .article-content .wc-block-product-template li:hover,
    .article-content .wc-block-grid li.wc-block-product:hover { box-shadow: none; border-color: var(--border-soft); }
}

/* ===========================================================
   12. home-charging 解决方案页专属区块 (tabs / 2列 info-box / marketing-button)
   作用域: .single-page--solution (page.html 按 is_solution 注入), 避免误伤分类页。
   tabs/icon-list 等通用区块无solution作用域, 因仅此页使用, 直接 .article-content 即可。
   断点: 991 / 767 / 480 (与全局一致)
   =========================================================== */

/* ---------- 12.1 Spectra Tabs (Choose The Right Home EV Charging Setup) ----------
   结构: wp-block-uagb-tabs > ul.uagb-tabs__panel (tab 列表) + div.uagb-tabs__body-wrap (面板)
   tab 项: li.uagb-tab > a.uagb-tabs-list (含 svg 图标 + div 文字)
   面板: div.uagb-tabs__body-container (active 显示), 内含 图容器 + 参数容器 两栏
   注: tabs 区块的 alignfull root 因含 .wp-block-uagb-image 会命中通用图文 grid 规则(第220行),
   需把其 inner-wrap 恢复为 block, 否则 tabs 被压成单列 ~350px。 */
.article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-tabs) > .uagb-container-inner-blocks-wrap {
    display: block;
    max-width: var(--container-width, 1299px);
    margin: 0 auto;
}
.article-content .wp-block-uagb-tabs {
    max-width: var(--container-width, 1299px);
    margin: 24px auto 0;
    background: var(--bg-white);
    border: 1px solid var(--border-soft);
    border-radius: 12px;
    overflow: hidden;
}
/* tab 列表: 横向排列, 左对齐, 底部分隔线 */
.article-content .uagb-tabs__panel {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    background: var(--bg-soft);
    border-bottom: 1px solid var(--border-soft);
}
.article-content .uagb-tabs__panel .uagb-tab { margin: 0; }
.article-content .uagb-tabs__panel .uagb-tabs-list {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 16px 26px;
    font-size: 15px;
    font-weight: 600;
    color: var(--text-body);
    text-decoration: none;
    border-bottom: 3px solid transparent;
    cursor: pointer;
    transition: color .2s, background .2s, border-color .2s;
}
.article-content .uagb-tabs__panel .uagb-tabs-list:hover {
    color: var(--brand);
    background: rgba(12, 91, 162, .05);
}
/* 激活 tab: 品牌色文字 + 底部蓝色条 + 白底衔接 */
.article-content .uagb-tabs__panel .uagb-tab.uagb-tabs__active .uagb-tabs-list,
.article-content .uagb-tabs__panel .uagb-tabs-list[aria-selected="true"] {
    color: var(--brand);
    background: var(--bg-white);
    border-bottom-color: var(--brand);
    margin-bottom: -1px;
}
/* tab 内图标尺寸 */
.article-content .uagb-tabs-list .uagb-tabs__icon svg {
    width: 18px;
    height: 18px;
    fill: currentColor;
}

/* 面板区: 默认隐藏, 仅 active 显示 (与 Spectra 原版一致) */
.article-content .uagb-tabs__body-wrap { padding: 0; }
.article-content .uagb-tabs__body-container {
    display: none;
    padding: 32px;
}
.article-content .uagb-tabs__body-container.uagb-tabs-body__active {
    display: block;
}
/* 面板内: 图 + 参数 两栏布局 (嵌套 wp-block-uagb-container) */
.article-content .uagb-tabs__body-container > .wp-block-uagb-container > .wp-block-uagb-container,
.article-content .uagb-tabs__body-container > .wp-block-uagb-container {
    display: flex;
    align-items: center;
    gap: 32px;
}
.article-content .uagb-tabs__body-container > .wp-block-uagb-container > .wp-block-uagb-container:first-child {
    flex: 0 0 44%;
    max-width: 44%;
}
.article-content .uagb-tabs__body-container > .wp-block-uagb-container > .wp-block-uagb-container:last-child {
    flex: 1;
}
/* tab 内产品图 */
.article-content .uagb-tabs__body-container .wp-block-uagb-image__figure { margin: 0; }
.article-content .uagb-tabs__body-container .wp-block-uagb-image img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    display: block;
}
/* tab 内参数段落 */
.article-content .uagb-tabs__body-container .wp-block-paragraph {
    font-size: 15px;
    line-height: 1.9;
    color: var(--text-body);
}
.article-content .uagb-tabs__body-container .wp-block-paragraph strong {
    color: var(--text-dark);
    font-size: 16px;
}

/* ---------- 12.2 2列 info-box 优势卡 (Advantages of Home Charging) ----------
   home-charging 的 Advantages 区块: root > inner-wrap > [标题, 行容器(2个info-box), 行容器(2个info-box)]。
   现有 11.4 默认 3 列 (针对 ev-charger 6卡), 此处覆盖为 2 列, 仅 solution 作用域生效。 */
.single-page--solution .article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-info-box) > .uagb-container-inner-blocks-wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    max-width: 960px;
}
/* 单卡: 复用 11.4 的 wp-block-uagb-info-box 基础外观, 略放大内边距 (4卡比6卡更宽松) */
.single-page--solution .article-content .wp-block-uagb-info-box {
    padding: 34px 28px;
}
.single-page--solution .article-content .wp-block-uagb-info-box .uagb-ifb-title {
    font-size: 20px;
}

/* ---------- 12.3 Spectra Marketing Button (Get a Free Quote) ----------
   结构: wp-block-uagb-marketing-button > a.uagb-marketing-btn__link (含 span 标题 + svg 外链图标) */
.article-content .wp-block-uagb-marketing-button {
    margin: 24px 0 8px;
}
.article-content .uagb-marketing-btn__link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--brand);
    color: #fff !important;
    border: 2px solid var(--brand);
    border-radius: 6px;
    padding: 14px 30px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    text-decoration: none;
    cursor: pointer;
    transition: background .2s, border-color .2s, transform .15s;
}
.article-content .uagb-marketing-btn__link:hover {
    background: var(--brand-hover);
    border-color: var(--brand-hover);
    color: #fff !important;
    transform: translateY(-1px);
}
.article-content .uagb-marketing-btn__title { display: inline-block; }
.article-content .uagb-marketing-btn__link svg {
    width: 16px;
    height: 16px;
    fill: #fff;
    transition: transform .2s;
}
.article-content .uagb-marketing-btn__link:hover svg { transform: translate(2px, -2px); }

/* ---------- 12.x icon-list 两栏 (AC Home Charging 段) ----------
   结构: 行容器(2个 icon-list) 上下两组。让每组行容器内的 icon-list 横排两列。 */
.article-content .wp-block-uagb-container:has(> .wp-block-uagb-container > .wp-block-uagb-icon-list) {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 32px;
    max-width: 960px;
    margin: 16px auto 0;
}
.article-content .wp-block-uagb-icon-list__wrap {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.article-content .wp-block-uagb-icon-list-child {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.article-content .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap {
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    margin-top: 3px;
}
.article-content .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg {
    width: 22px;
    height: 22px;
    fill: var(--brand);
}
.article-content .wp-block-uagb-icon-list-child .uagb-icon-list__label {
    font-size: 15px;
    line-height: 1.6;
    color: var(--text-body);
}

/* ---------- 12.y 响应式: tabs / info-box / icon-list / marketing-btn ---------- */
@media (max-width: 991px) {
    /* tabs 面板内两栏 → 图在上参数在下 */
    .article-content .uagb-tabs__body-container > .wp-block-uagb-container > .wp-block-uagb-container,
    .article-content .uagb-tabs__body-container > .wp-block-uagb-container {
        flex-direction: column;
        gap: 20px;
    }
    .article-content .uagb-tabs__body-container > .wp-block-uagb-container > .wp-block-uagb-container:first-child {
        flex: 0 0 100%;
        max-width: 100%;
    }
    /* info-box: 2 列保持 (4卡 2×2 在平板仍合适) */
}

@media (max-width: 767px) {
    /* tabs: tab 项横向滚动, 单项缩小, 触屏可点 */
    .article-content .uagb-tabs__panel {
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }
    .article-content .uagb-tabs__panel .uagb-tabs-list {
        padding: 13px 18px;
        font-size: 14px;
    }
    .article-content .uagb-tabs__body-container { padding: 20px; }
    /* icon-list: 2→1 列 */
    .article-content .wp-block-uagb-container:has(> .wp-block-uagb-container > .wp-block-uagb-icon-list) {
        grid-template-columns: 1fr;
    }
    /* info-box: 2→1 列堆叠 */
    .single-page--solution .article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-info-box) > .uagb-container-inner-blocks-wrap {
        grid-template-columns: 1fr;
        gap: 18px;
    }
    /* marketing-btn: 移动端适度收窄 */
    .article-content .uagb-marketing-btn__link { padding: 12px 24px; font-size: 15px; }
}

@media (max-width: 480px) {
    .article-content .uagb-tabs__panel .uagb-tabs-list { padding: 11px 14px; font-size: 13px; }
    .article-content .uagb-tabs__body-container { padding: 16px; }
    .single-page--solution .article-content .wp-block-uagb-info-box { padding: 24px 18px; }
}

/* ============================================================
   About-us 单页专属样式
   源站 Spectra 动态 CSS 在抓取时丢失, 此处按 block-id + 结构补全.
   深色区块背景由 renderAboutContent() 渲染层注入内联 style,
   本段负责: 网格布局 / 文字颜色 / 计数器 / 响应式.
   ============================================================ */

/* 深色背景区块内: 内容垂直居中 + 限宽 (内联 style 已设 flex, 这里补 inner 宽度) */
.article-content .uagb-block-0d8009e4.alignfull,
.article-content .uagb-block-c81e30e4.alignfull,
.article-content .uagb-block-a6830f35.alignfull,
.article-content .uagb-block-af2d374f.alignfull {
    position: relative;
    overflow: hidden;        /* 配合 inset 遮罩, 防止子内容溢出背景区 */
}
.article-content .uagb-block-0d8009e4 > .uagb-container-inner-blocks-wrap,
.article-content .uagb-block-c81e30e4 > .uagb-container-inner-blocks-wrap,
.article-content .uagb-block-a6830f35 > .uagb-container-inner-blocks-wrap,
.article-content .uagb-block-af2d374f > .uagb-container-inner-blocks-wrap {
    position: relative;       /* 浮在 inset 遮罩之上 (遮罩为 box-shadow, relative+默认z-index 即可盖住 shadow) */
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    z-index: 1;
}

/* 普通白底内容区块 (非深色背景图): 限宽 1299px 居中 + 上下 70px 留白 (对齐目标站).
   源站 Spectra 给这类 alignfull root 设 padding:70px 10px + inner max-width:1299px,
   抓取时动态 CSS 丢失 → 本地 inner 撑满全宽贴边、padding 仅 8~40px, 与上下区块紧贴粘连
   (用户反馈"两个版块合在一起"). 按 block-id 精准命中 about-us 的白底内容区块.
   block-id 跨语言一致 (en/es/pt/ru 同一份抓取内容).
   排除已有专属布局规则的 d493e191/58fcf808 (第 1771 节, 自带 grid+限宽). */
.article-content .uagb-block-40f0addf.alignfull,
.article-content .uagb-block-2ef6539e.alignfull,
.article-content .uagb-block-2a0155dc.alignfull,
.article-content .uagb-block-98ed84fa.alignfull,
.article-content .uagb-block-d5d60ec0.alignfull,
.article-content .uagb-block-7a28cf81.alignfull {
    padding: 70px 10px;
}
.article-content .uagb-block-40f0addf > .uagb-container-inner-blocks-wrap,
.article-content .uagb-block-2ef6539e > .uagb-container-inner-blocks-wrap,
.article-content .uagb-block-2a0155dc > .uagb-container-inner-blocks-wrap,
.article-content .uagb-block-98ed84fa > .uagb-container-inner-blocks-wrap,
.article-content .uagb-block-d5d60ec0 > .uagb-container-inner-blocks-wrap,
.article-content .uagb-block-7a28cf81 > .uagb-container-inner-blocks-wrap {
    max-width: min(100%, 1299px);
    margin: 0 auto;
}

/* 7a28cf81 (Powered by Top Brands + Connect With Us): 纵向排列为两个独立版块.
   该 root 含 [标题, 认证图容器(db9b57a2), Connect With Us容器(3f6fe297)],
   通用 grid 规则(第222行, 因含 wp-block-uagb-image) 把三者强制横排成3列, 导致
   标题/认证图/表单挤在一行. 用 flex column 覆盖, 让三者上下排列、各自全宽,
   "Powered by Top Brands" 与 "Connect With Us" 成为两个上下独立版块 (对齐目标站).
   选择器叠加 .alignfull + .uagb-is-root-container + block-id 提升特异性,
   稳定覆盖第222行通用 grid 规则 (含 :not()/:has() 伪类, 特异性较高). */
.article-content .uagb-block-7a28cf81.alignfull.uagb-is-root-container > .uagb-container-inner-blocks-wrap {
    display: flex !important;
    flex-direction: column;
    gap: 40px;
}
/* 三个子级都撑满宽度 (覆盖通用 grid 把它们挤成1/3宽) */
.article-content .uagb-block-7a28cf81 > .uagb-container-inner-blocks-wrap > .wp-block-uagb-advanced-heading,
.article-content .uagb-block-7a28cf81 > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container {
    width: 100%;
    max-width: 100%;
}
/* "Powered by Top Brands" 标题居中 (认证图组在下方横排, 标题居中对齐) */
.article-content .uagb-block-7a28cf81 > .uagb-container-inner-blocks-wrap > .wp-block-uagb-advanced-heading {
    text-align: center;
}
/* "Connect With Us" 容器: 上加分隔, 与 "Powered by Top Brands" 视觉分离成独立版块 */
.article-content .uagb-block-7a28cf81 .uagb-block-3f6fe297 {
    padding-top: 20px;
}
.article-content .uagb-block-7a28cf81 .uagb-block-3f6fe297 > .wp-block-uagb-advanced-heading {
    text-align: center;
}

/* Hero 区块 (About): H2 标题白字 40px, 副标题白字.
   用 .wp-block-uagb-advanced-heading 前缀提升优先级 (覆盖全局 .article-content .wp-block-uagb-advanced-heading .uagb-heading-text 的 color:var(--text-dark)) */
.article-content .uagb-block-0d8009e4 .wp-block-uagb-advanced-heading .uagb-heading-text {
    color: #f0f5fa !important;
    font-size: 40px;
    font-weight: 600;
    text-align: center;
    margin: 0 0 12px;
}
.article-content .uagb-block-0d8009e4 .wp-block-paragraph {
    color: #fff;
    text-align: center;
}

/* 计数器区块 (12+/180+/200+/160+): 4 列网格, 数字白字 52px */
.article-content .uagb-block-c81e30e4 > .uagb-container-inner-blocks-wrap {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    padding: 60px 20px;
}
.article-content .uagb-block-c81e30e4 .wp-block-uagb-counter {
    text-align: center;
}
.article-content .uagb-block-c81e30e4 .uagb-counter-block-number {
    color: #f0f5fa;
    font-size: 52px;
    font-weight: 400;
    line-height: 1.1;
}
.article-content .uagb-block-c81e30e4 .uagb-counter-block-suffix {
    color: #f0f5fa;
    font-size: 52px;
    font-weight: 400;
}
.article-content .uagb-block-c81e30e4 .uagb-counter__title {
    color: #f0f5fa;
    font-size: 16px;
    margin-top: 8px;
}

/* Choose EV Charger 区块 (深色背景): H2 白字 30px, CTA 可见 */
.article-content .uagb-block-a6830f35 .wp-block-uagb-advanced-heading .uagb-heading-text {
    color: #f0f5fa !important;
    font-size: 30px;
    text-align: center;
    margin: 0 0 24px;
}

/* CTA 区块 "Cansin - First Choice" (深色背景): H2 白字 40px */
.article-content .uagb-block-af2d374f .wp-block-uagb-advanced-heading .uagb-heading-text {
    color: #f0f5fa !important;
    font-size: 40px;
    text-align: center;
    margin: 0 0 16px;
}
.article-content .uagb-block-af2d374f .wp-block-paragraph {
    color: #f0f5fa;
    text-align: center;
}

/* Proven Success, Trusted Worldwide 区块 (2ef6539e, 非深色):
   源站结构: inner-wrap > [标题, 介绍段落, 图组容器(1f5a048e)] 单列流居中.
   通用 :has(.wp-block-uagb-image) (第 222 行) 误判此区块为图网格, 把 inner-wrap 设成 3 列 grid,
   导致唯一的子内容容器被挤到 401px 窄列, 标题/介绍/图组全堆左侧. 此处按 block-id 还原单列流.
   图组容器 1f5a048e: 源站 flex row, 左大图(68c067cb 公司图) + 右3图列(330797c0 EV Charger 1/2/3). */
.article-content .uagb-block-2ef6539e.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap {
    display: block !important;      /* 覆盖第 222 行 3 列 grid (block-id 叠加 root/alignfull 提特异性) */
    grid-template-columns: none !important;
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
}
.article-content .uagb-block-2ef6539e .wp-block-uagb-advanced-heading .uagb-heading-text {
    font-size: 32px;
    font-weight: 700;
    color: var(--text-dark);
    margin: 0 0 14px;
}
.article-content .uagb-block-2ef6539e > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container .wp-block-paragraph {
    max-width: 760px;
    margin: 0 auto 36px;
    color: var(--text-body);
    font-size: 16px;
    line-height: 1.7;
}
/* 图组容器 1f5a048e: 左大图 + 右3图列 (源站 flex row, PC 横排, 移动堆叠).
   关键: 左大图与右3图列等高对齐 — 左大图用固定高度 560px (object-fit:cover 保证不变形),
   右3图列用 grid 3 行各 1fr 填满同样 560px (gap 20px×2, 每小图 ≈173px).
   旧方案用 height:100% + max-height 无确定高度父级, 受图片比例限制大图实际只有 480px,
   而 3 小图按各自 max-height:173 撑到 519px, 两列高度不齐. 改用确定高度根除问题. */
.article-content .uagb-block-1f5a048e {
    display: flex !important;
    flex-direction: row;
    gap: 20px;
    align-items: flex-start;     /* 不 stretch, 各列高度由内容(图)决定, 但两列图高都锚定 560px */
}
.article-content .uagb-block-1f5a048e .uagb-block-68c067cb {
    flex: 1 1 0;                 /* 左大图占主要宽度 */
    min-width: 0;
    padding: 0 !important;       /* !important 反超通用 wp-block-uagb-container 的 padding:12px 0 (第 42 行), 与右3图列对齐 */
}
.article-content .uagb-block-1f5a048e .uagb-block-68c067cb .wp-block-uagb-image,
.article-content .uagb-block-1f5a048e .uagb-block-68c067cb .wp-block-uagb-image__figure {
    width: 100%;
    height: 560px;
    margin: 0;
}
.article-content .uagb-block-1f5a048e .uagb-block-68c067cb .wp-block-uagb-image img {
    width: 100%;
    height: 560px !important;   /* !important 反超通用 .wp-block-uagb-image img 的 height:auto !important (第 181 行) */
    aspect-ratio: auto;         /* 覆盖通用 3/2 比例, 否则高度被宽度锁定 480px */
    object-fit: cover;
    border-radius: 8px;
    display: block;
}
.article-content .uagb-block-1f5a048e .uagb-block-330797c0 {
    flex: 0 0 30%;               /* 右3图列固定 30% 宽, 源站 max-width:30% */
    max-width: 30%;
    min-width: 0;
    height: 560px;               /* 锚定与左大图同高, 配合下方 grid 3 行均分 */
    padding: 0 !important;       /* !important 反超通用 wp-block-uagb-container 的 padding:12px 0 (第 42 行, 其 :not() 链特异性较高); 否则 box-sizing:border-box 下内容区缩水 24px 导致行高不足 */
    display: grid;
    grid-template-rows: repeat(3, 1fr);
    gap: 20px;
}
.article-content .uagb-block-1f5a048e .uagb-block-330797c0 > .wp-block-uagb-container {
    min-height: 0;               /* grid 子项允许收缩, 配合 figure 100% 填满 */
    padding: 0;                  /* 覆盖通用 wp-block-uagb-container 的 padding:12px 0 (第 42 行), 否则每卡上下各 12px 留白导致图填不满行高 */
}
.article-content .uagb-block-1f5a048e .uagb-block-330797c0 .wp-block-uagb-image {
    width: 100%;
    height: 100%;
    margin: 0;
    /* 覆盖通用 .wp-block-uagb-image--layout-default (第 924 行) 的证书卡样式
       (padding/border/flex center 会压缩图高度并加白边, 此处只需纯图填满) */
    background: none;
    border: none;
    padding: 0;
    display: block;
    align-items: stretch;
    justify-content: stretch;
}
.article-content .uagb-block-1f5a048e .uagb-block-330797c0 .wp-block-uagb-image__figure {
    width: 100%;
    height: 100%;
    margin: 0;
}
.article-content .uagb-block-1f5a048e .uagb-block-330797c0 .wp-block-uagb-image img {
    width: 100%;
    height: 100% !important;    /* !important 反超通用 .wp-block-uagb-image img 的 height:auto !important */
    aspect-ratio: auto;         /* 覆盖通用 3/2 比例, 让 height:100% 填满 grid 行高 */
    object-fit: cover;
    border-radius: 8px;
    display: block;
}

/* What Sets Cansin Ahead / Why Choose Cansin? 区块 (0f05eb60 行容器):
   原 11.4 节 root 网格已把行容器 (0f05eb60/47239ff5) 设为 display:contents,
   此处不再单独建网格 (会被 contents 抹掉, 反而干扰). 卡片外观复用 11.4 info-box 基础规则. */

/* Powered by Top Brands 区块: 4 个品牌图横向排列 */
.article-content .uagb-block-db9b57a2 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    padding: 40px 20px;
    align-items: center;
}
.article-content .uagb-block-db9b57a2 .wp-block-uagb-image__figure,
.article-content .uagb-block-db9b57a2 .wp-block-uagb-image img {
    width: 100%;
    height: auto;
    object-fit: contain;
}

/* Strict Quality Control / Excellent Service 区块: 标题样式 */
.article-content .uagb-block-98ed84fa .wp-block-uagb-advanced-heading .uagb-heading-text,
.article-content .uagb-block-58fcf808 .wp-block-uagb-advanced-heading .uagb-heading-text {
    font-size: 40px;
    font-weight: 600;
    color: #1a1a1a;
}

/* Find Project Videos 区块: 6 张场景视频卡片网格 */
.article-content .uagb-block-d5d60ec0 .uagb-container-inner-blocks-wrap > .wp-block-uagb-container:not(.uagb-is-root-container) {
    /* 视频卡片网格容器 (若有), 默认横向 */
}

/* ---------- 11.x about-us split 图文两栏 (Manufacturing / Quality Control / Service)
   源站结构: root(d493e191/98ed84fa/58fcf808).alignfull > inner-wrap > 2 个 wp-block-uagb-container
   (其一含 wp-block-uagb-image 图, 另一含 标题+段落+modal 按钮).
   问题: 通用 3 列图文 grid (第 222 行) 的 :has(.wp-block-uagb-image) 命中这些 root,
   把 2 个容器排进 3 列 (第 3 格留空, 图/文被挤窄), 标题左对齐但段落与按钮错位.
   第 11.1 split 规则只匹配 wp-block-image.alignleft/size-full, 不覆盖 Spectra 的 wp-block-uagb-image.
   方案: 按 block-id 精准覆盖 — inner-wrap 改 2 列网格 (图 | 文), 居中对齐, 内边距还原浅底区块.
   用 !important 反超第 222 行 (其 2 个 :not() 叠加的特异性较高, !important 最稳妥, 同 2ef6539e 模式). */
.article-content .uagb-block-d493e191.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap,
.article-content .uagb-block-98ed84fa.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap,
.article-content .uagb-block-58fcf808.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 50px;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}
/* 两栏各自撑满列宽 (内含图/文自适应) */
.article-content .uagb-block-d493e191.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container,
.article-content .uagb-block-98ed84fa.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container,
.article-content .uagb-block-58fcf808.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container {
    min-width: 0;
}
/* 含图列: 图片圆角满宽 (覆盖通用 wp-block-uagb-image img 的 3/2 比例, 还原原图比例) */
.article-content .uagb-block-d493e191 .wp-block-uagb-image img,
.article-content .uagb-block-98ed84fa .wp-block-uagb-image img,
.article-content .uagb-block-58fcf808 .wp-block-uagb-image img {
    aspect-ratio: auto !important;
    border-radius: 10px;
}
/* 文本列: 标题左对齐 32px (覆盖现有 40px 过大), 段落正文色, 按钮在段落后 */
.article-content .uagb-block-d493e191 .wp-block-uagb-advanced-heading .uagb-heading-text,
.article-content .uagb-block-98ed84fa .wp-block-uagb-advanced-heading .uagb-heading-text,
.article-content .uagb-block-58fcf808 .wp-block-uagb-advanced-heading .uagb-heading-text {
    text-align: left;
    font-size: 32px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 16px;
}
.article-content .uagb-block-d493e191 .wp-block-paragraph,
.article-content .uagb-block-98ed84fa .wp-block-paragraph,
.article-content .uagb-block-58fcf808 .wp-block-paragraph {
    color: var(--text-body);
    font-size: 16px;
    line-height: 1.75;
    margin: 0 0 14px;
}
/* CTA 按钮左对齐 (modal 在文本列内, 默认 inline-block, 紧跟段落) */
.article-content .uagb-block-d493e191 .uagb-spectra-button-wrapper,
.article-content .uagb-block-98ed84fa .uagb-spectra-button-wrapper,
.article-content .uagb-block-58fcf808 .uagb-spectra-button-wrapper {
    text-align: left;
    margin: 18px 0 0;
}

/* ---------- 11.x Why Choose Cansin? info-box 区块的 CTA 按钮居中 ----------
   结构: root(2a0155dc).alignfull > inner-wrap > [标题, 行容器1(3 info-box), 行容器2(3 info-box), modal 按钮].
   第 11.4 节把 inner-wrap 设为 3 列网格 (6 个 info-box 排 3×2), 但末尾的 modal 按钮容器
   落入第 7 格 (左下角), 未跨整行居中. 此处让 modal 容器跨整行居中, 与标题对齐. */
.article-content .uagb-block-2a0155dc.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap > .wp-block-uagb-modal {
    grid-column: 1 / -1;
    text-align: center;
}
.article-content .uagb-block-2a0155dc.uagb-is-root-container.alignfull .uagb-spectra-button-wrapper {
    text-align: center;
}

/* ----- About-us 移动端响应式 (≤767px) ----- */
@media (max-width: 767px) {
    /* 深色区块 min-height 缩小, 避免移动端过高 */
    .article-content .uagb-block-0d8009e4.alignfull { min-height: 420px !important; }
    .article-content .uagb-block-c81e30e4.alignfull { min-height: auto !important; }
    .article-content .uagb-block-a6830f35.alignfull { min-height: 300px !important; }
    .article-content .uagb-block-af2d374f.alignfull { min-height: 360px !important; }

    /* Proven Success 图组: 移动端堆叠 (左大图 + 右3图列 → 上下), 右3图列转横排 */
    .article-content .uagb-block-1f5a048e { flex-direction: column; }
    .article-content .uagb-block-1f5a048e .uagb-block-68c067cb .wp-block-uagb-image,
    .article-content .uagb-block-1f5a048e .uagb-block-68c067cb .wp-block-uagb-image__figure,
    .article-content .uagb-block-1f5a048e .uagb-block-68c067cb .wp-block-uagb-image img {
        height: 320px !important;   /* 移动端大图降高 (覆盖 PC 560px, img 需 !important 反超通用 height:auto) */
    }
    .article-content .uagb-block-1f5a048e .uagb-block-330797c0 {
        flex: 1 1 auto;
        max-width: 100%;
        height: auto;           /* 取消 PC 固定 560px, 横排自适应 */
        grid-template-rows: none;
        grid-template-columns: repeat(3, 1fr);   /* 3 图横排, 避免移动端纵向过高 */
    }
    .article-content .uagb-block-1f5a048e .uagb-block-330797c0 .wp-block-uagb-image,
    .article-content .uagb-block-1f5a048e .uagb-block-330797c0 .wp-block-uagb-image__figure,
    .article-content .uagb-block-1f5a048e .uagb-block-330797c0 .wp-block-uagb-image img {
        height: 130px !important;  /* 移动端小图横排固定高度 (覆盖 PC 100%) */
    }

    /* Hero H2 缩小 */
    .article-content .uagb-block-0d8009e4 .wp-block-uagb-advanced-heading .uagb-heading-text,
    .article-content .uagb-block-af2d374f .wp-block-uagb-advanced-heading .uagb-heading-text { font-size: 28px; }
    .article-content .uagb-block-a6830f35 .wp-block-uagb-advanced-heading .uagb-heading-text { font-size: 22px; }

    /* 计数器: 4 列 → 2 列, 字号缩小 */
    .article-content .uagb-block-c81e30e4 > .uagb-container-inner-blocks-wrap {
        grid-template-columns: repeat(2, 1fr);
        gap: 28px 16px;
        padding: 40px 16px;
    }
    .article-content .uagb-block-c81e30e4 .uagb-counter-block-number,
    .article-content .uagb-block-c81e30e4 .uagb-counter-block-suffix { font-size: 38px; }

    /* 白底内容区块: PC 的 70px padding 在移动端过高, 降到 36px (保持留白但不浪费纵向空间) */
    .article-content .uagb-block-40f0addf.alignfull,
    .article-content .uagb-block-2ef6539e.alignfull,
    .article-content .uagb-block-2a0155dc.alignfull,
    .article-content .uagb-block-98ed84fa.alignfull,
    .article-content .uagb-block-d5d60ec0.alignfull,
    .article-content .uagb-block-7a28cf81.alignfull { padding-top: 36px; padding-bottom: 36px; }

    /* Why Choose / What Sets (0f05eb60 行容器已 display:contents):
       列数由 11.4 root 网格在 767px 降到 1 列统一接管, 此处无需再设 */

    /* Powered by Top Brands: 4 列 → 2 列 */
    .article-content .uagb-block-db9b57a2 {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
        padding: 24px 16px;
    }

    /* split 图文两栏 (Manufacturing/Quality Control/Service): 移动端堆叠为单列 (图在上, 文在下) */
    .article-content .uagb-block-d493e191.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap,
    .article-content .uagb-block-98ed84fa.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap,
    .article-content .uagb-block-58fcf808.uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap {
        grid-template-columns: 1fr !important;
        gap: 24px;
        padding: 16px;
    }

    /* Strict QC / Service / Manufacturing 标题缩小 */
    .article-content .uagb-block-d493e191 .wp-block-uagb-advanced-heading .uagb-heading-text,
    .article-content .uagb-block-98ed84fa .wp-block-uagb-advanced-heading .uagb-heading-text,
    .article-content .uagb-block-58fcf808 .wp-block-uagb-advanced-heading .uagb-heading-text { font-size: 26px; }
}

/* ----- About-us 小屏 (≤480px) ----- */
@media (max-width: 480px) {
    .article-content .uagb-block-0d8009e4 .wp-block-uagb-advanced-heading .uagb-heading-text,
    .article-content .uagb-block-af2d374f .wp-block-uagb-advanced-heading .uagb-heading-text { font-size: 24px; }
    .article-content .uagb-block-c81e30e4 .uagb-counter-block-number,
    .article-content .uagb-block-c81e30e4 .uagb-counter-block-suffix { font-size: 32px; }
    .article-content .uagb-block-c81e30e4 .uagb-counter__title { font-size: 14px; }

    /* about-us 移动端兜底: 部分区块 (Powered by Top Brands / Find Project Videos / 残留 FluentForm)
       子元素固定宽度会撑破视口, 给 alignfull root 加 overflow-x 隐藏溢出, 保证不出现横向滚动条. */
    .article-content .uagb-is-root-container.alignfull { overflow-x: hidden; }
}

/* ============================================================
   About-shipping 单页专属样式
   源站 Spectra 按 block-id 动态注入的布局 CSS (flex-direction/max-width%/
   background-color/hero 背景图) 在抓取时丢失, 导致 5 个 alignfull 区块全部
   单列堆叠. renderShippingContent() 已按 block-id 给根 div 追加类型 class:
     .uagb-ship-hero   (d0697f06 首空区块, hero 背景图 + min-height, 渲染层注 bg)
     .uagb-ship-intro  (1e7b9bae How We Ship 介绍, 浅蓝底)
     .uagb-ship-split  (877bf65f Shipping Terms / 3f8a6af3 How We Ship Goods, 左右分栏)
     .uagb-ship-grid   (b1b1f06d Containers 网格外壳, 内含 2 个 row × 2 列 = 2x2 图片网格)
   本段按这些 class 实现布局 (响应式断点 991/767, 与全站一致).
   ============================================================ */

/* ---------- 13.1 Hero 区块 (首空区块, 背景图占位) ----------
   源站 d0697f06 是一个 min-height:500px 的纯背景图区块 (无文字), 作为页面视觉分隔.
   渲染层已注入 background-image + min-height, 此处补 display:flex 让其不塌缩. */
.article-content .uagb-ship-hero {
    display: flex;
    align-items: center;
    justify-content: center;
    /* 深色兜底: 背景图未加载时仍有深色块, 不留空白 */
    background-color: #0a3d6e;
}

/* ---------- 13.2 介绍区块 (How We Ship Your EV Charger Products) ----------
   源站 1e7b9bae: 浅蓝底 #f4f6f9, padding 75px 20px, 内容垂直居中限宽. 标题+两段居中介绍文. */
.article-content .uagb-ship-intro {
    background-color: #f4f6f9;
    padding: 75px 20px;
}
.article-content .uagb-ship-intro > .uagb-container-inner-blocks-wrap {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.article-content .uagb-ship-intro .wp-block-paragraph {
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
}

/* ---------- 13.3 左右分栏区块 (Shipping Terms / How We Ship Goods) ----------
   源站 877bf65f / 3f8a6af3: flex-direction:row, 两个子容器各 max-width:50%.
   子容器 block-id: 877bf65f → [b8501654 文+按钮, d4024145 图];
                     3f8a6af3 → [43498380 图, b7c0d770 文+icon-list+按钮].
   alignfull 已在第 0 节突破限宽, 此处让 inner-blocks-wrap 变 flex row, 子容器各 50%.
   注意: 选择器带 .uagb-ship-split.alignfull.uagb-is-root-container 提升优先级,
   覆盖第 6 节 (220 行) "含图片的 alignfull root → 3 列 grid" 规则, 否则分栏会被挤成 3 列. */
.article-content .uagb-ship-split.alignfull.uagb-is-root-container > .uagb-container-inner-blocks-wrap {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    column-gap: 40px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
/* 两个直接子容器各占 50% (源站 Spectra: max-width:50%) */
.article-content .uagb-ship-split.alignfull.uagb-is-root-container > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container {
    flex: 1 1 50%;
    max-width: 50%;
    min-width: 0;
}
/* 分栏区块背景色 + padding (源站: Shipping Terms #f6f6f9 浅蓝灰 / How We Ship Goods #f6f6f6 浅灰,
   均上下 75px; 左右 877bf65f 为 10px/20px, 3f8a6af3 为 20px 均衡) */
.article-content .uagb-block-877bf65f.uagb-ship-split {
    background-color: #f6f6f9;
    padding: 75px 20px;
}
.article-content .uagb-block-3f8a6af3.uagb-ship-split {
    background-color: #f6f6f6;
    padding: 75px 20px;
}
/* 分栏内图片: 撑满列宽, 圆角, 防溢出 */
.article-content .uagb-ship-split .wp-block-uagb-image__figure img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 8px;
}

/* ---------- 13.4 Containers 2x2 图片网格 ----------
   源站 b1b1f06d (列向) 内含 2 个 row 容器 (14dd9122 / 89756df9, 均 flex-direction:row),
   每个 row 含 2 个列容器 (6be50486/9b36d852 与 2923fa9b/266f5fbf, 均 column),
   每列含 1 张图(550x400) + 1 个重复 H3 图注. 即 2 行 × 2 列 = 4 图的网格.
   实现: 外壳 inner-blocks-wrap 为列向 (block 默认), 2 个 row 容器各 flex row, 4 个列容器各 50%.
   选择器带 .uagb-ship-grid.alignfull.uagb-is-root-container 提升优先级, 覆盖第 6 节 (220 行)
   "含图片的 alignfull root → 3 列 grid" 规则 (外壳也含图, 会误匹配成 3 列).
   源站 padding: 50px 20px. */
.article-content .uagb-ship-grid.alignfull.uagb-is-root-container {
    padding: 50px 20px;
}
.article-content .uagb-ship-grid.alignfull.uagb-is-root-container > .uagb-container-inner-blocks-wrap {
    display: block;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
/* 2 个 row 容器 (14dd9122 顶行 / 89756df9 底行): flex row, 子列各 50% */
.article-content .uagb-ship-grid .uagb-block-14dd9122,
.article-content .uagb-ship-grid .uagb-block-89756df9 {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: center;
    flex-wrap: nowrap;
    column-gap: 24px;
    margin-bottom: 24px;
}
.article-content .uagb-ship-grid .uagb-block-14dd9122:last-child,
.article-content .uagb-ship-grid .uagb-block-89756df9:last-child {
    margin-bottom: 0;
}
/* 4 个列容器 (6be50486 / 9b36d852 / 2923fa9b / 266f5fbf): 各 50%, 内部图+图注垂直排列 */
.article-content .uagb-ship-grid .uagb-block-6be50486,
.article-content .uagb-ship-grid .uagb-block-9b36d852,
.article-content .uagb-ship-grid .uagb-block-2923fa9b,
.article-content .uagb-ship-grid .uagb-block-266f5fbf {
    flex: 1 1 calc(50% - 12px);
    max-width: calc(50% - 12px);
    min-width: 0;
}
/* 网格图: 撑满列宽, 统一宽高比, 圆角 */
.article-content .uagb-ship-grid .wp-block-uagb-image { margin: 0 0 8px; }
.article-content .uagb-ship-grid .wp-block-uagb-image__figure { margin: 0; }
.article-content .uagb-ship-grid .wp-block-uagb-image img {
    width: 100%;
    height: auto;
    aspect-ratio: 550 / 400;
    object-fit: cover;
    display: block;
    border-radius: 8px;
}
/* 重复 H3 图注 "custom ev cherger shipping" 弱化为小号居中图注 (去视觉噪声) */
.article-content .uagb-ship-grid .wp-block-uagb-advanced-heading { margin: 4px 0 0; }
.article-content .uagb-ship-grid .wp-block-uagb-advanced-heading .uagb-heading-text {
    font-size: 14px;
    font-weight: 400;
    color: var(--text-body);
    text-align: center;
    line-height: 1.4;
}

/* ---------- 13.5 网格区标题居中 (Containers Shipped Out From Our factory) ---------- */
.article-content .uagb-ship-grid > .uagb-container-inner-blocks-wrap > .wp-block-uagb-advanced-heading,
.article-content .uagb-ship-grid > .uagb-container-inner-blocks-wrap > .wp-block-uagb-advanced-heading .uagb-heading-text {
    text-align: center;
}

/* ---------- 13.6 icon-list (How We Ship Goods 的 5 种运输方式) 居中限宽 ----------
   源站 icon-list 紧贴左侧, 文案侧(b7c0d770)整体居中, icon-list 用默认堆叠即可,
   此处仅给图标统一品牌色圆点 (源站图标在抓取时丢失, uagb-icon-list__source-wrap 为空). */
.article-content .uagb-ship-split .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--brand);
    margin-right: 4px;
    flex-shrink: 0;
}

/* ============================================================
   About-shipping 响应式
   平板(≤991): 分栏变单列堆叠, 网格保持 2 列
   移动(≤767): 全部单列, hero 缩高, 字号收紧
   ============================================================ */
@media (max-width: 991px) {
    /* 分栏: 平板单列 (图/文上下堆叠) */
    .article-content .uagb-ship-split.alignfull.uagb-is-root-container > .uagb-container-inner-blocks-wrap {
        flex-direction: column;
        column-gap: 0;
        row-gap: 24px;
    }
    .article-content .uagb-ship-split.alignfull.uagb-is-root-container > .uagb-container-inner-blocks-wrap > .wp-block-uagb-container {
        flex: 1 1 100%;
        max-width: 100%;
    }
    /* 网格: 平板保持 2 列 (550x400 图缩小仍清晰), 间距收紧 */
    .article-content .uagb-ship-grid .uagb-block-14dd9122,
    .article-content .uagb-ship-grid .uagb-block-89756df9 {
        column-gap: 16px;
        margin-bottom: 16px;
    }
}
@media (max-width: 767px) {
    /* hero 移动端缩高 */
    .article-content .uagb-ship-hero { min-height: 240px !important; }
    /* 分栏: 移动单列 (平板已是 column, 此处补 row-gap) */
    .article-content .uagb-ship-split.alignfull.uagb-is-root-container > .uagb-container-inner-blocks-wrap { row-gap: 20px; }
    /* 网格: 移动单列 (4 图纵向堆叠, 避免小屏挤压) */
    .article-content .uagb-ship-grid .uagb-block-14dd9122,
    .article-content .uagb-ship-grid .uagb-block-89756df9 {
        flex-direction: column;
        column-gap: 0;
        row-gap: 16px;
    }
    .article-content .uagb-ship-grid .uagb-block-6be50486,
    .article-content .uagb-ship-grid .uagb-block-9b36d852,
    .article-content .uagb-ship-grid .uagb-block-2923fa9b,
    .article-content .uagb-ship-grid .uagb-block-266f5fbf {
        flex: 1 1 100%;
        max-width: 100%;
    }
}


/* ============================================================
   14. faq / qualification-certification / catalog-download / distributor-portal 单页专属
   ============================================================
   四页同属源站 Spectra/UAGB 抓取 HTML (Support 导航分组), 控制器 renderSupportContent()
   已做渲染层修正 (CTA 弹窗 / 占位图本地化 / PDF 死链 / FluentForm 死表单替换).
   此节补 blocks.css 缺失的布局/外观, 通用 uagb 规则 (第 1-9 节) 与认证图 (第 11.5 节,
   b0e81f25 同 block-id 自动命中 cert 页) 不再重复. */

/* ---------- 14.1 通用: 首区块标题居中 ----------
   四页 content 首个 alignfull root 多为「页面主标题 + 介绍」单列, 源站为居中布局.
   通用 :has (第 369 行) 只弱化首个含 heading 的 root 为小标题条, 这里补居中 + 上下留白,
   让 banner 下方首屏视觉对齐参考站 (标题大号居中, 副介绍灰色).
   注: cert/distributor 首区块有 hero 背景图 (见 14.1.1), 文字转白色, 不走此浅色居中规则. */
.single-page--support .article-content > .wp-block-uagb-container.alignfull.uagb-is-root-container:first-child:has(.uagb-heading-text):not(.uagb-support-hero) {
    text-align: center;
    padding-top: 60px;
    padding-bottom: 20px;
}
.single-page--support .article-content > .wp-block-uagb-container.alignfull.uagb-is-root-container:first-child:has(.uagb-heading-text):not(.uagb-support-hero) .uagb-heading-text {
    font-size: 32px;
    font-weight: 700;
    color: var(--text-dark);
}
.single-page--support .article-content > .wp-block-uagb-container.alignfull.uagb-is-root-container:first-child:has(.uagb-heading-text):not(.uagb-support-hero) p {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    color: var(--text-body);
    font-size: 16px;
}

/* ---------- 14.1.1 cert / distributor 首区块 hero 背景图 ----------
   渲染层按 block-id 给首区块 root 追加 .uagb-support-hero + 内联 style (背景图 + inset 遮罩,
   遮罩透明度 cert 0.4 / distributor 0.8, 与 about-us darkBlocks 同模式).
   此处只补布局 (min-height + 内容垂直居中) 与文字色 (深色背景上转白).
   注: cert hero 内有标题+介绍; distributor hero 内是两栏 (14.4 处理). */
.article-content .uagb-support-hero {
    min-height: 560px;
    display: flex !important;
    align-items: center;
    justify-content: center;
}
/* hero 内容层: 撑满 root 宽度, 与遮罩同层 (内联 box-shadow inset 不影响子元素层级) */
.article-content .uagb-support-hero > .uagb-container-inner-blocks-wrap {
    position: relative;
    width: 100%;
    max-width: var(--container-width, 1299px);
    margin: 0 auto;
}
/* hero 内标题居中 (cert 单列); distributor 两栏由 14.4 处理, 标题在左栏 */
.article-content .uagb-block-1f9fa8d9.uagb-support-hero {
    text-align: center;
}
/* hero 内文字转白色 (标题/段落), 保证深色背景上可读 */
.article-content .uagb-support-hero .uagb-heading-text,
.article-content .uagb-support-hero h2,
.article-content .uagb-support-hero h3 {
    color: #fff !important;
}
.article-content .uagb-support-hero p,
.article-content .uagb-support-hero li {
    color: rgba(255, 255, 255, 0.88) !important;
}

/* ---------- 14.2 FAQ 独立页 ----------
   通用第 7 节 FAQ 手风琴样式已足够 (切换 JS 在 foot.html). 仅补:
   - FAQ 标题 "All FAQ" 居中 + 上下间距
   - max-width 900px 在窄屏自适应 (通用第 7 节固定 900px, 移动端需放宽) */
.single-page--support .article-content .wp-block-uagb-faq { margin: 30px auto; }

/* ---------- 14.3 catalog-download: 下载卡片 (buildCatalogContent 生成) ----------
   源站 wp-block-file 块的 <object> PDF embed 依赖 WP Interactivity API, 抓取后失效 (详见控制器
   buildCatalogContent). 改为本站结构化卡片: 介绍区 + 2 个下载卡 (PDF 图标 + 文件名 + 描述 + 按钮).
   结构: <section.catalog-intro> + <div.catalog-grid><a.catalog-card>×2 */
.single-page--support .article-content .catalog-intro {
    text-align: center;
    max-width: 760px;
    margin: 0 auto 40px;
    padding: 50px 16px 0;
}
.single-page--support .article-content .catalog-intro__title {
    font-size: 30px;
    font-weight: 700;
    color: var(--text-dark);
    margin: 0 0 14px;
}
.single-page--support .article-content .catalog-intro__text {
    font-size: 16px;
    line-height: 1.7;
    color: var(--text-body);
    margin: 0;
}
/* 卡片网格: PC 2 列, 平板/移动单列 (auto-fit 自动降列; minmax 用 0 防止最小宽度撑破窄屏) */
.single-page--support .article-content .catalog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 28px;
    max-width: 980px;
    margin: 0 auto 60px;
    padding: 0 16px;
}
/* 单个下载卡: 整卡可点击 (<a.catalog-card>), 浅底 + 边框 + hover 上浮阴影 */
.single-page--support .article-content .catalog-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    background: var(--bg-soft);
    border: 1px solid var(--border-soft);
    border-radius: 12px;
    padding: 36px 28px 28px;
    text-decoration: none;
    color: inherit;
    transition: box-shadow .2s, border-color .2s, transform .2s;
}
.single-page--support .article-content .catalog-card:hover {
    box-shadow: 0 12px 32px rgba(12, 91, 162, .12);
    border-color: var(--brand);
    transform: translateY(-3px);
}
/* PDF 图标: 品牌色圆形大图标 (Font Awesome file-pdf-o, home.css 已加载 FA) */
.single-page--support .article-content .catalog-card__icon {
    width: 84px;
    height: 84px;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--brand) 0%, #0a3d6e 100%);
    border-radius: 50%;
    color: #fff;
}
.single-page--support .article-content .catalog-card__icon .fa {
    font-size: 38px;
}
.single-page--support .article-content .catalog-card__body {
    flex: 1 1 auto;
}
.single-page--support .article-content .catalog-card__title {
    font-size: 20px;
    font-weight: 600;
    color: var(--text-dark);
    margin: 0 0 10px;
}
.single-page--support .article-content .catalog-card__desc {
    font-size: 14px;
    line-height: 1.6;
    color: var(--text-body);
    margin: 0 0 14px;
}
.single-page--support .article-content .catalog-card__meta {
    display: inline-block;
    font-size: 12px;
    color: var(--text-body);
    background: #fff;
    border: 1px solid var(--border-soft);
    border-radius: 20px;
    padding: 3px 12px;
}
/* 下载按钮: 品牌色实心块状, 整卡 hover 时高亮 */
.single-page--support .article-content .catalog-card__btn {
    display: inline-block;
    margin-top: 22px;
    background: var(--brand);
    color: #fff;
    padding: 12px 32px;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 500;
    transition: background .2s;
}
.single-page--support .article-content .catalog-card:hover .catalog-card__btn {
    background: var(--brand-hover);
}
.single-page--support .article-content .catalog-card__btn .fa {
    margin-right: 6px;
}

/* ---------- 14.4 distributor-portal: 经销商表单与两栏布局 ----------
   渲染层已把死 FluentForm 替换为本站 .inquiry-form (样式复用 content.css).
   distributor 首区块结构 (实测, 与源站 Spectra 动态 CSS 一致):
     root(9091f251, 背景图+min-height) > def18b5f(flex row 两栏) > [左 584dfb34 介绍, 右 b8c6466d 表单]
   源站 def18b5f 为 display:flex flex-direction:row, 抓取丢 display:flex → 两栏堆叠成单列.
   给 def18b5f 注入 flex 布局 (PC 两栏, 移动单列), 表单上方 H2 已由 content 承担. */
.single-page--support .article-content .uagb-block-def18b5f {
    display: flex !important;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 40px;
    align-items: flex-start;
}
.single-page--support .article-content .uagb-block-def18b5f > .wp-block-uagb-container {
    flex: 1 1 0;
    min-width: 0;
}
/* distributor 下方 "Distributor Advantages" info-box 区块: 通用第 11.4 节 3 列网格已覆盖,
   此处仅补上下间距与标题居中 (与首区块视觉一致) */
.single-page--support .article-content .uagb-is-root-container.alignfull:has(.wp-block-uagb-info-box) .wp-block-uagb-advanced-heading {
    text-align: center;
}

/* ---------- 14.5 响应式 ----------
   断点与全站一致 (991/767/480). */
@media (max-width: 991px) {
    /* distributor 两栏: 平板单列堆叠 */
    .single-page--support .article-content .uagb-block-def18b5f {
        flex-direction: column;
        gap: 30px;
    }
}
@media (max-width: 767px) {
    /* 首区块标题: 移动端缩号 */
    .single-page--support .article-content > .wp-block-uagb-container.alignfull.uagb-is-root-container:first-child:has(.uagb-heading-text):not(.uagb-support-hero) {
        padding-top: 36px;
    }
    .single-page--support .article-content > .wp-block-uagb-container.alignfull.uagb-is-root-container:first-child:has(.uagb-heading-text):not(.uagb-support-hero) .uagb-heading-text {
        font-size: 24px;
    }
    /* hero: 移动端缩高 */
    .article-content .uagb-support-hero { min-height: 360px; }
    /* FAQ: 移动端放宽至全宽 (通用 900px 在 375px 屏左右留白过大) */
    .single-page--support .article-content .wp-block-uagb-faq { max-width: 100%; }
    /* catalog 介绍区/卡片: 移动端缩号收紧 */
    .single-page--support .article-content .catalog-intro { padding-top: 30px; }
    .single-page--support .article-content .catalog-intro__title { font-size: 24px; }
    .single-page--support .article-content .catalog-card { padding: 28px 20px 22px; }
}

