/* ============================================================
   3DPowder — дизайн-система «паспорт материала»
   Моноширинная типографика сертификатов, акцент цвета расплава,
   тонкие линейки вместо карточек. Светлая тема, единственная.
   ============================================================ */

:root{
  --paper:#FBFBFC; --paper-2:#F2F4F7; --paper-3:#E8ECF1;
  --rule:#DCE1E8; --rule-hard:#AEB8C4;
  --ink:#14181F; --ink-2:#565F6B; --ink-3:#8A939F;
  --melt:#C2410C; --melt-deep:#9A3412; --melt-wash:#FBEFE7;
  --verify:#15803D; --verify-wash:#E8F4EC;
  --mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  --sans:'Inter','Avenir Next','Segoe UI',system-ui,-apple-system,sans-serif;
}


/* Алиасы старых токенов: страницы со своими стилями используют var(--primary)
   и др. — переводим их на новую палитру, чтобы не переписывать разметку. */
:root{
  --primary:var(--melt); --primary-dark:var(--melt-deep); --primary-light:var(--melt-wash);
  --accent:var(--melt); --accent-light:var(--melt-wash);
  --success:var(--verify); --success-light:var(--verify-wash);
  --bg:var(--paper); --bg2:var(--paper-2); --bg3:var(--paper-3); --bg4:var(--paper-3);
  --text:var(--ink); --text-muted:var(--ink-2); --text-dim:var(--ink-3);
  --border:var(--rule); --border-dark:var(--rule-hard);
  --shadow-sm:none; --shadow:none; --shadow-lg:none;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);
     font-size:15px;line-height:1.62;font-variant-numeric:tabular-nums;
     -webkit-font-smoothing:antialiased}
img{max-width:100%}
.pw{max-width:1060px;margin:0 auto;padding:0 28px}
.pw-wide,.page-hero-inner{max-width:1240px;margin:0 auto;padding:0 28px}

/* ── шапка ── */
.pnav{border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:40}
.pnav-in{max-width:1240px;margin:0 auto;padding:13px 28px;display:flex;align-items:center;
         justify-content:space-between;gap:18px}
