/* === merged: fate-INDEX inline CSS + fate product-page CSS === */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#0E0E0E;--paper:#FAFAF7;--paper2:#F2F0EA;--paper3:#EAE7DE;
  --red:#c0392b;--red-soft:#FBE9E6;--red-deep:#9c2d22;
  --muted:#6B6B6B;--rule:#D9D5C9;
  --wa:#25D366;--tg:#27A6E5;--max:#0077FF;
}
html,body{background:var(--paper);color:var(--ink);font-family:"Inter","Helvetica Neue",-apple-system,system-ui,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
body{margin:0;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
img{max-width:100%;display:block}
.wrap{max-width:1280px;margin:0 auto;padding:0 24px}

/* ===== TOP BAR ===== */
.topbar{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--rule)}
.topbar-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:10px 24px;max-width:1280px;margin:0 auto}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:15px}
.brand .logo{width:30px;height:30px;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-family:ui-monospace,monospace;font-weight:900;font-size:11px;border-radius:5px}
.brand b{font-weight:800}
.brand i{font-style:normal;color:var(--red);font-weight:800}
.brand .sub{color:var(--muted);font-weight:500}

.search-wrap{position:relative;justify-self:center;width:100%;max-width:420px}
.search{width:100%;padding:9px 36px 9px 32px;border:1px solid var(--rule);border-radius:6px;background:var(--paper2);font-size:13px;color:var(--ink);outline:none;transition:.15s}
.search:focus{border-color:var(--ink);background:#fff}
.search-wrap::before{content:"⌕";position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px}
.search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:22px;height:22px;display:none;align-items:center;justify-content:center;color:var(--muted);font-size:14px;border-radius:4px}
.search-clear:hover{background:var(--paper3);color:var(--ink)}

