/* Страницы с содержимым (decisions.md F227): текст .prose, боковое меню раздела, контакты, реквизиты, анкеты, калькулятор,
   направления производства, пресс-центр. Дополняет site.css: те же токены, кнопки, карточки и формы. */

.pg{padding-bottom:72px}
.pg-g{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:start}
.pg-side{display:grid;gap:20px;position:sticky;top:96px}
.pg-nav,.pg-ask{border:1px solid var(--line);border-radius:var(--r);padding:20px}
.pg-nav-t{font-size:13px;font-weight:600;color:var(--mut);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}
.pg-nav ul{list-style:none;margin:0;padding:0}
.pg-nav a{display:flex;align-items:center;min-height:40px;font-size:15px;border-radius:6px;padding:0 10px;margin:0 -10px}
.pg-nav a:hover{background:var(--teal-bg)}
.pg-nav a[aria-current=page]{font-weight:600;color:var(--teal-d)}
.pg-ask{display:grid;gap:6px;font-size:15px;background:var(--bg);border-color:var(--bg)}
.pg-ask .tel{font-weight:600;font-size:18px}
.pg-ask .btn{margin:8px 0 4px}
.mut{color:var(--mut)}

/* текст страницы: заголовки, списки, таблицы — без стилей старой темы */
.prose{max-width:680px;font-size:17px;line-height:1.65;color:var(--ink2);overflow-wrap:anywhere}
.prose>*+*{margin-top:14px}
.prose h2{font-size:26px;line-height:1.25;color:var(--ink);margin-top:40px}
.prose h3{font-size:20px;line-height:1.3;color:var(--ink);margin-top:28px}
.prose h4{font-size:17px;color:var(--ink);margin-top:22px}
.prose>:first-child{margin-top:0}
.prose ul,.prose ol{padding-left:22px}
.prose li+li{margin-top:6px}
.prose a{color:var(--teal-d);text-decoration:underline;text-underline-offset:2px}
.prose a:hover{color:var(--ink)}
.prose strong,.prose b{color:var(--ink)}
.prose table{display:block;overflow-x:auto;max-width:100%;border-collapse:collapse;font-size:15px}
.prose th,.prose td{border:1px solid var(--line);padding:8px 12px;text-align:left;vertical-align:top}
.prose img{max-width:100%;height:auto;border-radius:12px}
.prose blockquote{border-left:4px solid var(--teal);padding:4px 0 4px 18px;margin-left:0}
.prose code{font-size:.92em;background:var(--bg);border-radius:4px;padding:1px 5px}
.prose hr{border:0;border-top:1px solid var(--line);margin:32px 0}

/* формы под текстом */
.pg-form .lead{margin:12px 0 0;color:var(--ink2)}