.pnav a{color:var(--ink-2);text-decoration:none;font-size:13.5px}
.pnav a:hover{color:var(--melt)}
.pnav-logo{font-family:var(--mono);font-size:14px;font-weight:700;letter-spacing:.06em;
           color:var(--ink)!important;text-transform:uppercase;white-space:nowrap;
           padding-left:26px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' role='img' aria-label='3DPowder'%3E %3Cpolygon points='2,6.5 8.5,2 19.5,19.5' fill='%2314181F'/%3E %3Ccircle cx='19' cy='21.2' r='4.2' fill='%23C2410C'/%3E %3Crect x='1' y='24.6' width='30' height='3.2' fill='%2314181F'/%3E %3C/svg%3E") left 52% / 19px 19px no-repeat}
.pnav-menu{display:flex;gap:19px;flex-wrap:wrap}
.pnav-right{display:flex;align-items:center;gap:16px}
.pnav-tel{font-family:var(--mono);font-size:13px;color:var(--ink)!important;white-space:nowrap}
.pnav-cta{font-size:13.5px;font-weight:650;background:var(--melt);color:#fff!important;
          padding:9px 16px;text-decoration:none;white-space:nowrap}
.pnav-cta:hover{background:var(--melt-deep)}
.pnav-burger{display:none;background:none;border:0;cursor:pointer;padding:6px;
             font-family:var(--mono);font-size:13px;color:var(--ink)}

/* ── типографика ── */
.kicker{font-family:var(--mono);font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;
        color:var(--melt);margin-bottom:14px;display:flex;align-items:center;gap:9px}
.kicker::before{content:"";width:22px;height:1px;background:var(--melt)}
.h-mono{font-family:var(--mono);font-weight:700;letter-spacing:-.035em;line-height:1.02;
        margin:0;text-wrap:balance}
.crumb{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
       color:var(--ink-3);padding:18px 0 0;display:flex;gap:8px;flex-wrap:wrap}
.crumb a{color:var(--ink-3);text-decoration:none}
.crumb a:hover{color:var(--melt)}
.sec-label{font-family:var(--mono);font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;
           color:var(--ink-3);font-weight:600;margin:0 0 20px}
.lede{font-size:17px;color:var(--ink-2);max-width:60ch;margin:14px 0 0}

/* ── кнопки ── */
.b-main{display:inline-block;text-align:center;text-decoration:none;font-size:14.5px;
        font-weight:650;padding:13px 24px;background:var(--melt);color:#fff;border:0;cursor:pointer}
.b-main:hover{background:var(--melt-deep)}
.b-ghost{display:inline-block;text-align:center;text-decoration:none;font-size:14px;
         font-weight:600;padding:12px 22px;border:1px solid var(--rule-hard);color:var(--ink)}
.b-ghost:hover{border-color:var(--ink)}

/* ── каталог: строки-марки вместо карточек ── */
.cat-filters{display:flex;gap:8px;flex-wrap:wrap;padding:0 0 4px}
.cat-chip{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;
          padding:7px 14px;border:1px solid var(--rule);background:var(--paper);color:var(--ink-2);
          cursor:pointer;text-decoration:none}
.cat-chip:hover{border-color:var(--melt);color:var(--melt)}
.cat-chip.on{background:var(--ink);border-color:var(--ink);color:#fff}

.cat-group{padding:34px 0 0}
.cat-group.hidden{display:none}
.cat-head{display:flex;align-items:baseline;gap:12px;border-bottom:1px solid var(--ink);
          padding-bottom:10px;margin-bottom:0}
.cat-head h2{font-family:var(--mono);font-size:15px;font-weight:700;letter-spacing:-.01em;margin:0}
.cat-head span{font-family:var(--mono);font-size:11.5px;color:var(--ink-3);letter-spacing:.1em}

.cat-row{display:grid;grid-template-columns:54px minmax(0,1fr) 150px 132px 92px;
         gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid var(--rule);
         text-decoration:none;color:inherit}
.cat-row:hover{background:var(--paper-2)}
.cat-row.hidden{display:none}
.cat-row img{width:42px;height:auto;display:block;margin:0 auto}
.cat-mark{display:block;font-family:var(--mono);font-size:15px;font-weight:700;letter-spacing:-.015em}
.cat-sub{display:block;font-size:13px;color:var(--ink-3);margin-top:3px;line-height:1.4}
.cat-spec{font-family:var(--mono);font-size:12px;color:var(--ink-2)}
.cat-spec b{display:block;font-weight:400;color:var(--ink-3);font-size:10.5px;
            letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px}
.cat-price{font-family:var(--mono);font-size:13.5px;font-weight:700;text-align:right}
.cat-price.ask{font-weight:400;font-size:12px;color:var(--ink-3)}

/* ── поиск ── */
.cat-search{position:relative;flex:1;min-width:220px}
.cat-search input{width:100%;font-family:var(--mono);font-size:13px;padding:9px 14px;
                  border:1px solid var(--rule);background:var(--paper);color:var(--ink)}
.cat-search input:focus{outline:0;border-color:var(--melt)}
.cat-search input::placeholder{color:var(--ink-3)}

/* ── сетка «плиток» для главной ── */
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:0;
       border-top:1px solid var(--ink)}
.tile{padding:22px 22px 24px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);
      text-decoration:none;color:inherit;display:block}
.tile:hover{background:var(--paper-2)}
.tile-m{display:block;font-family:var(--mono);font-size:16px;font-weight:700;letter-spacing:-.02em}
.tile-d{display:block;font-size:13px;color:var(--ink-3);margin-top:6px;line-height:1.5}
.tile-p{display:block;font-family:var(--mono);font-size:12.5px;color:var(--melt);margin-top:12px}
/* плитка главной — div: ссылка на имени, кнопка «В корзину» внизу, клик по остальному ведёт на карточку */
.tile{cursor:pointer;display:flex;flex-direction:column}
.tile a{text-decoration:none;color:inherit}
.tile a:hover .tile-m{color:var(--melt)}
.tile-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:14px}
.tile-foot .tile-p{margin-top:0}

/* ── метрики ── */
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);
       border-bottom:1px solid var(--rule)}
.facts>div{padding:14px 18px 15px;border-right:1px solid var(--rule)}
.facts>div:last-child{border-right:0}
.facts dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;
          color:var(--ink-3);margin-bottom:7px}
.facts dd{margin:0;font-family:var(--mono);font-size:20px;font-weight:700;letter-spacing:-.03em}
.facts dd i{font-style:normal;font-family:var(--sans);font-size:12px;font-weight:400;
            color:var(--ink-3);margin-left:4px}

/* ── секции ── */
.psec{padding:36px 0;border-top:1px solid var(--rule)}
.psec:first-of-type{border-top:0}
.pw p,.pw-wide p{margin:0 0 13px;max-width:66ch;color:var(--ink-2)}
.pw h3,.pw-wide h3{font-size:15px;font-weight:650;margin:24px 0 8px;color:var(--ink)}

