/* Дополнения WordPress-версии: оформление заказа в корзине, всплывающие сообщения */
.cart-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cart-fields .field{display:grid;gap:4px}
.cart-fields .field:last-child:nth-child(odd){grid-column:1 / -1}
.cart-textarea{height:auto;min-height:92px;padding:12px 16px;resize:vertical;font:inherit}
.cart-addr{margin-top:6px}
.cart-addr[hidden]{display:none}
.cart-error{color:var(--err);font-size:.85rem;font-weight:600}
.cart-error[hidden]{display:none}
.cart-row-tier{display:block;font-style:normal;font-size:.72rem;color:var(--blue-solid);margin-top:3px;line-height:1.35}
.cart-side-note.is-warn{color:var(--err);font-weight:600}
.cart-side .btn[disabled]{opacity:.45;cursor:not-allowed}
.cart-block .consent{margin-top:4px}
.cart-block .consent.bad{color:var(--err)}
#cartDone .tick{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--blue-tint);color:var(--blue-solid);margin:0 auto 6px}
.pl-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,16px);z-index:400;max-width:calc(100vw - 32px);
  padding:12px 20px;border-radius:12px;background:#10233f;color:#fff;font-size:.9rem;font-weight:500;opacity:0;
  transition:opacity .25s,transform .25s;box-shadow:0 10px 30px rgba(16,35,63,.25)}
.pl-toast.on{opacity:1;transform:translate(-50%,0)}
.pd-price b.is-ask{font-size:1.6rem}
.add.is-busy{opacity:.7;pointer-events:none}
@media (max-width:640px){.cart-fields{grid-template-columns:1fr}}

/* скрытая форма WPForms: через неё уходят все заявки сайта */
.pl-wpf{position:absolute;left:-9999px;top:0;width:320px;height:1px;overflow:hidden}

/* форма WPForms, выбранная для кнопки, внутри окна заявки */
.modal-wpf[hidden]{display:none}
.modal-wpf .wpforms-container{margin:0}
.modal-wpf .wpforms-field{padding:0 0 12px}
.modal-wpf .wpforms-field-label{display:block;font-size:.78rem;font-weight:600;color:var(--ink-2);margin-bottom:6px}
.modal-wpf input[type=text],.modal-wpf input[type=email],.modal-wpf input[type=tel],.modal-wpf input[type=number],.modal-wpf textarea,.modal-wpf select{
  width:100%;max-width:100%;height:48px;padding:0 16px;border-radius:12px;border:1px solid var(--line-2);background:var(--surface);font:inherit;color:var(--ink)}
