/* generated by skins.py: colours and type of the active skin(s) */
:root{--bg:#F3F5FA;--bg2:#E8EDF7;--card:#FFFFFF;--ink:#0D1A37;--ink2:#33425F;--mute:#5C6985;--rule:#DBE1EE;--rule2:#E7EBF5;--accent:#2457E4;--accent-h:#1A44BF;--accent-ink:#FFFFFF;--accent-soft:#E3EBFF;--accent-t:#2250DA;--accent-th:#1A3FAE;--t1:#0D1A37;--on-t1:#FFFFFF;--t2:#2457E4;--on-t2:#FFFFFF;--t3:#CCDAFA;--on-t3:#0E2A6C;--band-bg:#0D1A37;--band-fg:#FFFFFF;--band-btn:#FFFFFF;--band-btn-fg:#0D1A37;--hd-bg:color-mix(in srgb,var(--bg) 88%,transparent);--hd-panel:var(--bg);--hd-fg:var(--ink);--hd-fg2:var(--ink2);--hd-rule:var(--rule);--hd-hover:var(--accent-soft);--hd-hover-fg:var(--accent-t);--hd-btn-bg:var(--card);--hd-btn-bd:var(--rule);--hd-sup:var(--accent-t);--ft-bg:var(--bg2);--ft-strong:var(--ink);--ft-fg:var(--ink2);--ft-mute:var(--mute);--ft-rule:var(--rule);--ft-link-h:var(--accent-t);--good:#0E7647;--good-bg:#DFF3E8;--save:#9A4608;--save-bg:#FFEBD2;--bad:#B42318;--photo:#FFFFFF;--focus:#2457E4;--logo-bg:#0D1A37;--logo-fg:#FFFFFF;--bar-gain:#7DE3B5;--scrim:rgba(13,26,55,.55);--shadow:0 1px 2px rgba(13,26,55,.05),0 12px 32px -16px rgba(13,26,55,.26);--shadow-s:0 1px 2px rgba(13,26,55,.06);--f-ui:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;--f-display:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;--f-mono:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;--w-display:700;--ls-display:-.03em;--lh-display:1.1;--h1-size:clamp(30px,4.2vw,50px);--h1-hero:clamp(32px,4.4vw,54px);--h2-size:clamp(24px,2.6vw,32px);--r:9px;--r-lg:14px;--lnum:normal;--sub-style:normal;--sub-weight:600}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0A1020;--bg2:#0F172B;--card:#141E36;--ink:#EEF2FB;--ink2:#C6CFE4;--mute:#94A1BE;--rule:#26314D;--rule2:#1C2640;--accent:#6C8FFF;--accent-h:#8AA7FF;--accent-ink:#09122E;--accent-soft:#1B2A58;--accent-t:#7D9CFF;--accent-th:#A0B8FF;--t1:#6C8FFF;--on-t1:#09122E;--t2:#3C63DA;--on-t2:#FFFFFF;--t3:#1D2C58;--on-t3:#D6E1FF;--band-bg:#16224A;--band-fg:#EEF2FB;--band-btn:#6C8FFF;--band-btn-fg:#09122E;--hd-bg:color-mix(in srgb,var(--bg) 88%,transparent);--hd-panel:var(--bg);--hd-fg:var(--ink);--hd-fg2:var(--ink2);--hd-rule:var(--rule);--hd-hover:var(--accent-soft);--hd-hover-fg:var(--accent-t);--hd-btn-bg:var(--card);--hd-btn-bd:var(--rule);--hd-sup:var(--accent-t);--ft-bg:var(--bg2);--ft-strong:var(--ink);--ft-fg:var(--ink2);--ft-mute:var(--mute);--ft-rule:var(--rule);--ft-link-h:var(--accent-t);--good:#5FD6A0;--good-bg:#12302A;--save:#FFB366;--save-bg:#33210F;--bad:#FF8A80;--photo:#EAEEF7;--focus:#7D9CFF;--logo-bg:#6C8FFF;--logo-fg:#09122E;--bar-gain:#0E7647;--scrim:rgba(0,0,0,.6);--shadow:0 1px 2px rgba(0,0,0,.4),0 14px 34px -16px rgba(0,0,0,.7);--shadow-s:0 1px 2px rgba(0,0,0,.4);color-scheme:dark}}
:root[data-theme="dark"]{--bg:#0A1020;--bg2:#0F172B;--card:#141E36;--ink:#EEF2FB;--ink2:#C6CFE4;--mute:#94A1BE;--rule:#26314D;--rule2:#1C2640;--accent:#6C8FFF;--accent-h:#8AA7FF;--accent-ink:#09122E;--accent-soft:#1B2A58;--accent-t:#7D9CFF;--accent-th:#A0B8FF;--t1:#6C8FFF;--on-t1:#09122E;--t2:#3C63DA;--on-t2:#FFFFFF;--t3:#1D2C58;--on-t3:#D6E1FF;--band-bg:#16224A;--band-fg:#EEF2FB;--band-btn:#6C8FFF;--band-btn-fg:#09122E;--hd-bg:color-mix(in srgb,var(--bg) 88%,transparent);--hd-panel:var(--bg);--hd-fg:var(--ink);--hd-fg2:var(--ink2);--hd-rule:var(--rule);--hd-hover:var(--accent-soft);--hd-hover-fg:var(--accent-t);--hd-btn-bg:var(--card);--hd-btn-bd:var(--rule);--hd-sup:var(--accent-t);--ft-bg:var(--bg2);--ft-strong:var(--ink);--ft-fg:var(--ink2);--ft-mute:var(--mute);--ft-rule:var(--rule);--ft-link-h:var(--accent-t);--good:#5FD6A0;--good-bg:#12302A;--save:#FFB366;--save-bg:#33210F;--bad:#FF8A80;--photo:#EAEEF7;--focus:#7D9CFF;--logo-bg:#6C8FFF;--logo-fg:#09122E;--bar-gain:#0E7647;--scrim:rgba(0,0,0,.6);--shadow:0 1px 2px rgba(0,0,0,.4),0 14px 34px -16px rgba(0,0,0,.7);--shadow-s:0 1px 2px rgba(0,0,0,.4);color-scheme:dark}
/* ==========================================================================
   Опт 18+ — design system
   Colours, type and radii are tokens: the build puts them in front of this file (generated from skins.py).
   ========================================================================== */
:root{--wrap:1280px;--gut:clamp(16px,3vw,32px)}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-ui);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
[hidden]{display:none!important}
img,svg{max-width:100%}
img{height:auto}
a{color:var(--accent-t);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--accent-th)}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:6px}
.site-header :focus-visible{outline-color:var(--hd-hover-fg)}
.site-footer :focus-visible{outline-color:var(--ft-link-h)}
.cta-band :focus-visible{outline-color:var(--band-fg)}
.cartbar :focus-visible,.preview-bar :focus-visible,.toast :focus-visible{outline-color:var(--bg)}
::selection{background:var(--accent);color:var(--accent-ink)}
.sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--bg);padding:10px 14px;border-radius:8px;z-index:200}
.skip:focus{left:8px}
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}
.narrow{max-width:860px}
.ico{width:20px;height:20px;flex:none;vertical-align:-4px}
.ico-s{width:16px;height:16px}
.num,.mono,.js-price,.js-mprice{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.logo,.slip-title,.trust-grid b,.cat-tile b,.ce-t,.sum-big{font-variant-numeric:var(--lnum)}
.noscript{margin:0;padding:12px var(--gut);background:var(--save-bg);color:var(--save);text-align:center;font-size:14px}

/* ---------- type ---------- */
h1,h2,h3,h4{font-family:var(--f-display);font-weight:var(--w-display);line-height:var(--lh-display);letter-spacing:var(--ls-display);font-variant-numeric:var(--lnum);margin:0;text-wrap:balance;color:var(--ink)}
h1{font-size:var(--h1-size)}
h2{font-size:var(--h2-size)}
h3{font-size:20px;letter-spacing:calc(var(--ls-display) / 2)}
p{margin:0}
.lead{font-size:clamp(17px,1.5vw,19px);color:var(--ink2);max-width:62ch;text-wrap:pretty}
.kicker,.eyebrow,.eyebrow-l{font-family:var(--f-mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--mute);font-weight:500}
.kicker{margin-bottom:10px}
.prose{max-width:74ch}
.prose h2{margin:34px 0 12px;font-size:clamp(22px,2.4vw,28px)}
.prose h3{margin:24px 0 8px}
.prose p,.prose ul,.prose ol{margin:0 0 14px;color:var(--ink2)}
.prose ul,.prose ol{padding-left:22px}
.prose li{margin:6px 0}
.prose b{color:var(--ink)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:var(--r);border:1px solid transparent;font-weight:600;font-size:15px;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;white-space:nowrap}
.btn .ico{width:18px;height:18px}
.btn-primary{background:var(--accent);color:var(--accent-ink)}
.btn-primary:hover{background:var(--accent-h);color:var(--accent-ink)}
.btn-ghost{background:transparent;border-color:var(--rule);color:var(--ink)}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent-t)}
.btn-quiet{background:transparent;color:var(--ink2);padding:0 12px}
.btn-quiet:hover{color:var(--accent-t)}
.btn-lg{min-height:52px;padding:0 26px;font-size:16px}
.btn-block{width:100%}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.icon-btn{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:var(--r);border:1px solid transparent;background:transparent;color:var(--ink)}
.icon-btn:hover{background:var(--bg2)}
.link-btn{border:0;background:transparent;color:var(--mute);text-decoration:underline;text-underline-offset:3px;font-size:13px;padding:6px 0;cursor:pointer}
.link-btn:hover{color:var(--accent-t)}
.pill{display:inline-flex;align-items:center;font-family:var(--f-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent-t);font-weight:600}
.pill-new{background:var(--save-bg);color:var(--save)}

