/* =====================================================================
   dev.ununun.cn —— 企业风（红色系）站点样式
   ---------------------------------------------------------------------
   1) 顶部 :root 覆盖 theme.css 的设计变量 —— 全站（含新闻列表/详情/404）
      立刻变成深砖红主色，不用逐页改样式；
   2) `.pt-*` 覆盖块：把通用页头/页脚/按钮改成深酒红质感；
   3) `.hd-*` 块：首页专用（Hero / 卡片 / 流程 / 深色历程 / 新闻 / CTA）。
   主色取自品牌截图：#A8211A 附近的深砖红，辅以暗酒红与橙调点缀。
   ===================================================================== */

:root {
    /* —— theme.css 的通用变量（覆盖后全站生效） —— */
    --pt-bg: #fbf8f7;
    --pt-surface: #ffffff;
    --pt-text: #1e1512;
    --pt-text-muted: #6e625c;
    --pt-border: #ede4e0;
    --pt-primary: #a8211a;
    --pt-primary-hover: #bf3323;
    --pt-radius: 4px;

    /* —— 本站品牌色阶 —— */
    --hd-950: #2b0a08;
    --hd-900: #450f0c;
    --hd-800: #63120e;
    --hd-700: #8a1a13;
    --hd-600: #a8211a;
    /* 主色 */
    --hd-500: #bf3323;
    --hd-400: #d2502f;
    --hd-accent: #e07a3c;

    --hd-shadow-sm: 0 1px 2px rgba(43, 10, 8, .06), 0 2px 8px rgba(43, 10, 8, .04);
    --hd-shadow-md: 0 6px 20px rgba(43, 10, 8, .10);
    --hd-shadow-lg: 0 14px 40px rgba(43, 10, 8, .16);
}

/* 页面容器：首页用通栏 Hero，所以主体交给各页自己的 .wrap 负责 */
.wrap {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}

.pt-main {
    max-width: none;
    padding: 0;
}

/* 内容页（新闻列表 / 详情）的统一容器 */
.news-page {
    padding: 40px 24px 64px;
}

/* 窄屏统一左右内边距：列表页/详情页都留出边距，不贴屏（2026-11-06） */
@media (max-width: 640px) {
    .wrap { padding: 0 16px; }
    .news-page { padding: 28px 16px 48px; }
}

/* =====================================================================
   新闻列表：左侧大号衬线日期做主视觉（2026-11-06）
   当年：月名小字 + 52px 日；非当年：40px 年份 + 小字「月 · 日」
   ===================================================================== */
.news-page .hd-news-item {
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    padding: 18px 20px;
}

.hd-news-date {
    width: 100%;
    min-height: 96px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1;
}

.hd-news-date .mm {
    display: block;
    margin-bottom: 8px;
    font-size: 12.5px;
    letter-spacing: 2px;
    color: var(--hd-600);
}

.hd-news-date .dd {
    display: block;
    font-family: Georgia, "Times New Roman", "Songti SC", "Noto Serif SC", "SimSun", serif;
    font-size: 52px;
    font-weight: 700;
    line-height: .92;
    letter-spacing: -1.5px;
    color: var(--pt-text);
}

.hd-news-date .yy {
    display: block;
    font-family: Georgia, "Times New Roman", "Songti SC", "Noto Serif SC", "SimSun", serif;
    font-size: 40px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -1.5px;
    color: var(--pt-text);
}

.hd-news-date .mm--md {
    margin-top: 8px;
    margin-bottom: 0;
    font-size: 11.5px;
    letter-spacing: 2px;
    color: var(--hd-600);
}

.hd-news-body { min-width: 0; }

.news-page .hd-news-item:hover .pt-list-title { color: var(--hd-600); }

@media (max-width: 640px) {
    .news-page .hd-news-item {
        grid-template-columns: 74px minmax(0, 1fr);
        gap: 14px;
        padding: 16px;
    }

    .hd-news-date { min-height: 74px; }
    .hd-news-date .dd { font-size: 40px; }
    .hd-news-date .yy { font-size: 30px; }
    .hd-news-date .mm { font-size: 11px; letter-spacing: 1px; margin-bottom: 6px; }
    .hd-news-date .mm--md { font-size: 10.5px; letter-spacing: 1px; margin-top: 6px; }
}

/* =====================================================================
   一、pt-* 覆盖：深酒红吸顶导航 + 深色页脚 + 红色按钮
   ===================================================================== */

.pt-header {
    position: sticky;
    top: 0;
    z-index: 30;
    background: rgba(69, 15, 12, .92);
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    backdrop-filter: saturate(140%) blur(10px);
}

.pt-header-inner {
    height: 66px;
    display: flex;
    align-items: center;
    gap: 32px;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}

.pt-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: .3px;
}

.pt-brand-text { color: #fff; }

.pt-nav {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
    font-size: 14.5px;
}

.pt-nav-link {
    color: rgba(255, 255, 255, .78);
    padding: 6px 12px;
    border-radius: var(--pt-radius);
    background: transparent;
    transition: color .18s ease, background .18s ease;
}

/* 选中态：半透明白胶囊（主题里给 active 项加的浅灰底已覆盖） */
.pt-nav-link:hover,
.pt-nav-link:focus {
    background: rgba(255, 255, 255, .1);
    color: #fff;
}

.pt-nav-link.pt-nav-link-active,
.pt-nav-link[aria-current="page"] {
    background: rgba(255, 255, 255, .14);
    color: #fff;
    font-weight: 600;
}

/* 头部登录按钮（PublicLayout 的 LoginUrl 渲染成 .pt-btn.pt-btn-primary） */
.pt-header .pt-btn.pt-btn-primary {
    height: 34px;
    padding: 0 16px;
    border-radius: var(--pt-radius);
    background: var(--hd-500);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
    flex: none;
    border: 1px solid rgba(255, 255, 255, .18);
    box-shadow: none;
    transition: background .18s ease, transform .18s ease, box-shadow .18s ease;
}

.pt-header .pt-btn.pt-btn-primary:hover {
    background: var(--hd-400);
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(210, 80, 47, .35);
}

.pt-footer {
    background: #1a0706;
    color: rgba(255, 255, 255, .62);
    border-top: none;
    font-size: 13.5px;
    padding: 46px 0 30px;
}

/* 四列：品牌简介 / 解决方案 / 关于 / 联系（对齐设计图 footer-grid） */
.pt-footer-wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}

.pt-footer-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: 32px;
}

.pt-footer-brand-name {
    color: #fff;
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 0;
}

/* 页脚品牌行：图标 + 公司名 */
.pt-footer-brand-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

/* 品牌图标（页眉/页脚共用，虚构标识） */
.pt-brand-mark {
    width: 26px;
    height: 26px;
    flex: none;
    border-radius: 8px;
    display: grid;
    place-items: center;
    color: #fff;
    background: linear-gradient(135deg, var(--hd-600), var(--hd-accent));
    box-shadow: 0 3px 10px rgba(168, 33, 26, .28);
}

.pt-footer-brand p {
    margin: 0;
    max-width: 26em;
    line-height: 1.7;
}

.pt-footer-col h4 {
    margin: 0 0 14px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .6px;
    color: #fff;
}

.pt-footer-col ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 9px;
}

