﻿:root {
  --primary: #3d9a63;
  --primary-hover: #2f7d50;
  --primary-light: #eef8f2;
  --text-1: #172033;
  --text-2: #4f5f73;
  --text-3: #7f8b9d;
  --border: #e3e8ef;
  --bg-soft: #f6f8fa;
  --white: #fff;
  --dark: #152033;
  --max: 1350px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--text-1);
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.8;
  background: #fff;
}
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button:disabled { opacity: .55; cursor: not-allowed; }

.container {
  width: min(var(--max), calc(100% - 60px));
  margin-inline: auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255, 255, 255, .98);
  border-bottom: 1px solid var(--border);
}
.header-inner {
  height: 76px;
  display: flex;
  align-items: center;
  gap: 30px;
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.brand img {
  width: auto;
  height: 48px;
}
.brand [data-slot="site-title"] {
  font-size: 18px;
  font-weight: 700;
  color: var(--text-1);
  white-space: nowrap;
}
/* Logo 存在时隐藏站点名文案；Logo 可空时显示站点名 */
.brand:has([data-slot="site-logo"]) [data-slot="site-title"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.site-nav {
  display: flex;
  align-items: center;
  gap: 28px;
  margin-left: auto;
}
.nav-item {
  position: relative;
  height: 76px;
  display: flex;
  align-items: center;
}
.site-nav > .nav-item > a {
  height: 76px;
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 500;
  position: relative;
}
.site-nav > .nav-item > a:hover,
.nav-item.is-active > a {
  color: var(--primary-hover);
}
.nav-item.is-active > a:after {
  content: "";
  position: absolute;
  height: 2px;
  left: 0;
  right: 0;
  bottom: 14px;
  background: var(--primary);
}
.subnav {
  display: none;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  min-width: 148px;
  width: max-content;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
  z-index: 60;
}
.nav-item.has-sub:hover > .subnav,
.nav-item.has-sub.is-open > .subnav {
  display: block;
}
.subnav a {
  height: 42px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 500;
  border-radius: 6px;
  white-space: nowrap;
}
.subnav a:hover,
.subnav a.is-active {
  color: var(--primary-hover);
  background: var(--primary-light);
}

.button,
.button.secondary,
.card-cta,
a.button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  border: 1px solid #6bbf8a;
  border-radius: 999px;
  background: #fff;
  color: #3d9a63;
  font-weight: 400;
  font-size: 14px;
  cursor: pointer;
  transition: .2s ease;
  text-decoration: none;
}
.button:hover,
.button:focus-visible,
.button.secondary:hover,
.card-cta:hover,
.card:hover .card-cta,
a.button:hover {
  background: #3d9a63;
  border-color: #3d9a63;
  color: #fff;
}
.button:active,
.card-cta:active {
  background: #2f7d50;
  border-color: #2f7d50;
  color: #fff;
}
.menu-toggle {
  display: none;
  margin-left: auto;
  background: none;
  border: 0;
  font-size: 28px;
}

.hero {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1920 / 520;
  background: var(--bg-soft);
}
.slides { height: 100%; display: grid; }
.slide {
  grid-area: 1 / 1;
  opacity: 0;
  transition: opacity .6s ease;
  pointer-events: none;
}
.slide.is-active {
  opacity: 1;
  pointer-events: auto;
}
.slide-link {
  display: block;
  width: 100%;
  height: 100%;
}
.slide picture {
  display: block;
  width: 100%;
  height: 100%;
}
.slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 1920 / 520;
}
.slider-dots {
  position: absolute;
  left: 50%;
  bottom: 22px;
  transform: translateX(-50%);
  display: flex;
  gap: 10px;
}
.slider-dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 1px solid #fff;
  border-radius: 50%;
  background: transparent;
}
.slider-dot.is-active {
  width: 28px;
  border-radius: 10px;
  background: #fff;
}

.section { padding: 80px 0; }
/* 首页：版块间距 70px；灰底版块内容与灰底上下各 70px；友链与上下内容各 40px */
main[data-page="index"] {
  display: flex;
  flex-direction: column;
  gap: 70px;
}
main[data-page="index"] > .section {
  padding: 0;
  margin: 0;
}
main[data-page="index"] > .section.soft {
  padding: 70px 0;
}
main[data-page="index"] > .friendly {
  /* 抵消 main gap 70，使与上方版块净距 40；下方距页脚 40 */
  margin: -30px 0 0;
  padding: 0 0 40px;
}
.soft { background: var(--bg-soft); }
.section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 38px;
}
.section-head h2,
.section-head p { margin-bottom: 0; }
.section-head p { color: var(--text-2); }
.section h2 {
  font-size: 34px;
  line-height: 1.3;
  margin-top: 0;
}
.eyebrow {
  display: block;
  color: var(--primary-hover);
  font-size: 13px;
  line-height: 1.6;
  font-weight: 700;
  letter-spacing: .08em;
  margin-bottom: 8px;
}
.meta {
  display: block;
  color: var(--text-3);
  font-size: 13px;
  line-height: 1.6;
  font-weight: 600;
  margin-bottom: 8px;
}
.split {
  display: grid;
  grid-template-columns: 48fr 52fr;
  gap: 60px;
  align-items: center;
}
.rounded-media {
  border-radius: 10px;
  overflow: hidden;
}
.rounded-media img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}
.lead {
  font-size: 16px;
  line-height: 1.8;
  color: var(--text-2);
}
.split > div > p {
  font-size: 16px;
  line-height: 1.8;
  color: var(--text-2);
  margin: 0 0 14px;
}

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

.card {
  display: block;
  border: 1px solid var(--border);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  transition: .3s ease;
}
.card:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
}
.media {
  display: block;
  overflow: hidden;
  background: var(--bg-soft);
  min-height: 1px;
  position: relative;
}
.media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.media-badge {
  position: absolute;
  left: 12px;
  top: 12px;
  z-index: 2;
  padding: 4px 10px;
  border-radius: 4px;
  background: rgba(0, 168, 90, .92);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
}
.media-product { aspect-ratio: 16 / 10; }
.media-case { aspect-ratio: 4 / 3; }
.media-news { aspect-ratio: 16 / 9; }
.media-person { aspect-ratio: 1 / 1; }
.media-person img {
  object-fit: cover;
  object-position: center 18%;
}
.media-detail {
  aspect-ratio: 16 / 10;
  border-radius: 8px;
}
.card-body {
  display: block;
  padding: 22px 24px 24px;
}
.card h2 {
  font-size: 21px;
  line-height: 1.45;
  margin: 0 0 10px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.card p {
  font-size: 15px;
  line-height: 1.7;
  color: var(--text-2);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.card time {
  display: block;
  color: var(--text-3);
  font-size: 13px;
  margin-top: 14px;
}
.card-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  min-height: 40px;
  padding: 0 24px;
  border-radius: 999px;
  border: 1px solid #6bbf8a;
  background: #fff;
  color: #3d9a63;
  font-size: 14px;
  font-weight: 400;
  transition: .2s ease;
}
.card:hover .card-cta {
  background: #3d9a63;
  color: #fff;
  border-color: #3d9a63;
}
/* 白皮书：新闻卡标题加大、摘要 14px */
[data-block="home-news"] .card-body,
[data-block="list"] .media-news + .card-body,
[data-block="related-news"] .card-body,
.news-card .card-body {
  padding: 22px;
}
[data-block="home-news"] .card h2,
[data-block="list"] .media-news + .card-body h2,
[data-block="related-news"] .card h2,
.news-card h2 {
  font-size: 18px;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  -webkit-line-clamp: unset;
}
[data-block="home-news"] .card p,
[data-block="list"] .media-news + .card-body p,
[data-block="related-news"] .card p,
.news-card p {
  font-size: 14px;
  line-height: 1.7;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.home-cases { gap: 24px; }
.section-head-center {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
}
.section-head-center h2 {
  width: 100%;
  text-align: center;
  font-size: 36px;
}
.section-more {
  margin-top: 28px;
  text-align: center;
}
.section-more a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 22px;
  border: 1px solid #6bbf8a;
  border-radius: 999px;
  color: #3d9a63;
  font-weight: 400;
  background: #fff;
  transition: .2s ease;
}
.section-more a:hover {
  background: #3d9a63;
  border-color: #3d9a63;
  color: #fff;
}
.news-card .card-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 14px;
}
.news-card .card-foot time {
  margin-top: 0;
}
.news-card .card-foot .card-cta {
  margin-top: 0;
}
.founder-feature {
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 48px;
  align-items: center;
  max-width: 980px;
  margin: 0 auto;
}
.founder-feature .media {
  border-radius: 12px;
  overflow: hidden;
  aspect-ratio: 3 / 4;
}
.founder-feature h3 {
  font-size: 32px;
  margin: 0 0 8px;
}
.founder-feature .meta {
  color: var(--primary-hover);
  font-size: 16px;
  margin-bottom: 16px;
}
.founder-feature p {
  font-size: 16px;
  line-height: 1.85;
  color: var(--text-2);
  margin: 0 0 24px;
}
.friendly-inner {
  display: block;
  text-align: left;
}
.friendly h2 {
  text-align: left;
  margin-bottom: 16px;
}
.friendly-list {
  justify-content: flex-start;
}
.footer-qr-wrap {
  text-align: left;
}
.footer-qr-box {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  border-radius: 10px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
}
.footer-qr {
  width: 120px;
  height: 120px;
  object-fit: cover;
  border-radius: 8px;
  border: 3px solid #fff;
  background: #fff;
  margin: 0;
  flex-shrink: 0;
}
.footer-qr-box strong {
  display: block;
  color: #fff;
  font-size: 16px;
  margin-bottom: 4px;
}
.footer-qr-box span {
  color: #c7d0dc;
  font-size: 13px;
}
.about-brand {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 48px;
  align-items: start;
}
.about-brand .rounded-media {
  position: sticky;
  top: 96px;
}
.side-box {
  padding: 22px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  margin-bottom: 20px;
}
.side-box h2,
.side-box h3 {
  font-size: 18px;
  margin: 0 0 12px;
}
.side-box ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.side-box li {
  border-bottom: 1px solid var(--border);
}
.side-box li:last-child { border-bottom: 0; }
.side-box a {
  display: block;
  padding: 12px 0;
  color: var(--text-2);
  font-size: 15px;
  line-height: 1.5;
}
.side-box a:hover { color: var(--primary-hover); }
.side-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.side-tags a,
.side-tags span {
  padding: 4px 12px;
  border-radius: 6px;
  background: var(--primary-light);
  color: var(--primary-hover);
  font-size: 13px;
}
.news-board {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 40px;
  align-items: start;
}
.news-board-list {
  display: grid;
  gap: 20px;
}
.news-row {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 20px;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  transition: .2s ease;
}
.news-row:hover {
  border-color: var(--primary);
  box-shadow: 0 8px 24px rgba(0,0,0,.05);
}
.news-row .media { border-radius: 6px; overflow: hidden; }
.news-row .card-body {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 4px 0;
}
.news-row .meta {
  margin-bottom: 6px;
}
.news-row p {
  font-size: 14px;
  color: var(--text-2);
  margin: 0 0 12px;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.news-row .card-foot { margin-top: auto; }
.news-side h2 {
  font-size: 18px;
  margin: 0 0 12px;
}
.news-side a {
  display: block;
  padding: 10px 0;
  border-bottom: 1px solid var(--border);
  color: var(--text-2);
  font-size: 14px;
}
.help-map-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
.contact-panels {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-top: 28px;
}
.contact-panel {
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 22px;
  background: #fff;
}
.contact-panel h3 { margin: 0 0 8px; font-size: 18px; }
.contact-panel p { margin: 0; color: var(--text-2); }
.contact-panel img {
  width: 140px;
  height: 140px;
  object-fit: cover;
  margin-top: 12px;
  border-radius: 8px;
}
.clinic-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.clinic-card {
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 20px;
  background: #fff;
  text-align: center;
}
.clinic-card img {
  width: 120px;
  height: 120px;
  object-fit: cover;
  margin: 0 auto 12px;
  border-radius: 8px;
}
.clinic-card h3 { margin: 0 0 8px; font-size: 18px; }
.clinic-card p { margin: 0 0 6px; color: var(--text-2); font-size: 14px; }
.help-detail-layout {
  max-width: 900px;
  margin: 0 auto;
  background: #fff;
  padding: 8px 0 40px;
}
main[data-page="help-detail"] {
  background: #fff;
}
main[data-page="help-detail"] .section {
  background: #fff;
}
.help-detail-layout h1 {
  font-size: 32px;
  margin: 16px 0 20px;
  line-height: 1.35;
}
.help-detail-layout .answer-first {
  font-size: 16px;
  line-height: 1.8;
  color: var(--text);
  margin-bottom: 28px;
}
.help-related-lists {
  display: grid;
  gap: 16px;
  margin-top: 28px;
}
.help-related-lists .side-box a {
  border-bottom: 1px solid var(--border);
}
.help-related-lists .side-box a:last-of-type {
  border-bottom: 0;
}
.news-row .card-body {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.news-side .side-box time {
  display: block;
  color: var(--muted, #8a93a0);
  font-size: 12px;
  margin-top: 4px;
}
.help-map-grid .help-category {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 22px 24px;
}
@media (max-width: 992px) {
  .founder-feature,
  .about-brand,
  .news-board,
  .news-row,
  .help-map-grid,
  .contact-panels,
  .clinic-grid {
    grid-template-columns: 1fr;
  }
  .about-brand .rounded-media { position: static; }
}
.center-text { text-align: center; }
.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.tag-list [data-slot="tag"],
.tag-list > span {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 6px;
  background: var(--primary-light);
  color: var(--primary-hover);
  font-size: 13px;
}
.text-link {
  display: block;
  color: var(--primary-hover);
  font-size: 14px;
  font-weight: 600;
  margin-top: 16px;
}

.case-card .card-body {
  padding: 18px 20px 22px;
}
.case-card .card-body h2 {
  padding: 0;
  margin: 0 0 8px;
  font-size: 18px;
}
main[data-page="index"] [data-block="home-cases"] .case-card .card-body h2 {
  font-size: 21px;
  line-height: 1.45;
  margin: 0 0 10px;
}

.expert-card .card-body { min-height: 190px; }
.expert-card h2 {
  font-size: 22px;
  margin: 0 0 6px;
}
.expert-card .meta {
  font-size: 14px;
  letter-spacing: 0;
  font-weight: 600;
  color: var(--primary-hover);
}
.detail-hero .meta[data-slot="headline"],
.person-hero .meta[data-slot="headline"] {
  color: var(--primary-hover);
  font-size: 14px;
}

.info-card,
.help-category,
.question-card,
.location,
.notice {
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  padding: 26px;
}
.info-card h3,
.location h3 {
  font-size: 21px;
  margin: 0 0 8px;
}
.info-card p,
.location p {
  color: var(--text-2);
  margin: 0;
}
.location a {
  display: inline-block;
  margin-top: 10px;
  color: var(--primary-hover);
  font-weight: 600;
}

.faq-categories {
  margin-bottom: 32px;
}
.help-category {
  padding: 28px 26px;
}
.help-category .category-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: baseline;
  margin-bottom: 4px;
}
.help-category h2 {
  font-size: 20px;
  margin: 0;
  font-weight: 700;
}
.help-category .category-head a {
  flex-shrink: 0;
  font-size: 14px;
  color: var(--primary-hover);
  font-weight: 600;
}
.help-category ol {
  list-style: none;
  padding: 0;
  margin: 8px 0 0;
  counter-reset: q;
}
.help-category li {
  counter-increment: q;
  border-top: 1px solid var(--border);
}
.help-category li a {
  min-height: 56px;
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 15px;
  color: var(--text-1);
}
.help-category li a:hover [data-slot="question"] {
  color: var(--primary-hover);
}
.help-category li a:before {
  content: counter(q, decimal-leading-zero);
  color: var(--text-3);
  min-width: 1.8em;
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}
.help-category li a [data-slot="question"] {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.help-category li a .faq-arrow,
.help-category li a > span:last-of-type:not([data-slot]) {
  margin-left: auto;
  color: var(--text-3);
  flex-shrink: 0;
}

.friendly {
  padding: 56px 0 64px;
  border-top: 1px solid var(--border);
}
.friendly-inner {
  display: block;
  text-align: left;
}
.friendly h2 {
  font-size: 40px;
  margin: 0 0 16px;
  font-weight: 700;
  text-align: left;
}
.friendly-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 16px 28px;
}
.friendly-list a {
  font-size: 14px;
  color: var(--text-2);
}
.friendly-list a:hover { color: var(--primary-hover); }

.filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-bottom: 28px;
}
.filters .filter {
  min-height: 44px;
  padding: 0 20px;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: #fff;
  display: inline-flex;
  align-items: center;
  font-size: 15px;
  color: var(--text-2);
  transition: .2s ease;
}
.filters .filter:hover {
  border-color: var(--primary);
  color: var(--primary-hover);
}
.filters .filter.is-active {
  background: var(--primary-light);
  border-color: var(--primary);
  color: var(--primary-hover);
  font-weight: 600;
}

.site-footer {
  background: #122033;
  color: rgba(255,255,255,.82);
  padding: 56px 0 28px;
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.3fr 1fr .9fr;
  gap: 40px;
  align-items: start;
}
.footer-logo {
  height: 42px;
  width: auto;
  margin-bottom: 14px;
  filter: brightness(0) invert(1);
}
.site-footer h2 {
  color: #fff;
  font-size: 18px;
  margin: 0 0 14px;
}
.site-footer p { margin: 0 0 8px; line-height: 1.7; }
.footer-qr-wrap { text-align: center; }
.footer-qr {
  width: 140px;
  height: 140px;
  object-fit: cover;
  border-radius: 8px;
  background: #fff;
  margin: 0 auto 10px;
}
.copyright {
  margin-top: 36px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.12);
  display: flex;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  font-size: 13px;
  color: rgba(255,255,255,.55);
}

.article-narrow {
  width: min(820px, 100%);
  margin-inline: auto;
}
.article-narrow .rich-text {
  font-size: 16px;
  line-height: 1.9;
}
.article-narrow .rich-text h2 {
  font-size: 27px;
  line-height: 1.35;
}
.article-head .lead { margin-top: 12px; }
.answer-first {
  margin-top: 18px;
  padding: 20px 24px;
  background: var(--primary-light);
  border-left: 3px solid var(--primary);
  font-size: 17px;
  line-height: 1.8;
}
.detail-hero-grid {
  display: grid;
  grid-template-columns: 46% 54%;
  gap: 56px;
  align-items: center;
}
.list-card-plain .meta { display: none; }

.about-values { max-width: 1100px; }
.timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
.timeline > div {
  padding: 22px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid var(--border);
}
.timeline strong {
  display: block;
  color: var(--primary-hover);
  margin-bottom: 8px;
  font-size: 18px;
}
.timeline p { margin: 0; color: var(--text-2); }

.channel-hero {
  position: relative;
  height: 250px;
  min-height: 250px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  overflow: hidden;
  background-color: #1b2430;
}
.channel-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.channel-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
}
.channel-hero::before {
  display: none !important;
  content: none !important;
}
.channel-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(23, 32, 43, .92) 0%, rgba(23, 32, 43, .62) 40%, rgba(23, 32, 43, .32) 70%, rgba(23, 32, 43, .1) 100%);
  pointer-events: none;
  z-index: 1;
}
.channel-hero > .container {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.channel-hero h1 {
  font-size: 38px;
  line-height: 1.25;
  letter-spacing: .06em;
  margin: 0 auto;
  color: rgba(255, 255, 255, .9);
  font-weight: 600;
  text-align: center;
  text-shadow: 0 1px 20px rgba(0, 0, 0, .22);
}
.channel-hero > div > p:last-child,
.channel-hero [data-slot="intro"] {
  display: none;
}
.channel-hero .breadcrumbs {
  display: none;
}
.breadcrumbs {
  font-size: 13px;
  color: var(--text-3);
  margin: 0 0 8px;
}
.breadcrumbs a:hover { color: var(--primary-hover); }

.filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin-bottom: 32px;
  height: auto;
  overflow: visible;
}
.filter,
.filters .filter {
  min-height: 44px;
  padding: 0 20px;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: #fff;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  color: var(--text-2);
  font-size: 15px;
  transition: .2s ease;
}
.filter:hover,
.filters .filter:hover {
  border-color: var(--primary);
  color: var(--primary-hover);
}
.filter.is-active,
.filters .filter.is-active {
  color: var(--primary-hover);
  background: var(--primary-light);
  border-color: var(--primary);
  font-weight: 600;
}

[data-block="search"] {
  display: flex;
  gap: 12px;
  max-width: 520px;
  margin: 0 auto 28px;
}
[data-block="search"] input {
  flex: 1;
  height: 46px;
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 0 14px;
}
[data-block="search"] button {
  height: 46px;
  padding: 0 24px;
  border: 0;
  border-radius: 6px;
  background: var(--primary);
  color: #fff;
  font-weight: 600;
  cursor: pointer;
}

.pagination,
[data-block="pagination"] {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 48px;
}
.pagination a,
.pagination span,
[data-block="pagination"] a,
[data-block="pagination"] span {
  min-width: 38px;
  height: 38px;
  padding: 0 12px;
  border: 1px solid var(--border);
  border-radius: 6px;
  display: grid;
  place-items: center;
}
.pagination a:hover,
.pagination .is-current,
[data-block="pagination"] a:hover,
[data-block="pagination"] .is-current {
  color: #fff;
  background: var(--primary);
  border-color: var(--primary);
}
.pagination .is-disabled,
[data-block="pagination"] .is-disabled {
  opacity: .45;
  pointer-events: none;
}

.detail-hero {
  padding: 64px 0;
  background: var(--bg-soft);
}
.detail-hero-grid {
  display: grid;
  grid-template-columns: 46% 54%;
  align-items: center;
  gap: 56px;
}
.detail-hero .meta[data-slot="category"] {
  color: var(--primary-hover);
  letter-spacing: .04em;
}
.detail-hero h1,
.person-hero h1,
.article-head h1 {
  font-size: 40px;
  line-height: 1.25;
  margin: 8px 0 14px;
}
.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 20px;
}
.tags a {
  padding: 4px 12px;
  background: var(--primary-light);
  color: var(--primary-hover);
  border-radius: 6px;
  font-size: 13px;
}

.content-sidebar {
  display: grid;
  grid-template-columns: minmax(0, 900px) minmax(280px, 320px);
  gap: 40px;
  align-items: start;
}
main[data-page="news-detail"] .content-sidebar {
  grid-template-columns: minmax(0, 820px) minmax(280px, 320px);
}
.rich-text { min-width: 0; }
.rich-text h2 {
  font-size: 28px;
  line-height: 1.4;
  margin: 44px 0 14px;
}
.rich-text h3 { font-size: 22px; }
.rich-text h4 { font-size: 18px; }
.rich-text p,
.rich-text li {
  line-height: 1.9;
  color: var(--text-2);
}
.rich-text img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  margin: 24px 0;
}
.rich-text a {
  color: var(--primary-hover);
  text-decoration: underline;
}
.rich-text blockquote,
.answer-first {
  margin: 0 0 28px;
  padding: 20px 24px;
  border-left: 3px solid var(--primary);
  background: var(--primary-light);
  font-size: 17px;
  line-height: 1.8;
}
.plain-answer { white-space: pre-line; }
.rich-text pre {
  padding: 20px;
  overflow: auto;
  background: var(--dark);
  color: #fff;
  border-radius: 8px;
}
.rich-text code { font-family: Consolas, monospace; }
.rich-text hr {
  border: 0;
  border-top: 1px solid var(--border);
  margin: 32px 0;
}
.table-wrap { overflow-x: auto; }
.rich-text table {
  width: 100%;
  border-collapse: collapse;
}
.rich-text th,
.rich-text td {
  border: 1px solid var(--border);
  padding: 12px;
  text-align: left;
}
.rich-text th { background: var(--bg-soft); }

.sidebar { display: grid; gap: 24px; }
.sidebar section {
  padding: 24px;
  border: 1px solid var(--border);
  border-radius: 8px;
}
.sidebar h2 {
  font-size: 20px;
  margin: 0 0 12px;
}
.sidebar a:not(.button) {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 8px 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--border);
  color: var(--text-2);
  font-size: 15px;
  align-items: start;
}
.sidebar a:not(.button) img {
  width: 64px;
  height: 48px;
  object-fit: cover;
  border-radius: 4px;
  grid-row: 1 / span 3;
}
.sidebar a:not(.button) [data-slot="title"],
.sidebar a:not(.button) > span:first-child {
  grid-column: 2;
  color: var(--text-1);
}
.sidebar a:not(.button) [data-slot="summary"] {
  grid-column: 2;
  font-size: 13px;
  color: var(--text-3);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.sidebar time,
.sidebar a:not(.button) time {
  display: block;
  grid-column: 2;
  color: var(--text-3);
  font-size: 13px;
}
.sidebar a:not(.button):not(:has(img)) {
  display: block;
}

.person-hero {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 64px;
  align-items: center;
}
.facts {
  padding-left: 20px;
  color: var(--text-2);
}
.article-head { padding: 24px 0 12px; }
.narrow { max-width: 820px; }
.article-cover {
  margin-top: 24px;
  border-radius: 8px;
  overflow: hidden;
}
.article-cover img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 20px;
  color: var(--text-3);
  font-size: 14px;
  margin: 0 0 8px;
}
.article-meta [data-slot="category"] {
  color: var(--primary-hover);
  font-weight: 600;
}

.question-card {
  display: block;
  margin-bottom: 20px;
}
.question-card h2,
.question-card h3 {
  font-size: 21px;
  margin: 0 0 8px;
}
.question-card p {
  color: var(--text-2);
  margin: 0;
}
.faq-list .question-card { margin-bottom: 16px; }

.prev-next {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}
.prev-next a {
  color: var(--primary-hover);
  font-weight: 600;
}

.contact-layout {
  display: grid;
  grid-template-columns: 40fr 60fr;
  gap: 56px;
  align-items: start;
}
.contact-qr { width: 104px; }
.message-form { display: grid; gap: 20px; }
.message-form h2 { margin-bottom: 0; }
.message-form label {
  display: grid;
  gap: 6px;
  font-size: 15px;
}
.message-form input,
.message-form textarea {
  width: 100%;
  height: 46px;
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 10px 12px;
}
.message-form textarea {
  height: 140px;
  resize: vertical;
}
.message-form .button { justify-self: start; }
.form-status {
  color: var(--text-3);
  font-size: 14px;
  margin: 0;
}
.form-status.is-success { color: var(--primary-hover); }
.form-status.is-error { color: #b42318; }

.cta {
  padding: 56px 0;
  background: var(--primary-light);
}
.cta-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
}
.cta h2 {
  font-size: 30px;
  margin: 0;
}
.cta p {
  margin: 6px 0 0;
  color: var(--text-2);
}

.timeline {
  border-left: 2px solid var(--border);
  padding-left: 30px;
}
.timeline > div {
  position: relative;
  margin-bottom: 28px;
}
.timeline > div:before {
  content: "";
  position: absolute;
  left: -38px;
  top: 8px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--primary);
}
.timeline strong {
  font-size: 20px;
  color: var(--primary-hover);
}