/* ---------- header ---------- */
.preview-bar{background:var(--ink);color:var(--bg);font-size:13px;text-align:center;padding:8px var(--gut);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 18px}
.skin-pick{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px}
.skin-pick .sp-l{opacity:.78}
.skin-pick button{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:0 12px 0 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--bg) 38%,transparent);background:transparent;color:inherit;font-size:13px;font-weight:600;line-height:1}
.skin-pick button:hover{border-color:var(--bg)}
.skin-pick button[aria-pressed="true"]{background:var(--bg);border-color:var(--bg);color:var(--ink)}
@media (max-width:640px){.preview-bar{font-size:12px;padding:6px var(--gut);gap:4px 12px}.pb-more,.skin-pick .sp-l{display:none}.skin-pick button{min-height:28px;padding:0 10px 0 7px;font-size:12.5px}}
.skin-pick i{width:15px;height:15px;border-radius:50%;background:linear-gradient(135deg,var(--a) 50%,var(--b) 50%);box-shadow:0 0 0 1px rgba(128,128,128,.55);flex:none}
/* top bar: the five information pages (hidden on phones: they live in the menu there) */
.topbar{background:var(--band-bg);color:var(--band-fg);font-size:13.5px;line-height:1.3}
.topbar :focus-visible{outline-color:var(--band-fg)}
.tbar-in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:38px}
.tbar-nav{display:flex;flex-wrap:wrap;margin-left:-10px}
.tbar-nav a{position:relative;display:inline-flex;align-items:center;min-height:38px;padding:0 10px;color:color-mix(in srgb,var(--band-fg) 82%,transparent);text-decoration:none;font-weight:500}
.tbar-nav a:hover{color:var(--band-fg);text-decoration:underline;text-underline-offset:4px}
.tbar-nav a[aria-current="page"]{color:var(--band-fg);font-weight:600}
.tbar-nav a[aria-current="page"]::after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;background:var(--band-btn)}
.tbar-note{margin:0;font-family:var(--f-mono);font-size:12px;letter-spacing:.02em;color:color-mix(in srgb,var(--band-fg) 72%,transparent);white-space:nowrap}
.tbar-contacts{display:flex;gap:18px;font-family:var(--f-ui);font-size:13.5px;letter-spacing:0}
.tbar-contacts a{color:var(--band-fg);text-decoration:none;font-weight:600}
.tbar-contacts a:hover{text-decoration:underline;text-underline-offset:4px}
@media (max-width:1120px){.tbar-nav{margin-left:-8px}.tbar-nav a{padding:0 8px}.tbar-nav a[aria-current="page"]::after{left:8px;right:8px}.tbar-in{gap:10px}}
/* narrow screens: the five information pages stay in sight as one scrollable row of chips (light, so it does not read as the dark preview bar) */
@media (max-width:980px){
  .topbar{background:var(--bg2);color:var(--ink);border-bottom:1px solid var(--rule);position:relative}
  .topbar :focus-visible{outline-color:var(--focus)}
  .tbar-in{display:block;min-height:0;padding-block:8px}
  .tbar-note{display:none}
  .tbar-nav{flex-wrap:nowrap;gap:8px;margin:0 calc(var(--gut) * -1);padding:0 32px 0 var(--gut);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .tbar-nav::-webkit-scrollbar{display:none}
  .tbar-nav a{flex:none;min-height:34px;padding:0 14px;border:1px solid var(--rule);border-radius:999px;background:var(--card);color:var(--ink);font-size:13.5px;font-weight:500;white-space:nowrap}
  .tbar-nav a:hover{text-decoration:none;border-color:var(--accent);color:var(--accent-t)}
  .tbar-nav a[aria-current="page"]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}
  .tbar-nav a[aria-current="page"]::after{display:none}
  .topbar::after{content:"";position:absolute;top:0;right:0;bottom:0;width:24px;background:linear-gradient(to right,transparent,var(--bg2));pointer-events:none}
}
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:var(--hd-bg);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--hd-rule)}
.hd{display:flex;align-items:center;gap:18px;min-height:64px}
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--hd-fg);font-family:var(--f-display);font-weight:700;font-size:22px;letter-spacing:-.02em}
.logo:hover{color:var(--hd-fg)}
.site-footer .logo,.site-footer .logo:hover{color:var(--ft-strong)}
.logo-mark{width:32px;height:32px;flex:none}
.logo-text sup{font-family:var(--f-ui);font-size:11px;font-weight:700;letter-spacing:.02em;vertical-align:top;margin-left:3px;color:var(--hd-sup);position:relative;top:-1px}
.nav{display:flex;align-items:center;gap:4px;margin-left:12px}
.nav a{display:inline-flex;align-items:center;gap:4px;padding:8px 12px;border-radius:8px;color:var(--hd-fg2);text-decoration:none;font-weight:500;font-size:15px}
.nav a:hover,.nav a[aria-current="page"]{color:var(--hd-hover-fg);background:var(--hd-hover)}
.nav-sep,.nav a.nav-info{display:none}
.hd-tools{margin-left:auto;display:flex;align-items:center;gap:6px}
.i-sun{display:none}
:root[data-theme="dark"] .i-sun{display:inline}
:root[data-theme="dark"] .i-moon{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .i-sun{display:inline}:root:not([data-theme="light"]) .i-moon{display:none}}
.cartlink{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 14px;border-radius:var(--r);border:1px solid var(--hd-btn-bd);background:var(--hd-btn-bg);color:var(--hd-fg);text-decoration:none;font-weight:600;position:relative}
.cartlink:hover{border-color:var(--hd-hover-fg);color:var(--hd-hover-fg)}
.site-header .icon-btn{color:var(--hd-fg)}
.site-header .icon-btn:hover{background:var(--hd-hover)}
.cl-sum{font-family:var(--f-mono);font-size:14px;font-variant-numeric:tabular-nums}
.cl-sum i{font-style:normal;color:var(--hd-fg2);font-weight:400}
.badge{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:11px;font-weight:700;display:grid;place-items:center;font-family:var(--f-mono)}
.menu-btn{display:none}
@media (max-width:980px){
  .menu-btn{display:inline-grid}
  .nav{position:absolute;left:0;right:0;top:100%;margin:0;padding:10px var(--gut) 16px;background:var(--hd-panel);border-bottom:1px solid var(--hd-rule);flex-direction:column;align-items:stretch;gap:2px;display:none;box-shadow:var(--shadow)}
  .nav-open .nav{display:flex}
  .nav a{padding:12px;font-size:16px}
  .nav-sep{display:block;height:1px;background:var(--hd-rule);margin:8px 0 6px}
  .nav a.nav-info{display:flex;font-size:15px;color:var(--hd-fg2)}
  .cl-sum i{display:none}
}
@media (max-width:420px){.cl-sum{display:none}.hd{gap:10px}}

/* ---------- footer ---------- */
.pg-home .site-footer,.pg-contacts .site-footer{margin-top:0}
.site-footer{margin-top:72px;background:var(--ft-bg);border-top:1px solid var(--ft-rule);padding-block:44px 28px;font-size:14px;color:var(--ft-fg)}
.ft-grid{display:grid;gap:32px;grid-template-columns:1.4fr 1fr 1.2fr 1fr}
.ft-about p{margin-top:14px;max-width:38ch}
.ft-about .age{color:var(--ft-mute);font-size:13px}
.ft-col h2{font-family:var(--f-ui);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--ft-mute);font-weight:600;margin:0 0 12px}
.ft-col ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ft-col a{color:var(--ft-fg);text-decoration:none}
.ft-col a:hover{color:var(--ft-link-h);text-decoration:underline}
.ft-h2b{margin-top:22px!important}
.ft-contacts a{display:inline-flex;gap:8px;align-items:center}
.ft-contacts .ft-plain{color:var(--ft-mute);max-width:30ch}
.ft-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:34px;padding-top:18px;border-top:1px solid var(--ft-rule);color:var(--ft-mute);font-size:13px}
@media (max-width:900px){.ft-grid{grid-template-columns:1fr 1fr}.ft-about{grid-column:1/-1}}
@media (max-width:520px){.ft-grid{grid-template-columns:1fr}}
html.has-bar .site-footer{padding-bottom:104px}

/* ---------- page head / crumbs ---------- */
.crumbs{padding-top:22px;font-size:13px;color:var(--mute)}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 8px}
.crumbs li+li::before{content:"/";margin-right:8px;color:var(--rule)}
.crumbs a{color:var(--mute);text-decoration:none}
.crumbs a:hover{color:var(--accent-t);text-decoration:underline}
.page-head{padding-block:18px 26px;display:grid;gap:12px}
.page-head .kicker{margin:0}
.more{margin-top:28px;text-align:center}
.sec{padding-block:68px}
.sec-alt{background:var(--bg2);border-block:1px solid var(--rule)}
.sec-h{display:grid;gap:8px;margin-bottom:32px;max-width:68ch}
.sec-lead{color:var(--ink2);font-size:17px}
.narrow-block{max-width:780px;margin:56px 0 0}
.narrow-block h2{margin-bottom:18px}
.sec-in{margin-top:56px}
.sec-in>h2{margin-bottom:22px}
.two{display:grid;gap:56px;grid-template-columns:1fr 1fr;align-items:center}
@media (max-width:860px){.two{grid-template-columns:1fr;gap:32px}.sec{padding-block:48px}}

/* ---------- hero ---------- */
.hero{padding-block:44px 56px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:-20% -10% auto auto;width:70%;height:120%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center;position:relative}
.hero-copy{display:grid;gap:22px;justify-items:start}
.hero h1{font-size:var(--h1-hero)}
.h1-sub{display:block;color:var(--accent-t);font-style:var(--sub-style);font-weight:var(--sub-weight);margin-top:8px;font-size:.62em;letter-spacing:0}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.hero .btn-ghost{background:var(--card)}
.hero-facts{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;color:var(--ink2);font-size:14px}
.hero-facts b{font-family:var(--f-mono);font-weight:600;color:var(--ink)}
@media (max-width:960px){.hero-grid{grid-template-columns:1fr;gap:36px}.hero{padding-block:28px 40px}}

