/* 购物信息页（InfoPages）：通栏标题区 + 左侧导航 + 正文排版。颜色与页脚一致。 */

.gb-info-hero,
.gb-info {
  --gi-green: #16955f;
  --gi-green-dark: #0e7a4c;
  --gi-green-soft: #e9f6ef;
  --gi-ink: #14231b;
  --gi-text: #33403a;
  --gi-muted: #6b7470;
  --gi-line: #e3ece6;
  --gi-bg: #f4f8f5;
}
.gb-info-hero *,
.gb-info * { box-sizing: border-box; }

/* 标题区 */
.gb-info-hero {
  background:
    radial-gradient(640px 220px at 88% 0, rgba(22, 149, 95, .12), transparent 70%),
    var(--gi-bg);
  border-bottom: 1px solid var(--gi-line);
}
.gb-info-hero__inner {
  max-width: var(--wd-container-w, 1222px);
  margin: 0 auto;
  padding: 34px 15px 32px;
}
.gb-info-crumbs { display: flex; flex-wrap: wrap; gap: 8px; color: var(--gi-muted); font-size: 13px; }
.gb-info-crumbs a { color: var(--gi-muted); text-decoration: none; }
.gb-info-crumbs a:hover { color: var(--gi-green); }
.gb-info-hero__title {
  margin: 10px 0 0;
  color: var(--gi-ink);
  font-size: 36px;
  /* 800 字重只有西里尔字形可用，拉丁字母会回落成常规体，混排时一粗一细；统一用 700。 */
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.01em;
}
.gb-info-hero__lead {
  max-width: 760px;
  margin: 12px 0 0;
  color: var(--gi-text);
  font-size: 16px;
  line-height: 1.6;
}