.pt-footer-contact { line-height: 1.6; }

.pt-footer-bottom {
    margin-top: 34px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .1);
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    justify-content: space-between;
    font-size: 12.5px;
    color: rgba(255, 255, 255, .45);
}

.pt-footer-links {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.pt-footer a:hover { color: #fff; }

@media (max-width: 900px) {
    .pt-footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
    .pt-footer-grid { grid-template-columns: 1fr; }
}

/* 新闻列表里常见的按钮/标签沿用红色系 */
.pt-btn-primary {
    background: var(--hd-600);
    color: #fff;
}

.pt-btn-primary:hover { background: var(--hd-500); }

.pt-tag {
    color: var(--hd-700);
    background: rgba(168, 33, 26, .07);
    border-radius: 999px;
    padding: 2px 10px;
}

/* =====================================================================
   二、首页：Hero
   ===================================================================== */

.hd-hero {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(900px 420px at 12% 118%, rgba(224, 122, 60, .55), transparent 62%),
        radial-gradient(700px 380px at 92% -12%, rgba(43, 10, 8, .85), transparent 60%),
        linear-gradient(118deg, var(--hd-900) 0%, var(--hd-700) 46%, var(--hd-600) 100%);
}

/* 有 Banner 主图时叠一层图（HeroStyle 注入 --hd-hero-img） */
.hd-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--hd-hero-img, none);
    background-size: cover;
    background-position: center;
    opacity: .18;
    pointer-events: none;
}

.hd-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, .07) 1px, transparent 1px);
    background-size: 22px 22px;
    opacity: .5;
    pointer-events: none;
}

.hd-hero-inner {
    position: relative;
    z-index: 1;
    padding: 92px 0 104px;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    gap: 56px;
    align-items: center;
}

.hd-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    font-size: 12.5px;
    letter-spacing: .4px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    color: rgba(255, 255, 255, .92);
}

.hd-hero h1 {
    margin: 20px 0 0;
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.22;
    letter-spacing: -.5px;
    font-weight: 800;
    color: #fff;
}

/* 标题第二行高亮（对齐设计图 .hero h1 em） */
.hd-hero h1 em {
    font-style: normal;
    background: linear-gradient(100deg, #ffd9a8, var(--hd-accent));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.hd-hero-sub {
    margin: 18px 0 0;
    max-width: 34em;
    font-size: 16px;
    color: rgba(255, 255, 255, .8);
}

.hd-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 32px;
}

.hd-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 44px;
    padding: 0 22px;
    border-radius: var(--pt-radius);
    font-size: 15px;
    font-weight: 600;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.hd-btn-primary {
    background: var(--hd-accent);
    color: #2b0a08;
    box-shadow: 0 8px 24px rgba(224, 122, 60, .38);
}

.hd-btn-primary:hover {
    transform: translateY(-2px);
    background: #ea8b4f;
    box-shadow: 0 12px 30px rgba(224, 122, 60, .46);
}

.hd-btn-ghost {
    border: 1px solid rgba(255, 255, 255, .32);
    color: #fff;
    background: rgba(255, 255, 255, .06);
}

.hd-btn-ghost:hover {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, .14);
}

.hd-btn-solid {
    background: var(--hd-600);
    color: #fff;
    box-shadow: 0 8px 22px rgba(168, 33, 26, .28);
}

.hd-btn-solid:hover {
    transform: translateY(-2px);
    background: var(--hd-500);
}

/* 右侧毛玻璃卡 */
.hd-glass {
    border-radius: 8px;
    padding: 26px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .18);
    box-shadow: 0 20px 50px rgba(20, 4, 3, .35);
    backdrop-filter: blur(6px);
}

.hd-glass-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 13px;
    color: rgba(255, 255, 255, .7);
    letter-spacing: .3px;
}

.hd-stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px 20px;
    margin-top: 20px;
}

.hd-stat-value {
    font-size: 30px;
    font-weight: 800;
    letter-spacing: -.5px;
    line-height: 1.1;
}

.hd-stat-value span {
    font-size: 15px;
    font-weight: 600;
    margin-left: 2px;
    color: rgba(255, 255, 255, .75);
}

.hd-stat-label {
    margin-top: 4px;
    font-size: 12.5px;
    color: rgba(255, 255, 255, .62);
}

/* 服务卡片标签（对齐设计图 .card-tags / .tag） */
.hd-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.hd-tag {
    font-size: 12px;
    line-height: 1;
    padding: 6px 10px;
    border-radius: 999px;
    color: var(--hd-700);
    background: rgba(168, 33, 26, .08);
}

/* =====================================================================
   十、招聘 / 案例列表与详情（卡片式，与首页同风格）
   ===================================================================== */

.hd-card-link {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    /* 纵向排布：内容少的卡片也能把底部栏（薪资）贴到底 */
    display: flex;
    flex-direction: column;
    height: 100%;
}

.hd-card-link p {
    margin: 12px 0 0;
}

/* 标题下方标签：上下间距比默认更紧凑，和标题/正文协调 */
.hd-card-tags--tight {
    margin-top: 16px;
}

/* 标签行下方间距与上方一致（招聘列表卡片，2026-11-06）
   注意：需带上 .hd-card 父级，否则与 .hd-card p 特异度相同会被后者覆盖 */
.hd-card .hd-card-tags--tight + p {
    margin-top: 16px;
}

