/* SUBZ — страница бренда в каталоге (/brands/<бренд>): баннер → вкладки тарифов → «Выгодно сейчас» →
   строка фильтров → плотная сетка карточек с обложками. Оформление — токены SUBZ, цвет даёт только бренд (--c/--i). */

/* ── баннер ──────────────────────────────────────────────────────── */
.sh-banner{position:relative;isolation:isolate;overflow:hidden;display:grid;align-content:space-between;gap:36px;min-height:clamp(180px,17vw,250px);margin-top:clamp(14px,1.8vw,24px);padding:clamp(18px,2.2vw,30px);border-radius:24px;background:radial-gradient(70% 140% at 85% 30%,color-mix(in srgb,var(--c) 100%,#fff 12%) 0%,transparent 70%),linear-gradient(110deg,color-mix(in srgb,var(--c) 38%,#050505) 0%,color-mix(in srgb,var(--c) 80%,#000 10%) 100%);color:#fff}
.sh-banner::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgb(0 0 0 / .55),transparent 60%)}
.sh-banner__wm{position:absolute;right:clamp(-40px,-2vw,0px);top:50%;z-index:-1;width:clamp(200px,26vw,380px);transform:translateY(-50%) rotate(-8deg);color:var(--i);opacity:.22}
.sh-banner__wm svg{width:100%;height:auto;fill:currentColor}
.sh-crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:rgb(255 255 255 / .7)}
.sh-crumbs a:hover{color:#fff}
.sh-crumbs span:last-child{color:#fff}
.sh-banner__row{display:flex;align-items:center;gap:18px}
.sh-banner__logo{flex:none;display:grid;place-items:center;width:clamp(56px,5vw,76px);aspect-ratio:1;border-radius:20px;background:var(--c);color:var(--i);box-shadow:0 0 0 1px rgb(255 255 255 / .25) inset,0 20px 40px -16px #000}
.sh-banner__logo svg{width:55%;fill:currentColor}
.sh-banner__logo b{font-family:var(--f-display);font-size:26px;font-weight:800}
.sh-banner__title{font-family:var(--f-display);font-size:clamp(34px,4.4vw,64px);font-weight:800;line-height:.95;letter-spacing:-.04em}
.sh-banner__sub{margin-top:8px;font-size:clamp(14px,1.1vw,16px);color:rgb(255 255 255 / .78)}

/* ── вкладки тарифов ─────────────────────────────────────────────── */
.sh-tabs{display:flex;gap:8px;margin-top:18px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.sh-tabs::-webkit-scrollbar{display:none}
.sh-tabs button{flex:none;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px;border:1px solid var(--line-2);border-radius:999px;background:var(--bg-1);color:var(--fg-2);font:inherit;font-size:15px;font-weight:500;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.sh-tabs button i{font-style:normal;font-family:var(--f-mono);font-size:11px;color:var(--mute)}
.sh-tabs button:hover{color:var(--fg);border-color:var(--fg-2)}
.sh-tabs button.is-on{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}
.sh-tabs button.is-on i{color:rgb(0 0 0 / .5)}

/* ── «Выгодно сейчас» ────────────────────────────────────────────── */
.sh-best{margin-top:20px;padding:clamp(16px,1.8vw,24px);border:1px solid color-mix(in srgb,var(--c) 35%,var(--line));border-radius:24px;background:radial-gradient(80% 120% at 0% 0%,color-mix(in srgb,var(--c) 18%,transparent),transparent 65%),var(--bg-1)}
.sh-best__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 20px;margin-bottom:16px}
.sh-best__head h2{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-size:clamp(20px,1.8vw,26px);font-weight:800;letter-spacing:-.02em}
.sh-best__head h2 svg{width:20px;height:20px;fill:#ffc53d}
.sh-best__head .mono{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.sh-best__row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}

/* ── строка фильтров ─────────────────────────────────────────────── */
.sh-filters{position:sticky;top:var(--header-h);z-index:25;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:22px calc(var(--pad) * -1) 0;padding:12px var(--pad);background:rgb(0 0 0 / .85);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.sh-filters,.sh-filters>*{min-width:0}
.sh-fbtns{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.sh-dd{position:relative}
.sh-fbtn{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 14px;border:1px solid var(--line-2);border-radius:12px;background:var(--bg-1);color:var(--fg);font:inherit;font-size:14.5px;font-weight:500;cursor:pointer;transition:border-color .2s,background .2s}
.sh-fbtn>svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2;opacity:.6;transition:transform .25s}
.sh-dd.is-open .sh-fbtn>svg{transform:rotate(180deg)}
.sh-fbtn:hover{border-color:var(--fg-2)}
.sh-fbtn.is-on{border-color:var(--fg);background:var(--bg-3)}
.sh-fbtn b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:11px}
.sh-fbtn b:empty{min-width:8px;width:8px;height:8px;padding:0}
.sh-toggle .sh-bolt{width:14px;height:14px;fill:#ffc53d;stroke:none;opacity:1}
.sh-toggle.is-on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.sh-toggle.is-on .sh-bolt{fill:currentColor}
.sh-clear{border:0;background:none;padding:0 6px;color:var(--fg-2);font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.sh-clear:hover{color:var(--fg)}
.sh-pop{position:absolute;left:0;top:calc(100% + 8px);z-index:30;display:grid;gap:2px;min-width:230px;padding:8px;border:1px solid var(--line-2);border-radius:16px;background:#0e0e0e;box-shadow:0 30px 60px -20px #000}
.sh-opt{display:flex;align-items:center;gap:10px;padding:10px 10px;border-radius:10px;font-size:14.5px;cursor:pointer}
.sh-opt:hover{background:var(--bg-3)}
.sh-opt input{width:18px;height:18px;margin:0;accent-color:#fff}
.sh-opt span{flex:1}
.sh-opt i{font-style:normal;font-family:var(--f-mono);font-size:11px;color:var(--mute)}
.sh-opt.is-off{opacity:.35;cursor:default}
.sh-pop--price{grid-template-columns:1fr 1fr;gap:8px;min-width:260px;padding:12px}
.sh-pop--price label{display:grid;gap:6px}
.sh-pop--price .mono{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.sh-pop--price input{height:42px;padding:0 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--bg);color:var(--fg);font:inherit;font-size:15px;outline:0}
.sh-pop--price input:focus{border-color:var(--fg-2)}
.sh-search{display:flex;align-items:center;gap:10px;width:min(320px,100%);height:42px;padding:0 14px;border:1px solid var(--line-2);border-radius:12px;background:var(--bg-1);color:var(--mute)}
.sh-search:focus-within{border-color:var(--fg-2);color:var(--fg)}
.sh-search svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;flex:none}
.sh-search input{flex:1;min-width:0;height:100%;border:0;outline:0;background:none;color:var(--fg);font:inherit;font-size:14.5px}
.sh-search input::placeholder{color:#555}

.sh-sub{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 14px}
.sh-sub>.mono{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.sh-sort{display:flex;align-items:center;gap:10px}
.sh-sort .mono{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.sh-sort select{height:38px;padding:0 34px 0 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--bg-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23bdbdbd' stroke-width='2.2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 10px center/14px no-repeat;color:var(--fg);font:inherit;font-size:14px;appearance:none;cursor:pointer}

/* ── сетка и карточка товара ─────────────────────────────────────── */
.sh-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px 14px}
.sh-grid>[hidden],.sh-empty[hidden],.sh-clear[hidden],.sh-pop[hidden],.sh-fbtn b[hidden]{display:none!important}
.sh-it{display:flex;min-width:0}
.pc{display:flex;flex-direction:column;width:100%;min-width:0;color:var(--fg)}
.pc__cover{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;aspect-ratio:1.18;padding:12px;border-radius:16px;background:radial-gradient(90% 90% at 100% 0%,color-mix(in srgb,var(--c) 100%,#fff 14%) 0%,transparent 75%),linear-gradient(160deg,color-mix(in srgb,var(--c) 85%,#000 5%) 0%,color-mix(in srgb,var(--c) 40%,#060606) 100%);color:#fff;transition:transform .45s var(--ease-out),box-shadow .45s var(--ease-out)}
.pc__cover::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 35%,rgb(0 0 0 / .55))}
.pc__cover::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgb(255 255 255 / .12);pointer-events:none}
.pc:hover .pc__cover{transform:translateY(-3px);box-shadow:0 26px 50px -26px var(--c)}
.pc__wm{position:absolute;right:-14%;top:-8%;z-index:-1;width:62%;color:var(--i);opacity:.2;transform:rotate(-10deg);transition:transform .8s var(--ease-out)}
.pc__wm svg{width:100%;height:auto;fill:currentColor}
.pc:hover .pc__wm{transform:rotate(-2deg) scale(1.06)}
.pc__brand{display:flex;align-items:center;gap:7px;max-width:100%;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc__ico{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:var(--c);color:var(--i);box-shadow:0 0 0 1px rgb(255 255 255 / .3)}
.pc__ico svg{width:14px;height:14px;fill:currentColor}
.pc__ico b{font-size:9px;font-weight:800}
.pc__term{margin-top:auto;font-family:var(--f-display);font-size:clamp(22px,1.8vw,30px);font-weight:800;line-height:.92;letter-spacing:-.04em;word-spacing:.12em;text-transform:uppercase;text-shadow:0 2px 16px rgb(0 0 0 / .35)}
.pc__mode{margin-top:6px;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:rgb(255 255 255 / .75)}
.pc__flag{position:absolute;right:10px;top:10px;display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:999px;background:rgb(0 0 0 / .55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:var(--f-mono);font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.pc__flag svg{width:10px;height:10px;fill:#ffc53d}
.pc__price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin-top:12px}
.pc__price b{font-family:var(--f-display);font-size:21px;font-weight:800;letter-spacing:-.03em}
.pc__war{font-style:normal;display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:6px;background:#0b1a11;border:1px solid #23543a;color:#8fd4a3;font-family:var(--f-mono);font-size:9.5px;letter-spacing:.04em;text-transform:uppercase}
.pc__title{margin-top:6px;font-size:14px;line-height:1.35;color:var(--fg);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
.pc:hover .pc__title{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-2)}
.pc__meta{display:flex;align-items:center;gap:6px;min-width:0;margin-top:6px;font-size:12.5px;color:var(--mute);white-space:nowrap;overflow:hidden}
.pc__meta>span:last-child{overflow:hidden;text-overflow:ellipsis}
.pc__stars{color:#ffc53d;font-weight:600}
.pc__stars.is-new{color:var(--fg-2);font-weight:500}
.pc__sep{opacity:.5}

.sh-empty{display:grid;justify-items:center;gap:8px;padding:clamp(40px,6vw,72px) 20px;border:1px dashed var(--line-2);border-radius:20px;text-align:center;color:var(--fg-2)}
.sh-empty b{font-family:var(--f-display);font-size:24px;font-weight:800;color:var(--fg)}

/* ── о сервисе / ещё в разделе ───────────────────────────────────── */
.sh-about,.sh-more{margin-top:clamp(40px,5vw,72px)}
.sh-about h2,.sh-more h2{margin-bottom:16px;font-family:var(--f-display);font-size:clamp(22px,2vw,30px);font-weight:800;letter-spacing:-.02em}
.sh-about ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.sh-about li{position:relative;padding:16px 16px 16px 44px;border:1px solid var(--line);border-radius:14px;background:var(--bg-1);font-size:14.5px;line-height:1.4}
.sh-about li::before{content:"";position:absolute;left:16px;top:17px;width:16px;height:16px;border-radius:50%;background:#1a3a28 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238fd4a3' stroke-width='3.2'%3E%3Cpath d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center/10px no-repeat}
.sh-more__row{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:14px}
.sh-more__it{display:grid;justify-items:center;gap:8px;text-align:center}
.sh-more__it>span{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:var(--bg-2);border:1px solid var(--line-2);color:var(--fg);transition:transform .4s var(--ease-out),border-color .2s,background .2s}
.sh-more__it>span svg{width:30px;height:30px;fill:currentColor}
.sh-more__it>span b{font-weight:800}
.sh-more__it em{font-style:normal;font-size:12.5px;line-height:1.25;color:var(--fg-2)}
.sh-more__it:hover>span{transform:translateY(-3px);border-color:var(--fg-2);background:var(--bg-3)}
.sh-more__it:hover em{color:var(--fg)}
.sh-more__it.is-empty{opacity:.4}

/* ── адаптив ─────────────────────────────────────────────────────── */
@media (max-width:1280px){.sh-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1000px){.sh-grid,.sh-best__row{grid-template-columns:repeat(3,minmax(0,1fr))}.sh-best__row>:nth-child(4){display:none}}
@media (max-width:720px){
  .sh-grid,.sh-best__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 10px}
  .sh-best__row>:nth-child(4){display:flex}
  .sh-banner{border-radius:18px;gap:24px}
  .sh-banner__wm{width:170px;right:-30px}
  .sh-filters{flex-direction:column;flex-wrap:nowrap;align-items:stretch}
  .sh-fbtns{max-width:100%}
  .pc__flag{width:24px;height:24px;padding:0;gap:0;justify-content:center;font-size:0}
  .pc__flag svg{width:12px;height:12px}
  .pc__cover:has(.pc__flag) .pc__brand{padding-right:28px}
  .sh-fbtns{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
  .sh-fbtns::-webkit-scrollbar{display:none}
  .sh-fbtn{flex:none}
  .sh-search{width:100%}
  .sh-pop{position:fixed;left:12px;right:12px;top:auto;bottom:12px;min-width:0;border-radius:20px;padding:10px}
  .sh-sort .mono{display:none}
  .pc__cover{padding:10px;border-radius:14px}
  .pc__term{font-size:20px}
  .pc__price b{font-size:18px}
  .pc__title{font-size:13px}
  .pc__meta{font-size:11.5px}
}