/* контакты и «как найти» */
.ct-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ct-card{border:1px solid var(--line);border-radius:var(--r);padding:24px;display:grid;gap:8px;align-content:start}
.ct-card.wide{grid-column:span 1;background:var(--teal-bg);border-color:var(--teal-bg)}
.ct-card h2{font-size:18px}
.ct-card .tel{font-size:22px;font-weight:600}
.ct-card .ct-addr{font-size:20px;color:var(--ink)}   /* D-001: не .big — это рамка 3:4 большого фото товара (site.css) */
.ct-card a:not(.btn):not(.link){width:fit-content}
.msgr{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.msgr .btn{min-height:44px;padding:0 16px;font-size:15px}

/* реквизиты */
.req-h{font-size:20px;margin:8px 0 12px}
.req-h+.req{margin-bottom:28px}
.req{margin:0;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.req div{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;padding:12px 18px;font-size:16px}
.req div+div{border-top:1px solid var(--line)}
.req dt{color:var(--mut)}
.req dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.req-act{display:flex;gap:16px;align-items:center;flex-wrap:wrap}

/* анкеты */
.wide-form .form-sec{font-size:18px;margin-top:10px;padding-top:18px;border-top:1px solid var(--line)}
.wide-form .form-sec:first-of-type{border-top:0;padding-top:0;margin-top:0}
.wide-form .form-msg{margin:0}

/* калькулятор */
.calc{border:1px solid var(--line);border-radius:16px;overflow:hidden}
.calc-tabs{display:flex;gap:4px;padding:6px;background:var(--bg);overflow-x:auto}
.calc-tabs button{flex:1;min-height:48px;border:0;border-radius:10px;background:none;font:inherit;font-weight:600;color:var(--ink2);padding:0 16px;cursor:pointer;white-space:nowrap}
.calc-tabs button[aria-selected=true]{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(26,26,26,.12)}
.calc-p{padding:32px}
.calc-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}
.calc-p h2{font-size:24px}
.calc-sample{margin:14px 0 18px}
.calc-tiers{width:100%;border-collapse:collapse;font-size:16px}
.calc-tiers caption{text-align:left;font-weight:600;padding-bottom:8px}
.calc-tiers th,.calc-tiers td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line)}
.calc-tiers th{font-size:13px;color:var(--mut);font-weight:600}
.calc-tiers tr.on td{background:var(--teal-bg);font-weight:600}
.calc-box{background:var(--bg);border-radius:var(--r);padding:24px;display:grid;gap:14px;align-content:start}
.calc-q{font-weight:600}
.calc-in{display:flex;align-items:center;gap:10px}
.calc-in input{width:160px;height:48px;border:1px solid var(--line2);border-radius:8px;padding:0 14px;font:inherit;font-size:20px;background:#fff}
.calc-quick{display:flex;flex-wrap:wrap;gap:8px}
.calc-quick .chip{min-height:40px;min-width:52px;border:1px solid var(--line);background:#fff;border-radius:20px;font:inherit;font-size:14px;cursor:pointer;padding:0 12px}
.calc-quick .chip:hover,.calc-quick .chip.on{border-color:var(--ink)}
.calc-opts{border:0;margin:0;padding:0;display:grid;gap:6px}
.calc-opts legend{font-weight:600;margin-bottom:6px}
.calc-opts label{display:flex;gap:10px;align-items:center;min-height:36px}
.calc-opts input{width:20px;height:20px;accent-color:var(--teal-d)}
.calc-out{margin:0;display:grid;gap:8px}
.calc-out div{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.calc-out dt{color:var(--mut)}
.calc-out dd{margin:0;font-size:20px;font-weight:600;color:var(--ink)}
.calc-out div:nth-child(2) dd{font-size:26px}
.calc-btns{display:flex;gap:10px;flex-wrap:wrap}
.calc-more{margin-top:56px}
.calc-more h2{font-size:24px;margin-bottom:16px}
.calc-cols{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:40px}
.ticks,.nums{margin:0;padding-left:22px;display:grid;gap:8px;color:var(--ink2)}
.faq-l{max-width:820px}

/* направление производства */
.dir-hero .crumbs{padding-top:0;margin-bottom:20px}
.dir-facts{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px 24px;color:var(--ink2);font-size:16px}
.dir-facts b{color:var(--ink)}
.dir-sec{padding:72px 0}
.dir-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.dir-cards li{border:1px solid var(--line);border-radius:var(--r);padding:20px;display:grid;gap:8px;align-content:start}
.dir-cards h3{font-size:18px}
.dir-cards p{color:var(--ink2);font-size:15px}
.dir-cards .tag{justify-self:start;margin-top:4px}
.dir-more{margin-top:28px}

/* пресс-центр и вакансии */
.posts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.posts>li{display:flex}
.post{flex:1;border:1px solid var(--line);border-radius:var(--r);padding:22px;display:flex;flex-direction:column;gap:10px}
.post:hover{border-color:var(--ink)}
.post-ph{margin:-22px -22px 4px;aspect-ratio:3/4;overflow:hidden;border-radius:var(--r) var(--r) 0 0}
.post-ph img{width:100%;height:100%;object-fit:cover}
.post-m{display:flex;gap:12px;align-items:center;color:var(--mut);font-size:14px;flex-wrap:wrap}
.post-t{font-size:19px;font-weight:600;line-height:1.3;color:var(--ink)}
.post-x{color:var(--ink2);font-size:15px}
.post .more{margin-top:auto;padding-top:6px;font-size:15px}
.post-page{max-width:820px}
.post-page .cat-head h1{margin-top:10px}
.post-cover{width:min(100%,420px);height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:16px;margin-bottom:28px}
.post-note{max-width:680px;margin-top:40px;padding:16px 18px;border-left:3px solid var(--line-strong);background:var(--bg2);border-radius:0 var(--r) var(--r) 0;color:var(--mut);font-size:14px;line-height:1.55}
.post-ph-empty,.post-cover-empty{display:block;position:relative;background:var(--bg2)}
.post-ph-empty::after,.post-cover-empty::after{content:"";position:absolute;inset:0;background:url(/img/ks-logo.svg) center/50% auto no-repeat;opacity:.16}
.post-more{margin-top:64px}
.post-more h2{font-size:24px;margin-bottom:20px}
.post-more>p{margin-top:20px}
.vac-cta{margin-top:28px}

@media (max-width:1100px){
  .pg-g{grid-template-columns:minmax(0,1fr) 260px;gap:32px}
  .dir-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .posts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .pg-g{grid-template-columns:minmax(0,1fr)}
  .pg-side{position:static}
  .ct-cards{grid-template-columns:minmax(0,1fr)}
  .calc-g,.calc-cols{grid-template-columns:minmax(0,1fr);gap:24px}
}
@media (max-width:700px){
  .pg{padding-bottom:48px}
  .prose{font-size:16px}
  .prose h2{font-size:22px;margin-top:32px}
  .req div{grid-template-columns:minmax(0,1fr);gap:2px}
  .calc-p{padding:20px 16px}
  .calc-box{padding:18px 16px}
  .calc-in input{width:130px}
  .calc-tabs button{flex:none}
  .dir-sec{padding:48px 0}
  .dir-cards,.posts{grid-template-columns:minmax(0,1fr)}
  .post:has(.post-ph){display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:16px;align-content:start}  /* фото 3:4 слева, текст справа */
  .post:has(.post-ph)>*{grid-column:2}
  .post-ph{grid-column:1!important;grid-row:1/span 5;margin:0;border-radius:8px;align-self:start}
}

/* S15: ссылка со страниц условий на «Работу с нами» */
.coop-link{display:inline-flex;align-items:center;gap:10px;margin-top:16px;min-height:44px;padding:10px 16px;border-radius:10px;background:var(--teal-bg);color:var(--teal-t);font-weight:600;font-size:15px;line-height:1.35;transition:background .15s,color .15s}
.coop-link svg{width:18px;height:18px;flex:none;transition:transform .2s}
.coop-link:hover{background:var(--teal);color:var(--ink)}
.coop-link:hover svg{transform:translateX(4px)}
@media (prefers-reduced-motion:reduce){.coop-link,.coop-link svg{transition:none}.coop-link:hover svg{transform:none}}
/* D-006: на сенсорном экране — зоны нажатия не меньше 44 px */
@media (pointer:coarse),(max-width:700px){
  .calc-quick .chip,.pg-nav a,.calc-opts label{min-height:44px}
  .pg-ask a,.ct-card a:not(.btn){display:inline-flex;align-items:center;min-height:44px}
}
