@charset "utf-8";

:root {
  --hj-brown: #8f5c2a;
  --hj-brown-dk: #734e1f;
  --hj-brown-lt: #9a805c;
  --hj-beige: #c5ad94;
  --hj-beige-lt: #ded3c7;
  --hj-red: #a82328;
  --hj-red-dk: #920d14;
  --hj-gold: #816036;
  --hj-ink: #333;
  --hj-gray: #666;
  --hj-footer: #875f2e;
  --hj-paper: #f7f2ea;
  --hj-line: #e6ddd0;
  --hj-shade: 25, 25, 25;
  --hj-sans: "Microsoft YaHei", "PingFang SC", Arial, Helvetica, sans-serif;
  --hj-serif: "Songti SC", "STSong", "SimSun", "Noto Serif SC", serif;
  --hj-container: 1200px;
  --hj-gutter: 16px;
  --hj-head-h: 64px;
  --hj-image-hover-scale: 1.05;
  --hj-image-transition: .5s ease;

  --hj-fs-title: 32px;
  --hj-fs-feature: 18px;
  --hj-fs-item: 16px;
  --hj-fs-meta: 14px;
  --hj-rem: 16px;
  --hj-z: 1;
}

*, *::before, *::after { box-sizing: border-box; }
html { container: hj-page / inline-size; font-size: 16px; -webkit-text-size-adjust: 100%; scroll-padding-top: 76px; }
body {
  margin: 0;
  font-family: var(--hj-sans);
  font-size: var(--hj-rem);
  line-height: 1.7;
  color: var(--hj-ink);
  background: #fff;
}
h1, h2, h3, h4, p, ul, ol, figure { margin: 0; padding: 0; }
ul, ol { list-style: none; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
button, input { font: inherit; color: inherit; }
button { cursor: pointer; }
:focus-visible { outline: 2px solid var(--hj-red); outline-offset: 2px; }

.hj-sr {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.hj-skip {
  position: absolute; left: 16px; top: -60px; z-index: 200;
  padding: 10px 16px; background: var(--hj-brown-dk); color: #fff;
}
.hj-skip:focus { top: 8px; }

.hj-container {
  width: min(100% - var(--hj-gutter) * 2, var(--hj-container));
  margin-inline: auto;
}

.hj-header {
  position: relative;
  z-index: 60;
  overflow-x: clip;
  background: linear-gradient(180deg, #fff8f1 0%, #fbf2e9 100%);
}

.hj-header::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(50% + 100px);
  z-index: -1;
  aspect-ratio: 1339 / 240;
  background: url(../images/head-shanshui.jpg) center / 100% 100% no-repeat;
  transform: translateX(-73%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 30%, #000 86%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 30%, #000 86%, transparent 100%);
  pointer-events: none;
}
@container hj-page (min-width: 1263px) {
  .hj-header { --hj-gate-off: 360px; }
  .hj-header::before {
    left: calc(50% + min(50% - var(--hj-gutter), var(--hj-container) / 2) - var(--hj-gate-off));
    transform: translateX(-84.5%);
  }
}
@container hj-page (min-width: 1903px) {
  .hj-header { --hj-gate-off: 400px; }
}

.hj-header::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    url(../images/head-zhushi-r.png) right bottom / auto 100% no-repeat,
    url(../images/head-zhushi-l.png) left bottom / auto 100% no-repeat;
  opacity: .4;
  pointer-events: none;
}

@container hj-page (max-width: 1422px) {
  .hj-header::after { background: url(../images/head-zhushi-r.png) right bottom / auto 100% no-repeat; }
}
.hj-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  height: 140px;
}

.hj-logo {
  display: flex; align-items: center;
  flex: 0 1 580px; width: 580px; min-width: 0;
}
.hj-logo__image { display: block; width: 100%; height: auto; }
.hj-header__tools { display: flex; align-items: center; gap: 12px; }

.hj-search {
  display: flex;
  align-items: stretch;
  width: 280px;
  height: 42px;
  background: rgba(255, 255, 255, .78);
  border: 1px solid var(--hj-beige);
}
.hj-search__input {
  flex: 1;
  min-width: 0;
  padding: 0 14px;
  border: 0;
  background: transparent;
  font-size: calc(.9375 * var(--hj-rem));
}
.hj-search__input::placeholder { color: #999; }
.hj-search__input:focus { outline: none; }
.hj-search:focus-within { border-color: var(--hj-brown); box-shadow: 0 0 0 2px rgba(143, 92, 42, .18); }
.hj-search__btn {
  display: grid;
  place-items: center;
  width: 48px;
  border: 0;
  background: var(--hj-brown);
  color: #fff;
  transition: background .2s;
}
.hj-search__btn:is(:hover, :focus-visible) { background: var(--hj-brown-dk); }

.hj-menu-btn { display: none; }

.hj-nav {
  position: sticky;
  top: 0;
  z-index: 50;
  background: var(--hj-brown);
  box-shadow: 0 2px 10px rgba(var(--hj-shade), .12);
}
.hj-nav__list { display: flex; justify-content: space-between; }
.hj-nav__item { position: relative; }
.hj-nav__link {
  position: relative;
  display: flex;
  align-items: center;
  height: 60px;
  padding: 0 18px;
  color: #fff;
  font-size: calc(1.125 * var(--hj-rem));
  font-weight: 700;
  letter-spacing: .04em;
  white-space: nowrap;
  transition: background .2s;
}
.hj-nav__link::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 0;
  height: 3px;
  background: #e9d4ae;
  transform: translateX(-50%);
  transition: width .25s;
}
.hj-nav__item:hover > .hj-nav__link,
.hj-nav__item:focus-within > .hj-nav__link,
.hj-nav__item.is-current > .hj-nav__link { background: var(--hj-brown-dk); }
.hj-nav__item:hover > .hj-nav__link::after,
.hj-nav__item:focus-within > .hj-nav__link::after,
.hj-nav__item.is-current > .hj-nav__link::after { width: calc(100% - 24px); }
.hj-nav__link:focus-visible { outline-color: #fff; outline-offset: -4px; }
.hj-nav__toggle { display: none; }

.hj-nav__sub {
  position: absolute;
  top: 100%;
  left: 50%;
  min-width: 190px;
  padding: 10px 0;
  background: #fff;
  box-shadow: 0 10px 24px rgba(var(--hj-shade), .16);
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 8px);
  transition: opacity .2s, transform .2s, visibility .2s;
}
.hj-nav__item:hover > .hj-nav__sub,
.hj-nav__item:focus-within > .hj-nav__sub {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}
.hj-nav__sub a {
  display: block;
  padding: 9px 24px;
  font-size: calc(.9375 * var(--hj-rem));
  line-height: 1.5;
  white-space: nowrap;
  text-align: center;
  color: var(--hj-ink);
  transition: background .2s, color .2s;
}
.hj-nav__sub a:hover,
.hj-nav__sub a:focus-visible { background: #f5eee4; color: var(--hj-brown-dk); }

.hj-banner {
  position: relative;
  height: max(360px, 28vw / var(--hj-z));
  overflow: hidden;
  background: #e9e2d6;
}
.hj-banner__track { position: absolute; inset: 0; }
.hj-banner__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity .8s ease, visibility .8s;
}
.hj-banner__slide.is-active { opacity: 1; visibility: visible; z-index: 1; }
.hj-banner__link, .hj-banner__link picture { display: block; width: 100%; height: 100%; }
.hj-banner__img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hj-banner__controls { display: none; }
.hj-js .hj-banner__controls {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 18px;
  z-index: 2;
  pointer-events: none;
}
.hj-banner__controls-inner { display: flex; align-items: center; justify-content: center; gap: 6px; pointer-events: auto; }
.hj-banner__dots { display: flex; align-items: center; }
.hj-banner__dot {
  position: relative;
  width: 32px;
  height: 44px;
  padding: 0;
  border: 0;
  background: none;
}
.hj-banner__dot::before {
  content: "";
  position: absolute;
  left: 50%; top: 50%;
  width: 18px; height: 12.43px;
  background: url(../images/hb-logo1.png) center / contain no-repeat;
  opacity: .5;
  transform: translate(-50%, -50%);
  transition: width .3s, height .3s, opacity .3s;
}
.hj-banner__dot[aria-current="true"]::before { width: 26px; height: 17.95px; opacity: 1; }
.hj-banner__btn {
  position: relative;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: none;
}
.hj-banner__btn::after {
  content: "";
  position: absolute;
  inset: 6px;
  border: 1px solid rgba(255, 255, 255, .6);
  border-radius: 50%;
  background: rgba(var(--hj-shade), .22);
  transition: background .2s;
}
.hj-banner__btn:is(:hover, :focus-visible)::after { background: rgba(var(--hj-shade), .45); }
.hj-banner__btn::before {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  border: solid #fff;
  border-width: 2px 2px 0 0;
}
.hj-banner__prev::before { transform: translate(-30%, -50%) rotate(-135deg); }
.hj-banner__next::before { transform: translate(-70%, -50%) rotate(45deg); }
.hj-banner__btn:focus-visible, .hj-banner__dot:focus-visible { outline-color: #fff; }

.hj-section { padding: 72px 0; }

.hj-section--news { padding-bottom: 48px; }
.hj-section--fiber { padding-top: 48px; }
.hj-section--paper {
  background: url(../images/paper.svg), var(--hj-paper);
}

.hj-section--fiber {
  background:
    linear-gradient(rgba(247, 242, 234, .5), rgba(247, 242, 234, .5)),
    url(../images/paper-fiber.jpg) left top / 779px auto repeat,
    #ecdfc5;
}

.hj-section--fiber .hj-sec-head { border-bottom-color: rgba(143, 92, 42, .4); }
.hj-section--fiber .hj-notice__item,
.hj-section--fiber .hj-talk__item { border-bottom: 1px solid rgba(143, 92, 42, .3); }
.hj-section--fiber .hj-talk__item--feature .hj-talk__title { border-bottom-color: rgba(143, 92, 42, .3); }
.hj-sec-head {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 28px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--hj-line);
}
.hj-sec-head::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 64px;
  height: 3px;
  background: var(--hj-brown);
}
.hj-sec-title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  font-family: var(--hj-sans);
  font-size: var(--hj-fs-title);
  font-weight: 700;
  line-height: 1.2;
  color: var(--hj-brown);
}
.hj-sec-title::before {
  content: "";
  flex: none;
  width: 1.25em;
  height: .875em;
  margin-right: 12px;
  background: url(../images/hb-logo1.png) center / contain no-repeat;
}
.hj-sec-title__en {
  margin-left: 12px;
  font-family: var(--hj-sans);
  font-size: var(--hj-fs-meta);
  font-weight: 400;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--hj-brown-lt);
}
.hj-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 38px;
  padding: 0 14px 0 16px;
  border: 1px solid var(--hj-brown);
  font-size: calc(.9375 * var(--hj-rem));
  line-height: 1;
  color: var(--hj-brown-dk);
  white-space: nowrap;
  transition: color .2s, background .2s;
}
.hj-more::after {
  content: "";
  width: 7px;
  height: 7px;
  margin-left: -2px;
  border: solid currentColor;
  border-width: 1.5px 1.5px 0 0;
  transform: rotate(45deg);
}
.hj-more:is(:hover, :focus-visible) { background: var(--hj-brown); color: #fff; }

.hj-list__item { border-bottom: 1px solid var(--hj-line); }
.hj-list__link {
  display: flex;
  align-items: center;
  gap: 20px;
  min-height: 52px;
  padding: 10px 0;
}
.hj-list__title {
  position: relative;
  flex: 1;
  min-width: 0;
  padding-left: 20px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: var(--hj-fs-item);
  transition: color .2s;
}
.hj-list__title::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 50%;
  width: 9px;
  height: 9px;
  padding: 1.5px;
  border: 1.5px solid var(--hj-brown-lt);
  background: var(--hj-red);
  background-clip: content-box;
  transform: translateY(-50%) rotate(45deg);
  transition: background .2s, border-color .2s;
}
.hj-list__date { flex: none; font-size: var(--hj-fs-meta); color: #999; font-variant-numeric: tabular-nums; }
.hj-list__link:is(:hover, :focus-visible) .hj-list__title { color: var(--hj-brown); }
.hj-list__link:is(:hover, :focus-visible) .hj-list__title::before { border-color: var(--hj-red); }

.hj-news__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
  gap: 24px;
}
.hj-nslide {
  position: relative;
  min-height: 420px;
  overflow: hidden;
  background: var(--hj-beige-lt);
}
.hj-nslide__track { position: absolute; inset: 0; }
.hj-nslide__item {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity .6s ease, visibility .6s;
}
.hj-nslide__item.is-active { opacity: 1; visibility: visible; z-index: 1; }
.hj-nslide__link { position: relative; display: block; height: 100%; color: #fff; }
.hj-nslide__img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--hj-image-transition); }
.hj-nslide__text {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  padding: 72px 24px 48px;
  background: linear-gradient(180deg, rgba(var(--hj-shade), 0) 0%, rgba(var(--hj-shade), .5) 45%, rgba(var(--hj-shade), .78) 100%);
}
.hj-nslide__date {
  padding: 2px 22px 2px 12px;
  background: var(--hj-brown);
  font-size: var(--hj-fs-meta);
  line-height: 1.6;
  font-variant-numeric: tabular-nums;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 50%, calc(100% - 10px) 100%, 0 100%);
}
.hj-nslide__title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: var(--hj-fs-feature);
  line-height: 1.55;
  text-shadow: 0 1px 2px rgba(var(--hj-shade), .4);
}
.hj-nslide__link:is(:hover, :focus-visible) .hj-nslide__img { transform: scale(var(--hj-image-hover-scale)); }
.hj-nslide__dots { display: none; }
.hj-js .hj-nslide__dots {
  position: absolute;
  right: 14px;
  bottom: 6px;
  z-index: 2;
  display: flex;
}
.hj-nslide__dot {
  position: relative;
  width: 28px;
  height: 36px;
  padding: 0;
  border: 0;
  background: none;
}
.hj-nslide__dot::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  border: 1.5px solid #fff;
  border-radius: 50%;
  background: #fff;
  transform: translate(-50%, -50%);
  transition: width .25s, height .25s, background .25s;
}
.hj-nslide__dot[aria-current="true"]::before { width: 16px; height: 16px; background: transparent; }
.hj-nslide__dot:focus-visible { outline-color: #fff; outline-offset: -4px; }

.hj-news__panel {
  display: flex;
  flex-direction: column;
  container-type: inline-size;
  padding: 6px 24px;
  background: #fff;
  border-top: 3px solid var(--hj-brown);
  box-shadow: 0 6px 18px rgba(var(--hj-shade), .05);
}
.hj-list--panel { flex: 1; display: flex; flex-direction: column; }
.hj-list--panel .hj-list__item { flex: 1; display: flex; border-bottom: 1px solid var(--hj-line); }
.hj-list--panel .hj-list__link { flex: 1; min-width: 0; }
.hj-list--panel .hj-list__item:last-child { border-bottom: 0; }

@container (max-width: 459px) {
  .hj-list--panel .hj-list__link { flex-direction: column; align-items: stretch; justify-content: center; gap: 2px; padding: 12px 0; }
  .hj-list--panel .hj-list__title::before { top: .85em; }
  .hj-list--panel .hj-list__date { padding-left: 20px; }
}

.hj-info-row {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: 56px 48px;
}
.hj-notice { display: flex; flex-direction: column; }
.hj-notice__list { flex: 1; display: flex; flex-direction: column; margin-top: -6px; }
.hj-notice__item { flex: 1 0 auto; display: flex; border-bottom: 1px solid var(--hj-line); }
.hj-notice__link {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 12px 0;
}

.hj-notice__date {
  flex: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 72px;
  padding-right: 4px;
  border-right: 1px solid rgba(143, 92, 42, .3);
  line-height: 1.15;
  font-variant-numeric: tabular-nums;
}
.hj-notice__day {
  font-family: var(--hj-sans);
  font-size: calc(1.75 * var(--hj-rem));
  font-weight: 700;
  color: var(--hj-brown);
  transition: color .2s;
}
.hj-notice__ym { margin-top: 4px; font-size: calc(.75 * var(--hj-rem)); letter-spacing: .02em; color: var(--hj-brown-lt); }
.hj-notice__title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: var(--hj-fs-item);
  line-height: 1.6;
  transition: color .2s;
}
.hj-notice__link:is(:hover, :focus-visible) .hj-notice__day { color: var(--hj-red); }
.hj-notice__link:is(:hover, :focus-visible) .hj-notice__title { color: var(--hj-brown); }