.hd-card-foot {
    margin-top: auto;
    padding-top: 14px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    font-size: 12.5px;
    color: var(--pt-muted, #6b7280);
}

.hd-card-foot-strong {
    color: var(--hd-700);
    font-weight: 700;
}

.hd-article {
    max-width: 860px;
    margin: 0 auto;
    padding: 8px 0 12px;
}

.hd-article h1 {
    margin: 12px 0 0;
    font-size: clamp(22px, 2.6vw, 32px);
    line-height: 1.32;
    font-weight: 800;
    color: #1a0706;
}

.hd-article-meta {
    margin-top: 12px;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    font-size: 13px;
    color: var(--pt-muted, #6b7280);
}

.hd-article-lead {
    margin: 16px 0 0;
    font-size: 15.5px;
    line-height: 1.85;
    color: #3f3a38;
}

.hd-article-back {
    margin-top: 28px;
}

/* =====================================================================
   十四、招聘详情页（关键信息条 / 正文 / 投递方式）
   ===================================================================== */

.hd-job-meta {
    margin-top: 16px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    padding: 16px 18px;
    background: #fdf7f5;
    border: 1px solid var(--pt-border);
    border-radius: var(--pt-radius);
}

.hd-job-meta-label {
    display: block;
    font-size: 12px;
    color: var(--pt-muted, #6b7280);
}

.hd-job-meta-value {
    display: block;
    margin-top: 4px;
    font-size: 15px;
    font-weight: 700;
    color: var(--hd-700);
}

.hd-job-prose {
    margin-top: 20px;
}

.hd-job-prose h3,
.hd-job-prose h4 {
    margin: 22px 0 10px;
    font-size: 15.5px;
    font-weight: 700;
    color: #1a0706;
}

.hd-job-prose p {
    margin: 10px 0 0;
    font-size: 15px;
    line-height: 1.85;
    color: #3f3a38;
}

.hd-job-prose ul {
    margin: 10px 0 0;
    padding-left: 20px;
    color: #3f3a38;
}

.hd-job-prose li {
    margin: 6px 0;
    line-height: 1.8;
    font-size: 14.5px;
}

.hd-job-apply {
    margin-top: 30px;
    padding: 18px 20px;
    border-radius: var(--pt-radius);
    background: linear-gradient(135deg, rgba(168, 33, 26, .06), rgba(224, 122, 60, .10));
    border: 1px solid rgba(168, 33, 26, .12);
}

.hd-job-apply-title {
    font-size: 14px;
    font-weight: 800;
    color: var(--hd-700);
}

.hd-job-apply p {
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 1.8;
    color: #3f3a38;
}

@media (max-width: 640px) {
    .hd-job-meta {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 14px 16px;
    }
}

/* 浅色背景下的案例方块（列表/详情页用） */
.hd-case-list--light {
    margin-top: 26px;
}

.hd-case-item--light {
    background: #fff;
    border: 1px solid var(--pt-border);
    border-radius: var(--pt-radius);
}

.hd-case-item--light .k {
    color: var(--hd-700);
}

.hd-case-item--light .v {
    color: var(--pt-muted, #6b7280);
}

/* 毛玻璃卡底部：分隔线 + 运行状态（对齐设计图 .glass-divider / .glass-foot） */
.hd-glass-divider {
    height: 1px;
    margin: 22px 0 0;
    background: rgba(255, 255, 255, .14);
}

.hd-glass-foot {
    margin-top: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: rgba(255, 255, 255, .75);
}

.hd-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #52c41a;
    box-shadow: 0 0 0 3px rgba(82, 196, 26, .18);
}

.hd-glass-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.hd-glass-tag {
    font-size: 13px;
    padding: 6px 12px;
    border-radius: var(--pt-radius);
    color: #fff;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
}

/* =====================================================================
   三、首页：能力条
   ===================================================================== */

.hd-strip {
    background: #fff;
    border-bottom: 1px solid var(--pt-border);
}

.hd-strip-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 34px;
    padding: 18px 0;
    font-size: 13px;
    color: var(--pt-text-muted);
}

.hd-strip-inner strong {
    color: var(--pt-text);
    font-weight: 600;
    margin-right: 6px;
}

/* =====================================================================
   四、首页：通用区块
   ===================================================================== */

.hd-section { padding: 84px 0; }

.hd-section--tint { background: linear-gradient(180deg, #fff 0%, var(--pt-bg) 100%); }

.hd-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 40px;
}

.hd-kicker {
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: 1.4px;
    color: var(--hd-600);
    text-transform: uppercase;
}

.hd-kicker--light { color: #f0b183; }

.hd-section-title {
    margin: 10px 0 0;
    font-size: clamp(22px, 2.4vw, 30px);
    font-weight: 800;
    letter-spacing: -.3px;
    color: var(--pt-text);
}

.hd-section-desc {
    margin: 10px 0 0;
    max-width: 42em;
    font-size: 15px;
    color: var(--pt-text-muted);
}

.hd-more {
    font-size: 14px;
    font-weight: 600;
    color: var(--hd-600);
    white-space: nowrap;
    transition: transform .18s ease;
}

.hd-more:hover { transform: translateX(3px); }

/* =====================================================================
   五、首页：服务卡片
   ===================================================================== */

.hd-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.hd-card {
    background: #fff;
    border: 1px solid var(--pt-border);
    border-radius: var(--pt-radius);
    padding: 26px 24px 24px;
    box-shadow: var(--hd-shadow-sm);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.hd-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--hd-shadow-md);
    border-color: #e3d3cd;
}

.hd-card-icon {
    width: 42px;
    height: 42px;
    border-radius: var(--pt-radius);
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, rgba(168, 33, 26, .12), rgba(224, 122, 60, .18));
    color: var(--hd-600);
    margin-bottom: 16px;
}

/* 图标固定 20×20，保证与 42×42 背景之间有均匀边距（对齐设计图） */
.hd-card-icon svg {
    width: 20px;
    height: 20px;
    flex: none;
}

.hd-card h3 {
    margin: 0;
    font-size: 17px;
    font-weight: 700;
    color: var(--pt-text);
}

.hd-card p {
    margin: 10px 0 0;
    font-size: 14px;
    color: var(--pt-text-muted);
}

/* =====================================================================
   六、首页：服务流程
   ===================================================================== */

.hd-steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.hd-step {
    padding: 24px 22px;
    border-radius: var(--pt-radius);
    background: #fff;
    border: 1px solid var(--pt-border);
    box-shadow: var(--hd-shadow-sm);
    transition: transform .2s ease, box-shadow .2s ease;
}

.hd-step:hover {
    transform: translateY(-3px);
    box-shadow: var(--hd-shadow-md);
}

.hd-step-no {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    color: var(--hd-400);
}

.hd-step h3 {
    margin: 8px 0 0;
    font-size: 15.5px;
    color: var(--pt-text);
}

.hd-step p {
    margin: 8px 0 0;
    font-size: 13.5px;
    color: var(--pt-text-muted);
}

/* =====================================================================
   七、首页：关于我们
   ===================================================================== */

.hd-about {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    gap: 40px;
    align-items: start;
}

.hd-about-image {
    width: 100%;
    border-radius: var(--pt-radius);
    box-shadow: var(--hd-shadow-md);
}

.hd-about-body { display: grid; gap: 16px; }

.hd-about-text {
    margin: 0;
    font-size: 15px;
    color: var(--pt-text-muted);
    line-height: 1.8;
}

.hd-about-row {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr);
    gap: 14px;
    padding-top: 16px;
    border-top: 1px solid var(--pt-border);
}

.hd-about-label {
    font-size: 13px;
    font-weight: 700;
    color: var(--hd-600);
    letter-spacing: .5px;
}

.hd-prose { font-size: 15px; color: var(--pt-text-muted); line-height: 1.8; }

/* =====================================================================
   八、首页：客户案例（深色对比块，对齐设计图 section.case）
   ===================================================================== */

.hd-case {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(700px 340px at 88% 112%, rgba(224, 122, 60, .5), transparent 60%),
        linear-gradient(120deg, var(--hd-950) 0%, var(--hd-800) 58%, var(--hd-700) 100%);
}

.hd-case-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
    gap: 56px;
    align-items: center;
    padding: 76px 0;
}

.hd-case-title {
    margin: 12px 0 0;
    font-size: clamp(22px, 2.4vw, 30px);
    font-weight: 800;
    color: #fff;
}

.hd-case-text {
    margin: 14px 0 0;
    font-size: 15px;
    color: rgba(255, 255, 255, .76);
}

.hd-case-action { margin-top: 22px; }

.hd-case-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.hd-case-item {
    padding: 18px 18px 16px;
    border-radius: var(--pt-radius);
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 255, 255, .14);
    transition: background .2s ease, transform .2s ease;
}

.hd-case-item:hover {
    background: rgba(255, 255, 255, .12);
    transform: translateY(-3px);
}

.hd-case-item .k {
    font-size: 22px;
    font-weight: 800;
    letter-spacing: -.4px;
}

.hd-case-item .v {
    margin-top: 4px;
    font-size: 12.5px;
    color: rgba(255, 255, 255, .66);
}

