/* Products-only catalogue. Shared header/footer and homepage CSS are not changed. */
body.products-page { background:var(--pc-bg,#fff); }
.products-page #main { color:var(--pc-text,#33405f); font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif; }
.products-page #main * { box-sizing:border-box; }
.products-page .pc-hero { padding:32px 0 24px; }
.products-page .pc-crumbs { display:flex; gap:10px; align-items:center; margin-bottom:20px; font-size:14px; color:var(--pc-muted,#586581); }
.products-page .pc-crumbs a { color:inherit; }
.products-page .pc-h1 { margin:0; font:700 clamp(30px,3.3vw,42px)/1.15 Inter,system-ui,sans-serif; letter-spacing:-.025em; color:var(--pc-ink,#111b31); background:none; -webkit-text-fill-color:currentColor; }
.products-page .pc-intro { max-width:850px; margin:16px 0 0; font-size:17px; line-height:1.65; }
.products-page .pc-langnote { margin:0 0 16px; padding:10px 14px; border-inline-start:3px solid var(--pc-accent,#2d4bdb); background:var(--pc-soft2,#f5f7fc); font-size:14px; }
.products-page .pc-jump { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.products-page .pc-jump a { display:inline-flex; align-items:center; min-height:44px; padding:8px 16px; border:1px solid var(--pc-line-strong,#dce2ef); border-radius:8px; color:var(--pc-ink-soft,#213050); background:var(--pc-surface,#fff); text-decoration:none; font-size:14px; font-weight:600; }
.products-page .pc-jump a:hover { color:var(--pc-link,#2440c4); border-color:var(--pc-accent,#2d4bdb); background:var(--pc-hover,#f5f7ff); }
.products-page #catalogue, .products-page .pc-card { scroll-margin-top:100px; }
.products-page .pc-group { padding:32px 0 40px; background:var(--pc-bg,#fff); }
.products-page .pc-group + .pc-group { border-top:1px solid var(--pc-line,#e6eaf2); }
.products-page .pc-group-head { display:flex; gap:14px; align-items:flex-start; margin-bottom:24px; }
.products-page .pc-group-head > i { display:flex; align-items:center; justify-content:center; width:40px; height:40px; flex:0 0 40px; border-radius:9px; background:var(--pc-accent-soft,#eef1ff); color:var(--pc-accent,#2d4bdb); font-size:20px; }
.products-page .pc-group-head .hv2-h2 { font-size:28px; line-height:1.25; letter-spacing:-.015em; }
.products-page .pc-group-head p { max-width:900px; margin:8px 0 0; font-size:15px; line-height:1.6; }
.products-page .pc-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; align-items:start; }
.products-page .pc-card { display:flex; flex-direction:column; min-width:0; padding:24px; border:1px solid var(--pc-line-strong,#dce2ef); border-radius:12px; background:var(--pc-surface,#fff); }
.products-page .pc-card h3 { margin:0 0 10px; font:700 21px/1.3 Inter,system-ui,sans-serif; color:var(--pc-ink,#111b31); background:none; -webkit-text-fill-color:currentColor; }
.products-page .pc-result { margin:0 0 12px; font-size:16px; line-height:1.6; }
.products-page .pc-for { margin:0 0 16px; color:var(--pc-muted,#586581); font-size:14px; line-height:1.55; }
.products-page .pc-for strong { font-weight:600; color:var(--pc-text,#33405f); }
.products-page .pc-high { margin:0 0 20px; padding-inline-start:19px; font-size:14px; line-height:1.55; }
/* общие стили сайта сбрасывают списки в list-style:none — без этого ::marker не виден */
.products-page .pc-high li { padding:3px 0; list-style:disc outside; }
.products-page .pc-high li::marker { color:var(--pc-accent,#2d4bdb); }
.products-page .pc-access { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-top:auto; padding-top:14px; border-top:1px solid var(--pc-line,#e6eaf2); font-size:12px; color:var(--pc-muted2,#526080); }
.products-page .pc-chip { display:inline-flex; min-height:26px; align-items:center; padding:3px 8px; border-radius:5px; border:1px solid var(--pc-line-strong,#dce2ef); background:var(--pc-soft,#f6f8fc); color:var(--pc-text,#33405f); }
.products-page .pc-card-actions { display:flex; flex-wrap:wrap; gap:0 16px; margin-top:12px; }
.products-page .pc-card-actions a { display:inline-flex; align-items:center; gap:10px; min-height:44px; font-size:14px; line-height:1.4; color:var(--pc-link,#2440c4); text-decoration:none; }
.products-page .pc-card-actions .pc-primary { font-weight:650; }
.products-page .pc-card-actions a:hover, .products-page .pc-reference-links a:hover, .products-page .pc-tool a:hover { text-decoration:underline; }
.products-page .pc-terms { border-top:1px solid var(--pc-line,#e6eaf2); margin-top:8px; }
.products-page .pc-terms summary { min-height:44px; padding:12px 0 6px; cursor:pointer; font-size:14px; font-weight:600; color:var(--pc-text2,#43516f); }
.products-page .pc-terms ul { margin:10px 0; padding-inline-start:19px; font-size:14px; line-height:1.65; }
.products-page .pc-terms li { margin:8px 0; }
.products-page .pc-checked { font-size:12px; color:var(--pc-muted,#586581); margin:12px 0 0; }
.products-page .pc-tools-sec { padding:40px 0; background:var(--pc-soft,#f6f8fc); }
.products-page .pc-section-intro { max-width:850px; margin:12px 0 24px; font-size:16px; line-height:1.6; }
.products-page .pc-tool-group + .pc-tool-group { margin-top:36px; padding-top:30px; border-top:1px solid var(--pc-line-strong,#dce2ef); }
.products-page .pc-tool-group + .pc-tool-group > h2 { font-size:25px; }
.products-page .pc-tools-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; align-items:stretch; }
.products-page .pc-tool { display:flex; flex-direction:column; min-width:0; padding:22px; background:var(--pc-surface,#fff); border:1px solid var(--pc-line-strong,#dce2ef); border-radius:10px; }
.products-page .pc-tool h3 { margin:0 0 12px; font:650 19px/1.3 Inter,system-ui,sans-serif; color:var(--pc-ink,#111b31); background:none; -webkit-text-fill-color:currentColor; }
.products-page .pc-tool > p { margin:0 0 16px; font-size:15px; line-height:1.6; }
.products-page .pc-tool .pc-down { align-self:flex-start; padding:4px 8px; background:#fff4dc; color:#784c05; border-radius:5px; font-size:12px; font-weight:600; }
.products-page .pc-tool-related { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 12px; margin-top:auto; padding-top:14px; border-top:1px solid var(--pc-line,#e6eaf2); font-size:13px; line-height:1.5; }
.products-page .pc-tool-related > span { color:var(--pc-muted,#586581); }
.products-page .pc-tool-related a { color:var(--pc-link,#2440c4); min-height:26px; }
.products-page .pc-tool-open { display:inline-flex; align-items:center; gap:12px; align-self:flex-start; min-height:44px; margin-top:8px; font-size:14px; font-weight:650; color:var(--pc-link,#2440c4); text-decoration:none; }
.products-page .pc-tools-additional { grid-template-columns:repeat(3,minmax(0,1fr)); }
.products-page .pc-notes { padding:24px 0; }
.products-page .pc-faq-wrap { border:1px solid var(--pc-line-strong,#dce2ef); border-radius:8px; padding:0 20px; }
.products-page .pc-faq-wrap > summary { padding:16px 0; cursor:pointer; font-size:16px; font-weight:600; color:var(--pc-ink-soft,#213050); }
.products-page .pc-faq-wrap dl { margin:0 0 20px; }
.products-page .pc-faq-wrap dt { font-weight:650; margin:20px 0 8px; }
.products-page .pc-faq-wrap dd { margin:0; font-size:15px; line-height:1.6; }
.products-page .pc-reference { padding:24px 0 28px; }
.products-page .pc-reference h2, .products-page .pc-contact h2 { margin:0 0 10px; font:650 21px/1.3 Inter,system-ui,sans-serif; color:var(--pc-ink,#111b31); background:none; -webkit-text-fill-color:currentColor; }
.products-page .pc-reference p, .products-page .pc-contact p { margin:0; font-size:15px; line-height:1.6; }
.products-page .pc-reference-links { display:flex; flex-wrap:wrap; gap:0 24px; margin-top:8px; }
.products-page .pc-reference-links a { display:inline-flex; align-items:center; min-height:44px; font-size:15px; color:var(--pc-link,#2440c4); font-weight:600; }
.products-page .pc-reference .pc-endpoint { font-size:13px; color:var(--pc-muted,#586581); }
.products-page .pc-endpoint code { overflow-wrap:anywhere; color:inherit; }
.products-page .pc-contact { padding:24px 0; background:var(--pc-soft,#f6f8fc); border-top:1px solid var(--pc-line,#e6eaf2); }
.products-page .pc-contact .container { display:flex; justify-content:space-between; align-items:center; gap:20px 40px; }
.products-page .pc-contact a { color:var(--pc-link,#2440c4); font-size:15px; font-weight:600; min-height:44px; display:inline-flex; align-items:center; gap:10px; flex-shrink:0; }
.products-page #main a:focus-visible, .products-page #main summary:focus-visible { outline:3px solid var(--pc-link,#2440c4); outline-offset:3px; border-radius:3px; }
@media(min-width:992px) {
  .products-page .pc-grid > .pc-card:last-child:nth-child(odd) { grid-column:1 / -1; }
  .products-page .pc-grid > .pc-card:last-child:nth-child(odd) .pc-high { columns:3; column-gap:32px; }
  .products-page .pc-high li { break-inside:avoid; }
}
@media(max-width:991.98px) {
  .products-page .pc-grid, .products-page .pc-tools-additional { grid-template-columns:minmax(0,1fr); }
  .products-page .pc-contact .container { flex-wrap:wrap; }
}
@media(max-width:575.98px) {
  .products-page .pc-hero { padding:24px 0 16px; }
  .products-page .pc-crumbs { margin-bottom:14px; }
  .products-page .pc-intro { font-size:16px; }
  .products-page .pc-jump { gap:6px; margin-top:20px; }
  .products-page .pc-jump a { font-size:13px; padding:8px 12px; }
  .products-page .pc-group-head .hv2-h2 { font-size:25px; }
  .products-page .pc-card { padding:20px 18px; }
  .products-page .pc-tools-grid { grid-template-columns:minmax(0,1fr); }
  .products-page .pc-tool { padding:20px 18px; }
  .products-page .pc-contact a { flex-shrink:1; }
}

/* ==========================================================================
   Оформление по главной (эталон — блок Products на главной, .hv2-dir в home-v2.css):
   один фирменный синий, верхняя кромка 3px, серая карточка на белой секции и белая
   с тонкой рамкой на серой, иконка без подложки, строки через тонкие линии, без теней.
   Секции групп чередуют белый и серый фон, как секции главной.
   ========================================================================== */
.products-page .pc-group { padding:56px 0; }
.products-page .pc-group + .pc-group { border-top:0; }
.products-page .pc-group-soft { background:var(--hv2-soft,#f6f8fc); }
.products-page .pc-group-head > i { width:auto; height:auto; flex:0 0 auto; background:none; border-radius:0; font-size:24px; color:var(--pc-accent,#2d4bdb); padding-top:2px; }
.products-page .pc-jump a i { margin-inline-end:8px; color:var(--pc-accent,#2d4bdb); font-size:16px; }

.products-page .pc-grid { align-items:stretch; gap:20px; }
.products-page .pc-card,
.products-page .pc-tool {
  border:0; border-top:3px solid var(--pc-accent,#2d4bdb); border-radius:0 0 12px 12px;
  background:var(--hv2-soft,#f6f8fc); box-shadow:none;
}
.products-page .pc-group-soft .pc-card,
.products-page .pc-tools-sec .pc-tool {
  background:var(--pc-surface,#fff); border:1px solid var(--hv2-line,#e2e6f2); border-top:3px solid var(--pc-accent,#2d4bdb);
}
.products-page .pc-card-head { display:block; margin-bottom:10px; }
.products-page .pc-card-icon { display:block; margin-bottom:10px; font-size:22px; line-height:1; color:var(--pc-accent,#2d4bdb); }
.products-page .pc-card h3, .products-page .pc-tool h3 { margin:0; }
.products-page .pc-result { color:var(--pc-ink-soft2,#1f2a44); }
.products-page .pc-for { padding:0; border:0; background:none; }

/* особенности — строками через тонкую линию, как список продуктов в блоке главной */
.products-page .pc-high { padding-inline-start:0; margin-bottom:16px; }
.products-page .pc-high li { list-style:none; padding:9px 0; border-bottom:1px solid var(--hv2-line,#e2e6f2); }
.products-page .pc-high li:first-child { border-top:1px solid var(--hv2-line,#e2e6f2); }
.products-page .pc-access { border-top:0; padding-top:4px; }
.products-page .pc-chip { background:var(--pc-surface,#fff); }
.products-page .pc-group-soft .pc-chip { background:var(--hv2-soft,#f6f8fc); }
.products-page .pc-card-foot { margin-top:auto; }
.products-page .pc-tool .pc-card-head { margin-bottom:10px; }
@media(min-width:992px) {
  /* Host Mode и Отчёты во всю ширину: особенности в три колонки без верхних/нижних линий-дублей */
  .products-page .pc-grid > .pc-card:last-child:nth-child(odd) .pc-high li:first-child { border-top:0; }
}
/* заголовок FAQ — настоящий h2 внутри summary (структура как в Markdown), вид прежний */
.products-page .pc-faq-wrap > summary .pc-faq-h { display:inline; margin:0; font:600 16px/1.4 Inter,system-ui,sans-serif; color:var(--pc-ink-soft,#213050); background:none; -webkit-text-fill-color:currentColor; }
/* мобильный отступ групп — после итогового padding:56px выше, иначе тот его перекрывает */
@media(max-width:575.98px) {
  .products-page .pc-group { padding:24px 0; }
}