.hj-scenery {
  background:
    linear-gradient(180deg, #f7f3f0 0, rgba(247, 243, 240, 0) 160px),
    url(../images/bg1.jpg) center calc(100% + max(24px, 1vw / var(--hj-z))) / cover no-repeat,
    #f7f3f0;
}

.hj-scenery .hj-sec-head { border-bottom-color: rgba(143, 92, 42, .4); }
.hj-scenery .hj-list__item { border-bottom-color: rgba(143, 92, 42, .3); }

.hj-res-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 56px 48px;
}
.hj-results, .hj-quick__block { display: flex; flex-direction: column; }
.hj-results__list { flex: 1; display: flex; flex-direction: column; margin-top: -6px; }
.hj-results__list .hj-list__item { flex: 1 0 auto; display: flex; }
.hj-results__list .hj-list__link { flex: 1; min-width: 0; }

.hj-talk { display: flex; flex-direction: column; }
.hj-talk__list { flex: 1; display: flex; flex-direction: column; margin-top: -6px; }
.hj-talk__item { flex: 1 1 0; display: flex; border-bottom: 1px solid var(--hj-line); }
.hj-talk__link {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 14px 0;
}
.hj-talk__body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.hj-talk__title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: var(--hj-fs-item);
  line-height: 1.6;
  transition: color .2s;
}
.hj-talk__metas { display: flex; flex-wrap: wrap; gap: 2px 20px; font-size: var(--hj-fs-meta); line-height: 1.6; color: var(--hj-gray); }
.hj-talk__meta { display: inline-flex; align-items: center; gap: 5px; min-width: 0; }
.hj-talk__meta svg { flex: none; color: var(--hj-brown-lt); }