/* ---------- slip (receipt card) ---------- */
.slip{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px;display:grid;gap:14px}
.slip-h{display:flex;justify-content:space-between;align-items:center;gap:12px;font-family:var(--f-mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--mute)}
.slip-tag{background:var(--accent-soft);color:var(--accent-t);padding:3px 9px;border-radius:999px;font-weight:600;letter-spacing:.04em}
.slip-title{font-family:var(--f-display);font-weight:var(--w-display);font-size:21px;line-height:1.2;letter-spacing:calc(var(--ls-display) / 2)}
.slip-rows{margin:0;display:grid;gap:9px}
.slip-rows>div{display:flex;justify-content:space-between;gap:16px;align-items:baseline;font-size:15px}
.slip-rows dt{color:var(--ink2)}
.slip-rows dd{margin:0;font-family:var(--f-mono);font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}
.slip-rows .save dd{color:var(--save)}
.slip-rows .strong{font-size:17px;font-weight:600}
.slip-rows .strong dt{color:var(--ink);font-weight:600}
.slip-rows .good dd,.slip-rows .good dt{color:var(--good);font-weight:600}
hr.dash{border:0;border-top:1.5px dashed var(--rule);margin:0}
.slip-foot{font-size:13px;color:var(--mute);line-height:1.5}

/* ---------- trust ---------- */
.trust{border-block:1px solid var(--rule);background:var(--card)}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.trust-grid>div{padding:22px 22px 22px 0;display:grid;gap:4px;align-content:start}
.trust-grid>div+div{padding-left:22px;border-left:1px solid var(--rule)}
.trust-grid b{font-family:var(--f-display);font-size:18px;font-weight:var(--w-display);letter-spacing:calc(var(--ls-display) / 2)}
.trust-grid span{font-size:14px;color:var(--mute);line-height:1.45}
@media (max-width:900px){.trust-grid{grid-template-columns:1fr 1fr}.trust-grid>div{padding:18px 16px 18px 0!important;border-left:0!important}.trust-grid>div:nth-child(even){padding-left:16px!important;border-left:1px solid var(--rule)!important}.trust-grid>div:nth-child(n+3){border-top:1px solid var(--rule)}}
@media (max-width:520px){.trust-grid{grid-template-columns:1fr}.trust-grid>div{padding:14px 0!important;border-left:0!important}.trust-grid>div+div{border-top:1px solid var(--rule)}}

/* ---------- brand cards ---------- */
.brand-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.brand-card{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:22px;display:grid;gap:16px;align-content:start;box-shadow:var(--shadow-s)}
.bc-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.bc-top h3{font-size:26px}
.bc-top a{color:var(--ink);text-decoration:none}
.bc-tag{color:var(--ink2);font-size:15px;min-height:46px}
.bc-stats{margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px 0;border-block:1px dashed var(--rule)}
.bc-stats dt{font-size:11px;font-family:var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.bc-stats dd{margin:2px 0 0;font-family:var(--f-mono);font-weight:600;font-size:17px;font-variant-numeric:tabular-nums}
@media (max-width:1000px){.brand-grid{grid-template-columns:1fr}.bc-tag{min-height:0}}

/* ---------- tier table ---------- */
.tier-table{display:grid;gap:8px}
.tt-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.2fr) auto;gap:10px;align-items:center;padding:9px 12px;border-radius:9px;font-size:14px}
.tt-0{background:var(--t1);color:var(--on-t1)}
.tt-1{background:var(--t2);color:var(--on-t2)}
.tt-2{background:var(--t3);color:var(--on-t3)}
.tier-table .tt-row:only-child{background:var(--accent-soft);color:var(--ink)}
.tt-name{font-weight:600;display:flex;align-items:center;gap:8px}
.tt-dot{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.8}
.tt-min{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.tt-hint{font-family:var(--f-mono);font-size:12px;opacity:.85}

/* ---------- steps / ladder demo ---------- */
.steps{list-style:none;counter-reset:s;margin:18px 0 26px;padding:0;display:grid;gap:14px}
.steps li{counter-increment:s;position:relative;padding-left:48px;color:var(--ink2)}
.steps li::before{content:counter(s);position:absolute;left:0;top:-2px;width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent-t);font-family:var(--f-mono);font-weight:600;display:grid;place-items:center}
.steps b{color:var(--ink)}
.ladder-demo{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:24px;display:grid;gap:14px;box-shadow:var(--shadow-s)}
.ld-title{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.ld-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:14px;align-items:center}
.ld-name{font-weight:600;font-size:14px;display:grid;line-height:1.25}
.ld-name small{font-weight:400;color:var(--mute);font-family:var(--f-mono);font-size:11px}
.ld-bar{height:26px;background:var(--rule2);border-radius:7px;overflow:hidden}
.ld-bar i{display:block;height:100%;border-radius:7px}
.ld-0 .ld-bar i{background:var(--t1)}.ld-1 .ld-bar i{background:var(--t2)}.ld-2 .ld-bar i{background:var(--t3)}
.ld-row b{font-family:var(--f-mono);font-size:17px;font-variant-numeric:tabular-nums}
.ld-foot{font-size:13px;color:var(--mute);border-top:1px dashed var(--rule);padding-top:12px}
@media (max-width:480px){.ld-row{grid-template-columns:96px minmax(0,1fr) auto;gap:10px}}

/* ---------- category tiles / cta ---------- */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.cat-tile{display:grid;gap:4px;padding:18px;border:1px solid var(--rule);border-radius:var(--r);background:var(--card);text-decoration:none;color:var(--ink);transition:border-color .15s,transform .15s,box-shadow .15s}
.cat-tile:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow);color:var(--ink)}
.cat-tile b{font-family:var(--f-display);font-size:19px;font-weight:var(--w-display);letter-spacing:calc(var(--ls-display) / 2)}
.ct-brand{font-family:var(--f-mono);font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--accent-t)}
.ct-meta{font-size:13px;color:var(--mute)}
.cta-band{background:var(--band-bg);color:var(--band-fg);margin-top:0}
.cta-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding-block:52px}
.cta-band h2{color:var(--band-fg);font-size:clamp(26px,3vw,36px)}
.cta-band p{color:color-mix(in srgb,var(--band-fg) 82%,transparent);margin-top:8px;max-width:52ch}
.cta-btns{display:flex;flex-wrap:wrap;gap:12px}
.cta-band .btn-primary{background:var(--band-btn);color:var(--band-btn-fg)}
.cta-band .btn-primary:hover{background:color-mix(in srgb,var(--band-btn) 88%,var(--band-bg));color:var(--band-btn-fg)}
.cta-band .btn-ghost{color:var(--band-fg);border-color:color-mix(in srgb,var(--band-fg) 40%,transparent)}
.cta-band .btn-ghost:hover{color:var(--band-fg);border-color:var(--band-fg)}

/* ---------- FAQ ---------- */
.faq{border-top:1px solid var(--ink)}
.faq details{border-bottom:1px solid var(--rule)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;cursor:pointer;font-weight:600;font-size:17px;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ico{transition:transform .2s;color:var(--mute)}
.faq details[open] summary .ico{transform:rotate(180deg)}
.faq-a{padding:0 0 20px;color:var(--ink2);max-width:70ch}
.faq-a p+p{margin-top:8px}

/* ==========================================================================
   catalog: cards, filters
   ========================================================================== */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(252px,1fr));gap:18px;align-items:stretch}