ul.ticks{margin:0;padding:0;list-style:none;display:grid;gap:10px}
ul.ticks li{position:relative;padding-left:26px;font-size:14.5px;color:var(--ink-2)}
ul.ticks li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;
                    border-radius:50%;background:var(--melt)}

/* ── подвал ── */
.pfoot{border-top:1px solid var(--ink);margin-top:46px;padding:30px 0 46px}
.pfoot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:30px}
.pfoot h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;
          color:var(--ink-3);font-weight:600;margin:0 0 12px}
.pfoot ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pfoot a{color:var(--ink-2);text-decoration:none;font-size:13.5px}
.pfoot a:hover{color:var(--melt)}
.pfoot-logo{font-family:var(--mono);font-size:15px;font-weight:700;letter-spacing:.06em;
            text-transform:uppercase;margin-bottom:10px}
.pfoot-legal{border-top:1px solid var(--rule);margin-top:28px;padding-top:18px;
             font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--ink-3);
             display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}

a:focus-visible,summary:focus-visible,button:focus-visible,input:focus-visible{
  outline:2px solid var(--melt);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

@media (max-width:900px){
  .pnav-menu{display:none}
  .pnav-menu.open{display:flex;position:absolute;top:100%;left:0;right:0;background:var(--paper);
                  border-bottom:1px solid var(--rule);flex-direction:column;gap:0;padding:6px 28px 14px}
  .pnav-menu.open a{padding:11px 0;border-bottom:1px solid var(--rule);font-size:15px}
  .pnav-burger{display:block}
  .pnav-tel{display:none}
  .facts{grid-template-columns:repeat(2,1fr)}
  .facts>div:nth-child(2){border-right:0}
  .facts>div:nth-child(-n+2){border-bottom:1px solid var(--rule)}
  .cat-row{grid-template-columns:38px minmax(0,1fr) 96px;gap:12px}
  .cat-row .cat-spec:nth-of-type(2){display:none}
  .pfoot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  /* в узкой шапке остаются логотип, корзина и меню; КП есть на каждой странице ниже */
  .pnav-cta{display:none}
  .pnav-right{gap:14px}
}
@media (max-width:560px){
  .pw,.pw-wide,.pnav-in,.page-hero-inner{padding-left:18px;padding-right:18px}
  .cat-row{grid-template-columns:34px minmax(0,1fr);gap:12px}
  .cat-row .cat-spec,.cat-row .cat-price{display:none}
  .pfoot-grid{grid-template-columns:1fr}
}

/* ============================================================
   Слой совместимости: переодевает разметку статических страниц
   (manufacturers / applications / contact / about) в новый стиль
   без переписывания их содержимого.
   ============================================================ */

.page-hero{padding:34px 0 26px;max-width:1240px;margin:0 auto}
.page-hero h1{font-family:var(--mono);font-size:clamp(28px,5vw,46px);font-weight:700;
              letter-spacing:-.035em;line-height:1.02;margin:0}
.page-hero p{font-size:17px;color:var(--ink-2);max-width:60ch;margin:14px 0 0}

section{padding:52px 0}
@media (max-width:700px){section{padding:36px 0}}
.container{max-width:1240px;margin:0 auto;padding:28px}
.section-header{margin:0 0 22px}
.section-header.center{text-align:left}
.section-label{font-family:var(--mono);font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;
               color:var(--melt);font-weight:600;margin-bottom:10px;display:block}
.section-title{font-family:var(--mono);font-size:22px;font-weight:700;letter-spacing:-.025em;
               margin:0 0 10px;color:var(--ink)}
.section-sub{font-size:15px;color:var(--ink-2);max-width:66ch;margin:0}

/* блоки-плитки → ячейки на линейках */
.mfr-feature,.use-case,.cert-item,.equip-item,.tech-card,.rec-item{
  background:transparent;border:0;border-top:1px solid var(--rule);border-radius:0;
  padding:18px 0;box-shadow:none}
.mfr-feature-title,.use-case-title,.cert-name,.rec-item-name{
  font-size:15.5px;font-weight:650;color:var(--ink);margin-bottom:5px;display:block}
.mfr-feature-desc,.use-case-desc,.cert-desc,.rec-item-why{
  font-size:14px;color:var(--ink-2);line-height:1.6;display:block}
.mfr-feature-icon,.cert-icon,.equip-icon{font-size:20px;margin-bottom:8px;display:block;filter:grayscale(1) opacity(.7)}
.rec-item-arrow{color:var(--melt)}

/* показатели */
.mfr-stat{border:0;border-top:1px solid var(--rule);border-radius:0;background:transparent;padding:16px 0}
.mfr-stat-num{font-family:var(--mono);font-size:24px;font-weight:700;letter-spacing:-.03em;
              color:var(--ink);display:block}
.mfr-stat-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
                color:var(--ink-3);margin-top:5px;display:block}