.hj-talk__item--feature { flex-grow: 2; }
.hj-talk__item--feature .hj-talk__link { align-items: stretch; gap: 24px; padding: 6px 0 18px; }
.hj-talk__media {
  position: relative;
  flex: none;
  width: 40%;
  min-height: 168px;
  overflow: hidden;
  background: var(--hj-beige-lt);
}
.hj-talk__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform var(--hj-image-transition); }
.hj-talk__item--feature .hj-talk__body { justify-content: center; gap: 0; }
.hj-talk__item--feature .hj-talk__title {
  padding-bottom: 12px;
  border-bottom: 1px solid var(--hj-line);
  font-size: var(--hj-fs-feature);
  font-weight: 700;
  line-height: 1.5;
}
.hj-talk__item--feature .hj-talk__metas { flex-direction: column; gap: 4px; margin-top: 12px; }
.hj-talk__item--feature .hj-talk__meta { align-items: flex-start; }
.hj-talk__item--feature .hj-talk__meta svg { margin-top: .3em; }
.hj-talk__k { flex: none; color: var(--hj-brown-lt); }
.hj-talk__link:is(:hover, :focus-visible) .hj-talk__img { transform: scale(var(--hj-image-hover-scale)); }
.hj-talk__link:is(:hover, :focus-visible) .hj-talk__title { color: var(--hj-brown); }

.hj-quick { position: relative; isolation: isolate; background: transparent; }

.hj-quick::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: url(../images/quick-shanshui.png) center bottom / max(100%, 1440px) auto no-repeat;
  opacity: .2;
  -webkit-mask-image: linear-gradient(180deg, transparent 0, transparent 12%, #000 68%);
  mask-image: linear-gradient(180deg, transparent 0, transparent 12%, #000 68%);
  pointer-events: none;
}
.hj-quick__grid {
  flex: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-auto-rows: 1fr;
  gap: 14px;
}

.hj-entry {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 110px;
  overflow: hidden;
  background: var(--hj-beige-lt);
  color: #fff;
}
.hj-entry__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom;
  transition: transform var(--hj-image-transition);
}

.hj-entry--database .hj-entry__img { object-position: center 48%; }

.hj-entry--catalogue .hj-entry__img { object-position: center 52%; }

.hj-entry--map { background: #ae8d5a; }
.hj-entry--map .hj-entry__img {
  object-fit: contain;
  object-position: right center;
}
.hj-entry::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, rgba(var(--hj-shade), .82) 0%, rgba(var(--hj-shade), .6) 45%, rgba(var(--hj-shade), .1) 85%);
}
.hj-entry__body {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 18px;
  width: 100%;
  padding: 20px 24px;
}
.hj-entry__title, .hj-entry__desc { grid-column: 1; }
.hj-entry__title {
  font-family: var(--hj-sans);
  font-size: calc(1.25 * var(--hj-rem));
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: .04em;
}
.hj-entry__desc {
  display: -webkit-box;
  margin-top: 6px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: var(--hj-fs-meta);
  line-height: 1.7;
  color: rgba(255, 255, 255, .85);
}
.hj-entry__go {
  display: inline-flex;
  grid-column: 2;
  grid-row: 1 / 3;
  align-items: center;
  justify-self: end;
  gap: 8px;
  height: 34px;
  margin-top: 0;
  white-space: nowrap;
  padding: 0 14px;
  border: 1px solid rgba(255, 255, 255, .85);
  background: rgba(var(--hj-shade), .42);
  font-size: calc(.9375 * var(--hj-rem));
  line-height: 1;
  transition: background .2s, color .2s, border-color .2s;
}
.hj-entry__ext { flex: none; }
.hj-entry__go::after {
  content: "";
  width: 7px;
  height: 7px;
  margin-left: -2px;
  border: solid currentColor;
  border-width: 1.5px 1.5px 0 0;
  transform: rotate(45deg);
}
.hj-entry:is(:hover, :focus-visible) .hj-entry__img { transform: scale(var(--hj-image-hover-scale)); }
.hj-entry:is(:hover, :focus-visible) .hj-entry__go { background: var(--hj-brown); border-color: var(--hj-brown); }
.hj-entry:focus-visible { outline-offset: 3px; }