.modal-wpf textarea{height:auto;min-height:92px;padding:12px 16px}
.modal-wpf input:focus,.modal-wpf textarea:focus{outline:none;border-color:var(--blue);background:var(--paper)}
.modal-wpf .wpforms-submit{display:inline-flex;align-items:center;justify-content:center;width:100%;height:52px;border:0;border-radius:999px;
  background:var(--accent,#F55A0B);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.modal-wpf .wpforms-error{color:var(--err);font-size:.78rem}
.modal-wpf .wpforms-confirmation-container-full{padding:8px 0;font-weight:600}

/* внутренние страницы: ровные отступы шапка → крошки → первый экран */
@media (min-width:761px){
  .sect.sect-plain#top{padding-top:22px}
  .sect#top .crumbs{margin-bottom:22px}
}
@media (max-width:760px){
  .sect#top .crumbs{margin-bottom:14px}
}

/* корзина: «пусто» и «заказ принят» на всю ширину, по центру */
#cartEmpty,#cartDone{grid-column:1 / -1}
#cartDone{display:grid;justify-items:center;text-align:center;gap:12px;padding:64px 24px}
#cartDone[hidden],#cartEmpty[hidden]{display:none}
#cartDone p{max-width:520px}

/* быстрый просмотр: шире, ступени цены в ряд, чтобы окно помещалось и не казалось тесным */
.quick-card{max-height:calc(100vh - 32px);width:min(1040px,100%)}
@media(min-width:760px){
  .quick-card{grid-template-columns:.8fr 1.2fr}
  .quick-body{padding:28px 32px 26px;gap:10px}
  .quick-body h3{font-size:1.6rem;line-height:1.2}
  .quick-specs{margin:4px 0 6px;font-size:1rem}
  .quick-specs td{padding:7px 0}
  .quick-tiers{grid-template-columns:repeat(3,1fr);gap:8px}
  .quick-tiers div{flex-direction:column;align-items:flex-start;gap:3px;padding:10px 14px;border-radius:12px}
  .quick-tiers span:first-child{font-size:.86rem;opacity:.9}
  .quick-tiers span:last-child{font-size:1.25rem}
  .quick-cta{margin-top:8px}
  .quick-cta .btn{font-size:1rem}
  .quick-pic{padding:24px}
  .quick-pic img{height:clamp(240px,44vh,400px)}
}
@media(min-width:760px) and (max-height:700px){
  .quick-body{padding:20px 28px 20px;gap:7px}
  .quick-specs td{padding:5px 0}
  .quick-body h3{font-size:1.4rem}
}


/* заголовок страницы теперь h1, выглядит как раньше h2 */
.sect-head h1{font-size:clamp(1.7rem,3.3vw,2.55rem);line-height:1.1;font-weight:600}

/* блок «Нужны такие позиции?» под статьёй */
.post-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;margin-top:36px;padding:24px 28px;background:var(--paper);border-radius:var(--r-card);border:1px solid var(--line)}
.post-cta-text{display:grid;gap:4px;max-width:52ch}
.post-cta-text b{font-size:1.15rem}
.post-cta-text p{color:var(--ink-2);font-size:.95rem}
.post-cta-btns{display:flex;flex-wrap:wrap;gap:10px}

/* ссылки на площадки в строке рейтинга и текстовый логотип Авито */
.hr-text a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.hr-text a:hover{color:var(--accent)}
.rate-logo--txt{display:inline-flex;align-items:center;height:24px;font-weight:700;font-size:1.15rem;letter-spacing:-.02em}

/* длинные статьи: обычный поток вместо сетки, таблицы, блок «Коротко», оглавление */
.legal.article{display:block;max-width:780px}
.article h2{font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1.2;margin:40px 0 14px}
.article h3{font-size:1.1rem;margin:24px 0 8px;line-height:1.3}
.article p{font-size:1rem;color:var(--ink-2);line-height:1.75;margin:0 0 14px}
.article ul,.article ol{margin:0 0 18px;padding-left:22px;display:grid;gap:7px}
.article li{font-size:1rem;color:var(--ink-2);line-height:1.65}
.article a{color:var(--blue-solid);text-decoration:underline;text-underline-offset:3px}
.article b{color:var(--ink)}
.article .answer{background:var(--blue-tint);border-radius:14px;padding:18px 22px;margin:0 0 20px;color:var(--ink);line-height:1.7;font-size:1.02rem}
.article .answer b{color:var(--blue-solid)}
.art-toc{margin:0 0 8px;padding:16px 22px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
.art-toc b{display:block;margin-bottom:8px;font-size:.95rem}
.art-toc ol{margin:0;padding-left:20px;display:grid;gap:4px}
.art-toc a{color:var(--ink-2);text-decoration:none}
.art-toc a:hover{color:var(--accent)}

/* ---------- детальная страница статьи: колонка текста + боковая плашка ---------- */
.post-layout{display:grid;gap:36px;margin-top:8px}
@media(min-width:1060px){.post-layout{grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}}
.post-main{min-width:0}
.post-aside{display:grid;gap:16px;min-width:0}
@media(min-width:1060px){.post-aside{position:sticky;top:96px}}

.post-head{display:grid;gap:14px;justify-items:start}
.post-head h1{font-size:clamp(1.75rem,3.2vw,2.6rem);line-height:1.12;font-weight:600;letter-spacing:-.02em;text-wrap:balance;max-width:24ch}
.post-lede{font-size:1.1rem;line-height:1.6;color:var(--ink-2);max-width:62ch;margin:0}
.post-byline{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;width:100%;margin-top:6px;padding-top:16px;border-top:1px solid var(--line)}
.byline-av{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;overflow:hidden;
  background:var(--blue-tint);color:var(--blue-solid);font-weight:700;font-size:.9rem;letter-spacing:.02em}
.byline-av img{width:100%;height:100%;object-fit:cover;display:block}
.byline-av--lg{width:64px;height:64px;font-size:1.1rem}
.byline-txt{display:grid;gap:1px;min-width:0}
.byline-txt b{font-size:.95rem;line-height:1.3}
.byline-txt span{font-size:.8rem;color:var(--muted);line-height:1.35}
.byline-meta{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0;padding:0;list-style:none}
@media(min-width:720px){.byline-meta{margin-left:auto}}
.byline-meta li{display:grid;gap:1px;font-size:.88rem;color:var(--ink)}
.byline-meta .lbl{color:var(--muted);font-size:.68rem}

.post-cover{margin:22px 0 26px;border-radius:var(--r-card);overflow:hidden;background:var(--surface);height:clamp(190px,26vw,300px)}
.post-cover img{width:100%;height:100%;object-fit:cover;display:block}

/* текст статьи в колонке */
.post-main .legal.article{max-width:none;gap:0}
.article>:first-child{margin-top:0}
.article .answer{border-left:4px solid var(--blue-solid);border-radius:4px 14px 14px 4px;padding:18px 22px 18px 20px;font-size:1.04rem}
.article h2{padding-top:6px;scroll-margin-top:100px}
.article h3{scroll-margin-top:100px}
.article ul li::marker,.article ol li::marker{color:var(--blue-solid)}
.art-toc{margin:0 0 24px;background:var(--surface);border-color:var(--line)}
.art-toc ol{counter-reset:toc;list-style:none;padding-left:0}
.art-toc li{counter-increment:toc;display:flex;gap:10px;font-size:.95rem;line-height:1.45}
.art-toc li::before{content:counter(toc,decimal-leading-zero);color:var(--blue-solid);font-weight:600;font-size:.78rem;padding-top:.2em;flex:none}

/* блок «Об авторе» */
.author-box{display:flex;gap:18px;align-items:flex-start;margin-top:40px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper)}
.author-box-txt{display:grid;gap:4px;min-width:0}
.author-box-txt b{font-size:1.05rem}
.author-box-txt p{margin:4px 0 0;font-size:.9rem;line-height:1.6;color:var(--ink-2);max-width:60ch}
.author-box-txt .lbl{color:var(--muted)}
.author-role{font-size:.85rem;color:var(--muted)}
.author-rev{padding-top:8px;border-top:1px dashed var(--line);margin-top:8px!important}
@media(max-width:520px){.author-box{flex-direction:column;gap:12px}}

/* боковая плашка */
.side-card{display:grid;gap:12px;padding:22px;border-radius:var(--r-card);background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-m)}
.side-form h2{font-size:1.3rem;line-height:1.2;letter-spacing:-.015em;text-wrap:balance}
.side-form>p{font-size:.9rem;color:var(--ink-2);line-height:1.55;margin:0}
.side-form-f{display:grid;gap:12px;margin-top:4px}
.side-form-f .field{display:grid;gap:5px}
.side-form-f .btn-wide{width:100%;justify-content:center}
.side-contact{background:var(--surface);box-shadow:none;gap:8px;justify-items:start}
.side-contact .lbl{color:var(--muted)}
.side-tel{font-size:1.35rem;font-weight:600;letter-spacing:-.01em;color:var(--ink);text-decoration:none}
.side-tel:hover{color:var(--accent)}
.side-hours{font-size:.85rem;color:var(--ink-2)}
.side-contact .tb-mess{margin-top:4px}
.side-link{margin-top:8px;padding-top:12px;border-top:1px solid var(--line);width:100%;font-size:.9rem;font-weight:600;color:var(--blue-solid);text-decoration:none}
.side-link:hover{color:var(--accent)}