.contacts{display:flex;align-items:center;gap:8px}
.contacts .ic{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--paper2);transition:.15s;color:var(--ink)}
.contacts .ic:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.contacts .ic.wa:hover{background:var(--wa);color:#fff}
.contacts .ic.tg:hover{background:var(--tg);color:#fff}
.contacts .ic.max:hover{background:var(--max);color:#fff}
.contacts .ic.mail:hover{background:var(--ink);color:var(--paper)}
.contacts .ic svg{width:17px;height:17px;fill:currentColor}
.contacts .ic .max-letter{font-family:"Inter",sans-serif;font-weight:900;font-size:16px;letter-spacing:-.04em;line-height:1}
.phones{display:flex;flex-direction:column;line-height:1.15;padding-left:8px;margin-left:4px;border-left:1px solid var(--rule)}
.phones a{font-size:12.5px;font-weight:700;letter-spacing:-.01em;transition:.15s}
.phones a:hover{color:var(--red)}
.phones .free{color:var(--muted);font-size:11px;font-weight:500;margin-top:1px}
.phones .free b{color:var(--ink);font-weight:700}

/* ===== HERO ===== */
.hero{padding:64px 0 40px;border-bottom:1px solid var(--rule)}
.hero-inner{max-width:880px}
.hero-eyebrow{display:inline-block;font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--red);padding:5px 10px;border:1px solid var(--red);border-radius:99px;margin-bottom:20px;font-weight:600}
.hero-h1{font-size:clamp(2rem,4.2vw,3.2rem);font-weight:800;letter-spacing:-.03em;line-height:1.05;margin-bottom:18px;max-width:22ch}
.hero-h1 em{font-style:normal;color:var(--red)}
.hero-sub{font-size:16px;color:#3a3a3a;line-height:1.6;max-width:60ch}

/* ===== KPI STRIP ===== */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.kpi{padding:22px;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:6px}
.kpi:last-child{border-right:0}
.kpi-v{font-size:34px;font-weight:900;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.kpi-v small{font-size:14px;color:var(--muted);font-weight:600;margin-left:3px}
.kpi-l{font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.kpi.red .kpi-v{color:var(--red)}

/* ===== CHIPBAR ===== */
.chipbar{position:sticky;top:54px;z-index:40;background:var(--paper);border-bottom:1px solid var(--rule);padding:14px 0}
.chipbar-inner{max-width:1280px;margin:0 auto;padding:0 24px;display:flex;gap:6px;overflow-x:auto}
.chipbar-inner::-webkit-scrollbar{height:4px}
.chipbar-inner::-webkit-scrollbar-thumb{background:var(--rule);border-radius:2px}
.chip{display:flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid var(--rule);border-radius:6px;font-size:12px;flex:0 0 auto;white-space:nowrap;background:#fff;transition:.15s}
.chip:hover{border-color:var(--ink);background:var(--ink);color:var(--paper)}
.chip:hover .chip-cnt{color:var(--red)}
.chip-no{font-family:ui-monospace,monospace;color:var(--muted);font-size:10.5px;font-weight:700}
.chip:hover .chip-no{color:var(--paper2)}
.chip-cnt{font-family:ui-monospace,monospace;color:var(--red);font-size:11px;font-weight:700;margin-left:2px}

/* ===== MANIFEST ===== */
.manifest{padding:48px 0;border-bottom:1px solid var(--rule)}
.section-eyebrow{display:flex;align-items:center;gap:12px;font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:16px}
.section-eyebrow::before{content:"";width:24px;height:1px;background:var(--red)}
.section-h{font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:800;letter-spacing:-.025em;line-height:1.08;margin-bottom:28px;max-width:18ch}
.section-h em{font-style:normal;color:var(--red)}
.manifest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.m-card{padding:22px;border:1px solid var(--rule);border-radius:8px;background:#fff;display:flex;flex-direction:column;gap:10px;transition:.15s}
.m-card:hover{border-color:var(--ink);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.06)}
.m-card-head{display:flex;align-items:center;gap:12px}
.m-card-ic{flex:0 0 auto;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--red-soft,#fdeaea);color:var(--red)}
.m-card-ic svg{width:22px;height:22px}
.m-card-h{font-size:18px;font-weight:800;letter-spacing:-.02em;line-height:1.15}
.m-card-p{font-size:13.5px;color:#3a3a3a;line-height:1.55}

/* ===== CATALOG / CARDS ===== */
.catalog{padding:42px 0 12px}
.cat-section{margin-bottom:48px;scroll-margin-top:120px}
.cat-head{margin-bottom:18px}
.cat-meta{display:flex;gap:14px;align-items:center;margin-bottom:8px;font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.cat-no-label{color:var(--red);font-weight:700}
.cat-count-label{color:var(--muted);font-weight:600;padding-left:14px;border-left:1px solid var(--rule)}
.cat-title{font-size:clamp(1.5rem,2.8vw,2rem);font-weight:800;letter-spacing:-.02em;line-height:1.1}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:8px}
.cat-grid:not(.expanded) .card:nth-child(n+13){display:none}

.card{position:relative;padding:8px 12px 8px 8px;border:1px solid var(--rule);border-radius:8px;background:#fff;display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:11px;transition:.15s;min-height:68px}
.card:hover{border-color:var(--ink);transform:translateX(2px);box-shadow:0 4px 14px rgba(0,0,0,.06)}
.card:hover .card-arrow{color:var(--red);transform:translateX(3px)}

.card-thumb{position:relative;width:54px;height:54px;border-radius:6px;overflow:hidden;background:var(--paper2);flex:0 0 auto;display:grid;place-items:center}
.card-thumb img{width:100%;height:100%;object-fit:cover}
.card-thumb.no-img::after{content:attr(data-letter);font-family:ui-monospace,monospace;font-size:22px;font-weight:900;color:var(--red);letter-spacing:-.04em}
.card-thumb.no-img{background:linear-gradient(135deg,var(--paper2) 0%,var(--paper3) 100%);border:1px solid var(--rule)}

.card-body{display:flex;flex-direction:column;gap:1px;min-width:0}
.card-title{font-size:13.5px;line-height:1.32;color:var(--ink);font-weight:500;letter-spacing:-.005em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}
.card-arrow{font-family:ui-monospace,monospace;color:var(--rule);font-size:14px;transition:.15s;font-weight:700;align-self:center}
.card.search-hide{display:none !important}

.cat-toggle{margin-top:14px;display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid var(--ink);border-radius:6px;font-size:12.5px;font-weight:600;transition:.15s}
.cat-toggle:hover{background:var(--ink);color:var(--paper)}
.cat-toggle[aria-expanded="true"] .cat-toggle-arr{transform:rotate(180deg)}
.cat-toggle-arr{display:inline-block;transition:.2s;font-size:11px}
.empty{display:none;padding:40px 0;text-align:center;color:var(--muted)}
.empty.show{display:block}

/* ===== CTA ===== */
.cta{background:var(--ink);color:var(--paper);padding:56px 0;border-top:3px solid var(--red);border-bottom:3px solid var(--red)}
.cta-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}
.cta-h{font-size:clamp(2rem,4vw,3.4rem);font-weight:900;letter-spacing:-.035em;line-height:1;margin-bottom:18px}
.cta-h em{font-style:normal;color:var(--red)}
.cta-sub{font-size:15.5px;color:#c9c9c9;line-height:1.55;max-width:48ch}
.cta-actions{display:flex;flex-direction:column;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:space-between;padding:16px 22px;font-size:13.5px;font-weight:700;letter-spacing:.04em;border-radius:7px;transition:.15s;border:1px solid transparent}
.btn .arr{font-family:ui-monospace,monospace;margin-left:14px}
.btn-primary{background:var(--red);color:#fff}
.btn-primary:hover{background:var(--red-deep)}
.btn-ghost{background:transparent;color:var(--paper);border-color:#3a3a3a}
.btn-ghost:hover{border-color:var(--paper);background:rgba(255,255,255,.04)}

/* ===== FAQ ===== */
.faq{padding:56px 0;border-bottom:1px solid var(--rule)}
.faq-list{display:grid;gap:8px;max-width:880px}
.faq-item{border:1px solid var(--rule);border-radius:8px;background:#fff;overflow:hidden}
.faq-item[open]{border-color:var(--ink)}
.faq-q{padding:18px 22px;font-size:15.5px;font-weight:700;cursor:pointer;list-style:none;position:relative;padding-right:46px}
.faq-q::-webkit-details-marker{display:none}
.faq-q::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--red);font-weight:300}
.faq-item[open] .faq-q::after{content:"–"}
.faq-a{padding:0 22px 20px;font-size:14.5px;color:#3a3a3a;line-height:1.6}

/* ===== FOOTER ===== */
.foot{padding:42px 0 28px;background:var(--paper2);border-top:1px solid var(--rule)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;padding-bottom:28px;border-bottom:1px solid var(--rule)}
.foot-col h4{font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:12px}
.foot-col p,.foot-col a{font-size:13.5px;color:#2a2a2a;line-height:1.65;display:block}
.foot-col a:hover{color:var(--red)}
.foot-brand b{font-size:18px;font-weight:900;letter-spacing:-.02em;display:block;margin-bottom:8px}
.foot-bot{display:flex;justify-content:space-between;padding-top:18px;font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}
.foot-bot span:last-child{color:var(--red)}

@media(max-width:1024px){
  .topbar-inner{grid-template-columns:auto 1fr;gap:14px}
  .contacts{grid-column:1/-1;justify-content:space-between;border-top:1px solid var(--rule);padding-top:10px}
  .phones{padding-left:8px}
  .kpis{grid-template-columns:repeat(2,1fr)}
  .kpi:nth-child(2n){border-right:0}
  .kpi:nth-child(1),.kpi:nth-child(2){border-bottom:1px solid var(--rule)}
  .manifest-grid{grid-template-columns:repeat(2,1fr)}
  .cta-grid{grid-template-columns:1fr;gap:24px}
  .foot-grid{grid-template-columns:repeat(2,1fr);gap:24px}
}
@media(max-width:680px){
  body{font-size:14px}
  .topbar-inner{grid-template-columns:1fr;padding:10px 16px;gap:8px}
  .brand{font-size:14px}
  .search-wrap{max-width:none}
  .contacts{gap:6px}
  .contacts .ic{width:32px;height:32px}
  .phones{padding-left:6px;margin-left:2px}
  .phones a{font-size:11.5px}
  .phones .free{font-size:10px}
  .wrap{padding:0 16px}
  .hero{padding:36px 0 24px}
  .kpis{grid-template-columns:1fr}
  .kpi{border-right:0;border-bottom:1px solid var(--rule)}
  .kpi:last-child{border-bottom:0}
  .manifest-grid{grid-template-columns:1fr}
  .cat-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  .foot-bot{flex-direction:column;gap:6px}
  .chipbar{top:auto;position:static}
  .cat-section{scroll-margin-top:24px}
}

.cat-head{display:flex;align-items:baseline;gap:14px;margin:36px 0 14px;padding:0 0 8px;border-bottom:2px solid var(--rule)}
.cat-no{font-family:ui-monospace,monospace;font-weight:900;font-size:13px;color:var(--red);letter-spacing:.06em}
.cat-cnt{margin-left:auto;font-family:ui-monospace,monospace;font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.catalog-cat{scroll-margin-top:84px}
.cat-more{margin-top:16px;text-align:center}
.cat-more-btn{padding:10px 22px;background:#fff;border:1px solid var(--rule);border-radius:8px;font-weight:700;font-size:13px;cursor:pointer;transition:.15s}
.cat-more-btn:hover{border-color:var(--ink);background:var(--paper2)}
.cat-grid.expanded .card{display:flex !important}
.chipbar{padding:14px 0 6px;border-bottom:1px solid var(--rule);overflow-x:auto;-webkit-overflow-scrolling:touch}
.chipbar-inner{display:flex;flex-wrap:wrap;gap:6px;max-width:1280px;margin:0 auto;padding:0 24px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:#fff;border:1px solid var(--rule);border-radius:99px;font-size:12.5px;text-decoration:none;transition:.15s;white-space:nowrap}
.chip:hover{border-color:var(--red);background:var(--paper2)}
.chip-no{font-family:ui-monospace,monospace;font-size:10px;color:var(--muted);font-weight:700}
.chip-name{font-weight:600;color:var(--ink)}
.chip-cnt{background:var(--red-soft);color:var(--red);font-weight:700;font-size:11px;padding:1px 7px;border-radius:99px;font-family:ui-monospace,monospace}
.card-arrow{margin-left:auto;color:var(--muted);font-family:ui-monospace,monospace;font-size:14px;flex:0 0 auto}
.card:hover .card-arrow{color:var(--red)}
.search-input-wrap{margin:20px 0 8px;position:relative}
#globalSearch{width:100%;padding:14px 18px 14px 46px;border:1px solid var(--rule);border-radius:10px;background:#fff;font-size:15px;outline:none}
#globalSearch:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(192,57,43,.1)}
.search-input-wrap::before{content:"⌕";position:absolute;left:18px;top:50%;transform:translateY(-50%);font-size:18px;color:var(--muted)}
.search-stat{font-size:12px;color:var(--muted);font-family:ui-monospace,monospace;margin-top:6px}

/* === fate product-page CSS === */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#0E0E0E;--paper:#FAFAF7;--paper2:#F2F0EA;--paper3:#EAE7DE;
  --red:#c0392b;--red-soft:#FBE9E6;--red-deep:#9c2d22;
  --muted:#6B6B6B;--rule:#D9D5C9;
  --wa:#25D366;--tg:#27A6E5;--max:#0077FF;
}
html,body{background:var(--paper);color:var(--ink);font-family:"Inter","Helvetica Neue",-apple-system,system-ui,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
body{margin:0;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
img{max-width:100%;display:block}
input,textarea,select{font:inherit}
.wrap{max-width:1280px;margin:0 auto;padding:0 24px}
.topbar{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--rule)}
.topbar-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:10px 24px;max-width:1280px;margin:0 auto}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:15px}
.brand .logo{width:30px;height:30px;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-family:ui-monospace,monospace;font-weight:900;font-size:11px;border-radius:5px}
.brand b{font-weight:800}.brand i{font-style:normal;color:var(--red);font-weight:800}.brand .sub{color:var(--muted);font-weight:500}
.search-wrap{position:relative;justify-self:center;width:100%;max-width:420px}
.search{width:100%;padding:9px 36px 9px 32px;border:1px solid var(--rule);border-radius:6px;background:var(--paper2);font-size:13px;color:var(--ink);outline:none;transition:.15s}
.search:focus{border-color:var(--ink);background:#fff}
.search-wrap::before{content:"⌕";position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px}
.contacts{display:flex;align-items:center;gap:8px}
.contacts .ic{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--paper2);transition:.15s;color:var(--ink)}
.contacts .ic:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.contacts .ic.wa:hover{background:var(--wa);color:#fff}
.contacts .ic.tg:hover{background:var(--tg);color:#fff}
.contacts .ic.max:hover{background:var(--max);color:#fff}
.contacts .ic.mail:hover{background:var(--ink);color:var(--paper)}
.contacts .ic svg{width:17px;height:17px;fill:currentColor}
.contacts .ic .max-letter{font-family:"Inter",sans-serif;font-weight:900;font-size:16px;letter-spacing:-.04em;line-height:1}
.fab{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;flex-direction:column;gap:10px}
.fab-btn{width:52px;height:52px;border-radius:50%;background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.18),0 1px 3px rgba(0,0,0,.08);display:grid;place-items:center;color:var(--ink);transition:.2s;position:relative;overflow:visible}
.fab-btn:hover{transform:scale(1.08) translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.22)}
.fab-btn svg{width:24px;height:24px;fill:currentColor;transition:.2s}
.fab-btn.wa{background:#25D366;color:#fff}
.fab-btn.tg{background:#27A6E5;color:#fff}
.fab-btn.max{background:#0077FF;color:#fff}
.fab-btn.tel{background:var(--red);color:#fff}
.fab-btn .max-letter{font-family:"Inter",sans-serif;font-weight:900;font-size:22px;letter-spacing:-.05em;line-height:1}
.fab-btn .label{position:absolute;right:60px;top:50%;transform:translateY(-50%) translateX(8px);background:var(--ink);color:var(--paper);font-size:12px;font-weight:600;padding:6px 11px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:.2s;letter-spacing:.02em}
.fab-btn .label::after{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);border:5px solid transparent;border-left-color:var(--ink)}
.fab-btn:hover .label{opacity:1;transform:translateY(-50%) translateX(0)}
.fab-btn.tel::before{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--red);opacity:.45;animation:fabPulse 1.8s ease-out infinite}
@keyframes fabPulse{0%{transform:scale(1);opacity:.5}80%{transform:scale(1.55);opacity:0}100%{transform:scale(1.55);opacity:0}}
@media(max-width:680px){
  .fab{right:14px;bottom:14px;gap:8px}
  .fab-btn{width:46px;height:46px}
  .fab-btn svg{width:22px;height:22px}
  .fab-btn .label{display:none}
}
.phones{display:flex;flex-direction:column;line-height:1.15;padding-left:8px;margin-left:4px;border-left:1px solid var(--rule)}
.phones a{font-size:12.5px;font-weight:700;letter-spacing:-.01em}
.phones a:hover{color:var(--red)}
.phones .free{color:var(--muted);font-size:11px;font-weight:500;margin-top:1px}
.phones .free b{color:var(--ink);font-weight:700}
.crumbs{padding:14px 0;font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.crumbs a:hover{color:var(--red)}
.crumbs .sep{color:var(--rule)}
.crumbs .here{color:var(--ink);font-weight:600}
.phero{padding:18px 0 56px;border-bottom:1px solid var(--rule)}
.phero-grid{display:block}
.phero-text{display:flow-root}
.phero-img{float:right;width:423px;max-width:45%;margin:2px 0 14px 36px}
.phero-text .eyebrow{display:inline-block;font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--red);padding:5px 10px;border:1px solid var(--red);border-radius:99px;font-weight:600;margin-bottom:16px}
.phero-h1{font-size:clamp(1.3rem,2.6vw,2.4rem);font-weight:800;letter-spacing:-.02em;line-height:1.15;margin-bottom:14px;word-break:break-word;overflow-wrap:anywhere}
.phero-lead{font-size:16px;color:#3a3a3a;line-height:1.55;margin-bottom:20px;max-width:54ch}
.phero-img{position:relative;border-radius:10px;overflow:hidden;background:var(--paper2);box-shadow:0 2px 20px rgba(0,0,0,.04);border:1px solid var(--rule)}
.phero-img img{display:block;width:100%;height:auto}
.phero-img.no-img::after{content:attr(data-letter);position:absolute;inset:0;display:grid;place-items:center;font-family:ui-monospace,monospace;font-size:140px;font-weight:900;color:var(--red);letter-spacing:-.06em}
.specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:24px}
.spec{padding:12px 14px;border:1px solid var(--rule);border-radius:8px;background:#fff;display:flex;flex-direction:column;gap:2px}
.spec-l{font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}
.spec-v{font-size:17px;font-weight:800;letter-spacing:-.02em;color:var(--ink)}
.phero-actions{display:flex;flex-direction:column;gap:8px;max-width:380px}
.pbtn{display:inline-flex;align-items:center;justify-content:space-between;padding:14px 18px;font-size:13.5px;font-weight:700;letter-spacing:.04em;border-radius:8px;border:1px solid transparent;transition:.15s}
.pbtn .arr{font-family:ui-monospace,monospace}
.pbtn.primary{background:var(--red);color:#fff}
.pbtn.primary:hover{background:var(--red-deep)}
.pbtn.outline{background:#fff;color:var(--ink);border-color:var(--ink)}
.pbtn.outline:hover{background:var(--ink);color:var(--paper)}
.pbtn.wa{background:var(--wa);color:#fff}
.pbtn.wa:hover{filter:brightness(.95)}
.pbtn.tg{background:var(--tg);color:#fff}
.pbtn.tg:hover{filter:brightness(.95)}
.pbtn.max{background:var(--max);color:#fff}
.pbtn.max:hover{filter:brightness(.95)}
.pbtn .ico{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:9px;flex:0 0 auto}
.pbtn .ico svg{width:16px;height:16px;fill:currentColor}
.pbtn .ico .max-letter{font-family:"Inter",sans-serif;font-weight:900;font-size:15px;letter-spacing:-.05em;line-height:1}
.pbtn{display:flex;align-items:center}
.pbtn .txt{flex:1;text-align:left}
.section-eyebrow{display:flex;align-items:center;gap:12px;font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:16px}
.section-eyebrow::before{content:"";width:24px;height:1px;background:var(--red)}
.section-h{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;letter-spacing:-.025em;line-height:1.1;margin-bottom:24px;max-width:22ch}
.section-h em{font-style:normal;color:var(--red)}
.desc{padding:48px 0;border-bottom:1px solid var(--rule)}
.desc-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:48px}
.desc-grid.single{grid-template-columns:1fr}
.prose p{font-size:15.5px;line-height:1.65;margin-bottom:14px;color:#222}
.prose p strong{color:var(--ink)}
.prose h2,.prose h3,.prose h4{font-weight:800;letter-spacing:-.02em;margin:28px 0 12px;line-height:1.2}
.prose h2{font-size:1.5rem}
.prose h3{font-size:1.2rem;color:var(--ink)}
.prose h4{font-size:1.05rem}
.prose ul,.prose ol{margin:0 0 16px 22px;padding:0}
.prose ul li,.prose ol li{margin-bottom:7px;line-height:1.55;color:#222}
.prose ul ul,.prose ol ol{margin-top:6px;margin-bottom:6px}
.prose a{color:var(--red);text-decoration:underline;text-underline-offset:2px}
.prose a:hover{color:var(--red-deep)}
.prose img{border-radius:8px;margin:18px 0;border:1px solid var(--rule)}
.tbl-scroll{margin:18px 0;border:1px solid var(--rule);border-radius:8px;overflow-x:auto;background:#fff;-webkit-overflow-scrolling:touch}
.tbl-scroll table{border-collapse:collapse;width:100%;min-width:680px;font-size:13px}
.tbl-scroll th,.tbl-scroll td{padding:8px 10px;border:1px solid var(--rule);text-align:center;vertical-align:middle;color:#222}
.tbl-scroll th{background:var(--paper2);font-weight:700;font-family:ui-monospace,monospace;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink)}
.tbl-scroll tr:nth-child(even) td{background:#FBFAF6}
.specs-table{border:1px solid var(--rule);border-radius:8px;background:#fff;overflow:hidden;align-self:start}
.specs-table h3{padding:14px 18px;background:var(--paper2);font-size:13px;font-weight:800;letter-spacing:.04em;border-bottom:1px solid var(--rule);font-family:ui-monospace,monospace;text-transform:uppercase;color:var(--red)}
.specs-table dl{padding:6px 18px 14px;display:grid;grid-template-columns:1fr auto;gap:0;row-gap:2px}
.specs-table dt{padding:9px 0;font-size:13px;color:#555;border-bottom:1px dashed var(--rule)}
.specs-table dd{padding:9px 0;font-size:13.5px;text-align:right;font-weight:700;border-bottom:1px dashed var(--rule);font-variant-numeric:tabular-nums}
.specs-table dl > :nth-last-child(1),.specs-table dl > :nth-last-child(2){border-bottom:0}
.order{padding:56px 0;background:var(--paper2);border-bottom:1px solid var(--rule)}
.order-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:48px;align-items:start}
.order-info p{font-size:15px;color:#3a3a3a;line-height:1.6;margin-bottom:14px}
.order-info ul{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:18px}
.order-info ul li{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:#2a2a2a;line-height:1.55}
.order-info ul li::before{content:"›";color:var(--red);font-weight:900;font-size:18px;line-height:1.1}
.form{background:#fff;border:1px solid var(--rule);border-radius:12px;padding:28px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.form-field{display:flex;flex-direction:column;gap:5px}
.form-field.full{grid-column:1/-1}
.form-field label{font-size:11.5px;font-family:ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700}
.form-field input,.form-field textarea,.form-field select{padding:11px 13px;border:1px solid var(--rule);border-radius:6px;background:var(--paper);font-size:14px;color:var(--ink);outline:none;transition:.15s;font-family:inherit}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--ink);background:#fff}
.form-field textarea{resize:vertical;min-height:80px}
.form-submit{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.form-submit button{padding:14px;background:var(--red);color:#fff;border-radius:8px;font-size:14px;font-weight:800;letter-spacing:.04em;transition:.15s}
.form-submit button:hover{background:var(--red-deep)}
.form-consent{font-size:11.5px;color:var(--muted);line-height:1.5;margin-top:6px}
.form-consent a{color:var(--red);text-decoration:underline}
.form-consent label{display:flex;gap:8px;align-items:flex-start;cursor:pointer}
.form-consent input{margin-top:2px;flex-shrink:0}
.faq{padding:56px 0;border-bottom:1px solid var(--rule)}
.faq-list{display:grid;gap:8px;max-width:880px}
.faq-item{border:1px solid var(--rule);border-radius:8px;background:#fff;overflow:hidden}
.faq-item[open]{border-color:var(--ink)}
.faq-q{padding:18px 22px;font-size:15.5px;font-weight:700;cursor:pointer;list-style:none;position:relative;padding-right:46px}
.faq-q::-webkit-details-marker{display:none}
.faq-q::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--red);font-weight:300}
.faq-item[open] .faq-q::after{content:"–"}
.faq-a{padding:0 22px 20px;font-size:14.5px;color:#3a3a3a;line-height:1.6}
.foot{padding:42px 0 28px;background:var(--paper2);border-top:1px solid var(--rule)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;padding-bottom:28px;border-bottom:1px solid var(--rule)}
.foot-col h4{font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:12px}
.foot-col p,.foot-col a{font-size:13.5px;color:#2a2a2a;line-height:1.65;display:block}
.foot-col a:hover{color:var(--red)}
.foot-brand b{font-size:18px;font-weight:900;letter-spacing:-.02em;display:block;margin-bottom:8px}
.foot-bot{display:flex;justify-content:space-between;padding-top:18px;font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}
.foot-bot span:last-child{color:var(--red)}
@media(max-width:1024px){
  .topbar-inner{grid-template-columns:auto 1fr;gap:14px}
  .contacts{grid-column:1/-1;justify-content:space-between;border-top:1px solid var(--rule);padding-top:10px}
  .phero-grid{grid-template-columns:1fr}
  .desc-grid{grid-template-columns:1fr}
  .order-grid{grid-template-columns:1fr;gap:24px}
  .foot-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  body{font-size:14px}
  .topbar-inner{grid-template-columns:1fr;padding:10px 16px;gap:8px}
  .search-wrap{max-width:none}
  .wrap{padding:0 16px}
  .phero{padding:8px 0 36px}
  .phero-img{border-radius:8px}
  .form-row{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  .foot-bot{flex-direction:column;gap:6px}
  .tbl-scroll table{font-size:12px;min-width:560px}
}


/* === Orenburg-content within /fate/ design: re-style orenburg classes === */
.page-content { padding: 0 0 48px; }
.page-content .container { max-width: 1280px; margin: 0 auto; padding: 0 24px; }

/* Stats strip (under hero) */
.page-content .stats {
  display: grid; grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule);
  margin: 32px 0 0;
}
.page-content .stat {
  padding: 22px; border-right: 1px solid var(--rule);
  display: flex; flex-direction: column; gap: 6px;
}
.page-content .stat:last-child { border-right: 0; }
.page-content .stat strong {
  font-size: 28px; font-weight: 900; letter-spacing: -.02em; line-height: 1;
  color: var(--ink); font-variant-numeric: tabular-nums;
}
.page-content .stat span {
  font-family: ui-monospace, monospace;
  font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted);
}
@media (max-width: 700px) {
  .page-content .stats { grid-template-columns: repeat(2, 1fr); }
  .page-content .stat:nth-child(2n) { border-right: 0; }
  .page-content .stat:nth-child(3), .page-content .stat:nth-child(4) {
    border-top: 1px solid var(--rule);
  }
}

/* Section spacing inside page-content — restored 2026-05-24 to match эталон new.ten-miass.ru */
/* Section spacing — scope to CONTENT-page sections only (product/article/category prose).
   Excludes home-page sections (hero/kpis-wrap/chipbar/manifest/cat-section), phero (product hero),
   and trailing layout sections (clients/contact/order). Mirrors эталон's .orenburg-content section. */
.page-content section:not(.hero):not(.kpis-wrap):not(.chipbar):not(.manifest):not(.cat-section):not(.phero):not(.section--clients):not(.section--contact):not([id="order"]):not([aria-label="Полезные материалы"]) {
  padding: 48px 0;
  border-top: 1px solid var(--rule);
}
/* Fix: :first-of-type picks .phero (DOM-first), so adjacent selectors instead */
.page-content .stats + section,
.page-content .phero + section:not([aria-label="Полезные материалы"]):not(.section--clients):not(.section--contact):not([id="order"]) {
  border-top: 0;
}
.page-content section:not(.hero):not(.kpis-wrap):not(.chipbar):not(.manifest):not(.cat-section):not(.phero):not(.section--clients):not(.section--contact):not([id="order"]):not([aria-label="Полезные материалы"]) h2 {
  font-size: clamp(1.5rem, 2.8vw, 2rem); font-weight: 800;
  letter-spacing: -.02em; line-height: 1.1;
  margin-bottom: 24px;
}

/* Prose inside orenburg content */
.page-content .prose p {
  font-size: 16px; line-height: 1.7; color: #2a2a2a; margin-bottom: 1em;
}
.page-content .prose strong { color: var(--ink); font-weight: 700; }
.page-content .prose ul, .page-content .prose ol { padding-left: 22px; margin-bottom: 1em; }
.page-content .prose li { margin-bottom: 6px; line-height: 1.55; }
.page-content .prose a { color: var(--red-deep); text-decoration: underline; text-underline-offset: 2px; }
.page-content .prose a:hover { color: var(--red); }
.page-content .prose img {
  max-width: 320px; height: auto;
  float: right; margin: 0 0 20px 24px;
  border-radius: 8px; box-shadow: 0 8px 24px rgba(0,0,0,.08);
}
@media (max-width: 720px) {
  .page-content .prose img { float: none; max-width: 100%; margin: 0 0 16px 0; }
}

/* Cards grid (multiple sections use this) */
.page-content .cards {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px; margin-top: 4px;
}
.page-content .card {
  background: #fff; border: 1px solid var(--rule); border-radius: 10px;
  padding: 24px 22px; transition: .15s;
  position: static; min-height: auto; display: block;
}
.page-content .card:hover {
  border-color: var(--ink); transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
}
.page-content .card__body h3 {
  font-size: 18px; font-weight: 800; letter-spacing: -.01em;
  color: var(--ink); margin-bottom: 10px; line-height: 1.25;
}
.page-content .card__body p {
  font-size: 14px; line-height: 1.55; color: #3a3a3a; margin: 0;
}

/* Компактные плитки-миниатюры форм ТЭНов.
   style-v2.css задаёт .page-content .cards{repeat(3/2/1)!important} (0,2,0).
   Бьём своей .cards.cards--forms (0,3,0) + !important — выигрывает у !important меньшей спецификности. */
.page-content .cards.cards--forms {
  grid-template-columns: repeat(auto-fill, minmax(215px, 1fr)) !important;
  gap: 12px !important;
}
.page-content .cards.cards--forms .card { padding: 12px 12px 14px; }
.page-content .cards.cards--forms .card__body h3 { font-size: 14px; margin-bottom: 5px; }
.page-content .cards.cards--forms .card__body p { font-size: 12px; line-height: 1.4; color: #555; }
@media (max-width: 520px) {
  .page-content .cards.cards--forms { grid-template-columns: repeat(2, 1fr) !important; gap: 8px !important; }
  .page-content .cards.cards--forms .card { padding: 8px 8px 10px; }
  .page-content .cards.cards--forms .card__body h3 { font-size: 12.5px; margin-bottom: 3px; }
  .page-content .cards.cards--forms .card__body p { font-size: 11px; line-height: 1.35; }
}

/* specs-table (orenburg flavor) */
.page-content .specs-table {
  display: flex; flex-direction: column; gap: 1px;
  background: var(--rule); border-radius: 10px; overflow: hidden;
  margin-top: 4px;
}
.page-content .spec-row {
  display: grid; grid-template-columns: minmax(220px, 1fr) 2fr;
  gap: 18px; padding: 14px 20px; background: #fff; align-items: baseline;
}
.page-content .spec-k { font-weight: 700; color: var(--red-deep); font-size: 14px; }
.page-content .spec-v { color: var(--ink); font-size: 14px; line-height: 1.5; }
@media (max-width: 600px) {
  .page-content .spec-row { grid-template-columns: 1fr; gap: 4px; padding: 12px 16px; }
  .page-content .spec-k, .page-content .spec-v { font-size: 13px; }
}

/* marking-box */
.page-content .marking-box {
  background: var(--paper2); border: 1px solid var(--rule);
  border-radius: 10px; padding: 28px;
  text-align: center; margin-top: 4px;
}
.page-content .marking-example { margin: 16px 0; }
.page-content .marking-box code,
.page-content .marking-example code {
  display: inline-block;
  font: 800 clamp(15px, 2.2vw, 20px) "Courier New", monospace;
  padding: 12px 22px; background: #fff;
  border: 1px dashed var(--red); color: var(--red-deep);
  border-radius: 8px;
}
.page-content .marking-example span {
  display: block; margin-top: 10px; color: var(--muted); font-size: 14px;
}
.page-content .marking-note { color: var(--muted); font-size: 14px; margin-top: 14px; }

/* FAQ list (orenburg uses .faq-list .faq-item with <summary> + <p>) */
.page-content .faq-list { display: flex; flex-direction: column; gap: 10px; margin-top: 4px; }
.page-content .faq-list .faq-item {
  background: #fff; border: 1px solid var(--rule); border-radius: 10px;
  padding: 18px 22px; box-shadow: 0 1px 0 rgba(0,0,0,.02);
}
.page-content .faq-list .faq-item[open] { border-color: var(--red); }
.page-content .faq-list summary {
  cursor: pointer; font-weight: 700; color: var(--ink); font-size: 15.5px;
  list-style: none; padding: 4px 0; display: flex; align-items: center; gap: 14px;
}
.page-content .faq-list summary::after {
  content: "+"; margin-left: auto; color: var(--red);
  font-size: 22px; font-weight: 400; transition: transform .2s;
}
.page-content .faq-list .faq-item[open] summary::after { transform: rotate(45deg); }
.page-content .faq-list summary::-webkit-details-marker { display: none; }
.page-content .faq-list p {
  margin: 12px 0 4px; color: #3a3a3a; line-height: 1.65; font-size: 14.5px;
}

/* Order form (orenburg .order-form) — match /fate/ red palette */
/* .page-content section#order — padding removed */
.page-content .order-form {
  background: var(--paper2); border: 1px solid var(--rule); border-radius: 10px;
  padding: 32px; max-width: 720px; margin: 4px auto 0;
  box-shadow: 0 1px 0 rgba(0,0,0,.02);
}
.page-content .order-form .form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.page-content .order-form .form__row { margin-bottom: 14px; }
.page-content .order-form label {
  display: block; font-weight: 700; font-size: 12px; text-transform: uppercase;
  letter-spacing: .04em; color: var(--muted); margin-bottom: 8px;
}
.page-content .order-form input,
.page-content .order-form textarea {
  width: 100%; padding: 12px 14px; border: 1px solid var(--rule);
  background: #fff; border-radius: 8px; font: 15px/1.4 inherit; color: var(--ink);
  outline: none; transition: .15s;
}
.page-content .order-form input:focus,
.page-content .order-form textarea:focus {
  border-color: var(--red); box-shadow: 0 0 0 3px var(--red-soft);
}
.page-content .order-form .btn {
  display: inline-block; padding: 14px 28px;
  background: var(--red); color: #fff;
  border: 0; border-radius: 8px; cursor: pointer;
  font: 700 14px/1 inherit; text-transform: uppercase; letter-spacing: .04em;
  transition: .15s;
}
.page-content .order-form .btn:hover { background: var(--red-deep); }
.page-content .order-form label.form__check {
  display: flex !important; flex-direction: row !important; align-items: center !important;
  gap: 12px !important; text-transform: none !important; letter-spacing: 0 !important;
  font-size: 13px !important; font-weight: 500 !important; color: var(--ink) !important;
  padding: 10px 12px !important; margin: 0 !important;
  border: 1px solid transparent; border-radius: 8px;
}
.page-content .order-form label.form__check:hover { background: var(--red-soft); }
.page-content .order-form .form__check > input[type=checkbox] {
  width: 20px !important; height: 20px !important; flex: 0 0 20px !important;
  margin: 0 !important; accent-color: var(--red);
}
.page-content .order-form .form__msg { display: none; padding: 12px 16px; border-radius: 8px; font-size: 14px; font-weight: 700; margin-bottom: 14px; }
.page-content .order-form .form__msg.ok { display: block; background: #e6f5ed; color: #0f5132; }
.page-content .order-form .form__msg.err { display: block; background: var(--red-soft); color: var(--red-deep); }
.page-content .order-form .form__hint { text-align: center; color: var(--muted); font-size: 12px; margin-top: 12px; }

/* === Simplified form: горизонтальная раскладка на ПК (телефон+email | описание) === */
.page-content .order-form { max-width: 880px; }
.page-content .order-form .form__main {
  display: grid; grid-template-columns: 1fr 1.5fr; gap: 18px; align-items: stretch;
  margin-bottom: 20px;
}
.page-content .order-form .form__col { display: flex; flex-direction: column; }
.page-content .order-form .form__col--contacts { gap: 14px; }
.page-content .order-form .form__col--contacts .form__row { margin-bottom: 0; }
.page-content .order-form .form__col--note { height: 100%; }
.page-content .order-form .form__row--note { margin-bottom: 0; height: 100%; display: flex; flex-direction: column; }
.page-content .order-form .form__row--note textarea {
  flex: 1; min-height: 132px; resize: vertical; line-height: 1.5;
}
/* Ссылка на политику конфиденциальности — видимая, не «прячется» */
.page-content .order-form .form__check a {
  color: var(--red-deep); font-weight: 700; text-decoration: underline;
  text-underline-offset: 2px;
}
.page-content .order-form .form__check a:hover { color: var(--red); }
/* Кнопки «Отправить» + «Скрепка» в один ряд */
.page-content .order-form .form__actions {
  display: flex; flex-wrap: wrap; align-items: stretch; gap: 12px;
}
.page-content .order-form .form__actions .btn,
.page-content .order-form .form__actions .btn--attach {
  height: 50px; box-sizing: border-box; white-space: nowrap;
}
.page-content .order-form .form__actions .btn {
  display: inline-flex; align-items: center; justify-content: center;
}
.page-content .order-form .btn--attach {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  background: #fff; color: var(--red-deep);
  border: 1px solid var(--red); cursor: pointer;
  padding: 0 18px;
  font: 700 13px/1 inherit; text-transform: uppercase; letter-spacing: .04em;
}
.page-content .order-form .btn--attach:hover { background: var(--red-soft); }
.page-content .order-form .btn--attach .btn-clip { flex: 0 0 auto; }
.page-content .order-form .form__files { margin-top: 10px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.page-content .order-form .form__file-chip {
  display: inline-flex; align-items: center; gap: 6px;
  background: #fff; border: 1px solid var(--rule); border-radius: 8px;
  padding: 6px 10px; font-size: 13px; color: var(--ink);
}
.page-content .order-form .form__file-chip em { color: var(--muted); font-style: normal; font-size: 12px; }
.page-content .order-form .form__files-clear {
  background: none; border: 0; color: var(--red); cursor: pointer;
  font: 700 12px/1 inherit; text-decoration: underline; padding: 4px;
}
.page-content .order-form .form__files-err { color: var(--red-deep); font-size: 13px; font-weight: 600; }
@media (max-width: 720px) {
  .page-content .order-form .form__main { grid-template-columns: 1fr; gap: 12px; }
  .page-content .order-form .form__actions { flex-wrap: nowrap; }
  .page-content .order-form .form__actions .btn { flex: 1 1 auto; justify-content: center; }
  .page-content .order-form .btn--attach { flex: 0 0 auto; padding: 0 16px; }
  .page-content .order-form .btn--attach span { display: none; }
  .page-content .order-form { padding: 18px 16px; }
  .page-content section#order .container { padding: 0 14px; }
  .page-content .order-form .form__row--note textarea { min-height: 110px; }
  section#order { padding: 32px 0; }
}

/* Contact section, map, related products */
.page-content .contact {
  display: grid; grid-template-columns: 1fr 1.3fr; gap: 24px; margin-top: 8px;
}
.page-content .contact-card {
  background: #fff; border: 1px solid var(--rule); border-radius: 10px; padding: 28px;
}
.page-content .contact-card ul { list-style: none; padding: 0; margin: 0; }
.page-content .contact-card li {
  padding: 14px 0; border-bottom: 1px dashed var(--rule);
  display: flex; gap: 14px; align-items: flex-start;
}
.page-content .contact-card li:last-child { border-bottom: 0; }
.page-content .contact-card li > span:first-child {
  width: 32px; height: 32px; border-radius: 8px; background: var(--red-soft);
  color: var(--red-deep); display: flex; align-items: center; justify-content: center; font-size: 14px;
}
.page-content .contact-card li strong {
  display: block; font-size: 11px; color: var(--muted);
  text-transform: uppercase; letter-spacing: .06em; font-weight: 700;
}
.page-content .map-wrap {
  position: relative; border-radius: 10px; overflow: hidden;
  min-height: 380px; background: var(--paper2); border: 1px solid var(--rule);
}
.page-content .map-wrap iframe { width: 100%; height: 100%; min-height: 380px; border: 0; display: block; }
.page-content .map-wrap__btn {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
  padding: 14px 26px; border: 0; background: var(--red); color: #fff;
  font: 800 13px/1 inherit; text-transform: uppercase; letter-spacing: .06em;
  border-radius: 8px; cursor: pointer;
}
.page-content .map-wrap__btn:hover { background: var(--red-deep); }
@media (max-width: 800px) { .page-content .contact { grid-template-columns: 1fr; } }

/* product-cards (related products) */
.page-content .product-cards {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 14px; margin-top: 4px;
}
.page-content .product-card {
  display: flex; flex-direction: column; background: #fff;
  border: 1px solid var(--rule); border-radius: 10px;
  padding: 20px; text-decoration: none; color: var(--ink); transition: .15s;
}
.page-content .product-card:hover {
  border-color: var(--ink); transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(0,0,0,.08);
}
.page-content .product-card img {
  width: 100%; aspect-ratio: 4/3; object-fit: cover;
  border-radius: 6px; margin-bottom: 14px; background: var(--paper2);
}
.page-content .product-card h3 { margin: 0 0 6px; font-size: 17px; color: var(--ink); }
.page-content .product-card p { margin: 0 0 12px; color: var(--muted); font-size: 14px; flex: 1; }
.page-content .product-card__link {
  color: var(--red); font-weight: 800; font-size: 13px;
  text-transform: uppercase; letter-spacing: .06em;
}

/* Legacy buttons appearing in orenburg pages */
.page-content .btn--ghost {
  background: #fff !important; color: var(--ink) !important;
  border: 1px solid var(--rule) !important;
}
.page-content .btn--ghost:hover { background: var(--paper2) !important; }

/* "How to order" / "Powers" / "Forms" / "Clients" sections */
.page-content .how, .page-content .powers, .page-content .forms, .page-content .clients {
  margin-top: 4px;
}
.page-content .how { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.page-content .how-item {
  background: #fff; border: 1px solid var(--rule); border-radius: 10px; padding: 24px; position: relative;
}
.page-content .how-item__num {
  position: absolute; top: -12px; left: 22px; background: var(--red); color: #fff;
  font-weight: 900; width: 30px; height: 30px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
}
.page-content .how-item h3 { margin: 6px 0 10px; font-size: 17px; color: var(--ink); }
.page-content .how-item p { color: var(--muted); font-size: 14px; margin: 0; line-height: 1.55; }

.page-content .powers { display: flex; flex-wrap: wrap; gap: 8px; }
.page-content .powers span {
  background: #fff; border: 1px solid var(--rule); border-radius: 99px;
  padding: 9px 16px; font-weight: 700; color: var(--ink); font-size: 13px;
  transition: .15s;
}
.page-content .powers span:hover { background: var(--red); color: #fff; border-color: var(--red); }
.page-content .powers strong { color: var(--red); margin-right: 4px; }

.page-content .forms { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }
.page-content .form-card { background: #fff; border: 1px solid var(--rule); border-radius: 10px; padding: 24px; text-align: center; }
.page-content .form-card__shape {
  width: 64px; height: 64px; margin: 0 auto 12px; background: var(--paper2);
  display: flex; align-items: center; justify-content: center;
  font-weight: 900; font-size: 24px; color: var(--red-deep); border-radius: 50%;
}

.page-content .clients {
  display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 40px;
}
.page-content .clients img { height: 44px; filter: grayscale(1); opacity: .55; transition: .2s; }
.page-content .clients img:hover { filter: none; opacity: 1; }




/* === FIXES v2: search dropdown, consent highlight, MAX icon === */

/* Search dropdown */
.search-wrap { position: relative; }
.search-results {
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  left: 0; right: 0;
  background: #fff;
  border: 1px solid var(--rule);
  border-radius: 8px;
  box-shadow: 0 14px 36px -10px rgba(0,0,0,.15);
  max-height: 420px;
  overflow-y: auto;
  z-index: 100;
  padding: 6px 0;
}
.sr-item {
  display: block; padding: 10px 14px;
  text-decoration: none; color: var(--ink);
  border-bottom: 1px solid var(--rule);
  transition: background .12s;
}
.sr-item:last-child { border-bottom: 0; }
.sr-item:hover { background: var(--paper2); }
.sr-t { font-weight: 700; font-size: 14px; line-height: 1.3; color: var(--ink); margin-bottom: 3px; }
.sr-d { font-size: 12.5px; color: var(--muted); line-height: 1.4; }
.sr-empty {
  padding: 16px; text-align: center;
  color: var(--muted); font-size: 13px;
}

/* Always-visible consent highlight (works even before JS adds is-pending) */
.page-content .order-form .form__check {
  border-color: #fbbf24 !important;
  background: #fffbeb !important;
  box-shadow: 0 0 0 3px rgba(251, 191, 36, .22) !important;
}
.page-content .order-form .form__check:hover {
  border-color: #f59e0b !important;
  background: #fef3c7 !important;
}
.page-content .order-form .form__check > input[type=checkbox] {
  accent-color: #d97706 !important;
}
.page-content .order-form .form__check sup {
  color: #b45309 !important;
  font-weight: 800;
}

/* MAX icon styling (matches WA/TG/mail in .contacts) */
.contacts .ic.max:hover { background: #0077FF; color: #fff; }




/* === FIXES v3: chipbar hover, consent spacing, MAX FAB, mobile menu === */

/* Chipbar hover: replace black inversion with red highlight (better contrast) */
.chip:hover {
  border-color: var(--red) !important;
  background: var(--red-soft) !important;
  color: var(--ink) !important;
}
.chip:hover .chip-no { color: var(--red-deep) !important; }
.chip:hover .chip-cnt { color: var(--red) !important; }

/* Consent checkbox spacing — separate from submit button + from each other */
.page-content .order-form .form__submit,
.page-content .order-form button.btn {
  margin-bottom: 20px;
}
.page-content .order-form .form__consent {
  margin: 22px 0 8px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.page-content .order-form .form__check {
  margin: 0 !important;
  padding: 12px 14px !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
}

/* MAX FAB button */
.fab .fab-btn.max {
  background: #0077FF;
  color: #fff;
}
.fab .fab-btn.max .max-letter {
  font-family: "Inter", sans-serif;
  font-weight: 900;
  font-size: 22px;
  line-height: 1;
  letter-spacing: -.04em;
}

/* Bigger phone phones display in mobile */
@media (max-width: 720px) {
  .phones a { font-size: 12px !important; }
}

/* === MOBILE: keep original layout, add burger button on the RIGHT === */
.topbar-burger { display: none; }
.brand .logo { background: var(--red) !important; }

@media (max-width: 1024px) {
  .topbar-inner { grid-template-columns: auto 1fr auto !important; }
  .topbar-burger {
    display: inline-flex !important;
    align-items: center; justify-content: center;
    width: 38px; height: 38px;
    background: var(--paper2);
    border: 1px solid var(--rule);
    border-radius: 6px;
    color: var(--ink); cursor: pointer; padding: 0;
    grid-row: 1; grid-column: 3;
    align-self: center;
  }
  .topbar-burger span {
    display: block; width: 18px; height: 2px;
    background: currentColor; border-radius: 2px; position: relative;
  }
  .topbar-burger span::before,
  .topbar-burger span::after {
    content: ""; position: absolute; left: 0; width: 100%; height: 2px;
    background: currentColor; border-radius: 2px;
  }
  .topbar-burger span::before { top: -6px; }
  .topbar-burger span::after { top: 6px; }
}

@media (max-width: 680px) {
  .topbar-inner {
    grid-template-columns: 1fr auto !important;
    padding: 10px 16px !important;
    gap: 8px !important;
  }
  .brand        { grid-column: 1 / -1; grid-row: 1; }
  .search-wrap  { grid-column: 1;      grid-row: 2; max-width: none; }
  .topbar-burger{ grid-column: 2;      grid-row: 2; align-self: center; }
  .contacts     { grid-column: 1 / -1; grid-row: 3; }
}

/* Slide-in drawer (unchanged) */
.mobile-drawer {
  position: fixed; top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,.5); z-index: 200; display: none;
}
.mobile-drawer.open { display: block; }
.mobile-drawer-panel {
  position: absolute; top: 0; right: 0; bottom: 0;
  width: min(86vw, 360px); background: var(--paper);
  padding: 24px 22px; overflow-y: auto;
  box-shadow: -12px 0 32px rgba(0,0,0,.2);
  animation: slideInRight .2s ease;
}
@keyframes slideInRight { from { transform: translateX(100%); } }
.mobile-drawer h4 {
  font: 700 12px/1 ui-monospace, monospace;
  text-transform: uppercase; letter-spacing: .14em;
  color: var(--muted); margin: 18px 0 10px;
}
.mobile-drawer h4:first-of-type { margin-top: 0; padding-right: 50px; }
.mobile-drawer a {
  display: flex; align-items: center; gap: 10px;
  padding: 12px 14px;
  border-radius: 8px; color: var(--ink); font-weight: 600; font-size: 14.5px;
  transition: background .15s, color .15s;
  text-decoration: none;
}
.mobile-drawer a:hover { background: var(--red-soft); color: var(--red-deep); }
.mobile-drawer .drawer-phone {
  background: var(--red); color: #fff;
  padding: 14px 16px; border-radius: 8px; font-weight: 700;
  margin-top: 8px;
}
.mobile-drawer-close {
  position: absolute; top: 14px; right: 14px;
  width: 38px; height: 38px; border-radius: 8px;
  background: var(--paper2); border: 1px solid var(--rule);
  font-size: 22px; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  line-height: 1;
}

/* === VARIANT B: compact mobile (hide 'Оренбург', everything on row 1) === */
@media (max-width: 680px) {
  .topbar-inner {
    grid-template-columns: auto 1fr auto !important;
    padding: 8px 12px !important;
    gap: 8px !important;
  }
  .brand        { grid-column: 1; grid-row: 1; flex-shrink: 0; }
  .search-wrap  { grid-column: 2; grid-row: 1; min-width: 0; max-width: none; }
  .topbar-burger{ grid-column: 3; grid-row: 1; }
  .contacts     { grid-column: 1 / -1; grid-row: 2; }

  /* hide 'Оренбург' + the · separator to free up horizontal space */
  .brand .sub { display: none !important; }
  .brand i    { display: none !important; }
  .brand b    { font-size: 13px; }
  .brand .logo{ width: 26px; height: 26px; font-size: 10px; }

  .search { padding: 8px 10px 8px 30px !important; font-size: 13px !important; }
}

/* === v2 fixes: hide phero-img on mobile + sane breakpoints === */
@media (max-width: 880px) {
  .phero-img { display: none !important; }
  .phero-grid { grid-template-columns: 1fr !important; }
  .phero { padding: 32px 0 24px !important; }
}

/* === card--text: text-only cards without .card-thumb/.card-arrow (используется в articles-section на главной)
   Перебивает .card { grid-template-columns: 54px 1fr auto } снаружи .page-content,
   и .page-content .card { display: block } внутри — единый вид в обоих контекстах. */
.cards .card.card--text {
  display: block !important;
  grid-template-columns: 1fr;
  padding: 18px 22px;
  min-height: auto;
  position: static;
  border-radius: 10px;
}
.cards .card.card--text .card__body {
  display: block;
}
.cards .card.card--text .card__body h3 {
  font-size: 16px; font-weight: 700; line-height: 1.25;
  margin: 0 0 8px; color: var(--ink); letter-spacing: -.01em;
}
.cards .card.card--text .card__body p {
  font-size: 13.5px; line-height: 1.5; color: #3a3a3a; margin: 0;
}

/* === .cards: grid layout вне .page-content (главная страница) ===
   На внутренних страницах в .page-content уже есть свой grid; здесь — fallback. */
.cards {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px; margin-top: 4px;
}

/* === Cat-grid карточки внутри .page-content — оставляем компактный grid,
       перебивая общее .page-content .card{display:block;padding:24px 22px}.
       Главная страница теперь снова обёрнута в .page-content,
       но .cat-grid должна показывать товарные карточки компактно (54px thumb + 1fr + arrow). === */
.page-content .cat-grid .card {
  display: grid !important;
  grid-template-columns: 54px 1fr auto !important;
  align-items: center;
  gap: 11px;
  padding: 8px 12px 8px 8px !important;
  border-radius: 8px !important;
  min-height: 68px !important;
  position: relative !important;
}

/* === Spacing для четырёх «трейлинговых» секций которые рендерятся site-v2 layout-ом ===
       articles, clients, contact, order — у них нет своих классов в шаблонах,
       поэтому таргетим через атрибуты/id. На главной .hero/.kpis-wrap/.manifest/.cat-section
       имеют собственный padding (см. правила выше) — их не трогаем. */
section[aria-label="Полезные материалы"],
section.section--clients,
section.section--contact,
section#order {
  padding: 48px 0;
  border-top: 1px solid var(--rule);
}
section#order {
  padding: 56px 0;
}
/* h2 margin-bottom for trailing sections — matches .orenburg-content section h2 on эталон */
section[aria-label="Полезные материалы"] h2,
section.section--clients h2,
section.section--contact h2,
section#order h2 {
  font-size: clamp(1.5rem, 2.8vw, 2rem); font-weight: 800;
  letter-spacing: -.02em; line-height: 1.1;
  margin-bottom: 24px;
}

/* === Legacy divImg wrapper (used in older content_html) — make it float like эталон's bare <img> === */
.page-content .prose .divImg { float: right; max-width: 320px; margin: 0 0 20px 24px; }
.page-content .prose .divImg img { float: none; margin: 0; max-width: 100%; width: 100%; height: auto; }
.page-content .prose .divImg.w400 { max-width: 400px; }
@media (max-width: 720px) {
  .page-content .prose .divImg, .page-content .prose .divImg.w400 { float: none; max-width: 100%; margin: 0 0 16px 0; }
}

/* === Neutralize legacy content_html artifacts (inline styles, extra br/hr, CTA-callouts) === */
.page-content .prose p { text-indent: 0 !important; }
.page-content .prose p[align="center"] { text-align: left; }
.page-content .prose br + br { display: none; }
.page-content .prose hr { display: none; }
.page-content .prose p > i:only-child b,
.page-content .prose p > b:only-child i {
  font-style: normal; font-weight: 400;
}
/* Hide the legacy "Для получения оперативной информации звоните..." callout (centered italics+bold inside p) */
.page-content .prose p[align="center"] i b,
.page-content .prose p[align="center"] b i { font-style: normal; }

/* ===== merged from body-main.php inline <style> ===== */
    .new-catalog{margin:0 auto 40px;max-width:1200px;padding:0 16px;border-top:0}
    .new-catalog .nc-head{text-align:center;margin-bottom:24px}
    .new-catalog .nc-head h2{margin:0;font-size:28px;color:var(--ink)}
    .new-catalog .nc-head p{margin:.5em auto 0;color:var(--muted,#6b7280);max-width:640px}
    .new-catalog .nc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin-top:24px}
    .new-catalog .nc-card{display:flex;flex-direction:column;background:#fff;border-radius:14px;padding:26px;box-shadow:0 1px 3px rgba(0,0,0,.06),0 4px 12px rgba(0,0,0,.04);text-decoration:none;color:inherit;border:1px solid rgba(0,0,0,.05);transition:transform .2s,box-shadow .2s}
    .new-catalog .nc-card:hover{transform:translateY(-6px);box-shadow:0 8px 28px rgba(0,0,0,.12)}
    .new-catalog .nc-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;margin-bottom:16px;background:#f3f4f6}
    .new-catalog .nc-card h3{margin:0 0 6px;font-size:19px;color:var(--ink)}
    .new-catalog .nc-card p{display:none}
    .new-catalog .nc-link{color:var(--red);font-weight:800;font-size:14px;display:inline-flex;align-items:center;gap:6px}
    @media(max-width:720px){
      .new-catalog .nc-grid{gap:12px}
      .new-catalog .nc-card{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:14px;row-gap:4px;align-items:center;padding:12px}
      .new-catalog .nc-card:hover{transform:none}
      .new-catalog .nc-card img{grid-column:1;grid-row:1/3;width:88px;height:88px;aspect-ratio:1;margin-bottom:0;align-self:center}
      .new-catalog .nc-card h3{grid-column:2;grid-row:1;align-self:end;margin:0;font-size:16px;line-height:1.25}
      .new-catalog .nc-link{grid-column:2;grid-row:2;align-self:start}
    }
    .hero-new{border-bottom:0}
    .hero-new .wrap{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;align-items:center}
    .hero-new .kpis-2x2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .hero-new .kpi{padding:18px 16px;border-radius:12px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 1px 3px rgba(0,0,0,.05)}
    .hero-new .kpi.red .kpi-v{color:var(--red)}
    .hero-new .kpi-v{font-size:30px;font-weight:800;color:var(--ink);line-height:1}
    .hero-new .kpi-v small{font-size:14px;font-weight:600;color:var(--muted,#6b7280);margin-left:4px}
    .hero-new .kpi-l{font-size:13px;color:var(--muted,#6b7280);margin-top:6px}
    @media(max-width:860px){
      .hero-new .wrap{grid-template-columns:1fr}
      .hero-new .kpis-2x2{grid-template-columns:1fr 1fr}
    }

/* ===== merged from contact-buttons-fix.php $fab_css ===== */
.fab{left:auto!important;right:18px!important;bottom:max(92px,env(safe-area-inset-bottom))!important;transform:none!important;display:flex!important;flex-direction:column!important;gap:10px!important;align-items:center}
.fab .fab-btn{width:54px;height:54px}
.fab .fab-btn.wa{order:1}
.fab .fab-btn.tg{order:2}
.fab .fab-btn.tel{order:3}
.fab .fab-btn.max{order:4}
.fab .fab-btn .label{display:none!important}
.contacts .ic.max,.pbtn.max .ico,.fab .fab-btn.max{background:linear-gradient(135deg,#38c9ff 0%,#2f63ff 48%,#9b3cff 100%)!important;color:#fff!important}
.contacts .ic.max,.fab .fab-btn.max{border-radius:16px!important}
.contacts .ic.max .max-letter,.pbtn.max .ico .max-letter,.fab .fab-btn.max .max-letter{position:relative!important;display:inline-block!important;color:transparent!important;font-size:0!important;letter-spacing:0!important;background:transparent!important}
.contacts .ic.max .max-letter{width:22px!important;height:22px!important}
.pbtn.max .ico{width:24px!important;height:24px!important;margin-right:10px!important;border-radius:7px!important}
.pbtn.max .ico .max-letter{width:18px!important;height:18px!important}
.fab .fab-btn.max .max-letter{width:34px!important;height:34px!important}
.contacts .ic.max .max-letter::before,.pbtn.max .ico .max-letter::before,.fab .fab-btn.max .max-letter::before{content:"";position:absolute;left:10%;top:7%;width:78%;height:78%;background:#fff;border-radius:50% 50% 50% 20%}
.contacts .ic.max .max-letter::after,.pbtn.max .ico .max-letter::after,.fab .fab-btn.max .max-letter::after{content:"";position:absolute;left:39%;top:29%;width:34%;height:34%;background:linear-gradient(135deg,#2f63ff 0%,#8b38f4 100%);border-radius:50%}
.fab .fab-btn.max{box-shadow:0 8px 22px rgba(47,99,255,.28),0 1px 3px rgba(0,0,0,.08)!important}
@media(max-width:680px){.fab{left:auto!important;right:10px!important;bottom:max(78px,env(safe-area-inset-bottom))!important;transform:none!important;flex-direction:column!important;gap:8px!important}.fab .fab-btn{width:52px;height:52px}}
.phero-actions{display:none!important}
.contacts .ic{display:none!important}
/* Mobile topbar row 1: brand · search-wrap · .phones · burger */
@media(max-width:1024px){
  .topbar-inner{grid-template-columns:auto minmax(0,1fr) auto auto!important;gap:10px!important}
  .brand        {grid-column:1;grid-row:1}
  .search-wrap  {grid-column:2;grid-row:1;min-width:0;max-width:none}
  .contacts     {grid-column:3;grid-row:1;display:flex!important;padding-top:0!important;border-top:0!important;justify-content:flex-end}
  .topbar-burger{grid-column:4;grid-row:1}
}
@media(max-width:680px){
  .topbar-inner{padding:8px 12px!important;gap:8px!important}
  .phones{padding-left:6px;margin-left:0;border-left:0}
  .phones a{font-size:11px!important;line-height:1.2}
  .phones a:not(.free):not(.brand-email){display:none}
}
/* === Сетка карточек: по умолчанию 2-в-ряд (без «сирот»), точное число — классом .cards--colsN === */
.page-content .cards{grid-template-columns:repeat(2,1fr)!important;gap:16px!important}
.page-content .card{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px}
.page-content .card .card__img{display:block;width:100%;max-height:140px;object-fit:contain;background:#fafaf7;border-radius:6px;padding:8px}
@media(max-width:860px){.page-content .cards{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:520px){.page-content .cards{grid-template-columns:1fr!important}}
/* phero-img: миниатюра, текст обтекает картинку на мобильной */
@media(max-width:860px){
  .phero-grid{display:block!important}
  .phero-text{display:flow-root!important}
  .phero-img{display:block!important;float:left;width:120px;height:120px;margin:0 14px 8px 0;border-radius:8px;overflow:hidden;position:relative}
  .phero-img img{width:100%;height:100%;object-fit:cover;display:block}
  .phero-img.no-img::after{font-size:64px!important}
  .phero-h1{margin-bottom:6px}
  .phero-lead{margin-bottom:0}
}


/* === Мини-плитки с нарисованными иконками (types-блок «Шесть исполнений…» и т.п.).
   Скоуп :has(.card__img) — затрагивает только карточки С картинками, не текстовые. === */
.page-content .cards:has(.card__img){
  grid-template-columns:repeat(auto-fill,minmax(185px,1fr))!important;
  gap:12px!important;
}
.page-content .cards:has(.card__img) .card{padding:14px 14px 16px!important}
.page-content .cards:has(.card__img) .card__img{max-height:88px!important;padding:6px!important}
.page-content .cards:has(.card__img) .card__body h3{font-size:15px!important}
.page-content .cards:has(.card__img) .card__body p{font-size:12.5px!important;line-height:1.45!important}
@media(max-width:860px){
  .page-content .cards:has(.card__img){grid-template-columns:repeat(2,1fr)!important;gap:8px!important}
  .page-content .cards:has(.card__img) .card{padding:8px 8px 10px!important}
  .page-content .cards:has(.card__img) .card__img{max-height:60px!important;padding:4px!important}
  .page-content .cards:has(.card__img) .card__body h3{font-size:13px!important;margin-bottom:3px!important}
  .page-content .cards:has(.card__img) .card__body p{font-size:11px!important;line-height:1.35!important}
}
@media(max-width:520px){
  .page-content .cards:has(.card__img) .card__img{max-height:52px!important}
}

/* === Балансировка плиток без «сирот»: 4→2, 6→3 (класс .cards--colsN из движка) === */
.page-content .cards.cards--cols1{grid-template-columns:1fr!important}
.page-content .cards.cards--cols2{grid-template-columns:repeat(2,1fr)!important}
.page-content .cards.cards--cols3{grid-template-columns:repeat(3,1fr)!important}
.page-content .cards.cards--cols4{grid-template-columns:repeat(4,1fr)!important}
@media(max-width:860px){.page-content .cards.cards--cols2,.page-content .cards.cards--cols3,.page-content .cards.cards--cols4{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:520px){.page-content .cards.cards--cols1,.page-content .cards.cards--cols2,.page-content .cards.cards--cols3,.page-content .cards.cards--cols4{grid-template-columns:1fr!important}}

/* === Секция «С вами работают живые люди» (без inline-style, для раскатки на поддомены) === */
.team-section .team-lead{color:var(--muted);max-width:760px;margin:0 0 26px}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px;margin:0 0 30px}
.team-person{text-align:center}
.team-ava{width:96px;height:96px;border-radius:50%;overflow:hidden;display:block;margin:0 auto 12px;border:1px solid var(--rule)}
.team-ava img{width:100%;height:100%;object-fit:cover;object-position:center;margin:0;float:none;border:0;border-radius:0;display:block;pointer-events:none;user-select:none}
.team-name{display:block;font-size:16px;color:var(--ink)}
.team-role{color:var(--muted);font-size:13px}
@media(max-width:520px){.team-grid{grid-template-columns:repeat(2,1fr)}}

/* fix 2026-06-26: .product-card tiles inside .prose were underlined by .page-content .prose a; clients logos render at natural aspect ratio (no stretch) */
.page-content .prose a.product-card { text-decoration: none; }
.page-content .clients img { width: auto; aspect-ratio: auto; }