.card{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-s);transition:box-shadow .2s,border-color .2s,transform .2s;min-width:0}
.card:hover{box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--accent) 38%,var(--rule))}
.card.in-cart{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),var(--shadow-s)}
.card-media{position:relative;display:grid;place-items:center;aspect-ratio:4/3.1;background:var(--photo);overflow:hidden;border-bottom:1px solid var(--rule2);text-decoration:none}
.card-media img{width:auto;height:auto;max-width:74%;max-height:80%;object-fit:contain;mix-blend-mode:multiply;transition:transform .35s ease}
.card:hover .card-media img{transform:scale(1.04)}
.ribbon{position:absolute;left:10px;top:10px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;font-weight:600;background:var(--accent-soft);color:var(--accent-t);padding:4px 9px;border-radius:999px;z-index:1}
.ribbon-new{background:var(--save-bg);color:var(--save);left:auto;right:10px}
.card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}
.eyebrow{display:flex;flex-wrap:wrap;gap:2px 8px;margin:0}
.eyebrow>:not(:last-child)::after{content:"·";margin-left:8px;opacity:.6}
.eyebrow a{color:var(--mute);text-decoration:none}
.eyebrow a:hover{color:var(--accent-t)}
.card-title{font-size:21px;line-height:1.14}
.card-title a{color:var(--ink);text-decoration:none}
.card-title a:hover{color:var(--accent-t)}
.card-title a::after{content:"";position:absolute;inset:0;z-index:0}
.card-ru{font-size:13px;color:var(--mute);margin-top:-2px}
.pricebox{margin-top:8px;padding-top:12px;border-top:1px dashed var(--rule);display:grid;gap:10px}
.now{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.now .lbl{font-size:12px;color:var(--mute)}
.amt b{font-size:25px;font-weight:600;letter-spacing:-.02em}
.amt i{font-style:normal;font-size:12px;color:var(--mute);margin-left:4px}
.ladder{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;container-type:inline-size}
@container (max-width:235px){.ladder .tl-x{display:none}}
.ladder li{display:grid;gap:1px;padding:6px 4px;border-radius:8px;background:var(--rule2);font-size:11px;color:var(--mute);text-align:center;transition:background .2s,color .2s;line-height:1.2}
.ladder li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ladder li b{font-family:var(--f-mono);font-size:12.5px;color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}
.ladder li.on[data-k="0"]{background:var(--t1);color:var(--on-t1)}
.ladder li.on[data-k="1"]{background:var(--t2);color:var(--on-t2)}
.ladder li.on[data-k="2"]{background:var(--t3);color:var(--on-t3)}
.ladder li.on b{color:inherit}
.rrp{font-size:13px;color:var(--ink2)}
.rrp b{font-family:var(--f-mono);font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.rrp .js-mmargin{color:var(--good)}
.anat{height:6px;border-radius:99px;background:var(--good-bg);position:relative;overflow:hidden}
.anat i{position:absolute;inset:0 auto 0 0;width:var(--pay,50%);background:var(--t2);border-radius:99px;transition:width .35s ease}
.vrows{margin-top:auto;display:grid;grid-template-columns:minmax(0,1fr);gap:4px;padding-top:12px;position:relative;z-index:1}
.vrow{display:flex;align-items:center;gap:8px;min-height:40px;min-width:0}
.vname{flex:1;min-width:0;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:760px){.vrow{flex-wrap:wrap;row-gap:4px}.vname{flex:1 1 56px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2;font-size:13px}.vrow .qty{margin-left:auto}}
.vprice{font-size:13px;color:var(--ink2)}
.sw{--c:var(--rule);width:20px;height:20px;border-radius:50%;background:var(--c);border:2px solid var(--card);box-shadow:0 0 0 1px var(--rule);padding:0;flex:none;display:inline-block}
button.sw:hover{box-shadow:0 0 0 2px var(--accent)}
.sw-s{width:12px;height:12px;border-width:0}
.qty{display:inline-flex;align-items:center;border:1px solid var(--rule);border-radius:9px;background:var(--bg);overflow:hidden;flex:none;transition:border-color .15s,background .15s}
.qty button{width:34px;height:36px;border:0;background:transparent;font-size:19px;line-height:1;color:var(--ink2);padding:0}
.qty button:hover{background:var(--accent-soft);color:var(--accent-t)}
.qty input{width:42px;height:36px;border:0;background:transparent;text-align:center;font-family:var(--f-mono);font-size:14px;font-weight:500;font-variant-numeric:tabular-nums;padding:0;-moz-appearance:textfield;border-radius:0}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.qty.has{border-color:var(--accent);background:var(--accent-soft)}
.qty.has input{color:var(--accent-t);font-weight:600}
@media (pointer:coarse){.qty button{width:38px;height:42px}.qty input{height:42px;width:42px}}
.ph{width:100%;height:100%;min-height:140px;display:grid;place-content:center;justify-items:center;gap:6px;color:var(--accent-t);background:linear-gradient(160deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 25%,var(--photo)))}
.glyph{width:64px;height:64px;opacity:.8}
.ph-brand{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.ph-note{font-size:11px;color:var(--mute)}
@media (max-width:560px){
  .grid{grid-template-columns:1fr;gap:12px}
  .card{display:grid;grid-template-columns:112px minmax(0,1fr)}
  .card-media{aspect-ratio:auto;min-height:100%;border-bottom:0;border-right:1px solid var(--rule2)}
  .card-media img{max-width:84%}
  .ribbon{left:6px;top:6px;font-size:9.5px;padding:3px 7px}
  .ribbon-new{right:6px;left:auto}
  .card-body{padding:12px 14px 14px}
  .card-title{font-size:19px}
}

/* ---------- shop layout + filters ---------- */
.shop{display:grid;grid-template-columns:268px minmax(0,1fr);gap:34px;align-items:start}
.filters{position:sticky;top:84px;max-height:calc(100vh - 100px);overflow:auto;padding:4px 6px 4px 0;scrollbar-width:thin}
.f-head{display:none}
.f-foot{display:none}
.f-group{border:0;padding:0;margin:0 0 22px;min-width:0}
.f-group legend,.f-legend{display:block;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--mute);margin:0 0 8px;padding:0;font-weight:500}
.f-sub{margin:12px 0 2px;font-weight:600;font-size:13px;color:var(--ink)}
.f-search{display:flex;align-items:center;gap:8px;border:1px solid var(--rule);border-radius:var(--r);padding:0 12px;background:var(--card);min-height:46px}
.f-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.f-search .ico{color:var(--mute);width:18px;height:18px}
.f-search input{border:0;background:transparent;width:100%;min-width:0;outline:none;font-size:15px;padding:10px 0}
.chk{display:flex;align-items:center;gap:10px;padding:6px 0;cursor:pointer;font-size:14.5px;line-height:1.3}
.chk input{appearance:none;-webkit-appearance:none;margin:0;width:18px;height:18px;border:1.5px solid var(--mute);border-radius:5px;background:var(--card);display:grid;place-content:center;flex:none;cursor:pointer;transition:background .12s,border-color .12s}
.chk input:checked{background:var(--accent);border-color:var(--accent)}
.chk input:checked::after{content:"";width:9px;height:5px;border:2px solid var(--accent-ink);border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.chk span{flex:1;min-width:0}
.chk small{font-family:var(--f-mono);color:var(--mute);font-size:12px}
.chk.dim{opacity:.45}
.f-range{display:flex;align-items:center;gap:8px}
.f-range input{width:100%;min-width:0;border:1px solid var(--rule);border-radius:var(--r);padding:10px 12px;background:var(--card);font-family:var(--f-mono);font-size:14px;min-height:42px}
.f-range input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.f-range span{color:var(--mute)}
.f-hint{font-size:12px;color:var(--mute);margin-top:6px;line-height:1.4}
input[type=range]{width:100%;accent-color:var(--accent)}
output{font-family:var(--f-mono)}
.toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.count{margin-right:auto;color:var(--ink2);font-size:15px}
.count b{font-family:var(--f-mono)}
.sort{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--mute)}
.sort select{border:1px solid var(--rule);border-radius:var(--r);background:var(--card);padding:9px 34px 9px 12px;min-height:42px;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--mute) 50%),linear-gradient(135deg,var(--mute) 50%,transparent 50%);background-position:calc(100% - 17px) 18px,calc(100% - 12px) 18px;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer;color:var(--ink)}
.filters-btn{display:none}
.f-n{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:11px;font-family:var(--f-mono);padding:0 5px}
.activef{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.af{display:inline-flex;align-items:center;gap:6px;padding:5px 7px 5px 12px;background:var(--accent-soft);color:var(--accent-t);border-radius:999px;font-size:13px;border:0;font-weight:500}
.af i{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:color-mix(in srgb,var(--accent) 18%,transparent);font-style:normal;font-size:13px;line-height:1}
.empty{padding:48px 20px;text-align:center;color:var(--mute);border:1px dashed var(--rule);border-radius:var(--r-lg)}
.catchips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.catchips a{display:inline-flex;gap:8px;align-items:center;padding:8px 14px;border:1px solid var(--rule);border-radius:999px;text-decoration:none;color:var(--ink2);font-size:14px;background:var(--card);transition:border-color .15s}
.catchips a small{font-family:var(--f-mono);color:var(--mute);font-size:12px}
.catchips a:hover{border-color:var(--accent);color:var(--accent-t)}
.catchips a[aria-current="page"]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.catchips a[aria-current="page"] small{color:inherit;opacity:.8}
.bpanel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:30px;margin:0 0 30px;padding:22px;background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg)}
.bp-tiers h2{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin:0 0 12px;font-weight:500}
.bp-facts{margin:0;padding-left:18px;display:grid;gap:9px;color:var(--ink2);font-size:15px;align-content:start}
.bp-facts b{color:var(--ink)}
.seo{margin-top:60px;border-top:1px solid var(--rule);padding-top:8px}
@media (max-width:960px){
  .bpanel{grid-template-columns:1fr}
  .shop{grid-template-columns:1fr}
  .filters-btn{display:inline-flex}
  .sheet-bg{position:fixed;inset:0;background:var(--scrim);z-index:60;opacity:0;pointer-events:none;transition:opacity .2s;display:block}
  .shop.f-open .sheet-bg{opacity:1;pointer-events:auto}
  .filters{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:70;max-height:88vh;max-height:88dvh;background:var(--bg);border-radius:18px 18px 0 0;border:1px solid var(--rule);border-bottom:0;padding:0;transform:translateY(105%);visibility:hidden;transition:transform .28s ease,visibility 0s .28s;display:flex;flex-direction:column;overflow:hidden}
  .shop.f-open .filters{transform:none;visibility:visible;transition:transform .28s ease}
  .f-head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--rule)}
  .f-head h2{font-size:20px}
  .f-body{overflow:auto;padding:18px 18px 8px;flex:1}
  .f-foot{display:block;padding:12px 18px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--rule);background:var(--bg)}
}
@media (min-width:961px){.sheet-bg{display:none!important}}

/* ==========================================================================
   product page
   ========================================================================== */