/* 两栏 */
.gb-info {
  display: grid;
  grid-template-columns: 272px minmax(0, 1fr);
  gap: 48px;
  align-items: start;
  width: 100%;
  min-width: 0; /* WoodMart 的 <main> 是网格：不设 0 会被宽表格按内容撑开 */
  padding: 0 0 64px;
  color: var(--gi-text);
}
.gb-info__aside {
  position: sticky;
  top: 96px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.gb-info ul, .gb-info ol { margin: 0; padding: 0; }

.gb-info-nav {
  padding: 14px;
  border: 1px solid var(--gi-line);
  border-radius: 16px;
  background: #fff;
}
.gb-info-nav__title {
  padding: 4px 10px 10px;
  color: var(--gi-muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.gb-info-nav ul { list-style: none; display: flex; flex-direction: column; gap: 2px; }
.gb-info-nav li { margin: 0; }
.gb-info .gb-info-nav__link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 10px;
  border-radius: 10px;
  color: var(--gi-ink);
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: background-color .15s ease, color .15s ease;
}
.gb-info .gb-info-nav__link:hover { background: var(--gi-bg); color: var(--gi-green); }
.gb-info .gb-info-nav__link.is-active { background: var(--gi-green-soft); color: var(--gi-green-dark); }
.gb-info-ic { width: 20px; height: 20px; flex: 0 0 20px; }
.gb-info-nav__link .gb-info-ic { color: var(--gi-green); }

.gb-info-help {
  padding: 18px;
  border-radius: 16px;
  background: #0e1b15;
  color: rgba(255, 255, 255, .72);
  font-size: 13.5px;
}
.gb-info-help__title { color: #fff; font-size: 16px; font-weight: 700; }
.gb-info-help p { margin: 4px 0 12px; color: rgba(255, 255, 255, .6); font-size: 13px; line-height: 1.5; }
.gb-info .gb-info-help__row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 5px 0;
  color: #fff;
  font-weight: 600;
  text-decoration: none;
}
.gb-info .gb-info-help__row .gb-info-ic { width: 18px; height: 18px; flex-basis: 18px; color: #7fd1aa; }
.gb-info .gb-info-help__row:hover { color: #7fd1aa; }
.gb-info .gb-info-help__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 42px;
  margin-top: 12px;
  border-radius: 999px;
  background: var(--gi-green);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}
.gb-info .gb-info-help__btn:hover { background: #1bab6d; color: #fff; }
.gb-info-help__btn .gb-info-ic { width: 18px; height: 18px; flex-basis: 18px; }

/* 页内目录 */
.gb-info__body { min-width: 0; max-width: 860px; }
.gb-info-toc {
  margin-bottom: 32px;
  padding: 18px 20px;
  border: 1px solid var(--gi-line);
  border-radius: 14px;
  background: var(--gi-bg);
}
.gb-info-toc__title { margin-bottom: 10px; color: var(--gi-ink); font-size: 14px; font-weight: 700; }
.gb-info-toc ol {
  list-style: none;
  counter-reset: gbtoc;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 24px;
}
.gb-info-toc li { counter-increment: gbtoc; margin: 0; }
.gb-info-toc a {
  display: flex;
  gap: 8px;
  color: var(--gi-text);
  font-size: 14px;
  line-height: 1.45;
  text-decoration: none;
}
.gb-info-toc a::before { content: counter(gbtoc) "."; min-width: 18px; color: var(--gi-green); font-weight: 700; }
.gb-info-toc a:hover { color: var(--gi-green); }

/* 正文排版 */
.gb-info-content { font-size: 16px; line-height: 1.7; }
.gb-info-content .gb-info-lead {
  margin: 0 0 28px;
  color: var(--gi-ink);
  font-size: 18px;
  line-height: 1.6;
}
.gb-info-sec { scroll-margin-top: 110px; }
.gb-info-sec + .gb-info-sec { margin-top: 40px; padding-top: 36px; border-top: 1px solid var(--gi-line); }
.gb-info-content h2 {
  margin: 0 0 16px;
  color: var(--gi-ink);
  font-size: 26px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.005em;
}
.gb-info-content h3 {
  margin: 24px 0 10px;
  color: var(--gi-ink);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
}
.gb-info-content p { margin: 0 0 14px; color: var(--gi-text); }
.gb-info-content a { color: var(--gi-green-dark); text-decoration: underline; text-underline-offset: 2px; }
.gb-info-content a:hover { color: var(--gi-green); }
.gb-info-content b,
.gb-info-content strong { color: var(--gi-ink); font-weight: 700; }
.gb-info-content ul,
.gb-info-content ol { margin: 0 0 16px; padding: 0; }
.gb-info-content ul { list-style: none; }
.gb-info-content ul > li { position: relative; margin: 0 0 8px; padding-left: 22px; }
.gb-info-content ul > li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: .72em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--gi-green);
}
.gb-info-content ol:not(.gb-info-steps) { padding-left: 22px; }
.gb-info-content ol:not(.gb-info-steps) > li { margin: 0 0 8px; padding-left: 4px; }
.gb-info-content ol:not(.gb-info-steps) > li::marker { color: var(--gi-green); font-weight: 700; }

/* 关键数字 */
.gb-info-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 12px;
  margin: 8px 0 20px;
}
.gb-info-fact {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 16px 18px;
  border: 1px solid var(--gi-line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(14, 60, 42, .05);
}
.gb-info-content .gb-info-fact b { color: var(--gi-green); font-size: 26px; font-weight: 700; line-height: 1.1; }
.gb-info-fact span { color: var(--gi-text); font-size: 14px; line-height: 1.45; }

/* 配送国家卡（「Коротко о главном」）：俄罗斯为主，其他国家次之 */
.gb-info .gb-flag { display: block; flex: 0 0 auto; width: 21px; height: 14px; border-radius: 3px; box-shadow: 0 0 0 1px rgba(20, 35, 27, .14); }
.gb-info .gb-flag--lg { width: 36px; height: 24px; border-radius: 4px; }
.gb-info-geo {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr);
  gap: 12px;
  margin: 4px 0 8px;
}
.gb-info-content a.gb-info-geo__main {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border: 1px solid #bfe3cf;
  border-radius: 14px;
  background: var(--gi-green-soft);
  color: var(--gi-ink);
  text-decoration: none;
}
.gb-info-geo__main > span { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.gb-info-geo__main b { color: var(--gi-ink); font-size: 17px; font-weight: 700; line-height: 1.25; }
.gb-info-geo__main small { color: var(--gi-text); font-size: 13.5px; line-height: 1.4; }
.gb-info-content a.gb-info-geo__main:hover b { color: var(--gi-green-dark); }
.gb-info-geo__more {
  padding: 14px 18px;
  border: 1px solid var(--gi-line);
  border-radius: 14px;
  background: #fff;
}
.gb-info-geo__label { display: block; margin-bottom: 8px; color: var(--gi-muted); font-size: 12.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.gb-info-content .gb-info-geo__list { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 0 0 8px; padding: 0; list-style: none; }
.gb-info-content .gb-info-geo__list > li::before { content: none; }
.gb-info-content .gb-info-geo__list > li { display: inline-flex; align-items: center; gap: 7px; margin: 0; padding: 0; color: var(--gi-ink); font-size: 14.5px; font-weight: 600; }
.gb-info-geo__more small { color: var(--gi-muted); font-size: 13px; line-height: 1.45; }

/* 首都时效表：城市前加小国旗 */
.gb-info-city { display: inline-flex; align-items: center; gap: 9px; }
.gb-info-table--cities tbody tr:first-child td { background: var(--gi-green-soft); }

/* 提示框 */
.gb-info-note {
  margin: 16px 0;
  padding: 14px 18px;
  border-left: 4px solid var(--gi-green);
  border-radius: 0 12px 12px 0;
  background: var(--gi-green-soft);
  color: var(--gi-ink);
  font-size: 15px;
  line-height: 1.6;
}
.gb-info-note p:last-child { margin-bottom: 0; }
.gb-info-note--warn { border-left-color: #e0a100; background: #fff7e3; }

/* 步骤 */
.gb-info-content .gb-info-steps {
  list-style: none;
  counter-reset: gbstep;
  display: grid;
  gap: 0;
  margin: 12px 0 20px;
  padding: 0;
}
.gb-info-steps > li {
  position: relative;
  counter-increment: gbstep;
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0;
  padding: 0 0 18px 50px;
}
.gb-info-steps > li::before {
  content: counter(gbstep);
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--gi-green);
  color: #fff;
  font-size: 15px;
  font-weight: 700;
}
.gb-info-steps > li:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 16px;
  top: 38px;
  bottom: 4px;
  width: 2px;
  background: #cfe7da;
}
.gb-info-steps > li > b { padding-top: 5px; color: var(--gi-ink); font-size: 16px; }
.gb-info-steps > li > span { color: var(--gi-text); font-size: 15px; line-height: 1.55; }

/* 表格 */
.gb-info-table {
  margin: 12px 0 20px;
  overflow-x: auto;
  border: 1px solid var(--gi-line);
  border-radius: 14px;
  -webkit-overflow-scrolling: touch;
}
.gb-info-table table { width: 100%; margin: 0; border-collapse: collapse; font-size: 14.5px; line-height: 1.45; }
.gb-info-table th {
  padding: 12px 16px;
  background: var(--gi-bg);
  color: var(--gi-ink);
  font-weight: 700;
  text-align: left;
  white-space: nowrap;
  border-bottom: 1px solid var(--gi-line);
}
.gb-info-table td { padding: 10px 16px; border-bottom: 1px solid #eef3ef; vertical-align: top; }
.gb-info-table tbody tr:last-child td { border-bottom: 0; }
.gb-info-table tbody tr:nth-child(even) td { background: #fafcfb; }

/* FAQ */
.gb-info-faq {
  margin: 0 0 10px;
  border: 1px solid var(--gi-line);
  border-radius: 12px;
  background: #fff;
}
.gb-info-faq > summary {
  position: relative;
  padding: 14px 44px 14px 18px;
  color: var(--gi-ink);
  font-size: 15.5px;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}
.gb-info-faq > summary::-webkit-details-marker { display: none; }
.gb-info-faq > summary::after {
  content: "";
  position: absolute;
  right: 18px;
  top: 50%;
  width: 9px;
  height: 9px;
  margin-top: -6px;
  border-right: 2px solid var(--gi-green);
  border-bottom: 2px solid var(--gi-green);
  transform: rotate(45deg);
  transition: transform .15s ease;
}
.gb-info-faq[open] > summary::after { transform: rotate(-135deg); margin-top: -2px; }
.gb-info-faq > div { padding: 0 18px 14px; font-size: 15px; }
.gb-info-faq > div p:last-child { margin-bottom: 0; }

/* 联系块 */
.gb-info-contact {
  margin: 16px 0;
  padding: 18px 20px;
  border: 1px solid var(--gi-line);
  border-radius: 14px;
  background: var(--gi-bg);
  font-size: 15px;
}
.gb-info-contact p:last-child { margin-bottom: 0; }

/* 平板/手机：单栏，导航在正文前，帮助卡在正文后 */
@media (max-width: 1024px) {
  .gb-info { display: flex; flex-direction: column; align-items: stretch; gap: 24px; }
  .gb-info__aside { display: contents; }
  .gb-info-nav { order: 1; padding: 10px; }
  .gb-info__body { order: 2; width: 100%; max-width: none; }
  .gb-info-help { order: 3; }
  .gb-info-nav__title { display: none; }
  .gb-info-nav ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; }
}
@media (max-width: 767px) {
  .gb-info-hero__inner { padding: 20px 16px 22px; }
  .gb-info-hero__title { font-size: 27px; }
  .gb-info-hero__lead { font-size: 15px; }
  .gb-info-nav ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gb-info .gb-info-nav__link { padding: 9px 8px; font-size: 13.5px; gap: 8px; }
  .gb-info-nav__link .gb-info-ic { width: 18px; height: 18px; flex-basis: 18px; }
  .gb-info-toc { padding: 14px 16px; margin-bottom: 24px; }
  .gb-info-toc ol { grid-template-columns: minmax(0, 1fr); }
  .gb-info-content { font-size: 15.5px; }
  .gb-info-content .gb-info-lead { font-size: 16.5px; }
  .gb-info-content h2 { font-size: 22px; }
  .gb-info-sec + .gb-info-sec { margin-top: 30px; padding-top: 26px; }
  .gb-info-content .gb-info-fact b { font-size: 22px; }
  .gb-info-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .gb-info-geo { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .gb-info-content a.gb-info-geo__main, .gb-info-geo__more { padding: 13px 14px; }
  .gb-info-content .gb-info-geo__list { gap: 8px 14px; }
  .gb-info-content .gb-info-geo__list > li { font-size: 14px; }
  .gb-info-fact { padding: 12px 14px; }
  .gb-info-table table { font-size: 13.5px; }
  /* 三列及以上的表格保持可读列宽，在表格框内横向滚动 */
  .gb-info-table table:has(th:nth-child(3)) { min-width: 560px; }
  .gb-info-table th, .gb-info-table td { padding: 9px 12px; }
}