.swatches {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.swatches div {
  padding: 28px 16px;
  border-radius: 8px;
  color: #fff;
}

[data-empty] {
  padding: 28px;
  border: 1px dashed var(--border);
  border-radius: 8px;
  color: var(--text-3);
  text-align: center;
  background: var(--bg-soft);
}

.site-footer {
  padding: 56px 0 28px;
  background: #122033;
  color: rgba(255,255,255,.82);
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.3fr 1fr .9fr;
  gap: 40px;
  align-items: start;
}
.footer-logo {
  height: 42px;
  width: auto;
  margin-bottom: 14px;
  filter: brightness(0) invert(1);
}
.footer-grid h2,
.site-footer h2 {
  font-size: 18px;
  color: #fff;
  margin: 0 0 14px;
}
.footer-grid p,
.site-footer p {
  font-size: 14px;
  color: #c7d0dc;
  margin: 0 0 8px;
  line-height: 1.7;
}
[data-slot="company-name"] {
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  margin: 12px 0 8px;
}
.footer-qr-wrap { text-align: center; }
.footer-qr {
  width: 140px;
  height: 140px;
  object-fit: cover;
  border-radius: 8px;
  border: 4px solid #fff;
  background: #fff;
  margin: 0 auto 10px;
}
.copyright {
  border-top: 1px solid rgba(255, 255, 255, .15);
  margin-top: 36px;
  padding-top: 18px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  color: #aeb9c7;
  font-size: 13px;
}

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

@media (max-width: 1440px) {
  .container { width: min(var(--max), calc(100% - 60px)); }
}

@media (max-width: 1200px) {
  .container { width: calc(100% - 48px); }
  .grid-4,
  .grid-3 { grid-template-columns: repeat(2, 1fr); }
  .site-nav { gap: 18px; }
}

@media (max-width: 992px) {
  .menu-toggle {
    display: block;
    position: relative;
    z-index: 61;
    padding: 4px 2px;
    line-height: 1;
    color: var(--text-1);
  }
  .header-inner {
    position: relative;
  }
  .site-nav {
    display: none;
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    left: auto;
    width: min(240px, calc(100vw - 32px));
    margin-left: 0;
    background: #fff;
    padding: 10px;
    border: 1px solid var(--border);
    border-radius: 12px;
    box-shadow: 0 12px 36px rgba(0, 0, 0, .1);
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
    z-index: 60;
  }
  .site-nav.is-open { display: flex; }
  .nav-item {
    height: auto;
    flex-direction: column;
    align-items: stretch;
  }
  .site-nav > .nav-item > a {
    height: auto;
    min-height: 44px;
    padding: 10px 16px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 500;
    color: var(--text-1);
    transition: background .2s ease, color .2s ease;
  }
  .site-nav > .nav-item > a:hover {
    color: var(--primary-hover);
    background: rgba(238, 248, 242, .6);
  }
  .nav-item.is-active > a {
    color: var(--primary);
    background: var(--primary-light);
  }
  .nav-item.is-active > a:after {
    display: none;
  }
  .subnav {
    position: static;
    transform: none;
    display: none;
    min-width: 0;
    width: 100%;
    border: 0;
    box-shadow: none;
    padding: 0 0 4px 8px;
    background: transparent;
  }
  .nav-item.has-sub.is-open > .subnav { display: block; }
  .nav-item.has-sub:hover > .subnav { display: none; }
  .nav-item.has-sub.is-open:hover > .subnav { display: block; }
  .subnav a {
    height: auto;
    min-height: 40px;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 15px;
  }
  .subnav a.is-active {
    color: var(--primary);
    background: var(--primary-light);
  }
  .split,
  .detail-hero-grid,
  .content-sidebar,
  .contact-layout { grid-template-columns: 1fr; }
  .content-sidebar .sidebar { order: 2; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
  body { font-size: 15px; }
  .container { width: calc(100% - 32px); }
  .header-inner { height: 64px; }
  .brand img { height: 40px; width: auto; }
  .section { padding: 56px 0; }
  .grid-4,
  .grid-3,
  .grid-2,
  .home-cases {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .section-head,
  .cta-inner,
  .friendly .container {
    align-items: flex-start;
    flex-direction: column;
  }
  .section-head { margin-bottom: 32px; }
  .section h2 { font-size: 26px; }
  .channel-hero {
    height: 160px;
    min-height: 160px;
    padding: 0;
  }
  .channel-hero h1,
  main[data-page="news-list"] .news-hero h1 {
    font-size: 26px;
    margin: 0 auto;
    color: rgba(255, 255, 255, .88);
    font-weight: 600;
  }
  .channel-hero > div > p:last-child,
  .channel-hero [data-slot="intro"] {
    display: none;
  }
  .detail-hero h1,
  .person-hero h1,
  .article-head h1 { font-size: 32px; }
  .detail-hero-grid { gap: 28px; }
  .person-hero { grid-template-columns: 1fr; }
  .person-hero .media { max-width: 360px; }
  .footer-grid { grid-template-columns: 1fr; }
  .copyright { flex-direction: column; }
  .swatches { grid-template-columns: repeat(2, 1fr); }
  [data-block="search"] { flex-direction: column; }
}

@media (max-width: 480px) {
  .container { width: calc(100% - 32px); }
  .card-body { padding: 22px; }
  .filters {
    margin-inline: -16px;
    padding-inline: 16px;
  }
  .pagination a,
  .pagination span,
  [data-block="pagination"] a,
  [data-block="pagination"] span {
    min-width: 38px;
    padding: 0 8px;
  }
}


/* ===== 2026-08-14 homepage/about/news polish ===== */
main[data-page="index"] .section-head-center h2,
main[data-page="index"] .section > .container > .split h2,
main[data-page="index"] .friendly h2 {
  font-size: 40px;
  line-height: 1.25;
  font-weight: 700;
}
main[data-page="index"] .friendly h2 { text-align: left; }
.home-about { align-items: stretch; }
.home-about .rounded-media { height: 100%; }
.home-about .rounded-media img {
  aspect-ratio: auto;
  min-height: 100%;
  height: 100%;
  object-fit: cover;
}
.home-about-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-block: 8px;
}
.home-about-copy h2 { margin-bottom: 18px; }
.home-about-copy .lead,
.home-about-copy p {
  font-size: 16px;
  line-height: 1.9;
  color: var(--text-2);
  margin: 0 0 14px;
}
.home-about-copy .button { margin-top: 8px; align-self: flex-start; }
[data-block="home-news"] .card-foot { justify-content: flex-start; }
[data-block="home-news"] .card-foot time,
.news-card .card-foot time {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.founder-feature {
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 48px;
  max-width: 1080px;
  padding: 32px 40px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  align-items: center;
}
.founder-feature h3 { font-size: 34px; margin: 0 0 10px; }
.founder-feature .meta {
  color: #3d9a63;
  font-weight: 500;
  margin-bottom: 18px;
  display: block;
}
.founder-feature p { margin: 0; line-height: 1.9; font-size: 16px; }
.about-brand .rounded-media { position: static !important; }
.about-pro { max-width: 1100px; margin: 0 auto; }
.about-pro-lead {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 36px;
  font-size: 17px;
  line-height: 1.8;
  color: var(--text-2);
}
.about-pro-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.about-pro-card {
  padding: 28px 24px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid var(--border);
  transition: border-color .2s ease, box-shadow .2s ease;
}
.about-pro-card:hover {
  border-color: #b8dfc8;
  box-shadow: 0 10px 28px rgba(61, 154, 99, .08);
}
.about-pro-card .num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #eef8f2;
  color: #3d9a63;
  font-size: 14px;
  margin-bottom: 14px;
}
.about-pro-card h3 { font-size: 20px; margin: 0 0 10px; }
.about-pro-card p {
  margin: 0;
  color: var(--text-2);
  font-size: 15px;
  line-height: 1.75;
}
main[data-page="index"] .help-category {
  padding: 30px 28px;
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(23, 32, 51, .04);
}
main[data-page="index"] .help-category .category-head {
  padding-bottom: 14px;
  margin-bottom: 0;
  border-bottom: 1px solid var(--border);
}
main[data-page="index"] .help-category h2 { font-size: 22px; }
main[data-page="index"] .help-category .category-head a {
  font-weight: 400;
  color: #3d9a63;
}
main[data-page="index"] .help-category li a {
  min-height: 58px;
  transition: background .2s ease, color .2s ease;
}
main[data-page="index"] .help-category li a:hover {
  background: #f7fbf9;
  padding-inline: 10px;
  margin-inline: -10px;
  border-radius: 8px;
}
main[data-page="index"] .help-category li a .faq-arrow {
  color: #6bbf8a;
  font-size: 18px;
}
.friendly-inner {
  display: block !important;
  text-align: left !important;
  align-items: flex-start !important;
}
.friendly h2 { text-align: left !important; font-size: 40px; }
.friendly-list { justify-content: flex-start !important; }
main[data-page="news-list"] .filters {
  justify-content: flex-start;
  margin-bottom: 32px;
}
main[data-page="news-list"] .news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 36px 28px;
}
main[data-page="news-list"] .news-grid .card {
  border: 0;
  box-shadow: none;
  background: transparent;
}
main[data-page="news-list"] .news-grid .card:hover {
  transform: none;
  box-shadow: none;
}
main[data-page="news-list"] .news-grid .media {
  border-radius: 8px;
  overflow: hidden;
}
main[data-page="news-list"] .news-grid .card-body { padding: 18px 0 8px; }
main[data-page="news-list"] .news-grid .meta {
  font-size: 13px;
  color: #3d9a63;
  margin-bottom: 8px;
}
main[data-page="news-list"] .news-grid h2 {
  font-size: 20px;
  line-height: 1.45;
  margin: 0 0 10px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  text-overflow: unset;
}
main[data-page="news-list"] .news-grid p {
  font-size: 14px;
  line-height: 1.7;
  color: var(--text-2);
  margin: 0 0 14px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
main[data-page="news-list"] .news-grid time {
  margin-top: 0;
  font-size: 13px;
  color: var(--text-3);
}
main[data-page="news-list"] .news-side {
  margin-top: 48px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}
main[data-page="news-list"] .news-side .side-box { margin-bottom: 0; }
main[data-page="news-list"] [data-block="pagination"] { margin-top: 40px; }
@media (max-width: 992px) {
  .about-pro-grid,
  main[data-page="news-list"] .news-grid,
  main[data-page="news-list"] .news-side {
    grid-template-columns: 1fr;
  }
  .home-about .rounded-media img {
    min-height: 280px;
    aspect-ratio: 4 / 3;
    height: auto;
  }
  .founder-feature {
    grid-template-columns: 1fr;
    padding: 20px;
  }
}


/* ===== 2026-08-14 round2 polish ===== */
.button.button-lg,
a.button.button-lg,
.button.secondary.button-lg {
  min-height: 48px;
  padding: 0 32px;
  font-size: 16px;
}
.text-more {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: auto;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #3d9a63;
  font-size: 15px;
  font-weight: 400;
  box-shadow: none !important;
}
.text-more:hover {
  color: #2f7d50;
  background: transparent !important;
  text-decoration: underline;
}
.section-more .text-more { font-size: 16px; }
main[data-page="index"] .section-more a.text-more {
  border: 0;
  background: transparent;
  color: #3d9a63;
  font-weight: 400;
}
main[data-page="index"] .section-more a.text-more:hover {
  background: transparent;
  color: #2f7d50;
}
[data-block="home-news"] .card-foot { margin-top: 20px; }
.founder-feature {
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 48px;
  max-width: 1120px;
  margin: 0 auto;
  padding: 36px 40px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  align-items: center;
}
.founder-label {
  display: inline-block;
  margin: 0 0 10px;
  color: #3d9a63;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .08em;
}
.founder-copy { min-width: 0; }
.founder-feature h3 { font-size: 36px; margin: 0 0 12px; }
.founder-feature .meta {
  display: block;
  color: var(--text-2);
  font-weight: 400;
  margin-bottom: 16px;
}
.founder-feature p { margin: 0; line-height: 1.9; }
main[data-page="index"] .help-category .category-head {
  border-bottom: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}
main[data-page="index"] .help-category ol { margin-top: 8px; }
main[data-page="index"] .help-category li:first-child { border-top: 1px solid var(--border); }
main[data-page="index"] .help-category .category-head a {
  font-weight: 400;
  color: #3d9a63;
}

.crumb-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 28px 0 8px;
  color: var(--text-3);
  font-size: 14px;
}
.crumb-nav a:hover { color: var(--primary-hover); }
.channel-hero + .crumb-nav {
  padding-top: 18px;
  padding-bottom: 0;
}
.channel-hero + .crumb-nav + .section {
  padding-top: 20px;
}
.crumb-sep { color: var(--text-3); }
.product-detail-hero { margin: 12px auto 40px; }
.product-detail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center;
}
.product-detail-hero h1 {
  margin: 8px 0 16px;
  font-size: 36px;
  line-height: 1.2;
}
.product-detail-lead {
  margin: 0;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.85;
}
.product-detail-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.product-detail-tags a,
.product-detail-tags span {
  padding: 6px 12px;
  border: 1px solid var(--border);
  color: #3d9a63;
  font-size: 14px;
  border-radius: 4px;
}
.product-detail-cover {
  width: 100%;
  height: 360px;
  object-fit: cover;
  border-radius: 12px;
}
.detail-body-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 40px;
  align-items: start;
  padding-bottom: 72px;
}
.detail-body-main > h2 {
  margin: 0 0 18px;
  font-size: 24px;
}
.related-block { margin-top: 48px; }
.related-block-bar {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  margin-bottom: 18px;
}
.related-block-bar h2 { margin: 0; font-size: 22px; }
.related-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.related-card {
  display: block;
  border: 1px solid var(--border);
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
}
.related-card img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.related-card h3 {
  margin: 0;
  padding: 14px 14px 16px;
  font-size: 16px;
  font-weight: 600;
}
.side-contact {
  padding: 22px;
  border-radius: 10px;
  background: #f7fbf9;
  border: 1px solid #d9efe3;
}
.side-contact h2 { margin: 0 0 8px; font-size: 18px; }
.side-contact p { margin: 0 0 14px; color: var(--text-2); }

.person-detail {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 36px;
  margin: 12px auto 72px;
  align-items: start;
}
.person-panel {
  padding: 36px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
}
.person-top {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 32px;
  margin-bottom: 28px;
  align-items: start;
}
.person-role {
  margin: 0 0 8px;
  color: #3d9a63;
  font-size: 14px;
  font-weight: 600;
}
.person-panel h1 {
  margin: 0;
  font-size: 34px;
  line-height: 1.2;
}
.person-meta {
  display: grid;
  gap: 10px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
  color: var(--text-2);
  font-size: 15px;
}
.person-meta li {
  position: relative;
  padding-left: 14px;
}
.person-meta li:before {
  content: "";
  position: absolute;
  left: 0;
  top: .7em;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #3d9a63;
}
.person-photo {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  object-position: center 18%;
  border-radius: 12px;
}
.person-bio [data-slot="intro"] {
  margin: 0 0 18px;
  color: var(--text-2);
  line-height: 1.85;
}

main[data-page="news-list"] .filters {
  justify-content: flex-start;
  margin-bottom: 28px;
}
.news-feed { display: grid; gap: 0; }
main[data-page="news-list"] .news-row {
  grid-template-columns: 240px 1fr;
  gap: 24px;
  padding: 24px 0;
  border: 0;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}
main[data-page="news-list"] .news-row:hover {
  box-shadow: none;
  border-color: transparent;
  border-bottom-color: var(--border);
  background: transparent;
}
main[data-page="news-list"] .news-row h2 {
  font-size: 22px;
  line-height: 1.4;
  margin: 0 0 10px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
}
main[data-page="news-list"] .news-row p {
  font-size: 14px;
  line-height: 1.7;
  margin: 0 0 16px;
}
main[data-page="news-list"] .news-row .card-foot {
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 16px;
}
main[data-page="news-list"] .news-row .meta {
  color: #3d9a63;
  font-size: 13px;
}
.news-hot {
  margin-top: 40px;
  padding-top: 28px;
  border-top: 1px solid var(--border);
}
.news-hot h2 { margin: 0 0 16px; font-size: 20px; }
.news-hot a {
  display: block;
  padding: 10px 0;
  border-bottom: 1px solid var(--border);
  color: var(--text-1);
}
.news-hot a:hover { color: #3d9a63; }

.article-shell { padding: 28px 0 72px; }
.article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 40px;
  align-items: start;
}
.article-main h1 {
  margin: 12px 0 14px;
  font-size: 34px;
  line-height: 1.3;
}
.article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
  color: var(--text-3);
  font-size: 14px;
  margin: 0 0 16px;
}
.article-main .lead {
  margin: 0 0 20px;
  color: var(--text-2);
}
.article-cover {
  margin: 0 0 28px;
  border-radius: 10px;
  overflow: hidden;
}
.article-cover img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.prev-next {
  display: grid;
  gap: 10px;
  margin: 36px 0;
  padding-top: 24px;
  border-top: 1px solid var(--border);
}
.prev-next a { color: var(--text-2); }
.prev-next a:hover { color: #3d9a63; }
.related-list { margin-top: 36px; }
.related-list h2 { margin: 0 0 14px; font-size: 22px; }
.related-list ul { list-style: none; margin: 0; padding: 0; }
.related-list li { border-bottom: 1px solid var(--border); }
.related-list li a { display: block; padding: 12px 0; }
.side-product {
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  margin-bottom: 20px;
}
.side-product img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 8px;
  margin-bottom: 12px;
}
.side-product h2 { margin: 0 0 8px; font-size: 18px; }
.side-product p { margin: 0 0 12px; color: var(--text-2); font-size: 14px; }

main[data-page="help-list"] .help-map-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
main[data-page="help-list"] .help-category {
  box-shadow: none;
  border: 1px solid var(--border);
  border-radius: 10px;
}
main[data-page="help-list"] .help-category .category-head { border-bottom: 0; }
main[data-page="help-list"] .help-category .category-head a {
  font-weight: 400;
  color: #3d9a63;
}
main[data-page="help-list"] .help-category li:first-child {
  border-top: 1px solid var(--border);
}

@media (max-width: 992px) {
  .product-detail-grid,
  .detail-body-layout,
  .person-detail,
  .person-top,
  .article-layout,
  main[data-page="help-list"] .help-map-grid,
  .related-grid {
    grid-template-columns: 1fr;
  }
  main[data-page="news-list"] .news-row {
    grid-template-columns: 1fr;
  }
  .product-detail-cover { height: 240px; }
  .person-photo { max-width: 320px; }
}


/* ===== 2026-08-14 section-head-row ===== */
main[data-page="index"] .section-head-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 28px;
}
main[data-page="index"] .section-head-row h2 {
  margin: 0;
  text-align: left;
  font-size: 40px;
  line-height: 1.25;
  font-weight: 700;
}
.more-btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid #6bbf8a;
  border-radius: 999px;
  color: #3d9a63;
  font-size: 15px;
  font-weight: 400;
  background: #fff;
  transition: .2s ease;
  white-space: nowrap;
}
.more-btn span {
  font-size: 18px;
  line-height: 1;
  transform: translateY(-1px);
}
.more-btn:hover {
  background: #3d9a63;
  border-color: #3d9a63;
  color: #fff;
}
main[data-page="contact"] .clinic-grid {
  grid-template-columns: repeat(5, 1fr);
}
@media (max-width: 1100px) {
  main[data-page="contact"] .clinic-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 992px) {
  main[data-page="index"] .section-head-row {
    flex-wrap: wrap;
    align-items: flex-start;
  }
  main[data-page="index"] .section-head-row h2 { font-size: 32px; }
  main[data-page="contact"] .clinic-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 560px) {
  main[data-page="contact"] .clinic-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== 2026-08-14 round3 ===== */
/* homepage more button */
.more-btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 36px;
  padding: 0 16px;
  border: 1px solid #b8dfc8;
  border-radius: 999px;
  color: #3d9a63;
  font-size: 14px;
  font-weight: 400;
  background: #fff;
  transition: .2s ease;
}
.more-btn:hover {
  background: #3d9a63;
  border-color: #3d9a63;
  color: #fff;
  text-decoration: none;
}

/* homepage news: title bigger + 20px gap before CTA */
main[data-page="index"] [data-block="home-news"] .card h2 {
  font-size: 20px !important;
  line-height: 1.4;
  margin: 0 0 10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
main[data-page="index"] [data-block="home-news"] .card p {
  margin: 0 !important;
  min-height: 2.8em;
}
main[data-page="index"] [data-block="home-news"] .card-foot {
  margin-top: 20px !important;
  padding-top: 0;
}
main[data-page="index"] [data-block="home-news"] .card-cta {
  margin-top: 0 !important;
}

.friendly-title,
main[data-page="index"] .friendly h2.friendly-title,
main[data-page="index"] .friendly h2 {
  font-size: 28px !important;
  font-weight: 600;
}

/* list pages: banner to filters 30px; active green */
.section-list { padding-top: 30px; }
.section-list .filters { margin-top: 0; margin-bottom: 28px; }
main[data-page="product-list"] .channel-hero ~ .section,
main[data-page="case-list"] .channel-hero ~ .section,
main[data-page="expert-list"] .channel-hero ~ .section {
  padding-top: 30px;
}
main[data-page="product-list"] .filters,
main[data-page="case-list"] .filters,
main[data-page="expert-list"] .filters {
  margin-top: 0;
  margin-bottom: 28px;
}
main[data-page="product-list"] .filter.is-active,
main[data-page="product-list"] .filters .filter.is-active,
main[data-page="case-list"] .filter.is-active,
main[data-page="case-list"] .filters .filter.is-active,
main[data-page="expert-list"] .filter.is-active,
main[data-page="expert-list"] .filters .filter.is-active {
  background: var(--primary);
  border-color: var(--primary);
  color: #fff;
  font-weight: 400;
}

/* list cards title 1 line / summary 2 lines */
main[data-page="product-list"] [data-block="list"] h2,
main[data-page="case-list"] [data-block="list"] h2 {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  -webkit-line-clamp: unset;
}
main[data-page="product-list"] [data-block="list"] p,
main[data-page="case-list"] [data-block="list"] p {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.8em;
}

/* product/case detail tags: single layer */
.product-detail-tags a,
.product-detail-tags > span {
  display: inline-flex;
  padding: 6px 12px;
  border: 1px solid var(--border);
  color: #3d9a63;
  font-size: 14px;
  border-radius: 4px;
  background: #fff;
}
.product-detail-tags a span,
.product-detail-tags > span > span {
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font-size: inherit;
}
.detail-main-title {
  font-size: 28px !important;
  font-weight: 700;
  margin: 0 0 20px;
}
.detail-copy,
.detail-copy p,
.detail-copy li,
.detail-copy td,
.detail-copy th,
.detail-copy blockquote {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.85;
}
.detail-copy h2 {
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  margin: 36px 0 14px !important;
  color: var(--text-1) !important;
}
.detail-copy h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  margin: 28px 0 10px !important;
  color: var(--text-1) !important;
}
.detail-copy h4 {
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  margin: 22px 0 8px !important;
  color: var(--text-1) !important;
}
.detail-copy strong { font-weight: 600 !important; }

.side-link-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.side-link-list li {
  border-bottom: 1px solid var(--border);
}
.side-link-list a {
  display: block;
  padding: 12px 0;
  font-size: 15px;
  color: var(--text-1);
}
.side-link-list a:hover { color: #3d9a63; }
.detail-aside .side-box {
  border-radius: 10px;
  box-shadow: 0 6px 18px rgba(23,32,51,.03);
}
.detail-aside .side-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.detail-aside .side-tags a,
.detail-aside .side-tags span {
  padding: 6px 12px;
  border: 1px solid var(--border);
  border-radius: 4px;
  color: #3d9a63;
  font-size: 13px;
  background: #fff;
}

/* expert detail */
.person-lead,
.person-bio .detail-copy,
.person-bio .detail-copy p {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.85;
  color: var(--text-2);
}
.person-bio .detail-copy h2,
.person-bio .detail-copy h3 { display: none; }
.person-panel { border-radius: 12px; }

/* news list like 96editor */
main[data-page="news-list"] .news-hero h1 {
  font-size: 38px;
  margin: 0 auto;
  letter-spacing: .06em;
  line-height: 1.25;
  color: rgba(255, 255, 255, .9);
  font-weight: 600;
}
main[data-page="news-list"] .news-filters {
  justify-content: flex-start;
  gap: 10px;
  margin: 0 0 28px;
  flex-wrap: wrap;
}
main[data-page="news-list"] .news-filters .filter {
  min-height: 36px;
  padding: 0 14px;
  border-radius: 4px;
  font-size: 14px;
  background: #f5f7fa;
  border-color: transparent;
}
main[data-page="news-list"] .news-filters .filter.is-active {
  background: var(--primary);
  color: #fff;
  border-color: var(--primary);
  font-weight: 400;
}
main[data-page="news-list"] .news-feed { display: grid; gap: 0; }
main[data-page="news-list"] .news-row {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 28px;
  padding: 28px 0;
  border: 0;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
main[data-page="news-list"] .news-row:hover {
  background: transparent;
  box-shadow: none;
}
main[data-page="news-list"] .news-row .media,
main[data-page="news-list"] .news-row .media-news {
  aspect-ratio: 16 / 10;
  border-radius: 4px;
  overflow: hidden;
}
main[data-page="news-list"] .news-row h2 {
  font-size: 24px !important;
  line-height: 1.4;
  margin: 0 0 12px;
  font-weight: 700;
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
main[data-page="news-list"] .news-row p {
  font-size: 15px;
  line-height: 1.75;
  color: var(--text-2);
  margin: 0 0 18px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
main[data-page="news-list"] .news-row .card-foot {
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 16px;
}
main[data-page="news-list"] .news-row .meta {
  color: #3d9a63;
  font-size: 14px;
}
.news-more {
  color: #3d9a63;
  font-size: 14px;
  font-weight: 400;
}
.news-more:hover { text-decoration: underline; }
main[data-page="news-list"] .news-pagination {
  margin: 28px 0 40px;
  justify-content: flex-start;
}
main[data-page="news-list"] .news-hot {
  margin-top: 8px;
  padding-top: 28px;
  border-top: 1px solid var(--border);
}
main[data-page="news-list"] .news-hot h2 {
  font-size: 22px;
  margin: 0 0 12px;
}
main[data-page="news-list"] .news-hot a {
  display: block;
  padding: 12px 0;
  border-bottom: 1px solid var(--border);
  font-size: 15px;
}

/* news detail */
.article-related-product {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 16px;
  align-items: center;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  margin: 18px 0 24px;
  background: #fff;
}
.article-related-product img {
  width: 120px;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 6px;
  margin: 0;
}
.article-related-product h2 {
  margin: 0 0 6px;
  font-size: 18px;
}
.article-related-product p {
  margin: 0 0 8px;
  font-size: 14px;
  color: var(--text-2);
}
main[data-page="news-detail"] .article-main h1 {
  font-size: 36px;
  line-height: 1.3;
  margin: 10px 0 12px;
}
main[data-page="news-detail"] .article-meta {
  margin-bottom: 18px;
  font-size: 14px;
  color: var(--text-3);
}

/* help list like 96editor */
main[data-page="help-list"] .help-map-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px;
}
main[data-page="help-list"] .help-category {
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  padding: 0;
  overflow: hidden;
  box-shadow: none;
}
main[data-page="help-list"] .help-category .category-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 16px 20px;
  background: #f5faf7;
  border-bottom: 1px solid #e4f0e9;
}
main[data-page="help-list"] .help-category h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
}
main[data-page="help-list"] .help-category .category-head a {
  color: #3d9a63;
  font-size: 14px;
  font-weight: 400;
  white-space: nowrap;
}
main[data-page="help-list"] .help-category ol {
  margin: 0;
  padding: 4px 20px 12px;
}
main[data-page="help-list"] .help-category li {
  border-top: 0;
  border-bottom: 1px solid var(--border);
}
main[data-page="help-list"] .help-category li:last-child { border-bottom: 0; }
main[data-page="help-list"] .help-category li a {
  min-height: 48px;
  font-size: 15px;
}

/* help detail */
.help-detail-shell { padding: 24px 0 72px; }
.help-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 40px;
  align-items: start;
}
.help-detail-main h1 {
  font-size: 32px;
  line-height: 1.35;
  margin: 10px 0 12px;
}
.help-detail-main .plain-answer {
  margin: 18px 0 28px;
  font-size: 16px;
  line-height: 1.85;
  color: var(--text-2);
  white-space: pre-line;
}
.related-questions-block ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.related-questions-block li {
  border-bottom: 1px solid var(--border);
}
.related-questions-block a {
  display: block;
  padding: 12px 0;
  font-size: 15px;
}

@media (max-width: 992px) {
  main[data-page="news-list"] .news-row,
  main[data-page="help-list"] .help-map-grid,
  .help-detail-layout,
  .article-related-product {
    grid-template-columns: 1fr;
  }
}

/* ===== 2026-08-14 round4 ===== */
/* homepage more button */
.more-btn {
  min-height: 38px;
  padding: 0 18px;
  border: 1px solid #b8dfc8;
  border-radius: 999px;
  color: #3d9a63;
  font-size: 14px;
  font-weight: 400;
  background: #fff;
  box-shadow: 0 4px 12px rgba(61, 154, 99, .06);
}
.more-btn:hover {
  background: #3d9a63;
  border-color: #3d9a63;
  color: #fff;
  box-shadow: 0 8px 18px rgba(61, 154, 99, .18);
}