.post-cta{margin-top:28px}

/* шапка блока «заголовок + пояснение справа»: две колонки, а не перенос абзаца на новую строку.
   Раньше длинный заголовок занимал всю строку, и абзац уезжал вправо вниз с пустотой слева. */
.sect-head:has(> :is(h1,h2) + p):not(:has(> a)){display:block}
.sect-head:has(> :is(h1,h2) + p):not(:has(> a)) > .eyebrow{margin-bottom:14px}
.sect-head:has(> :is(h1,h2) + p):not(:has(> a)) > p{margin:14px 0 0;max-width:62ch}
@media(min-width:900px){
  .sect-head:has(> :is(h1,h2) + p):not(:has(> a)){display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);column-gap:48px;row-gap:0;align-items:end}
  .sect-head:has(> :is(h1,h2) + p):not(:has(> a)) > .eyebrow{grid-column:1/-1}
  .sect-head:has(> :is(h1,h2) + p):not(:has(> a)) > :is(h1,h2){grid-column:1;text-wrap:balance}
  .sect-head:has(> :is(h1,h2) + p):not(:has(> a)) > p{grid-column:2;margin:0;max-width:52ch;padding-bottom:.35em}
}

/* плашка с формой в статье: помещается в экран целиком (липкая, без отдельной карточки контактов) */
.side-card{gap:10px;padding:18px 20px}
.side-form h2{font-size:1.15rem;line-height:1.22}
.side-form>p{font-size:.85rem;line-height:1.5}
.side-form-f{gap:8px;margin-top:2px}
.side-form-f .lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.side-form-f .field{gap:0}
.side-form-f .field>input{padding-block:11px}
.side-form-f .err{min-height:0;font-size:.74rem}
.side-form-f .consent{font-size:.72rem}
.side-form-f .btn-wide{padding-block:12px}
.side-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;padding-top:10px;border-top:1px solid var(--line)}
.side-foot .side-tel{font-size:1.05rem}
.side-foot .side-hours{flex-basis:100%;font-size:.78rem;color:var(--muted);order:3}
@media(min-width:1060px){.post-aside{top:88px}}
@media(max-height:760px) and (min-width:1060px){.side-form>p{display:none}}

/* подкатегории на странице родителя: ссылки на отдельные страницы «Белые» и «Прозрачные» */
.subcats{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:0 0 46px}
.subcat{display:flex;align-items:center;gap:14px;padding:16px 20px;border:1px solid var(--line);border-radius:var(--r-l);background:var(--paper);text-decoration:none;color:var(--ink);transition:border-color .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease)}
.subcat:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:var(--shadow-m)}
.subcat .sku-tab-dot{flex:none;width:22px;height:22px}
.subcat-t{display:grid;gap:2px;min-width:0;flex:1}
.subcat-t b{font-size:1.02rem;line-height:1.3}
.subcat-t em{font-style:normal;font-size:.85rem;color:var(--muted)}
.subcat .arw{color:var(--blue-solid);font-size:1.1rem}