.pdp{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:44px;padding-block:14px 0;align-items:start}
.pdp-media{position:sticky;top:88px}
.stage{position:relative;background:var(--photo);border:1px solid var(--rule);border-radius:var(--r-lg);aspect-ratio:1/1;display:grid;place-items:center;overflow:hidden}
.stage img{width:auto;height:auto;max-width:72%;max-height:72%;object-fit:contain;mix-blend-mode:multiply}
.stage .ph{min-height:0}
.stage .glyph{width:96px;height:96px}
.thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.thumb{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 8px;border:1px solid var(--rule);border-radius:999px;background:var(--card);font-size:13px;color:var(--ink2)}
.thumb:hover{border-color:var(--accent)}
.thumb.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-t);font-weight:600}
.pdp-info{display:grid;gap:18px;min-width:0}
.pdp-info h1{font-size:clamp(30px,3.6vw,46px)}
.pdp-ru{color:var(--mute);font-size:17px;margin-top:-10px}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.chips li{padding:4px 11px;border-radius:999px;background:var(--bg2);border:1px solid var(--rule);font-size:12.5px;color:var(--ink2)}
.pdp-buy{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:18px;display:grid;gap:14px;box-shadow:var(--shadow-s);min-width:0}
.matrix-wrap{overflow-x:auto;margin:0 -4px;padding:0 4px}
.matrix{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
.matrix th,.matrix td{padding:10px 10px;border-bottom:1px solid var(--rule2);text-align:left;vertical-align:middle}
.matrix tbody tr:last-child th,.matrix tbody tr:last-child td{border-bottom:0}
.matrix thead th{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);font-weight:500;border-bottom:1px solid var(--rule);vertical-align:bottom}
.matrix thead th span{display:block}
.matrix thead th small{display:block;text-transform:none;letter-spacing:0;font-size:11px;opacity:.85;font-weight:400}
.matrix .num{text-align:right;font-family:var(--f-mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.matrix thead .num{font-family:var(--f-mono)}
.matrix th[scope=row]{font-weight:500;font-family:var(--f-ui)}
.matrix .vcell{display:flex;align-items:center;gap:10px}
.vcell small{display:block;color:var(--mute);font-size:12px;font-weight:400}
.matrix .tp{transition:background .2s}
.matrix .tp.on{background:var(--accent-soft)}
.matrix thead .tp.on{color:var(--accent-t);font-weight:600}
.matrix td.tp.on{font-weight:600;color:var(--ink)}
.matrix .js-margin,.pricelist .js-margin{color:var(--good);font-weight:600}
.qcol{text-align:right!important;width:1%;white-space:nowrap}
.pdp-note{font-size:13px;color:var(--mute)}
.pdp-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pdp-feat h2{font-size:20px;margin-bottom:10px}
.feat{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.feat li{position:relative;padding-left:26px;color:var(--ink2)}
.feat li::before{content:"";position:absolute;left:2px;top:.5em;width:12px;height:7px;border:2px solid var(--accent);border-top:0;border-right:0;transform:rotate(-45deg)}
.pdp-terms{margin:0;display:grid;gap:0;border-top:1px solid var(--rule)}
.pdp-terms>div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid var(--rule);font-size:14px}
.pdp-terms dt{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);padding-top:2px}
.pdp-terms dd{margin:0;color:var(--ink2)}
.pdp-terms-more{margin:10px 0 0;font-size:13px;color:var(--mute)}
.tierbox{padding:12px 14px;border-radius:var(--r);background:var(--bg2);border:1px solid var(--rule);display:grid;gap:9px;font-size:14px}
.tb-top{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.tb-sum{font-family:var(--f-mono);font-size:13px;color:var(--ink2)}
.tier-chip{display:inline-flex;align-items:center;gap:8px;padding:3px 11px;border-radius:999px;font-weight:600;font-size:13px;white-space:nowrap}
.tier-chip[data-k="0"]{background:var(--t1);color:var(--on-t1)}
.tier-chip[data-k="1"]{background:var(--t2);color:var(--on-t2)}
.tier-chip[data-k="2"]{background:var(--t3);color:var(--on-t3)}
.prog{font-size:13px;color:var(--ink2)}
.prog-bar{height:8px;background:var(--rule);border-radius:99px;overflow:hidden;margin-top:7px}
.prog-bar i{display:block;height:100%;width:0;background:var(--t2);border-radius:99px;transition:width .3s ease}
.prog .gain{color:var(--good);font-weight:600}
.prog b{font-family:var(--f-mono)}
@media (max-width:900px){.pdp{grid-template-columns:1fr;gap:24px}.pdp-media{position:static}.stage{aspect-ratio:4/3}.stage img{max-height:78%}}

/* ==========================================================================
   brand tabs, cards / table switch, price-list table
   ========================================================================== */
.btabs{display:flex;gap:2px;margin:0 0 26px;border-bottom:1px solid var(--rule);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.btabs::-webkit-scrollbar{display:none}
.btabs a{display:inline-flex;align-items:baseline;gap:8px;padding:13px 18px 12px;margin-bottom:-1px;border-bottom:3px solid transparent;color:var(--ink2);font-weight:600;font-size:16px;text-decoration:none;white-space:nowrap;transition:color .15s,border-color .15s}
.btabs a small{font-family:var(--f-mono);font-size:12px;font-weight:500;color:var(--mute)}
.btabs a:hover{color:var(--accent-t)}
.btabs a[aria-current]{color:var(--accent-t);border-bottom-color:var(--accent)}
.btabs a[aria-current] small{color:inherit;opacity:.8}
.dl-row{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 20px}
.seg{display:inline-flex;border:1px solid var(--rule);border-radius:var(--r);background:var(--card);padding:3px;gap:2px;flex-wrap:wrap;position:relative}
.seg button,.seg-i span{display:inline-block;padding:8px 15px;border:0;border-radius:8px;background:transparent;font-size:14px;font-weight:500;color:var(--ink2);cursor:pointer}
.seg button:hover,.seg-i span:hover{color:var(--accent-t)}
.seg button.on,.seg-i input:checked+span{background:var(--accent);color:var(--accent-ink)}
.seg-i{display:inline-block;position:relative}
.seg-i input{position:absolute;opacity:0;pointer-events:none}
.seg-i input:focus-visible+span{outline:2px solid var(--focus);outline-offset:1px}
.view-seg{visibility:hidden}
.view-seg.ready{visibility:visible}
.view-seg button{min-height:36px}
@media (max-width:560px){
  .btabs{margin-bottom:18px}
  .btabs a{padding:12px 13px 11px;font-size:15px}
  .toolbar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center}
  .filters-btn{grid-column:1;grid-row:1}
  .view-seg{grid-column:2;grid-row:1;justify-self:end}
  .toolbar .count{grid-column:1;grid-row:2;margin:0}
  .toolbar .sort{grid-column:2;grid-row:2;justify-self:end}
  .toolbar .sort>span{display:none}
}
@media (max-width:440px){.btabs a small{display:none}}
.plist{display:none}
.shop.v-table .plist,html.pref-table .shop:not(.v-cards) .plist{display:block}
.shop.v-table #grid,html.pref-table .shop:not(.v-cards) #grid{display:none}
.pl-brand{margin-bottom:44px}
.pl-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px 24px;margin-bottom:12px}
.pl-head h2 a{color:var(--ink);text-decoration:none}
.pl-head p{color:var(--mute);font-size:14px}
.table-scroll{overflow-x:auto;border:1px solid var(--rule);border-radius:var(--r-lg);background:var(--card)}
.pricelist{width:100%;border-collapse:collapse;font-size:14px;min-width:780px}
.pricelist th,.pricelist td{padding:9px 12px;border-bottom:1px solid var(--rule2);text-align:left;vertical-align:middle}
.pricelist tbody tr:last-child th,.pricelist tbody tr:last-child td{border-bottom:0}
.pricelist thead th{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);font-weight:500;background:var(--bg2);border-bottom:1px solid var(--rule);white-space:nowrap}
.pricelist .num{text-align:right;font-family:var(--f-mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.pricelist .tp{transition:background .2s}
.pricelist .tp.on{background:var(--accent-soft)}
.pricelist thead .tp.on{color:var(--accent-t);font-weight:600}
.pricelist td.tp.on{font-weight:600}
.pricelist tbody tr:hover{background:color-mix(in srgb,var(--accent-soft) 45%,transparent)}
.pricelist tr.in-cart{background:color-mix(in srgb,var(--accent-soft) 70%,transparent)}
.c-ph{width:56px;padding-right:0!important}
.c-ph img,.ph-mini{width:42px;height:42px;object-fit:contain;background:var(--photo);border-radius:8px;display:grid;place-items:center;border:1px solid var(--rule2)}
.ph-mini{color:var(--accent-t);background:var(--accent-soft)}
.ph-mini .glyph{width:24px;height:24px}
.pricelist th[scope=row]{font-weight:500;font-family:var(--f-ui)}
.pricelist th[scope=row] a{font-weight:600;color:var(--ink);text-decoration:none}
.pricelist th[scope=row] a:hover{color:var(--accent-t)}
.pricelist th[scope=row] small{display:block;color:var(--mute);font-weight:400;font-size:12.5px}
.pl-cat{display:block;color:var(--mute);font-size:11.5px;font-weight:400}
.pl-brand .tierbox{margin-top:12px}

/* ==========================================================================
   cart page
   ========================================================================== */
.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 376px;grid-template-areas:"main side" "check side";column-gap:28px;align-items:start}
.cart-main{grid-area:main;min-width:0}
.checkout{grid-area:check;min-width:0}
.cart-empty{padding:44px 28px;border:1px dashed var(--rule);border-radius:var(--r-lg);background:var(--card);display:grid;gap:12px;justify-items:start}
.cart-empty .ce-t{font-family:var(--f-display);font-size:26px;font-weight:var(--w-display);letter-spacing:var(--ls-display)}
.cart-empty p{color:var(--ink2);max-width:60ch}
.ce-b{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.cs{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);margin-bottom:20px;box-shadow:var(--shadow-s);overflow:hidden}
.cs-h{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--rule);flex-wrap:wrap}
.cs-h-l{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cs-h h2{font-size:26px}
.cs-h-r{font-family:var(--f-mono);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}
.cs-h-r i{font-style:normal;font-size:13px;color:var(--mute);font-weight:400}
.cs .tierbox{margin:16px 20px 0}
.cs-note{margin:14px 20px 0;padding:10px 12px;background:var(--save-bg);color:var(--save);border-radius:var(--r);font-size:13.5px}
.lines{--cols:50px minmax(0,1.45fr) 120px minmax(84px,1fr) minmax(112px,1.05fr) minmax(104px,1fr) minmax(88px,1fr);padding:6px 20px 8px}
.lh{display:grid;grid-template-columns:var(--cols);column-gap:12px;padding:10px 0 8px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--mute)}
.lh span:nth-child(n+4){text-align:left}
.ln{display:grid;grid-template-columns:var(--cols);column-gap:12px;align-items:start;padding:14px 0;border-top:1px solid var(--rule2)}
.ln-ph{display:block}
.ln-ph img,.ln-ph .ph-mini{width:50px;height:50px;object-fit:contain;background:var(--photo);border-radius:9px;border:1px solid var(--rule2);display:grid;place-items:center}
.ln-t{min-width:0;display:grid;gap:3px;align-content:start}
.ln-t a{font-weight:600;color:var(--ink);text-decoration:none;line-height:1.25}
.ln-t a:hover{color:var(--accent-t)}
.ln-v{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--mute)}
.ln-q{display:grid;gap:6px;justify-items:start}
.lnx{border:0;background:transparent;color:var(--mute);font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:2px 0;cursor:pointer}
.lnx:hover{color:var(--bad)}
.ln-stats{display:contents}
.ln-c{min-width:0}
.ln-c::before{display:none}
.ln-c b{display:block;font-family:var(--f-mono);font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.ln-c small{display:block;font-size:11.5px;color:var(--mute);margin-top:3px;line-height:1.35}
.ln-c .good{color:var(--good)}
.ln-c .neg{color:var(--bad)}
.ln-c .save{color:var(--save)}
.rrp-in{width:100%;border:1px solid var(--rule);border-radius:8px;padding:6px 8px;font-family:var(--f-mono);font-size:14px;background:var(--bg);text-align:right;min-height:36px;min-width:0}
.rrp-in:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.rrp-in.custom{border-color:var(--accent);background:var(--accent-soft)}
.rrp-in.empty-rrp{border-style:dashed}
.ln-s{text-align:left}
.cs-tot{margin:6px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));background:var(--bg2);border-top:1px solid var(--rule)}
.cs-tot>div{display:grid;gap:2px;padding:13px 20px;border-right:1px solid var(--rule2);border-bottom:1px solid var(--rule2);align-content:start}
.cs-tot dt{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--mute)}
.cs-tot dd{margin:0;font-family:var(--f-mono);font-variant-numeric:tabular-nums;font-size:17px;font-weight:600}
.cs-tot dd small{display:block;font-size:11.5px;font-weight:400;color:var(--mute);font-family:var(--f-ui);margin-top:2px}
.cs-tot .good dd{color:var(--good)}
.cs-tot .save dd{color:var(--save)}
@media (max-width:1100px){.cart-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "side" "check"}.cart-side{position:static!important;max-height:none!important;margin-bottom:24px}}
@media (max-width:820px){
  .lines{padding:4px 16px 6px}
  .lh{display:none}
  .ln{grid-template-columns:50px minmax(0,1fr) auto;grid-template-areas:"ph t s" "ph q q" "st st st";gap:8px 12px}
  .ln-ph{grid-area:ph}.ln-t{grid-area:t}.ln-s{grid-area:s;text-align:right}.ln-q{grid-area:q;grid-auto-flow:column;align-items:center;justify-content:start;gap:14px}
  .ln-stats{grid-area:st;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:8px;border-top:1px dashed var(--rule)}
  .ln-c::before{display:block;content:attr(data-l);font-family:var(--f-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);margin-bottom:3px}
  .ln-s::before{display:none!important}
  .ln-c b{font-size:14px}
  .cs-h{padding:14px 16px}.cs .tierbox{margin:14px 16px 0}.cs-tot>div{padding:12px 16px}
}
.cart-side{grid-area:side;position:sticky;top:84px;align-self:start;max-height:calc(100vh - 100px);overflow:auto;scrollbar-width:thin}
.order{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);box-shadow:var(--shadow)}
.order .slip-h{padding:14px 18px;border-bottom:1px dashed var(--rule)}
.order .slip-h h2{font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--mute)}
.slip-s{padding:16px 18px;border-bottom:1px dashed var(--rule)}
.slip-s:last-child{border-bottom:0}
.slip-s h3{font-size:18px;margin-bottom:12px}
.sb-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:5px 0;font-size:14px}
.sb-row .tier-chip{padding:2px 9px;font-size:12px}
.sb-row b{font-family:var(--f-mono);font-variant-numeric:tabular-nums;font-weight:600}
.sb-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sum-big{font-family:var(--f-display);font-size:38px;font-weight:var(--w-display);line-height:1.1;letter-spacing:var(--ls-display)}
.sum-big small{font-size:15px;font-weight:400;color:var(--mute);margin-left:4px;font-family:var(--f-ui)}
.tot{display:grid;gap:7px;font-size:14px;margin:10px 0 0}
.tot>div{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.tot dt{color:var(--ink2)}
.tot dd{margin:0;font-family:var(--f-mono);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}
.tot .save dd{color:var(--save);font-weight:600}
.tot .good dd,.tot .good dt{color:var(--good);font-weight:600}
.tot .sep{border-top:1px dashed var(--rule);padding-top:8px;margin-top:2px}
.tot .prep dt,.tot .prep dd{color:var(--ink);font-weight:600}
.tot .hint dt{font-size:12.5px;color:var(--mute)}
.tot .hint dd{font-size:12.5px;color:var(--mute)}
.sc-label{display:block;font-size:14px;margin-bottom:8px}
.sc-res{margin-top:8px;font-size:13px;color:var(--ink2)}
.sc-res b{font-family:var(--f-mono)}
.form{display:grid;gap:10px}
.fld{display:grid;gap:4px;min-width:0}
.fld label{font-size:12px;color:var(--mute)}
.fld input,.fld select,.fld textarea{border:1px solid var(--rule);background:var(--bg);border-radius:var(--r);padding:10px 12px;min-width:0;width:100%;font-size:15px;min-height:44px}
.fld textarea{resize:vertical;min-height:62px}
.fld input:focus,.fld textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.fld .err{color:var(--bad);font-size:12px}
.fld.bad input{border-color:var(--bad)}
.actions{display:grid;gap:10px}
.act-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.fine{font-size:12.5px;color:var(--mute);line-height:1.5}
.side-fine{margin-top:10px;padding:0 4px}
.preview{width:100%;min-height:150px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,'Liberation Mono',monospace;font-size:12px;line-height:1.45;border:1px solid var(--rule);border-radius:var(--r);background:var(--bg);padding:10px;resize:vertical}
.msg-prev summary{cursor:pointer;font-size:13px;color:var(--mute);padding:4px 0}
.msg-prev[open] summary{margin-bottom:8px}
.kp{display:none}

/* ==========================================================================
   builder (start page)
   ========================================================================== */
.b-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px 22px;align-items:end;padding:22px;background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);box-shadow:var(--shadow-s)}
.b-f{border:0;padding:0;margin:0;min-width:0}
.b-f legend{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--mute);margin:0 0 8px;padding:0}
.b-budget{width:100%;min-height:50px;border:1px solid var(--rule);border-radius:var(--r);padding:0 14px;font-family:var(--f-mono);font-size:22px;font-weight:500;background:var(--bg)}
.b-budget:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.b-presets{display:flex;gap:6px;flex-wrap:wrap;grid-column:1/-1}
.b-modes{grid-column:1/-1;margin:-6px 0 0;font-size:13px;line-height:1.5;color:var(--mute);max-width:78ch}
.b-modes b{color:var(--ink2);font-weight:600}
.b-presets button{border:1px solid var(--rule);background:var(--bg);border-radius:999px;padding:5px 11px;font-family:var(--f-mono);font-size:12.5px;color:var(--ink2)}
.b-presets button:hover,.b-presets button.on{border-color:var(--accent);color:var(--accent-t);background:var(--accent-soft)}
.b-result{margin-top:26px;display:grid;gap:22px}
.b-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(176px,1fr));background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-s)}
.b-kpi{padding:16px 18px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);display:grid;gap:3px;align-content:start}
.b-kpi span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--mute)}
.b-kpi b{font-family:var(--f-mono);font-size:21px;font-weight:600;font-variant-numeric:tabular-nums}
.b-kpi small{font-size:12px;color:var(--mute)}
.b-kpi.good b{color:var(--good)}
.b-list{display:grid;border:1px solid var(--rule);border-radius:var(--r-lg);background:var(--card);overflow:hidden}
.b-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--rule2)}
.b-row:last-child{border-bottom:0}
.b-row img,.b-row .ph-mini{width:44px;height:44px;object-fit:contain;background:var(--photo);border-radius:8px;border:1px solid var(--rule2);display:grid;place-items:center}
.b-row .nm{min-width:0;display:grid;line-height:1.3}
.b-row .nm b{font-weight:600;overflow:hidden;text-overflow:ellipsis}
.b-row .nm small{color:var(--mute);font-size:12.5px}
.b-row .q{font-family:var(--f-mono);font-size:14px;color:var(--ink2);white-space:nowrap}
.b-row .s{font-family:var(--f-mono);font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:84px;text-align:right}
.b-actions{display:flex;gap:10px;flex-wrap:wrap}
.b-note{font-size:13.5px;color:var(--ink2);padding:12px 14px;background:var(--bg2);border-radius:var(--r);border:1px solid var(--rule)}
@media (max-width:560px){.b-row{grid-template-columns:44px minmax(0,1fr) auto}.b-row .q{display:none}}