/* homepage news */
main[data-page="index"] [data-block="home-news"] .card-body {
  display: flex;
  flex-direction: column;
  padding: 20px 20px 22px;
  gap: 0;
}
main[data-page="index"] [data-block="home-news"] .card h2 {
  font-size: 22px !important;
  line-height: 1.4;
  margin: 0 0 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
main[data-page="index"] [data-block="home-news"] .card p {
  margin: 0 !important;
  min-height: 2.8em;
  font-size: 14px;
}
main[data-page="index"] [data-block="home-news"] .card-foot {
  display: block !important;
  margin-top: 20px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}
main[data-page="index"] [data-block="home-news"] .news-more {
  display: inline-flex;
  align-items: center;
  margin-top: 0;
  color: #3d9a63;
  font-size: 15px;
  font-weight: 400;
  border: 0;
  background: transparent;
  padding: 0;
  min-height: auto;
}
main[data-page="index"] [data-block="home-news"] .news-more:hover {
  text-decoration: underline;
  background: transparent;
  color: #2f7d50;
}

.friendly-title,
main[data-page="index"] .friendly h2.friendly-title,
main[data-page="index"] .friendly h2 {
  font-size: 22px !important;
  font-weight: 600;
  letter-spacing: .02em;
}

/* news list = 96editor */
main[data-page="news-list"] .news-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 30px;
  align-items: start;
}
main[data-page="news-list"] .news-filters {
  margin: 0 0 22px;
}
main[data-page="news-list"] .news-feed {
  display: grid;
  gap: 22px;
}
main[data-page="news-list"] .news-card {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 24px;
  align-items: stretch;
  padding: 22px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(23, 32, 51, .04);
  text-decoration: none;
  color: inherit;
}
main[data-page="news-list"] .news-card:hover {
  box-shadow: 0 14px 34px rgba(23, 32, 51, .08);
}
main[data-page="news-list"] .news-card > img,
main[data-page="news-list"] .news-card [data-slot="cover"] {
  width: 100%;
  height: 180px;
  object-fit: cover;
  border-radius: 12px;
  display: block;
}
main[data-page="news-list"] .news-body {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
main[data-page="news-list"] .news-body h2 {
  font-size: 26px !important;
  line-height: 1.35;
  margin: 0 0 10px;
  font-weight: 700;
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
main[data-page="news-list"] .news-body p {
  margin: 0 0 14px;
  color: var(--text-2);
  font-size: 15px;
  line-height: 1.7;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
main[data-page="news-list"] .news-foot {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
main[data-page="news-list"] .news-foot .meta {
  color: #3d9a63;
  font-size: 14px;
  font-weight: 600;
}
main[data-page="news-list"] .news-more {
  font-size: 15px;
  font-weight: 400;
  color: #3d9a63;
}
main[data-page="news-list"] .news-pagination {
  margin: 28px 0 0;
  justify-content: center;
}
main[data-page="news-list"] .news-hot {
  align-self: start;
  position: sticky;
  top: 96px;
  margin: 0;
  padding: 24px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(23, 32, 51, .05);
  border-top: 1px solid var(--border);
}
main[data-page="news-list"] .news-hot h2 {
  margin: 0 0 14px;
  font-size: 22px;
}
main[data-page="news-list"] .news-hot a {
  display: block;
  padding: 13px 0;
  border-bottom: 1px solid var(--border);
  font-size: 15px;
  line-height: 1.5;
}
main[data-page="news-list"] .news-hot a:last-of-type { border-bottom: 0; }

/* news detail relate-card */
.relate-card {
  display: flex;
  align-items: center;
  gap: 20px;
  margin: 0 0 28px;
  padding: 18px 22px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
}
.relate-card .relate-logo {
  flex: 0 0 auto;
  width: 72px;
  height: 72px;
  border: 1px solid var(--border);
  border-radius: 10px;
  overflow: hidden;
  background: #f7faf8;
}
.relate-card .relate-logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
}
.relate-card .relate-info { flex: 1; min-width: 0; }
.relate-card .relate-info h2 {
  margin: 0 0 6px;
  font-size: 18px;
  font-weight: 700;
}
.relate-card .relate-info p {
  margin: 0;
  font-size: 14px;
  color: var(--text-2);
  line-height: 1.6;
}
.relate-card .relate-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid #b8dfc8;
  border-radius: 999px;
  color: #3d9a63;
  font-size: 14px;
  background: #fff;
  white-space: nowrap;
}
.relate-card .relate-btn:hover {
  background: #3d9a63;
  border-color: #3d9a63;
  color: #fff;
}
main[data-page="news-detail"] .article-hero-img {
  width: 100%;
  max-height: 420px;
  object-fit: cover;
  border-radius: 4px;
  margin: 0 0 22px;
}
main[data-page="news-detail"] .article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 30px;
  align-items: start;
}
main[data-page="news-detail"] .article-main h1 {
  font-size: 36px;
  line-height: 1.3;
  margin: 8px 0 12px;
}
main[data-page="news-detail"] .article-meta {
  margin-bottom: 22px;
  font-size: 14px;
  color: var(--text-3);
}

/* help list = 96editor help-cat */
main[data-page="help-list"] .help-map-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
main[data-page="help-list"] .help-category {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #dbe8e0;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(23, 32, 51, .05);
  padding: 0;
}
main[data-page="help-list"] .help-category .category-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0;
  padding: 20px 24px;
  border-bottom: 1px solid #e4efe8;
  background: linear-gradient(120deg, #eaf7f0 0%, #f6fbf8 100%);
}
main[data-page="help-list"] .help-category .category-head h2 {
  margin: 0;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.3;
}
main[data-page="help-list"] .help-category .category-head a {
  color: #3d9a63;
  font-size: 14px;
  font-weight: 400;
  white-space: nowrap;
}
main[data-page="help-list"] .help-category .category-head a:hover {
  text-decoration: underline;
}
main[data-page="help-list"] .help-cat-list {
  padding: 6px 24px 16px;
}
main[data-page="help-list"] .help-cat-list a {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 0;
  border-bottom: 1px solid #eef2f0;
  color: #2b3d48;
  font-size: 15px;
  line-height: 1.5;
  text-decoration: none;
  min-height: auto;
}
main[data-page="help-list"] .help-cat-list a:last-child { border-bottom: 0; }
main[data-page="help-list"] .help-cat-list a:hover .q { color: #3d9a63; }
main[data-page="help-list"] .help-cat-list .idx {
  flex: 0 0 22px;
  color: #8aa396;
  font-size: 14px;
}
main[data-page="help-list"] .help-cat-list .q {
  flex: 1;
  min-width: 0;
}
main[data-page="help-list"] .help-cat-list .arr {
  flex: 0 0 auto;
  color: #8aa396;
  font-size: 18px;
}

/* help detail */
main[data-page="help-detail"] .crumb-nav {
  padding-top: 24px;
  margin-bottom: 18px;
  font-size: 14px;
  color: var(--text-3);
}
main[data-page="help-detail"] .article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 40px;
  align-items: start;
  padding-bottom: 72px;
}
main[data-page="help-detail"] .help-detail-main h1 {
  font-size: 32px;
  line-height: 1.35;
  margin: 0 0 12px;
}
main[data-page="help-detail"] .plain-answer {
  margin: 18px 0 28px;
  font-size: 16px;
  line-height: 1.85;
  color: var(--text-2);
  white-space: pre-line;
  font-weight: 400;
}
main[data-page="help-detail"] .related-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 28px 0 12px;
}
main[data-page="help-detail"] .related-head h2 {
  margin: 0;
  font-size: 22px;
}
main[data-page="help-detail"] .related-grid-plain {
  display: grid;
  gap: 0;
}
main[data-page="help-detail"] .related-grid-plain a {
  display: block;
  padding: 12px 0;
  border-bottom: 1px solid var(--border);
  font-size: 15px;
}
main[data-page="help-detail"] .related-grid-plain a:before {
  content: "• ";
  color: #8aa396;
}

@media (max-width: 1000px) {
  main[data-page="news-list"] .news-layout,
  main[data-page="news-detail"] .article-layout,
  main[data-page="help-detail"] .article-layout,
  main[data-page="help-list"] .help-map-grid {
    grid-template-columns: 1fr;
  }
  main[data-page="news-list"] .news-hot { position: static; }
  main[data-page="news-list"] .news-card {
    grid-template-columns: 1fr;
  }
  main[data-page="news-list"] .news-card > img,
  main[data-page="news-list"] .news-card [data-slot="cover"] {
    height: 220px;
  }
  .relate-card { flex-wrap: wrap; }
}

/* tag single-layer override */
.product-detail-tags span { border: 0; padding: 0; background: transparent; }
.product-detail-tags > [data-slot="tag"],
.product-detail-tags > span[data-item] {
  display: inline-flex;
  padding: 6px 12px;
  border: 1px solid var(--border);
  color: #3d9a63;
  font-size: 14px;
  border-radius: 4px;
  background: #fff;
}

/* ===== 2026-08-14 round5 ===== */
/* homepage card link CTAs: text style, right align */
main[data-page="index"] [data-block="home-products"] .card-body,
main[data-page="index"] [data-block="home-cases"] .card-body,
main[data-page="index"] [data-block="home-news"] .card-body {
  display: flex;
  flex-direction: column;
}
main[data-page="index"] .card-link,
main[data-page="index"] [data-block="home-products"] .news-more,
main[data-page="index"] [data-block="home-cases"] .news-more,
main[data-page="index"] [data-block="home-news"] .news-more {
  display: inline-flex;
  align-self: flex-end;
  margin-top: 20px;
  padding: 0;
  min-height: auto;
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  color: #3d9a63;
  font-size: 15px;
  font-weight: 400;
}
main[data-page="index"] .card-link:hover,
main[data-page="index"] [data-block="home-products"] .news-more:hover,
main[data-page="index"] [data-block="home-cases"] .news-more:hover,
main[data-page="index"] [data-block="home-news"] .news-more:hover,
main[data-page="index"] .card:hover .card-link,
main[data-page="index"] .card:hover .news-more {
  background: transparent !important;
  color: #2f7d50;
  text-decoration: underline;
  border-color: transparent !important;
}
main[data-page="index"] [data-block="home-news"] .card-foot {
  display: flex !important;
  justify-content: flex-end;
  margin-top: 20px !important;
  width: 100%;
}

/* more button restyle */
.more-btn,
.more-btn-soft {
  min-height: 40px;
  padding: 0 20px;
  border: 0;
  border-radius: 8px;
  background: linear-gradient(135deg, #eaf7f0 0%, #f5fbf7 100%);
  color: #3d9a63;
  font-size: 14px;
  font-weight: 500;
  box-shadow: none;
}
.more-btn:hover,
.more-btn-soft:hover {
  background: #3d9a63;
  color: #fff;
  border-color: transparent;
  box-shadow: 0 8px 18px rgba(61, 154, 99, .18);
  text-decoration: none;
}

/* footer */
.footer-qr-wrap { text-align: left !important; }
.footer-qr-box {
  display: flex !important;
  align-items: center;
  justify-content: flex-start !important;
  gap: 14px;
  padding: 14px 18px 14px 10px !important;
  margin-left: 0;
}
.footer-qr {
  width: 110px !important;
  height: 110px !important;
  margin: 0 !important;
}
.footer-qr-text {
  display: flex;
  flex-direction: column;
  gap: 4px;
  text-align: left;
}
.footer-qr-box strong {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
}
.footer-qr-box span {
  font-size: 13px;
  color: rgba(255,255,255,.72);
}
.copyright {
  justify-content: center !important;
  text-align: center;
  gap: 18px;
}

/* list filters 16px */
main[data-page="product-list"] .filters .filter,
main[data-page="case-list"] .filters .filter,
main[data-page="expert-list"] .filters .filter,
main[data-page="news-list"] .filters .filter,
main[data-page="news-list"] .news-filters .filter {
  font-size: 16px !important;
}

/* product/case list CTA text right */
main[data-page="product-list"] [data-block="list"] .card-body,
main[data-page="case-list"] [data-block="list"] .card-body {
  display: flex;
  flex-direction: column;
}
main[data-page="product-list"] [data-block="list"] .news-more,
main[data-page="case-list"] [data-block="list"] .news-more,
main[data-page="product-list"] [data-block="list"] .card-link,
main[data-page="case-list"] [data-block="list"] .card-link {
  align-self: flex-end;
  margin-top: 16px;
  padding: 0;
  min-height: auto;
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  color: #3d9a63;
  font-size: 15px;
  font-weight: 400;
}
main[data-page="product-list"] [data-block="list"] .card:hover .news-more,
main[data-page="case-list"] [data-block="list"] .card:hover .news-more {
  background: transparent !important;
  color: #2f7d50;
  text-decoration: underline;
}

/* product detail: body 16px; headings keep hierarchy */
.detail-main-title {
  font-size: 28px !important;
  font-weight: 700 !important;
}
main[data-page="product-detail"] .detail-copy,
main[data-page="product-detail"] .detail-copy p,
main[data-page="product-detail"] .detail-copy li,
main[data-page="product-detail"] .detail-copy td,
main[data-page="product-detail"] .detail-copy th,
main[data-page="product-detail"] .detail-copy blockquote,
main[data-page="product-detail"] .detail-copy a {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.85 !important;
}
main[data-page="product-detail"] .detail-copy strong {
  font-weight: 600 !important;
}
main[data-page="product-detail"] .detail-copy em {
  font-style: italic !important;
  font-weight: 400 !important;
}
main[data-page="product-detail"] .product-detail-lead,
main[data-page="product-detail"] .product-detail-hero .meta,
main[data-page="product-detail"] .product-detail-tags {
  font-weight: 400 !important;
}

/* sidebar beautify */
.detail-aside-v2 .side-box {
  margin-bottom: 18px;
  padding: 20px 22px;
  border: 1px solid #e6eee9;
  border-radius: 12px;
  background: linear-gradient(180deg, #fff 0%, #f8fbf9 100%);
  box-shadow: 0 8px 24px rgba(23,32,51,.04);
}
.detail-aside-v2 .side-box h2 {
  margin: 0 0 12px;
  font-size: 18px;
  font-weight: 700;
  color: var(--text-1);
}
.detail-aside-v2 .side-link-list a {
  padding: 11px 0;
  font-size: 15px;
}
.detail-aside-v2 .side-tags a,
.detail-aside-v2 .side-tags span {
  border-color: #d7e8dc;
  background: #fff;
}
.detail-aside-v2 .side-contact {
  padding: 22px;
  border-radius: 12px;
  background: #3d9a63;
  color: #fff;
  border: 0;
}
.detail-aside-v2 .side-contact h2 {
  color: #fff;
  margin: 0 0 10px;
  font-size: 18px;
}
.detail-aside-v2 .side-contact p {
  color: rgba(255,255,255,.9);
  margin: 0 0 16px;
  font-size: 14px;
}
.detail-aside-v2 .side-contact .button {
  background: #fff;
  color: #3d9a63;
  border-color: #fff;
}
.detail-aside-v2 .side-contact .button:hover {
  background: #f3faf6;
}

/* help detail full width */
.help-detail-layout { max-width: none !important; }
main[data-page="help-detail"] .help-detail-wide,
main[data-page="help-detail"] .article-layout {
  max-width: none;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 40px;
  align-items: start;
  padding-bottom: 72px;
}
main[data-page="help-detail"] .container.crumb-nav,
main[data-page="help-detail"] .container.help-detail-wide {
  width: min(var(--max), calc(100% - 48px));
  margin-inline: auto;
}

/* about redesigned sections */
.about-split-head,
.about-biz-head {
  max-width: 720px;
  margin-bottom: 36px;
}
.about-split-head h2,
.about-biz-head h2,
.about-spirit-lead h2 {
  margin: 0 0 12px;
  font-size: 36px;
}
.about-split-head p,
.about-biz-head p {
  margin: 0;
  color: var(--text-2);
  font-size: 16px;
}
.about-timeline-rail {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border-top: 2px solid #d7e8dc;
}
.about-rail-item {
  padding: 28px 22px 8px;
  position: relative;
}
.about-rail-item:before {
  content: "";
  position: absolute;
  top: -7px;
  left: 22px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #3d9a63;
  box-shadow: 0 0 0 4px #eaf7f0;
}
.about-rail-item .year {
  display: block;
  margin-bottom: 10px;
  color: #3d9a63;
  font-size: 18px;
  font-weight: 700;
}
.about-rail-item p {
  margin: 0;
  color: var(--text-2);
  font-size: 15px;
  line-height: 1.75;
}
.about-biz-rows { display: grid; gap: 16px; }
.about-biz-row {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  padding: 22px 24px;
  border: 1px solid #e6eee9;
  border-radius: 12px;
  background: #fff;
}
.about-biz-row .biz-no {
  font-size: 28px;
  font-weight: 700;
  color: #b8dfc8;
  line-height: 1;
}
.about-biz-row h3 {
  margin: 0 0 8px;
  font-size: 20px;
}
.about-biz-row p {
  margin: 0;
  color: var(--text-2);
  font-size: 15px;
}
.about-spirit-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 40px;
  align-items: start;
}
.spirit-quote {
  margin: 0;
  font-size: 22px;
  line-height: 1.6;
  color: #3d9a63;
}
.about-spirit-list {
  display: grid;
  gap: 0;
}
.about-spirit-list article {
  padding: 20px 0;
  border-bottom: 1px solid var(--border);
}
.about-spirit-list article:first-child { padding-top: 0; }
.about-spirit-list article:last-child { border-bottom: 0; }
.about-spirit-list h3 {
  margin: 0 0 8px;
  font-size: 18px;
}
.about-spirit-list p {
  margin: 0;
  color: var(--text-2);
  font-size: 15px;
}

/* contact swap + polish */
.contact-layout-v2 {
  grid-template-columns: 1.05fr 0.95fr !important;
  gap: 48px;
}
.contact-layout-v2 .contact-panels {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.contact-layout-v2 .contact-panel {
  padding: 20px 22px;
  border: 1px solid #e6eee9;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(23,32,51,.04);
}
.contact-layout-v2 .contact-panel h3 {
  margin: 0 0 10px;
  font-size: 17px;
}
.contact-layout-v2 .contact-panel p {
  margin: 0 0 6px;
  color: var(--text-2);
  font-size: 14px;
}
.contact-layout-v2 .contact-panel-qr {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 20px;
  align-items: center;
}
.contact-layout-v2 .contact-panel-qr img {
  width: 110px;
  height: 110px;
  object-fit: cover;
  border-radius: 8px;
  grid-row: 1 / span 3;
  grid-column: 2;
}
.message-form-card {
  padding: 28px 28px 24px;
  border: 1px solid #e6eee9;
  border-radius: 14px;
  background: linear-gradient(180deg, #fff 0%, #f8fbf9 100%);
  box-shadow: 0 10px 28px rgba(23,32,51,.05);
}
.message-form-card h2 { font-size: 24px; }
.message-form-card .form-lead {
  margin: -8px 0 4px;
  color: var(--text-2);
  font-size: 14px;
}
.message-form-card input,
.message-form-card textarea {
  border-radius: 8px;
  border-color: #d7e2db;
  background: #fff;
}
.message-form-card input:focus,
.message-form-card textarea:focus {
  outline: 2px solid rgba(61,154,99,.25);
  border-color: #3d9a63;
}

@media (max-width: 992px) {
  .about-timeline-rail,
  .about-spirit-grid,
  .contact-layout-v2,
  .contact-layout-v2 .contact-panels,
  main[data-page="help-detail"] .help-detail-wide {
    grid-template-columns: 1fr;
  }
  .contact-layout-v2 .contact-panel-qr {
    grid-template-columns: 1fr;
  }
  .contact-layout-v2 .contact-panel-qr img {
    grid-row: auto;
    grid-column: auto;
  }
}

/* ===== 2026-08-14 round6 ===== */
/* more button: outline pill */
.more-btn,
.more-btn-line,
.more-btn-soft {
  min-height: 40px;
  padding: 0 18px !important;
  border: 1px solid #3d9a63 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #3d9a63 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: .02em;
  box-shadow: none !important;
  transition: .2s ease;
}
.more-btn:hover,
.more-btn-line:hover,
.more-btn-soft:hover {
  background: #3d9a63 !important;
  color: #fff !important;
  border-color: #3d9a63 !important;
  box-shadow: 0 8px 18px rgba(61,154,99,.2) !important;
  text-decoration: none !important;
}

/* founder redesign */
.founder-feature-v2 {
  display: grid !important;
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr) !important;
  gap: 0 !important;
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid #e6eee9 !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 12px 36px rgba(23, 32, 51, .05);
  align-items: stretch !important;
  text-decoration: none;
  color: inherit;
  transition: box-shadow .25s ease, border-color .25s ease;
}
.founder-feature-v2:hover {
  border-color: #d7e8dd !important;
  box-shadow: 0 16px 40px rgba(23, 32, 51, .08);
}
.founder-feature-v2 .founder-photo,
.founder-feature-v2 .media {
  aspect-ratio: auto !important;
  height: 100%;
  min-height: 380px;
  border-radius: 0 !important;
  margin: 0;
  overflow: hidden;
  background: #e8eef2;
}
.founder-feature-v2 .founder-photo img,
.founder-feature-v2 .media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 14%;
  transition: transform .45s ease;
}
.founder-feature-v2:hover .founder-photo img,
.founder-feature-v2:hover .media img {
  transform: scale(1.03);
}
.founder-feature-v2 .founder-copy {
  position: relative;
  padding: 48px 52px 48px 48px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.founder-feature-v2 .founder-label {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  width: fit-content;
  margin: 0 0 20px;
  margin-right: -.28em;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #2f7d50;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: .28em;
  line-height: 1;
}
.founder-feature-v2 .founder-label::before {
  content: "";
  display: block;
  width: 36px;
  height: 1px;
  background: currentColor;
  flex-shrink: 0;
}
.founder-feature-v2 h3 {
  font-size: 42px !important;
  margin: 0 0 16px !important;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: .02em;
  transition: color .2s ease;
}
.founder-feature-v2 .meta {
  display: block;
  margin: 0 0 22px !important;
  padding: 0 0 22px;
  border-bottom: 1px solid #e6eee9;
  color: #5a6a7d;
  font-size: 15px;
  line-height: 1.75;
  font-weight: 400;
}
.founder-feature-v2 p {
  margin: 0;
  font-size: 15px !important;
  line-height: 1.95 !important;
  color: var(--text-2);
}
.founder-feature-v2:hover h3 { color: #3d9a63; }

/* card title hover green + underline */
main[data-page="index"] [data-block="home-products"] .card h2,
main[data-page="index"] [data-block="home-cases"] .card h2,
main[data-page="index"] [data-block="home-news"] .card h2,
main[data-page="product-list"] [data-block="list"] .card h2,
main[data-page="case-list"] [data-block="list"] .card h2,
main[data-page="expert-list"] [data-block="list"] .card h2,
main[data-page="news-list"] .news-card h2,
main[data-page="news-list"] .news-body h2 {
  transition: color .2s ease;
}
main[data-page="index"] [data-block="home-products"] .card:hover h2,
main[data-page="index"] [data-block="home-cases"] .card:hover h2,
main[data-page="index"] [data-block="home-news"] .card:hover h2,
main[data-page="product-list"] [data-block="list"] .card:hover h2,
main[data-page="case-list"] [data-block="list"] .card:hover h2,
main[data-page="expert-list"] [data-block="list"] .card:hover h2,
main[data-page="news-list"] .news-card:hover h2 {
  color: #3d9a63 !important;
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* homepage FAQ: remove gray lines under soft bg; keep item dividers */
main[data-page="index"] [data-block="home-faqs"] .help-category .category-head,
main[data-page="index"] .help-category .category-head {
  border: 0 !important;
  border-bottom: 0 !important;
  border-top: 0 !important;
}
main[data-page="index"] [data-block="home-faqs"] .help-category li,
main[data-page="index"] [data-block="home-faqs"] .help-category li:first-child {
  border: 0 !important;
  border-top: 0 !important;
  border-bottom: 1px solid var(--border) !important;
}
main[data-page="index"] [data-block="home-faqs"] .help-category li:last-child {
  border-bottom: 0 !important;
}
main[data-page="index"] [data-block="home-faqs"] .help-category li a,
main[data-page="index"] .help-category li a {
  border-bottom: 0 !important;
  box-shadow: none !important;
}
main[data-page="index"] [data-block="home-faqs"] .help-category ol {
  border: 0 !important;
}
main[data-page="index"] [data-block="home-faqs"] .help-category li a::before {
  font-weight: 400 !important;
}
main[data-page="index"] .section.soft + .friendly,
main[data-page="index"] .friendly {
  border-top: 0 !important;
}

/* news list: banner to filters 25px; top align */
main[data-page="news-list"] .channel-hero ~ .section,
main[data-page="news-list"] .news-section {
  padding-top: 25px !important;
}
main[data-page="news-list"] .news-layout {
  align-items: start !important;
}
main[data-page="news-list"] .news-filters {
  margin-top: 0 !important;
  margin-bottom: 22px;
}
main[data-page="news-list"] .news-hot {
  margin-top: 0 !important;
  position: sticky;
  top: 96px;
}

/* about biz / spirit redesign */
.about-biz-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.about-biz-card {
  padding: 28px 26px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid #e6eee9;
  box-shadow: 0 10px 28px rgba(23,32,51,.04);
}
.about-biz-card.is-accent {
  background: linear-gradient(160deg, #3d9a63 0%, #2f7d50 100%);
  border-color: transparent;
  color: #fff;
}
.about-biz-card .biz-tag {
  display: inline-block;
  margin-bottom: 14px;
  padding: 4px 10px;
  border-radius: 999px;
  background: #eaf7f0;
  color: #3d9a63;
  font-size: 12px;
}
.about-biz-card.is-accent .biz-tag {
  background: rgba(255,255,255,.18);
  color: #fff;
}
.about-biz-card h3 {
  margin: 0 0 12px;
  font-size: 22px;
}
.about-biz-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.8;
  color: var(--text-2);
}
.about-biz-card.is-accent p { color: rgba(255,255,255,.92); }
.about-spirit-banner {
  text-align: center;
  margin-bottom: 28px;
}
.about-spirit-banner h2 {
  margin: 0 0 12px;
  font-size: 36px;
}
.about-spirit-banner .spirit-quote {
  margin: 0 auto;
  max-width: 720px;
  font-size: 20px;
  color: #3d9a63;
  line-height: 1.7;
}
.about-spirit-pills {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.about-spirit-pills article {
  padding: 26px 24px;
  border-radius: 14px;
  background: #fff;
  border-top: 3px solid #3d9a63;
  box-shadow: 0 10px 26px rgba(23,32,51,.05);
}
.about-spirit-pills h3 {
  margin: 0 0 10px;
  font-size: 18px;
}
.about-spirit-pills p {
  margin: 0;
  color: var(--text-2);
  font-size: 15px;
  line-height: 1.75;
}

/* side panel: strong shared redesign */
.side-panel {
  display: grid;
  gap: 18px;
  align-content: start;
}
.side-panel .side-box,
.side-panel .side-contact,
.article-side.side-panel .side-box,
.article-side.side-panel .side-contact {
  margin: 0 !important;
  padding: 22px 22px 18px !important;
  border: 1px solid #dfece4 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 12px 30px rgba(23,32,51,.05) !important;
}
.side-panel .side-box h2,
.side-panel .side-contact h2,
.article-side.side-panel .side-box h2 {
  position: relative;
  margin: 0 0 16px !important;
  padding-bottom: 12px;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--text-1) !important;
  border-bottom: 1px solid #eef3f0;
}
.side-panel .side-box h2::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 36px;
  height: 2px;
  background: #3d9a63;
}
.side-panel .side-link-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.side-panel .side-link-list li {
  border-bottom: 1px dashed #e7efea;
}
.side-panel .side-link-list li:last-child { border-bottom: 0; }
.side-panel .side-link-list a,
.side-panel .side-box > a {
  display: block;
  padding: 12px 0 !important;
  font-size: 15px !important;
  color: #4f5f73;
  line-height: 1.55;
  border-bottom: 0 !important;
}
.side-panel .side-link-list a:hover,
.side-panel .side-box > a:hover {
  color: #3d9a63 !important;
  padding-left: 4px !important;
}
/* 相关案例 / 相关专题：悬停变绿 + 下划线 */
.side-panel .side-box-uline .side-link-list a {
  overflow: visible !important;
  padding-bottom: 2px !important;
}
.side-panel .side-box-uline .side-link-list a,
.side-panel .side-box-uline .side-link-list a span {
  text-decoration: none;
}
.side-panel .side-box-uline .side-link-list a:hover,
.side-panel .side-box-uline .side-link-list a:hover span,
.side-panel .side-box-uline .side-link-list a:hover [data-slot="name"],
.side-panel .side-box-uline .side-link-list a:hover [data-slot="title"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  padding-left: 0 !important;
}
.side-panel .side-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.side-panel .side-tags a,
.side-panel .side-tags span {
  padding: 6px 12px !important;
  border: 1px solid #d5e8db !important;
  border-radius: 999px !important;
  background: #f4faf6 !important;
  color: #3d9a63 !important;
  font-size: 13px !important;
}
.side-panel .side-contact {
  background: linear-gradient(145deg, #3d9a63 0%, #2f7d50 100%) !important;
  border: 0 !important;
  color: #fff !important;
}
.side-panel .side-contact h2 {
  color: #fff !important;
  border-bottom-color: rgba(255,255,255,.2) !important;
  padding-bottom: 10px;
}
.side-panel .side-contact h2::before { background: #fff; }
.side-panel .side-contact p {
  color: rgba(255,255,255,.9) !important;
  margin: 0 0 16px !important;
  font-size: 14px !important;
  line-height: 1.7;
}
.side-panel .side-contact .button {
  width: 100%;
  background: #fff !important;
  color: #3d9a63 !important;
  border-color: #fff !important;
  font-weight: 500;
}
.side-panel .side-contact .button:hover {
  background: #f3faf6 !important;
}
.side-panel .side-box time {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  color: var(--text-3);
}

/* contact left stack */
.contact-stack {
  display: grid;
  gap: 14px;
}
.contact-stack-item {
  padding: 18px 20px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid #e6eee9;
  box-shadow: 0 8px 22px rgba(23,32,51,.04);
}
.contact-stack-item .cs-label {
  display: inline-block;
  margin-bottom: 8px;
  padding: 2px 10px;
  border-radius: 999px;
  background: #eaf7f0;
  color: #3d9a63;
  font-size: 12px;
  font-weight: 600;
}
.contact-stack-item p {
  margin: 0;
  font-size: 15px;
  color: var(--text-1);
  line-height: 1.6;
}
.contact-stack-item .cs-sub {
  margin-top: 6px !important;
  font-size: 13px !important;
  color: var(--text-3) !important;
}
.contact-stack-qr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.contact-stack-qr img {
  width: 96px;
  height: 96px;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid #e6eee9;
  flex-shrink: 0;
}

@media (max-width: 992px) {
  .founder-feature-v2 {
    grid-template-columns: 1fr !important;
  }
  .founder-feature-v2 .founder-photo,
  .founder-feature-v2 .media {
    min-height: 320px;
    max-height: 420px;
  }
  .founder-feature-v2 .founder-copy {
    padding: 28px 24px 32px;
  }
  .founder-feature-v2 h3 {
    font-size: 32px !important;
  }
  .about-biz-cards,
  .about-spirit-pills {
    grid-template-columns: 1fr;
  }
}

/* ===== index section "查看更多" ===== */
main[data-page="index"] .section-head-row .more-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: auto !important;
  padding: 8px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--text-2) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  letter-spacing: .12em;
  line-height: 1;
  box-shadow: none !important;
  transform: none !important;
  transition: color .22s ease;
}
main[data-page="index"] .section-head-row .more-btn::after {
  content: "";
  width: 36px;
  height: 1px;
  background: currentColor;
  transition: width .25s ease, background-color .22s ease;
}
main[data-page="index"] .section-head-row .more-btn span {
  position: relative;
}
main[data-page="index"] .section-head-row .more-btn span::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6px;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .25s ease;
}
main[data-page="index"] .section-head-row .more-btn:hover,
main[data-page="index"] .section-head-row .more-btn:focus-visible {
  color: var(--primary) !important;
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  text-decoration: none !important;
}
main[data-page="index"] .section-head-row .more-btn:hover::after,
main[data-page="index"] .section-head-row .more-btn:focus-visible::after {
  width: 52px;
  background: var(--primary);
}
main[data-page="index"] .section-head-row .more-btn:hover span::after,
main[data-page="index"] .section-head-row .more-btn:focus-visible span::after {
  transform: scaleX(1);
}
main[data-page="index"] .section-head-row .more-btn:active {
  transform: none !important;
  box-shadow: none !important;
}

/* homepage news = match home cases typography / CTA */
main[data-page="index"] [data-block="home-news"] .card-body {
  display: flex !important;
  flex-direction: column;
  padding: 18px 20px 22px !important;
  gap: 0 !important;
}
main[data-page="index"] [data-block="home-news"] .card h2 {
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal !important;
  text-overflow: unset !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  margin: 0 0 10px !important;
  color: var(--text-1);
  font-weight: 700;
}
main[data-page="index"] [data-block="home-news"] .card p {
  margin: 0 !important;
  min-height: 0 !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: var(--text-2) !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
main[data-page="index"] [data-block="home-news"] .news-more,
main[data-page="index"] [data-block="home-news"] .card-link {
  display: inline-flex !important;
  align-self: flex-end;
  margin-top: 20px !important;
  padding: 0 !important;
  min-height: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #3d9a63 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}
main[data-page="index"] [data-block="home-news"] .card:hover .news-more,
main[data-page="index"] [data-block="home-news"] .news-more:hover {
  background: transparent !important;
  color: #2f7d50 !important;
  text-decoration: underline;
}

/* ===== homepage 16px text pass ===== */
main[data-page="index"] .section-head-row .more-btn {
  font-size: 16px !important;
}
main[data-page="index"] [data-block="home-products"] .card p,
main[data-page="index"] [data-block="home-cases"] .card p,
main[data-page="index"] [data-block="home-news"] .card p {
  font-size: 16px !important;
}
main[data-page="index"] [data-block="home-products"] .news-more,
main[data-page="index"] [data-block="home-products"] .card-link,
main[data-page="index"] [data-block="home-cases"] .news-more,
main[data-page="index"] [data-block="home-cases"] .card-link,
main[data-page="index"] [data-block="home-news"] .news-more,
main[data-page="index"] [data-block="home-news"] .card-link {
  font-size: 16px !important;
}
main[data-page="index"] .founder-feature-v2 .meta,
main[data-page="index"] .founder-feature-v2 p {
  font-size: 16px !important;
}
main[data-page="index"] [data-block="home-faqs"] .help-category .category-head a {
  font-size: 16px !important;
}
main[data-page="index"] [data-block="home-faqs"] .help-category li a,
main[data-page="index"] [data-block="home-faqs"] .help-category li a [data-slot="question"],
main[data-page="index"] [data-block="home-faqs"] .help-category li a .faq-arrow {
  font-size: 16px !important;
}
main[data-page="index"] [data-block="home-faqs"] .help-category li a::before {
  font-size: 16px !important;
  font-weight: 400 !important;
}
main[data-page="index"] [data-block="friendly-links"] .friendly-list a,
main[data-page="index"] .friendly-list a {
  font-size: 16px !important;
}
/* ===== 2026-08-15 multi-page polish ===== */
.about-rail-item p,
.about-biz-card p {
  font-size: 16px !important;
  line-height: 1.8;
}
.about-biz-card.is-accent {
  background: #fff !important;
  border: 1px solid #e6eee9 !important;
  color: inherit !important;
}
.about-biz-card.is-accent .biz-tag {
  background: #eaf7f0 !important;
  color: #3d9a63 !important;
}
.about-biz-card.is-accent p {
  color: var(--text-2) !important;
}
.about-spirit-head {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 36px;
}
.about-spirit-head h2 {
  margin: 0 0 14px;
  font-size: 36px;
}
.about-spirit-head .spirit-quote {
  margin: 0;
  color: #3d9a63;
  font-size: 18px;
  line-height: 1.7;
}
.about-spirit-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.about-spirit-steps article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  padding: 28px 24px;
  background: #fff;
  border: 1px solid #e6eee9;
  border-radius: 14px;
}
.about-spirit-steps .spirit-no {
  color: #b8dfc8;
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
}
.about-spirit-steps h3 {
  margin: 0 0 10px;
  font-size: 18px;
}
.about-spirit-steps p {
  margin: 0;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.75;
}
main[data-page="product-list"] [data-block="list"] .card p,
main[data-page="case-list"] [data-block="list"] .card p {
  font-size: 16px !important;
  line-height: 1.7 !important;
}
main[data-page="product-list"] [data-block="list"] .news-more,
main[data-page="product-list"] [data-block="list"] .card-link,
main[data-page="case-list"] [data-block="list"] .news-more,
main[data-page="case-list"] [data-block="list"] .card-link {
  font-size: 16px !important;
}
main[data-page="case-list"] [data-block="list"] .card h2,
main[data-page="product-list"] [data-block="list"] .card h2,
main[data-page="case-list"] .case-card .card-body h2 {
  font-size: 21px !important;
  line-height: 1.45 !important;
}
main[data-page="expert-list"] .expert-card .meta,
main[data-page="expert-list"] .expert-card p {
  font-size: 16px !important;
  line-height: 1.7;
}
main[data-page="expert-list"] .expert-card .meta {
  font-weight: 400 !important;
  color: var(--text-2) !important;
}
main[data-page="news-list"] .news-section {
  padding-top: 30px !important;
}
main[data-page="news-list"] .news-filters {
  justify-content: center !important;
  margin: 0 0 28px !important;
}
main[data-page="news-list"] .news-filters .filter {
  min-height: 44px !important;
  padding: 0 18px !important;
  border: 1px solid var(--border) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: var(--text-1) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
}
main[data-page="news-list"] .news-filters .filter.is-active {
  background: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #fff !important;
  font-weight: 400 !important;
}
main[data-page="news-list"] .news-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 30px;
  align-items: start !important;
}
main[data-page="news-list"] .news-hot {
  margin-top: 0 !important;
  position: sticky;
  top: 96px;
}
main[data-page="news-list"] .news-body h2 {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: block !important;
  -webkit-line-clamp: unset !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  margin: 0 0 10px !important;
}
main[data-page="news-list"] .news-body p {
  font-size: 16px !important;
  line-height: 1.7 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin: 0 0 16px !important;
}
main[data-page="news-list"] .news-foot .meta {
  display: inline-flex !important;
  align-items: center;
  min-height: 28px;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: #eaf7f0 !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}
main[data-page="news-list"] .news-more {
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #3d9a63 !important;
}
main[data-page="help-list"] .channel-hero ~ .section {
  padding-top: 30px !important;
}
main[data-page="help-list"] .help-category .category-head a {
  font-size: 16px !important;
  font-weight: 400 !important;
}
main[data-page="help-list"] .help-cat-list .idx,
main[data-page="help-list"] .help-cat-list .q,
main[data-page="help-list"] .help-cat-list .arr {
  font-size: 16px !important;
  font-weight: 400 !important;
}
.contact-side-panel {
  padding: 28px 26px;
  border: 1px solid #e6eee9;
  border-radius: 16px;
  background: linear-gradient(180deg, #fff 0%, #f7fbf9 100%);
  box-shadow: 0 12px 30px rgba(23, 32, 51, .04);
}
.contact-side-title {
  margin: 0 0 20px;
  font-size: 22px;
}
.contact-side-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0;
}
.contact-side-list li {
  padding: 14px 0;
  border-bottom: 1px solid #e8eee9;
}
.contact-side-list li:last-child { border-bottom: 0; }
.contact-side-list .cs-label {
  display: block;
  margin-bottom: 6px;
  color: #3d9a63;
  font-size: 13px;
  letter-spacing: .08em;
}
.contact-side-list p {
  margin: 0;
  color: var(--text-1);
  font-size: 16px;
  line-height: 1.6;
}
.contact-side-qr {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid #e8eee9;
}
.contact-side-qr img {
  width: 88px;
  height: 88px;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid #e6eee9;
  flex-shrink: 0;
}
.contact-side-qr strong {
  display: block;
  margin-bottom: 4px;
  font-size: 15px;
}
.contact-side-qr span {
  display: block;
  color: var(--text-2);
  font-size: 13px;
  line-height: 1.5;
}
main[data-page="contact"] .clinic-card h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  margin: 0 0 10px !important;
}
main[data-page="contact"] .clinic-card p {
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: var(--text-2) !important;
  margin: 0 0 6px !important;
}
.contact-prep {
  display: grid;
  grid-template-columns: minmax(220px, 320px) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
  padding: 32px 34px;
  border-radius: 16px;
  border: 1px solid #e6eee9;
  background: #fff;
  box-shadow: 0 12px 30px rgba(23, 32, 51, .04);
}
.contact-prep-head h2 {
  margin: 0 0 10px;
  font-size: 24px;
}
.contact-prep-head p {
  margin: 0;
  color: var(--text-2);
  font-size: 15px;
  line-height: 1.7;
}
.contact-prep-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 12px;
  counter-reset: prep;
}
.contact-prep-list li {
  position: relative;
  padding: 14px 16px 14px 52px;
  border-radius: 10px;
  background: #f7fbf9;
  color: var(--text-1);
  font-size: 16px;
  line-height: 1.7;
  counter-increment: prep;
}
.contact-prep-list li::before {
  content: counter(prep, decimal-leading-zero);
  position: absolute;
  left: 14px;
  top: 14px;
  color: #3d9a63;
  font-size: 15px;
  font-weight: 700;
}
@media (max-width: 992px) {
  .about-spirit-steps,
  .contact-prep {
    grid-template-columns: 1fr;
  }
  main[data-page="news-list"] .news-layout {
    grid-template-columns: 1fr;
  }
}
/* ===== 2026-08-15 polish fix: match product filters + help 16px ===== */
main[data-page="news-list"] .news-filters {
  justify-content: center !important;
  gap: 12px !important;
  margin: 0 0 28px !important;
}
main[data-page="news-list"] .news-filters .filter {
  min-height: 44px !important;
  padding: 0 20px !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: var(--text-2) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
}
main[data-page="news-list"] .news-filters .filter:hover {
  border-color: var(--primary) !important;
  color: var(--primary-hover) !important;
}
main[data-page="news-list"] .news-filters .filter.is-active {
  background: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #fff !important;
  font-weight: 400 !important;
}
main[data-page="help-list"] .channel-hero ~ .section {
  padding-top: 30px !important;
}
main[data-page="help-list"] .help-category .category-head a {
  font-size: 16px !important;
  font-weight: 400 !important;
}
main[data-page="help-list"] .help-cat-list a,
main[data-page="help-list"] .help-cat-list .idx,
main[data-page="help-list"] .help-cat-list .q,
main[data-page="help-list"] .help-cat-list .arr {
  font-size: 16px !important;
  font-weight: 400 !important;
}
main[data-page="help-list"] .help-cat-list .arr {
  line-height: 1 !important;
}
/* ===== 2026-08-15 polish round 2 ===== */

/* about: spirit board layout */
.about-spirit-v3 .about-spirit-board {
  display: grid;
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
  gap: 28px;
  align-items: stretch;
  padding: 8px;
  border-radius: 20px;
  background: linear-gradient(135deg, #eaf7f0 0%, #f7fbf9 48%, #fff 100%);
  border: 1px solid #dceee3;
}
.about-spirit-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 36px 32px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid #e6eee9;
}
.about-spirit-intro .spirit-kicker {
  margin: 0 0 16px;
  color: #3d9a63;
  font-size: 14px;
  letter-spacing: .12em;
}
.about-spirit-intro h2 {
  margin: 0;
  font-size: 30px;
  line-height: 1.45;
  font-weight: 700;
  color: #122033;
}
.about-spirit-cols {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.about-spirit-cols article {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 28px 22px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid #e6eee9;
  border-top: 3px solid #3d9a63;
}
.about-spirit-cols h3 {
  margin: 0 0 12px;
  font-size: 18px;
}
.about-spirit-cols p {
  margin: 0;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.75;
}

/* expert headline style */
main[data-page="expert-list"] .expert-card .meta,
main[data-page="expert-list"] .expert-card [data-slot="headline"] {
  display: inline-block !important;
  margin: 0 0 12px !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  background: #eaf7f0 !important;
  color: #2f7d50 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.5 !important;
}

/* news: filters left align only */
main[data-page="news-list"] .news-filters {
  justify-content: flex-start !important;
}

/* news: card hover lift */
main[data-page="news-list"] .news-card {
  transition: transform .25s ease, box-shadow .25s ease !important;
}
main[data-page="news-list"] .news-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 18px 36px rgba(23, 32, 51, .1) !important;
}

/* help list: hover underline */
main[data-page="help-list"] .help-cat-list a:hover .q,
main[data-page="help-list"] .help-cat-list a:hover [data-slot="question"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 4px;
}

/* contact: equal height panels + title match */
main[data-page="contact"] .contact-layout-v2 {
  display: grid !important;
  grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
  gap: 28px;
  align-items: stretch !important;
}
main[data-page="contact"] .contact-info-col,
main[data-page="contact"] .contact-side-panel,
main[data-page="contact"] .message-form-card {
  height: 100%;
}
main[data-page="contact"] .contact-side-panel {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}
main[data-page="contact"] .contact-side-title,
main[data-page="contact"] .message-form-card > h2 {
  margin: 0 0 12px !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}
main[data-page="contact"] .contact-side-qr {
  margin-top: auto !important;
}
main[data-page="contact"] .contact-side-qr img {
  width: 128px !important;
  height: 128px !important;
}
main[data-page="contact"] .message-form-card .button[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 28px;
  border: 0;
  border-radius: 10px;
  background: linear-gradient(135deg, #45a86d 0%, #2f7d50 100%);
  color: #fff;
  font-size: 16px !important;
  font-weight: 600;
  letter-spacing: .04em;
  box-shadow: 0 10px 22px rgba(47, 125, 80, .28);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
main[data-page="contact"] .message-form-card .button[type="submit"]:hover {
  transform: translateY(-2px);
  filter: brightness(1.03);
  box-shadow: 0 14px 26px rgba(47, 125, 80, .34);
}
main[data-page="contact"] .clinic-card h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  margin: 0 0 10px !important;
}
main[data-page="contact"] .clinic-card p {
  font-size: 16px !important;
  line-height: 1.7 !important;
  margin: 0 0 6px !important;
}
main[data-page="contact"] .contact-prep {
  align-items: stretch !important;
}
main[data-page="contact"] .contact-prep-head {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  min-height: 100%;
  align-self: stretch;
}

@media (max-width: 992px) {
  .about-spirit-v3 .about-spirit-board,
  .about-spirit-cols,
  main[data-page="contact"] .contact-layout-v2 {
    grid-template-columns: 1fr !important;
  }
  main[data-page="contact"] .contact-info-col,
  main[data-page="contact"] .contact-side-panel,
  main[data-page="contact"] .message-form-card {
    height: auto;
  }
}
/* ===== 2026-08-15 polish round 3 ===== */

/* about spirit v4: centered quote + connected row */
.about-spirit-v4 .about-spirit-top {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 40px;
}
.about-spirit-v4 .about-spirit-top h2 {
  margin: 0 0 14px;
  font-size: 36px;
}
.about-spirit-v4 .spirit-quote {
  margin: 0;
  color: #3d9a63;
  font-size: 18px;
  line-height: 1.8;
}
.about-spirit-v4 .about-spirit-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border: 1px solid #e0ebe4;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
}
.about-spirit-v4 .about-spirit-row article {
  position: relative;
  padding: 36px 28px 34px;
  text-align: left;
  background: #fff;
}
.about-spirit-v4 .about-spirit-row article + article {
  border-left: 1px solid #e0ebe4;
}
.about-spirit-v4 .spirit-mark {
  display: block;
  width: 36px;
  height: 3px;
  margin-bottom: 18px;
  border-radius: 999px;
  background: #3d9a63;
}
.about-spirit-v4 .about-spirit-row h3 {
  margin: 0 0 12px;
  font-size: 20px;
}
.about-spirit-v4 .about-spirit-row p {
  margin: 0;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.75;
}

/* expert title more rounded */
main[data-page="expert-list"] .expert-card .meta,
main[data-page="expert-list"] .expert-card [data-slot="headline"] {
  border-radius: 999px !important;
  padding: 5px 12px !important;
}

/* contact typography + clinic layout */
main[data-page="contact"] .contact-side-list .cs-label {
  font-size: 15px !important;
  letter-spacing: .06em;
}
main[data-page="contact"] .contact-side-qr strong {
  font-size: 16px !important;
  font-weight: 700 !important;
}
main[data-page="contact"] .contact-side-qr span {
  font-size: 15px !important;
}
main[data-page="contact"] .message-form-card .form-lead {
  font-size: 15px !important;
}
main[data-page="contact"] .message-form-card .form-status {
  font-size: 15px !important;
}
main[data-page="contact"] .clinic-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
}
main[data-page="contact"] .clinic-card {
  text-align: left !important;
}
main[data-page="contact"] .clinic-card img {
  margin-left: 0 !important;
  margin-right: auto !important;
}
main[data-page="contact"] .clinic-card h3,
main[data-page="contact"] .clinic-card p {
  text-align: left !important;
}
main[data-page="contact"] .contact-prep-head p {
  font-size: 16px !important;
  line-height: 1.7 !important;
}