/* метки марок */
.mfr-tag,.tech-powder-tag,.mfr-badge{
  font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.02em;
  border:1px solid var(--rule);background:var(--paper);color:var(--ink-2);
  border-radius:0;padding:4px 10px;display:inline-block}
.mfr-tag:hover,.tech-powder-tag:hover{border-color:var(--melt);color:var(--melt)}

/* реквизиты */
.req-row{display:grid;grid-template-columns:230px 1fr;gap:16px;padding:12px 0;
         border-bottom:1px solid var(--rule);border-top:0}
.req-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
           color:var(--ink-3)}
.req-value{font-size:14px;color:var(--ink)}

/* формы */
.form-card{border:1px solid var(--ink);border-radius:0;background:#fff;padding:26px;box-shadow:none}
.form-group label,.form-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;
                              text-transform:uppercase;color:var(--ink-3);display:block;margin-bottom:6px}
.form-group input,.form-group textarea,.form-input,.form-textarea{
  width:100%;font-family:var(--sans);font-size:14.5px;padding:11px 13px;
  border:1px solid var(--rule);border-radius:0;background:var(--paper);color:var(--ink)}
.form-group input:focus,.form-group textarea:focus{outline:0;border-color:var(--melt)}
.form-group{margin-bottom:16px}

/* кнопки старой разметки */
.btn{display:inline-block;text-align:center;text-decoration:none;font-family:var(--sans);
     font-size:14.5px;font-weight:650;padding:12px 22px;border-radius:0;border:0;cursor:pointer}