/* ==========================================================================
   conditions
   ========================================================================== */
.cond-grid{display:grid;gap:52px;margin-top:6px}
.cond h2{margin-bottom:18px}
.cond>p{color:var(--ink2);max-width:70ch;margin-bottom:16px}
.cond-brand{margin-bottom:28px;display:grid;gap:12px;max-width:780px}
.cond-brand h3 a{color:var(--ink);text-decoration:none}
.cond-note{color:var(--ink2);font-size:14.5px;max-width:70ch}
.example{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:20px;max-width:780px;display:grid;gap:12px}
.ex-t{font-weight:600}
.mini-table{width:100%;border-collapse:collapse;font-size:14px}
.mini-table th,.mini-table td{padding:9px 10px;border-bottom:1px solid var(--rule2);text-align:left}
.mini-table thead th{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);font-weight:500}
.mini-table .num{text-align:right;font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.mini-table tr.on{background:var(--accent-soft)}
.mini-table tr.on th{color:var(--accent-t)}
.formulas{display:grid;border-top:1px solid var(--ink);max-width:780px;margin:0}
.formulas>div{display:grid;grid-template-columns:210px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--rule)}
.formulas dt{font-weight:600}
.formulas dd{margin:0;color:var(--ink2)}
.terms-list{margin:0;padding:0;list-style:none;display:grid;gap:12px;max-width:780px}
.terms-list li{padding:14px 16px;background:var(--card);border:1px solid var(--rule);border-radius:var(--r);color:var(--ink2)}
.terms-list b{color:var(--ink)}
@media (max-width:640px){.formulas>div{grid-template-columns:1fr;gap:4px}.mini-table{font-size:13px}}
.nf{padding-block:80px;display:grid;gap:18px}