/* =====================================================================
   八之二、首页：发展历程（横向时间轴）
   ===================================================================== */

.hd-timeline {
    display: grid;
    grid-auto-flow: column;
    /* 一屏正好显示 4 条，多出的靠横向滚动看（按住 Shift + 滚轮） */
    grid-auto-columns: calc(25% - 16.5px);
    gap: 22px;
    overflow-x: auto;
    /* 给首个圆点的外发光留 4px，否则左边缘被裁掉一块（负 margin 抵消，内容位置不变） */
    padding-left: 4px;
    margin-left: -4px;
    /* 隐藏滚动条：视觉上还是 4 条一排，靠右侧渐隐暗示还有内容 */
    scrollbar-width: none;
    -ms-overflow-style: none;
    scroll-behavior: smooth;
    -webkit-mask-image: linear-gradient(90deg, #000 0, #000 94%, rgba(0, 0, 0, .15) 100%);
    mask-image: linear-gradient(90deg, #000 0, #000 94%, rgba(0, 0, 0, .15) 100%);
}

.hd-timeline::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}

.hd-timeline-item { padding-right: 0; }

.hd-timeline-year {
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .5px;
    color: var(--hd-700);
}

.hd-timeline-rail {
    position: relative;
    height: 1px;
    margin: 12px 0 14px;
    background: var(--pt-border);
    /* 向右补满列间距，让各条目的小横线连成一条贯通的轴线 */
    width: calc(100% + 22px);
}

.hd-timeline-item:last-child .hd-timeline-rail {
    width: 100%;
}

.hd-timeline-dot {
    position: absolute;
    left: 0;
    top: -4px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--hd-600);
    box-shadow: 0 0 0 3px rgba(168, 33, 26, .12);
}

.hd-timeline-body h4 {
    margin: 0;
    font-size: 15px;
    font-weight: 700;
}

.hd-timeline-body p {
    margin: 8px 0 0;
    font-size: 13px;
    color: var(--pt-muted, #6b7280);
}

/* =====================================================================
   九、首页：新闻 / 公告
   ===================================================================== */

.hd-news {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.hd-news-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid var(--pt-border);
    border-radius: var(--pt-radius);
    overflow: hidden;
    box-shadow: var(--hd-shadow-sm);
    transition: transform .2s ease, box-shadow .2s ease;
}

.hd-news-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--hd-shadow-md);
}

.hd-news-thumb {
    position: relative;
    height: 132px;
    /* 无图时：仅渐变底（已按要求去掉点阵纹理），有图则图片覆盖 */
    background: linear-gradient(135deg, var(--hd-700), var(--hd-500) 58%, var(--hd-accent));
    overflow: hidden;
}

.hd-news-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.hd-news-body {
    padding: 18px 20px 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;
}

/* 新闻列表卡片：标签行上下间距一致（flex gap 10 + 8 = 18，下方由行内边距 18 提供） */
.hd-news-body .pt-list-meta {
    margin-top: 8px;
}

.hd-news-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 12.5px;
    color: var(--pt-text-muted);
}

.hd-news-tag {
    padding: 1px 8px;
    border-radius: 3px;
    color: var(--hd-700);
    background: rgba(168, 33, 26, .07);
}

.hd-news-card h3 {
    margin: 0;
    font-size: 15.5px;
    line-height: 1.5;
    color: var(--pt-text);
}

.hd-news-card p {
    margin: 0;
    flex: 1;
    font-size: 13.5px;
    color: var(--pt-text-muted);
}

/* 公告通知：列表分割线左右抵边（行自带内边距） */
.hd-notices {
    margin-top: 32px;
    background: #fff;
    border: 1px solid var(--pt-border);
    border-radius: var(--pt-radius);
    box-shadow: var(--hd-shadow-sm);
    overflow: hidden;
}

.hd-notices-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 20px;
    font-size: 14px;
    font-weight: 700;
    color: var(--pt-text);
    border-bottom: 1px solid var(--pt-border);
}

.hd-notices ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.hd-notices li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 0;
    font-size: 14px;
    border-bottom: 1px solid var(--pt-border);
}

.hd-notice-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    padding: 12px 20px;
    color: inherit;
    text-decoration: none;
}

.hd-notices li:last-child { border-bottom: none; }