/* четыре карточки площадок в ряд, компактнее */
.rate-row{gap:12px}
@media(min-width:700px){.rate-row{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.rate-row{grid-template-columns:repeat(4,1fr)}}
.rate-card{padding:18px 20px;gap:8px;border-radius:var(--r-l)}
.rate-score b{font-size:1.35rem}
.rate-count{font-size:.82rem}
.rate-card--map .rate-score b{font-size:1.15rem;font-weight:700;padding-block:.15rem}
.rate-card .rate-logo{height:20px}

/* меню каталога: «Белые» и «Прозрачные» отдельными ссылками, углы как у плиток размеров */
.mega-sub{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 12px}
.mega-sub a{display:inline-flex;align-items:center;gap:9px;padding:9px 16px;border-radius:11px;background:var(--paper);border:1px solid var(--line-2);font-size:.92rem;font-weight:600;color:var(--ink);text-decoration:none;transition:border-color .2s var(--ease),color .2s var(--ease)}
.mega-sub a:hover{border-color:var(--blue);color:var(--blue-solid)}
.mega-sub .sku-tab-dot{width:16px;height:16px}

.subcats+.plist-group,.subcats~.plist-group:first-of-type{margin-top:44px}
.plist-group+.plist-group{margin-top:56px}
.search-page-form{margin:0 0 44px;max-width:760px}
/* заголовок раздела: крупнее подписи в плашке, с линией до края, чтобы читался как начало списка */
.plist-h{display:flex;align-items:center;gap:14px;font-size:clamp(1.45rem,2.4vw,1.9rem);line-height:1.15;font-weight:700;margin:0 0 28px;letter-spacing:-.025em}
.plist-h::after{content:"";flex:1;height:1px;background:var(--line-2);order:3}
.plist-h a{color:var(--ink);text-decoration:none;display:inline-flex;gap:8px;align-items:center}
.plist-h a:hover{color:var(--blue-solid)}
.plist-h .arw{color:var(--blue-solid)}

/* ---------- информационные страницы, FAQ, рубрики блога ---------- */
.info-updated{font-size:.85rem;color:var(--muted);margin:0}
.info-body{margin-top:6px}
.info-body h2:first-child{margin-top:0}
.info-body table{min-width:480px}
.info-faq{margin-top:42px}
.info-faq-h{font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1.2;margin:34px 0 14px}
.info-faq-h:first-child{margin-top:0}
.faq-d-list{display:block;border-top:1px solid var(--line)}
.faq-d{background:none;border:0;border-bottom:1px solid var(--line);border-radius:0}
.faq-d summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 2px;font-size:1.1rem;font-weight:600;line-height:1.35;color:var(--ink)}
.faq-d summary::-webkit-details-marker{display:none}
.faq-d summary::after{content:"+";flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:var(--paper);color:var(--ink);font-size:1.4rem;font-weight:400;line-height:1;transition:background .2s var(--ease),border-color .2s var(--ease)}
.faq-d summary:hover::after{border-color:var(--blue)}
.faq-d[open] summary::after{content:"−";background:var(--blue-tint);border-color:var(--blue)}
.faq-d-a{padding:0 64px 22px 2px}
.faq-d-a p{margin:0 0 8px;font-size:1rem;line-height:1.7;color:var(--ink-2)}
@media(max-width:600px){.faq-d summary{font-size:1rem}.faq-d-a{padding-right:6px}}
.info-links{margin-top:46px}
.info-links h2{font-size:clamp(1.35rem,2.4vw,1.75rem);margin-bottom:14px}
.info-links-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.info-link{position:relative;display:grid;gap:4px;padding:16px 44px 16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--paper);text-decoration:none;color:var(--ink);transition:border-color .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease)}
.info-link:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:var(--shadow-m)}
.info-link b{font-size:.98rem;line-height:1.3}
.info-link span{font-size:.85rem;color:var(--ink-2);line-height:1.45}
.info-link .arw{position:absolute;right:16px;top:16px;font-style:normal;color:var(--blue-solid)}
.rubs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}
.rub{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line);border-radius:11px;background:var(--paper);color:var(--ink);text-decoration:none;font-size:.9rem;font-weight:600;transition:border-color .2s var(--ease),color .2s var(--ease)}
.rub i{font-style:normal;font-weight:500;font-size:.78rem;color:var(--muted)}
.rub:hover{border-color:var(--blue);color:var(--blue-solid)}
.rub.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.rub.is-on i{color:var(--paper);opacity:.7}
.rub-more{margin-top:44px;display:grid;gap:8px}
.rub-more .legal.article{max-width:780px}
.eyebrow a{color:inherit;text-decoration:none}
.eyebrow a:hover{color:var(--accent)}

.faq-col{min-width:0}
.faq-all{margin:24px 0 0}
.see-also .info-links,.cat-guides .info-links{margin-top:0}
.info-link--all{background:var(--soft)}

/* страницы с боковой формой внутри белой карточки: плашка без своей тени */
.info-sect .side-card{box-shadow:none;background:var(--surface)}
.info-sect .side-contact{background:var(--surface)}
.info-sect .info-updated{margin-bottom:18px}
.info-sect .post-layout{margin-top:0}