/* ---------- information pages (cooperation / payment / delivery / contacts) ---------- */
.glance{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}
.glance li{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;background:var(--card);border:1px solid var(--rule);border-radius:var(--r)}
.g-ic{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent-t)}
.g-ic .ico{width:16px;height:16px}
.g-t{display:grid;gap:2px;min-width:0}
.g-t b{font-weight:600;line-height:1.3}
.g-t span{color:var(--mute);font-size:13.5px;line-height:1.4}
@media (max-width:520px){.glance{grid-template-columns:1fr 1fr}.glance li{padding:12px}.g-ic{display:none}}

.bt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bt-grid.bt2{grid-template-columns:repeat(2,minmax(0,1fr))}
.bt-card{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:20px;display:grid;gap:14px;align-content:start;min-width:0}
.bt-card h3{font-size:19px;display:flex;align-items:center;gap:10px}
.bt-card h3 a{color:var(--ink);text-decoration:none}
.bt-card h3 a:hover{color:var(--accent-t)}
.bt-ic{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--accent-soft);color:var(--accent-t)}
.bt-ic .ico{width:20px;height:20px}
.bt-card dl{margin:0;display:grid;gap:14px}
.bt-card dt{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);font-weight:500}
.bt-card dd{margin:3px 0 0;color:var(--ink)}
.bt-card dd small{display:block;margin-top:3px;color:var(--mute);font-size:13.5px;line-height:1.45}
@media (max-width:900px){.bt-grid,.bt-grid.bt2{grid-template-columns:1fr}}
.cond>.fine{margin-top:14px;max-width:70ch}

/* two-column rows of short sections (info pages) */
.cond-cols{display:grid;gap:40px 56px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.cond-cols.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cond-cols>.cond,.cond-cols>.cond-stack{min-width:0;border-top:1px solid var(--ink);padding-top:20px}
.cond-stack{display:grid;gap:30px;align-content:start}
.cond-stack>.cond+.cond{border-top:1px solid var(--rule);padding-top:26px}
.cond-cols .cond h2{font-size:clamp(21px,1.9vw,26px);margin-bottom:14px}
.cond-cols .steps{margin-bottom:0}
.cn-grid+.cond-note,.cn-grid+p,.cn-grid+.note{margin-top:14px}
.pg-contacts .cond-grid{padding-bottom:68px}
@media (max-width:980px){
  .cond-cols,.cond-cols.c3{grid-template-columns:1fr;gap:52px}
  .cond-cols>.cond,.cond-cols>.cond-stack{border-top:0;padding-top:0}
  .cond-stack{gap:52px}
  .cond-stack>.cond+.cond{border-top:0;padding-top:0}
  .cond-cols .cond h2{font-size:var(--h2-size)}
}

.note{max-width:780px;margin:16px 0 0;padding:14px 16px;background:var(--card);border:1px solid var(--rule);border-left:3px solid var(--accent);border-radius:var(--r);color:var(--ink2)}
.note b{color:var(--ink)}
.note ul{margin:8px 0 0;padding-left:20px}
.note-pv{border-left-color:var(--save);margin:0 0 16px}
code{font-family:var(--f-mono);font-size:.9em;background:var(--bg2);padding:1px 6px;border-radius:5px;overflow-wrap:anywhere}

.cn-grid{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
.cn-tile{min-width:0}
.cn-link{display:flex;align-items:center;gap:14px;padding:16px 18px;height:100%;background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);color:var(--ink);text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s}
a.cn-link:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow);color:var(--ink)}
.cn-ic{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--accent-soft);color:var(--accent-t)}
.cn-ic .ico{width:22px;height:22px}
.cn-t{display:grid;gap:2px;min-width:0;flex:1}
.cn-t b{font-weight:600}
.cn-t span{color:var(--ink2);overflow-wrap:anywhere}
.cn-go{flex:none;color:var(--mute)}
a.cn-link:hover .cn-go{color:var(--accent-t)}
.cn-slot .cn-link{border-style:dashed;background:transparent}
.cn-slot .cn-ic{background:var(--bg2);color:var(--mute)}
.cn-slot .cn-t span{color:var(--mute);font-family:var(--f-mono);font-size:12.5px}

.tm-grid{display:grid;gap:16px;grid-template-columns:repeat(6,minmax(0,1fr))}
.tm-grid>.tm-tile{grid-column:span 2}
.tm-grid>.tm-tile:nth-child(n+4){grid-column:span 3}
.tm-tile{display:grid;gap:10px;align-content:start;padding:20px;background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);color:var(--ink);text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s}
.tm-tile:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow);color:var(--ink)}
.tm-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--accent-soft);color:var(--accent-t)}
.tm-ic .ico{width:22px;height:22px}
.tm-tile b{font-family:var(--f-display);font-size:19px;font-weight:var(--w-display);letter-spacing:calc(var(--ls-display) / 2);line-height:1.2}
.tm-tile>span{color:var(--ink2);font-size:14.5px;line-height:1.5}
.tm-go{display:inline-flex;align-items:center;gap:6px;color:var(--accent-t);font-weight:600;font-size:14px;margin-top:2px}
.tm-go .ico{width:16px;height:16px}
@media (max-width:1100px){.tm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tm-grid>.tm-tile,.tm-grid>.tm-tile:nth-child(n+4){grid-column:auto}.tm-grid>.tm-tile:last-child:nth-child(odd){grid-column:1/-1}}
@media (max-width:560px){.tm-grid{grid-template-columns:1fr}.tm-grid>.tm-tile:last-child:nth-child(odd){grid-column:auto}}

/* ==========================================================================
   cart bar / toast / age gate
   ========================================================================== */
.cartbar{position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--ink);color:var(--bg);padding:10px 0 calc(10px + env(safe-area-inset-bottom,0px));box-shadow:0 -12px 32px -14px rgba(0,0,0,.45)}
.cb-in{display:flex;align-items:center;gap:20px}
.cb-info{display:grid;line-height:1.2;min-width:0}
.cb-info b{font-family:var(--f-mono);font-size:20px;font-weight:600;white-space:nowrap}
.cb-info span{font-size:12px;opacity:.75;white-space:nowrap}
.cb-tier{flex:1;font-size:13px;opacity:.92;min-width:0}
.cb-tier .gain{font-weight:600;color:var(--bar-gain)}
.cartbar .btn-primary{background:var(--bg);color:var(--ink);margin-left:auto}
.cartbar .btn-primary:hover{background:color-mix(in srgb,var(--bg) 85%,var(--ink))}
@media (max-width:640px){.cb-tier{display:none}.cb-in{justify-content:space-between}.cb-info b{font-size:18px}}
.toast{position:fixed;left:50%;bottom:calc(88px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:10px;font-size:14px;z-index:90;max-width:calc(100vw - 32px);text-align:center;box-shadow:var(--shadow)}
.gate{position:fixed;inset:0;z-index:100;background:color-mix(in srgb,var(--bg) 62%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:grid;place-items:center;padding:20px}
.gate-card{max-width:440px;width:100%;background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:30px 28px;box-shadow:var(--shadow);text-align:center;display:grid;gap:14px;justify-items:center}
.gate-badge{width:64px;height:64px;border-radius:50%;background:var(--t1);color:var(--on-t1);display:grid;place-items:center;font-family:var(--f-mono);font-weight:700;font-size:22px}
.gate-card h2{font-size:26px}
.gate-card p{color:var(--ink2);font-size:15px}
.gate-actions{display:grid;gap:8px;width:100%;margin-top:6px}

/* ==========================================================================
   «Скоро в продаже» (бренд, которого ещё нет в продаже) и страница «Документооборот»
   ========================================================================== */
.pill-soon{background:var(--bg2);color:var(--ink2);box-shadow:inset 0 0 0 1px var(--rule)}
.pl-head h2 .pill{vertical-align:middle;margin-left:8px}
.ribbon-soon{background:var(--ink);color:var(--bg)}
.soon-q{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:36px;padding:0 12px;border:1px dashed var(--rule);border-radius:9px;color:var(--mute);font-family:var(--f-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;cursor:default;user-select:none}
.note-soon{border-left-color:var(--mute);margin:0 0 22px}
.cond .note-soon{margin:18px 0 0}
.b-soon{margin-top:8px}
.pdp-buy .note-soon{margin:14px 0 0}
.bc-soon{margin:0;color:var(--ink2);font-size:14px}
.seg-i input:disabled+span{opacity:.55;cursor:not-allowed}
/* brand choice in the builder: all brands share the field width and never wrap under each other */
.seg-fill{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);width:100%}
.seg-fill .seg-i{display:block;min-width:0}
.seg-fill .seg-i span{display:block;padding:8px 4px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13.5px}
.seg-i input:disabled+span:hover{color:var(--ink2)}

.flow{list-style:none;counter-reset:fl;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.flow>li{counter-increment:fl;position:relative;display:grid;gap:8px;align-content:start;padding:18px;background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);min-width:0}
.flow>li::before{content:counter(fl,decimal-leading-zero);position:absolute;top:16px;right:16px;font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;color:var(--mute)}
.flow>li:not(:last-child)::after{content:"";position:absolute;top:38px;right:-17px;width:18px;height:2px;background:var(--rule)}
.fl-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:var(--accent-soft);color:var(--accent-t)}
.fl-ic .ico{width:21px;height:21px}
.flow b{margin-top:4px;font-family:var(--f-display);font-size:18px;font-weight:var(--w-display);letter-spacing:calc(var(--ls-display) / 2);line-height:1.2}
.flow p{color:var(--ink2);font-size:14.5px;line-height:1.5}
.fl-days{justify-self:start;margin-top:2px;padding:3px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent-t);font-family:var(--f-mono);font-size:12px;font-weight:600;letter-spacing:.02em}
.cond>.flow+.fine{margin-top:16px}
@media (max-width:1180px){.flow{grid-template-columns:repeat(2,minmax(0,1fr))}.flow>li::after{display:none}.flow>li:last-child:nth-child(odd){grid-column:1/-1}}
@media (max-width:560px){.flow{grid-template-columns:1fr}}