.btn-primary{background:var(--melt);color:#fff}
.btn-primary:hover{background:var(--melt-deep)}
.btn-secondary,.btn-outline{background:transparent;color:var(--ink);border:1px solid var(--rule-hard)}
.btn-secondary:hover,.btn-outline:hover{border-color:var(--ink)}
.btn-lg{padding:14px 26px}

/* прочее */
.fade-up{opacity:1;transform:none}
/* Тост «Запрос отправлен» (показывает js/main.js после сабмита формы) */
.toast{position:fixed;bottom:28px;right:28px;z-index:10000;max-width:360px;
       background:var(--ink);color:#fff;font-size:14px;font-weight:500;
       padding:14px 20px;display:flex;align-items:center;gap:10px;
       transform:translateY(16px);opacity:0;transition:all .28s;pointer-events:none}
.toast.show{transform:translateY(0);opacity:1}

.breadcrumb{border:0;background:transparent}
.breadcrumb-inner{max-width:1240px;margin:0 auto;padding:16px 28px 0;
                  font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;
                  text-transform:uppercase;color:var(--ink-3)}
.breadcrumb a{color:var(--ink-3);text-decoration:none}
.breadcrumb a:hover{color:var(--melt)}
.breadcrumb-sep{color:var(--rule-hard);margin:0 6px}
.breadcrumb-current{color:var(--ink)}
.faq-q{font-size:15px;font-weight:650;color:var(--ink)}
.faq-a{font-size:14px;color:var(--ink-2)}

.mfr-name{font-family:var(--mono);font-size:22px;font-weight:700;letter-spacing:-.025em;
         margin:0 0 8px;color:var(--ink)}
.mfr-subtitle{font-family:var(--mono);font-size:11.5px;letter-spacing:.13em;
              text-transform:uppercase;color:var(--melt);margin-bottom:10px;display:block}

/* ── блог: приведение статей к языку паспорта ── */
.article-hero{background:transparent!important;color:var(--ink)!important;
              border-bottom:1px solid var(--rule);padding:30px 0 26px!important}
.article-hero-inner{max-width:1060px;margin:0 auto;padding:0 28px}
.article-hero h1{font-family:var(--mono);font-size:clamp(28px,5vw,44px)!important;font-weight:700!important;
                 letter-spacing:-.035em;line-height:1.05!important;color:var(--ink)}
.article-tag{background:transparent!important;color:var(--melt)!important;padding:0!important;
             border-radius:0!important;font-family:var(--mono);font-size:11.5px;letter-spacing:.15em}
.article-hero-meta{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;
                   color:var(--ink-3);opacity:1!important}
.article-body{max-width:1060px!important;padding:34px 28px 50px!important}
.article-body h2{font-family:var(--mono);font-size:20px!important;font-weight:700!important;
                 letter-spacing:-.025em;margin:38px 0 14px!important}
.article-body h3{font-size:16px!important;font-weight:650!important}
.article-body p,.article-body li{color:var(--ink-2)}
.article-info-box{background:var(--melt-wash)!important;border:0!important;border-left:2px solid var(--melt)!important;
                  border-radius:0!important;color:var(--ink-2)!important;padding:16px 20px!important}
.compare-table th{background:transparent!important;color:var(--ink-3)!important;
                  font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
                  border:0!important;border-bottom:1px solid var(--ink)!important;padding:10px 12px 10px 0!important}
.compare-table td{border:0!important;border-bottom:1px solid var(--rule)!important;
                  padding:12px 12px 12px 0!important;color:var(--ink-2)}
.tag-good,.tag-mid,.tag-low{border-radius:0!important;font-family:var(--mono);font-size:11px}
.article-figure .fig-frame{background:var(--paper-2)!important;border:1px solid var(--rule)!important;
                           border-radius:0!important}
.fig-title{font-size:14px!important}
.article-cta{background:transparent!important;border:1px solid var(--ink);border-radius:0!important;
             padding:28px 30px!important}
.article-cta-text{color:var(--ink)!important}
.article-cta-text strong{font-family:var(--mono);font-size:20px!important;letter-spacing:-.025em}
.article-cta-text span{color:var(--ink-2)!important;opacity:1!important}
.article-related{background:var(--paper-2)!important;border-top:1px solid var(--rule)!important}
.article-related-inner{max-width:1060px!important;margin:0 auto;padding:0 28px}
.related-article-link{border-radius:0!important;border:1px solid var(--rule)!important}
.related-article-link:hover{border-color:var(--melt)!important;color:var(--melt)!important}
.prod-link{border-radius:0!important}
.prod-link-sym{border-radius:0!important;background:var(--melt)!important}
.syn-chip{border-radius:0!important}
.blog-grid{max-width:1240px!important;padding:34px 28px!important}
.blog-card{border-radius:0!important;border:0!important;border-top:1px solid var(--rule)!important;
           padding:22px 0!important;box-shadow:none!important}

/* Слой блога выше объявлен через !important и перебивал собственные
   медиазапросы статей — узкие экраны оставались с настольными полями.
   Поэтому мобильные значения задаём здесь же. */
.article-related{padding-left:0!important;padding-right:0!important}
.article-cta-btns{flex-shrink:1!important;min-width:0}
@media (max-width:560px){
  .article-body{padding:28px 18px 40px!important}
  .article-related-inner{padding:0 18px}
  .article-cta{padding:22px 18px!important}
  .blog-grid{padding:28px 18px!important}
}
.blog-card:hover{box-shadow:none!important;transform:none!important;background:var(--paper-2)}
.blog-card-tag{background:transparent!important;color:var(--melt)!important;padding:0!important;
               font-family:var(--mono);font-size:11px;letter-spacing:.13em}
.blog-card-title{font-size:17px!important;font-weight:650!important}
.blog-card-link{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
                color:var(--melt)!important}

/* Селекторы с body повышают приоритет над собственными стилями страниц,
   которые подключены после общего файла. Без !important. */
body .mfr-feature,body .use-case,body .cert-item,body .equip-item,
body .tech-card,body .rec-item{
  background:transparent;border:0;border-top:1px solid var(--rule);
  border-radius:0;padding:16px 0;box-shadow:none}
body .mfr-feature:hover,body .use-case:hover,body .cert-item:hover,
body .rec-item:hover{box-shadow:none;border-color:var(--rule-hard)}
body .mfr-card{border:1px solid var(--rule);border-radius:0;background:var(--paper);box-shadow:none}
body .mfr-stat{background:transparent;border-radius:0}
body .mfr-cta{background:var(--paper-2);border-radius:0;border:0;border-top:1px solid var(--rule)}
body .mfr-tag,body .tech-powder-tag,body .mfr-badge{border-radius:0}
body .form-card,body .faq-item{border-radius:0}

/* ── призыв к действию ── */
.cta-band{border:1px solid var(--ink);padding:34px 36px;display:flex;justify-content:space-between;
          align-items:center;gap:28px;flex-wrap:wrap}
.cta-band b{display:block;font-family:var(--mono);font-size:22px;font-weight:700;
            letter-spacing:-.025em;margin-bottom:6px}
.cta-band span{font-size:14px;color:var(--ink-2)}
@media (max-width:560px){.cta-band{padding:24px 18px;gap:18px}}

.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:24px 0 32px}
.table-scroll>table{margin:0}

/* ── телефон: хвост номера скрыт маской, раскрывается по наведению ──
   Маска гасит сам текст, поэтому работает на любой подложке — в шапке,
   в подвале, на кнопке, в карточке. Градиент под цвет фона так не умеет. */