/* карточки «Читайте по теме» и «Смотрите также»: ровная сетка, одинаковая высота */
.guide-grid{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:640px){.guide-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.guide-grid{grid-template-columns:repeat(3,1fr)}}
.guide-card{position:relative;display:flex;flex-direction:column;gap:8px;min-height:190px;padding:20px 22px 18px;border-radius:var(--r-l);background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease),background .25s var(--ease)}
.guide-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-m);border-color:var(--blue);background:var(--paper)}
.guide-tag{align-self:flex-start;font-family:var(--mono,"JetBrains Mono",monospace);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-solid);background:var(--paper);border:1px solid var(--line);border-radius:99px;padding:4px 10px}
.guide-card b{font-size:1.08rem;line-height:1.3;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.guide-txt{font-size:.9rem;line-height:1.5;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.guide-go{margin-top:auto;align-self:flex-end;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--paper);border:1px solid var(--line-2);font-style:normal;color:var(--blue-solid);transition:background .25s var(--ease),color .25s var(--ease)}
.guide-card:hover .guide-go{background:var(--blue-solid);color:#fff;border-color:var(--blue-solid)}
.guide-more{margin:30px 0 4px;display:flex;justify-content:center}
.guide-all{background:var(--graphite);color:#fff;border:0;padding:15px 26px;border-radius:14px;box-shadow:0 10px 24px rgba(12,20,34,.18)}
.guide-all:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(12,20,34,.26)}
.guide-all .arw{margin-left:6px}

/* таблицы в статьях и на информационных страницах: строки-карточки в стиле прайс-листа, на телефоне карточки с подписями */
.tbl{margin:10px 0 24px;overflow-x:auto}
.tbl table{border-collapse:separate;border-spacing:0 8px;width:100%;min-width:0;font-size:.95rem}
.tbl th{background:none;border:0;padding:0 18px 2px;text-align:left;font-family:var(--mono,"JetBrains Mono",monospace);font-size:.68rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.tbl td{background:var(--surface);padding:14px 18px;vertical-align:top;color:var(--ink-2);line-height:1.5;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.tbl td:first-child{border-left:1px solid var(--line);border-radius:14px 0 0 14px;color:var(--ink);font-weight:600}
.tbl td:last-child{border-right:1px solid var(--line);border-radius:0 14px 14px 0}
.tbl td:only-child{border-radius:14px}
.sect-plain .tbl td{background:var(--paper)}
.tbl tr:hover td{background:var(--paper);border-color:var(--line-2)}
.tbl tr:last-child td{border-bottom:1px solid var(--line)}
@media(max-width:640px){
  .tbl{overflow:visible}
  .tbl table,.tbl tbody,.tbl tr,.tbl td{display:block;width:100%}
  .tbl thead{display:none}
  .tbl table{border-spacing:0}
  .tbl tr{margin-bottom:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:6px 16px}
  .sect-plain .tbl tr{background:var(--paper)}
  .tbl td,.tbl td:first-child,.tbl td:last-child{background:none;border:0;border-radius:0;padding:9px 0;display:grid;gap:2px;font-weight:400;color:var(--ink-2)}
  .tbl td:first-child{font-weight:600;color:var(--ink)}
  .tbl td+td{border-top:1px dashed var(--line)}
  .tbl td::before{content:attr(data-label);font-family:var(--mono,"JetBrains Mono",monospace);font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
  .tbl td:not([data-label])::before{display:none}
  .tbl tr:hover td{background:none}
}

.mega-pane-top .mega-h{margin:0 0 4px;color:var(--ink)}
.foot .foot-h{margin:0 0 12px}

/* списки каталога карточками: фото позиции, размер, цены по ступеням */
.lgrid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:6px}
@media(max-width:1100px){.lgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.lgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
@media(max-width:440px){.lgrid{grid-template-columns:1fr}}
.lgrid.plist{display:grid}
.lgrid.plist.is-hidden{display:none}
.lcard{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease)}
.lcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-m);border-color:var(--blue);background:var(--paper)}
.lcard-link{position:absolute;inset:0;z-index:1}
.lcard-link:focus-visible{outline:3px solid var(--blue-solid);outline-offset:-3px}
.lcard-pic{position:relative;aspect-ratio:3/2;background:var(--surface);display:grid;place-items:center;overflow:hidden}
.lcard-pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s var(--ease)}
.lcard:hover .lcard-pic img{transform:scale(1.03)}
/* малые карточки с фото товара 3:2 (похожие товары, избранное): фото на всю плашку, без полос и тени.
   Хиты на главной — вырезанные снимки без фона, им остаётся квадратная подача. */
.pcard-pic--photo{aspect-ratio:3/2;background:#EFF6FE}
.pcard-pic--photo::before{display:none}
.pcard-pic--photo img,.sku-grid .pcard-pic--photo img{object-fit:cover;filter:none}
.pcard:hover .pcard-pic--photo img{transform:scale(1.03)}
.lcard .pfav{position:absolute;top:8px;right:8px;z-index:2;background:var(--paper)}
.lcard .pbadge{position:absolute;left:10px;top:10px;z-index:2}
.lcard-body{display:flex;flex-direction:column;gap:4px;padding:12px 16px 12px;flex:1}
.lcard-body h3{font-size:1.15rem;line-height:1.2;font-weight:700;letter-spacing:-.01em}
.lcard-body h3 span{font-size:.8rem;font-weight:500;color:var(--muted)}
.lcard-body .sub{margin:0;font-size:.82rem;color:var(--muted)}
.lcard-tiers{display:grid;gap:0;margin-top:4px}
.lcard .lt{display:flex;justify-content:space-between;gap:8px;align-items:baseline;font-variant-numeric:tabular-nums;padding:3px 0;border-top:1px dashed var(--line)}
.lcard .lt:first-child{border-top:0}
.lcard .lt em{font-style:normal;font-size:.74rem;color:var(--muted)}
.lcard .lt b{font-size:.95rem}
.lcard .lt.is-best b{color:var(--blue-solid)}
.lcard .lt-ask b{color:var(--muted);font-weight:600}
.lcard-acts{position:relative;z-index:2;margin-top:auto;padding-top:8px;display:flex;gap:8px;justify-content:flex-end}
.lcard .prow-btn{width:38px;height:38px}

/* Страница товара: студийное фото позиции на всю рамку, без вырезного силуэта и подложки */
/* фото товара заполняет всю плашку: блок тянется по высоте колонки с описанием,
   и без cover сверху и снизу оставались пустые полосы (в тёмной теме — тёмные) */
.pd-media--photo{padding:0;background:#EFF6FE;aspect-ratio:3/2;min-height:0}
@media(min-width:940px){.pd-media--photo{aspect-ratio:auto;min-height:420px}}
.pd-media--photo .pd-media-stage{position:absolute;inset:0;max-width:none}
.pd-media--photo img{filter:none;width:100%;height:100%;object-fit:cover}
.pd-media--photo::before,
.pd-media--photo::after,
.pd-media--photo .pd-media-floor,
.pd-media--photo .pd-media-mark{display:none}
.plist-n{display:inline-block;padding:2px 9px;border-radius:999px;background:var(--surface-2,#EEF3F9);color:var(--muted);font:600 .74rem/1.4 "JetBrains Mono",monospace;vertical-align:middle}
/* Избранное в карточке: при наведении иконка не должна белеть на белом (перебивало .prow-btn:hover) */
.lcard .pfav:hover{background:var(--paper);border-color:var(--line-2);color:var(--accent);transform:scale(1.08)}
.lcard .pfav.on,.lcard .pfav.on:hover{color:var(--accent);background:var(--accent-tint);border-color:transparent}

/* заказ прямо из списка: количество, «В корзину», «Купить в 1 клик» */
.lcard-eye{position:absolute;top:54px;right:8px;z-index:2;background:var(--paper)}
.lcard-eye:hover{background:var(--blue-solid)}
.lcard-buy{position:relative;z-index:2;margin-top:auto;display:grid;gap:8px;padding-top:12px}
.lq{display:flex;align-items:center;justify-content:space-between;gap:6px;border:1px solid var(--line-2);border-radius:12px;background:var(--paper);padding:4px}
.lq-b{flex:none;width:36px;height:36px;border:0;border-radius:9px;background:#EEF3F9;color:var(--ink);font-size:1.15rem;line-height:1;cursor:pointer;transition:background .2s var(--ease),color .2s var(--ease)}
.lq-b:hover:not(:disabled){background:var(--blue-solid);color:#fff}
.lq-b:disabled{opacity:.4;cursor:default}
.lq-mid{display:flex;align-items:baseline;justify-content:center;gap:5px;min-width:0;flex:1}
.lq-in{width:4ch;max-width:100%;border:0;background:transparent;text-align:center;font-family:inherit;font-weight:700;font-size:1.05rem;line-height:1.2;color:var(--ink);padding:0;margin:0;font-variant-numeric:tabular-nums}
.lq-in:focus{outline:2px solid var(--blue-solid);outline-offset:2px;border-radius:4px}
.lq-u{font-size:.8rem;color:var(--muted)}
.lq-sum{margin:0;font-size:.78rem;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums}
.lcard-buy .btn{width:100%;justify-content:center;padding:12px 14px;font-size:.94rem;min-height:0}
.lcard-buy .btn[disabled]{opacity:.7}
/* кнопки в карточке не подпрыгивают и не светятся: карточка при наведении уже приподнимается,
   а ореол «В корзину» наползал на соседнюю кнопку */
.lcard-buy .btn:hover{transform:none}
.lcard-buy .btn:active{transform:scale(.98)}
.lcard-buy .btn-primary{box-shadow:0 4px 12px rgba(245,90,11,.18)}
.lcard-buy .btn-primary:hover{background:var(--accent-2);box-shadow:0 6px 16px rgba(245,90,11,.24)}
.lcard-buy .btn-ghost:hover{border-color:var(--blue);color:var(--blue);box-shadow:none}
/* «под заказ»: пояснение занимает свободное место между ценой и кнопкой */
.lq-note{flex:1;margin:10px 0 0;padding:12px 14px;border:1px dashed var(--line-2);border-radius:12px;background:var(--paper);font-size:.86rem;line-height:1.45;color:var(--muted);display:flex;align-items:center}
/* иконки категорий в меню: ровно по центру плитки */
.mega-ico svg{display:block;width:22px;height:22px;flex:none}

/* @dark-start (генерируется tools/dark_css.py из tools/css/dark.css) */
:root[data-theme="dark"] .cat{background:linear-gradient(165deg,#172639 0%,#111D2D 100%)}
:root[data-theme="dark"] .cat--plain{background:linear-gradient(165deg,#172639 0%,#111D2D 100%)}
:root[data-theme="dark"] .cat--sky{background:linear-gradient(165deg,#1A3860 0%,#12263F 100%);border-color:#21446E}
:root[data-theme="dark"] .cat--warm{background:linear-gradient(165deg,#172639 0%,#111D2D 100%);border-color:var(--line)}
:root[data-theme="dark"] .cat--warm .cat-num::after{background-image:linear-gradient(90deg,var(--accent) 0%,var(--accent) 38%,transparent 100%),linear-gradient(var(--line-2),var(--line-2))}
:root[data-theme="dark"] .cat--warm::after{color:var(--line-2)}
:root[data-theme="dark"] .cat--blue{background:linear-gradient(160deg,#2F83EC 0%,#14509F 100%)}
:root[data-theme="dark"] .cat--dark{background:linear-gradient(160deg,#1D3049 0%,#0F1B2C 100%);border-color:var(--line)}
:root[data-theme="dark"] .cat-go{background:var(--surface-2)}
:root[data-theme="dark"] .cat--blue .cat-go,
:root[data-theme="dark"] .cat--dark .cat-go,
:root[data-theme="dark"] .cat--accent .cat-go{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.34);color:#fff}
:root[data-theme="dark"] .cat:hover .cat-go{background:var(--accent);border-color:transparent;color:#fff;box-shadow:0 10px 24px rgba(245,90,11,.35)}
:root[data-theme="dark"] .cat--blue:hover .cat-go,
:root[data-theme="dark"] .cat--dark:hover .cat-go{background:#fff;border-color:transparent;color:#0D1622;box-shadow:none}
:root[data-theme="dark"] .cat--accent:hover .cat-go{background:#fff;border-color:transparent;color:var(--accent);box-shadow:none}
:root[data-theme="dark"] .cat--accent{background:linear-gradient(160deg,#FF7A2E 0%,#E2500A 100%)}
:root[data-theme="dark"] .cat-pic img{filter:drop-shadow(0 14px 22px rgba(0,0,0,.45))}
:root[data-theme="dark"] .quiz-l{background:linear-gradient(168deg,#152A45 0%,var(--paper) 58%)}
:root[data-theme="dark"] .quiz-l::before{color:rgba(255,255,255,.06)}
:root[data-theme="dark"] .qopt.is-pic.q--sky{background:linear-gradient(165deg,#1A3860 0%,#12263F 100%);border-color:#21446E}
:root[data-theme="dark"] .qopt.is-pic.q--warm,
:root[data-theme="dark"] .qopt.is-pic.q--plain{background:linear-gradient(165deg,#172639 0%,#111D2D 100%);border-color:var(--line)}
:root[data-theme="dark"] .qopt.is-pic.q--blue{background:linear-gradient(160deg,#2F83EC 0%,#14509F 100%)}
:root[data-theme="dark"] .qopt.is-pic.q--dark{background:linear-gradient(160deg,#1D3049 0%,#0F1B2C 100%);border-color:var(--line)}
:root[data-theme="dark"] .qopt.is-pic.q--accent{background:linear-gradient(160deg,#FF7A2E 0%,#E2500A 100%)}
:root[data-theme="dark"] .qopt[aria-pressed="true"]{background-color:var(--blue-fill)}
:root[data-theme="dark"] .quiz-gets i{background:var(--surface-2);box-shadow:none}
:root[data-theme="dark"] .bcard.is-sky{background:linear-gradient(160deg,#2F83EC 0%,#1B5FC0 100%)}
:root[data-theme="dark"] .bcard.is-blue{background:#1565C7}
:root[data-theme="dark"] .rcard.is-accent{background:linear-gradient(160deg,#2F83EC 0%,#14509F 100%)}
:root[data-theme="dark"] .rcard.is-ya{background:var(--paper)}
:root[data-theme="dark"] .rcard.is-ya .rsrc{background:#1A2A3F;border-color:var(--line-2)}
:root[data-theme="dark"] .faq-vis{background:linear-gradient(158deg,#2F83EC,#14509F)}
:root[data-theme="dark"] .tile.is-blue{background:#1565C7}
:root[data-theme="dark"] .lq-b{background:var(--surface-2);color:var(--ink)}
:root[data-theme="dark"] .lq{background:var(--surface)}
:root[data-theme="dark"] .lq-note{background:var(--surface);border-color:var(--line-2);color:var(--ink-2)}
:root[data-theme="dark"] .lcard-pic{background:var(--surface)}
:root[data-theme="dark"] .cnt--sky{background:linear-gradient(165deg,#1A3860 0%,#12263F 100%)}
:root[data-theme="dark"] .cform-r{background:linear-gradient(200deg,var(--surface) 0%,var(--surface-2) 100%)}
:root[data-theme="dark"] .chero{background:linear-gradient(158deg,#183457 0%,var(--surface-2) 55%,#13273F 100%)}
:root[data-theme="dark"] .pd-media{background:linear-gradient(165deg,#1A3050 0%,var(--surface-2) 100%)}
:root[data-theme="dark"] .pd-media--photo{background:#EFF6FE;border-color:var(--line)}
:root[data-theme="dark"] .btn-pill{color:#0D1622}
:root[data-theme="dark"] .lcard-buy .btn-primary{box-shadow:0 4px 12px rgba(0,0,0,.3)}
:root[data-theme="dark"] .lcard-buy .btn-primary:hover{box-shadow:0 6px 16px rgba(0,0,0,.36)}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .cat{background:linear-gradient(165deg,#172639 0%,#111D2D 100%)}
  :root:not([data-theme="light"]) .cat--plain{background:linear-gradient(165deg,#172639 0%,#111D2D 100%)}
  :root:not([data-theme="light"]) .cat--sky{background:linear-gradient(165deg,#1A3860 0%,#12263F 100%);border-color:#21446E}
  :root:not([data-theme="light"]) .cat--warm{background:linear-gradient(165deg,#172639 0%,#111D2D 100%);border-color:var(--line)}
  :root:not([data-theme="light"]) .cat--warm .cat-num::after{background-image:linear-gradient(90deg,var(--accent) 0%,var(--accent) 38%,transparent 100%),linear-gradient(var(--line-2),var(--line-2))}
  :root:not([data-theme="light"]) .cat--warm::after{color:var(--line-2)}
  :root:not([data-theme="light"]) .cat--blue{background:linear-gradient(160deg,#2F83EC 0%,#14509F 100%)}
  :root:not([data-theme="light"]) .cat--dark{background:linear-gradient(160deg,#1D3049 0%,#0F1B2C 100%);border-color:var(--line)}
  :root:not([data-theme="light"]) .cat-go{background:var(--surface-2)}
  :root:not([data-theme="light"]) .cat--blue .cat-go,
  :root:not([data-theme="light"]) .cat--dark .cat-go,
  :root:not([data-theme="light"]) .cat--accent .cat-go{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.34);color:#fff}
  :root:not([data-theme="light"]) .cat:hover .cat-go{background:var(--accent);border-color:transparent;color:#fff;box-shadow:0 10px 24px rgba(245,90,11,.35)}
  :root:not([data-theme="light"]) .cat--blue:hover .cat-go,
  :root:not([data-theme="light"]) .cat--dark:hover .cat-go{background:#fff;border-color:transparent;color:#0D1622;box-shadow:none}
  :root:not([data-theme="light"]) .cat--accent:hover .cat-go{background:#fff;border-color:transparent;color:var(--accent);box-shadow:none}
  :root:not([data-theme="light"]) .cat--accent{background:linear-gradient(160deg,#FF7A2E 0%,#E2500A 100%)}
  :root:not([data-theme="light"]) .cat-pic img{filter:drop-shadow(0 14px 22px rgba(0,0,0,.45))}
  :root:not([data-theme="light"]) .quiz-l{background:linear-gradient(168deg,#152A45 0%,var(--paper) 58%)}
  :root:not([data-theme="light"]) .quiz-l::before{color:rgba(255,255,255,.06)}
  :root:not([data-theme="light"]) .qopt.is-pic.q--sky{background:linear-gradient(165deg,#1A3860 0%,#12263F 100%);border-color:#21446E}
  :root:not([data-theme="light"]) .qopt.is-pic.q--warm,
  :root:not([data-theme="light"]) .qopt.is-pic.q--plain{background:linear-gradient(165deg,#172639 0%,#111D2D 100%);border-color:var(--line)}
  :root:not([data-theme="light"]) .qopt.is-pic.q--blue{background:linear-gradient(160deg,#2F83EC 0%,#14509F 100%)}
  :root:not([data-theme="light"]) .qopt.is-pic.q--dark{background:linear-gradient(160deg,#1D3049 0%,#0F1B2C 100%);border-color:var(--line)}
  :root:not([data-theme="light"]) .qopt.is-pic.q--accent{background:linear-gradient(160deg,#FF7A2E 0%,#E2500A 100%)}
  :root:not([data-theme="light"]) .qopt[aria-pressed="true"]{background-color:var(--blue-fill)}
  :root:not([data-theme="light"]) .quiz-gets i{background:var(--surface-2);box-shadow:none}
  :root:not([data-theme="light"]) .bcard.is-sky{background:linear-gradient(160deg,#2F83EC 0%,#1B5FC0 100%)}
  :root:not([data-theme="light"]) .bcard.is-blue{background:#1565C7}
  :root:not([data-theme="light"]) .rcard.is-accent{background:linear-gradient(160deg,#2F83EC 0%,#14509F 100%)}
  :root:not([data-theme="light"]) .rcard.is-ya{background:var(--paper)}
  :root:not([data-theme="light"]) .rcard.is-ya .rsrc{background:#1A2A3F;border-color:var(--line-2)}
  :root:not([data-theme="light"]) .faq-vis{background:linear-gradient(158deg,#2F83EC,#14509F)}
  :root:not([data-theme="light"]) .tile.is-blue{background:#1565C7}
  :root:not([data-theme="light"]) .lq-b{background:var(--surface-2);color:var(--ink)}
  :root:not([data-theme="light"]) .lq{background:var(--surface)}
  :root:not([data-theme="light"]) .lq-note{background:var(--surface);border-color:var(--line-2);color:var(--ink-2)}
  :root:not([data-theme="light"]) .lcard-pic{background:var(--surface)}
  :root:not([data-theme="light"]) .cnt--sky{background:linear-gradient(165deg,#1A3860 0%,#12263F 100%)}
  :root:not([data-theme="light"]) .cform-r{background:linear-gradient(200deg,var(--surface) 0%,var(--surface-2) 100%)}
  :root:not([data-theme="light"]) .chero{background:linear-gradient(158deg,#183457 0%,var(--surface-2) 55%,#13273F 100%)}
  :root:not([data-theme="light"]) .pd-media{background:linear-gradient(165deg,#1A3050 0%,var(--surface-2) 100%)}
  :root:not([data-theme="light"]) .pd-media--photo{background:#EFF6FE;border-color:var(--line)}
  :root:not([data-theme="light"]) .btn-pill{color:#0D1622}
  :root:not([data-theme="light"]) .lcard-buy .btn-primary{box-shadow:0 4px 12px rgba(0,0,0,.3)}
  :root:not([data-theme="light"]) .lcard-buy .btn-primary:hover{box-shadow:0 6px 16px rgba(0,0,0,.36)}
}
/* @dark-end */

/* карта на контактах (Leaflet) */
.map-pin-wrap{background:none;border:0}
.map-frame .leaflet-container{font-family:inherit;background:var(--surface)}
.map-frame .leaflet-control-attribution{font-size:.62rem}
:root[data-theme="dark"] .map-frame .leaflet-tile-pane{filter:invert(.92) hue-rotate(180deg) saturate(.7) brightness(.95) contrast(.95)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .map-frame .leaflet-tile-pane{filter:invert(.92) hue-rotate(180deg) saturate(.7) brightness(.95) contrast(.95)}}
:root[data-theme="dark"] .map-frame .leaflet-control-attribution,:root[data-theme="dark"] .map-frame .leaflet-bar a{background:var(--paper);color:var(--ink-2)}
.map-block .btn+.btn{margin-left:8px}

/* блок «Образцы»: фон снимка набора совпадает с заливкой блока, в обеих темах одинаково */
.promo{background:#1878E6}
.stretch img{filter:none}
/* набор образцов: кадр сделан под баннер — фон в цвет блока, курьерские уходят за нижнюю кромку, зип-локи целиком */
@media(min-width:940px){
  .promo-l{position:relative;z-index:2}
  .stretch{top:0;bottom:0;right:0;width:56%;margin:0}
  .stretch img{width:100%;height:100%;object-fit:cover;object-position:100% 100%}
  /* плашки треугольником по самому кадру: сверху слева, снизу слева, справа посередине */
  .pfly-1{left:4%;top:12%}
  .pfly-2{left:-2%;top:auto;bottom:12%}
  .pfly-3{left:auto;right:5%;top:47%}
}
/* узкий десктоп: рамка почти квадратная — кадр целиком у нижней кромки, плашки ниже */
@media(min-width:940px) and (max-width:1199px){
  .stretch{width:62%}
  .stretch img{object-fit:contain}
  .pfly-1{left:6%;top:30%}
  .pfly-2{left:0;bottom:8%}
  .pfly-3{right:3%;top:50%}
}
/* телефон и планшет: плашки под кнопкой, кадр в самом низу блока и уходит за его кромку */
@media(max-width:939px){
  .stretch{display:flex;flex-direction:column;gap:12px}
  .stretch .pfly{margin-top:0}
  .stretch img{order:2;width:calc(100% + 52px);max-width:none;margin:8px -26px -32px}
}

/* политика и согласие: разделы друг под другом на всю ширину блока */
.legal.legal--wide{max-width:none}
/* выпадающий поиск: миниатюра — фото товара 3:2 целиком, «Все результаты» — кнопка в стиле сайта */
.search-suggest a:not(.search-suggest-all){border-bottom:1px solid var(--line);border-radius:0;padding:10px 6px}
.search-suggest a:not(.search-suggest-all):hover,.search-suggest a:not(.search-suggest-all):focus-visible{background:none;color:var(--blue)}
.search-suggest img{width:66px;height:44px;border-radius:10px;object-fit:cover;background:#EFF6FE}
.search-suggest-all{justify-self:start;display:inline-flex;align-items:center;gap:12px;margin-top:16px;padding:8px 8px 8px 20px;
  border-radius:999px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);font-size:.92rem;
  transition:border-color .2s var(--ease),color .2s var(--ease)}
.search-suggest-all .arw{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;
  transition:transform .2s var(--ease)}
.search-suggest-all:hover{border-color:var(--blue);color:var(--blue)}
.search-suggest-all:hover .arw{transform:translateX(3px)}