.days-table th[scope=row]{white-space:nowrap}
.days-table td{color:var(--ink2)}
@media (max-width:640px){
  .days-table,.days-table tbody{display:block}
  .days-table thead{display:none}
  .days-table tr{display:grid;gap:8px;padding:12px 14px;border-bottom:1px solid var(--rule2)}
  .days-table tr:last-child{border-bottom:0}
  .days-table th,.days-table td{display:block;padding:0;border:0}
  .days-table td::before{content:attr(data-l);display:block;font-family:var(--f-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
}
.cond-h3{margin:22px 0 10px;font-size:19px}
.esf-row{display:grid;gap:2px;align-content:start}
.esf-row .fine{padding-left:28px;margin:0}
.see-also{margin-top:22px}

/* ==========================================================================
   print: commercial offer (КП) from the cart
   ========================================================================== */
@media print{
  :root{color-scheme:light}
  body{background:#fff!important;color:#000!important}
  .preview-bar,.skip,.topbar,.site-header,.site-footer,.cartbar,.toast,.gate,.crumbs,.page-head,.cart-layout,.cart-empty,.noscript{display:none!important}
  #kp{display:block!important;font-family:Georgia,'Times New Roman',serif;color:#000;font-size:11pt}
  #kp h1{font-size:20pt;margin:0 0 4pt;color:#000}
  #kp .kp-meta{color:#333;font-size:10pt;margin-bottom:12pt}
  #kp table{width:100%;border-collapse:collapse;margin:8pt 0 12pt;font-family:Arial,Helvetica,sans-serif;font-size:9.5pt}
  #kp th,#kp td{border-bottom:.5pt solid #999;padding:4pt 5pt;text-align:left;color:#000}
  #kp th{font-size:8.5pt;text-transform:uppercase;letter-spacing:.04em;background:#eee!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  #kp .r{text-align:right;white-space:nowrap}
  #kp h2{font-size:13pt;margin:14pt 0 4pt;color:#000}
  #kp .kp-total{font-size:13pt;font-weight:700;margin-top:6pt}
  #kp .kp-foot{margin-top:14pt;color:#333;font-size:9pt;line-height:1.4}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* ---------- additions: small controls used by the script ---------- */
.btn-sm{min-height:36px;padding:0 14px;font-size:14px}
.tb-act{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap}
.tb-act span{font-size:12.5px;color:var(--mute)}
.toast button{margin-left:14px;background:none;border:0;color:inherit;text-decoration:underline;text-underline-offset:3px;font-weight:600;cursor:pointer;padding:0;font-size:inherit}
.sw[aria-pressed="true"]{box-shadow:0 0 0 2px var(--accent)}
.sc-res .good{color:var(--good)}
.neg{color:var(--bad)}

/* ---------- checkout block (below the lines, full width of the main column) ---------- */
.side-cta{border-bottom:0}
.checkout{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);box-shadow:var(--shadow-s);overflow:hidden;scroll-margin-top:84px}
.co-h{padding:18px 22px 16px;border-bottom:1px solid var(--rule);display:grid;gap:6px}
.co-h h2{font-size:26px}
.co-h p{color:var(--ink2);font-size:14.5px;max-width:72ch}
.co-body{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;padding:20px 22px 22px;align-items:start}
.co-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 14px;align-content:start;align-items:start}
.co-form .wide{grid-column:1/-1}
.co-actions{align-content:start}
@media (max-width:900px){.co-body{grid-template-columns:minmax(0,1fr);gap:20px;padding:16px}.co-h{padding:16px}.co-h h2{font-size:23px}}
@media (max-width:520px){.co-form{grid-template-columns:minmax(0,1fr)}}

.cs-h-n{font-size:13px;color:var(--mute)}
.cs .tb-sum{display:none}
.fld label.req::after{content:" *";color:var(--bad)}
@media (max-width:820px){
  .cs-tot{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cs-tot>div{padding:11px 16px}
  .cs-tot dd{font-size:16px}
  .cs-h-r{font-size:20px}
}

/* ---------- price list: sticky head on wide screens ---------- */
@media (min-width:1200px){
  .table-scroll{overflow:visible}
  .pricelist thead th{position:sticky;top:calc(env(safe-area-inset-top,0px) + 65px);z-index:3}
  .pricelist thead th:first-child{border-top-left-radius:calc(var(--r-lg) - 1px)}
  .pricelist thead th:last-child{border-top-right-radius:calc(var(--r-lg) - 1px)}
  .pricelist tbody tr:last-child>*:first-child{border-bottom-left-radius:calc(var(--r-lg) - 1px)}
  .pricelist tbody tr:last-child>*:last-child{border-bottom-right-radius:calc(var(--r-lg) - 1px)}
}

/* ---------- phones: price rows and order matrix become compact cards ---------- */
@media (max-width:760px){
  .page-head{padding-block:10px 18px}
  h1{font-size:clamp(26px,7.6vw,34px)}
  .lead{font-size:16px}
  .table-scroll{border:0;background:transparent;overflow:visible;border-radius:0}
  .matrix-wrap{overflow:visible;margin:0;padding:0}
  .pricelist,.matrix{min-width:0;width:100%;display:block}
  .pricelist thead,.matrix thead{display:none}
  .pricelist tbody,.matrix tbody{display:grid;gap:10px}
  .pricelist tr,.matrix tr{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px 10px;padding:12px;border:1px solid var(--rule);border-radius:var(--r);background:var(--card);align-items:center}
  .matrix tr{background:var(--bg)}
  .pricelist th,.pricelist td,.matrix th,.matrix td{display:block;padding:0;border:0;min-width:0;text-align:left}
  .pricelist td[data-l]::before,.matrix td[data-l]::before{content:attr(data-l);display:block;font-family:var(--f-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);margin-bottom:2px;white-space:normal}
  .pricelist .num,.matrix .num{text-align:left}
  .pricelist td.tp,.matrix td.tp{padding:6px 8px;border-radius:8px}
  .pricelist .c-ph{width:auto;grid-column:1;grid-row:1}
  .pricelist th[scope=row]{grid-column:2/5;grid-row:1}
  .matrix th[scope=row]{grid-column:1/5;grid-row:1}
  .pricelist td.qcol,.matrix td.qcol{grid-column:5/7;grid-row:1;justify-self:end;width:auto;text-align:right!important}
  .pricelist td.tp[data-k="0"],.matrix td.tp[data-k="0"]{grid-column:1/3;grid-row:2}
  .pricelist td.tp[data-k="1"],.matrix td.tp[data-k="1"]{grid-column:3/5;grid-row:2}
  .pricelist td.tp[data-k="2"],.matrix td.tp[data-k="2"]{grid-column:5/7;grid-row:2}
  .pricelist td.num:not(.tp):nth-last-child(3),.matrix td.num:not(.tp):nth-last-child(3){grid-column:1/4;grid-row:3}
  .pricelist td.num:not(.tp):nth-last-child(2),.matrix td.num:not(.tp):nth-last-child(2){grid-column:4/7;grid-row:3}
  /* single-price brands (pack / price / box) */
  .pricelist[data-brand="diblong"] td:nth-child(3),.matrix-flat td:nth-child(2){grid-column:1/3;grid-row:2}
  .pricelist[data-brand="diblong"] td:nth-child(4),.matrix-flat td:nth-child(3){grid-column:3/5;grid-row:2}
  .pricelist[data-brand="diblong"] td:nth-child(5),.matrix-flat td:nth-child(5){grid-column:5/7;grid-row:2}
  .matrix-flat td:nth-child(4){grid-column:1/4;grid-row:3}
  .pl-brand .tierbox{margin-top:10px}
}

/* ---------- minimum order: the meter in the cart summary, the box above the send buttons, the cart bar, the builder note ---------- */
.btn[aria-disabled="true"],.btn.is-off{opacity:.5;cursor:not-allowed}
.btn-primary.is-off:hover{background:var(--accent);color:var(--accent-ink)}
.btn-ghost.is-off:hover{border-color:var(--rule);color:var(--ink)}
.minbox .mb-t{font-size:14px;color:var(--ink2)}
.minbox .mb-t b,.minbox .mb-s b{font-family:var(--f-mono);font-variant-numeric:tabular-nums;color:var(--ink)}
.minbox .prog-bar{margin-top:8px}
.minbox .prog-bar i{background:var(--accent)}
.minbox .mb-s{margin-top:8px;font-size:13.5px;color:var(--ink2)}
.minbox .mb-s a{color:var(--accent-t);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.minbox .mb-ok{display:flex;gap:8px;align-items:center;font-size:14px;font-weight:600;color:var(--good)}
.minbox .mb-ok::before{content:"✓";font-weight:700}
.co-min{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--rule);border-left:4px solid var(--accent);border-radius:var(--r);background:var(--bg2);font-size:14px;color:var(--ink2)}
.co-min[hidden]{display:none}
.co-min p{margin:0}
.co-min b{color:var(--ink)}
.co-min-act{display:flex;gap:8px;flex-wrap:wrap}
.b-min{margin-top:8px}
.cb-short{display:none}
@media (max-width:640px){
  .cartbar.short [data-cart-meta]{display:none}
  .cartbar.short .cb-short{display:block;opacity:.9}
}