.phone-reveal{cursor:pointer;position:relative}
.phone-reveal .phone-num{display:inline-block;
  -webkit-mask-image:linear-gradient(to right,#000 50%,rgba(0,0,0,0) 88%);
          mask-image:linear-gradient(to right,#000 50%,rgba(0,0,0,0) 88%);
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
  transition:-webkit-mask-size .3s ease,mask-size .3s ease}
.phone-reveal:hover .phone-num,
.phone-reveal[data-revealed] .phone-num{-webkit-mask-size:320% 100%;mask-size:320% 100%}
.phone-reveal:hover{color:var(--melt)!important}

/* ── магазин: корзина в шапке, объём, кнопки «В корзину» ── */
.pnav-cart{font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;
           color:var(--ink)!important;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.pnav-cart b{font-size:11px;font-weight:700;background:var(--melt);color:#fff;
             padding:1px 7px;line-height:1.5;min-width:20px;text-align:center}
.pnav-cart b:empty{display:none}
.qty{display:inline-flex;align-items:stretch;border:1px solid var(--rule-hard);background:#fff}
.qty input{width:56px;border:0;padding:0 8px;font-family:var(--mono);font-size:14px;
           text-align:right;background:transparent;color:var(--ink);min-width:0;-moz-appearance:textfield}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.qty input:focus{outline:none}
.qty span{display:flex;align-items:center;padding:0 9px 0 4px;font-size:12px;color:var(--ink-3)}
.add-btn{font-family:inherit;font-size:12px;font-weight:650;padding:8px 12px;border:1px solid var(--ink);
         background:var(--ink);color:#fff;cursor:pointer;white-space:nowrap}
.add-btn:hover{background:var(--melt);border-color:var(--melt)}
.add-btn.done{background:var(--verify);border-color:var(--verify)}

/* каталог: строка стала div — ссылка на имени, кнопка справа */
.cat-row{grid-template-columns:54px minmax(0,1fr) 150px 132px 108px 104px;cursor:pointer}
.cat-row .cat-price{white-space:nowrap}
/* шапка с корзиной: на средних экранах ужимаем меню, чтобы не переносилось */
@media (max-width:1140px){
  .pnav-menu{gap:11px}
  .pnav-menu a{font-size:13px}
  .pnav-right{gap:9px}
  .pnav-tel{font-size:12.5px}
  .pnav-cart{font-size:12px}
  .pnav-cta{padding:8px 10px;font-size:13px}
}
@media (max-width:1060px){.pnav-cta{display:none}}
.cat-row a{text-decoration:none;color:inherit}
.cat-row a:hover .cat-mark{color:var(--melt)}
.cat-fams{display:flex;gap:6px 14px;flex-wrap:wrap;padding:14px 0 0;font-size:13px}
.cat-fams span{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.cat-fams a{color:var(--ink-2);text-decoration:none;border-bottom:1px solid var(--rule-hard)}
.cat-fams a:hover{color:var(--melt);border-color:var(--melt)}
@media (max-width:900px){
  .cat-row{grid-template-columns:38px minmax(0,1fr) 96px 96px;gap:12px}
  .cat-row .cat-spec{display:none}
}
@media (max-width:560px){
  .cat-row{grid-template-columns:34px minmax(0,1fr) 92px;gap:10px}
  .cat-row .cat-price{display:none}
  .add-btn{padding:8px 9px;font-size:11px}
}

/* ── справочные таблицы карточки и страниц семейств ── */
.ref{width:100%;border-collapse:collapse;font-size:13.5px}
.ref th{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
        color:var(--ink-3);font-weight:600;text-align:left;padding:0 14px 10px 0;border-bottom:1px solid var(--ink)}
.ref td{padding:11px 14px 11px 0;border-bottom:1px solid var(--rule);vertical-align:top;color:var(--ink-2)}
.ref td:first-child{color:var(--ink);font-weight:600}
.ref td i{display:block;font-style:normal;font-size:11px;color:var(--ink-3);margin-top:2px}
.ref td .ask{font-size:12px;color:var(--ink-3)}
.ref a{color:var(--ink);text-decoration:none;font-family:var(--mono);font-weight:700;border-bottom:1px solid var(--rule-hard)}
.ref a:hover{color:var(--melt);border-color:var(--melt)}
.ref .num{font-family:var(--mono);white-space:nowrap}
.ref .price{font-family:var(--mono);font-weight:700;color:var(--ink);white-space:nowrap}
.ref-note{font-size:12.5px;color:var(--ink-3);margin:-18px 0 0;max-width:70ch;line-height:1.55}
.steps{margin:0;padding:0;list-style:none;counter-reset:s;display:grid;gap:14px}
.steps li{position:relative;padding-left:44px;counter-increment:s}
.steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:2px;
                  font-family:var(--mono);font-size:12px;font-weight:700;color:var(--melt)}
.steps b{display:block;font-size:14.5px;margin-bottom:3px}
.steps p{margin:0;font-size:14px;color:var(--ink-2)}

/* ── страницы семейств ── */
.fam-hero{padding:30px 0 26px;border-bottom:1px solid var(--rule)}
.fam-hero h1{font-family:var(--mono);font-size:clamp(26px,4.6vw,42px);font-weight:700;
             letter-spacing:-.035em;line-height:1.05;margin:0;text-wrap:balance}
.fam-hero .lede{max-width:70ch}
.fam-cols{display:grid;grid-template-columns:minmax(0,1fr) 272px;gap:44px;align-items:start;padding:34px 0 0}
.fam-cols h2{font-family:var(--mono);font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;
             color:var(--ink-3);font-weight:600;margin:0 0 18px}
.fam-cols section{padding:30px 0;border-top:1px solid var(--rule)}
.fam-cols section:first-child{border-top:0;padding-top:0}
.fam-cols .intro p{font-size:15.5px;color:var(--ink-2);margin:0 0 14px}
.fam-side{position:sticky;top:76px;border:1px solid var(--ink);background:#fff;padding:20px 18px}
.fam-side h3{font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;
             color:var(--ink-3);margin:0 0 12px;font-weight:600}
.fam-side ul{margin:0;padding:0;list-style:none;display:grid;gap:9px;font-size:14px}
.fam-side a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule-hard)}
.fam-side a:hover{color:var(--melt);border-color:var(--melt)}
.fam-side .b-main{display:block;text-align:center;margin-top:18px}
.fam-side dl{margin:0 0 16px;display:grid;grid-template-columns:auto auto;gap:8px 12px;font-size:12.5px}
.fam-side dt{color:var(--ink-3)}
.fam-side dd{margin:0;text-align:right;font-family:var(--mono);font-weight:600;font-size:12px}
.fam-figure{margin:0 0 26px}
.fam-figure img{display:block;width:100%;height:auto;aspect-ratio:1200/669;border:1px solid var(--rule)}
.fam-figure figcaption{font-size:12px;color:var(--ink-3);margin-top:8px}
.fam-cols details{border-bottom:1px solid var(--rule);padding:15px 0}
.fam-cols details:last-of-type{border-bottom:0}
.fam-cols summary{cursor:pointer;font-weight:600;font-size:14.5px;list-style:none;
                  display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.fam-cols summary::-webkit-details-marker{display:none}
.fam-cols summary::after{content:"+";font-family:var(--mono);color:var(--melt);font-size:16px}
.fam-cols details[open] summary::after{content:"–"}
.fam-cols details p{margin:11px 0 0;font-size:14px;color:var(--ink-2)}
@media (max-width:1000px){
  .fam-cols{grid-template-columns:minmax(0,1fr);gap:0}
  .fam-side{position:static;margin-top:30px}
}

/* ── корзина ── */
.cart-wrap{padding:30px 0 60px}
.cart-wrap h1{font-family:var(--mono);font-size:clamp(26px,4.6vw,40px);font-weight:700;letter-spacing:-.035em;margin:0 0 6px}
.cart-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:48px;align-items:start;margin-top:28px}
.cart-empty{padding:40px 0;color:var(--ink-2);font-size:15px;border-top:1px solid var(--ink)}
.cart-row{display:grid;grid-template-columns:minmax(0,1fr) 120px 120px 32px;gap:14px;align-items:center;
          padding:14px 0;border-bottom:1px solid var(--rule)}
.cart-row:first-child{border-top:1px solid var(--ink)}
.cart-row .n a{font-family:var(--mono);font-weight:700;font-size:14.5px;color:var(--ink);text-decoration:none}
.cart-row .n a:hover{color:var(--melt)}
.cart-row .n small{display:block;font-size:12.5px;color:var(--ink-3);margin-top:2px}
.cart-row .s{font-family:var(--mono);font-size:13.5px;font-weight:700;text-align:right;white-space:nowrap}
.cart-row .s.ask{font-weight:400;font-size:12px;color:var(--ink-3)}
.cart-row .x{background:none;border:0;cursor:pointer;color:var(--ink-3);font-size:18px;line-height:1;padding:4px}
.cart-row .x:hover{color:var(--melt)}
.cart-total{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:18px 0;
            font-family:var(--mono);font-size:15px}
.cart-total b{font-size:22px;letter-spacing:-.03em}
.cart-note{font-size:12.5px;color:var(--ink-3);max-width:60ch;line-height:1.55}
.cart-form{border:1px solid var(--ink);background:#fff;padding:22px 20px}
.cart-form h2{font-family:var(--mono);font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;
              color:var(--ink-3);font-weight:600;margin:0 0 16px}
.cart-form label{display:block;font-size:12.5px;color:var(--ink-2);margin:0 0 12px}
.cart-form input,.cart-form textarea{display:block;width:100%;margin-top:4px;padding:10px 12px;
   border:1px solid var(--rule-hard);background:var(--paper);font-family:inherit;font-size:14px;color:var(--ink)}
.cart-form input:focus,.cart-form textarea:focus{outline:none;border-color:var(--ink)}
.cart-form .two{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.cart-form .b-main{width:100%;margin-top:6px;border:0;cursor:pointer;font-family:inherit}
.cart-form .fine{font-size:11.5px;color:var(--ink-3);margin:10px 0 0;line-height:1.5}
.cart-done{border:1px solid var(--verify);background:var(--verify-wash);padding:22px 20px;font-size:14.5px}
.cart-done b{display:block;font-family:var(--mono);font-size:18px;margin-bottom:6px}
@media (max-width:880px){
  .cart-grid{grid-template-columns:minmax(0,1fr);gap:30px}
  .cart-row{grid-template-columns:minmax(0,1fr) 96px 90px 28px;gap:10px}
}
@media (max-width:560px){
  .cart-row{grid-template-columns:minmax(0,1fr) 84px 28px}
  .cart-row .s{display:none}
  .cart-form .two{grid-template-columns:1fr}
}

/* ── блог: блок «Марки из каталога» ── */
.marks-block{max-width:1060px;margin:0 auto;padding:0 28px 8px}
.marks-block h2{font-family:var(--mono);font-size:20px;font-weight:700;letter-spacing:-.025em;margin:0 0 6px}
.marks-block>p{font-size:14px;color:var(--ink-2);margin:0 0 18px}
.marks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.marks-grid a{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--rule);
              text-decoration:none;color:inherit;background:var(--paper)}
.marks-grid a:hover{border-color:var(--ink)}
.marks-grid .m{font-family:var(--mono);font-weight:700;font-size:14px}
.marks-grid .d{font-size:12.5px;color:var(--ink-3);line-height:1.45}
.marks-grid .p{font-family:var(--mono);font-size:12.5px;font-weight:700;margin-top:4px}
.marks-grid .p.ask{font-weight:400;color:var(--ink-3)}
.marks-all{display:inline-block;margin-top:16px;font-family:var(--mono);font-size:12.5px;font-weight:600;
           color:var(--melt);text-decoration:none}
.marks-all:hover{text-decoration:underline}
@media (max-width:560px){.marks-block{padding:0 18px 8px}}

/* ── документы магазина: оплата и доставка, условия, политика ── */
.doc{padding-bottom:60px}
.doc-hero{padding:30px 0 26px;border-bottom:1px solid var(--rule)}
.doc-hero h1{font-family:var(--mono);font-size:clamp(26px,4.6vw,40px);font-weight:700;letter-spacing:-.035em;line-height:1.05;margin:0}
.doc-hero .lede{max-width:66ch}
.doc-body{padding:10px 0 0;max-width:76ch}
.doc-body h2{font-family:var(--mono);font-size:15px;font-weight:700;letter-spacing:-.01em;margin:34px 0 12px}
.doc-body p,.doc-body li{font-size:15px;color:var(--ink-2)}
.doc-body ul{padding-left:20px;margin:0 0 14px}
.doc-body li{margin-bottom:8px}
.doc-body .ref{margin:8px 0 18px}
.doc-body details{border-bottom:1px solid var(--rule);padding:14px 0}
.doc-body summary{cursor:pointer;font-weight:600;font-size:14.5px;list-style:none;display:flex;justify-content:space-between;gap:16px}
.doc-body summary::-webkit-details-marker{display:none}
.doc-body summary::after{content:"+";font-family:var(--mono);color:var(--melt)}
.doc-body details[open] summary::after{content:"–"}
.doc-body details p{margin:10px 0 0;font-size:14px}
.doc-links{display:flex;gap:8px 22px;flex-wrap:wrap;margin:44px 0 0;padding-top:20px;border-top:1px solid var(--ink)}
.doc-links a{font-family:var(--mono);font-size:12.5px;font-weight:600;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule-hard)}
.doc-links a:hover{color:var(--melt);border-color:var(--melt)}
.doc-contact{font-size:14px;color:var(--ink-2);margin:18px 0 0}