.hj-links__inner {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 20px 0 16px;
  border-bottom: 1px solid rgba(255, 255, 255, .16);
}
.hj-links__title {
  flex: none;
  padding-right: 24px;
  border-right: 1px solid rgba(255, 255, 255, .28);
  font-family: var(--hj-sans);
  font-size: calc(.9375 * var(--hj-rem));
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .12em;
  color: #ecd9b8;
}
.hj-links__list { display: flex; flex-wrap: wrap; align-items: center; }
.hj-links__list li { display: flex; align-items: center; }
.hj-links__list li + li::before {
  content: "";
  width: 1px;
  height: 12px;
  margin: 0 18px;
  background: rgba(255, 255, 255, .22);
}
.hj-links__list a {
  display: flex;
  align-items: center;
  min-height: 44px;
  font-size: calc(.9375 * var(--hj-rem));
  color: rgba(255, 255, 255, .82);
  transition: color .2s;
}
.hj-links__list a:is(:hover, :focus-visible) { color: #fff; text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .5); text-underline-offset: 4px; }

.hj-footer__main {
  position: relative;
  padding: 5px 0 0;
  background: var(--hj-footer);
  color: rgba(255, 255, 255, .9);
}
.hj-footer__main::before {
  content: "";
  display: block;
  height: 24px;
  background: url(../images/huiwen.svg) left center / 24px 24px repeat-x;
  opacity: .55;
}
.hj-footer__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 32px 0 44px;
}
.hj-footer__info { flex: 1 1 480px; min-width: 0; }
.hj-footer__name {
  font-family: var(--hj-sans);
  font-size: calc(1.375 * var(--hj-rem));
  font-weight: 700;
  color: #fff;
  letter-spacing: .08em;
}
.hj-footer__contact {
  display: grid;
  grid-template-columns: repeat(2, auto);
  justify-content: start;
  gap: 6px 48px;
  margin-top: 14px;
  font-size: calc(.9375 * var(--hj-rem));
}
.hj-footer__label { margin-right: 4px; color: #ecd9b8; }
.hj-footer__contact a { text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .35); text-underline-offset: 3px; transition: text-decoration-color .2s; }
.hj-footer__contact a:is(:hover, :focus-visible) { text-decoration-color: #fff; }
.hj-footer a:focus-visible { outline-color: #fff; }
.hj-footer__qr { flex: none; display: flex; align-items: center; gap: 4px; }
.hj-footer__code-wrap { flex: none; display: block; background: #efe5d3; isolation: isolate; }
.hj-footer__code {
  display: block;
  width: 100px;
  height: 100px;
  mix-blend-mode: multiply;
}
.hj-footer__mark { width: 304px; height: 100px; }
.hj-footer__bar {
  padding: 14px 0;
  background: #7a5428;
  font-size: calc(.8125 * var(--hj-rem));
  color: rgba(255, 255, 255, .72);
  text-align: center;
}

@media (min-width: 768px) {
  @container hj-page (max-width: 1262px) {
    body { --hj-gutter: 32px; }
    .hj-header__inner { height: 120px; }
    .hj-logo { flex-basis: 472px; width: 472px; }
    .hj-search { width: 220px; }
    .hj-nav__link { height: 54px; padding: 0 10px; font-size: var(--hj-rem); letter-spacing: 0; }
    .hj-info-row { column-gap: 40px; }
    .hj-res-row { column-gap: 40px; }
    .hj-entry__desc { -webkit-line-clamp: 3; }
    .hj-nslide { min-height: 360px; }
    .hj-links__inner { align-items: flex-start; }
    .hj-links__title { display: flex; align-items: center; min-height: 44px; }
    .hj-footer__inner { flex-wrap: wrap; row-gap: 28px; }
  }
  @container hj-page (max-width: 1006px) {
    .hj-banner { height: auto; aspect-ratio: 1920 / 700; }
    .hj-info-row { grid-template-columns: minmax(0, 1fr); }
    .hj-res-row { grid-template-columns: minmax(0, 1fr); }
  }
}
@container hj-page (min-width: 1007px) and (max-width: 1262px) {
  .hj-nav__link { padding: 0 16px; font-size: calc(1.0625 * var(--hj-rem)); }
}

@container hj-page (min-width: 1583px) {
  body { --hj-container: 1360px; --hj-cq: 1600; }
  .hj-nav__link { padding: 0 24px; }
}

@container hj-page (min-width: 1903px) {
  body { --hj-container: 1600px; --hj-fs-title: 36px; --hj-fs-feature: 20px; --hj-fs-item: 18px; --hj-fs-meta: 16px; --hj-rem: 17px; --hj-cq: 1920; }
  .hj-header__inner { height: 156px; }
  .hj-logo { flex-basis: 600px; width: 600px; }
  .hj-search { width: 320px; height: 46px; }
  .hj-nav__link { height: 66px; padding: 0 28px; }
  .hj-section { padding: 88px 0; }
  .hj-section--news { padding-bottom: 56px; }
  .hj-section--fiber { padding-top: 56px; }
  .hj-nslide { min-height: 500px; }
}

@container hj-page (min-width: 2543px) {
  body { --hj-container: 1760px; --hj-fs-title: 40px; --hj-fs-feature: 22px; --hj-fs-item: 20px; --hj-fs-meta: 18px; --hj-rem: 18px; --hj-cq: 2560; }
  .hj-header__inner { height: 172px; }
  .hj-logo { flex-basis: 650px; width: 650px; }
  .hj-nav__link { height: 72px; }
  .hj-footer__code { width: 120px; height: 120px; }
  .hj-footer__mark { width: 365px; height: 120px; }

  .hj-scenery { background-position: 0 0, center calc(-49vw / var(--hj-z)); }

  .hj-quick::before {
    inset: auto auto 0 50%;
    height: 132%;
    aspect-ratio: 1920 / 690;
    background-size: 100% 100%;
    transform: translateX(-50%);
    -webkit-mask-image:
      linear-gradient(180deg, transparent 0, transparent 33%, #000 76%),
      linear-gradient(90deg, transparent 0, #000 5%, #000 95%, transparent 100%);
    mask-image:
      linear-gradient(180deg, transparent 0, transparent 33%, #000 76%),
      linear-gradient(90deg, transparent 0, #000 5%, #000 95%, transparent 100%);
    -webkit-mask-composite: source-in;
    mask-composite: intersect;
  }
}

@media (max-width: 767px) {
  html { scroll-padding-top: var(--hj-head-h); }
  .hj-header { position: sticky; top: 0; box-shadow: 0 1px 0 var(--hj-line); }
  .hj-header__inner { height: var(--hj-head-h); gap: 8px; }
  :root { --hj-head-h: 88px; }
  .hj-logo { flex-basis: 280px; width: 280px; }
  .hj-header__tools { gap: 4px; }

  .hj-search { width: 150px; height: 40px; }
  .hj-js .hj-search { width: 44px; height: 44px; border: 0; background: none; }
  .hj-js .hj-search__input { display: none; }
  .hj-js .hj-search__btn { width: 44px; background: none; color: var(--hj-brown); }
  .hj-js .hj-search.is-open {
    position: absolute;
    left: var(--hj-gutter);
    right: calc(var(--hj-gutter) + 48px);
    top: calc((var(--hj-head-h) - 44px) / 2);
    width: auto;
    background: #fff;
    border: 1px solid var(--hj-brown);
  }
  .hj-js .hj-search.is-open .hj-search__input { display: block; }
  .hj-header__inner:has(.hj-search.is-open) .hj-logo { visibility: hidden; }

  .hj-js .hj-menu-btn {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 0;
    background: var(--hj-brown);
  }
  .hj-menu-btn__bar,
  .hj-menu-btn__bar::before,
  .hj-menu-btn__bar::after {
    display: block;
    width: 20px;
    height: 2px;
    background: #fff;
    transition: transform .25s, background .25s;
  }
  .hj-menu-btn__bar { position: relative; }
  .hj-menu-btn__bar::before, .hj-menu-btn__bar::after { content: ""; position: absolute; left: 0; }
  .hj-menu-btn__bar::before { top: -6px; }
  .hj-menu-btn__bar::after { top: 6px; }
  .hj-menu-btn[aria-expanded="true"] .hj-menu-btn__bar { background: transparent; }
  .hj-menu-btn[aria-expanded="true"] .hj-menu-btn__bar::before { transform: translateY(6px) rotate(45deg); }
  .hj-menu-btn[aria-expanded="true"] .hj-menu-btn__bar::after { transform: translateY(-6px) rotate(-45deg); }

  .hj-nav { position: static; }
  .hj-js .hj-nav {
    position: fixed;
    top: var(--hj-head-h);
    left: 0;
    right: 0;
    bottom: 0;
    display: none;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .hj-js .hj-nav.is-open { display: block; }
  .hj-nav__list { flex-direction: column; padding: 8px 0 32px; }
  .hj-nav__item { display: flex; flex-wrap: wrap; border-bottom: 1px solid rgba(255, 255, 255, .14); }
  .hj-nav__link { flex: 1; height: 52px; padding: 0 4px; font-size: calc(1.0625 * var(--hj-rem)); }
  .hj-nav__link::after { display: none; }
  .hj-nav__item:hover > .hj-nav__link,
  .hj-nav__item:focus-within > .hj-nav__link,
  .hj-nav__item.is-current > .hj-nav__link { background: none; }
  .hj-nav__item.is-current > .hj-nav__link { color: #f3dfbb; }
  .hj-js .hj-nav__toggle {
    position: relative;
    display: block;
    width: 52px;
    height: 52px;
    border: 0;
    background: none;
  }
  .hj-nav__toggle::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 9px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: translate(-50%, -70%) rotate(45deg);
    transition: transform .25s;
  }
  .hj-nav__toggle[aria-expanded="true"]::before { transform: translate(-50%, -30%) rotate(-135deg); }
  .hj-nav__toggle:focus-visible { outline-color: #fff; outline-offset: -4px; }
  .hj-nav__sub,
  .hj-nav__item:hover > .hj-nav__sub,
  .hj-nav__item:focus-within > .hj-nav__sub {
    position: static;
    flex-basis: 100%;
    min-width: 0;
    padding: 4px 0 10px;
    background: rgba(var(--hj-shade), .12);
    border-top: 0;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: none;
  }
  .hj-js .hj-nav__sub { display: none; }
  .hj-js .hj-nav__sub.is-open { display: block; }
  .hj-nav__sub a { padding: 10px 20px; text-align: left; color: rgba(255, 255, 255, .92); }
  .hj-nav__sub a:hover, .hj-nav__sub a:focus-visible { background: rgba(255, 255, 255, .08); color: #fff; }
  .hj-nav-open { overflow: hidden; }

  .hj-banner { height: auto; aspect-ratio: 1920 / 700; }
  .hj-js .hj-banner__controls { bottom: 0; }
  .hj-banner__dot { width: 26px; height: 36px; }
  .hj-banner__dot::before { width: 14px; height: 9.67px; }
  .hj-banner__dot[aria-current="true"]::before { width: 20px; height: 13.8px; }
  .hj-banner__prev, .hj-banner__next { display: none; }

  .hj-section { padding: 44px 0; }
  .hj-section--news { padding-bottom: 32px; }
  .hj-section--fiber { padding-top: 32px; }
  .hj-sec-head { align-items: center; margin-bottom: 20px; }
  .hj-more { height: 34px; padding: 0 12px 0 14px; font-size: calc(.875 * var(--hj-rem)); }
  :root { --hj-fs-title: 18px; --hj-fs-feature: 17px; --hj-fs-item: 15px; --hj-fs-meta: 13px; }
  .hj-sec-title__en { display: none; }

  .hj-info-row { grid-template-columns: minmax(0, 1fr); gap: 44px; }
  .hj-talk__link { gap: 14px; padding: 12px 0; }
  .hj-talk__metas { gap: 0 14px; }
  .hj-talk__item--feature .hj-talk__link { flex-direction: column; gap: 14px; padding: 4px 0 16px; }
  .hj-talk__media { width: 100%; min-height: 0; aspect-ratio: 16 / 9; }
  .hj-talk__item--feature .hj-talk__title { padding-bottom: 10px; font-size: var(--hj-fs-item); }
  .hj-talk__item--feature .hj-talk__metas { margin-top: 10px; }
  .hj-news__body { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .hj-nslide { min-height: 0; aspect-ratio: 4 / 3; }
  .hj-nslide__text { gap: 8px; padding: 56px 16px 36px; }
  .hj-js .hj-nslide__dots { right: 8px; bottom: 0; }
  .hj-news__panel { padding: 4px 16px; }
  .hj-list__link { gap: 12px; }
  .hj-list__date { font-size: calc(.8125 * var(--hj-rem)); }

  .hj-res-row { grid-template-columns: minmax(0, 1fr); gap: 44px; }

  .hj-quick__grid { gap: 16px; }
  .hj-entry { min-height: 160px; }
  .hj-entry__body { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 18px; }
  .hj-entry__desc { -webkit-line-clamp: 3; }
  .hj-entry__title { font-size: calc(1.125 * var(--hj-rem)); }
  .hj-entry__go { grid-column: 1; grid-row: auto; justify-self: start; height: 34px; margin-top: 12px; padding: 0 12px; font-size: calc(.875 * var(--hj-rem)); }

  .hj-links__inner { flex-direction: column; align-items: stretch; gap: 6px; padding: 16px 0 10px; }
  .hj-links__title { padding-right: 0; border-right: 0; }
  .hj-links__list { gap: 0 20px; }
  .hj-links__list li + li::before { display: none; }
  .hj-links__list a { min-height: 40px; font-size: calc(.875 * var(--hj-rem)); }

  .hj-footer__inner { flex-direction: column; align-items: center; gap: 28px; padding: 28px 0 32px; text-align: center; }
  .hj-footer__info { flex: none; width: 100%; }
  .hj-footer__contact { grid-template-columns: minmax(0, 1fr); justify-content: center; }
  .hj-footer__code { width: 80px; height: 80px; }
  .hj-footer__qr { max-width: 100%; justify-content: center; }
  .hj-footer__mark { flex: 0 1 243px; min-width: 0; width: 243px; height: auto; aspect-ratio: 304 / 100; }
}

.hj-pagebanner {
  position: relative;
  height: calc(20.833333vw / var(--hj-z));
  overflow: hidden;
  background: #f7f2ea;
}
.hj-pagebanner__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.hj-inner {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  align-items: start;
  gap: 40px;
  padding: 36px 0 80px;
}
/* 提高全宽布局优先级，避免后续分档规则将内容区限制在侧栏列。 */
.hj-inner.hj-inner--full { grid-template-columns: minmax(0, 1fr); }

.hj-side {
  position: sticky;
  top: 84px;
  z-index: 2;
  margin-top: -100px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(var(--hj-shade), .08);
}
.hj-side__head {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 22px 20px 20px;
  background: var(--hj-brown);
  color: #fff;
  text-align: center;
}

.hj-side__head::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: url(../images/side-tieyezhi-text.png) right 6px center / 398px auto no-repeat;
  opacity: .16;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 45%);
  mask-image: linear-gradient(90deg, transparent 0, #000 45%);
  pointer-events: none;
}

.hj-side__head::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 6px;
  background: url(../images/huiwen.svg) left center / 6px 6px repeat-x;
  opacity: .35;
}

.hj-side__title { font-family: var(--hj-sans); font-size: calc(1.75 * var(--hj-rem)); font-weight: 700; line-height: 1.25; letter-spacing: .12em; }
.hj-side__en { display: block; margin-top: 6px; font-size: calc(.8125 * var(--hj-rem)); letter-spacing: .14em; text-transform: uppercase; color: rgba(255, 255, 255, .7); }
.hj-side__switch { display: none; }
.hj-side__list { border: 1px solid var(--hj-line); border-top: 0; }
.hj-side__item + .hj-side__item { border-top: 1px solid var(--hj-line); }

.hj-side__item { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; }
.hj-side__link {
  position: relative;
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 54px;
  padding: 10px 20px 10px 24px;
  font-size: var(--hj-fs-item);
  line-height: 1.5;
  transition: color .2s, background .2s;
}
.hj-side__item:has(> .hj-side__sub) > .hj-side__link { grid-column: 1; padding-right: 8px; }

.hj-side__item:not(:has(> .hj-side__sub)) > .hj-side__link::after {
  content: "";
  flex: none;
  width: 7px;
  height: 7px;
  margin-right: 1px;
  border: solid #d8c8b4;
  border-width: 1.5px 1.5px 0 0;
  transform: rotate(45deg);
  transition: border-color .2s;
}
.hj-side__link:is(:hover, :focus-visible) { background: #f5eee4; color: var(--hj-brown-dk); }

.hj-side__link:is(:hover, :focus-visible) + .hj-side__toggle,
.hj-side__item:has(> .hj-side__sub):has(> .hj-side__toggle:is(:hover, :focus-visible)) > .hj-side__link { background: #f5eee4; }
.hj-side__link:is(:hover, :focus-visible)::after { border-color: var(--hj-brown); }
.hj-side__item.is-current > .hj-side__link { color: var(--hj-brown-dk); font-weight: 700; }
.hj-side__item.is-current:not(:has(.hj-side__sub-list > li.is-current)) > .hj-side__link { background: #f5eee4; }
.hj-side__item.is-current > .hj-side__link::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--hj-red);
}
.hj-side__item.is-current > .hj-side__link::after { border-color: var(--hj-brown); }

.hj-side__toggle {
  position: relative;
  grid-column: 2;
  width: 48px;
  border: 0;
  background: none;
  transition: background .2s;
}
.hj-side__toggle::before {
  content: "";
  position: absolute;
  right: 21px;
  top: 50%;
  width: 7px;
  height: 7px;
  margin-top: -3.5px;
  border: solid var(--hj-brown);
  border-width: 1.5px 1.5px 0 0;
  transform: rotate(45deg);
  transition: transform .3s, border-color .2s;
}
.hj-side__toggle:is(:hover, :focus-visible) { background: #f5eee4; }
.hj-side__toggle:is(:hover, :focus-visible)::before { border-color: var(--hj-brown-dk); }

.hj-side__toggle[aria-expanded="true"]::before { transform: rotate(135deg); }
.hj-side__toggle:focus-visible { outline-offset: -3px; }

.hj-side__sub {
  grid-column: 1 / -1;
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows .3s ease, visibility .3s;
}
.hj-js .hj-side__item:has(> .hj-side__sub):not(.is-open) > .hj-side__sub { grid-template-rows: 0fr; visibility: hidden; }
.hj-side__sub-list { min-height: 0; overflow: hidden; background: #faf6f0; }
.hj-side__sub-list li:first-child { border-top: 1px dashed var(--hj-line); }
.hj-side__sublink {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 20px 8px 44px;
  font-size: calc(var(--hj-fs-item) - 1px);
  line-height: 1.5;
  color: #555;
  transition: color .2s, background .2s;
}
.hj-side__sublink::before {
  content: "";
  position: absolute;
  left: 27px;
  top: 50%;
  width: 6px;
  height: 6px;
  border: 1px solid var(--hj-brown-lt);
  transform: translateY(-50%) rotate(45deg);
  transition: background .2s, border-color .2s;
}
.hj-side__sublink:is(:hover, :focus-visible) { background: #f3ebdf; color: var(--hj-brown-dk); }
.hj-side__sub-list > li.is-current > .hj-side__sublink { background: #f3ebdf; color: var(--hj-brown-dk); font-weight: 700; }
.hj-side__sub-list > li.is-current > .hj-side__sublink::before { border-color: var(--hj-red); background: var(--hj-red); }

.hj-content { min-width: 0; }

.hj-content__head { flex-wrap: wrap; align-items: flex-end; }
.hj-crumb { display: flex; align-items: center; gap: 6px; font-size: var(--hj-fs-meta); color: var(--hj-gray); }
.hj-crumb > svg { flex: none; color: var(--hj-brown-lt); }
.hj-crumb__list { display: flex; flex-wrap: wrap; align-items: center; }
.hj-crumb__list li { display: flex; align-items: center; }
.hj-crumb__list li + li::before {
  content: "";
  width: 5px;
  height: 5px;
  margin: 0 9px 0 7px;
  border: solid var(--hj-brown-lt);
  border-width: 1.5px 1.5px 0 0;
  transform: rotate(45deg);
}
.hj-crumb__list a { transition: color .2s; }
.hj-crumb__list a:is(:hover, :focus-visible) { color: var(--hj-brown); }
.hj-crumb__list [aria-current="page"] { color: var(--hj-ink); }

.hj-list--page .hj-list__link { min-height: 56px; padding: 12px 0; }

/* 分页：直接给博达分页组件原有类名上样式，后台只需在组件外包一层 hj-pager；不替换后台翻页逻辑 */
.hj-pager { margin-top: 40px; }
.hj-pager .pb_sys_common {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px 12px;
  margin: 0 !important;
  font-size: var(--hj-fs-meta);
  line-height: 1;
  color: var(--hj-gray);
  font-variant-numeric: tabular-nums;
}
/* 组件内层 pagebar：覆盖行内 margin-top:10px，页码与跳转区同行居中、窄屏自动换行 */
.hj-pager .pagebar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px 12px;
  margin: 0 !important;
}
.hj-pager a { text-decoration: none; }

/* 页码区 */
.hj-pager .p_pages { display: inline-flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px; }

/* 可点按钮与页码：首页/上页/下页/尾页带 p_fun，页码带 p_no；不可点项与当前页为无链接 span */
.hj-pager :is(.p_fun, .p_no) > a,
.hj-pager :is(.p_fun_d, .p_no_d) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  border: 1px solid var(--hj-line);
  background: #fff;
  color: var(--hj-ink);
  transition: color .2s, border-color .2s, background .2s;
}
.hj-pager :is(.p_fun, .p_no) > a:is(:hover, :focus-visible) { border-color: var(--hj-brown); color: var(--hj-brown-dk); background: #f5eee4; }

/* 当前页 */
.hj-pager .p_no_d { border-color: var(--hj-brown) !important; background: var(--hj-brown) !important; color: #fff !important; }
/* 不可点的「首页/上页/下页/尾页」 */
.hj-pager .p_fun_d { color: #bbb !important; background: #faf6f0; }

/* 省略号：纯文字，不套方框 */
.hj-pager .p_dot { padding: 0 2px; color: var(--hj-gray); }

/* 跳转区：「到第 [ ] 页 跳转」 */
.hj-pager .p_t { margin: 0 2px; }
.hj-pager .p_goto { display: inline-flex; align-items: center; }
.hj-pager .p_goto_input {
  width: 44px;
  height: 36px;
  padding: 0 4px;
  border: 1px solid var(--hj-line);
  background: #fff;
  font-size: inherit;
  text-align: center;
}
.hj-pager .p_goto_input:hover { border-color: var(--hj-beige); }
.hj-pager .p_goto_input:focus { outline: none; border-color: var(--hj-brown); box-shadow: 0 0 0 2px rgba(143, 92, 42, .15); }
.hj-pager .p_goto a {
  display: inline-flex;
  align-items: center;
  height: 36px;
  padding: 0 14px;
  border: 1px solid var(--hj-brown);
  color: var(--hj-brown-dk);
  transition: color .2s, background .2s;
}
.hj-pager .p_goto a:is(:hover, :focus-visible) { background: var(--hj-brown); color: #fff; }

.hj-article__head {
  position: relative;
  margin-bottom: 32px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--hj-line);
  text-align: center;
}
.hj-article__head::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -2px;
  width: 64px;
  height: 3px;
  background: var(--hj-brown);
  transform: translateX(-50%);
}
.hj-article__title {
  font-family: var(--hj-sans);
  font-size: calc(var(--hj-fs-title) - 4px);
  font-weight: 700;
  line-height: 1.6;
  color: var(--hj-ink);
}
.hj-article__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4px 28px;
  margin-top: 14px;
  font-size: var(--hj-fs-meta);
  color: #999;
  font-variant-numeric: tabular-nums;
}
.hj-article__body {
  font-size: calc(1.0625 * var(--hj-rem));
  line-height: 2;
  color: var(--hj-ink);
  text-align: justify;
  overflow-wrap: anywhere;
}
:where(.hj-article__body) :is(p) { margin: 0 0 1em; text-indent: 2em; }
:where(.hj-article__body) :is(h1, h2, h3, h4, h5, h6) {
  margin: 1.4em 0 .6em;
  font-family: var(--hj-sans);
  font-weight: 700;
  line-height: 1.6;
  text-indent: 0;
  text-align: left;
  color: var(--hj-brown-dk);
}
:where(.hj-article__body) :is(h1, h2) { font-size: 1.3em; }
:where(.hj-article__body) :is(h3) { font-size: 1.18em; color: var(--hj-brown); }
:where(.hj-article__body) :is(h4) { font-size: 1.06em; }
:where(.hj-article__body) :is(h5, h6) { font-size: 1em; }
:where(.hj-article__body, .hj-article__body #vsb_content, .hj-article__body .v_news_content) > :first-child { margin-top: 0; }
:where(.hj-article__body) :is(strong, b) { font-weight: 700; }
:where(.hj-article__body) :is(em, i) { font-style: italic; }
:where(.hj-article__body) :is(a) { color: var(--hj-brown); text-decoration: underline; text-underline-offset: 3px; }
:where(.hj-article__body) :is(a):hover { color: var(--hj-red); }
:where(.hj-article__body) :is(ul, ol) { margin: 0 0 1em; padding-left: 2em; }
:where(.hj-article__body) :is(ul) { list-style: disc; }
:where(.hj-article__body) :is(ol) { list-style: decimal; }
:where(.hj-article__body) :is(li) { margin: .2em 0; }
:where(.hj-article__body) :is(li, td, th, blockquote, figcaption) :is(p) { text-indent: 0; }
:where(.hj-article__body) :is(li) :is(p) { margin: 0; }
:where(.hj-article__body) :is(blockquote) {
  margin: 1em 0 1.2em;
  padding: 12px 20px;
  border-left: 3px solid var(--hj-beige);
  background: var(--hj-paper);
  color: #555;
}
:where(.hj-article__body) :is(blockquote) :is(p:last-child) { margin-bottom: 0; }
:where(.hj-article__body) :is(hr) { margin: 2em 0; border: 0; border-top: 1px solid var(--hj-line); }
.hj-article__body img { max-width: 100% !important; height: auto !important; vertical-align: middle; }
.hj-article__body p:has(> img:only-child),
.hj-article__body p:has(> span:only-child > img:only-child) { text-indent: 0 !important; text-align: center; }
:where(.hj-article__body) :is(figure) { margin: 1.2em 0; text-align: center; }
:where(.hj-article__body) :is(figcaption) { margin-top: 6px; font-size: var(--hj-fs-meta); color: var(--hj-gray); }
:where(.hj-article__body) :is(video, iframe, embed) { display: block; max-width: 100%; margin: 1em auto; }
:where(.hj-article__body) :is(table) { width: 100%; margin: 1em 0 1.2em; border-collapse: collapse; font-size: .94em; line-height: 1.7; }
:where(.hj-article__body) :is(td, th) { padding: 8px 12px; border: 1px solid #e0d6ca; text-align: left; vertical-align: top; }
:where(.hj-article__body) :is(th) { background: var(--hj-paper); font-weight: 700; color: var(--hj-brown-dk); }
:where(.hj-article__body) :is(td, th) :is(p) { margin: 0; }
:where(.hj-article__body) :is(caption) { margin-bottom: 6px; font-size: var(--hj-fs-meta); color: var(--hj-gray); }
:where(.hj-article__body) :is(pre, code) { font-family: Consolas, Menlo, monospace; font-size: .9em; }
:where(.hj-article__body) :is(pre) { margin: 0 0 1em; padding: 12px 16px; overflow-x: auto; background: var(--hj-paper); line-height: 1.7; }
:where(.hj-article__body) :is(sup, sub) { font-size: .75em; line-height: 0; }

.hj-article__files { margin-top: 40px; border: 1px solid var(--hj-line); background: #fff; }
.hj-article__files:not(:has(a)) { display: none; }
.hj-article__files-title {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  border-bottom: 1px solid var(--hj-line);
  background: var(--hj-paper);
  font-size: var(--hj-fs-item);
  font-weight: 700;
  color: var(--hj-brown-dk);
}

.hj-article__files-title::before {
  content: "";
  width: 16px;
  height: 16px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M10.5 4.5 5.6 9.4a1.5 1.5 0 0 0 2.1 2.1l5.1-5.1a3 3 0 0 0-4.2-4.2L3.4 7.4a4.5 4.5 0 0 0 6.4 6.4L14 9.6' fill='none' stroke='%23734e1f' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
.hj-article__files p:not(.hj-article__files-title) {
  display: flex;
  align-items: center;
  min-height: 56px;
  padding: 10px 20px;
  font-size: 0;
  transition: background .2s;
}
.hj-article__files p:not(.hj-article__files-title) + p { border-top: 1px dashed var(--hj-line); }
.hj-article__files p:not(.hj-article__files-title):hover { background: #faf6f0; }

.hj-article__files p:not(.hj-article__files-title)::before {
  content: "";
  flex: none;
  width: 22px;
  height: 26px;
  margin-right: 12px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 26'%3E%3Cpath d='M2 1h12l6 6v18H2Z' fill='%23f7f2ea' stroke='%238f5c2a' stroke-width='1.3'/%3E%3Cpath d='M14 1v6h6' fill='none' stroke='%238f5c2a' stroke-width='1.3'/%3E%3Cpath d='M6 13h10M6 17h10M6 21h6' stroke='%239a805c' stroke-width='1.2'/%3E%3C/svg%3E") center / contain no-repeat;
}
.hj-article__files p:not(.hj-article__files-title) a {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: var(--hj-fs-item);
  color: var(--hj-ink);
  transition: color .2s;
}
.hj-article__files p:not(.hj-article__files-title) a:is(:hover, :focus-visible) { color: var(--hj-brown); text-decoration: underline; text-underline-offset: 3px; }
.hj-article__files p span { flex: none; margin-left: 12px; font-size: var(--hj-fs-meta); color: #999; font-variant-numeric: tabular-nums; }
.hj-article__files p span::before { content: "已下载 "; }
.hj-article__files p span::after { content: " 次"; }
.hj-article__files p span:empty { display: none; }

.hj-article__files p:not(.hj-article__files-title)::after {
  content: "";
  flex: none;
  width: 16px;
  height: 16px;
  margin-left: 12px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 2v8M4.5 6.5 8 10l3.5-3.5M3 13h10' fill='none' stroke='%238f5c2a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

.hj-article--person .hj-article__body { display: flow-root; }
.hj-article--person .hj-article__body :is(.v_news_content, #vsb_content) > p:first-child:has(img) {
  float: left;
  width: 220px;
  margin: 6px 36px 20px 0;
  padding: 8px;
  border: 1px solid var(--hj-line);
  background: var(--hj-paper);
  text-indent: 0 !important;
}
.hj-article--person .hj-article__body :is(.v_news_content, #vsb_content) > p:first-child:has(img) img { display: block; width: 100% !important; }

.hj-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 36px 28px; }
.hj-grid--wide { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hj-grid__link { display: block; text-align: center; }
.hj-grid__media {
  position: relative;
  display: block;
  aspect-ratio: 5 / 6;
  padding: 8px;
  border: 1px solid var(--hj-line);
  background: var(--hj-paper) url(../images/person-default.svg) center 60% / 46% auto no-repeat;
  transition: border-color .25s, box-shadow .25s;
}
.hj-grid--wide .hj-grid__media { aspect-ratio: 4 / 3; background-image: none; }
.hj-grid__img-wrap { display: block; height: 100%; overflow: hidden; }
.hj-grid__img { width: 100%; height: 100%; object-fit: cover; object-position: center top; transition: transform var(--hj-image-transition); }
.hj-grid__name {
  position: relative;
  display: block;
  margin-top: 14px;
  padding-bottom: 10px;
  font-size: calc(var(--hj-fs-item) + 1px);
  font-weight: 700;
  letter-spacing: .12em;
  color: var(--hj-ink);
  transition: color .2s;
}
.hj-grid--wide .hj-grid__name {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.6;
}

.hj-grid__name::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 20px;
  height: 2px;
  background: var(--hj-beige);
  transform: translateX(-50%);
  transition: width .25s, background .25s;
}
.hj-grid__meta { display: block; margin-top: 8px; font-size: var(--hj-fs-meta); color: var(--hj-gray); }
.hj-grid__link:is(:hover, :focus-visible) .hj-grid__media { border-color: var(--hj-beige); box-shadow: 0 10px 24px rgba(var(--hj-shade), .10); }
.hj-grid__link:is(:hover, :focus-visible) .hj-grid__img { transform: scale(var(--hj-image-hover-scale)); }
.hj-grid__link:is(:hover, :focus-visible) .hj-grid__name { color: var(--hj-brown-dk); }
.hj-grid__link:is(:hover, :focus-visible) .hj-grid__name::after { width: 48px; background: var(--hj-brown); }

.hj-entry-block { margin-top: 36px; }
.hj-entry-block .hj-entry { min-height: 180px; }
.hj-entry-block .hj-entry__body { padding: 28px 32px; }
.hj-entry-block .hj-entry__title { font-size: calc(1.5 * var(--hj-rem)); }

.hj-article__nav { margin-top: 40px; border-top: 1px solid var(--hj-line); }
.hj-article__nav p {
  display: flex;
  gap: 4px;
  padding: 14px 0;
  border-bottom: 1px solid var(--hj-line);
  font-size: var(--hj-fs-item);
}
.hj-article__nav-k { flex: none; color: var(--hj-brown-lt); }
.hj-article__nav a { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; transition: color .2s; }
.hj-article__nav a:is(:hover, :focus-visible) { color: var(--hj-brown); }

@media (min-width: 768px) {
  @container hj-page (max-width: 1006px) {
    .hj-inner { grid-template-columns: 220px minmax(0, 1fr); gap: 32px; }
    .hj-side__link { padding-left: 20px; }
    .hj-side__head { padding-inline: 20px; }
  }
}
@container hj-page (min-width: 1903px) {
  .hj-inner { grid-template-columns: 300px minmax(0, 1fr); gap: 56px; padding: 44px 0 96px; }
  .hj-side { top: 96px; margin-top: -116px; }

}
@media (max-width: 767px) {
  .hj-pagebanner { height: calc(20.833333vw / var(--hj-z)); }
  .hj-pagebanner__img { object-position: center; }

  .hj-inner { grid-template-columns: minmax(0, 1fr); gap: 24px; padding: 0 0 48px; }
  .hj-side { position: relative; top: auto; margin-top: 0; }
  .hj-side__head { padding: 14px 56px; }
  .hj-side__head::after { display: none; }
  .hj-side__title { font-size: calc(1.25 * var(--hj-rem)); }
  .hj-side__en { display: none; }
  .hj-js .hj-side__switch {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    border: 0;
    background: none;
  }
  .hj-side__switch::before {
    content: "";
    position: absolute;
    right: 22px;
    top: 50%;
    width: 9px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: translateY(-70%) rotate(45deg);
    transition: transform .25s;
  }
  .hj-side__switch[aria-expanded="true"]::before { transform: translateY(-30%) rotate(-135deg); }
  .hj-side__switch:focus-visible { outline-color: #fff; outline-offset: -4px; }
  .hj-js .hj-side:not(.is-open) .hj-side__list { display: none; }
  .hj-side__link { min-height: 48px; padding-left: 18px; }
  .hj-side__sublink { min-height: 42px; padding-left: 38px; }
  .hj-side__sublink::before { left: 21px; }

  .hj-content__head { row-gap: 10px; }
  .hj-crumb { flex-basis: 100%; font-size: calc(.8125 * var(--hj-rem)); }

  .hj-list--page .hj-list__link { flex-direction: column; align-items: stretch; gap: 2px; }
  .hj-list--page .hj-list__title { white-space: normal; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .hj-list--page .hj-list__title::before { top: .8em; }
  .hj-list--page .hj-list__date { padding-left: 20px; }

  .hj-pager { margin-top: 28px; }
  .hj-pager :is(.p_first, .p_first_d, .p_last, .p_last_d) { display: none; }
  .hj-pager .p_pages > span > a, .hj-pager .p_pages > span:not(:has(a)) { min-width: 32px; height: 32px; padding: 0 8px; }
  .hj-pager .p_goto_input, .hj-pager .p_goto a { height: 32px; }

  .hj-article__head { margin-bottom: 24px; padding-bottom: 16px; }
  .hj-article__title { font-size: calc(1.25 * var(--hj-rem)); }
  .hj-article__meta { gap: 2px 16px; }
  .hj-article__body { font-size: var(--hj-rem); }
  :where(.hj-article__body) table { display: block; overflow-x: auto; }
  .hj-article__nav p { font-size: calc(.875 * var(--hj-rem)); }
  .hj-article__files p:not(.hj-article__files-title) { flex-wrap: wrap; padding: 10px 14px; row-gap: 2px; }
  .hj-article__files p:not(.hj-article__files-title) a { flex: 1 1 0; white-space: normal; }
  .hj-article__files p:not(.hj-article__files-title)::after { order: 2; }
  .hj-article__files p span { order: 3; flex-basis: 100%; margin-left: 0; padding-left: 34px; }
}

.hj-sresult__bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px 24px;
  padding: 20px 24px;
  border: 1px solid var(--hj-line);
  background: var(--hj-paper);
}
.hj-sresult__form {
  display: flex;
  width: min(100%, 520px);
  height: 46px;
  border: 1px solid var(--hj-brown);
  background: #fff;
}
.hj-sresult__form:focus-within { box-shadow: 0 0 0 3px rgba(143, 92, 42, .15); }
.hj-sresult__input { flex: 1; min-width: 0; padding: 0 16px; border: 0; background: none; font-size: var(--hj-fs-item); }
.hj-sresult__input:focus { outline: none; }
.hj-sresult__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 20px;
  border: 0;
  background: var(--hj-brown);
  color: #fff;
  font-size: var(--hj-fs-item);
  transition: background .2s;
}
.hj-sresult__btn:is(:hover, :focus-visible) { background: var(--hj-brown-dk); }
.hj-sresult__count { font-size: var(--hj-fs-meta); color: var(--hj-gray); }
.hj-sresult__count strong { margin: 0 2px; color: var(--hj-brown-dk); font-weight: 700; }
.hj-sresult__list { margin-top: 8px; }
.hj-sresult__item { padding: 22px 0; border-bottom: 1px solid var(--hj-line); }
.hj-sresult__title { font-size: var(--hj-fs-feature); font-weight: 700; line-height: 1.6; }
.hj-sresult__title a { color: var(--hj-ink); transition: color .2s; }
.hj-sresult__title a:is(:hover, :focus-visible) { color: var(--hj-brown); text-decoration: underline; text-underline-offset: 4px; }
.hj-sresult__summary {
  display: -webkit-box;
  margin-top: 8px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  font-size: calc(var(--hj-fs-item) - 1px);
  line-height: 1.85;
  color: #666;
  overflow-wrap: anywhere;
}
.hj-sresult__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 20px; margin-top: 8px; font-size: var(--hj-fs-meta); color: #999; font-variant-numeric: tabular-nums; }
.hj-sresult__meta span { display: inline-flex; align-items: center; gap: 5px; }
.hj-sresult__meta svg { flex: none; color: var(--hj-brown-lt); }
:is(.hj-sresult__title, .hj-sresult__summary) :is(font, em, b, strong, mark, span[style*="color"]) {
  color: var(--hj-red) !important;
  font-weight: 700;
  font-style: normal;
  background: none;
}
.hj-sresult__empty {
  margin-top: 24px;
  padding: 40px 32px;
  border: 1px dashed var(--hj-beige);
  background: var(--hj-paper);
  font-size: var(--hj-fs-item);
  line-height: 1.9;
  color: var(--hj-gray);
}
.hj-sresult__empty strong { color: var(--hj-red); overflow-wrap: anywhere; }
.hj-sresult__empty ul { margin-top: 6px; padding-left: 1.4em; list-style: disc; font-size: var(--hj-fs-meta); }

@media (min-width: 768px) {
  @container hj-page (max-width: 1006px) {
    .hj-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 20px; }
    .hj-grid--wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .hj-article--person .hj-article__body :is(.v_news_content, #vsb_content) > p:first-child:has(img) { width: 180px; margin-right: 28px; }
  }
}
@media (max-width: 767px) {
  .hj-grid, .hj-grid--wide { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 14px; }
  .hj-grid__media { padding: 5px; }
  .hj-grid__name { margin-top: 10px; padding-bottom: 8px; letter-spacing: .06em; }
  .hj-article--person .hj-article__body :is(.v_news_content, #vsb_content) > p:first-child:has(img) { float: none; width: 168px; margin: 0 auto 20px; }
  .hj-entry-block .hj-entry { min-height: 170px; }
  .hj-entry-block .hj-entry__body { padding: 20px; }
  .hj-entry-block .hj-entry__title { font-size: calc(1.125 * var(--hj-rem)); }
  .hj-sresult__bar { padding: 14px; }
  .hj-sresult__form { width: 100%; height: 42px; }
  .hj-sresult__btn { padding: 0 14px; }
  .hj-sresult__item { padding: 18px 0; }
  .hj-sresult__title { font-size: var(--hj-fs-item); }
  .hj-sresult__empty { padding: 28px 18px; }
}

@media (prefers-reduced-motion: reduce) {
  :root { --hj-image-hover-scale: 1; }
  *, *::before, *::after { transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
/* 文章正文图片默认居中 */
.hj-article__body img {
  display: block;
  max-width: 100% !important;
  height: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
}