.hd-notices li:hover { background: #fdf7f5; }

.hd-notice-title { color: var(--pt-text); }

.hd-notice-time {
    flex: 0 0 auto;
    font-size: 12.5px;
    color: var(--pt-text-muted);
}

/* =====================================================================
   十、首页：合作伙伴
   ===================================================================== */

.hd-partners {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 16px;
}

.hd-partner {
    display: grid;
    place-items: center;
    min-height: 76px;
    padding: 14px;
    border-radius: var(--pt-radius);
    background: #fff;
    border: 1px dashed #e0d2cc;
    color: var(--pt-text-muted);
    font-size: 13.5px;
    transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.hd-partner:hover {
    border-color: var(--hd-500);
    transform: translateY(-2px);
    box-shadow: var(--hd-shadow-sm);
}

.hd-partner img {
    max-height: 40px;
    object-fit: contain;
}

/* =====================================================================
   十一、首页：底部转化
   ===================================================================== */

.hd-cta {
    background: #fff;
    border-top: 1px solid var(--pt-border);
    border-bottom: 1px solid var(--pt-border);
}

.hd-cta-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 54px 0;
}

.hd-cta h2 {
    margin: 0;
    font-size: clamp(20px, 2.2vw, 26px);
    font-weight: 800;
    color: var(--pt-text);
}

.hd-cta p {
    margin: 8px 0 0;
    font-size: 14.5px;
    color: var(--pt-text-muted);
}

/* =====================================================================
   十二、响应式
   ===================================================================== */

@media (max-width: 1080px) {
    .hd-partners { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
    .hd-hero-inner,
    .hd-case-inner { grid-template-columns: 1fr; gap: 40px; padding: 64px 0; }

    .hd-cards,
    .hd-news { grid-template-columns: 1fr 1fr; }

    .hd-steps { grid-template-columns: 1fr 1fr; }

    .hd-about { grid-template-columns: 1fr; }

    .pt-nav { display: none; }
}

@media (max-width: 640px) {
    .hd-cards,
    .hd-news,
    .hd-steps,
    .hd-case-list,
    .hd-partners { grid-template-columns: 1fr; }

    /* 手机端：一屏约 1.2 条，同样隐藏滚动条、可横向滑 */
    .hd-timeline {
        grid-auto-flow: column;
        grid-auto-columns: 78%;
        gap: 16px;
    }

    .hd-timeline-item { padding-right: 0; padding-bottom: 0; }

    .hd-section { padding: 58px 0; }

    .hd-hero-inner { padding: 52px 0; }

    .hd-about-row { grid-template-columns: 1fr; }
}

/* 页脚站点信息行（地址 / 电话 / 邮箱 / 工作时间，来自站点信息表） */
.pt-footer-info {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 18px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
}

/* =====================================================================
   十三、404 页（极简布局：图标 + 标题 + 说明，桌面/手机都保留四周留白）
   ===================================================================== */

.nf-page {
    box-sizing: border-box;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    /* 偏上显示（不垂直居中）：距顶部留出约 12vh */
    align-items: center;
    justify-content: flex-start;
    text-align: center;
    /* 上下左右都留白：手机端也不会把屏幕撑满 */
    padding: 12vh 24px 72px;
    /* 背景沿用登录/认证页同一张环境光图（micro.svg），白色底兜底 */
    background-color: #fff;
    background-image: url("/images/micro.svg");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
}

.nf-img {
    display: block;
    width: 220px;
    max-width: 62vw;
    height: auto;
}

.nf-title {
    margin: 28px 0 0;
    font-size: clamp(19px, 2.6vw, 24px);
    font-weight: 700;
    letter-spacing: -.1px;
    /* 不再用纯黑：改柔和深灰棕，跟浅色整体风格更协调 */
    color: #4a4340;
}

.nf-sub {
    margin: 12px 0 0;
    max-width: 30em;
    font-size: 14px;
    line-height: 1.75;
    color: var(--pt-muted, #6b7280);
}

@media (max-width: 640px) {
    .nf-page {
        /* 手机端：距 8vh 起、左右至少 20px */
        padding: 8vh 20px 56px;
        min-height: 76vh;
        background-position: center top;
        background-size: 200% auto;
    }

    .nf-img {
        width: 168px;
        max-width: 68vw;
    }

    .nf-title {
        margin-top: 22px;
    }
}


/* =====================================================================
   十五、服务项目列表（横向卡片：图标块 + 文本，和首页竖卡区分）
   ===================================================================== */

.hd-svc-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.hd-svc-card {
    display: flex;
    gap: 16px;
    padding: 22px 22px 20px;
    background: #fff;
    border: 1px solid var(--pt-border);
    border-radius: var(--pt-radius);
    box-shadow: var(--hd-shadow-sm);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.hd-svc-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--hd-shadow-md);
    border-color: #e3d3cd;
}

.hd-svc-icon {
    flex: none;
    width: 42px;
    height: 42px;
    border-radius: var(--pt-radius);
    display: grid;
    place-items: center;
    /* 与首页服务项目图标一致：浅色渐变底 + 主色图标 + 小圆角 */
    color: var(--hd-600);
    background: linear-gradient(135deg, rgba(168, 33, 26, .12), rgba(224, 122, 60, .18));
}

.hd-svc-icon svg {
    width: 20px;
    height: 20px;
}

.hd-svc-body {
    min-width: 0;
}

.hd-svc-body h3 {
    margin: 0;
    font-size: 17px;
    font-weight: 800;
    color: #1a0706;
}

.hd-svc-body p {
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 1.8;
    color: var(--pt-muted, #6b7280);
}

.hd-svc-tags {
    margin-top: 12px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

@media (max-width: 900px) {
    .hd-svc-list {
        grid-template-columns: 1fr;
    }
}


/* =====================================================================
   十六、公告通知（列表：日期块 + 行式；详情：窄栏 + 顶部细条）
   ===================================================================== */

.hd-notice-list { display: flex; flex-direction: column; }

.hd-notice-row {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 20px 4px;
    border-bottom: 1px solid var(--pt-border);
    color: inherit;
    text-decoration: none;
    transition: background .18s ease, padding-left .18s ease;
}

.hd-notice-row:first-child { border-top: 1px solid var(--pt-border); }
.hd-notice-row:hover { background: #fdf7f5; padding-left: 10px; }

.hd-notice-date {
    flex: none;
    width: 74px;
    text-align: center;
    padding: 8px 0;
    border-radius: var(--pt-radius);
    background: linear-gradient(135deg, rgba(168, 33, 26, .08), rgba(224, 122, 60, .12));
}

.hd-notice-date-md { display: block; font-size: 11px; letter-spacing: .5px; color: var(--hd-700); }
.hd-notice-date-day { display: block; margin-top: 2px; font-size: 22px; font-weight: 800; color: var(--hd-700); }

.hd-notice-body { min-width: 0; flex: 1; }
.hd-notice-head { display: flex; align-items: center; gap: 8px; }
.hd-notice-head h3 { margin: 0; font-size: 16px; font-weight: 700; color: #2f2a28; flex: 0 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hd-notice-body p { margin: 8px 0 0; font-size: 13.5px; line-height: 1.75; color: var(--pt-muted, #6b7280); }

/* 公告标签：列表页「类型」紧挨标题、「置顶」靠右；详情页标签在大标题下方（2026-11-06） */
.hd-notice-tags { display: flex; align-items: center; gap: 8px; flex: none; }
.hd-notice-row .hd-notice-level { flex: none; }
.hd-notice-row .hd-notice-top { flex: none; margin-left: auto; }

.hd-notice-top,
.hd-notice-level { font-size: 11px; line-height: 1; padding: 4px 8px; border-radius: 999px; }
.hd-notice-top { color: #fff; background: var(--hd-600); }
.hd-notice-level { color: var(--hd-700); background: rgba(168, 33, 26, .08); }

.hd-notice-arrow {
    flex: none;
    color: var(--pt-muted, #6b7280);
    font-size: 16px;
    opacity: 0;
    transition: opacity .18s ease, transform .18s ease;
}

.hd-notice-row:hover .hd-notice-arrow { opacity: 1; transform: translateX(3px); }

/* 公告详情：宽度与新闻详情一致（占满 wrap 内容区，不再限宽 780）（2026-11-06） */
.hd-notice-article { max-width: none; margin: 0; padding: 8px 0 12px; }

.hd-notice-article-top {
    height: 3px;
    width: 78px;
    border-radius: 2px;
    background: linear-gradient(90deg, var(--hd-600), var(--hd-accent));
}

/* 公告详情：日期徽章（方案 A）+ 标题/标签在右（2026-11-06） */
.hd-notice-article .hd-notice-head {
    margin-top: 20px;
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.hd-notice-datecard {
    flex: none;
    width: 78px;
    text-align: center;
    border: 1px solid var(--pt-border);
    border-radius: 6px;
    padding: 8px 0 7px;
    background: #fdf7f5;
}

.hd-notice-datecard-m {
    display: block;
    font-size: 11px;
    color: var(--hd-700);
    letter-spacing: .06em;
}

.hd-notice-datecard-d {
    display: block;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.1;
    color: #2f2a28;
}

.hd-notice-datecard-y {
    display: block;
    margin-top: 2px;
    font-size: 11px;
    color: var(--pt-muted, #6b7280);
}

.hd-notice-head-main { min-width: 0; flex: 1; }

.hd-notice-article h1 {
    margin: 0;
    font-size: clamp(20px, 2.4vw, 28px);
    line-height: 1.4;
    font-weight: 800;
    color: #2f2a28;
}

/* 标题行：标签在大标题下方，上边距与下边距（正文间距）保持一致 */
.hd-notice-article .hd-notice-tags {
    margin: 22px 0 0;
}

/* 公告正文：公文风（方案 B）—— 首行缩进 2 字符、段距 6px、行高 1.95 */
.hd-notice-prose {
    margin-top: 22px;
    font-size: 15.5px;
    line-height: 1.95;
    color: #3a3532;
}

.hd-notice-prose p {
    margin: 0 0 6px;
    text-indent: 2em;
}

.hd-notice-prose h3,
.hd-notice-prose h2 {
    font-size: 15.5px;
    line-height: 1.8;
    font-weight: 700;
    color: #2f2a28;
    margin: 20px 0 4px;
    text-indent: 2em;
}

.hd-notice-prose ul,
.hd-notice-prose ol {
    margin: 6px 0;
    padding-left: 4em;
}

@media (max-width: 640px) {
    .hd-notice-article .hd-notice-head { gap: 14px; }

    .hd-notice-article-top { width: 62px; }

    .hd-notice-datecard {
        width: 62px;
        padding: 8px 0 7px;
    }

    .hd-notice-datecard-d { font-size: 21px; }

    .hd-notice-tags { gap: 6px; }

    .hd-notice-prose { font-size: 15px; }
}

@media (max-width: 640px) {
    .hd-notice-row { gap: 12px; padding: 16px 2px; }
    .hd-notice-date { width: 58px; }
    .hd-notice-date-day { font-size: 18px; }
    .hd-notice-arrow { display: none; }
}

/* =====================================================================
   十七、客户案例指标块（详情页：四列 + 顶部细条）
   ===================================================================== */

.hd-case-list--light {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.hd-case-item--light {
    position: relative;
    padding: 22px 18px 18px;
    overflow: hidden;
}

.hd-case-item--light::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--hd-600), var(--hd-accent));
    opacity: .85;
}

.hd-case-item--light .k { font-size: 24px; letter-spacing: -.5px; color: var(--hd-600); }
.hd-case-item--light .v { margin-top: 6px; font-size: 13px; line-height: 1.6; color: #6b6f76; }

@media (max-width: 900px) {
    .hd-case-list--light { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
    .hd-case-list--light { grid-template-columns: 1fr; }
}

/* 发展历程：横向滚动提示 */
.hd-timeline-hint {
    margin: 10px 0 0;
    font-size: 12px;
    color: var(--pt-muted, #6b7280);
}

/* =====================================================================
   十八、首页「关于我们」重排（左文右图 + 使命愿景卡 + 关键数据）
   ===================================================================== */

.hd-about {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    gap: 44px;
    align-items: start;
}

.hd-about-lead {
    margin: 0;
    font-size: 15.5px;
    line-height: 1.9;
    color: #3f3a38;
}

.hd-about-cards {
    margin-top: 22px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

/* 关于我们正文（富文本分段）：段间留白 + 行距（2026-11-06） */
.hd-about-prose {
    margin-top: 14px;
    font-size: 15px;
    line-height: 1.9;
    color: var(--pt-text-muted);
}

/* 关于我们：标题与正文之间收紧（原 40px 偏大） */
#about .hd-section-head {
    margin-bottom: 18px;
}

.hd-about-prose p {
    margin: 0 0 14px;
}

.hd-about-prose p:last-child {
    margin-bottom: 0;
}

.hd-about-card {
    padding: 16px 18px;
    border-radius: var(--pt-radius);
    background: #fdf7f5;
    border: 1px solid var(--pt-border);
}

.hd-about-card-label {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .4px;
    color: var(--hd-700);
}

.hd-about-card-text {
    margin-top: 6px;
    font-size: 14px;
    line-height: 1.75;
    color: #3f3a38;
}

.hd-about-stats {
    margin-top: 28px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* 三项统计：竖线上下渐隐的品牌红分隔（方案 C，2026-11-06） */
.hd-about-stat {
    padding: 0 24px;
    position: relative;
}

.hd-about-stat:first-child {
    padding-left: 0;
}

.hd-about-stat:last-child {
    padding-right: 0;
}

.hd-about-stat + .hd-about-stat::before {
    content: "";
    position: absolute;
    left: 0;
    top: 2px;
    bottom: 2px;
    width: 1px;
    background: linear-gradient(180deg, rgba(168, 33, 26, 0), rgba(168, 33, 26, .28), rgba(168, 33, 26, 0));
}

.hd-about-stat-value {
    font-size: 26px;
    font-weight: 800;
    letter-spacing: -.5px;
    color: var(--hd-700);
}

.hd-about-stat-value span {
    margin-left: 2px;
    font-size: 14px;
    font-weight: 700;
}

.hd-about-stat-label {
    margin-top: 4px;
    font-size: 12.5px;
    color: var(--pt-muted, #6b7280);
}

.hd-about-visual { position: relative; }

.hd-about-visual .hd-about-image {
    width: 100%;
    border-radius: var(--pt-radius);
    display: block;
}

.hd-about-art {
    border-radius: var(--pt-radius);
    overflow: hidden;
    background: #f8f2f0;
    box-shadow: var(--hd-shadow-md);
}

.hd-about-art svg {
    display: block;
    width: 100%;
    height: auto;
}

@media (max-width: 980px) {
    .hd-about { grid-template-columns: 1fr; gap: 28px; }
}

@media (max-width: 640px) {
    .hd-about-cards { grid-template-columns: 1fr; }
    .hd-about-stats { grid-template-columns: 1fr 1fr; gap: 14px; }
    .hd-about-stat-value { font-size: 22px; }
}

/* =====================================================================
   十九、窄屏导航：纯图标按钮 + 左侧滑出抽屉；发展历程竖向时间轴
   ===================================================================== */

.pt-nav-toggle {
    display: none;
    width: 36px;
    height: 36px;
    margin-left: 8px;
    border-radius: var(--pt-radius);
    place-items: center;
    color: #fff;
    background: var(--hd-500);
    border: 1px solid rgba(255, 255, 255, .18);
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.pt-nav-toggle:hover {
    background: var(--hd-400);
    border-color: rgba(255, 255, 255, .28);
    box-shadow: 0 6px 18px rgba(210, 80, 47, .35);
}

.pt-nav-drawer,
.pt-nav-backdrop { display: none; }

@media (max-width: 980px) {
    /* 窄屏隐藏顶部横向菜单，改由抽屉承载 */
    .pt-nav { display: none; }

    /* 菜单按钮靠右对齐（auto 左边距吃掉剩余空间），不贴在公司名后面 */
    .pt-nav-toggle { display: grid; margin-left: auto; }

    /* 窄屏头部：收紧间距，品牌名超出省略，避免右侧「登录」被挤到换行 */
    .pt-header-inner { gap: 10px; padding: 0 16px; }

    .pt-brand { min-width: 0; gap: 8px; }

    .pt-brand-text {
        min-width: 0;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    /* 手机端登录统一放在抽屉里，头部不再显示登录按钮 */
    .pt-header .pt-btn.pt-btn-primary { display: none; }
    body.nav-open .pt-header .pt-btn.pt-btn-primary { display: none; }

    .pt-nav-backdrop.is-open {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 60;
        background: rgba(20, 8, 8, .45);
        backdrop-filter: blur(1px);
    }

    .pt-nav-drawer {
        display: flex;
        flex-direction: column;
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: 78vw;
        max-width: 320px;
        z-index: 61;
        padding: 18px 18px 22px;
        color: #fff;
        background: linear-gradient(160deg, var(--hd-950) 0%, var(--hd-800) 68%, var(--hd-700) 100%);
        box-shadow: 8px 0 28px rgba(20, 8, 8, .4);
        transform: translateX(-102%);
        transition: transform .24s ease;
        overflow-y: auto;
    }

    .pt-nav-drawer.is-open { transform: translateX(0); }

    /* 顶部极简：左侧 MENU 英文小标（字距拉开）+ 右上角圆形关闭按钮 */
    .pt-nav-drawer-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-bottom: 2px;
        border-bottom: none;
    }

    .pt-nav-drawer-title {
        font-size: 11px;
        font-weight: 600;
        line-height: 1;
        letter-spacing: .22em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, .48);
        padding-left: 2px;
    }

    .pt-nav-drawer-close {
        display: grid;
        place-items: center;
        width: 36px;
        height: 36px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, .18);
        background: rgba(255, 255, 255, .08);
        color: #fff;
        cursor: pointer;
        transition: background .16s ease, border-color .16s ease;
    }

    .pt-nav-drawer-close:hover {
        background: rgba(255, 255, 255, .16);
        border-color: rgba(255, 255, 255, .3);
    }

    /* 菜单项：左对齐、圆角悬停块（不用分割线，保持克制） */
    .pt-nav-drawer-links {
        display: flex;
        flex-direction: column;
        gap: 4px;
        margin-top: 10px;
    }

    .pt-nav-drawer-links a {
        display: block;
        padding: 12px 12px;
        border-radius: var(--pt-radius);
        font-size: 15px;
        font-weight: 600;
        text-align: left;
        color: rgba(255, 255, 255, .94);
        text-decoration: none;
        border-bottom: none;
        transition: background .16s ease, color .16s ease;
    }

    .pt-nav-drawer-links a.pt-nav-drawer-link-active {
        color: #fff;
        background: rgba(255, 255, 255, .14);
    }

    .pt-nav-drawer-links a:active,
    .pt-nav-drawer-links a:hover {
        color: #fff;
        background: rgba(255, 255, 255, .1);
    }

    .pt-nav-drawer-login {
        margin-top: 18px;
        text-align: center;
        border-radius: 3px;
    }
}

/* 发展历程：窄屏改为竖向时间轴（左侧竖线 + 圆点，右侧内容） */
@media (max-width: 640px) {
    .hd-timeline {
        display: block;
        overflow: visible;
        gap: 0;
        padding-left: 0;
        margin-left: 0;
        -webkit-mask-image: none;
        mask-image: none;
    }

    .hd-timeline-item {
        display: grid;
        grid-template-columns: 64px 14px minmax(0, 1fr);
        column-gap: 12px;
        padding: 0 0 22px;
        position: relative;
    }

    .hd-timeline-item:last-child { padding-bottom: 0; }

    /* 竖线连贯：补齐条目 padding-bottom 造成的断口（2026-11-06） */
    .hd-timeline-item:last-child .hd-timeline-rail {
        width: 1px;
        height: 100%;
    }

    .hd-timeline-year {
        grid-column: 1;
        align-self: start;
        padding-top: 2px;
        font-size: 14px;
        text-align: right;
    }

    .hd-timeline-rail {
        grid-column: 2;
        width: 1px;
        height: calc(100% + 22px);
        margin: 0;
        background: var(--pt-border);
        position: relative;
        justify-self: center;
    }

    .hd-timeline-dot {
        left: -4px;
        top: 6px;
    }

    .hd-timeline-body { grid-column: 3; }
    .hd-timeline-body h4 { font-size: 15px; }
    .hd-timeline-body p { margin-top: 6px; }

    .hd-timeline-hint { display: none; }
}

/* =====================================================================
   详情页：标签行（.pt-tag）与标题、正文间距上下一致（2026-11-06）
   覆盖 theme.css（Tailwind 产物）中的 mt-3(12px) 默认值，统一为 16px
   ===================================================================== */
.pt-article-header .pt-article-meta { margin-top: 16px; }
.pt-article-header .pt-article-summary { margin-top: 16px; }

/* 列表分页：置于列表下方并水平居中；总数在按钮左侧同一行（2026-11-06） */
.news-page .pt-pager {
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 28px;
}

.news-page .pt-pager-items {
    justify-content: center;
}

/* 详情页：卡片边框与头部分割线淡化，与背景更融合（2026-11-06） */
.pt-article {
    border-color: #f4efec;
}

.pt-article-header {
    border-bottom-color: transparent;
    background-image: linear-gradient(90deg, rgba(168, 33, 26, .02), rgba(168, 33, 26, .13) 85%);
    background-repeat: no-repeat;
    background-size: 100% 1px;
    background-position: left bottom;
}


/* =====================================================================
   十九、留言反馈页（横幅 + 上浮表单卡，方案 D）
   ===================================================================== */

.hd-fb-banner {
    position: relative;
    height: 132px;
    border-radius: 6px;
    background: linear-gradient(120deg, rgba(168, 33, 26, .92), rgba(224, 101, 42, .86));
    display: flex;
    align-items: center;
    padding: 0 32px;
    color: #fff;
    overflow: hidden;
}

.hd-fb-banner-text h2 {
    margin: 0;
    font-size: 20px;
    font-weight: 800;
    letter-spacing: .2px;
    color: #fff;
}

.hd-fb-banner-text p {
    margin: 6px 0 0;
    font-size: 13px;
    color: rgba(255, 255, 255, .86);
}

.hd-fb-banner-art {
    position: absolute;
    right: 24px;
    bottom: -14px;
    width: 150px;
    height: 150px;
    opacity: .16;
}

.hd-fb-card {
    position: relative;
    max-width: 820px;
    margin: -40px auto 0;
    padding: 24px 26px 26px;
    background: #fff;
    border: 1px solid var(--pt-border);
    border-radius: 6px;
    box-shadow: 0 10px 26px rgba(16, 24, 40, .08);
}

.hd-fb-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 18px;
}

.hd-fb-chip {
    font-size: 13px;
    font-family: inherit;
    line-height: 1.2;
    padding: 7px 14px;
    border-radius: 4px;
    background: #f7f8fa;
    color: #4b5158;
    border: 1px solid transparent;
    cursor: pointer;
    transition: background .16s ease, color .16s ease, border-color .16s ease;
}

.hd-fb-chip:hover {
    background: #f1f2f5;
}

.hd-fb-chip:focus-visible {
    outline: 2px solid rgba(168, 33, 26, .35);
    outline-offset: 2px;
}

.hd-fb-chip-active {
    background: rgba(168, 33, 26, .08);
    color: var(--hd-700);
    font-weight: 600;
    border-color: rgba(168, 33, 26, .16);
}

.hd-fb-field + .hd-fb-field {
    margin-top: 16px;
}

.hd-fb-label {
    display: block;
    margin-bottom: 6px;
    font-size: 13px;
    color: var(--pt-muted, #646a73);
}

.hd-fb-req {
    color: var(--hd-600);
    margin-left: 2px;
}

.hd-fb-input,
.hd-fb-textarea {
    width: 100%;
    font-size: 14px;
    color: var(--pt-text);
    background: #f7f8fa;
    border: 1px solid transparent;
    border-radius: 4px;
    outline: none;
    font-family: inherit;
    transition: border-color .16s ease, background .16s ease;
}

.hd-fb-input {
    height: 40px;
    padding: 0 12px;
}

.hd-fb-textarea {
    min-height: 132px;
    padding: 10px 12px;
    resize: vertical;
}

.hd-fb-input::placeholder,
.hd-fb-textarea::placeholder {
    color: #a6abb3;
}

.hd-fb-input:focus,
.hd-fb-textarea:focus {
    background: #fff;
    border-color: rgba(168, 33, 26, .35);
}

.hd-fb-hint {
    margin: 6px 0 0;
    font-size: 12px;
    color: #9aa0a6;
}

.hd-fb-upload {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 76px;
    border: 1px dashed #dfe2e7;
    border-radius: 4px;
    background: #fbfbfc;
    color: var(--pt-muted, #646a73);
    font-size: 13px;
    text-align: center;
    padding: 0 16px;
}

.hd-fb-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 22px;
}

.hd-fb-foot .hd-fb-hint {
    margin: 0;
}

.hd-fb-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    padding: 0 22px;
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    background: var(--hd-600);
    border: 0;
    border-radius: 4px;
    cursor: pointer;
    transition: background .16s ease;
}

.hd-fb-submit:hover {
    background: var(--hd-700);
}

@media (max-width: 640px) {
    .hd-fb-banner {
        height: 116px;
        padding: 0 20px;
    }

    .hd-fb-banner-text h2 {
        font-size: 17px;
    }

    .hd-fb-banner-art {
        width: 110px;
        height: 110px;
        right: 10px;
    }

    .hd-fb-card {
        margin-top: -28px;
        padding: 20px 18px 22px;
    }

    .hd-fb-foot {
        flex-direction: column;
        align-items: stretch;
    }

    .hd-fb-submit {
        width: 100%;
    }
}

/* =====================================================================
   网站地图（/sitemap）：分组卡片 + 行式链接
   分割线左右抵到卡片边缘（行自己扛左右内边距），与全站列表一致
   ===================================================================== */
.hd-map-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    align-items: start;
}

/* 固定分组（主要页面）铺满一行，链接在卡片内三列排布 */
.hd-map-grid--static {
    grid-template-columns: minmax(0, 1fr);
}

.hd-map-card {
    background: var(--pt-surface);
    border: 1px solid var(--pt-border);
    border-radius: var(--pt-radius);
    padding: 18px 0 8px;
    box-shadow: var(--hd-shadow-sm);
}

.hd-map-card-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    padding: 0 22px 12px;
    border-bottom: 1px solid #f4efec;
}

.hd-map-card-head h2 {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    color: var(--pt-text);
    letter-spacing: .02em;
}

.hd-map-more {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 12.5px;
    color: var(--hd-600);
    white-space: nowrap;
    transition: gap .18s ease;
}

.hd-map-more:hover {
    gap: 7px;
}

.hd-map-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.hd-map-list li {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    padding: 9px 22px;
    border-bottom: 1px solid #f7f2ef;
}

.hd-map-list li:last-child {
    border-bottom: 0;
}

/* 三列网格模式：单元格一律不做分割线（否则每行出现断线，末行还会缺一段） */
.hd-map-list.hd-map-list--grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 6px 0 12px;
}

.hd-map-list.hd-map-list--grid li,
.hd-map-list.hd-map-list--grid li:last-child {
    padding: 8px 22px;
    border-bottom: 0;
}

.hd-map-list a {
    color: #3b2f2c;
    font-size: 14px;
    line-height: 1.6;
    transition: color .16s ease;
}

.hd-map-list a:hover {
    color: var(--hd-600);
}

.hd-map-meta {
    font-size: 12px;
    color: var(--pt-text-muted);
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.hd-map-subtitle {
    margin: 34px 0 14px;
    font-size: 16px;
    font-weight: 600;
    color: var(--pt-text);
    letter-spacing: .02em;
}

/* 解决方案卡片锚点 + 滚动避开吸顶头部 */
.hd-svc-card[id] {
    scroll-margin-top: 96px;
}

/* 产品功能（/features）：分类筛选 + 功能卡片 */
.hd-feat-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 24px;
}

.hd-feat-tab {
    display: inline-flex;
    align-items: center;
    height: 32px;
    padding: 0 14px;
    border-radius: var(--pt-radius);
    border: 1px solid var(--pt-border);
    background: var(--pt-surface);
    color: var(--pt-text-muted);
    font-size: 13.5px;
    transition: color .16s ease, border-color .16s ease, background .16s ease;
}

.hd-feat-tab:hover {
    color: var(--hd-600);
    border-color: #e3d3cd;
}

.hd-feat-tab.is-active {
    background: var(--hd-600);
    border-color: var(--hd-600);
    color: #fff;
}

.hd-feat-group + .hd-feat-group {
    margin-top: 40px;
}

.hd-feat-group-title {
    margin: 0 0 6px;
    font-size: 18px;
    font-weight: 700;
    color: var(--pt-text);
}

.hd-feat-group-desc {
    margin: 0 0 18px;
    font-size: 13.5px;
    color: var(--pt-text-muted);
}

.hd-feat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.hd-feat-card {
    display: flex;
    flex-direction: column;
    background: var(--pt-surface);
    border: 1px solid var(--pt-border);
    border-radius: var(--pt-radius);
    overflow: hidden;
    box-shadow: var(--hd-shadow-sm);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.hd-feat-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--hd-shadow-md);
    border-color: #e3d3cd;
}

.hd-feat-shot {
    display: block;
    aspect-ratio: 16 / 10;
    background: linear-gradient(135deg, rgba(168, 33, 26, .08), rgba(224, 122, 60, .12));
    overflow: hidden;
}

.hd-feat-shot img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.hd-feat-body {
    padding: 16px 18px 18px;
}

.hd-feat-body h3 {
    margin: 0;
    font-size: 15.5px;
    font-weight: 700;
    color: var(--pt-text);
}

.hd-feat-body p {
    margin: 8px 0 0;
    font-size: 13.5px;
    line-height: 1.75;
    color: var(--pt-text-muted);
}

.hd-feat-platform {
    display: inline-block;
    margin-bottom: 8px;
    padding: 1px 7px;
    font-size: 11.5px;
    border-radius: 2px;
    color: var(--hd-600);
    background: rgba(168, 33, 26, .08);
}

/* 功能详情页 */
.hd-feat-detail {
    background: var(--pt-surface);
    border: 1px solid var(--pt-border);
    border-radius: var(--pt-radius);
    padding: 28px 30px 30px;
}

.hd-feat-detail-shots {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 22px 0;
}

.hd-feat-detail-shots img {
    width: 100%;
    border-radius: var(--pt-radius);
    border: 1px solid var(--pt-border);
    display: block;
}

.hd-feat-back {
    margin: 24px 0 0;
}

@media (max-width: 960px) {
    .hd-feat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .hd-feat-grid,
    .hd-feat-detail-shots {
        grid-template-columns: minmax(0, 1fr);
    }

    .hd-feat-detail {
        padding: 20px 18px 22px;
    }
}

@media (max-width: 960px) {
    .hd-map-grid:not(.hd-map-grid--static) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hd-map-list.hd-map-list--grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .hd-map-grid,
    .hd-map-grid--static {
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
    }

    .hd-map-list.hd-map-list--grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .hd-map-card-head,
    .hd-map-list li,
    .hd-map-list.hd-map-list--grid li {
        padding-left: 16px;
        padding-right: 16px;
    }

    .hd-map-subtitle {
        margin-top: 26px;
    }
}
