/* ===== Раздел «Софт»: каталог, страница продукта, загрузки ===== */

.soft-page{--accent:#00BEF0}
.nav a.is-current{color:var(--blue-deep);border-color:var(--blue)}

/* ---------- шапка каталога ---------- */
.soft-hero{padding:64px 0 40px;background:linear-gradient(180deg,var(--blue-tint-2),#fff)}
.soft-hero h1{max-width:18ch}
.soft-hero__text{font-size:18px;color:var(--ink-2);max-width:62ch;margin:0}

.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:22px}
.prod-card{
  position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);
  border-top:4px solid var(--accent);border-radius:var(--radius);padding:28px;transition:.2s;
}
.prod-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--accent)}
.prod-card__ico{
  width:52px;height:52px;border-radius:14px;display:grid;place-items:center;margin-bottom:16px;
  background:color-mix(in srgb,var(--accent) 12%,#fff);color:var(--accent);
}
.ico{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.prod-card h3{margin-bottom:4px;font-size:21px}
.prod-card__tagline{color:var(--accent);font-weight:700;font-size:14px;margin:0 0 12px}
.prod-card__text{color:var(--ink-2);font-size:14.5px;flex:1;margin:0 0 18px}
.prod-card__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding-top:16px;border-top:1px solid var(--line)}
.prod-card__foot b{font-size:17px}
.prod-card__more{color:var(--accent);font-weight:700;font-size:14px}
.prod-card__ver{position:absolute;top:22px;right:22px;font-size:12px;color:var(--muted);
  background:#f3f7f9;border-radius:99px;padding:3px 10px;font-weight:600}

.soft-cta{
  display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;
  margin-top:34px;padding:28px 32px;border-radius:var(--radius);
  background:var(--blue-tint);border:1px solid var(--line);
}
.soft-cta h3{margin-bottom:4px}
.soft-cta p{margin:0;color:var(--ink-2);max-width:60ch;font-size:14.5px}

/* ---------- страница продукта ---------- */
.backlink{display:inline-block;color:var(--muted);font-size:14px;font-weight:600;margin-bottom:18px}
.backlink:hover{color:var(--accent)}
.prod-hero{padding:48px 0 56px;background:linear-gradient(180deg,var(--blue-tint-2),#fff)}
.prod-hero__inner{display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:start}
.prod-hero__title{display:flex;gap:18px;align-items:flex-start}
.prod-hero__ico{
  width:62px;height:62px;flex:0 0 auto;border-radius:18px;display:grid;place-items:center;
  background:var(--accent);color:#fff;box-shadow:0 14px 28px -14px var(--accent);
}
.prod-hero__ico .ico{width:32px;height:32px;stroke-width:1.7}
.prod-hero h1{margin-bottom:4px}
.prod-hero__tagline{color:var(--accent);font-weight:700;font-size:17px;margin:0}
.prod-hero__text{font-size:17.5px;color:var(--ink-2);max-width:60ch;margin:22px 0 26px}
.prod-hero__actions{display:flex;gap:14px;flex-wrap:wrap}
.prod-hero__meta{margin-top:18px;color:var(--muted);font-size:14px}
.prod-hero__side{background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:24px;box-shadow:var(--shadow)}
.prod-side__row{display:flex;justify-content:space-between;gap:14px;align-items:baseline;
  padding:11px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.prod-side__row span{color:var(--muted)}
.prod-side__row b{text-align:right}
.prod-hero__side .btn{margin-top:18px}
.prod-side__note{font-size:12.5px;color:var(--muted);margin:12px 0 0;text-align:center}

.prod-lead{font-size:18px;color:var(--ink-2);max-width:75ch;margin:0}

.req{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.spec-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}
.spec-list li{position:relative;padding-left:24px;color:var(--ink-2);font-size:15px}
.spec-list li::before{content:"";position:absolute;left:4px;top:9px;width:7px;height:7px;
  border-radius:50%;background:var(--accent)}
.req__box{background:var(--blue-tint-2);border:1px solid var(--line);border-radius:var(--radius);padding:28px}
.steps{margin:16px 0 0;padding-left:20px;display:grid;gap:12px;color:var(--ink-2);font-size:15px}
.steps b{color:var(--ink)}

/* ---------- покупка ---------- */
.buy{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;align-items:start}
.buy__card{background:#fff;border:1px solid var(--line);border-top:4px solid var(--accent);
  border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}
.buy__price{margin:12px 0 4px}
.buy__price b{font-size:32px;font-weight:800;letter-spacing:-.02em}
.buy__note{color:var(--muted);font-size:13.5px;margin:0 0 18px}
.buy__list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.buy__list li{position:relative;padding-left:28px;font-size:14.5px;color:var(--ink-2)}
.buy__list li::before{
  content:"";position:absolute;left:0;top:4px;width:18px;height:18px;border-radius:50%;
  background:var(--blue-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230098c4' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/11px no-repeat;
}
.buy__form-wrap{background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:8px 8px 24px;box-shadow:var(--shadow)}
.buy__tabs{display:flex;gap:6px;padding:8px;background:#f3f8fa;border-radius:14px;margin-bottom:18px}
.buy__tab{flex:1;padding:11px;border:0;border-radius:10px;background:none;font-weight:700;
  font-size:14.5px;color:var(--ink-2);cursor:pointer;font-family:inherit;transition:.15s}
.buy__tab.is-active{background:#fff;color:var(--accent);box-shadow:0 6px 14px -8px rgba(11,42,55,.5)}
.buy__form{border:0;box-shadow:none;padding:0 24px}
.buy__hint{font-size:13.5px;color:var(--muted);margin:0 0 18px}
.form__row small{display:block;color:var(--muted);font-size:12.5px;margin-top:5px}
.form__row--2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form__row--2 label{display:block;font-size:13.5px;font-weight:700;color:var(--ink-2);margin-bottom:6px}
.radio-row{display:flex;gap:10px;flex-wrap:wrap}
.radio{display:flex;align-items:center;gap:7px;border:1.5px solid var(--line);border-radius:10px;
  padding:9px 15px;font-size:14.5px;cursor:pointer;font-weight:600}
.radio input{accent-color:var(--accent)}
.radio:has(input:checked){border-color:var(--accent);background:var(--blue-tint)}
.agree{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--ink-2);margin:6px 0 16px}
.agree input{width:18px;height:18px;flex:0 0 auto;margin-top:1px;accent-color:var(--accent)}
.agree a{color:var(--blue-deep);text-decoration:underline}
.buy__legal{font-size:13px;color:var(--muted);margin:16px 24px 0}
.buy__legal a{color:var(--blue-deep);text-decoration:underline}

/* ---------- вопросы ---------- */
.faq{display:grid;gap:10px;max-width:900px}
.faq__item{background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 22px}
.faq__item summary{cursor:pointer;padding:18px 0;font-weight:700;font-size:16px;list-style:none;
  display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary::after{content:"+";color:var(--accent);font-size:22px;font-weight:700;line-height:1}
.faq__item[open] summary::after{content:"–"}
.faq__item p{margin:0 0 20px;color:var(--ink-2);font-size:15px;max-width:80ch}

/* ---------- загрузки ---------- */
.dl-hero{padding:44px 0 30px;background:linear-gradient(180deg,var(--blue-tint-2),#fff)}
.dl-hero__text{color:var(--ink-2);font-size:16.5px;max-width:70ch;margin:0}
.rel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;margin-bottom:16px}
.rel--current{border-color:var(--accent);box-shadow:var(--shadow)}
.rel__head{display:flex;justify-content:space-between;gap:16px;align-items:baseline;flex-wrap:wrap}
.rel__head h3{margin:0;font-size:20px}
.rel__flag{background:var(--accent);color:#fff;font-size:11.5px;font-weight:800;
  border-radius:99px;padding:3px 10px;vertical-align:middle;margin-left:8px}
.rel__date{color:var(--muted);font-size:13.5px}
.rel__files{display:grid;gap:10px;margin-top:18px}
.dl{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  background:#fbfdfe;border:1px solid var(--line);border-radius:12px;padding:14px 18px}
.dl__info b{display:block;font-size:15px}
.dl__info span{color:var(--muted);font-size:13px}
.dl__hash{display:block;margin-top:6px;font-size:11.5px;color:var(--muted);
  word-break:break-all;font-family:ui-monospace,Menlo,Consolas,monospace}
.rel__notes{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.rel__notes b{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-deep)}
.rel__notes ul{margin:10px 0 0;padding-left:20px;display:grid;gap:6px;color:var(--ink-2);font-size:14.5px}
.rel__empty{color:var(--muted);margin:14px 0 0;font-size:14.5px}
.dl-old{margin:36px 0 16px;font-size:20px;color:var(--muted)}
.dl-help{background:var(--blue-tint-2);border:1px solid var(--line);border-radius:var(--radius);
  padding:26px 28px;margin-top:24px}
.dl-help pre{background:#0d1f28;color:#d7ecf4;padding:14px 18px;border-radius:10px;overflow-x:auto;
  font-size:13.5px;margin:12px 0}
.dl-help p{margin:0 0 8px;color:var(--ink-2);font-size:14.5px}
.dl-help a{color:var(--blue-deep);text-decoration:underline}

/* ---------- документы ---------- */
.doc{max-width:860px;margin:0 auto;padding:48px 0 70px}
.doc h1{font-size:clamp(26px,3.4vw,36px);margin-bottom:8px}
.doc__date{color:var(--muted);font-size:14px;margin-bottom:32px}
.doc h2{font-size:20px;margin:34px 0 10px}
.doc p,.doc li{color:var(--ink-2);font-size:15.5px}
.doc ul,.doc ol{padding-left:22px;display:grid;gap:8px}
.doc a{color:var(--blue-deep);text-decoration:underline}
.doc__box{background:var(--blue-tint-2);border:1px solid var(--line);border-radius:14px;padding:20px 24px;margin:20px 0}

.footer__note{display:block;margin-top:6px;opacity:.75}

@media (max-width:1000px){
  .prod-hero__inner,.buy,.req{grid-template-columns:1fr;gap:28px}
  .form__row--2{grid-template-columns:1fr}
}
@media (max-width:560px){
  .buy__form{padding:0 14px}
  .buy__legal{margin:16px 14px 0}
  .dl{flex-direction:column;align-items:stretch}
  .dl .btn{width:100%}
}

/* компактнее вертикальный ритм внутри раздела «Софт» */
.soft-page .section{padding:60px 0}
.soft-page .section:has(.prod-lead){padding:44px 0 8px}
.doc .btn{text-decoration:none}
.form__row--2 select,.form__row--2 input{width:100%}