@media (max-width: 992px) {
  .about-spirit-v4 .about-spirit-row {
    grid-template-columns: 1fr;
  }
  .about-spirit-v4 .about-spirit-row article + article {
    border-left: 0;
    border-top: 1px solid #e0ebe4;
  }
  main[data-page="contact"] .clinic-grid {
    grid-template-columns: 1fr !important;
  }
}
@media (min-width: 993px) and (max-width: 1200px) {
  main[data-page="contact"] .clinic-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
/* ===== 2026-08-15 spirit polish + clinic align ===== */
.about-spirit-v4 .about-spirit-top {
  position: relative;
  padding-bottom: 8px;
}
.about-spirit-v4 .about-spirit-top::after {
  content: "";
  display: block;
  width: 48px;
  height: 3px;
  margin: 18px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, #3d9a63, #7bc89a);
}
.about-spirit-v4 .spirit-quote {
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 12px;
}
.about-spirit-v4 .about-spirit-row {
  box-shadow: 0 14px 36px rgba(23, 32, 51, .05);
  background: linear-gradient(180deg, #fff 0%, #f8fbf9 100%);
}
.about-spirit-v4 .about-spirit-row article {
  padding: 40px 30px 38px;
  transition: background .2s ease;
}
.about-spirit-v4 .about-spirit-row article:hover {
  background: #f3faf6;
}
.about-spirit-v4 .spirit-no {
  display: inline-block;
  margin-bottom: 16px;
  color: #3d9a63;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
}
.about-spirit-v4 .about-spirit-row h3 {
  position: relative;
  padding-bottom: 14px;
  margin-bottom: 14px;
}
.about-spirit-v4 .about-spirit-row h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 28px;
  height: 2px;
  border-radius: 999px;
  background: #3d9a63;
}

main[data-page="contact"] #clinics .section-head,
main[data-page="contact"] #clinics .section-head-center {
  text-align: center !important;
  justify-content: center !important;
}
main[data-page="contact"] #clinics .section-head h2 {
  text-align: center !important;
  width: 100%;
}
main[data-page="contact"] .clinic-card {
  text-align: left !important;
}
main[data-page="contact"] .clinic-card img {
  display: block !important;
  margin: 0 auto 14px !important;
}
main[data-page="contact"] .clinic-card h3 {
  text-align: center !important;
  margin-bottom: 14px !important;
}
main[data-page="contact"] .clinic-card p {
  text-align: left !important;
}
/* ===== 2026-08-15 product-detail polish ===== */
main[data-page="product-detail"] .product-detail-hero .meta[data-slot="category"] {
  font-size: 15px !important;
  font-weight: 400 !important;
  color: #3d9a63 !important;
}

main[data-page="product-detail"] .product-detail-tags {
  gap: 10px !important;
  margin-top: 22px !important;
}
main[data-page="product-detail"] .product-detail-tags > [data-slot="tag"],
main[data-page="product-detail"] .product-detail-tags > span[data-item],
main[data-page="product-detail"] .product-detail-tags > a {
  display: inline-flex !important;
  align-items: center;
  min-height: 32px;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #eaf7f0 !important;
  color: #2f7d50 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
}
main[data-page="product-detail"] .product-detail-tags span,
main[data-page="product-detail"] .product-detail-tags a span {
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: inherit !important;
  border-radius: 0 !important;
}
main[data-page="product-detail"] .product-detail-tags > [data-slot="tag"],
main[data-page="product-detail"] .product-detail-tags > span[data-item] {
  background: #eaf7f0 !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
}

main[data-page="product-detail"] .related-card h3,
main[data-page="product-detail"] .related-card [data-slot="name"] {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  color: var(--text-1);
}
main[data-page="product-detail"] .related-block-bar .text-more {
  font-size: 16px !important;
  font-weight: 400 !important;
}

/* product-detail sidebar only */
main[data-page="product-detail"] .side-panel .side-box h2,
main[data-page="product-detail"] .side-panel .side-contact h2 {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 14px !important;
}
main[data-page="product-detail"] .side-panel .side-box h2::before,
main[data-page="product-detail"] .side-panel .side-contact h2::before {
  display: none !important;
  content: none !important;
}

main[data-page="product-detail"] .side-panel .side-link-list a,
main[data-page="product-detail"] .side-panel .side-link-list a [data-slot="title"],
main[data-page="product-detail"] .side-panel .side-link-list a [data-slot="name"] {
  font-size: 16px !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.5 !important;
}
main[data-page="product-detail"] .side-panel .side-link-list a {
  max-width: 100%;
}

/* related tags: single layer, no double box */
main[data-page="product-detail"] .side-panel .side-tags a {
  display: inline-flex !important;
  align-items: center;
  min-height: 30px;
  padding: 0 12px !important;
  border: 1px solid #d5e8db !important;
  border-radius: 999px !important;
  background: #f4faf6 !important;
  color: #2f7d50 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
}
main[data-page="product-detail"] .side-panel .side-tags a [data-slot="tag"],
main[data-page="product-detail"] .side-panel .side-tags a span {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  display: inline !important;
}

