/* Карточка бетона / раствора / ЦПС (template-parts/card-beton.php). Макет: design/card-beton/index.html.
   Токены — из style.css темы; классы с префиксом pc-, чтобы не пересекаться со стилями темы.
   Размеры — в px, не в rem: тема меняет font-size у html (12px на 992–1499, 22px на 768–991, 18px на 576–767),
   а макет рассчитан на 16px — rem давал мелкий текст на ПК и крупный на планшете. */
.pc{--pc-red:#e20505;--pc-red-d:#a30505;--pc-ink:#2d2d2d;--pc-light:#f5f3f3;--pc-line:#e6e6e6;--pc-muted:#5f5757;--pc-tint:#fdf1f1;
  --pc-grad:linear-gradient(180deg,#e20505,#a30505);--pc-nav:linear-gradient(180deg,#2d2d2d,#514747);--pc-head:64px;--pc-r:10px;
  font-size:16px;line-height:1.55;color:var(--pc-ink);overflow-wrap:break-word}
@media (min-width:992px){.pc{--pc-head:140px}}
.pc *,.pc *::before,.pc *::after{box-sizing:border-box}
/* ссылки — цветом текста с тонким красным подчёркиванием, красные при наведении (сверка с partnerbsu.ru, Sam 19.10.2026);
   :where — специфичность как у «a» в макете, классы компонентов (кнопки, плашки) её перекрывают */
:where(.pc) a{color:var(--pc-ink);text-decoration:underline;text-decoration-color:rgba(226,5,5,.55);text-underline-offset:2px}
:where(.pc) a:hover{color:var(--pc-red)}
/* ссылки в тексте — подчёркнуты, как в макете (тема снимает подчёркивание у всех a) */
.pc-prose a,.pc-advice a,.pc-faq__a a,.pc-steps a,.pc-map__card a,.pc-consent a,.pc-muted a{text-decoration:underline;text-underline-offset:2px}
.pc :focus-visible{outline:3px solid var(--pc-ink);outline-offset:2px}
.pc-order__head :focus-visible{outline-color:#fff}
.pc [id]{scroll-margin-top:calc(var(--pc-head) + 12px)}
.pc [hidden]{display:none!important}
.pc-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pc-nowrap{white-space:nowrap}
.pc h2{font-size:30px;line-height:1.3;font-weight:600;margin:0 0 18px;text-align:left}
.pc h3{font-size:20px;line-height:1.35;font-weight:600;margin:28px 0 12px}
.pc p{margin:0 0 14px}

/* Кнопки — как .button темы */
.pc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border:0;border-radius:5px;font-family:inherit;font-weight:600;font-size:16px;line-height:1.2;text-decoration:none;cursor:pointer;color:#fff!important;background:var(--pc-grad);box-shadow:0 7px 17px rgba(0,0,0,.17);text-shadow:0 1px 4px rgba(15,11,7,.54);transition:filter .2s;text-align:center}
.pc-btn:hover{filter:brightness(1.08)}
.pc-btn--wide{width:100%}
.pc-btn--ghost{background:#fff;color:var(--pc-ink)!important;box-shadow:none;text-shadow:none;border:2px solid var(--pc-ink)}
.pc-btn--ghost:hover{background:var(--pc-light);filter:none}

/* Крошки */
.pc-crumbs{padding:20px 0 8px}
.pc-crumbs ol{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none;font-size:15px}
.pc-crumbs li{display:flex;align-items:center}
.pc-crumbs li+li::before{content:"/";margin:0 8px;color:var(--pc-muted)}
.pc-crumbs a{color:var(--pc-muted);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.pc-crumbs a:hover{color:var(--pc-red)}
.pc-crumbs [aria-current]{color:var(--pc-ink)}

/* Сетка: контент + правая колонка заказа */
.pc-card{display:grid;grid-template-columns:minmax(0,1fr);column-gap:48px;padding-bottom:64px}
@media (min-width:992px){
  .pc-card{grid-template-columns:minmax(0,1fr) 360px}
  .pc-head{grid-column:1;grid-row:1}
  .pc-rail{grid-column:2;grid-row:1 / span 2;display:flex;flex-direction:column;gap:24px;padding-top:8px}
  .pc-body{grid-column:1;grid-row:2}
}
@media (min-width:1200px){.pc-card{grid-template-columns:minmax(0,1fr) 400px;column-gap:56px}}

/* Первый экран */
.pc .pc-h1{font-size:35px;line-height:1.25;font-weight:700;margin:8px 0 20px;padding:0 0 14px;border-bottom:1px solid var(--pc-red);text-align:left}
.pc-badges{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:0;list-style:none}
.pc-badges li{display:inline-flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;background:var(--pc-light);border-radius:22px;font-weight:500;font-size:15px;margin:0}
.pc-badges li::before{content:none}
.pc-badges svg{flex:none;color:var(--pc-red)}
.pc-lead{max-width:62ch}
.pc-lead strong{font-weight:600}
@media (max-width:991px){.pc .pc-h1{font-size:24px;margin:4px 0 16px;padding-bottom:10px}.pc-badges li{font-size:16px}}

/* Блок заказа */
.pc-order{background:#fff;border:1px solid var(--pc-line);border-radius:var(--pc-r);box-shadow:0 7px 24px rgba(45,45,45,.10)}
.pc-order__head{background:var(--pc-nav);color:#fff;border-radius:var(--pc-r) var(--pc-r) 0 0;padding:16px 20px}
.pc .pc-order__head h2{margin:0;font-size:17px;line-height:1.35;font-weight:600;color:#fff}
.pc-order__body{padding:20px 20px 0}
.pc-fs{border:0;margin:0 0 20px;padding:0;min-width:0}
.pc-fs legend,.pc-fs__label{display:block;font-weight:600;margin:0 0 8px;padding:0}
.pc-seg{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pc-zones{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.pc-opt{position:relative;display:block;margin:0}
.pc-opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.pc-opt span{display:flex;flex-direction:column;justify-content:center;min-height:56px;padding:8px 12px;border:2px solid var(--pc-line);border-radius:6px;line-height:1.25;background:#fff;transition:border-color .15s,background .15s}
.pc-opt b{font-weight:600}
.pc-opt small{font-size:14px;color:var(--pc-muted)}
.pc-zones .pc-opt span{align-items:center;text-align:center;padding:6px 4px}
.pc-opt input:hover+span{border-color:#bdb3b3}
.pc-opt input:checked+span{border-color:var(--pc-red);background:var(--pc-tint)}
.pc-opt input:checked+span small{color:var(--pc-ink)}
.pc-opt input:focus-visible+span{outline:3px solid var(--pc-ink);outline-offset:2px}
.pc-hint{font-size:14px;color:var(--pc-muted);margin:8px 0 0!important}
.pc-stepper{display:flex;align-items:stretch;width:max-content;border:2px solid var(--pc-line);border-radius:6px;overflow:hidden}
.pc-stepper button{width:48px;min-height:48px;border:0;background:var(--pc-light);font-family:inherit;font-weight:600;font-size:22px;line-height:1;color:var(--pc-ink);cursor:pointer}
.pc-stepper button:hover{background:#ebe7e7}
.pc-stepper input{width:84px;border:0;text-align:center;font-family:inherit;font-weight:700;font-size:20px;line-height:1;color:var(--pc-ink);background:#fff;padding:0;margin:0}
.pc-stepper input:focus-visible{outline:3px solid var(--pc-ink);outline-offset:-3px}
.pc-vol-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pc-unit{font-weight:600}

/* «Загрузка машины» */
.pc-mix{margin:0 0 16px;padding:14px 14px 12px;background:var(--pc-light);border-radius:8px}
.pc-mix__bars{display:flex;flex-direction:column;gap:10px;margin:22px 0 10px}
.pc-drum{position:relative;height:26px;border-radius:13px;background:#fff;box-shadow:inset 0 0 0 1px #d9d2d2}
.pc-drum__load,.pc-drum__paid{position:absolute;top:0;bottom:0}
.pc-drum__load{left:0;background:var(--pc-grad);border-radius:13px 0 0 13px}
.pc-drum__paid{background:repeating-linear-gradient(135deg,#cfc6c6 0 5px,#fff 5px 10px);box-shadow:inset 0 0 0 1px #cfc6c6}
.pc-drum__min{position:absolute;top:-6px;bottom:-6px;left:var(--pc-min);width:2px;background:var(--pc-ink)}
.pc-drum::before{content:none;position:absolute;bottom:100%;left:var(--pc-min);transform:translateX(-50%);margin-bottom:7px;font-size:13px;font-weight:600;line-height:1.2;white-space:nowrap}
.pc-mix__bars .pc-drum:first-child::before,.pc-rule .pc-drum::before{content:attr(data-min)}
.pc-drum__cap{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--pc-muted);font-weight:500}
.pc-mix__cap{margin:0!important;font-weight:600;line-height:1.4}
.pc-mix__legend{display:flex;flex-wrap:wrap;gap:4px 16px;margin:6px 0 0;padding:0;list-style:none;font-size:14px;color:var(--pc-muted)}
.pc-mix__legend li{margin:0}
.pc-mix__legend li::before{content:none}
.pc-mix__legend i{display:inline-block;width:14px;height:14px;border-radius:3px;vertical-align:-2px;margin-right:6px}
.pc-sw-load{background:var(--pc-grad)}
.pc-sw-paid{background:repeating-linear-gradient(135deg,#cfc6c6 0 3px,#fff 3px 6px);box-shadow:inset 0 0 0 1px #cfc6c6}

.pc-receipt{margin:0 0 12px}
.pc-receipt__row{display:flex;justify-content:space-between;gap:12px;padding:6px 0}
.pc-receipt__row dt{color:var(--pc-muted);font-weight:400}
.pc-receipt__row dd{margin:0;font-weight:600;white-space:nowrap}
.pc-receipt__total{border-top:1px dashed #bdb3b3;margin-top:6px;padding-top:12px;align-items:baseline}
.pc-receipt__total dt{color:var(--pc-ink);font-weight:600}
.pc-receipt__total dd{font-size:28px;line-height:1.1;font-weight:700;color:var(--pc-red)}
.pc-per{font-size:15px;color:var(--pc-muted)}
.pc-tip9{padding:10px 12px;border-radius:6px;background:var(--pc-tint);font-size:15px;line-height:1.45}
.pc-disc{margin:0 0 18px!important;font-size:15px;line-height:1.45}
.pc-disc b{font-weight:600}
.pc-actions{display:grid;gap:10px}
.pc-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pc-pair .pc-btn{padding:0 10px;font-size:15px}
.pc-one{display:grid;gap:8px;margin:10px 20px 0;padding:12px;border:1px solid var(--pc-line);border-radius:6px}
.pc-one label{font-weight:600}
.pc-one .modal__error-message{position:static;display:none;color:var(--pc-red-d);font-size:14px}
.pc-one .modal__error-message.show{display:block}
.pc-input{min-height:48px;padding:0 14px;border:2px solid var(--pc-line);border-radius:6px;font-family:inherit;font-weight:500;font-size:16px;color:var(--pc-ink);width:100%}
.pc-input:focus-visible{outline:3px solid var(--pc-ink);outline-offset:0;border-color:var(--pc-ink)}
.pc-consent{font-size:13px;color:var(--pc-muted);margin:0!important;line-height:1.4}
.pc-order__phone{display:flex;flex-direction:column;align-items:center;margin:16px 20px 0;padding:14px 0 20px;border-top:1px solid var(--pc-line);text-align:center}
.pc-order__phone a{font-size:22px;font-weight:700;color:var(--pc-ink);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.pc-order__phone span{font-size:15px;color:var(--pc-muted)}
@media (max-width:991px){
  .pc-rail{margin:8px 0 0}
  .pc-opt small,.pc-hint,.pc-mix__legend,.pc-per,.pc-tip9,.pc-disc,.pc-consent,.pc-order__phone span{font-size:16px}
  .pc-drum::before,.pc-drum__cap{font-size:14px}
}
@media (max-width:479px){.pc-zones{grid-template-columns:1fr 1fr}}
@media (max-width:380px){.pc-order__body{padding:16px 14px 0}.pc-pair{grid-template-columns:1fr}}

/* Липкая сводка (ПК) */
.pc-sum{display:none}
@media (min-width:992px){
  .pc-sum{display:block;position:sticky;top:calc(var(--pc-head) + 16px);background:#fff;border:1px solid var(--pc-line);border-radius:var(--pc-r);padding:16px 18px;box-shadow:0 7px 24px rgba(45,45,45,.08);transition:opacity .2s}
  .pc-sum[data-show="false"]{visibility:hidden;opacity:0}
  .pc-sum__line{margin:0 0 4px!important;font-size:14px;color:var(--pc-muted)}
  .pc-sum__total{margin:0 0 12px!important;font-size:24px;font-weight:700;color:var(--pc-red)}
  .pc-sum__phone{display:flex;justify-content:center;margin-top:8px;color:var(--pc-ink)!important;font-weight:700;text-decoration:none;min-height:44px;align-items:center}
}

/* Якорное меню */
.pc-anchors{margin:40px 0 0;border-bottom:1px solid var(--pc-line)}
.pc-anchors ul{display:flex;gap:4px;margin:0;padding:0;list-style:none}
.pc-anchors li{margin:0}
.pc-anchors li::before{content:none}
.pc-anchors a{display:flex;align-items:center;min-height:48px;padding:0 14px;color:var(--pc-ink);text-decoration:none;font-weight:600;border-bottom:3px solid transparent;margin-bottom:-1px}
.pc-anchors a:hover{color:var(--pc-red);border-bottom-color:var(--pc-red)}
/* колонка у темы уже, чем в макете (поля контейнера темы): 7 пунктов в одну строку, «Как заказать» в две — как в макете */
@media (min-width:992px) and (max-width:1499px){.pc-anchors a{padding:0 10px}}
@media (min-width:992px) and (max-width:1199px){.pc-anchors ul{overflow-x:auto;scrollbar-width:thin}}
@media (max-width:991px){
  .pc-anchors{margin:32px -15px 0;border-bottom:0}
  .pc-anchors ul{flex-wrap:nowrap;overflow-x:auto;padding:0 15px 6px;gap:8px;-webkit-overflow-scrolling:touch}
  .pc-anchors li{flex:none}
  .pc-anchors a{background:var(--pc-light);border:0;border-radius:24px;padding:0 16px;margin:0}
}

/* Разделы */
.pc-sec{padding-top:56px}
.pc-prose p,.pc-prose ul,.pc-prose ol{max-width:70ch}
.pc-prose ul,.pc-prose ol{padding-left:1.2em;margin:0 0 14px}
.pc-prose li{margin:0 0 8px;list-style:inherit}
.pc-prose ul li{list-style:disc}
.pc-prose li::marker{color:var(--pc-red)}
.pc-prose b,.pc-prose strong{font-weight:600}
.pc-muted{color:var(--pc-muted)}
@media (max-width:991px){.pc-sec{padding-top:44px}.pc h2{font-size:22px}.pc h3{font-size:18px}}

/* Таблицы */
.pc-tbl-wrap{margin:0 0 16px;overflow-x:auto}
.pc-tbl{width:100%;border-collapse:collapse;font-size:15px}
.pc-tbl caption{text-align:left}
.pc-tbl th,.pc-tbl td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--pc-line);background:none}
.pc-tbl thead th{background:var(--pc-light);font-weight:600;line-height:1.35;border-bottom:0}
.pc-tbl thead th:first-child{border-radius:6px 0 0 6px}
.pc-tbl thead th:last-child{border-radius:0 6px 6px 0}
.pc-tbl .pc-r{text-align:right;white-space:nowrap}
.pc-tbl thead th.pc-r{white-space:normal} /* длинные заголовки столбцов переносятся — 4 столбца зон помещаются в колонку */
.pc-tbl .pc-price{font-weight:700;color:var(--pc-red);font-size:17px}
.pc-tbl tbody th{font-weight:500}
.pc-tbl tbody th small{display:block;font-weight:500;color:var(--pc-muted);font-size:14px}
.pc-tbl--specs{max-width:720px}
@media (max-width:1199px){.pc-tbl th,.pc-tbl td{padding:12px 10px}}
@media (max-width:640px){
  .pc-tbl--stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .pc-tbl--stack,.pc-tbl--stack tbody,.pc-tbl--stack tr,.pc-tbl--stack th,.pc-tbl--stack td{display:block}
  .pc-tbl--stack tr{border:1px solid var(--pc-line);border-radius:8px;padding:6px 14px;margin:0 0 10px}
  .pc-tbl--stack th,.pc-tbl--stack td{border:0;padding:6px 0;display:flex;justify-content:space-between;gap:12px;font-size:16px}
  .pc-tbl--stack tbody th{font-weight:700;font-size:17px;border-bottom:1px solid var(--pc-line);padding-bottom:8px;margin-bottom:2px}
  .pc-tbl--stack td::before{content:attr(data-label);color:var(--pc-muted);font-weight:500;text-align:left}
  .pc-tbl--stack tbody th small{display:inline;font-size:16px}
  /* длинная подпись из шапки переносится, цифры — нет: без прокрутки внутри карточки */
  .pc-tbl--stack td::before{flex:0 1 auto;min-width:5em;max-width:60%}
  .pc-tbl--stack td{align-items:baseline}
  .pc-tbl--stack td.pc-r{white-space:nowrap}
  .pc-tbl{font-size:16px}
}

/* Цена: зоны + правило минимума */
.pc-zones-grid{display:grid;gap:20px;align-items:start}
/* плашка правила справа от таблицы — только когда таблица помещается целиком (колонка темы уже макета: на 1200–1499 px 4 столбца не влезали) */
@media (min-width:1500px){.pc-zones-grid{grid-template-columns:minmax(0,1fr) 250px}}
@media (min-width:640px) and (max-width:1499px){.pc-rule{max-width:520px}}
.pc-rule{border:2px solid var(--pc-ink);border-radius:var(--pc-r);padding:16px}
.pc-rule__title{font-weight:700;font-size:17px;line-height:1.35;margin:0 0 12px!important}
.pc-rule .pc-drum{margin:20px 0 8px}
.pc-rule p{font-size:15px;margin:0 0 8px}
.pc-rule p:last-child{margin:0}
@media (max-width:991px){.pc-rule p{font-size:16px}}
.pc-perks{display:grid;gap:12px;margin:20px 0 0;padding:0;list-style:none}
@media (min-width:640px){.pc-perks{grid-template-columns:1fr 1fr}}
.pc-perks li{display:flex;gap:14px;align-items:flex-start;padding:16px;background:var(--pc-light);border-radius:var(--pc-r);margin:0}
.pc-perks li::before{content:none}
.pc-perks b{flex:none;font-size:24px;line-height:1.1;font-weight:700;color:var(--pc-red-d);min-width:3.6em}
.pc-perks span{line-height:1.45}

/* Подсказки «?» — раскрываются в потоке ячейки */
.pc-tipwrap{display:inline;margin-left:6px}
.pc-tipbtn{position:relative;width:24px;height:24px;vertical-align:middle;border-radius:50%;border:1.5px solid var(--pc-muted);background:#fff;color:var(--pc-ink);font-family:inherit;font-weight:700;font-size:13px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}
.pc-tipbtn::after{content:"";position:absolute;inset:-10px}
.pc-tipbtn[aria-expanded="true"]{background:var(--pc-ink);color:#fff;border-color:var(--pc-ink)}
.pc-tiptext{display:block;margin:10px 0 2px;max-width:40ch;padding:10px 12px;background:var(--pc-ink);color:#fff;border-radius:8px;font-size:15px;font-weight:400;line-height:1.45}
@media (max-width:991px){.pc-tiptext{font-size:16px}}

.pc-advice{margin:20px 0 0;padding:18px 20px;border-radius:var(--pc-r);background:var(--pc-light);max-width:70ch}
.pc .pc-advice h3{margin:0 0 8px}
.pc-advice p:last-child{margin:0}
.pc-two{display:grid;gap:0 40px}
@media (min-width:1200px){.pc-two{grid-template-columns:1fr 1fr}.pc-two .pc-prose p{max-width:none}}

/* Доставка */
.pc-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin:0 0 20px;background:var(--pc-line);border:1px solid var(--pc-line);border-radius:var(--pc-r);overflow:hidden}
@media (min-width:1200px){.pc-facts{grid-template-columns:repeat(4,1fr)}}
.pc-facts div{background:#fff;padding:14px 16px;display:flex;flex-direction:column-reverse;gap:2px}
.pc-facts dt{font-size:14px;color:var(--pc-muted);line-height:1.35;font-weight:400}
.pc-facts dd{margin:0;font-size:22px;font-weight:700;line-height:1.2}
@media (max-width:991px){.pc-facts dt{font-size:16px}.pc-facts dd{font-size:18px}}
.pc-map{position:relative;margin:20px 0 0;border-radius:var(--pc-r);overflow:hidden;background:#eceee8;aspect-ratio:16/10;max-height:460px;width:100%}
.pc-map__canvas{position:absolute;inset:0}
.pc-map__card{position:absolute;left:14px;bottom:14px;max-width:290px;background:#fff;border-radius:8px;padding:12px 14px;box-shadow:0 6px 18px rgba(0,0,0,.15);font-size:15px;line-height:1.4;z-index:2}
.pc-map__card b{display:block;font-weight:600}
@media (max-width:640px){.pc-map{aspect-ratio:4/5;max-height:none}.pc-map__card{left:10px;right:10px;max-width:none;font-size:16px}}

/* Шаги и оплата */
.pc-steps{counter-reset:pcs;display:grid;gap:12px;margin:0;padding:0;list-style:none}
@media (min-width:768px){.pc-steps{grid-template-columns:1fr 1fr}}
.pc-steps li{counter-increment:pcs;position:relative;padding:16px 16px 16px 64px;border:1px solid var(--pc-line);border-radius:var(--pc-r);margin:0;list-style:none}
.pc-steps li::before{content:counter(pcs);position:absolute;left:16px;top:14px;width:34px;height:34px;border-radius:50%;background:var(--pc-grad);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.pc-steps b{display:block;font-weight:600;margin-bottom:4px}
.pc-pay{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px;padding:0;list-style:none}
.pc-pay li{padding:10px 16px;border:1px solid var(--pc-line);border-radius:6px;font-weight:500;margin:0}
.pc-pay li::before{content:none}

/* Отзывы */
.pc-reviews{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);margin:0 0 20px}
/* ПК — 3 в ряд, телефон — столбик (spec.md, блок 11); 992–1199 px колонка узкая (рядом блок заказа) — по 2 */
@media (min-width:768px) and (max-width:991px),(min-width:1200px){.pc-reviews{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:992px) and (max-width:1199px){.pc-reviews{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pc-rev{margin:0;padding:18px 20px;border:1px solid var(--pc-line);border-radius:var(--pc-r);display:flex;flex-direction:column;gap:10px}
.pc-rev blockquote{margin:0;padding:0;border:0;font-style:normal}
.pc-rev p{margin:0 0 8px}
.pc-rev figcaption{margin-top:auto;padding-top:8px;border-top:1px solid var(--pc-line)}
.pc-rev figcaption b{display:block;font-weight:600}
.pc-rev figcaption span{color:var(--pc-muted);font-size:15px}
.pc-textarea{min-height:110px;padding:12px 14px;resize:vertical;width:100%;font-family:inherit}

/* Вопрос–ответ: <details> без name, все закрыты, без JS */
.pc-faq{border-top:1px solid var(--pc-line);max-width:80ch}
.pc-faq__item{border-bottom:1px solid var(--pc-line)}
.pc-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:12px 0;font-weight:600;cursor:pointer}
.pc-faq summary::-webkit-details-marker{display:none}
.pc-faq summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--pc-light) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath d='M6 0v12M0 6h12' stroke='%232d2d2d' stroke-width='2'/%3E%3C/svg%3E") center no-repeat}
.pc-faq details[open] summary::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath d='M0 6h12' stroke='%23ffffff' stroke-width='2'/%3E%3C/svg%3E");background-color:var(--pc-red)}
.pc-faq summary:hover{color:var(--pc-red)}
.pc-faq__a{padding:0 44px 16px 0}
.pc-faq__a p{max-width:70ch;margin:0}

/* Перелинковка */
.pc-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px;padding:0;list-style:none}
.pc-chips li{margin:0}
.pc-chips li::before{content:none}
.pc-chips a,.pc-chips span{display:inline-flex;flex-direction:column;justify-content:center;min-height:48px;padding:6px 16px;border:1px solid var(--pc-line);border-radius:6px;color:var(--pc-ink);text-decoration:none;line-height:1.2}
.pc-chips a:hover{border-color:var(--pc-red);color:var(--pc-red)}
.pc-chips b{font-weight:600}
.pc-chips small{font-size:13px;color:var(--pc-muted)}
.pc-chips [aria-current]{background:var(--pc-ink);color:#fff;border-color:var(--pc-ink)}
.pc-chips [aria-current] small{color:#e6e2e2}

/* Нижняя панель на телефоне */
.pc-mbar{display:none}
@media (max-width:991px){
  .pc-mbar{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -4px 16px rgba(0,0,0,.12)}
  .pc-mbar .pc-btn{min-height:50px;padding:0 10px}
  body.pc-page{padding-bottom:72px}
}

@media (prefers-reduced-motion:reduce){.pc *,.pc *::before,.pc *::after{transition:none!important;animation:none!important}}
@media (prefers-reduced-motion:no-preference){html:has(body.pc-page){scroll-behavior:smooth}}

/* ---------- Общие блоки новых страниц (inc/partner-ui.php; макеты главной Б, «Доставки», карточки — Sam 19.10.2026) ---------- */
/* Правая колонка на телефоне раскладывается по странице: калькулятор под первым экраном, список продукции в конце */
@media (max-width:991px){
  .pc-rail,.pc-stick{display:contents}
  .pc-head{order:1}
  .pc-order{order:2;margin:16px 0 0}
  .pc-body{order:3}
  .pc-plist{order:4;margin:48px 0 0}
  .pc-sum{order:5}
}
/* Липкий блок «сводка заказа + список продукции»: не помещается в экран — прокручивается только список */
@media (min-width:992px){
  .pc-stick{position:sticky;top:calc(var(--pc-head) + 16px);display:flex;flex-direction:column;gap:16px;max-height:calc(100vh - var(--pc-head) - 32px)}
  .pc-stick .pc-sum{position:static;flex:none;visibility:visible;opacity:1}
  .pc-stick .pc-plist{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:6px;scrollbar-width:thin}
  .pc-stick .pc-plist__title{position:sticky;top:0;z-index:1;margin:0;padding:0 0 8px;background:#fff}
}
/* Список «Продукция завода» */
.pc .pc-plist__title{font-size:20px;line-height:1.35;font-weight:600;margin:0 0 8px}
.pc-plist__grp{border-top:1px solid var(--pc-line)}
.pc-plist__grp:last-child{border-bottom:1px solid var(--pc-line)}
.pc-plist summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 0;font-weight:600;cursor:pointer}
.pc-plist summary::-webkit-details-marker{display:none}
.pc-plist summary::before{content:"";flex:none;width:9px;height:9px;margin:0 4px 0 3px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s}
.pc-plist details[open]>summary::before{transform:rotate(45deg)}
.pc-plist summary:hover{color:var(--pc-red)}
.pc-plist__from{margin-left:auto;font-weight:500;font-size:15px;color:var(--pc-muted);white-space:nowrap}
.pc-plist__items{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.pc-plist__items li{margin:0;list-style:none}
.pc-plist__items li::before{content:none}
.pc-plist__items a,.pc-plist__cur{display:flex;flex-direction:column;justify-content:center;min-height:52px;padding:6px 12px;border:1px solid var(--pc-line);border-radius:6px;color:var(--pc-ink)!important;text-decoration:none;line-height:1.3}
.pc-plist__items a:hover{border-color:var(--pc-red);color:var(--pc-red)!important}
.pc-plist__cur{background:var(--pc-ink);border-color:var(--pc-ink);color:#fff!important}
.pc-plist__items b{font-weight:600}
.pc-plist__items small{margin-left:6px;font-weight:500;font-size:13px;color:var(--pc-muted)}
.pc-plist__p{font-size:14px;color:var(--pc-muted)}
.pc-plist__cur small,.pc-plist__cur .pc-plist__p{color:#e6e2e2}
@media (max-width:991px){.pc .pc-plist__title{font-size:22px}.pc-plist__from,.pc-plist__p{font-size:16px}.pc-plist__items small{font-size:14px}}
/* Отзывы: сетка 3/2/1; с JS — карусель (нативная прокрутка со scroll-snap), длинные тексты — 6 строк */
.pc .pc-reviews{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));align-items:start;margin:0 0 20px}
.pc-rev__stars{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0!important}
.pc-rev__stars [role="img"]{color:#e0a800;font-size:18px;letter-spacing:2px;line-height:1}
.pc-rev__src{font-size:14px;color:var(--pc-muted)}
.pc-rev__title{margin:0!important;font-weight:700}
.pc-rev__more{align-self:flex-start;min-height:44px;padding:0;border:0;background:none;font-family:inherit;font-size:16px;font-weight:600;color:var(--pc-red-d);text-decoration:underline;cursor:pointer}
.pc-js .pc-rev--long blockquote p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}
.pc-js .pc-rev--long.is-open blockquote p{display:block;-webkit-line-clamp:none}
.pc-revs{position:relative}
.pc-revs__nav{display:flex;justify-content:flex-end;gap:8px;margin:-56px 0 14px}
.pc-revs__btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:2px solid var(--pc-ink);border-radius:50%;background:#fff;color:var(--pc-ink);cursor:pointer}
.pc-revs__btn:hover{background:var(--pc-light)}
.pc-revs__btn:disabled{opacity:.35;cursor:default}
.pc-js .pc-revs .pc-reviews{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:100%;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:4px}
.pc-js .pc-revs .pc-reviews::-webkit-scrollbar{display:none}
.pc-js .pc-revs .pc-rev{scroll-snap-align:start}
@media (min-width:992px){.pc-js .pc-revs .pc-reviews{grid-auto-columns:calc((100% - 16px) / 2)}}
@media (min-width:1200px){.pc-js .pc-revs .pc-reviews{grid-auto-columns:calc((100% - 32px) / 3)}}
@media (max-width:991px){.pc-revs__nav{margin:-48px 0 12px}.pc-rev__src{font-size:16px}}
.pc-review-form .pc-vh{position:absolute!important}
/* Фото 4:3; заглушка «Фото скоро» — только при partner_photo_placeholder (testovy) */
.city-photo{margin:0;width:100%;aspect-ratio:4/3;border-radius:var(--pc-r);overflow:hidden;background:#e6e2e2}
.city-photo img{width:100%;height:100%;object-fit:cover;display:block}
.city-photo--ph{display:flex;align-items:center;justify-content:center;padding:12px;border:2px dashed #9a9090;background:repeating-linear-gradient(135deg,#faf9f9 0 12px,#f3f1f1 12px 24px);color:var(--pc-muted);font-weight:600;font-size:16px;line-height:1.35;text-align:center}
/* Ряд фото «О заводе» (3 в ряд, ≤ 639 px — 2 + 1): здесь, а не в partner-home.css — карточка его не грузит */
.city-photos{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin:16px 0 0}
@media (max-width:639px){.city-photos{grid-template-columns:1fr 1fr}.city-photos .city-photo:last-child:nth-child(odd){grid-column:1 / -1}}

/* ---------- Типографика как на основном сайте partnerbsu.ru (макеты, коммит 909bc93; design/city-home/spec.md, «Сверка шрифтов») ---------- */
.pc{line-height:1.5}
@media (min-width:1500px){.pc{font-size:18px}}
.pc .pc-h1{line-height:1.31}
.pc h2,.pc h3{line-height:1.31}
@media (min-width:992px) and (max-width:1499px){.pc .pc-h1{font-size:28px}.pc h2{font-size:26px}.pc h3{font-size:19px}}
@media (min-width:1500px){.pc .pc-h1{font-size:35px}.pc h2{font-size:32px}.pc h3{font-size:21px}}
.pc-btn{font-weight:400}
.pc-tbl .pc-price,.city-offer dd{font-weight:600}

/* ---------- Карточка по макету 19.10 (design/card-beton): куб марки, плашки с цифрами, «текст + плашка» ---------- */
.pc-hero{display:grid;gap:4px 32px}
.pc-hero__fig{margin:0}
.pc-hero__fig img{display:block;width:100%;height:auto;aspect-ratio:1/1;border-radius:var(--pc-r);background:var(--pc-light)}
@media (min-width:992px){.pc-hero.has-fig{grid-template-columns:minmax(0,1fr) 170px;align-items:start}}
@media (min-width:1200px){.pc-hero.has-fig{grid-template-columns:minmax(0,1fr) 220px}}
@media (min-width:1440px){.pc-hero.has-fig{grid-template-columns:minmax(0,1fr) 260px}}
@media (max-width:991px){.pc-hero__fig{width:100%;max-width:240px;margin:14px auto 0}}
.pc-split{display:grid;gap:8px 40px;align-items:start}
@media (min-width:1200px){
  .pc-split.has-photo,.pc-split--intro{grid-template-columns:minmax(0,1fr) 260px}
  .pc-split--wide.has-photo{grid-template-columns:minmax(0,1fr) 340px}
  .pc-split--half.has-photo{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .pc-split .pc-advice,.pc-split .pc-perks{margin:0}
  .pc-split .pc-split__main .pc-perks{grid-template-columns:1fr 1fr;margin:14px 0 0}
  .pc-split .pc-tbl--specs{max-width:none}
}
@media (min-width:1440px){
  .pc-split.has-photo,.pc-split--intro{grid-template-columns:minmax(0,1fr) 320px}
  .pc-split--wide.has-photo{grid-template-columns:minmax(0,1fr) 380px}
  .pc-split--half.has-photo{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media (max-width:1199px){
  .pc-split .city-photo{max-width:480px;margin:8px 0 12px}
  .pc-split .pc-advice{margin:12px 0 0}
  .pc-split--intro{display:flex;flex-direction:column;gap:0}
  .pc-split--intro .pc-split__main{display:contents}
  .pc-split--intro .pc-split__main>*{order:2}
  .pc-split--intro .pc-split__main>:first-child{order:0}
  .pc-split--intro .pc-keys{order:1;margin:2px 0 18px}
}
.pc-split .pc-perks{margin:12px 0 0}
.pc-zones-grid--full{grid-template-columns:minmax(0,1fr)!important}
.pc-keys{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
@media (min-width:640px){.pc-keys{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1200px){.pc-keys{grid-template-columns:1fr}}
@media (min-width:1440px){.pc-keys{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pc-keys .is-price{grid-column:1 / -1}
.pc-keys div{display:flex;flex-direction:column-reverse;gap:2px;padding:10px 14px;background:var(--pc-light);border-radius:8px}
.pc-keys dt{font-size:14px;line-height:1.35;color:var(--pc-muted);font-weight:400;hyphens:auto;-webkit-hyphens:auto}
.pc-keys dd{margin:0;font-size:22px;line-height:1.2;font-weight:700}
.pc-keys .is-price dd{color:var(--pc-red);font-weight:600}
@media (max-width:991px){.pc-keys dt{font-size:16px}.pc-keys dd{font-size:20px}}
.pc-ico{flex:none;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:var(--pc-light);color:var(--pc-red-d)}
.pc-ico--empty{background:none}
.pc-ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pc .pc-h-ico{display:flex;align-items:center;gap:12px}
.pc-prose ul.pc-uses{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:14px;max-width:70ch}
.pc-prose ul.pc-uses li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;align-items:start;margin:0;list-style:none}
.pc-prose ul.pc-uses li::before{content:none}
.pc-uses li>span:last-child{padding-top:8px}

/* ===== Иконки старого сайта (design/icons-2026-10-21/spec.md, Sam 21.10.2026) ===== */
/* «Как проходит доставка» — иконка шага, номер — меткой на иконке */
.pc-steps--ico li{padding:16px 16px 16px 92px;min-height:100px}
.pc-steps--ico li::before{left:58px;top:58px;width:26px;height:26px;font-size:14px;box-shadow:0 0 0 3px #fff}
.pc-steps__ico{position:absolute;left:14px;top:14px;width:64px;height:64px;display:flex;align-items:center;justify-content:center}
.pc-steps__ico img{display:block;max-width:64px;max-height:56px;width:auto;height:auto}
@media (max-width:479px){.pc-steps--ico li{padding-left:80px}.pc-steps__ico{width:54px;height:54px;left:12px}.pc-steps__ico img{max-width:54px;max-height:46px}.pc-steps--ico li::before{left:46px;top:48px}}
/* правило 9 м³ — значок circle-info */
.pc-tip9{position:relative;padding-left:42px}
.pc-tip9::before{content:"";position:absolute;left:12px;top:11px;width:20px;height:20px;background:url(../img/circle-info.svg) center/contain no-repeat}
/* щит garant.svg у заголовка «Качество» */
.pc-ico img{display:block;width:auto;height:26px}

/* ===== Акция и «Какую марку выбрать» (design/promo-2026-10-23/spec.md, Sam 23.10.2026) ===== */
.pc-offer{display:grid;gap:16px;margin:28px 0 0}
.pc-offer>.pc-advice,.pc-offer>.pc-promo{margin:0}
.pc-offer>.pc-advice{max-width:none;padding:20px 24px}
.pc-offer>.pc-advice p{max-width:70ch}
.pc-btn--light{background:#fff;color:var(--pc-red-d)!important;text-shadow:none;box-shadow:0 6px 14px rgba(70,0,0,.28)}
.pc-btn--light:hover{background:var(--pc-tint);filter:none}
.pc-btn__ico{flex:none;width:22px;height:22px}
/* Плашка-форма акции как на основном сайте (Sam 23.10.2026): бейдж с горкой | телефон | кнопка; раскладка по ширине блока */
.pc-promo{container-type:inline-size;margin:28px 0 0}
.pc-promo__badge{position:relative;display:flex;align-items:center;gap:14px;min-height:64px;margin:40px 0 14px;padding:12px 20px 12px 118px;border-radius:10px;background:var(--pc-grad);color:#fff}
.pc-promo__img{position:absolute;left:-14px;bottom:-8px;width:136px;height:auto;max-width:none;pointer-events:none}
.pc-promo__pre{font-size:15px;line-height:1.2;max-width:7.5em}
.pc-promo__big{font-size:24px;line-height:1.1;font-weight:700;white-space:nowrap}
/* 360–479 px: «100 ₽ с 1 м³» (nowrap) не помещался рядом с «+ получите скидку» и давал горизонтальную прокрутку — переносим строкой ниже (26.10.2026) */
@media (max-width:479px){.pc-promo__badge{flex-wrap:wrap;row-gap:2px}.pc-promo__pre{max-width:none}}
.pc-promo__form{display:grid;gap:10px}
.pc-promo__form .pc-btn{width:100%}
.pc-promo__form .modal__error-message{position:static;display:none;color:var(--pc-red-d);font-size:14px}
.pc-promo__form .modal__error-message.show{display:block}
.pc-promo__form .pc-consent{margin:0!important}
.pc-promo :focus-visible{outline:3px solid var(--pc-red-d);outline-offset:3px}
@container (min-width:720px){
  .pc-promo__in{display:grid;grid-template-columns:minmax(360px,400px) minmax(0,1fr);gap:0 28px;align-items:start}
  .pc-promo__badge{margin:24px 0 0}
  .pc-promo__form{grid-template-columns:minmax(0,1fr) 220px;gap:6px 18px;margin-top:24px;align-items:start}
  .pc-promo__form .pc-input{grid-column:1;grid-row:1}
  .pc-promo__form .modal__error-message{grid-column:1;grid-row:2}
  .pc-promo__form .pc-btn{grid-column:2;grid-row:1}
  .pc-promo__form .pc-consent{grid-column:2;grid-row:2;font-size:13px;line-height:1.35}
}
@media (prefers-reduced-motion:reduce){.pc *{transition:none!important}}
/* Иконки старого стиля в круглой подложке, как .city-lg-ico (design/icons-2026-10-23/spec.md); после .pc-ico img{height:26px}, иначе оно перебьёт высоту */
.pc-ico--round{--pc-ico:56px;--pc-ring:5px;--pc-ico-img:30px;width:var(--pc-ico);height:var(--pc-ico);border-radius:50%;background:#fff;border:var(--pc-ring) solid #e9e5e5}
.pc-ico--round img{width:auto;height:var(--pc-ico-img);max-width:none}
.pc-ico--round.pc-ico--empty{border-color:transparent;background:none}
.pc-h-ico .pc-ico--round{--pc-ico:48px;--pc-ring:4px;--pc-ico-img:26px}
.pc-prose ul.pc-uses--round li{grid-template-columns:56px minmax(0,1fr);gap:16px}
.pc-uses--round li>span:last-child{padding-top:15px}
@media (max-width:991px){
  .pc-uses--round .pc-ico--round{--pc-ico:48px;--pc-ring:4px;--pc-ico-img:26px}
  .pc-prose ul.pc-uses--round li{grid-template-columns:48px minmax(0,1fr);gap:14px}
  .pc-uses--round li>span:last-child{padding-top:11px}
  .pc-h-ico .pc-ico--round{--pc-ico:40px;--pc-ring:3px;--pc-ico-img:22px}
  .pc .pc-h-ico{gap:10px}
}