/* contact card polish */
main[data-page="product-detail"] .side-panel .side-contact {
  padding: 24px 22px !important;
  border-radius: 16px !important;
  background: linear-gradient(150deg, #45a86d 0%, #2f7d50 100%) !important;
  box-shadow: 0 14px 28px rgba(47, 125, 80, .22) !important;
}
main[data-page="product-detail"] .side-panel .side-contact h2 {
  font-size: 18px !important;
  margin-bottom: 10px !important;
}
main[data-page="product-detail"] .side-panel .side-contact p {
  font-size: 15px !important;
  margin-bottom: 18px !important;
  line-height: 1.7 !important;
}
main[data-page="product-detail"] .side-panel .side-contact .button {
  min-height: 44px !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.08);
  transition: transform .2s ease, box-shadow .2s ease;
}
main[data-page="product-detail"] .side-panel .side-contact .button:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0,0,0,.12);
}
/* ===== about spirit v5: simple & spacious ===== */
.about-spirit-v5 {
  padding-top: 72px;
  padding-bottom: 72px;
}
.about-spirit-simple {
  text-align: center;
  max-width: 1080px;
}
.about-spirit-simple .spirit-label {
  margin: 0 0 18px;
  color: #3d9a63;
  font-size: 14px;
  letter-spacing: .18em;
}
.about-spirit-simple .spirit-quote {
  margin: 0 auto 48px;
  max-width: 820px;
  color: #122033;
  font-size: clamp(26px, 3.2vw, 36px);
  font-weight: 700;
  line-height: 1.55;
  letter-spacing: .02em;
}
.about-spirit-simple .spirit-values {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid #dce8e1;
}
.about-spirit-simple .spirit-values article {
  padding: 36px 28px 8px;
  text-align: center;
}
.about-spirit-simple .spirit-values article + article {
  border-left: 1px solid #dce8e1;
}
.about-spirit-simple .spirit-values h3 {
  margin: 0 0 12px;
  font-size: 20px;
  font-weight: 700;
  color: #122033;
}
.about-spirit-simple .spirit-values p {
  margin: 0 auto;
  max-width: 260px;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.8;
  font-weight: 400;
}
@media (max-width: 768px) {
  .about-spirit-simple .spirit-values {
    grid-template-columns: 1fr;
  }
  .about-spirit-simple .spirit-values article + article {
    border-left: 0;
    border-top: 1px solid #dce8e1;
  }
  .about-spirit-simple .spirit-values article {
    padding: 28px 12px;
  }
}
/* ===== about spirit v6 ===== */
.about-spirit-v6 {
  padding-top: 0;
  padding-bottom: 0;
  background: transparent;
}
.about-spirit-v6 .spirit-shell {
  display: grid;
  grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
  gap: 48px;
  align-items: center;
  padding: 48px 52px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid #e4eee8;
}
.about-spirit-v6 .spirit-head h2 {
  margin: 0 0 16px;
  font-size: 34px;
  line-height: 1.25;
  color: #122033;
}
.about-spirit-v6 .spirit-head p {
  margin: 0;
  color: #3d9a63;
  font-size: 18px;
  line-height: 1.75;
}
.about-spirit-v6 .spirit-list {
  display: grid;
  gap: 0;
}
.about-spirit-v6 .spirit-list article {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 24px;
  align-items: baseline;
  padding: 22px 0;
  border-top: 1px solid #e8f0eb;
}
.about-spirit-v6 .spirit-list article:first-child {
  border-top: 0;
  padding-top: 0;
}
.about-spirit-v6 .spirit-list article:last-child {
  padding-bottom: 0;
}
.about-spirit-v6 .spirit-list h3 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  color: #122033;
}
.about-spirit-v6 .spirit-list p {
  margin: 0;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.75;
  font-weight: 400;
}
@media (max-width: 900px) {
  .about-spirit-v6 .spirit-shell {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 32px 24px;
  }
  .about-spirit-v6 .spirit-list article {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
main[data-page="about"] .about-spirit-v6 .spirit-head p {
  font-size: 16px !important;
  line-height: 1.75 !important;
}
main[data-page="about"] .about-spirit-v6 .spirit-shell {
  grid-template-columns: minmax(380px, 420px) minmax(0, 1fr) !important;
  gap: 56px !important;
}
main[data-page="about"] .about-spirit-v6 .spirit-head p {
  white-space: nowrap !important;
}
main[data-page="about"] .about-spirit-v6 .spirit-list {
  margin-left: 0;
}
@media (max-width: 900px) {
  main[data-page="about"] .about-spirit-v6 .spirit-shell {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-head p {
    white-space: normal !important;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-list {
    margin-left: 0;
  }
}
main[data-page="about"] .about-biz-card .biz-tag {
  font-size: 14px !important;
}
/* ===== product-detail tags/sidebar polish 2 ===== */
main[data-page="product-detail"] .product-detail-tags > [data-slot="tag"],
main[data-page="product-detail"] .product-detail-tags > span[data-item],
main[data-page="product-detail"] .product-detail-tags > a {
  font-size: 15px !important;
}

main[data-page="product-detail"] .side-panel .side-box-bar {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}
main[data-page="product-detail"] .side-panel .side-box-bar h2 {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
main[data-page="product-detail"] .side-panel .side-box-bar .text-more {
  flex-shrink: 0;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #3d9a63 !important;
  white-space: nowrap;
}
main[data-page="product-detail"] .side-panel .side-box-bar .text-more:hover {
  text-decoration: underline;
}

main[data-page="product-detail"] .side-panel .side-tags a {
  font-size: 15px !important;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
main[data-page="product-detail"] .side-panel .side-tags a [data-slot="tag"],
main[data-page="product-detail"] .side-panel .side-tags a span {
  font-size: 15px !important;
  transition: color .2s ease;
}
main[data-page="product-detail"] .side-panel .side-tags a:hover {
  background: #3d9a63 !important;
  border-color: #3d9a63 !important;
  color: #fff !important;
  text-decoration: none !important;
}
main[data-page="product-detail"] .side-panel .side-tags a:hover [data-slot="tag"],
main[data-page="product-detail"] .side-panel .side-tags a:hover span {
  color: #fff !important;
}

main[data-page="product-detail"] .side-panel .side-link-list a,
main[data-page="product-detail"] .side-panel .side-link-list a [data-slot="title"],
main[data-page="product-detail"] .side-panel .side-link-list a [data-slot="name"] {
  transition: color .2s ease;
}
main[data-page="product-detail"] .side-panel .side-link-list a:hover,
main[data-page="product-detail"] .side-panel .side-link-list a:hover [data-slot="title"],
main[data-page="product-detail"] .side-panel .side-link-list a:hover [data-slot="name"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  padding-left: 0 !important;
}

main[data-page="product-detail"] .side-panel .side-contact .button {
  width: auto !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  min-width: 120px;
  padding: 0 22px !important;
}
main[data-page="product-detail"] .side-panel .side-contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
/* ===== product tags more button + all tags page ===== */
main[data-page="product-detail"] .side-panel .side-box-bar { display: none !important; }

main[data-page="product-detail"] .side-panel .tags-more-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  min-height: 36px;
  padding: 0 16px;
  border: 1px dashed #8fbf9f;
  border-radius: 999px;
  background: #fff;
  color: #2f7d50;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
main[data-page="product-detail"] .side-panel .tags-more-btn:hover {
  background: #eaf7f0;
  border-style: solid;
  border-color: #3d9a63;
  color: #226b42;
  text-decoration: none;
}

main[data-page="page-tags"] .channel-hero ~ .section {
  padding-top: 36px;
}
main[data-page="page-tags"] .all-tags-panel {
  padding: 28px 28px 20px;
  border: 1px solid #e4eee8;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(23, 32, 51, .04);
}
main[data-page="page-tags"] .all-tags-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
main[data-page="page-tags"] .all-tags-grid a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 16px;
  border: 1px solid #d5e8db;
  border-radius: 999px;
  background: #f4faf6;
  color: #2f7d50;
  font-size: 15px;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
main[data-page="page-tags"] .all-tags-grid a:hover {
  background: #3d9a63;
  border-color: #3d9a63;
  color: #fff;
  text-decoration: none;
}
main[data-page="product-detail"] .side-panel .tags-more-btn {
  display: flex !important;
  width: 100% !important;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  margin-top: 18px !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #eaf7f0 0%, #f3faf6 100%) !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  letter-spacing: .02em;
  box-shadow: inset 0 0 0 1px #d5e8db;
  transition: background .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}
main[data-page="product-detail"] .side-panel .tags-more-btn:hover {
  background: #3d9a63 !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(47, 125, 80, .22);
  transform: translateY(-1px);
  text-decoration: none;
}
main[data-page="page-tags"] .all-tags-panel {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
/* ===== homepage FAQ + friendly link hover ===== */
main[data-page="index"] [data-block="home-faqs"] .help-category li a:hover,
main[data-page="index"] .help-category li a:hover {
  background: transparent !important;
  padding-inline: 0 !important;
  margin-inline: 0 !important;
  border-radius: 0 !important;
}
main[data-page="index"] [data-block="home-faqs"] .help-category li a:hover [data-slot="question"],
main[data-page="index"] [data-block="home-faqs"] .help-category li a:hover .faq-arrow,
main[data-page="index"] .help-category li a:hover [data-slot="question"],
main[data-page="index"] .help-category li a:hover .faq-arrow {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

main[data-page="index"] [data-block="friendly-links"] .friendly-list a:hover,
main[data-page="index"] .friendly-list a:hover {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  background: transparent !important;
}
/* ===== expert-detail: role under name + product-like sidebar ===== */
main[data-page="expert-detail"] .person-panel h1 {
  margin: 0 0 12px !important;
}
main[data-page="expert-detail"] .person-role,
main[data-page="expert-detail"] [data-slot="headline"] {
  display: inline-flex !important;
  align-items: center;
  margin: 0 0 18px !important;
  padding: 6px 14px !important;
  border-radius: 999px !important;
  background: #eaf7f0 !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
}

main[data-page="expert-detail"] .side-panel .side-box h2,
main[data-page="expert-detail"] .side-panel .side-contact h2,
main[data-page="case-detail"] .side-panel .side-box h2,
main[data-page="case-detail"] .side-panel .side-contact h2 {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 14px !important;
}
main[data-page="expert-detail"] .side-panel .side-box h2::before,
main[data-page="expert-detail"] .side-panel .side-contact h2::before,
main[data-page="case-detail"] .side-panel .side-box h2::before,
main[data-page="case-detail"] .side-panel .side-contact h2::before {
  display: none !important;
  content: none !important;
}

main[data-page="expert-detail"] .side-panel .side-link-list a,
main[data-page="expert-detail"] .side-panel .side-link-list a [data-slot="title"],
main[data-page="expert-detail"] .side-panel .side-link-list a [data-slot="name"],
main[data-page="case-detail"] .side-panel .side-link-list a,
main[data-page="case-detail"] .side-panel .side-link-list a [data-slot="title"],
main[data-page="case-detail"] .side-panel .side-link-list a [data-slot="name"] {
  font-size: 16px !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.5 !important;
  max-width: 100%;
  transition: color .2s ease;
}
main[data-page="expert-detail"] .side-panel .side-link-list a:hover,
main[data-page="expert-detail"] .side-panel .side-link-list a:hover [data-slot="title"],
main[data-page="expert-detail"] .side-panel .side-link-list a:hover [data-slot="name"],
main[data-page="case-detail"] .side-panel .side-link-list a:hover,
main[data-page="case-detail"] .side-panel .side-link-list a:hover [data-slot="title"],
main[data-page="case-detail"] .side-panel .side-link-list a:hover [data-slot="name"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  padding-left: 0 !important;
}

main[data-page="expert-detail"] .side-panel .side-tags a,
main[data-page="case-detail"] .side-panel .side-tags a {
  display: inline-flex !important;
  align-items: center;
  min-height: 30px;
  padding: 0 12px !important;
  border: 1px solid #d5e8db !important;
  border-radius: 999px !important;
  background: #f4faf6 !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
main[data-page="expert-detail"] .side-panel .side-tags a [data-slot="tag"],
main[data-page="expert-detail"] .side-panel .side-tags a span,
main[data-page="case-detail"] .side-panel .side-tags a [data-slot="tag"],
main[data-page="case-detail"] .side-panel .side-tags a span {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: 15px !important;
  display: inline !important;
}
main[data-page="expert-detail"] .side-panel .side-tags a:hover,
main[data-page="case-detail"] .side-panel .side-tags a:hover {
  background: #3d9a63 !important;
  border-color: #3d9a63 !important;
  color: #fff !important;
}
main[data-page="expert-detail"] .side-panel .side-tags a:hover [data-slot="tag"],
main[data-page="expert-detail"] .side-panel .side-tags a:hover span,
main[data-page="case-detail"] .side-panel .side-tags a:hover [data-slot="tag"],
main[data-page="case-detail"] .side-panel .side-tags a:hover span {
  color: #fff !important;
}

main[data-page="expert-detail"] .side-panel .tags-more-btn,
main[data-page="case-detail"] .side-panel .tags-more-btn {
  display: flex !important;
  width: 100% !important;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  margin-top: 18px !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #eaf7f0 0%, #f3faf6 100%) !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  box-shadow: inset 0 0 0 1px #d5e8db;
  transition: background .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}
main[data-page="expert-detail"] .side-panel .tags-more-btn:hover,
main[data-page="case-detail"] .side-panel .tags-more-btn:hover {
  background: #3d9a63 !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(47, 125, 80, .22);
  transform: translateY(-1px);
  text-decoration: none;
}

main[data-page="expert-detail"] .side-panel .side-contact,
main[data-page="case-detail"] .side-panel .side-contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 24px 22px !important;
  border-radius: 16px !important;
  background: linear-gradient(150deg, #45a86d 0%, #2f7d50 100%) !important;
  box-shadow: 0 14px 28px rgba(47, 125, 80, .22) !important;
}
main[data-page="expert-detail"] .side-panel .side-contact h2,
main[data-page="case-detail"] .side-panel .side-contact h2 {
  font-size: 18px !important;
  margin-bottom: 10px !important;
}
main[data-page="expert-detail"] .side-panel .side-contact p,
main[data-page="case-detail"] .side-panel .side-contact p {
  font-size: 15px !important;
  margin-bottom: 18px !important;
  line-height: 1.7 !important;
  color: rgba(255,255,255,.9) !important;
}
main[data-page="expert-detail"] .side-panel .side-contact .button,
main[data-page="case-detail"] .side-panel .side-contact .button {
  width: auto !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 120px;
  min-height: 44px !important;
  padding: 0 22px !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  background: #fff !important;
  color: #3d9a63 !important;
  border-color: #fff !important;
}
/* ===== news-list hot + news-detail polish ===== */
main[data-page="news-list"] .news-hot a,
main[data-page="news-list"] .news-hot a [data-slot="title"] {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: var(--text-1) !important;
  text-decoration: none !important;
  transition: color .2s ease;
}
main[data-page="news-list"] .news-hot a:hover,
main[data-page="news-list"] .news-hot a:hover [data-slot="title"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

main[data-page="news-detail"] .article-head {
  text-align: center;
  margin: 8px 0 28px;
}
main[data-page="news-detail"] .article-head h1,
main[data-page="news-detail"] .article-main > h1,
main[data-page="news-detail"] .article-main h1[data-slot="title"] {
  margin: 0 0 16px !important;
  text-align: center !important;
  font-size: 44px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  color: #122033 !important;
}
main[data-page="news-detail"] .article-meta {
  display: flex !important;
  justify-content: center !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin: 0 !important;
  text-align: center !important;
  color: var(--text-2) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}
main[data-page="news-detail"] .relate-card .relate-info p,
main[data-page="news-detail"] .relate-card [data-slot="summary"] {
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
}
main[data-page="news-detail"] .relate-card .relate-btn {
  font-size: 15px !important;
  font-weight: 400 !important;
}

main[data-page="news-detail"] .article-hero-img,
main[data-page="news-detail"] .detail-copy img {
  display: block !important;
  width: auto !important;
  max-width: 78% !important;
  margin: 24px auto !important;
  border-radius: 4px;
}
main[data-page="news-detail"] .lead,
main[data-page="news-detail"] .detail-copy,
main[data-page="news-detail"] .detail-copy p,
main[data-page="news-detail"] .detail-copy li,
main[data-page="news-detail"] .detail-copy a,
main[data-page="news-detail"] .detail-copy blockquote {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.85 !important;
}
main[data-page="news-detail"] .detail-copy strong {
  font-weight: 600 !important;
}
main[data-page="news-detail"] .detail-copy em {
  font-style: italic !important;
  font-weight: 400 !important;
}
main[data-page="news-detail"] .detail-copy a {
  color: #3d9a63 !important;
  text-decoration: none !important;
}
main[data-page="news-detail"] .detail-copy a:hover {
  text-decoration: underline !important;
}

/* news-detail sidebar = product-detail sidebar */
main[data-page="news-detail"] .side-panel .side-box h2,
main[data-page="news-detail"] .side-panel .side-contact h2 {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 14px !important;
}
main[data-page="news-detail"] .side-panel .side-box h2::before,
main[data-page="news-detail"] .side-panel .side-contact h2::before {
  display: none !important;
  content: none !important;
}
main[data-page="news-detail"] .side-panel .side-link-list a,
main[data-page="news-detail"] .side-panel .side-link-list a [data-slot="title"],
main[data-page="news-detail"] .side-panel .side-link-list a [data-slot="name"] {
  font-size: 16px !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.5 !important;
  max-width: 100%;
}
main[data-page="news-detail"] .side-panel .side-link-list a:hover,
main[data-page="news-detail"] .side-panel .side-link-list a:hover [data-slot="title"],
main[data-page="news-detail"] .side-panel .side-link-list a:hover [data-slot="name"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  padding-left: 0 !important;
}
main[data-page="news-detail"] .side-panel .side-tags a {
  display: inline-flex !important;
  align-items: center;
  min-height: 30px;
  padding: 0 12px !important;
  border: 1px solid #d5e8db !important;
  border-radius: 999px !important;
  background: #f4faf6 !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}
main[data-page="news-detail"] .side-panel .side-tags a [data-slot="tag"],
main[data-page="news-detail"] .side-panel .side-tags a span {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: 15px !important;
}
main[data-page="news-detail"] .side-panel .side-tags a:hover {
  background: #3d9a63 !important;
  border-color: #3d9a63 !important;
  color: #fff !important;
}
main[data-page="news-detail"] .side-panel .side-tags a:hover [data-slot="tag"],
main[data-page="news-detail"] .side-panel .side-tags a:hover span {
  color: #fff !important;
}
main[data-page="news-detail"] .side-panel .tags-more-btn {
  display: flex !important;
  width: 100% !important;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  margin-top: 18px !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #eaf7f0 0%, #f3faf6 100%) !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  box-shadow: inset 0 0 0 1px #d5e8db;
}
main[data-page="news-detail"] .side-panel .tags-more-btn:hover {
  background: #3d9a63 !important;
  color: #fff !important;
  text-decoration: none;
}
main[data-page="news-detail"] .side-panel .side-contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 24px 22px !important;
  border-radius: 16px !important;
  background: linear-gradient(150deg, #45a86d 0%, #2f7d50 100%) !important;
  box-shadow: 0 14px 28px rgba(47, 125, 80, .22) !important;
  color: #fff !important;
}
main[data-page="news-detail"] .side-panel .side-contact h2 {
  color: #fff !important;
}
main[data-page="news-detail"] .side-panel .side-contact p {
  font-size: 15px !important;
  margin-bottom: 18px !important;
  color: rgba(255,255,255,.9) !important;
}
main[data-page="news-detail"] .side-panel .side-contact .button {
  width: auto !important;
  display: inline-flex !important;
  min-width: 120px;
  min-height: 44px !important;
  padding: 0 22px !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  background: #fff !important;
  color: #3d9a63 !important;
  border-color: #fff !important;
}
/* ===== homepage FAQ hover polish ===== */
main[data-page="index"] [data-block="home-faqs"] .help-category .category-head a {
  color: #3d9a63 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transition: color .2s ease;
}
main[data-page="index"] [data-block="home-faqs"] .help-category .category-head a:hover {
  color: #2f7d50 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  background: transparent !important;
}

main[data-page="index"] [data-block="home-faqs"] .help-category li a:hover [data-slot="question"],
main[data-page="index"] .help-category li a:hover [data-slot="question"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
main[data-page="index"] [data-block="home-faqs"] .help-category li a:hover .faq-arrow,
main[data-page="index"] .help-category li a:hover .faq-arrow {
  color: #3d9a63 !important;
  text-decoration: none !important;
}
main[data-page="product-detail"] .related-card:hover h3,
main[data-page="product-detail"] .related-card:hover [data-slot="name"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
main[data-page="product-detail"] .related-card h3,
main[data-page="product-detail"] .related-card [data-slot="name"] {
  transition: color .2s ease;
}
main[data-page="product-detail"] .related-card {
  transition: transform .25s ease, box-shadow .25s ease !important;
}
main[data-page="product-detail"] .related-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 14px 28px rgba(23, 32, 51, .1) !important;
}
/* ===== case-detail match product-detail typography ===== */
main[data-page="case-detail"] .product-detail-hero .meta[data-slot="category"] {
  font-size: 15px !important;
  font-weight: 400 !important;
  color: #3d9a63 !important;
}
main[data-page="case-detail"] .product-detail-hero h1 {
  margin: 8px 0 16px !important;
  font-size: 36px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}
main[data-page="case-detail"] .product-detail-tags {
  gap: 10px !important;
  margin-top: 22px !important;
}
main[data-page="case-detail"] .product-detail-tags > [data-slot="tag"],
main[data-page="case-detail"] .product-detail-tags > span[data-item],
main[data-page="case-detail"] .product-detail-tags > a {
  display: inline-flex !important;
  align-items: center;
  min-height: 32px;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #eaf7f0 !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
}
main[data-page="case-detail"] .product-detail-tags span {
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: inherit !important;
  border-radius: 0 !important;
}
main[data-page="case-detail"] .product-detail-tags > [data-slot="tag"],
main[data-page="case-detail"] .product-detail-tags > span[data-item] {
  background: #eaf7f0 !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
}

main[data-page="case-detail"] .detail-main-title {
  font-size: 22px !important;
  font-weight: 700 !important;
  margin: 0 0 20px !important;
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
}
main[data-page="case-detail"] .detail-copy,
main[data-page="case-detail"] .detail-copy p,
main[data-page="case-detail"] .detail-copy li,
main[data-page="case-detail"] .detail-copy td,
main[data-page="case-detail"] .detail-copy th,
main[data-page="case-detail"] .detail-copy blockquote,
main[data-page="case-detail"] .detail-copy a {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.85 !important;
}
main[data-page="case-detail"] .detail-copy strong {
  font-weight: 600 !important;
}
main[data-page="case-detail"] .detail-copy em {
  font-style: italic !important;
  font-weight: 400 !important;
}

main[data-page="case-detail"] .related-card h3,
main[data-page="case-detail"] .related-card [data-slot="name"] {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  transition: color .2s ease;
}
main[data-page="case-detail"] .related-block-bar .text-more {
  font-size: 16px !important;
  font-weight: 400 !important;
}
main[data-page="case-detail"] .related-card {
  transition: transform .25s ease, box-shadow .25s ease !important;
}
main[data-page="case-detail"] .related-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 14px 28px rgba(23, 32, 51, .1) !important;
}
main[data-page="case-detail"] .related-card:hover h3,
main[data-page="case-detail"] .related-card:hover [data-slot="name"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
/* ===== product/case detail: lock 1350px, prevent sidebar overflow ===== */
main[data-page="product-detail"] .container,
main[data-page="case-detail"] .container {
  width: min(1350px, calc(100% - 60px)) !important;
  max-width: 1350px !important;
  box-sizing: border-box;
}

main[data-page="product-detail"] .detail-body-layout,
main[data-page="case-detail"] .detail-body-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 300px) !important;
  gap: 40px !important;
  align-items: start !important;
  overflow: hidden;
}

main[data-page="product-detail"] .detail-body-main,
main[data-page="case-detail"] .detail-body-main,
main[data-page="product-detail"] .detail-aside,
main[data-page="case-detail"] .detail-aside,
main[data-page="product-detail"] .side-panel,
main[data-page="case-detail"] .side-panel {
  min-width: 0 !important;
  max-width: 100% !important;
}

main[data-page="product-detail"] .side-panel,
main[data-page="case-detail"] .side-panel {
  width: 100% !important;
  box-sizing: border-box;
}

main[data-page="product-detail"] .side-panel .side-box,
main[data-page="product-detail"] .side-panel .side-contact,
main[data-page="case-detail"] .side-panel .side-box,
main[data-page="case-detail"] .side-panel .side-contact {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden;
}

main[data-page="product-detail"] .side-panel .side-link-list a,
main[data-page="product-detail"] .side-panel .side-link-list a [data-slot="title"],
main[data-page="product-detail"] .side-panel .side-link-list a [data-slot="name"],
main[data-page="case-detail"] .side-panel .side-link-list a,
main[data-page="case-detail"] .side-panel .side-link-list a [data-slot="title"],
main[data-page="case-detail"] .side-panel .side-link-list a [data-slot="name"] {
  display: block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

main[data-page="product-detail"] .side-panel .side-tags,
main[data-page="case-detail"] .side-panel .side-tags {
  max-width: 100%;
}

main[data-page="product-detail"] .product-detail-hero,
main[data-page="case-detail"] .product-detail-hero {
  width: min(1350px, calc(100% - 60px)) !important;
  max-width: 1350px !important;
  box-sizing: border-box;
}

main[data-page="product-detail"] .product-detail-grid,
main[data-page="case-detail"] .product-detail-grid {
  min-width: 0;
}

@media (max-width: 992px) {
  main[data-page="product-detail"] .detail-body-layout,
  main[data-page="case-detail"] .detail-body-layout {
    grid-template-columns: 1fr !important;
    overflow: visible;
  }
}
main[data-page="product-detail"] .sidebar .side-link-list a,
main[data-page="case-detail"] .sidebar .side-link-list a {
  display: block !important;
  grid-template-columns: none !important;
  gap: 0 !important;
}
main[data-page="product-detail"] .sidebar .side-link-list a img,
main[data-page="case-detail"] .sidebar .side-link-list a img {
  display: none !important;
}
/* ===== fix side-tags misalignment on product/case detail ===== */

main[data-page="product-detail"] .side-panel .side-tags,
main[data-page="case-detail"] .side-panel .side-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  align-items: center !important;
  max-width: 100% !important;
}

main[data-page="product-detail"] .side-panel .side-tags > a,
main[data-page="case-detail"] .side-panel .side-tags > a,
main[data-page="product-detail"] .sidebar .side-tags > a,
main[data-page="case-detail"] .sidebar .side-tags > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: 100% !important;
  min-height: 32px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 1px solid #d5e8db !important;
  border-radius: 999px !important;
  background: #f4faf6 !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  grid-template-columns: none !important;
  gap: 0 !important;
  white-space: nowrap !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

main[data-page="product-detail"] .side-panel .side-tags > a > span,
main[data-page="product-detail"] .side-panel .side-tags > a [data-slot="tag"],
main[data-page="case-detail"] .side-panel .side-tags > a > span,
main[data-page="case-detail"] .side-panel .side-tags > a [data-slot="tag"],
main[data-page="product-detail"] .sidebar .side-tags > a > span,
main[data-page="case-detail"] .sidebar .side-tags > a > span {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  white-space: nowrap !important;
  box-shadow: none !important;
}

main[data-page="product-detail"] .side-panel .side-tags > a:hover,
main[data-page="case-detail"] .side-panel .side-tags > a:hover {
  background: #3d9a63 !important;
  border-color: #3d9a63 !important;
  color: #fff !important;
  text-decoration: none !important;
}

main[data-page="product-detail"] .side-panel .side-tags > a:hover > span,
main[data-page="product-detail"] .side-panel .side-tags > a:hover [data-slot="tag"],
main[data-page="case-detail"] .side-panel .side-tags > a:hover > span,
main[data-page="case-detail"] .side-panel .side-tags > a:hover [data-slot="tag"] {
  color: #fff !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

/* side-box overflow was clipping/misplacing tags */
main[data-page="product-detail"] .side-panel .side-box,
main[data-page="case-detail"] .side-panel .side-box {
  overflow: visible !important;
}
/* ===== product/case detail fixed columns: 986 + 330 ===== */
main[data-page="product-detail"] .detail-body-layout,
main[data-page="case-detail"] .detail-body-layout {
  display: grid !important;
  grid-template-columns: 986px 330px !important;
  column-gap: 34px !important;
  row-gap: 40px !important;
  width: min(1350px, calc(100% - 60px)) !important;
  max-width: 1350px !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
  align-items: start !important;
  overflow: visible !important;
  justify-content: start !important;
}

main[data-page="product-detail"] .detail-body-main,
main[data-page="case-detail"] .detail-body-main {
  width: 986px !important;
  max-width: 986px !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

main[data-page="product-detail"] .detail-aside,
main[data-page="case-detail"] .detail-aside,
main[data-page="product-detail"] .side-panel,
main[data-page="case-detail"] .side-panel {
  width: 330px !important;
  max-width: 330px !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

main[data-page="product-detail"] .side-panel .side-box,
main[data-page="product-detail"] .side-panel .side-contact,
main[data-page="case-detail"] .side-panel .side-box,
main[data-page="case-detail"] .side-panel .side-contact {
  width: 100% !important;
  max-width: 330px !important;
  box-sizing: border-box !important;
}

main[data-page="product-detail"] .product-detail-hero,
main[data-page="case-detail"] .product-detail-hero,
main[data-page="product-detail"] .crumb-nav,
main[data-page="case-detail"] .crumb-nav {
  width: min(1350px, calc(100% - 60px)) !important;
  max-width: 1350px !important;
  box-sizing: border-box !important;
}

@media (max-width: 1400px) {
  main[data-page="product-detail"] .detail-body-layout,
  main[data-page="case-detail"] .detail-body-layout {
    grid-template-columns: minmax(0, 1fr) 330px !important;
    column-gap: 24px !important;
  }
  main[data-page="product-detail"] .detail-body-main,
  main[data-page="case-detail"] .detail-body-main {
    width: auto !important;
    max-width: none !important;
  }
}

@media (max-width: 992px) {
  main[data-page="product-detail"] .detail-body-layout,
  main[data-page="case-detail"] .detail-body-layout {
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
  }
  main[data-page="product-detail"] .detail-body-main,
  main[data-page="case-detail"] .detail-body-main,
  main[data-page="product-detail"] .detail-aside,
  main[data-page="case-detail"] .detail-aside,
  main[data-page="product-detail"] .side-panel,
  main[data-page="case-detail"] .side-panel,
  main[data-page="product-detail"] .side-panel .side-box,
  main[data-page="product-detail"] .side-panel .side-contact,
  main[data-page="case-detail"] .side-panel .side-box,
  main[data-page="case-detail"] .side-panel .side-contact {
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* ===== expert/news/help detail: 986 + 330 ===== */
main[data-page="expert-detail"] .person-detail,
main[data-page="news-detail"] .article-layout,
main[data-page="help-detail"] .article-layout,
main[data-page="help-detail"] .help-detail-wide {
  display: grid !important;
  grid-template-columns: 986px 330px !important;
  column-gap: 34px !important;
  row-gap: 40px !important;
  width: min(1350px, calc(100% - 60px)) !important;
  max-width: 1350px !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
  align-items: start !important;
  justify-content: start !important;
  overflow: visible !important;
}

main[data-page="expert-detail"] .person-panel,
main[data-page="news-detail"] .article-main,
main[data-page="help-detail"] .help-detail-main {
  width: 986px !important;
  max-width: 986px !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

main[data-page="expert-detail"] .detail-aside,
main[data-page="expert-detail"] .side-panel,
main[data-page="news-detail"] .article-side,
main[data-page="news-detail"] .side-panel,
main[data-page="help-detail"] .article-side,
main[data-page="help-detail"] .side-panel {
  width: 330px !important;
  max-width: 330px !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

main[data-page="expert-detail"] .side-panel .side-box,
main[data-page="expert-detail"] .side-panel .side-contact,
main[data-page="news-detail"] .side-panel .side-box,
main[data-page="news-detail"] .side-panel .side-contact,
main[data-page="help-detail"] .side-panel .side-box,
main[data-page="help-detail"] .side-panel .side-contact {
  width: 100% !important;
  max-width: 330px !important;
  box-sizing: border-box !important;
}

main[data-page="expert-detail"] .crumb-nav,
main[data-page="news-detail"] .container,
main[data-page="help-detail"] .crumb-nav,
main[data-page="help-detail"] .container {
  width: min(1350px, calc(100% - 60px)) !important;
  max-width: 1350px !important;
  box-sizing: border-box !important;
}

@media (max-width: 1400px) {
  main[data-page="expert-detail"] .person-detail,
  main[data-page="news-detail"] .article-layout,
  main[data-page="help-detail"] .article-layout,
  main[data-page="help-detail"] .help-detail-wide {
    grid-template-columns: minmax(0, 1fr) 330px !important;
    column-gap: 24px !important;
  }
  main[data-page="expert-detail"] .person-panel,
  main[data-page="news-detail"] .article-main,
  main[data-page="help-detail"] .help-detail-main {
    width: auto !important;
    max-width: none !important;
  }
}

@media (max-width: 992px) {
  main[data-page="expert-detail"] .person-detail,
  main[data-page="news-detail"] .article-layout,
  main[data-page="help-detail"] .article-layout,
  main[data-page="help-detail"] .help-detail-wide {
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
  }
  main[data-page="expert-detail"] .person-panel,
  main[data-page="news-detail"] .article-main,
  main[data-page="help-detail"] .help-detail-main,
  main[data-page="expert-detail"] .detail-aside,
  main[data-page="expert-detail"] .side-panel,
  main[data-page="news-detail"] .article-side,
  main[data-page="news-detail"] .side-panel,
  main[data-page="help-detail"] .article-side,
  main[data-page="help-detail"] .side-panel,
  main[data-page="expert-detail"] .side-panel .side-box,
  main[data-page="expert-detail"] .side-panel .side-contact,
  main[data-page="news-detail"] .side-panel .side-box,
  main[data-page="news-detail"] .side-panel .side-contact,
  main[data-page="help-detail"] .side-panel .side-box,
  main[data-page="help-detail"] .side-panel .side-contact {
    width: 100% !important;
    max-width: 100% !important;
  }
}
main[data-page="news-list"] .news-body h2,
main[data-page="news-list"] .news-body h2[data-slot="title"],
main[data-page="news-list"] .news-card h2 {
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
}
main[data-page="news-list"] .news-hot a,
main[data-page="news-list"] .news-hot a [data-slot="title"] {
  display: block !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
/* ===== breadcrumbs 15px + news-detail sidebar align with title ===== */
.crumb-nav,
.crumb-nav a,
.crumb-nav span,
.breadcrumbs,
.breadcrumbs a,
.breadcrumbs span,
[data-block="breadcrumb"],
[data-block="breadcrumb"] a,
[data-block="breadcrumb"] span {
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
}

main[data-page="news-detail"] .article-layout > .breadcrumbs,
main[data-page="news-detail"] .article-layout > [data-block="breadcrumb"] {
  grid-column: 1 / -1;
  margin: 0 0 18px !important;
}

main[data-page="news-detail"] .article-head {
  margin-top: 0 !important;
}

main[data-page="news-detail"] .article-side,
main[data-page="news-detail"] .article-layout > .side-panel,
main[data-page="news-detail"] .article-layout > aside {
  margin-top: 0 !important;
  align-self: start !important;
}

main[data-page="news-detail"] .article-side .side-box:first-child,
main[data-page="news-detail"] .side-panel > .side-box:first-child {
  margin-top: 0 !important;
}
/* ===== news-detail prev-next + related-news grid ===== */
main[data-page="news-detail"] .prev-next {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px 28px !important;
  align-items: center !important;
  margin: 32px 0 0 !important;
}
main[data-page="news-detail"] .prev-next a,
main[data-page="news-detail"] .prev-next [data-slot="prev"],
main[data-page="news-detail"] .prev-next [data-slot="next"] {
  display: block !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: var(--text-2) !important;
  line-height: 1.6 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
main[data-page="news-detail"] .prev-next a:hover {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
main[data-page="news-detail"] .prev-next [data-slot="next"] {
  text-align: right !important;
}

main[data-page="news-detail"] .related-list {
  margin-top: 36px !important;
}
main[data-page="news-detail"] .related-list-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 16px;
}
main[data-page="news-detail"] .related-list-head h2 {
  margin: 0 !important;
  font-size: 22px !important;
  font-weight: 700 !important;
}
main[data-page="news-detail"] .related-list-head .text-more {
  flex-shrink: 0;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #3d9a63 !important;
}
main[data-page="news-detail"] .related-list-head .text-more:hover {
  color: #2f7d50 !important;
  text-decoration: underline !important;
}
main[data-page="news-detail"] .related-list ul {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 28px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
main[data-page="news-detail"] .related-list li {
  border-bottom: 1px solid var(--border) !important;
}
main[data-page="news-detail"] .related-list li a {
  display: block !important;
  padding: 14px 0 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: var(--text-1) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
main[data-page="news-detail"] .related-list li a:hover,
main[data-page="news-detail"] .related-list li a:hover [data-slot="title"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

@media (max-width: 768px) {
  main[data-page="news-detail"] .prev-next,
  main[data-page="news-detail"] .related-list ul {
    grid-template-columns: 1fr !important;
  }
  main[data-page="news-detail"] .prev-next [data-slot="next"] {
    text-align: left !important;
  }
}
main[data-page="news-detail"] .article-layout > .breadcrumbs,
main[data-page="news-detail"] .article-layout > [data-block="breadcrumb"] {
  margin: 0 0 25px !important;
  padding-bottom: 0 !important;
}
main[data-page="news-detail"] .article-head {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
main[data-page="news-detail"] .article-side,
main[data-page="news-detail"] .article-layout > aside {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
main[data-page="news-detail"] .related-list li {
  border-bottom: 0 !important;
  position: relative;
  padding-left: 16px;
}
main[data-page="news-detail"] .related-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 6px;
  height: 6px;
  margin-top: -3px;
  border-radius: 50%;
  background: #4f5f73;
}
main[data-page="news-detail"] .related-list li a {
  border-bottom: 0 !important;
}
/* ===== news-detail breadcrumb gap fix: exactly 30px ===== */
main[data-page="news-detail"] .article-layout {
  row-gap: 0 !important;
}
main[data-page="news-detail"] .article-layout > .breadcrumbs,
main[data-page="news-detail"] .article-layout > [data-block="breadcrumb"] {
  margin: 0 0 30px !important;
  padding: 0 !important;
}
main[data-page="news-detail"] .article-main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
main[data-page="news-detail"] .article-head {
  margin: 0 0 28px !important;
  padding: 0 0 12px !important;
}
main[data-page="news-detail"] .article-side,
main[data-page="news-detail"] .article-layout > aside {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
main[data-page="news-detail"] .related-list li {
  padding-left: 16px !important;
}
main[data-page="news-detail"] .related-list li a {
  padding: 6px 0 !important;
  line-height: 1.5 !important;
}
main[data-page="news-detail"] .related-list li::before {
  top: 50%;
  margin-top: -3px;
}
main[data-page="news-detail"] .related-list li a {
  padding: 9px 0 !important;
  line-height: 1.55 !important;
}
main[data-page="news-detail"] .prev-next {
  border-top: 1px solid var(--border) !important;
  border-bottom: 1px solid var(--border) !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
  margin: 32px 0 0 !important;
}
/* ===== help-category + help-detail polish ===== */

/* help-category: breadcrumb instead of banner */
main[data-page="help-category"] .crumb-nav {
  padding-top: 24px;
  margin-bottom: 8px;
}
main[data-page="help-category"] .crumb-nav + .section {
  padding-top: 12px;
}

/* help-category list cards */
main[data-page="help-category"] .question-card {
  display: flex !important;
  flex-direction: column !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
}
main[data-page="help-category"] .question-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .06) !important;
}
main[data-page="help-category"] .question-card h2,
main[data-page="help-category"] .question-card [data-slot="question"] {
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  margin: 0 0 10px !important;
  transition: color .2s ease;
}
main[data-page="help-category"] .question-card .news-more,
main[data-page="help-category"] .question-card .card-link {
  display: inline-flex !important;
  align-self: flex-end !important;
  margin-top: 16px !important;
  padding: 0 !important;
  min-height: auto !important;
  border: 0 !important;
  background: transparent !important;
  color: #3d9a63 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}
main[data-page="help-category"] .question-card:hover h2,
main[data-page="help-category"] .question-card:hover [data-slot="question"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 4px;
}
main[data-page="help-category"] .question-card:hover .news-more,
main[data-page="help-category"] .question-card .news-more:hover {
  color: #2f7d50 !important;
  text-decoration: underline !important;
}

/* help-category sidebar: content 16px + hover */
main[data-page="help-category"] .sidebar a:not(.button),
main[data-page="help-category"] .sidebar a:not(.button) [data-slot="question"],
main[data-page="help-category"] .sidebar a:not(.button) [data-slot="name"] {
  font-size: 16px !important;
  line-height: 1.55 !important;
}
main[data-page="help-category"] .sidebar a:hover,
main[data-page="help-category"] .sidebar a:hover [data-slot="question"],
main[data-page="help-category"] .sidebar a:hover [data-slot="name"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* help-detail left head */
main[data-page="help-detail"] .help-detail-head {
  text-align: center;
  margin: 0 0 28px;
}
main[data-page="help-detail"] .help-detail-head h1,
main[data-page="help-detail"] .help-detail-main h1[data-slot="question"] {
  margin: 0 0 14px !important;
  text-align: center !important;
  font-size: 36px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}
main[data-page="help-detail"] .help-detail-head .article-meta,
main[data-page="help-detail"] .article-meta {
  display: flex !important;
  justify-content: center !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin: 0 !important;
  text-align: center !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: var(--text-2) !important;
}
main[data-page="news-detail"] .article-meta .meta-dot,
main[data-page="help-detail"] .article-meta .meta-dot {
  color: #b7c4bc;
}

/* help-detail prev-next = news-detail */
main[data-page="help-detail"] .prev-next {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px 28px !important;
  align-items: center !important;
  margin: 32px 0 0 !important;
  border-top: 1px solid var(--border) !important;
  border-bottom: 1px solid var(--border) !important;
  padding: 24px 0 !important;
}
main[data-page="help-detail"] .prev-next a,
main[data-page="help-detail"] .prev-next [data-slot="prev"],
main[data-page="help-detail"] .prev-next [data-slot="next"] {
  display: block !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: var(--text-2) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
main[data-page="help-detail"] .prev-next [data-slot="next"] {
  text-align: right !important;
}
main[data-page="help-detail"] .prev-next a:hover {
  color: #3d9a63 !important;
  text-decoration: underline !important;
}

/* help-detail related questions = news related list */
main[data-page="help-detail"] .related-list,
main[data-page="help-detail"] .related-questions-block {
  margin-top: 36px !important;
}
main[data-page="help-detail"] .related-list-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 16px;
}
main[data-page="help-detail"] .related-list-head h2 {
  margin: 0 !important;
  font-size: 22px !important;
  font-weight: 700 !important;
}
main[data-page="help-detail"] .related-list-head .text-more {
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #3d9a63 !important;
}
main[data-page="help-detail"] .related-list-head .text-more:hover {
  color: #2f7d50 !important;
  text-decoration: underline !important;
}
main[data-page="help-detail"] .related-list ul,
main[data-page="help-detail"] .related-questions-block ul {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 28px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
main[data-page="help-detail"] .related-list li,
main[data-page="help-detail"] .related-questions-block li {
  position: relative;
  padding-left: 16px !important;
  border-bottom: 0 !important;
}
main[data-page="help-detail"] .related-list li::before,
main[data-page="help-detail"] .related-questions-block li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 6px;
  height: 6px;
  margin-top: -3px;
  border-radius: 50%;
  background: #4f5f73;
}
main[data-page="help-detail"] .related-list li a,
main[data-page="help-detail"] .related-questions-block li a {
  display: block !important;
  padding: 9px 0 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: var(--text-1) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
main[data-page="help-detail"] .related-list li a:hover,
main[data-page="help-detail"] .related-questions-block li a:hover,
main[data-page="help-detail"] .related-list li a:hover [data-slot="question"],
main[data-page="help-detail"] .related-questions-block li a:hover [data-slot="question"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* help-detail sidebar = news-detail sidebar */
main[data-page="help-detail"] .side-panel .side-box h2,
main[data-page="help-detail"] .side-panel .side-contact h2 {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 14px !important;
}
main[data-page="help-detail"] .side-panel .side-box h2::before,
main[data-page="help-detail"] .side-panel .side-contact h2::before {
  display: none !important;
  content: none !important;
}
main[data-page="help-detail"] .side-panel .side-link-list a,
main[data-page="help-detail"] .side-panel .side-link-list a [data-slot="name"],
main[data-page="help-detail"] .side-panel .side-link-list a [data-slot="title"] {
  display: block !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
  grid-template-columns: none !important;
}
main[data-page="help-detail"] .side-panel .side-link-list a:hover,
main[data-page="help-detail"] .side-panel .side-link-list a:hover [data-slot="name"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  padding-left: 0 !important;
}
main[data-page="help-detail"] .side-panel .side-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}
main[data-page="help-detail"] .side-panel .side-tags > a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 32px !important;
  padding: 0 14px !important;
  border: 1px solid #d5e8db !important;
  border-radius: 999px !important;
  background: #f4faf6 !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}
main[data-page="help-detail"] .side-panel .side-tags > a > span,
main[data-page="help-detail"] .side-panel .side-tags > a [data-slot="tag"] {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: inherit !important;
}
main[data-page="help-detail"] .side-panel .side-tags > a:hover {
  background: #3d9a63 !important;
  border-color: #3d9a63 !important;
  color: #fff !important;
}
main[data-page="help-detail"] .side-panel .side-tags > a:hover > span,
main[data-page="help-detail"] .side-panel .side-tags > a:hover [data-slot="tag"] {
  color: #fff !important;
}
main[data-page="help-detail"] .side-panel .tags-more-btn {
  display: flex !important;
  width: 100% !important;
  align-items: center;
  justify-content: center;
  margin-top: 18px !important;
  min-height: 42px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #eaf7f0 0%, #f3faf6 100%) !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  box-shadow: inset 0 0 0 1px #d5e8db;
}
main[data-page="help-detail"] .side-panel .tags-more-btn:hover {
  background: #3d9a63 !important;
  color: #fff !important;
  text-decoration: none;
}
main[data-page="help-detail"] .side-panel .side-contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 24px 22px !important;
  border-radius: 16px !important;
  background: linear-gradient(150deg, #45a86d 0%, #2f7d50 100%) !important;
  box-shadow: 0 14px 28px rgba(47, 125, 80, .22) !important;
  color: #fff !important;
}
main[data-page="help-detail"] .side-panel .side-contact h2 { color: #fff !important; }
main[data-page="help-detail"] .side-panel .side-contact p {
  color: rgba(255,255,255,.9) !important;
  font-size: 15px !important;
  margin-bottom: 18px !important;
}
main[data-page="help-detail"] .side-panel .side-contact .button {
  width: auto !important;
  display: inline-flex !important;
  min-width: 120px;
  min-height: 44px !important;
  padding: 0 22px !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #3d9a63 !important;
  border-color: #fff !important;
  font-size: 15px !important;
  font-weight: 600 !important;
}

@media (max-width: 768px) {
  main[data-page="help-detail"] .prev-next,
  main[data-page="help-detail"] .related-list ul,
  main[data-page="help-detail"] .related-questions-block ul {
    grid-template-columns: 1fr !important;
  }
  main[data-page="help-detail"] .prev-next [data-slot="next"] {
    text-align: left !important;
  }
}

/* ===== styleguide only ===== */
main[data-page="styleguide"] .sg-hero {
  margin-bottom: 40px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--border);
}
main[data-page="styleguide"] .sg-hero h1 {
  margin: 0 0 12px;
  font-size: 36px;
  line-height: 1.25;
}
main[data-page="styleguide"] .sg-hero p {
  margin: 0;
  max-width: 720px;
  color: var(--text-2);
}
main[data-page="styleguide"] .sg-block {
  margin-bottom: 48px;
}
main[data-page="styleguide"] .sg-title {
  margin: 0 0 20px;
  font-size: 22px;
}
main[data-page="styleguide"] .sg-swatches {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
main[data-page="styleguide"] .sg-swatch span {
  display: block;
  height: 64px;
  border-radius: 8px;
  border: 1px solid var(--border);
  margin-bottom: 8px;
}
main[data-page="styleguide"] .sg-swatch code {
  font-size: 13px;
  color: var(--text-2);
}
main[data-page="styleguide"] .sg-type p { margin: 0 0 10px; color: var(--text-1); }
main[data-page="styleguide"] .sg-type-50 { font-size: 50px; font-weight: 900; line-height: 1.15; }
main[data-page="styleguide"] .sg-type-36 { font-size: 36px; font-weight: 700; line-height: 1.25; }
main[data-page="styleguide"] .sg-type-24 { font-size: 24px; font-weight: 700; }
main[data-page="styleguide"] .sg-type-20 { font-size: 20px; font-weight: 600; }
main[data-page="styleguide"] .sg-type-16 { font-size: 16px; }
main[data-page="styleguide"] .sg-type-15 { font-size: 15px; color: var(--text-2); }
main[data-page="styleguide"] .sg-type-14 { font-size: 14px; color: var(--text-3); }
main[data-page="styleguide"] .sg-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
main[data-page="styleguide"] .sg-nav-demo {
  display: flex;
  gap: 28px;
  height: 76px;
  padding: 0 20px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  margin-bottom: 12px;
}
main[data-page="styleguide"] .sg-nav-demo .nav-item { height: 76px; }
main[data-page="styleguide"] .sg-nav-demo .nav-item > a {
  height: 76px;
  display: flex;
  align-items: center;
  position: relative;
  font-size: 15px;
}
main[data-page="styleguide"] .sg-note {
  margin: 0 0 10px;
  color: var(--text-3);
  font-size: 14px;
}
main[data-page="styleguide"] .sg-subnav-demo {
  display: inline-flex;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
}
main[data-page="styleguide"] .sg-subnav-demo a {
  padding: 8px 12px;
  border-radius: 6px;
  font-size: 14px;
}
main[data-page="styleguide"] .sg-subnav-demo a.is-active {
  color: var(--primary-hover);
  background: var(--primary-light);
}
main[data-page="styleguide"] .sg-forms {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
main[data-page="styleguide"] .sg-forms h3 {
  margin: 0 0 12px;
  font-size: 18px;
}
main[data-page="styleguide"] .sg-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
main[data-page="styleguide"] .sg-pagination a,
main[data-page="styleguide"] .sg-pagination span {
  min-width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  border: 1px solid var(--border);
  border-radius: 6px;
  font-size: 14px;
  color: var(--text-2);
}
main[data-page="styleguide"] .sg-pagination .is-current,
main[data-page="styleguide"] .sg-pagination a:hover {
  color: #fff;
  background: var(--primary);
  border-color: var(--primary);
}
main[data-page="styleguide"] .sg-pagination .is-disabled {
  opacity: .45;
  pointer-events: none;
}
main[data-page="styleguide"] .sg-empty-demo [data-empty] {
  display: block;
}

/* index home-experts as 3 cards */
main[data-page="index"] [data-block="home-experts"] .expert-card .card-body {
  padding: 18px 18px 20px;
}
main[data-page="index"] [data-block="home-experts"] .expert-card h2 {
  font-size: 20px !important;
  margin: 0 0 8px !important;
}
main[data-page="index"] [data-block="home-experts"] .expert-card [data-slot="intro"] {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 15px;
  color: var(--text-2);
}
@media (max-width: 900px) {
  main[data-page="styleguide"] .sg-swatches,
  main[data-page="styleguide"] .sg-forms {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 640px) {
  main[data-page="styleguide"] .sg-swatches,
  main[data-page="styleguide"] .sg-forms {
    grid-template-columns: 1fr;
  }
  main[data-page="styleguide"] .sg-type-50 { font-size: 36px; }
}

/* ===== news-topic：面包屑 + 专题介绍；列表样式对齐新闻频道；侧栏相关专题+热门 ===== */
main[data-page="news-topic"] .crumb-nav {
  padding-top: 24px;
  margin-bottom: 8px;
}
main[data-page="news-topic"] .topic-intro-section {
  padding: 12px 0 0;
}
main[data-page="news-topic"] .topic-intro {
  display: grid;
  grid-template-columns: minmax(0, 320px) minmax(0, 1fr);
  gap: 32px;
  align-items: start;
  padding-bottom: 40px;
  border-bottom: 1px solid var(--border);
}
main[data-page="news-topic"] .topic-intro-media {
  border-radius: 12px;
  overflow: hidden;
  background: var(--bg-soft);
  max-width: 320px;
}
main[data-page="news-topic"] .topic-intro-media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
}
main[data-page="news-topic"] .topic-intro-copy {
  padding-top: 10px;
}
main[data-page="news-topic"] .topic-intro-copy h1 {
  margin: 0 0 16px;
  font-size: 32px;
  line-height: 1.35;
  font-weight: 700;
  color: var(--text-1);
}
main[data-page="news-topic"] .topic-intro-copy [data-slot="intro"] {
  margin: 0;
  font-size: 16px;
  line-height: 1.9;
  color: var(--text-2);
}
main[data-page="news-topic"] .news-section {
  padding-top: 40px !important;
}
main[data-page="news-topic"] .news-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 30px;
  align-items: start !important;
}
main[data-page="news-topic"] .news-side {
  display: grid;
  gap: 18px;
  align-content: start;
  position: sticky;
  top: 96px;
}
main[data-page="news-topic"] .news-side-box,
main[data-page="news-topic"] .news-hot {
  margin: 0 !important;
  padding: 24px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(23, 32, 51, .05);
}
main[data-page="news-topic"] .news-side-box h2,
main[data-page="news-topic"] .news-hot h2 {
  margin: 0 0 14px;
  font-size: 22px;
}
main[data-page="news-topic"] .news-side-box .side-link-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
main[data-page="news-topic"] .news-side-box .side-link-list li {
  border-bottom: 0 !important;
  margin: 0;
  padding: 0;
}
main[data-page="news-topic"] .news-side-box .side-link-list a {
  display: block !important;
  padding: 13px 0 !important;
  border-bottom: 1px solid var(--border) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: var(--text-1) !important;
  text-decoration: none !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}
main[data-page="news-topic"] .news-side-box .side-link-list li:last-child a {
  border-bottom: 0 !important;
}
main[data-page="news-topic"] .news-side-box .side-link-list a:hover,
main[data-page="news-topic"] .news-side-box .side-link-list a:hover span {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  padding-left: 0 !important;
}
main[data-page="news-topic"] .news-hot a {
  display: block !important;
  padding: 13px 0;
  border-bottom: 1px solid var(--border);
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: var(--text-1) !important;
  text-decoration: none !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
main[data-page="news-topic"] .news-hot a:last-of-type { border-bottom: 0; }
main[data-page="news-topic"] .news-hot a:hover,
main[data-page="news-topic"] .news-hot a:hover [data-slot="title"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* 左侧文章列表：与 news-list 频道页一致 */
main[data-page="news-topic"] .news-feed {
  display: grid;
  gap: 22px;
}
main[data-page="news-topic"] .news-card {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 24px;
  align-items: stretch;
  padding: 22px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(23, 32, 51, .04);
  text-decoration: none;
  color: inherit;
  transition: transform .25s ease, box-shadow .25s ease !important;
}
main[data-page="news-topic"] .news-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 18px 36px rgba(23, 32, 51, .1) !important;
}
main[data-page="news-topic"] .news-card:hover h2 {
  color: #3d9a63 !important;
  text-decoration: underline;
  text-underline-offset: 4px;
}
main[data-page="news-topic"] .news-card > img,
main[data-page="news-topic"] .news-card [data-slot="cover"] {
  width: 100%;
  height: 180px;
  object-fit: cover;
  border-radius: 12px;
  display: block;
}
main[data-page="news-topic"] .news-body {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
main[data-page="news-topic"] .news-body h2,
main[data-page="news-topic"] .news-body h2[data-slot="title"],
main[data-page="news-topic"] .news-card h2 {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: block !important;
  -webkit-line-clamp: unset !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  margin: 0 0 10px !important;
}
main[data-page="news-topic"] .news-body p {
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: var(--text-2);
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin: 0 0 16px !important;
}
main[data-page="news-topic"] .news-foot {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
main[data-page="news-topic"] .news-foot .meta {
  display: inline-flex !important;
  align-items: center;
  min-height: 28px;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: #eaf7f0 !important;
  color: #2f7d50 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  margin-bottom: 0 !important;
}
main[data-page="news-topic"] .news-more {
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #3d9a63 !important;
}
main[data-page="news-topic"] .news-pagination {
  margin-top: 28px;
}
@media (max-width: 992px) {
  main[data-page="news-topic"] .topic-intro {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  main[data-page="news-topic"] .topic-intro-media {
    max-width: 280px;
  }
  main[data-page="news-topic"] .news-layout {
    grid-template-columns: 1fr;
  }
  main[data-page="news-topic"] .news-side {
    position: static;
  }
  main[data-page="news-topic"] .news-card {
    grid-template-columns: 1fr;
  }
  main[data-page="news-topic"] .news-card > img,
  main[data-page="news-topic"] .news-card [data-slot="cover"] {
    height: 200px;
  }
}

/* ===== 详情页正文层级：h1 / h2 / h3 / 正文区分 ===== */
main[data-page="product-detail"] .product-detail-hero h1,
main[data-page="case-detail"] .product-detail-hero h1 {
  font-size: 42px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: -.02em;
  color: var(--text-1) !important;
  margin: 0 0 16px !important;
}
main[data-page="product-detail"] .product-detail-lead,
main[data-page="case-detail"] .product-detail-lead {
  font-size: 17px !important;
  line-height: 1.8 !important;
  color: var(--text-2) !important;
}
main[data-page="product-detail"] .detail-main-title,
main[data-page="case-detail"] .detail-main-title {
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 0 0 22px !important;
  padding-bottom: 0;
  border-bottom: 0;
  color: var(--text-1) !important;
}

/* 顶部右侧图略缩小；顶区与正文之间加间隔横线（参考品度案例详情） */
main[data-page="product-detail"] .product-detail-hero,
main[data-page="case-detail"] .product-detail-hero {
  margin-bottom: 0 !important;
  padding-bottom: 40px !important;
  border-bottom: 1px solid var(--border);
}
main[data-page="product-detail"] .product-detail-grid,
main[data-page="case-detail"] .product-detail-grid {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
  gap: 40px;
  align-items: center;
}
main[data-page="product-detail"] .product-detail-cover,
main[data-page="case-detail"] .product-detail-cover {
  width: 100%;
  max-width: 420px;
  height: 280px;
  margin-left: auto;
  object-fit: cover;
  border-radius: 12px;
}
main[data-page="product-detail"] .detail-body-layout,
main[data-page="case-detail"] .detail-body-layout {
  padding-top: 40px !important;
}
@media (max-width: 992px) {
  main[data-page="product-detail"] .product-detail-grid,
  main[data-page="case-detail"] .product-detail-grid {
    grid-template-columns: 1fr;
  }
  main[data-page="product-detail"] .product-detail-cover,
  main[data-page="case-detail"] .product-detail-cover {
    max-width: 100%;
    height: 220px;
    margin-left: 0;
  }
}

main[data-page="product-detail"] .detail-copy h2,
main[data-page="case-detail"] .detail-copy h2 {
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  margin: 40px 0 14px !important;
  padding-left: 14px;
  border-left: 3px solid var(--primary);
  color: var(--text-1) !important;
  text-decoration: none !important;
  background: transparent !important;
}
main[data-page="news-detail"] .detail-copy h2 {
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  margin: 40px 0 14px !important;
  padding-left: 0;
  border-left: 0;
  color: var(--text-1) !important;
  text-decoration: none !important;
  background: transparent !important;
}
main[data-page="product-detail"] .detail-copy h2:first-child,
main[data-page="case-detail"] .detail-copy h2:first-child,
main[data-page="news-detail"] .detail-copy h2:first-child {
  margin-top: 8px !important;
}
main[data-page="product-detail"] .detail-copy h3,
main[data-page="case-detail"] .detail-copy h3 {
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  margin: 28px 0 10px !important;
  color: var(--text-1) !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 0 !important;
}
main[data-page="news-detail"] .detail-copy h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  margin: 28px 0 10px !important;
  color: var(--text-1) !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 0 !important;
}
main[data-page="product-detail"] .detail-copy h4,
main[data-page="case-detail"] .detail-copy h4,
main[data-page="news-detail"] .detail-copy h4 {
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  margin: 22px 0 8px !important;
  color: #2f3b4d !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 0 !important;
}
main[data-page="product-detail"] .detail-copy p,
main[data-page="case-detail"] .detail-copy p,
main[data-page="news-detail"] .detail-copy p,
main[data-page="product-detail"] .detail-copy li,
main[data-page="case-detail"] .detail-copy li,
main[data-page="news-detail"] .detail-copy li {
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.9 !important;
  color: var(--text-2) !important;
}
main[data-page="product-detail"] .detail-copy > p:first-child,
main[data-page="case-detail"] .detail-copy > p:first-child,
main[data-page="news-detail"] .detail-copy > p:first-child {
  font-size: 17px !important;
  line-height: 1.85 !important;
  color: #4f5f73 !important;
}
main[data-page="news-detail"] .lead {
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
  color: #3a4658 !important;
  margin: 0 0 28px !important;
}
main[data-page="product-detail"] .detail-copy blockquote,
main[data-page="case-detail"] .detail-copy blockquote,
main[data-page="news-detail"] .detail-copy blockquote {
  margin: 24px 0 !important;
  padding: 16px 20px !important;
  border-left: 3px solid var(--primary) !important;
  background: #f4faf6 !important;
  border-radius: 0 10px 10px 0 !important;
  color: var(--text-1) !important;
  font-size: 16px !important;
  line-height: 1.8 !important;
}
main[data-page="product-detail"] .detail-copy ul,
main[data-page="case-detail"] .detail-copy ul,
main[data-page="news-detail"] .detail-copy ul,
main[data-page="product-detail"] .detail-copy ol,
main[data-page="case-detail"] .detail-copy ol,
main[data-page="news-detail"] .detail-copy ol {
  margin: 12px 0 20px !important;
  padding-left: 1.25em !important;
}

/* 问题详情：问题标题 vs 答案正文 */
main[data-page="help-detail"] .help-detail-head h1,
main[data-page="help-detail"] .help-detail-main h1[data-slot="question"] {
  font-size: 36px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: -.02em;
  color: var(--text-1) !important;
  margin: 0 0 14px !important;
}
main[data-page="help-detail"] .plain-answer,
main[data-page="help-detail"] .plain-answer.article-body,
main[data-page="help-detail"] [data-slot="answer"] {
  margin: 22px 0 32px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.95 !important;
  color: #4f5f73 !important;
  white-space: normal;
}
main[data-page="help-detail"] .plain-answer p,
main[data-page="help-detail"] [data-slot="answer"] p {
  margin: 0 0 18px;
}
main[data-page="help-detail"] .plain-answer img,
main[data-page="help-detail"] [data-slot="answer"] img {
  display: block;
  width: auto;
  max-width: 78%;
  margin: 24px auto;
  border-radius: 4px;
}
main[data-page="help-detail"] .related-list-head h2,
main[data-page="help-detail"] .related-questions-block h2 {
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: var(--text-1) !important;
}

/* ===== 首页创始人：关于我们下方；宽 1350；参考卡片排版 ===== */
main[data-page="index"] .founder-section {
  padding: 0 !important;
  background: transparent !important;
}
main[data-page="index"] .founder-wrap {
  width: min(1350px, calc(100% - 60px)) !important;
  max-width: 1350px !important;
  margin-inline: auto;
}
main[data-page="index"] .founder-feature-v2 {
  display: grid !important;
  grid-template-columns: minmax(280px, 380px) minmax(0, 1fr) !important;
  gap: 40px !important;
  width: 100% !important;
  max-width: 1350px !important;
  margin: 0 auto !important;
  padding: 36px 40px !important;
  align-items: center !important;
  box-sizing: border-box;
  overflow: hidden;
  border: 0 !important;
  border-radius: 18px !important;
  background:
    radial-gradient(ellipse at 100% 100%, rgba(120, 170, 210, .18) 0%, transparent 46%),
    linear-gradient(135deg, #eef5f9 0%, #f5f9fc 48%, #eef4f8 100%) !important;
  box-shadow: 0 14px 40px rgba(40, 70, 100, .08) !important;
  text-decoration: none;
  color: inherit;
  transition: box-shadow .25s ease, transform .25s ease;
}
main[data-page="index"] .founder-feature-v2:hover {
  box-shadow: 0 18px 48px rgba(40, 70, 100, .12) !important;
  border-color: transparent !important;
}
main[data-page="index"] .founder-feature-v2 .founder-photo,
main[data-page="index"] .founder-feature-v2 .media {
  aspect-ratio: 3 / 4 !important;
  height: auto !important;
  min-height: 0 !important;
  border-radius: 14px !important;
  overflow: hidden;
  margin: 0;
  background: #dbe6ee;
  box-shadow: 0 10px 28px rgba(40, 70, 100, .12);
}
main[data-page="index"] .founder-feature-v2 .founder-photo img,
main[data-page="index"] .founder-feature-v2 .media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transition: transform .45s ease;
}
main[data-page="index"] .founder-feature-v2:hover .founder-photo img,
main[data-page="index"] .founder-feature-v2:hover .media img {
  transform: scale(1.03);
}
main[data-page="index"] .founder-feature-v2 .founder-copy {
  position: relative;
  z-index: 1;
  padding: 8px 8px 8px 0 !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}
main[data-page="index"] .founder-feature-v2 .founder-label {
  display: inline-flex !important;
  align-items: center;
  gap: 12px;
  width: fit-content;
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #3d9a63 !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  letter-spacing: .12em;
  line-height: 1;
}
main[data-page="index"] .founder-feature-v2 .founder-label::before {
  content: "";
  display: block;
  width: 28px;
  height: 2px;
  background: #3d9a63;
  flex-shrink: 0;
}
main[data-page="index"] .founder-feature-v2 h3 {
  font-size: 40px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  margin: 0 0 12px !important;
  color: var(--text-1) !important;
  letter-spacing: 0;
}
main[data-page="index"] .founder-feature-v2:hover h3 {
  color: #2f7d50 !important;
}
main[data-page="index"] .founder-feature-v2 .meta,
main[data-page="index"] .founder-feature-v2 [data-slot="headline"] {
  display: block !important;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 20px !important;
  padding: 10px 16px !important;
  border: 0 !important;
  border-left: 0 !important;
  border-radius: 8px !important;
  background: linear-gradient(90deg, #eef8f2 0%, rgba(248, 252, 249, .85) 100%) !important;
  color: #2f7d50 !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
  font-weight: 500 !important;
  letter-spacing: .01em;
}
main[data-page="index"] .founder-feature-v2 p,
main[data-page="index"] .founder-feature-v2 [data-slot="intro"] {
  margin: 0 !important;
  font-size: 16px !important;
  line-height: 2.15 !important;
  color: var(--text-2) !important;
  font-weight: 400 !important;
}
@media (max-width: 900px) {
  main[data-page="index"] .founder-feature-v2 {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding: 24px !important;
  }
  main[data-page="index"] .founder-feature-v2 .founder-photo,
  main[data-page="index"] .founder-feature-v2 .media {
    max-width: 320px;
    margin-inline: auto;
  }
  main[data-page="index"] .founder-feature-v2 .founder-copy {
    padding: 0 !important;
  }
  main[data-page="index"] .founder-feature-v2 .founder-label {
    font-size: 16px !important;
  }
  main[data-page="index"] .founder-feature-v2 h3 {
    font-size: 30px !important;
  }
  main[data-page="index"] .founder-feature-v2 .meta,
  main[data-page="index"] .founder-feature-v2 [data-slot="headline"] {
    font-size: 18px !important;
    padding: 8px 14px !important;
    margin-bottom: 16px !important;
  }
}

/* ===== 手机版排版优化（≤768px，PC 不动） ===== */
@media (max-width: 768px) {
  /* --- 首页 banner：手机版 750×300 --- */
  main[data-page="index"] .hero {
    aspect-ratio: 750 / 300;
  }
  main[data-page="index"] .slide picture,
  main[data-page="index"] .slide img {
    aspect-ratio: 750 / 300;
    object-fit: cover;
  }
  main[data-page="index"] .slider-dots {
    bottom: 12px;
  }

  /* --- 首页：版块间距 --- */
  main[data-page="index"] {
    gap: 36px;
  }
  main[data-page="index"] > .section.soft {
    padding: 36px 0;
  }
  main[data-page="index"] > .friendly {
    margin: 0;
    padding: 0 0 28px;
  }
  main[data-page="index"] .section-head-row {
    margin-bottom: 20px;
  }
  main[data-page="index"] .section-head-center h2,
  main[data-page="index"] .section > .container > .split h2,
  main[data-page="index"] .friendly h2,
  main[data-page="index"] .section-head-row h2 {
    font-size: 24px;
  }

  /* --- 首页：查看更多移至版块底部 + 按钮样式 --- */
  main[data-page="index"] .section > .container {
    display: flex;
    flex-direction: column;
  }
  main[data-page="index"] .section-head.section-head-row {
    display: contents;
  }
  main[data-page="index"] .section-head-row h2 {
    order: 1;
    margin-bottom: 18px;
  }
  main[data-page="index"] .section > .container > .grid,
  main[data-page="index"] .section > .container > [data-block] {
    order: 2;
  }
  main[data-page="index"] .section-head-row .more-btn {
    order: 3;
    align-self: stretch;
    display: flex !important;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 100%;
    margin-top: 24px;
    min-height: 50px !important;
    padding: 0 18px !important;
    border: 1px solid #d5e8db !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #3d9a63 !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    gap: 4px !important;
    box-shadow: none !important;
    transition: background .2s ease, color .2s ease, border-color .2s ease !important;
  }
  main[data-page="index"] .section-head-row .more-btn span {
    font-size: 16px !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    transform: none !important;
  }
  main[data-page="index"] .section-head-row .more-btn::after {
    content: "›" !important;
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    background: none !important;
    font-size: 16px !important;
    line-height: 1 !important;
    transition: none !important;
  }
  main[data-page="index"] .section-head-row .more-btn span::after {
    display: none !important;
  }
  main[data-page="index"] .section-head-row .more-btn span::before {
    display: none !important;
  }
  main[data-page="index"] .section-head-row .more-btn:hover,
  main[data-page="index"] .section-head-row .more-btn:focus-visible {
    background: #f4faf6 !important;
    color: #2f7d50 !important;
    border-color: #b8dfc8 !important;
    box-shadow: none !important;
    transform: none !important;
  }
  main[data-page="index"] .section-head-row .more-btn:hover::after,
  main[data-page="index"] .section-head-row .more-btn:focus-visible::after {
    transform: none;
  }

  /* --- 首页：关于我们与图片间距 --- */
  main[data-page="index"] .home-about.split {
    gap: 18px;
  }
  main[data-page="index"] .home-about-copy h2 {
    margin-bottom: 12px;
  }

  /* --- 首页 & 列表：卡片标题/摘要/按钮统一 --- */
  main[data-page="index"] [data-block="home-products"] .card h2,
  main[data-page="index"] [data-block="home-cases"] .card h2,
  main[data-page="index"] [data-block="home-cases"] .case-card .card-body h2,
  main[data-page="index"] [data-block="home-news"] .card h2,
  main[data-page="product-list"] [data-block="list"] .card h2,
  main[data-page="case-list"] [data-block="list"] .card h2,
  main[data-page="case-list"] .case-card .card-body h2,
  main[data-page="news-list"] .news-body h2,
  main[data-page="news-list"] .news-body h2[data-slot="title"],
  main[data-page="news-list"] .news-card h2,
  main[data-page="news-topic"] .news-body h2,
  main[data-page="news-topic"] .news-body h2[data-slot="title"],
  main[data-page="news-topic"] .news-card h2 {
    font-size: 18px !important;
    line-height: 1.45 !important;
    margin: 0 0 6px !important;
    font-weight: 700;
    white-space: normal !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: unset !important;
  }
  main[data-page="index"] [data-block="home-products"] .card p,
  main[data-page="index"] [data-block="home-cases"] .card p,
  main[data-page="index"] [data-block="home-news"] .card p {
    font-size: 14px !important;
    line-height: 1.65 !important;
    margin: 0 !important;
  }
  main[data-page="product-list"] [data-block="list"] .card p,
  main[data-page="case-list"] [data-block="list"] .card p,
  main[data-page="news-list"] .news-body p,
  main[data-page="news-list"] .news-card p,
  main[data-page="news-topic"] .news-body p,
  main[data-page="news-topic"] .news-card p {
    font-size: 14px !important;
    line-height: 1.65 !important;
    margin: 0 !important;
  }
  main[data-page="index"] [data-block="home-products"] .card-body,
  main[data-page="index"] [data-block="home-cases"] .card-body,
  main[data-page="index"] [data-block="home-news"] .card-body,
  main[data-page="product-list"] [data-block="list"] .card-body,
  main[data-page="case-list"] [data-block="list"] .card-body {
    padding: 14px 16px 16px !important;
  }
  main[data-page="index"] .card-link,
  main[data-page="index"] [data-block="home-products"] .news-more,
  main[data-page="index"] [data-block="home-products"] .card-link,
  main[data-page="index"] [data-block="home-cases"] .news-more,
  main[data-page="index"] [data-block="home-cases"] .card-link,
  main[data-page="index"] [data-block="home-news"] .news-more,
  main[data-page="index"] [data-block="home-news"] .card-link,
  main[data-page="product-list"] [data-block="list"] .news-more,
  main[data-page="product-list"] [data-block="list"] .card-link,
  main[data-page="case-list"] [data-block="list"] .news-more,
  main[data-page="case-list"] [data-block="list"] .card-link,
  main[data-page="news-list"] .news-more,
  main[data-page="news-topic"] .news-more {
    font-size: 16px !important;
    margin-top: 12px !important;
  }
  main[data-page="index"] [data-block="home-news"] .card-foot {
    margin-top: 12px !important;
  }
  main[data-page="news-list"] .news-card {
    padding: 14px !important;
    gap: 12px !important;
  }
  main[data-page="news-list"] .news-foot {
    margin-top: 12px !important;
    gap: 10px !important;
  }
  main[data-page="index"] [data-block="home-faqs"] .help-category li a,
  main[data-page="index"] [data-block="home-faqs"] .help-category li a [data-slot="question"] {
    font-size: 14px !important;
    color: #4f5f73 !important;
  }
  main[data-page="index"] [data-block="home-faqs"] .help-category li a::before {
    font-size: 14px !important;
  }
  main[data-page="index"] [data-block="home-faqs"] .help-category .category-head a {
    font-size: 16px !important;
  }
  main[data-page="index"] [data-block="home-faqs"] .help-category h2 {
    font-size: 18px !important;
    line-height: 1.45 !important;
  }
  main[data-page="index"] .home-about-copy .lead,
  main[data-page="index"] .home-about-copy p,
  main[data-page="about"] .about-brand .rich-text p {
    font-size: 16px !important;
    line-height: 1.9 !important;
  }
  main[data-page="news-detail"] .article-side,
  main[data-page="news-detail"] .article-layout > aside {
    margin-top: 40px !important;
  }
  main[data-page="news-detail"] .article-main .related-list {
    margin-bottom: 4px !important;
  }
  main[data-page="help-detail"] .article-layout,
  main[data-page="help-detail"] .help-detail-wide {
    row-gap: 18px !important;
  }
  main[data-page="help-detail"] .article-side,
  main[data-page="help-detail"] .article-layout > aside {
    margin-top: 0 !important;
  }
  main[data-page="help-detail"] .related-questions-block .related-list-head {
    margin-bottom: 10px !important;
  }

  /* --- 列表频道：banner / 分类 / 内容间距统一 --- */
  main[data-page="product-list"] .channel-hero ~ .section,
  main[data-page="case-list"] .channel-hero ~ .section,
  main[data-page="expert-list"] .channel-hero ~ .section,
  main[data-page="news-list"] .news-section,
  main[data-page="video-list"] .video-section {
    padding-top: 18px !important;
  }
  main[data-page="product-list"] .filters,
  main[data-page="case-list"] .filters,
  main[data-page="expert-list"] .filters {
    margin-top: 0 !important;
  }

  /* --- 频道页 banner（除首页） --- */
  main:not([data-page="index"]) .channel-hero {
    height: 160px;
    min-height: 160px;
    padding: 0;
  }
  main:not([data-page="index"]) .channel-hero h1,
  main[data-page="news-list"] .news-hero h1 {
    font-size: 26px !important;
    margin: 0 auto !important;
    font-weight: 600;
    color: rgba(255, 255, 255, .88) !important;
    letter-spacing: .06em !important;
  }
  main:not([data-page="index"]) .channel-hero > .container > p:last-child,
  main:not([data-page="index"]) .channel-hero [data-slot="intro"] {
    display: none !important;
  }

  /* --- 关于我们：间距、时间轴左置、标题字号 --- */
  main[data-page="about"] .section {
    padding: 40px 0 !important;
  }
  main[data-page="about"] .about-roots,
  main[data-page="about"] .about-biz-v2,
  main[data-page="about"] .about-spirit-v6 {
    padding-top: 32px !important;
    padding-bottom: 32px !important;
  }
  main[data-page="about"] .about-roots,
  main[data-page="about"] .about-spirit-v6 {
    background: #f3f8f5;
  }
  main[data-page="about"] .about-roots-bg,
  main[data-page="about"] .about-spirit-bg {
    display: none !important;
  }
  main[data-page="about"] .about-split-head,
  main[data-page="about"] .about-biz-head {
    margin-bottom: 24px;
  }
  main[data-page="about"] .about-split-head h2,
  main[data-page="about"] .about-biz-head h2,
  main[data-page="about"] .about-spirit-v6 .spirit-head h2,
  main[data-page="about"] .about-brand .rich-text h2:first-child {
    font-size: 24px !important;
    line-height: 1.4 !important;
    margin-bottom: 10px !important;
  }
  main[data-page="about"] .about-split-head p,
  main[data-page="about"] .about-biz-head p {
    font-size: 16px !important;
    line-height: 1.85 !important;
  }
  main[data-page="about"] .about-brand .rich-text h2:first-child {
    margin-top: 8px;
    margin-bottom: 10px;
  }
  main[data-page="about"] .about-brand {
    gap: 18px;
  }
  main[data-page="about"] .about-timeline-rail {
    display: flex;
    flex-direction: column;
    gap: 0;
    border-top: 0;
    border-left: 2px solid #d7e8dc;
    margin-left: 8px;
    padding-left: 0;
  }
  main[data-page="about"] .about-rail-item {
    padding: 0 0 26px 22px;
  }
  main[data-page="about"] .about-rail-item:last-child {
    padding-bottom: 0;
  }
  main[data-page="about"] .about-rail-item:before {
    top: 5px;
    left: -7px;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-shell {
    padding: 28px 22px !important;
    gap: 24px !important;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-head p {
    font-size: 16px !important;
    white-space: normal !important;
  }

  /* --- 列表页：分类横向滑动 --- */
  .section-list .filters,
  main[data-page="product-list"] .filters,
  main[data-page="case-list"] .filters,
  main[data-page="expert-list"] .filters,
  main[data-page="news-list"] .news-filters,
  main[data-page="news-list"] .filters {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    margin-inline: -16px;
    padding-inline: 16px;
    padding-bottom: 4px;
    margin-bottom: 14px;
    gap: 10px;
  }
  .section-list .filters::-webkit-scrollbar,
  main[data-page="news-list"] .news-filters::-webkit-scrollbar,
  main[data-page="news-list"] .filters::-webkit-scrollbar {
    display: none;
  }
  .section-list .filters .filter,
  main[data-page="product-list"] .filters .filter,
  main[data-page="case-list"] .filters .filter,
  main[data-page="expert-list"] .filters .filter,
  main[data-page="news-list"] .news-filters .filter,
  main[data-page="news-list"] .filters .filter {
    flex: 0 0 auto;
  }

  /* --- 详情页：标题字号 --- */
  main[data-page="product-detail"] .product-detail-hero h1,
  main[data-page="case-detail"] .product-detail-hero h1 {
    font-size: 28px !important;
    line-height: 1.32 !important;
    margin-bottom: 12px !important;
  }
  main[data-page="news-detail"] .article-head h1,
  main[data-page="news-detail"] .article-main > h1,
  main[data-page="news-detail"] .article-main h1[data-slot="title"] {
    font-size: 26px !important;
    line-height: 1.35 !important;
    margin-bottom: 12px !important;
  }
  main[data-page="help-detail"] .help-detail-head h1,
  main[data-page="help-detail"] .help-detail-main h1[data-slot="question"] {
    font-size: 26px !important;
    line-height: 1.35 !important;
  }
  main[data-page="help-detail"] .plain-answer,
  main[data-page="help-detail"] .plain-answer.article-body,
  main[data-page="help-detail"] [data-slot="answer"] {
    margin: 18px 0 28px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    font-size: 16px !important;
    line-height: 1.9 !important;
    white-space: normal;
  }
  main[data-page="help-detail"] .plain-answer img,
  main[data-page="help-detail"] [data-slot="answer"] img {
    max-width: 100%;
    margin: 18px auto;
  }

  /* --- 文章详情：关联服务区 --- */
  main[data-page="news-detail"] .article-head {
    margin: 0 0 10px !important;
    padding-bottom: 0 !important;
  }
  main[data-page="news-detail"] .relate-card {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    grid-template-areas:
      "thumb info"
      "action action";
    align-items: start;
    gap: 10px 12px;
    margin: 12px 0 20px;
    padding: 14px;
    border-radius: 12px;
    border: 1px solid #e6eee9;
    background: #fff;
    box-shadow: 0 2px 12px rgba(23, 32, 51, .05);
  }
  main[data-page="news-detail"] .relate-card .relate-logo {
    grid-area: thumb;
    width: 56px;
    height: 56px;
    border-radius: 8px;
    border: 1px solid #eef3f0;
    overflow: hidden;
    background: #f7faf8;
  }
  main[data-page="news-detail"] .relate-card .relate-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  main[data-page="news-detail"] .relate-card .relate-info {
    grid-area: info;
    align-self: center;
    min-width: 0;
    text-align: left;
  }
  main[data-page="news-detail"] .relate-card .relate-info h2 {
    font-size: 16px !important;
    line-height: 1.4 !important;
    margin: 0 0 4px !important;
    font-weight: 600 !important;
    color: var(--text-1) !important;
  }
  main[data-page="news-detail"] .relate-card .relate-info p,
  main[data-page="news-detail"] .relate-card [data-slot="summary"] {
    font-size: 13px !important;
    line-height: 1.55 !important;
    color: var(--text-2) !important;
    margin: 0 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  main[data-page="news-detail"] .relate-card .relate-btn {
    grid-area: action;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 40px;
    margin-top: 2px;
    padding: 0 16px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    border-radius: 8px !important;
    border: 1px solid #d5e8db !important;
    background: #f4faf6 !important;
    color: #2f7d50 !important;
    white-space: nowrap;
  }
  main[data-page="news-detail"] .relate-card .relate-btn:hover {
    background: #eaf7f0 !important;
    border-color: #3d9a63 !important;
    color: #2f7d50 !important;
  }

  /* --- 面包屑与下方内容间距（全站对齐专题页） --- */
  .crumb-nav,
  .breadcrumbs,
  [data-block="breadcrumb"] {
    padding-top: 14px !important;
    padding-bottom: 0 !important;
    margin-bottom: 4px !important;
  }
  .channel-hero + .crumb-nav + .section {
    padding-top: 12px !important;
  }
  main[data-page="product-list"] [data-block="pagination"] {
    flex-wrap: nowrap;
    justify-content: center;
    gap: 4px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  main[data-page="product-list"] [data-block="pagination"] a,
  main[data-page="product-list"] [data-block="pagination"] span {
    min-width: 28px;
    height: 32px;
    padding: 0 6px;
    font-size: 13px;
    flex: 0 0 auto;
  }
  main[data-page="product-detail"] .product-detail-hero,
  main[data-page="case-detail"] .product-detail-hero {
    margin-top: 12px !important;
    margin-bottom: 0 !important;
    padding-bottom: 24px !important;
  }
  main[data-page="product-detail"] .product-detail-grid,
  main[data-page="case-detail"] .product-detail-grid {
    gap: 20px !important;
  }
  main[data-page="product-detail"] .product-detail-lead,
  main[data-page="case-detail"] .product-detail-lead {
    margin-bottom: 0 !important;
  }
  main[data-page="product-detail"] .product-detail-tags,
  main[data-page="case-detail"] .product-detail-tags {
    margin-top: 12px !important;
  }
  main[data-page="product-detail"] .detail-body-layout,
  main[data-page="case-detail"] .detail-body-layout {
    padding-top: 24px !important;
    padding-bottom: 20px !important;
  }
  main[data-page="news-detail"] .article-layout > .breadcrumbs,
  main[data-page="news-detail"] .article-layout > [data-block="breadcrumb"] {
    padding-top: 14px !important;
    padding-bottom: 0 !important;
    margin-bottom: 4px !important;
  }
  main[data-page="news-detail"] .article-shell {
    padding-top: 0 !important;
  }
  main[data-page="expert-detail"] .crumb-nav {
    margin-bottom: 4px !important;
  }
  main[data-page="expert-detail"] .person-detail {
    margin: 6px auto 20px !important;
  }
  main[data-page="help-detail"] .crumb-nav {
    padding-top: 14px !important;
    margin-bottom: 4px !important;
  }
  main[data-page="help-category"] .crumb-nav {
    padding-top: 14px !important;
    margin-bottom: 4px !important;
  }
  main[data-page="help-category"] .crumb-nav + .section {
    padding-top: 0 !important;
  }
  main[data-page="news-topic"] .crumb-nav {
    padding-top: 14px !important;
    margin-bottom: 4px !important;
  }

  /* --- 专家详情：人物区去外框，对齐产品详情 --- */
  main[data-page="expert-detail"] .person-panel {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  main[data-page="expert-detail"] .person-top {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: 20px;
  }
  main[data-page="expert-detail"] .person-photo {
    max-width: 220px;
    margin-inline: 0;
  }
  main[data-page="expert-detail"] .person-intro {
    text-align: left;
  }
  main[data-page="expert-detail"] .person-panel h1 {
    font-size: 28px !important;
  }

  /* --- 详情页：联系我们与页脚间距 --- */
  main[data-page="product-detail"] .side-panel,
  main[data-page="case-detail"] .side-panel,
  main[data-page="expert-detail"] .side-panel,
  main[data-page="news-detail"] .side-panel,
  main[data-page="help-detail"] .side-panel {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  main[data-page="product-detail"] .side-panel .side-contact,
  main[data-page="case-detail"] .side-panel .side-contact,
  main[data-page="expert-detail"] .side-panel .side-contact,
  main[data-page="news-detail"] .side-panel .side-contact,
  main[data-page="help-detail"] .side-panel .side-contact {
    margin-bottom: 0 !important;
  }
  main[data-page="news-detail"] .article-layout,
  main[data-page="help-detail"] .article-layout,
  main[data-page="help-detail"] .help-detail-wide {
    padding-bottom: 12px !important;
    margin-bottom: 0 !important;
  }
  main[data-page="news-detail"] .article-shell {
    padding-bottom: 0 !important;
  }

  /* --- 详情页：正文标题字号 --- */
  main[data-page="product-detail"] .detail-main-title,
  main[data-page="case-detail"] .detail-main-title {
    font-size: 18px !important;
    margin-bottom: 16px !important;
  }
  main[data-page="product-detail"] .detail-copy h1,
  main[data-page="case-detail"] .detail-copy h1,
  main[data-page="news-detail"] .detail-copy h1 {
    font-size: 20px !important;
    line-height: 1.4 !important;
    margin: 28px 0 12px !important;
  }
  main[data-page="product-detail"] .detail-copy h2,
  main[data-page="case-detail"] .detail-copy h2,
  main[data-page="news-detail"] .detail-copy h2 {
    font-size: 20px !important;
    line-height: 1.4 !important;
    margin: 28px 0 12px !important;
    padding-left: 12px;
  }
  main[data-page="news-detail"] .detail-copy h2 {
    padding-left: 0 !important;
    border-left: 0 !important;
  }
  main[data-page="product-detail"] .detail-copy h2:first-child,
  main[data-page="case-detail"] .detail-copy h2:first-child,
  main[data-page="news-detail"] .detail-copy h2:first-child {
    margin-top: 4px !important;
  }
  main[data-page="product-detail"] .detail-copy h3,
  main[data-page="case-detail"] .detail-copy h3,
  main[data-page="news-detail"] .detail-copy h3 {
    font-size: 17px !important;
    margin: 22px 0 8px !important;
  }
  main[data-page="product-detail"] .detail-copy h4,
  main[data-page="case-detail"] .detail-copy h4,
  main[data-page="news-detail"] .detail-copy h4 {
    font-size: 16px !important;
    margin: 18px 0 6px !important;
  }

  /* --- 手机版：全站字号微调 --- */
  /* 首页：创始人、FAQ、卡片链接与查看更多同字号 */
  main[data-page="index"] .founder-feature-v2 h3 {
    font-size: 26px !important;
  }
  main[data-page="index"] .founder-feature-v2 .founder-label {
    font-size: 14px !important;
  }
  main[data-page="index"] .founder-feature-v2 .meta,
  main[data-page="index"] .founder-feature-v2 [data-slot="headline"] {
    font-size: 15px !important;
  }
  main[data-page="index"] .card-link,
  main[data-page="index"] [data-block="home-products"] .news-more,
  main[data-page="index"] [data-block="home-products"] .card-link,
  main[data-page="index"] [data-block="home-cases"] .news-more,
  main[data-page="index"] [data-block="home-cases"] .card-link,
  main[data-page="index"] [data-block="home-news"] .news-more,
  main[data-page="index"] [data-block="home-news"] .card-link,
  main[data-page="index"] .section-head-row .more-btn,
  main[data-page="index"] .section-head-row .more-btn span {
    font-size: 16px !important;
  }

  /* 关于我们：核心业务标题对齐企业理念 */
  main[data-page="about"] .about-biz-card h3 {
    font-size: 17px !important;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-list h3 {
    font-size: 20px !important;
  }

  main[data-page="news-list"] .news-filters,
  main[data-page="news-list"] .filters {
    margin-bottom: 14px !important;
  }

  /* 列表页分类 */
  .section-list .filters .filter,
  main[data-page="product-list"] .filters .filter,
  main[data-page="case-list"] .filters .filter,
  main[data-page="expert-list"] .filters .filter,
  main[data-page="news-list"] .news-filters .filter,
  main[data-page="news-list"] .filters .filter {
    font-size: 14px !important;
  }

  /* 底部联系我们 */
  .site-footer .footer-contact h2,
  .site-footer h2 {
    font-size: 16px !important;
  }

  /* 专家团队列表 */
  main[data-page="expert-list"] .expert-card h2 {
    font-size: 19px !important;
  }
  main[data-page="expert-list"] .expert-card .meta {
    font-size: 13px !important;
  }

  /* 联系我们 */
  main[data-page="contact"] .channel-hero ~ .section {
    padding-top: 28px !important;
  }
  main[data-page="contact"] .contact-side-title,
  main[data-page="contact"] .message-form-card > h2 {
    font-size: 20px !important;
  }

  /* 问题地图首页：仅分类标题对齐新闻列表，下方问题条目不变 */
  main[data-page="help-list"] .help-category .category-head h2 {
    font-size: 20px !important;
    line-height: 1.4 !important;
  }
  main[data-page="help-category"] .question-card h2,
  main[data-page="help-category"] .question-card [data-slot="question"] {
    font-size: 20px !important;
  }

  /* 详情页：相关推荐类标题 */
  main[data-page="expert-detail"] .side-panel .side-box h2,
  main[data-page="product-detail"] .side-panel .side-box h2,
  main[data-page="case-detail"] .side-panel .side-box h2,
  main[data-page="news-detail"] .side-panel .side-box h2,
  main[data-page="help-detail"] .side-panel .side-box h2,
  main[data-page="help-category"] .sidebar section h2 {
    font-size: 17px !important;
  }
  main[data-page="product-detail"] .related-block-bar h2,
  main[data-page="case-detail"] .related-block-bar h2,
  main[data-page="news-detail"] .related-list-head h2,
  main[data-page="help-detail"] .related-list-head h2,
  main[data-page="help-detail"] .related-questions-block h2 {
    font-size: 19px !important;
  }
  main[data-page="product-detail"] .side-panel .side-contact h2,
  main[data-page="case-detail"] .side-panel .side-contact h2,
  main[data-page="expert-detail"] .side-panel .side-contact h2,
  main[data-page="news-detail"] .side-panel .side-contact h2,
  main[data-page="help-detail"] .side-panel .side-contact h2 {
    font-size: 16px !important;
  }

  /* 专题页：顶区左图右文 */
  main[data-page="news-topic"] .topic-intro-section {
    padding-bottom: 0 !important;
  }
  main[data-page="news-topic"] .news-section {
    padding-top: 18px !important;
  }
  main[data-page="news-topic"] .topic-intro {
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 12px 14px;
    align-items: start;
    padding-bottom: 24px;
  }
  main[data-page="news-topic"] .topic-intro-media {
    max-width: 112px;
    width: 100%;
    border-radius: 8px;
  }
  main[data-page="news-topic"] .topic-intro-media img {
    aspect-ratio: 4 / 3;
    max-height: none;
    width: 100%;
    object-fit: cover;
  }
  main[data-page="news-topic"] .topic-intro-copy {
    padding-top: 0;
    min-width: 0;
  }
  main[data-page="news-topic"] .topic-intro-copy h1 {
    font-size: 18px !important;
    margin-bottom: 8px !important;
    line-height: 1.35 !important;
  }
  main[data-page="news-topic"] .topic-intro-copy [data-slot="intro"] {
    font-size: 13px !important;
    line-height: 1.65 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  main[data-page="news-topic"] .news-side-box h2,
  main[data-page="news-topic"] .news-hot h2 {
    font-size: 17px !important;
  }
}

/* 首页常见问题：两组各三条问题文字色 #4f5f73（PC + 手机） */
main[data-page="index"] [data-block="home-faqs"] .help-category li a,
main[data-page="index"] [data-block="home-faqs"] .help-category li a [data-slot="question"] {
  color: #4f5f73 !important;
}

/* 次级正文/列表项文字色 #4f5f73（详情侧栏、相关推荐、频道侧栏等，PC + 手机） */
.side-panel .side-link-list a,
.side-panel .side-link-list a [data-slot="title"],
.side-panel .side-link-list a [data-slot="name"],
.side-panel .side-link-list a span:not(.sr-only),
.side-panel .side-box > a:not(.button):not(.tags-more-btn),
.side-panel .side-box > a:not(.button) [data-slot="title"],
.side-panel .side-box > a:not(.button) [data-slot="name"] {
  color: #4f5f73 !important;
}

main[data-page="product-detail"] .related-card h3,
main[data-page="product-detail"] .related-card [data-slot="name"],
main[data-page="case-detail"] .related-card h3,
main[data-page="case-detail"] .related-card [data-slot="name"],
main[data-page="news-detail"] .related-list li a,
main[data-page="news-detail"] .related-list li a [data-slot="title"],
main[data-page="help-detail"] .related-list li a,
main[data-page="help-detail"] .related-list li a [data-slot="question"],
main[data-page="help-detail"] .related-questions-block li a,
main[data-page="help-detail"] .related-questions-block li a [data-slot="question"] {
  color: #4f5f73 !important;
}

main[data-page="news-list"] .news-hot a,
main[data-page="news-list"] .news-hot a [data-slot="title"] {
  color: #4f5f73 !important;
}

main[data-page="help-list"] .help-cat-list a,
main[data-page="help-list"] .help-cat-list .q,
main[data-page="help-list"] .help-cat-list [data-slot="question"] {
  color: #4f5f73 !important;
}

main[data-page="help-category"] .sidebar a:not(.button),
main[data-page="help-category"] .sidebar a:not(.button) [data-slot="question"],
main[data-page="help-category"] .sidebar a:not(.button) [data-slot="name"] {
  color: #4f5f73 !important;
}
main[data-page="help-category"] .sidebar a:not(.button):hover,
main[data-page="help-category"] .sidebar a:not(.button):hover [data-slot="question"],
main[data-page="help-category"] .sidebar a:not(.button):hover [data-slot="name"] {
  color: #3d9a63 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* PC 首页：常见问题分类标题 21px 加粗 */
@media (min-width: 769px) {
  main[data-page="index"] [data-block="home-faqs"] .help-category .category-head h2,
  main[data-page="index"] [data-block="home-faqs"] .help-category h2[data-slot="name"] {
    font-size: 21px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
  }
}

/* 问题详情：正文无浅绿底框（PC + 手机兜底） */
main[data-page="help-detail"] .help-detail-main [data-slot="answer"],
main[data-page="help-detail"] .help-detail-main .plain-answer,
main[data-page="help-detail"] .help-detail-main .answer-first {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* 关于我们：品牌介绍下方视频（参考得益新鲜订处理） */
.about-intro-video {
  display: block;
  margin: 48px 0 0;
  overflow: hidden;
  border-radius: 20px;
  box-shadow: 0 10px 28px rgba(61, 154, 99, .12);
  background: #0f2438;
}
.about-intro-video video {
  display: block;
  width: 100%;
  height: auto;
  vertical-align: top;
}
@media (max-width: 768px) {
  .about-intro-video {
    margin-top: 36px;
    border-radius: 14px;
  }
}

/* 精彩视频列表 */
main[data-page="video-list"] .video-section {
  padding-top: 36px;
}
.video-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.video-card {
  display: block;
  width: 100%;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  text-align: left;
  cursor: pointer;
  color: inherit;
  font: inherit;
  transition: .3s ease;
}
.video-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
}
.video-thumb {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  background: #0f1720;
  overflow: hidden;
}
.video-thumb video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
}
.video-play {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 58px;
  height: 58px;
  margin: -29px 0 0 -29px;
  border-radius: 50%;
  background: rgba(61, 154, 99, .92);
  box-shadow: 0 8px 20px rgba(15, 23, 32, .28);
}
.video-play:after {
  content: "";
  position: absolute;
  left: 23px;
  top: 18px;
  border-style: solid;
  border-width: 11px 0 11px 18px;
  border-color: transparent transparent transparent #fff;
}
.video-card:hover .video-play {
  background: #2f7d50;
}
.video-card-body {
  display: block;
  padding: 14px 16px 16px;
}
.video-card-body h2 {
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
  font-weight: 400;
}

.video-modal {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(15, 23, 32, .72);
}
.video-modal[hidden] {
  display: none !important;
}
body.is-video-modal-open {
  overflow: hidden;
}
.video-modal-dialog {
  position: relative;
  width: min(960px, 100%);
  background: #000;
  border-radius: 12px;
  overflow: hidden;
}
.video-modal-dialog video {
  width: 100%;
  display: block;
  max-height: 80vh;
  background: #000;
}
.video-modal-close {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, .55);
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}
.video-modal-close:hover,
.video-modal-close:focus-visible {
  background: #3d9a63;
}

@media (max-width: 1200px) {
  .video-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .video-grid {
    grid-template-columns: 1fr;
  }
  main[data-page="video-list"] .video-section {
    padding-top: 18px;
  }
  .video-modal {
    padding: 16px;
  }
  .video-modal-close {
    top: 8px;
    right: 8px;
  }
}

.article-abstract {
  margin: 16px 0 0;
  padding: 14px 18px;
  background: #f4faf6;
  border-radius: 8px;
  color: #4f5f73;
  font-size: 15px;
  line-height: 1.8;
  text-align: left;
}
main[data-page="news-detail"] .article-meta {
  margin-bottom: 0;
}
main[data-page="help-detail"] .help-detail-head .article-abstract,
main[data-page="help-detail"] .article-abstract {
  margin-top: 18px;
}

/* ===== 核心服务 ===== */
main[data-page="product-list"] .channel-hero ~ .svc-section {
  padding-top: 48px;
  padding-bottom: 80px;
}
main[data-page="product-list"] .svc-head {
  margin-bottom: 32px;
}
main[data-page="product-list"] .svc-head h2 {
  display: block;
  margin: 0 0 16px;
  padding: 0 0 14px;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .12em;
  color: var(--text-1);
  border-bottom: 0;
  position: relative;
}
main[data-page="product-list"] .svc-head h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 40px;
  height: 3px;
  border-radius: 2px;
  background: var(--primary);
}
main[data-page="product-list"] .svc-head p {
  margin: 0;
  max-width: 720px;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.8;
}
.svc-kicker {
  display: block;
  margin-bottom: 10px;
  color: var(--primary);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .18em;
}
.svc-brand-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
  gap: 40px;
  align-items: center;
  margin-bottom: 28px;
}
main[data-page="product-list"] .svc-brand-copy h2,
.svc-brand-copy h2 {
  margin: 0 0 12px;
  padding: 0;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .04em;
  color: var(--text-1);
  border: 0;
}
.svc-brand-copy h2::after { display: none; }
.svc-brand-copy .svc-brand-sub {
  margin: 0 0 20px;
  color: var(--primary);
  font-size: 16px;
  line-height: 1.7;
}
.svc-brand-copy p {
  margin: 0 0 14px;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.85;
}
.svc-brand-copy p.svc-brand-sub {
  color: var(--primary);
}
.svc-brand-copy p:last-child { margin-bottom: 0; }
.svc-brand-media {
  overflow: hidden;
  border-radius: 20px;
  background: #eef6f1;
  width: 100%;
}
.svc-brand-media img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block;
}
.svc-lead {
  color: var(--text-1) !important;
}
.svc-creds {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.svc-creds li {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 20px 18px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid #e8eee9;
  box-shadow: 0 8px 22px rgba(23, 32, 51, .04);
}
.svc-creds svg {
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  color: var(--primary);
  margin-top: 1px;
}
.svc-creds strong {
  display: block;
  margin-bottom: 4px;
  font-size: 16px;
  color: var(--text-1);
}
.svc-creds span {
  display: block;
  color: var(--text-2);
  font-size: 13px;
  line-height: 1.65;
}
.svc-desc {
  margin: 0 0 28px;
  max-width: 860px;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.85;
}
.svc-feat-sec.soft {
  background: #f3f8f5;
}
.svc-feat-head {
  margin-bottom: 20px;
}
.svc-feat-head h2 {
  margin: 0 0 12px;
  padding: 0;
  border: 0;
  color: var(--text-1);
  font-size: 40px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .04em;
}
.svc-feat-sub {
  margin: 0;
  color: var(--primary);
  font-size: 16px;
  line-height: 1.7;
}
.svc-feat-desc {
  max-width: none;
  margin-bottom: 26px;
}
.svc-feat-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 20px;
}
.svc-feat-card {
  display: grid;
  grid-template-columns: minmax(168px, 40%) minmax(0, 1fr);
  align-items: center;
  gap: 22px;
  min-height: 184px;
  padding: 12px 24px 12px 12px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid #e6eee9;
  box-shadow: 0 10px 28px rgba(23, 32, 51, .05);
  transition: transform .2s ease, box-shadow .2s ease;
}
.svc-feat-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(23, 32, 51, .08);
}
.svc-feat-media {
  overflow: hidden;
  height: 160px;
  border-radius: 14px;
  background: #e8f1ec;
}
.svc-feat-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.svc-feat-copy h3 {
  margin: 0 0 10px;
  color: var(--primary);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.35;
}
.svc-feat-copy p {
  margin: 0;
  color: var(--text-2);
  font-size: 14px;
  line-height: 1.8;
}
.svc-feat-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
.svc-feat-steps article {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 0;
  padding: 26px 24px 24px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid #e6eee9;
  box-shadow: 0 10px 28px rgba(23, 32, 51, .05);
}
.svc-feat-steps article:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 44px;
  left: calc(100% + 4px);
  width: 20px;
  height: 1px;
  background: #c8ddcf;
}
.svc-feat-step-head {
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.svc-feat-step-no {
  flex-shrink: 0;
  color: var(--primary);
  font-size: 22px;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1.2;
}
.svc-feat-steps h3 {
  margin: 0;
  color: var(--text-1);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
}
.svc-feat-steps p {
  margin: 0;
  padding-left: 0;
  color: var(--text-2);
  font-size: 14px;
  line-height: 1.75;
}
main[data-page="product-list"] .channel-hero ~ .svc-adv.svc-section,
main[data-page="product-list"] .svc-adv.svc-section {
  position: relative;
  overflow: hidden;
  padding: 0;
  width: 100%;
  aspect-ratio: 1920 / 640;
  height: auto;
  min-height: 0;
  background: transparent;
}
.svc-adv-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.svc-adv-bg img {
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: contain;
  object-position: center center;
  display: block;
}
.svc-adv-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,.88) 0%, rgba(255,255,255,.62) 24%, rgba(255,255,255,.28) 48%, rgba(255,255,255,.08) 68%, rgba(255,255,255,0) 82%);
  pointer-events: none;
}
.svc-adv .container {
  position: relative;
  z-index: 1;
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 12px;
  padding: 48px 0 24px;
  box-sizing: border-box;
}
.svc-adv-head {
  max-width: 620px;
  margin-bottom: 0;
}
.svc-adv-head h2 {
  margin: 0 0 8px;
  padding: 0;
  border: 0;
  color: var(--text-1);
  font-size: 40px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: .04em;
}
.svc-adv-sub {
  margin: 0 0 8px;
  color: var(--primary);
  font-size: 16px;
  line-height: 1.45;
}
.svc-adv-desc {
  margin: 0 0 25px;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.85;
}
.svc-adv .svc-nums {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  margin: 0 0 12px;
  overflow: hidden;
  border: 0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(23, 32, 51, .07);
}
.svc-adv .svc-nums article {
  padding: 14px 12px 12px;
  text-align: center;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.svc-adv .svc-nums article + article {
  border-left: 1px solid #e6eee9;
}
.svc-adv .svc-nums strong {
  display: block;
  margin-bottom: 4px;
  color: var(--primary);
  font-size: 30px;
  font-weight: 700;
  line-height: 1.15;
}
.svc-adv .svc-nums span {
  display: block;
  color: var(--text-1);
  font-size: 16px;
  line-height: 1.6;
}
.svc-adv .svc-plus {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 14px;
}
.svc-adv .svc-plus article {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 24px 20px 22px;
  border-radius: 16px;
  background: #fff;
  border: 0;
  box-shadow: 0 8px 24px rgba(23, 32, 51, .07);
}
.svc-plus-icon {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 42px;
  height: 42px;
  margin-top: 1px;
  border-radius: 50%;
  background: #e7f5ed;
  color: var(--primary);
}
.svc-plus-icon svg {
  width: 20px;
  height: 20px;
  display: block;
}
.svc-adv .svc-plus h3 {
  margin: 0 0 6px;
  color: var(--text-1);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}
.svc-adv .svc-plus p {
  margin: 0;
  color: var(--text-2);
  font-size: 15px;
  line-height: 1.6;
}
.svc-nums {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  margin: 0 0 18px;
  overflow: hidden;
  border-radius: 16px;
  background: #f6faf8;
  border: 1px solid #e4eee8;
}
.svc-nums article {
  padding: 28px 20px;
  text-align: center;
}
.svc-nums article + article {
  border-left: 1px solid #dceee3;
}
.svc-nums strong {
  display: block;
  margin-bottom: 6px;
  color: var(--primary);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2;
}
.svc-nums span {
  display: block;
  color: var(--text-2);
  font-size: 14px;
  line-height: 1.7;
}
.svc-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-bottom: 18px;
}
.svc-pair-card,
.svc-steps article,
.svc-plus article {
  padding: 28px 28px 26px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid #e6eee9;
}
.svc-pair-card h3 {
  margin: 0 0 12px;
  font-size: 22px;
  color: var(--text-1);
}
.svc-pair-card p,
.svc-steps p,
.svc-plus p {
  margin: 0;
  color: var(--text-2);
  font-size: 15px;
  line-height: 1.8;
}
.svc-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.svc-step-no {
  display: block;
  margin-bottom: 12px;
  font-size: 22px;
  font-weight: 700;
  color: var(--primary);
  line-height: 1;
  opacity: .55;
}
.svc-steps h3,
.svc-plus h3 {
  margin: 0 0 8px;
  font-size: 18px;
}
.svc-plus {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

@media (max-width: 992px) {
  .svc-pair,
  .svc-creds,
  .svc-nums {
    grid-template-columns: 1fr 1fr;
  }
  .svc-feat-pair {
    grid-template-columns: 1fr;
  }
  .svc-adv .svc-nums,
  .svc-adv .svc-plus {
    grid-template-columns: 1fr 1fr;
  }
  main[data-page="product-list"] .svc-adv.svc-section,
  main[data-page="product-list"] .channel-hero ~ .svc-adv.svc-section {
    aspect-ratio: auto;
    height: auto;
    overflow: visible;
    padding: 36px 0 28px;
    background: #fff;
  }
  .svc-adv-bg {
    display: none;
  }
  .svc-adv .container {
    height: auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 14px;
    padding: 0;
  }
  .svc-adv .svc-nums article + article {
    border-left: 0;
  }
  .svc-adv .svc-nums article:nth-child(even) {
    border-left: 1px solid #e6eee9;
  }
  .svc-adv .svc-nums article:nth-child(n+3) {
    border-top: 1px solid #e6eee9;
  }
  .svc-adv-head h2 {
    font-size: 32px;
  }
  .svc-feat-steps {
    gap: 22px;
  }
  .svc-feat-steps article:not(:last-child)::after {
    display: none;
  }
  .svc-brand-main {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 20px;
  }
  .svc-brand-media {
    max-width: 420px;
  }
  .svc-brand-copy h2,
  main[data-page="product-list"] .svc-brand-copy h2 {
    font-size: 32px;
  }
  .svc-steps {
    grid-template-columns: 1fr;
  }
  .svc-nums article:nth-child(3),
  .svc-nums article:nth-child(4) {
    border-top: 1px solid #dceee3;
  }
  .svc-nums article:nth-child(3) {
    border-left: 0;
  }
  main[data-page="product-list"] .svc-head h2 {
    font-size: 32px;
    letter-spacing: .08em;
  }
}
@media (max-width: 768px) {
  main[data-page="product-list"] .channel-hero ~ .svc-section {
    padding-top: 32px !important;
    padding-bottom: 48px;
  }
  main[data-page="product-list"] .svc-adv.svc-section,
  main[data-page="product-list"] .channel-hero ~ .svc-adv.svc-section {
    padding: 32px 0 28px !important;
    min-height: 0;
    aspect-ratio: auto;
    height: auto;
    background: #fff;
  }
  .svc-adv-bg {
    display: none;
  }
  .svc-adv-head {
    max-width: none;
    margin-bottom: 0;
  }
  .svc-adv-head h2 {
    font-size: 24px;
  }
  .svc-adv-sub {
    font-size: 15px;
  }
  .svc-adv-desc {
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 16px;
  }
  .svc-adv .container {
    padding: 0;
  }
  .svc-adv .svc-nums {
    grid-template-columns: 1fr 1fr;
  }
  .svc-adv .svc-plus {
    grid-template-columns: 1fr;
  }
  .svc-adv .svc-nums article + article {
    border-left: 0;
  }
  .svc-adv .svc-nums article:nth-child(even) {
    border-left: 1px solid #e6eee9;
  }
  .svc-adv .svc-nums article:nth-child(n+3) {
    border-top: 1px solid #e6eee9;
  }
  .svc-adv .svc-nums strong {
    font-size: 28px;
  }
  main[data-page="product-list"] .svc-head {
    margin-bottom: 22px;
  }
  main[data-page="product-list"] .svc-head h2,
  main[data-page="product-list"] .svc-brand-copy h2,
  .svc-brand-copy h2 {
    font-size: 28px;
    letter-spacing: .04em;
  }
  .svc-brand-main,
  .svc-pair,
  .svc-plus,
  .svc-creds,
  .svc-nums,
  .svc-feat-pair {
    grid-template-columns: 1fr;
  }
  .svc-feat-head {
    margin-bottom: 16px;
  }
  .svc-feat-head h2 {
    font-size: 28px;
    letter-spacing: .04em;
  }
  .svc-feat-card {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 12px;
  }
  .svc-feat-media {
    height: 170px;
  }
  .svc-feat-copy h3 {
    font-size: 18px;
  }
  .svc-feat-steps {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .svc-feat-steps article:not(:last-child)::after {
    display: none;
  }
  .svc-feat-steps article:not(:last-child)::before {
    display: none;
  }
  .svc-brand-media {
    max-width: 100%;
  }
  .svc-desc {
    margin-bottom: 22px;
  }
  .svc-steps article,
  .svc-plus article,
  .svc-pair-card {
    padding: 20px 18px;
  }
  .svc-nums article + article,
  .svc-nums article:nth-child(3) {
    border-left: 0;
    border-top: 1px solid #dceee3;
  }
  .svc-nums strong {
    font-size: 26px;
  }
  .svc-creds svg {
    width: 40px;
    height: 40px;
  }
  .svc-pair-card h3 {
    font-size: 18px;
  }
}

/* ===== 关于我们：品牌介绍 / 根基规模 / 核心业务 ===== */
main[data-page="about"] .about-brand {
  align-items: center;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  gap: 48px;
}
main[data-page="about"] .about-brand-media {
  position: relative;
  width: 100%;
  padding: 8px;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(23, 32, 51, .12);
}
main[data-page="about"] .about-brand-media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center 18%;
  border-radius: 18px;
}
main[data-page="about"] .about-brand-copy h2 {
  margin: 0 0 6px;
  padding: 0;
  border: 0;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--text-1);
}
main[data-page="about"] .about-brand-copy h2::after {
  display: none;
}
main[data-page="about"] .about-brand-copy .about-brand-slogan {
  margin: 0 0 16px;
  color: var(--primary);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
}
main[data-page="about"] .about-brand-copy > p:not(.about-brand-slogan) {
  margin: 0 0 14px;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.9;
}
main[data-page="about"] .about-brand-copy > p:not(.about-brand-slogan):last-of-type {
  margin-bottom: 0;
}

main[data-page="about"] .about-roots {
  position: relative;
  overflow: hidden;
  padding: 0;
  width: 100%;
  aspect-ratio: 1920 / 450;
  height: auto;
  background: transparent;
}
main[data-page="about"] .about-roots-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
main[data-page="about"] .about-roots-bg img {
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: contain;
  object-position: center center;
  display: block;
}
main[data-page="about"] .about-roots-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(255,255,255,.95) 28%, rgba(255,255,255,.86) 55%, rgba(255,255,255,.58) 100%);
}
main[data-page="about"] .about-roots > .container {
  position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
  padding: 36px 0 28px;
}
main[data-page="about"] .about-roots-head {
  margin-bottom: 28px;
}
main[data-page="about"] .about-roots-head h2 {
  margin: 0 0 10px;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.25;
  color: var(--text-1);
}
main[data-page="about"] .about-roots-head p {
  margin: 0;
  color: var(--primary);
  font-size: 16px;
  line-height: 1.7;
}
main[data-page="about"] .about-roots-vision {
  margin: 4px 0 0;
  color: #7f93a3;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .18em;
  line-height: 1.7;
  text-align: right;
  white-space: nowrap;
}
main[data-page="about"] .about-timeline-rail {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 20px;
  border: 0;
  position: relative;
}
main[data-page="about"] .about-timeline-rail::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 4px;
  right: 8%;
  height: 2px;
  background: #cfe3d6;
}
main[data-page="about"] .about-rail-item {
  padding: 0 16px 0 0;
  position: relative;
}
main[data-page="about"] .about-rail-item:before {
  content: "";
  position: absolute;
  top: 1px;
  left: 0;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--primary);
  box-shadow: 0 0 0 4px rgba(61, 154, 99, .16);
}
main[data-page="about"] .about-rail-item .year {
  display: block;
  margin: 22px 0 2px;
  color: var(--primary);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.25;
}
main[data-page="about"] .about-rail-item strong {
  display: block;
  margin-bottom: 10px;
  color: var(--text-1);
  font-size: 16px;
  font-weight: 700;
}
main[data-page="about"] .about-rail-item p {
  margin: 0;
  color: var(--text-2);
  font-size: 14px;
  line-height: 1.75;
}

main[data-page="about"] .about-biz-v2 {
  background: #fff;
  padding: 72px 0;
}
main[data-page="about"] .about-biz-layout {
  display: grid;
  grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
  gap: 36px;
  align-items: stretch;
}
main[data-page="about"] .about-biz-side {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 8px 0 12px;
}
main[data-page="about"] .about-biz-side h2 {
  margin: 0 0 16px;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.25;
  color: var(--text-1);
}
main[data-page="about"] .about-biz-side p {
  margin: 0;
  color: var(--primary);
  font-size: 16px;
  line-height: 1.85;
}
main[data-page="about"] .about-biz-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
main[data-page="about"] .about-biz-card {
  display: flex;
  flex-direction: column;
  padding: 0 0 18px;
  overflow: hidden;
  border-radius: 20px;
  background: #fff;
  border: 1px solid #eef3ef;
  box-shadow: 0 12px 32px rgba(23, 32, 51, .08);
}
main[data-page="about"] .about-biz-media {
  position: relative;
  margin: 0;
  overflow: hidden;
  border-radius: 20px 20px 0 0;
}
main[data-page="about"] .about-biz-media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background: #eef4f0;
}
main[data-page="about"] .biz-ico {
  display: grid;
  place-items: center;
  width: 68px;
  height: 68px;
  margin: -34px 0 14px 18px;
  border-radius: 50%;
  background: #fff;
  color: #3d9a63;
  box-shadow: 0 6px 16px rgba(23, 32, 51, .14);
  position: relative;
  z-index: 1;
}
main[data-page="about"] .biz-ico svg {
  width: 34px;
  height: 34px;
  display: block;
}
main[data-page="about"] .about-biz-copy {
  padding: 0 20px 2px;
}
main[data-page="about"] .about-biz-card h3 {
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 700;
  color: var(--text-1);
}
main[data-page="about"] .about-biz-card p {
  margin: 0;
  color: var(--text-2);
  font-size: 13px;
  line-height: 1.7;
}

main[data-page="about"] .about-spirit-v6,
main[data-page="about"] .about-spirit-v6.section {
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  margin: 0 !important;
  width: 100%;
  aspect-ratio: 1920 / 450;
  height: auto;
  background: transparent;
}
main[data-page="about"] .about-spirit-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  line-height: 0;
}
main[data-page="about"] .about-spirit-bg img {
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center center;
  display: block;
  vertical-align: top;
}
main[data-page="about"] .about-spirit-layout {
  position: relative;
  z-index: 1;
  height: 100%;
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: 28px 40px;
  align-items: center;
  padding-right: 16%;
  box-sizing: border-box;
}
main[data-page="about"] .about-spirit-v6 .spirit-head h2 {
  margin: 0 0 12px;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--text-1);
}
main[data-page="about"] .about-spirit-v6 .spirit-head p {
  margin: 0;
  color: var(--primary) !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  white-space: normal !important;
}
main[data-page="about"] .about-spirit-v6 .spirit-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 20px;
  margin: 0;
  margin-left: 0;
  align-items: start;
  justify-items: center;
}
main[data-page="about"] .about-spirit-v6 .spirit-list article {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 100%;
  max-width: 200px;
  padding: 0 8px;
  border: 0;
  gap: 0;
  position: relative;
}
main[data-page="about"] .about-spirit-v6 .spirit-list article + article::before {
  content: "";
  position: absolute;
  left: -10px;
  top: 12px;
  bottom: 12px;
  width: 1px;
  background: rgba(61, 154, 99, .2);
}
main[data-page="about"] .spirit-ico {
  display: grid;
  place-items: center;
  width: 84px;
  height: 84px;
  margin: 0 auto 20px;
  border-radius: 50%;
  border: 0;
  background: #e4f3ea;
  color: #3d9a63;
  box-shadow: none;
}
main[data-page="about"] .spirit-ico svg {
  width: 34px;
  height: 34px;
  display: block;
}
main[data-page="about"] .about-spirit-v6 .spirit-list h3 {
  margin: 0 0 14px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
  color: #2f7d50;
}
main[data-page="about"] .about-spirit-v6 .spirit-list p {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  margin: 0 auto;
  width: 100%;
  max-width: 168px;
  color: var(--text-2);
  font-size: 16px;
  line-height: 1.85;
  min-height: calc(1.85em * 2);
}
main[data-page="about"] .about-spirit-v6 .spirit-list p span {
  display: block;
  width: 100%;
  text-align: center;
}
main[data-page="about"] .about-spirit-v6 .spirit-list article:nth-child(1) p,
main[data-page="about"] .about-spirit-v6 .spirit-list article:nth-child(2) p {
  max-width: 152px;
}

@media (max-width: 992px) {
  main[data-page="about"] .about-brand {
    gap: 28px;
    grid-template-columns: 1fr;
  }
  main[data-page="about"] .about-brand-media {
    width: 100%;
    max-width: none;
  }
  main[data-page="about"] .about-biz-layout,
  main[data-page="about"] .about-biz-cards {
    grid-template-columns: 1fr;
  }
  main[data-page="about"] .about-roots {
    aspect-ratio: auto;
    height: auto;
    padding: 40px 0 36px;
    background: #f3f8f5;
  }
  main[data-page="about"] .about-roots-bg {
    display: none;
  }
  main[data-page="about"] .about-roots > .container {
    height: auto;
    padding: 0;
  }
  main[data-page="about"] .about-roots-head {
    margin-bottom: 22px;
  }
  main[data-page="about"] .about-roots-head h2 {
    font-size: 24px;
    margin-bottom: 8px;
  }
  main[data-page="about"] .about-roots-head p {
    font-size: 15px;
    line-height: 1.7;
  }
  main[data-page="about"] .about-rail-item .year {
    font-size: 20px;
  }
  main[data-page="about"] .about-rail-item strong {
    font-size: 15px;
    margin-bottom: 6px;
  }
  main[data-page="about"] .about-rail-item p {
    font-size: 14px;
    line-height: 1.7;
  }
  main[data-page="about"] .about-timeline-rail {
    display: flex;
    flex-direction: column;
    gap: 0;
    border-left: 2px solid #cfe3d6;
    margin-left: 6px;
  }
  main[data-page="about"] .about-timeline-rail::before {
    display: none;
  }
  main[data-page="about"] .about-rail-item {
    padding: 0 0 24px 22px;
  }
  main[data-page="about"] .about-rail-item:last-child {
    padding-bottom: 0;
  }
  main[data-page="about"] .about-rail-item:before {
    top: 8px;
    left: -7px;
  }
  main[data-page="about"] .about-rail-item .year {
    margin-top: 0;
  }
  main[data-page="about"] .about-spirit-v6,
  main[data-page="about"] .about-spirit-v6.section {
    aspect-ratio: auto;
    height: auto;
    padding: 40px 0 !important;
    margin: 0 !important;
    background: #f3f8f5;
  }
  main[data-page="about"] .about-spirit-bg {
    display: none;
  }
  main[data-page="about"] .about-spirit-layout {
    height: auto;
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 0;
    padding-right: 0;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-head h2 {
    font-size: 24px;
    margin-bottom: 8px;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-head p {
    font-size: 15px !important;
    line-height: 1.7 !important;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-list {
    grid-template-columns: 1fr;
    gap: 28px;
    justify-items: center;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-list article {
    max-width: 280px;
    padding: 0;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-list article + article::before {
    display: none;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-list h3 {
    font-size: 18px;
    margin-bottom: 10px;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-list p {
    max-width: 260px;
    font-size: 14px;
    line-height: 1.75;
    min-height: 0;
  }
  main[data-page="about"] .spirit-ico {
    width: 68px;
    height: 68px;
    margin-bottom: 14px;
  }
  main[data-page="about"] .spirit-ico svg {
    width: 30px;
    height: 30px;
  }
}

@media (max-width: 768px) {
  main[data-page="about"] .about-brand-copy h2,
  main[data-page="about"] .about-roots-head h2,
  main[data-page="about"] .about-biz-side h2,
  main[data-page="about"] .about-spirit-v6 .spirit-head h2 {
    font-size: 22px !important;
    line-height: 1.35 !important;
  }
  main[data-page="about"] .about-brand-copy .about-brand-slogan,
  main[data-page="about"] .about-roots-head p,
  main[data-page="about"] .about-biz-side p,
  main[data-page="about"] .about-spirit-v6 .spirit-head p {
    font-size: 15px !important;
    line-height: 1.7 !important;
  }
  main[data-page="about"] .about-brand-copy p {
    font-size: 14px;
    line-height: 1.75;
  }
  main[data-page="about"] .about-brand-media {
    width: 100%;
    padding: 8px;
    border-radius: 22px;
  }
  main[data-page="about"] .about-brand-media img {
    border-radius: 16px;
  }
  main[data-page="about"] .about-roots {
    padding: 32px 0 !important;
    aspect-ratio: auto;
    background: #f3f8f5;
  }
  main[data-page="about"] .about-roots-bg,
  main[data-page="about"] .about-spirit-bg {
    display: none;
  }
  main[data-page="about"] .about-biz-v2 {
    padding: 36px 0 !important;
  }
  main[data-page="about"] .about-biz-side h2 {
    margin-bottom: 10px;
  }
  main[data-page="about"] .about-biz-card h3 {
    font-size: 16px;
  }
  main[data-page="about"] .about-biz-card p {
    font-size: 13px;
  }
  main[data-page="about"] .about-spirit-v6,
  main[data-page="about"] .about-spirit-v6.section {
    padding: 32px 0 !important;
    margin: 0 !important;
    aspect-ratio: auto;
    background: #f3f8f5;
  }
  main[data-page="about"] .about-spirit-layout {
    padding: 0;
    gap: 24px;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-list {
    gap: 24px;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-list h3 {
    font-size: 17px;
    margin-bottom: 8px;
  }
  main[data-page="about"] .about-spirit-v6 .spirit-list p {
    font-size: 14px;
    line-height: 1.75;
    max-width: 260px;
  }
  main[data-page="about"] .about-rail-item .year {
    font-size: 18px;
  }
  main[data-page="about"] .about-rail-item strong {
    font-size: 15px;
  }
  main[data-page="about"] .about-rail-item p {
    font-size: 13px;
  }
  main[data-page="about"] + .site-footer {
    margin-top: 0;
  }
}

/* ===== 404 page ===== */
main[data-page="404"] .page-404 {
  padding: 56px 0 72px;
  background: #fff;
}
main[data-page="404"] .page-404-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 720px;
}
main[data-page="404"] .page-404-media {
  margin: 0 0 28px;
  width: 100%;
  max-width: 560px;
  line-height: 0;
}
main[data-page="404"] .page-404-media img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
main[data-page="404"] .page-404 h1 {
  margin: 0 0 12px;
  color: var(--text-1);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.35;
}
main[data-page="404"] .page-404 p {
  margin: 0 0 28px;
  max-width: 420px;
  color: var(--text-2);
  font-size: 15px;
  line-height: 1.75;
}
main[data-page="404"] .page-404-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
}
main[data-page="404"] .page-404-actions .button {
  min-width: 132px;
}
@media (max-width: 768px) {
  main[data-page="404"] .page-404 {
    padding: 36px 0 48px;
  }
  main[data-page="404"] .page-404 h1 {
    font-size: 22px;
  }
  main[data-page="404"] .page-404 p {
    font-size: 14px;
  }
}

