/*
Theme Name: SmartKing v2
Template: smartking-theme
Description: Новый дизайн SmartKing («Что сломалось? + верстак»). Дочерняя тема: логика — в smartking-theme. Собрано из design/site-v2 и theme/smartking-v2 скриптом theme/build.sh, не править вручную на сервере без переноса правки в репозиторий.
Version: 1.17.5
Author: SmartKing
Text Domain: smartking-v2
*/

/* Golos Text, cyrillic — OFL */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(assets/fonts/golos-text-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* Golos Text, latin — OFL */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(assets/fonts/golos-text-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Unbounded, cyrillic — OFL */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 600 900;
  font-display: swap;
  src: url(assets/fonts/unbounded-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* Unbounded, latin — OFL */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 600 900;
  font-display: swap;
  src: url(assets/fonts/unbounded-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* SmartKing — сайт v2. Мир: «стойка приёма + верстак».
   Чёрный стол мастерской, янтарная подсветка, золотые дорожки платы.
   Мобильный — основной экран, десктоп — адаптация. */


:root {
	/* поверхности: чёрный стол, чуть тёплый */
	--ink:        #09090b;
	--ink-2:      #111114;
	--ink-3:      #18181d;
	--ink-4:      #222229;
	/* текст тонирован в тёплый, не серый */
	--text:       #f6f2ea;
	--text-2:     #cbc3b3;
	--text-3:     #9d9585;
	/* бренд */
	--gold:       #f5b942;
	--gold-hi:    #ffd46a;
	--gold-deep:  #b9811c;
	--gold-ink:   #1a1205;
	--gold-line:  rgba(245, 185, 66, .28);
	--gold-soft:  rgba(245, 185, 66, .10);
	--gold-glow:  0 0 24px rgba(245, 185, 66, .35), 0 0 2px rgba(255, 212, 106, .9);
	--wa:         #25d366;
	--wa-ink:     #04220f;

	--font-display: "Unbounded", "Golos Text", sans-serif;
	--font-body:    "Golos Text", -apple-system, "Segoe UI", sans-serif;

	--r-s: 10px;
	--r-m: 16px;
	--r-l: 24px;

	--gutter: clamp(16px, 4vw, 40px);
	--max: 1240px;

	--ease-out: cubic-bezier(.16, 1, .3, 1);
	--t-fast: 160ms;
	--t-mid: 420ms;

	color-scheme: dark;
}

@media (prefers-reduced-motion: reduce) {
	:root { --t-fast: 0ms; --t-mid: 0ms; }
	*, *::before, *::after { animation: none !important; transition: none !important; }
	.js .traces path { stroke-dashoffset: 0; }
	.js .traces circle { opacity: 1; }
}

/* ---------- база ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 84px; }
body {
	margin: 0;
	background: var(--ink);
	color: var(--text);
	font: 400 1rem/1.6 var(--font-body);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	padding-bottom: 84px; /* место под липкую панель на телефоне */
}
@media (min-width: 900px) { body { padding-bottom: 0; } }

::selection { background: var(--gold); color: var(--gold-ink); }
html { scrollbar-color: var(--gold-deep) var(--ink-2); }
input, textarea { caret-color: var(--gold); }
img, svg { display: block; max-width: 100%; }
a { color: var(--gold-hi); text-underline-offset: .22em; text-decoration-thickness: 1px; }
a:hover { color: var(--gold); }
:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; border-radius: 6px; }
.num { font-variant-numeric: tabular-nums lining-nums; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.wrap { width: 100%; max-width: var(--max); margin-inline: auto; padding-inline: var(--gutter); }

h1, h2, h3 { font-family: var(--font-display); font-weight: 800; line-height: 1.08; letter-spacing: -0.02em; text-wrap: balance; margin: 0; }
h2 { font-size: clamp(1.5rem, 1.1rem + 2vw, 2.5rem); text-transform: uppercase; }
h2 .hi, h1 .hi { color: var(--gold); text-shadow: var(--gold-glow); }
h3 { font-size: 1.05rem; font-weight: 700; letter-spacing: -0.01em; }
p { margin: 0; }
.lead { color: var(--text-2); font-size: 1.0625rem; max-width: 62ch; }

.icon { width: 24px; height: 24px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.icon--fill { fill: currentColor; stroke: none; }

/* ---------- кнопки ---------- */
.btn {
	display: inline-flex; align-items: center; justify-content: center; gap: .55em;
	min-height: 52px; padding: 0 1.4em;
	border-radius: 999px; border: 1px solid transparent;
	font: 700 1rem/1 var(--font-body); text-decoration: none; white-space: nowrap;
	cursor: pointer;
	transition: transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast) var(--ease-out), background-color var(--t-fast);
}
.btn:active { transform: translateY(1px) scale(.99); }
.btn--gold {
	background: linear-gradient(180deg, var(--gold-hi), var(--gold) 55%, #e2a12c);
	color: var(--gold-ink);
	box-shadow: 0 8px 24px -8px rgba(245, 185, 66, .65), inset 0 1px 0 rgba(255, 255, 255, .5);
}
.btn--gold:hover { color: var(--gold-ink); box-shadow: 0 12px 32px -8px rgba(245, 185, 66, .8), inset 0 1px 0 rgba(255, 255, 255, .55); }
.btn--wa { background: var(--wa); color: var(--wa-ink); box-shadow: 0 8px 24px -10px rgba(37, 211, 102, .6); }
.btn--wa:hover { color: var(--wa-ink); background: #2fe274; }
.btn--ghost { background: transparent; color: var(--text); border-color: var(--gold-line); }
.btn--ghost:hover { color: var(--gold-hi); border-color: var(--gold); background: var(--gold-soft); }
.btn--sm { min-height: 44px; padding: 0 1.05em; font-size: .9375rem; }

/* ---------- шапка ---------- */
.top {
	position: sticky; top: 0; z-index: 40;
	background: rgba(9, 9, 11, .82);
	backdrop-filter: saturate(1.4) blur(14px);
	-webkit-backdrop-filter: saturate(1.4) blur(14px);
	border-bottom: 1px solid rgba(245, 185, 66, .12);
}
.top__in { display: flex; align-items: center; gap: 16px; min-height: 64px; }
.logo { display: inline-flex; align-items: center; min-height: 44px; gap: 10px; text-decoration: none; color: var(--text); margin-right: auto; }
.logo img { height: 40px; width: auto; }
.logo span { font: 600 .75rem/1.25 var(--font-body); color: var(--text-3); }
.top__nav { display: none; gap: 4px; }
.top__nav a { color: var(--text-2); text-decoration: none; font-weight: 500; padding: 10px 12px; border-radius: 10px; min-height: 44px; display: inline-flex; align-items: center; }
.top__nav a:hover, .top__nav a[aria-current="page"] { color: var(--gold-hi); background: var(--gold-soft); }
.top__phone { display: none; color: var(--text); text-decoration: none; font-weight: 700; }
.top__call { width: 44px; height: 44px; min-height: 44px; padding: 0; }
@media (min-width: 900px) {
	.top__in { min-height: 76px; }
	.logo img { height: 48px; }
	.top__nav { display: flex; }
	.top__phone { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
	.top__call { width: auto; padding: 0 1.1em; }
	.top__call .lbl { display: inline; }
}
.top__call .lbl { display: none; }

/* ---------- хлебные крошки ---------- */
.crumbs { padding-block: 14px 0; }
.crumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 6px; font-size: .875rem; color: var(--text-3); }
.crumbs li { display: inline-flex; align-items: center; gap: 6px; }
.crumbs li + li::before { content: ""; width: 5px; height: 5px; border-top: 1.5px solid var(--gold-deep); border-right: 1.5px solid var(--gold-deep); transform: rotate(45deg); }
.crumbs a { color: var(--text-2); text-decoration: none; display: inline-flex; align-items: center; min-height: 44px; }
.crumbs a:hover { color: var(--gold-hi); text-decoration: underline; }
.crumbs [aria-current] { color: var(--text); }

/* ---------- дорожки платы (фирменный рисунок) ---------- */
.traces { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 0; }
.traces path { fill: none; stroke: var(--gold); stroke-width: 1.6; vector-effect: non-scaling-stroke; opacity: .8; filter: drop-shadow(0 0 3px rgba(245, 185, 66, .7)); }
.traces circle { fill: var(--ink); stroke: var(--gold); stroke-width: 1.4; vector-effect: non-scaling-stroke; }
.js .traces path { stroke-dasharray: 1; stroke-dashoffset: 1; animation: trace-draw 1.6s var(--ease-out) .25s forwards; }
.js .traces circle { opacity: 0; animation: pad-on .4s var(--ease-out) 1.2s forwards; }
@keyframes trace-draw { to { stroke-dashoffset: 0; } }
@keyframes pad-on { to { opacity: 1; } }

/* искры-боке: тёплая пыль света, как на баннерах */
.sparks { position: absolute; inset: 0; pointer-events: none; z-index: 0;
	background:
		radial-gradient(2px 2px at 12% 18%, rgba(255, 212, 106, .9), transparent 60%),
		radial-gradient(1.5px 1.5px at 78% 12%, rgba(255, 212, 106, .8), transparent 60%),
		radial-gradient(3px 3px at 88% 44%, rgba(245, 185, 66, .55), transparent 60%),
		radial-gradient(1.5px 1.5px at 6% 62%, rgba(255, 212, 106, .7), transparent 60%),
		radial-gradient(2.5px 2.5px at 64% 30%, rgba(245, 185, 66, .45), transparent 60%),
		radial-gradient(18px 18px at 92% 8%, rgba(245, 185, 66, .14), transparent 70%),
		radial-gradient(26px 26px at 4% 30%, rgba(245, 185, 66, .10), transparent 70%);
}

/* ---------- ГЛАВНАЯ: стойка приёма ---------- */
.intake { position: relative; overflow: hidden; isolation: isolate; padding-block: 20px 36px; }
.intake__photo {
	position: absolute; inset: 0 0 auto 0; height: 62%; z-index: -2;
	mask-image: linear-gradient(180deg, rgba(0,0,0,.95), rgba(0,0,0,.35) 60%, transparent);
	-webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,.95), rgba(0,0,0,.35) 60%, transparent);
}
/* фото в янтарной тонировке: ч/б снимок, поверх — цвет бренда (blend color), затем затемнение под текст */
.intake__photo img, .hero-in__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.2) brightness(.66); }
.intake__photo::after, .hero-in__photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, #f5b942, #a8670f); mix-blend-mode: color; }
.intake__photo::before, .hero-in__photo::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(9, 9, 11, .28), rgba(9, 9, 11, .58)); }
.intake__glow { position: absolute; inset: auto -20% -10% -20%; height: 70%; z-index: -1; background: radial-gradient(60% 50% at 50% 40%, rgba(245, 185, 66, .16), transparent 70%); }

.intake__head { position: relative; z-index: 1; padding-top: 18px; }
.intake h1 { display: grid; gap: 14px; }
.intake__grid { container-type: inline-size; }
.intake h1 .q {
	font-size: clamp(1.9rem, 10.6cqi, 6rem);
	font-weight: 900; line-height: .98; letter-spacing: -0.035em; text-transform: uppercase;
	color: var(--text);
	text-shadow: 0 0 40px rgba(245, 185, 66, .35), 0 2px 0 rgba(0, 0, 0, .4);
}
.intake h1 .q .hi { color: var(--gold); }
.intake h1 .sub { font: 600 clamp(1rem, .9rem + .5vw, 1.25rem)/1.35 var(--font-body); letter-spacing: 0; text-transform: none; color: var(--text-2); max-width: 30ch; }

.proof { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin-top: 18px; font-size: .9375rem; color: var(--text-2); }
.proof b { color: var(--text); font-weight: 700; }
.proof .rate { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px 6px 8px; border-radius: 999px; background: rgba(245, 185, 66, .12); border: 1px solid var(--gold-line); color: var(--gold-hi); font-weight: 700; }
.proof .rate svg { width: 18px; height: 18px; color: var(--gold); }
.proof .dot { width: 4px; height: 4px; border-radius: 50%; background: var(--gold-deep); }

.board { position: relative; z-index: 1; margin-top: 26px; }
.tiles { position: relative; z-index: 1; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.tile { display: flex; }
.tile a {
	flex: 1;
	position: relative; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 18px;
	min-height: 132px; padding: 16px 16px 14px;
	border-radius: var(--r-m);
	background: linear-gradient(165deg, #1d1d23, #111115 70%);
	border: 1px solid rgba(245, 185, 66, .32);
	box-shadow: 0 10px 28px -14px rgba(0, 0, 0, .9), inset 0 1px 0 rgba(255, 255, 255, .05);
	color: var(--text); text-decoration: none;
	transition: transform var(--t-fast) var(--ease-out), border-color var(--t-fast), box-shadow var(--t-mid) var(--ease-out);
}
.tile__ring { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 50%; color: var(--gold); border: 1.5px solid var(--gold); box-shadow: 0 0 18px rgba(245, 185, 66, .28), inset 0 0 10px rgba(245, 185, 66, .14); }
.tile__ring .icon { width: 26px; height: 26px; }
.tile__name { font: 800 .95rem/1.15 var(--font-display); text-transform: uppercase; letter-spacing: -0.01em; }
.tile__hint { display: block; margin-top: 4px; font: 500 .8125rem/1.3 var(--font-body); color: var(--text-3); text-transform: none; letter-spacing: 0; }
.tile a:hover, .tile a:focus-visible { transform: translateY(-2px); border-color: var(--gold); box-shadow: 0 14px 34px -14px rgba(0, 0, 0, .9), 0 0 0 1px var(--gold), 0 0 32px -6px rgba(245, 185, 66, .45); }
.tile a:hover .tile__ring { background: rgba(245, 185, 66, .12); }
.js .tile a { animation: tile-on .5s var(--ease-out) both; }
.js .tile:nth-child(1) a { animation-delay: .55s; } .js .tile:nth-child(2) a { animation-delay: .65s; }
.js .tile:nth-child(3) a { animation-delay: .75s; } .js .tile:nth-child(4) a { animation-delay: .85s; }
.js .tile:nth-child(5) a { animation-delay: .95s; } .js .tile:nth-child(6) a { animation-delay: 1.05s; }
@keyframes tile-on { from { border-color: rgba(245, 185, 66, .08); box-shadow: none; } }

.traces--mobile { display: block; } .traces--wide { display: none; }

.intake__cta { display: none; gap: 12px; margin-top: 26px; flex-wrap: wrap; }

@media (min-width: 900px) {
	.intake { padding-block: 40px 72px; }
	.intake__photo { inset: 0 0 0 46%; height: 100%; mask-image: linear-gradient(90deg, transparent, rgba(0,0,0,.6) 30%, rgba(0,0,0,.9)); -webkit-mask-image: linear-gradient(90deg, transparent, rgba(0,0,0,.6) 30%, rgba(0,0,0,.9)); }
	.intake__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); column-gap: 56px; row-gap: 22px; align-items: start; }
	.intake__head { display: contents; }
	.intake h1 { grid-column: 1 / -1; }
	.intake .proof { grid-column: 1; grid-row: 2; margin-top: 6px; }
	.intake__cta { grid-column: 1; grid-row: 3; margin-top: 0; }
	.board { grid-column: 2; grid-row: 2 / span 3; }
	.intake__cta { display: flex; }
	.board { margin-top: 0; }
	.tiles { grid-template-columns: repeat(3, 1fr); gap: 18px; }
	.tile a { min-height: 168px; padding: 20px; }
	.traces--mobile { display: none; } .traces--wide { display: block; }
}

/* ---------- полоса доверия ---------- */
.ledger { border-block: 1px solid rgba(245, 185, 66, .14); background: var(--ink-2); }
.ledger ul { list-style: none; margin: 0; padding: 14px 0; display: flex; flex-wrap: wrap; gap: 10px 22px; justify-content: center; font-size: .9375rem; color: var(--text-2); }
.ledger li { display: inline-flex; align-items: center; gap: 8px; }
.ledger svg { width: 20px; height: 20px; color: var(--gold); }
.ledger b { color: var(--text); }

/* ---------- дорожка-разделитель ---------- */
.rule { height: 36px; margin-block: clamp(4px, 1.5vw, 16px); }
.rule svg { width: 100%; height: 100%; display: block; }
.rule path { fill: none; stroke: var(--gold); stroke-width: 1.4; vector-effect: non-scaling-stroke; opacity: .7; filter: drop-shadow(0 0 4px rgba(245, 185, 66, .8)); }
.rule circle { fill: var(--ink); stroke: var(--gold); stroke-width: 1.4; vector-effect: non-scaling-stroke; }

/* ---------- секции ---------- */
.section { padding-block: clamp(48px, 7vw, 96px); position: relative; }
.section__head { display: grid; gap: 12px; margin-bottom: clamp(22px, 3vw, 36px); max-width: 760px; }

/* ---------- ВЕРСТАК: цены по реальным заказам ---------- */
.bench { display: grid; gap: 22px; }
.bench__photo { position: relative; border-radius: var(--r-l); overflow: hidden; aspect-ratio: 4 / 5; background: var(--ink-3); isolation: isolate; }
.bench__photo img { width: 100%; height: 100%; object-fit: cover; filter: contrast(1.1) brightness(.92); }
.bench__photo::before, .shop figure::before, .photo-frame::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: rgba(245, 172, 58, .5); mix-blend-mode: color; }
.bench__photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(9,9,11,.15), rgba(9,9,11,.05) 40%, rgba(9,9,11,.75)); z-index: 1; }
.pin { position: absolute; z-index: 2; left: var(--x); top: var(--y); }
.pin__dot { position: absolute; width: 18px; height: 18px; margin: -9px 0 0 -9px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 5px rgba(245, 185, 66, .25), 0 0 18px rgba(245, 185, 66, .9); }
.js .pin__dot { animation: pin-pulse 2.6s var(--ease-out) infinite; }
@keyframes pin-pulse { 0%, 100% { box-shadow: 0 0 0 5px rgba(245, 185, 66, .25), 0 0 18px rgba(245, 185, 66, .9); } 50% { box-shadow: 0 0 0 11px rgba(245, 185, 66, .05), 0 0 26px rgba(245, 185, 66, 1); } }
.pin__line { position: absolute; left: 0; top: 0; width: var(--len); height: 1.5px; background: linear-gradient(90deg, var(--gold), rgba(245, 185, 66, .4)); transform-origin: 0 50%; transform: rotate(var(--ang)); box-shadow: 0 0 6px rgba(245, 185, 66, .8); }
.pin__tag {
	position: absolute; left: var(--tx); top: var(--ty); transform: translate(-50%, -50%);
	padding: 10px 14px; border-radius: 12px; white-space: nowrap;
	background: rgba(9, 9, 11, .88); border: 1px solid var(--gold); box-shadow: 0 0 22px -4px rgba(245, 185, 66, .55);
	font: 600 .875rem/1.2 var(--font-body); color: var(--text);
}
.pin__tag b { display: block; font: 800 1.15rem/1.15 var(--font-display); color: var(--gold); margin-top: 2px; }
.bench__caption { position: absolute; z-index: 2; left: 12px; top: 12px; max-width: calc(100% - 24px); padding: 6px 10px; border-radius: 8px; background: rgba(9, 9, 11, .78); font-size: .75rem; color: var(--text-2); }

.prices { display: grid; gap: 0; border-radius: var(--r-l); background: var(--ink-2); border: 1px solid rgba(245, 185, 66, .2); overflow: hidden; }
.price { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; padding: 16px 18px; text-decoration: none; color: var(--text); border-bottom: 1px solid rgba(255, 255, 255, .06); min-height: 64px; transition: background-color var(--t-fast); }
.price:last-of-type { border-bottom: 0; }
.price:hover { background: var(--gold-soft); color: var(--text); }
.price .icon { color: var(--gold); }
.price__name { font-weight: 600; }
.price__name small { display: block; font-weight: 400; color: var(--text-3); font-size: .8125rem; }
.price__val { font: 800 1.125rem/1 var(--font-display); color: var(--gold); white-space: nowrap; }
.price__val--quiet { font: 600 .875rem/1.2 var(--font-body); color: var(--text-2); text-align: right; white-space: normal; max-width: 12ch; }
.prices__note { padding: 14px 18px 16px; font-size: .8125rem; color: var(--text-3); background: var(--ink-3); }

@media (min-width: 900px) {
	.bench { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 36px; align-items: stretch; }
	.bench { align-items: start; }
}

/* ---------- мастер ---------- */
.master { display: grid; gap: 22px; }
.master__photo { margin: 0; }
.master__photo img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 20%; border-radius: var(--r-l); border: 1px solid var(--gold-line); box-shadow: 0 24px 60px -24px rgba(245, 185, 66, .35); }
.master__photo figcaption { margin-top: 8px; font-size: .75rem; color: var(--text-3); }
.master__text { display: grid; gap: 16px; align-content: start; }
.ticks { list-style: none; margin: 0; padding: 0; display: grid; }
.ticks li { display: grid; grid-template-columns: 24px 1fr; gap: 12px; align-items: center; padding: 12px 0; border-top: 1px solid var(--gold-line); font-weight: 600; }
.ticks li:last-child { border-bottom: 1px solid var(--gold-line); }
.ticks .icon { color: var(--gold); }
.master__cta { display: none; gap: 10px; flex-wrap: wrap; }
@media (min-width: 900px) {
	.master { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 56px; align-items: center; }
	.master__cta { display: flex; }
}

/* ---------- путь устройства (одна золотая линия) ---------- */
.route { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; counter-reset: none; }
.route li { position: relative; display: grid; grid-template-columns: 44px 1fr; gap: 16px; padding-bottom: 26px; }
.route li::before { content: ""; position: absolute; left: 21px; top: 44px; bottom: 0; width: 2px; background: linear-gradient(180deg, var(--gold), rgba(245, 185, 66, .2)); box-shadow: 0 0 8px rgba(245, 185, 66, .5); }
.route li:last-child::before { display: none; }
.route__node { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; color: var(--gold); border: 1.5px solid var(--gold); background: var(--ink); box-shadow: 0 0 16px rgba(245, 185, 66, .3); }
.route h3 { margin-top: 10px; }
.route p { color: var(--text-2); margin-top: 4px; font-size: .9375rem; }
@media (min-width: 900px) {
	.route { grid-template-columns: repeat(5, 1fr); gap: 18px; }
	.route li { grid-template-columns: 1fr; gap: 14px; padding-bottom: 0; }
	.route li::before { left: 44px; right: -18px; top: 21px; bottom: auto; width: auto; height: 2px; background: linear-gradient(90deg, var(--gold), rgba(245, 185, 66, .25)); }
	.route h3 { margin-top: 0; }
}

/* ---------- устройства и бренды ---------- */
.devices { list-style: none; margin: 0; padding: 0; display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 6px; scrollbar-width: thin; }
.devices a { scroll-snap-align: start; display: flex; align-items: center; gap: 10px; min-height: 56px; padding: 0 18px 0 14px; border-radius: 999px; background: var(--ink-3); border: 1px solid rgba(255, 255, 255, .08); color: var(--text); text-decoration: none; font-weight: 600; white-space: nowrap; }
.devices a .icon { color: var(--gold); }
.devices a:hover { border-color: var(--gold); background: var(--gold-soft); color: var(--text); }
.brands { list-style: none; margin: 18px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.brands a { display: grid; place-items: center; min-height: 52px; border-radius: 12px; border: 1px solid rgba(245, 185, 66, .16); color: var(--text-2); text-decoration: none; font: 700 .9375rem/1 var(--font-body); background: rgba(255, 255, 255, .02); }
.brands a:hover { color: var(--gold-hi); border-color: var(--gold); }
@media (min-width: 900px) { .devices { flex-wrap: wrap; overflow: visible; } .brands { grid-template-columns: repeat(8, 1fr); } }

/* ---------- мастерская ---------- */
.shop { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }
.shop figure { position: relative; isolation: isolate; margin: 0; border-radius: var(--r-m); overflow: hidden; background: var(--ink-3); grid-column: span 3; aspect-ratio: 3 / 4; }
.shop figure:first-child { grid-column: span 6; aspect-ratio: 16 / 10; }
.shop img { width: 100%; height: 100%; object-fit: cover; filter: contrast(1.08); transition: transform 1.2s var(--ease-out); }
.shop figure:hover img { transform: scale(1.04); }
.shop figcaption { position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; padding: 36px 14px 12px; font-size: .875rem; font-weight: 600; background: linear-gradient(180deg, transparent, rgba(9, 9, 11, .9)); }
@media (min-width: 900px) {
	.shop { grid-template-columns: 1.5fr 1fr; grid-template-rows: 1fr 1fr; height: 560px; }
	.shop figure, .shop figure:first-child { grid-column: auto; aspect-ratio: auto; }
	.shop figure:first-child { grid-row: span 2; }
}

/* оборудование: список рядом с фото */
.kit { list-style: none; margin: 0 0 18px; padding: 0; display: grid; gap: 0; }
.kit li { display: grid; grid-template-columns: 48px 1fr; gap: 14px; align-items: start; padding: 16px 0; border-top: 1px solid var(--gold-line); }
.kit li:last-child { border-bottom: 1px solid var(--gold-line); }
.kit .icon { width: 48px; height: 48px; padding: 11px; border-radius: 50%; color: var(--gold); border: 1.5px solid var(--gold); box-shadow: 0 0 16px rgba(245, 185, 66, .28); }
.kit p { color: var(--text-2); font-size: .9375rem; margin-top: 4px; }
@media (min-width: 900px) { .kit { grid-template-columns: 1fr 1fr; column-gap: 40px; row-gap: 0; margin-bottom: 26px; } .kit li:nth-last-child(2) { border-bottom: 1px solid var(--gold-line); } }

/* ---------- раскрывающиеся SEO-блоки ---------- */
.fold { border-top: 1px solid rgba(245, 185, 66, .16); }
.fold:last-child { border-bottom: 1px solid rgba(245, 185, 66, .16); }
.fold summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; padding-block: 14px; font: 700 1.0625rem/1.3 var(--font-body); }
.fold summary::-webkit-details-marker { display: none; }
.fold summary::after { content: ""; flex: none; width: 10px; height: 10px; border-right: 2px solid var(--gold); border-bottom: 2px solid var(--gold); transform: rotate(45deg); transition: transform var(--t-fast) var(--ease-out); margin-right: 6px; }
.fold[open] summary::after { transform: rotate(-135deg); }
.fold summary:hover { color: var(--gold-hi); }
.fold__body { padding-bottom: 22px; color: var(--text-2); display: grid; gap: 12px; max-width: 72ch; }
.fold__body ul { margin: 0; padding-left: 1.1em; display: grid; gap: 6px; }
.fold__body li::marker { color: var(--gold); }

/* ---------- контакты ---------- */
.section#visit { padding-top: clamp(8px, 2vw, 24px); }
.visit { display: grid; gap: 18px; padding: clamp(22px, 4vw, 40px); border-radius: var(--r-l); position: relative; overflow: hidden; isolation: isolate;
	background: radial-gradient(80% 120% at 100% 0%, rgba(245, 185, 66, .18), transparent 60%), var(--ink-2);
	border: 1px solid rgba(245, 185, 66, .28); }
.visit__rows { display: grid; gap: 14px; }
.visit__row { display: grid; grid-template-columns: 24px 1fr; gap: 12px; align-items: start; color: var(--text-2); }
.visit__row .icon { color: var(--gold); margin-top: 2px; }
.visit__row b { color: var(--text); display: block; font-size: 1.0625rem; }
.visit__acts { display: flex; flex-wrap: wrap; gap: 10px; }
@media (min-width: 900px) { .visit { grid-template-columns: 1.2fr 1fr; align-items: center; gap: 40px; } }

/* ---------- подвал ---------- */
.foot { margin-top: clamp(48px, 7vw, 96px); padding-block: 36px 28px; background: #060607; border-top: 1px solid rgba(245, 185, 66, .14); color: var(--text-3); font-size: .875rem; }
.foot__grid { display: grid; gap: 22px; }
.foot nav { display: flex; flex-wrap: wrap; gap: 4px 18px; }
.foot nav a { color: var(--text-2); text-decoration: none; display: inline-flex; align-items: center; min-height: 44px; }
.foot nav a:hover { color: var(--gold-hi); }
.foot__legal { max-width: 80ch; line-height: 1.55; }

/* ---------- липкая панель на телефоне ---------- */
.dock { position: fixed; z-index: 50; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: 1.35fr 1fr; gap: 10px; padding: 10px 12px calc(10px + env(safe-area-inset-bottom)); background: rgba(9, 9, 11, .92); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-top: 1px solid rgba(245, 185, 66, .22); }
.dock .btn { min-height: 54px; width: 100%; }
@media (min-width: 900px) { .dock { display: none; } }

/* ---------- ВНУТРЕННИЕ ШАБЛОНЫ ---------- */
.hero-in { position: relative; overflow: hidden; isolation: isolate; padding-block: 8px 34px; }
.hero-in__photo { position: absolute; inset: 0; z-index: -2; mask-image: linear-gradient(180deg, rgba(0,0,0,.9), transparent 92%); -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,.9), transparent 92%); }
.hero-in h1 { margin-top: 20px; font-size: clamp(1.6rem, .9rem + 4.4vw, 4rem); font-weight: 900; text-transform: uppercase; letter-spacing: -0.03em; text-shadow: 0 0 36px rgba(245, 185, 66, .3); }
.hero-in .lead { margin-top: 14px; }
.hero-in__cta { display: none; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
@media (min-width: 900px) { .hero-in__cta { display: flex; } }

/* поиск модели */
.finder { margin-top: 22px; position: relative; max-width: 560px; }
.finder input {
	width: 100%; min-height: 58px; padding: 0 18px 0 52px; border-radius: 999px;
	background: rgba(9, 9, 11, .8); border: 1.5px solid var(--gold-line); color: var(--text);
	font: 500 1.0625rem var(--font-body);
	transition: border-color var(--t-fast), box-shadow var(--t-fast);
}
.finder input::placeholder { color: var(--text-3); }
.finder input:focus { outline: none; border-color: var(--gold); box-shadow: 0 0 0 4px rgba(245, 185, 66, .18), 0 0 24px -4px rgba(245, 185, 66, .5); }
.finder .icon { position: absolute; left: 18px; top: 50%; transform: translateY(-50%); color: var(--gold); }

.series { display: grid; gap: 22px; }
.series h3 { font: 800 1.125rem/1.2 var(--font-display); color: var(--text); letter-spacing: -0.01em; margin-bottom: 12px; display: flex; align-items: center; gap: 12px; }
.series h3::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, var(--gold-line), transparent); }
.models { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.models a { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 52px; padding: 0 14px; border-radius: 12px; background: var(--ink-3); border: 1px solid rgba(255, 255, 255, .07); color: var(--text); text-decoration: none; font-weight: 600; font-size: .9375rem; }
.models a::after { content: ""; flex: none; width: 7px; height: 7px; border-top: 1.5px solid var(--gold); border-right: 1.5px solid var(--gold); transform: rotate(45deg); }
.models a:hover { border-color: var(--gold); background: var(--gold-soft); color: var(--text); }
.models li[hidden] { display: none; }
.empty { display: none; padding: 18px; border-radius: 14px; background: var(--ink-3); color: var(--text-2); }
.empty.is-on { display: block; }
@media (min-width: 640px) { .models { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1000px) { .models { grid-template-columns: repeat(5, 1fr); } }

/* симптомы */
.chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.chips a { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 16px 0 12px; border-radius: 999px; border: 1px solid var(--gold-line); color: var(--text); text-decoration: none; font-weight: 600; font-size: .9375rem; background: rgba(255, 255, 255, .02); }
.chips a .icon { width: 20px; height: 20px; color: var(--gold); }
.chips a:hover { border-color: var(--gold); background: var(--gold-soft); color: var(--text); }

/* шкала показаний: один блок ответа на любом шаблоне услуги */
.gauge { display: grid; gap: 1px; margin-top: 22px; border-radius: var(--r-l); overflow: hidden; background: rgba(245, 185, 66, .25); border: 1px solid rgba(245, 185, 66, .45); box-shadow: 0 0 40px -12px rgba(245, 185, 66, .45); }
.gauge > div { background: rgba(12, 12, 14, .94); padding: 16px 18px; display: grid; gap: 4px; }
.gauge dt { font-size: .8125rem; color: var(--text-3); }
.gauge dd { margin: 0; font: 800 1.35rem/1.15 var(--font-display); color: var(--gold); }
.gauge dd small { display: block; margin-top: 4px; font: 500 .8125rem/1.35 var(--font-body); color: var(--text-2); }
@media (min-width: 720px) { .gauge { grid-template-columns: repeat(3, 1fr); } }

.split { display: grid; gap: 28px; }
@media (min-width: 900px) { .split { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: start; } }

.signs { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.signs li { display: grid; grid-template-columns: 24px 1fr; gap: 12px; padding: 14px 16px; border-radius: 14px; background: var(--ink-2); border: 1px solid rgba(255, 255, 255, .06); color: var(--text-2); }
.signs li .icon { color: var(--gold); }
.signs b { color: var(--text); }

.photo-frame { border-radius: var(--r-l); overflow: hidden; position: relative; isolation: isolate; aspect-ratio: 4 / 5; }
.photo-frame img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.15) brightness(.85); }
.photo-frame::before { background: linear-gradient(160deg, #f5b942, #b0731a); }
.photo-frame figcaption { position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; padding: 40px 16px 14px; font-size: .8125rem; color: var(--text-2); background: linear-gradient(180deg, transparent, rgba(9, 9, 11, .92)); }

.links-grid { display: grid; gap: 10px; }
@media (min-width: 720px) { .links-grid { grid-template-columns: 1fr 1fr; } }

.notice { margin-top: 18px; padding: 14px 16px; border-radius: 14px; background: var(--ink-2); color: var(--text-3); font-size: .8125rem; line-height: 1.5; }

/* ==========================================================================
   Слой WordPress поверх дизайн-системы (design/site-v2/assets/site.css):
   1) блоки, которые вставляет плагин SmartKing SEO Controller;
   2) совместимость шаблонов родителя, не переделанных в этом релизе;
   3) точечные контр-правила к !important плагина (#smartking-mobile-seo).
   ========================================================================== */

/* ---------- общее для контента из базы ---------- */
.prose { max-width: 72ch; color: var(--text-2); display: grid; gap: 14px; }
.prose h2, .prose h3 { color: var(--text); margin-top: 10px; }
.prose h2 { font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem); text-transform: none; }
.prose ul, .prose ol { margin: 0; padding-left: 1.2em; display: grid; gap: 6px; }
.prose li::marker { color: var(--gold); }
.prose img { border-radius: var(--r-m); height: auto; }
.prose table { width: 100%; border-collapse: collapse; font-size: .9375rem; }
.prose td, .prose th { border-bottom: 1px solid rgba(255, 255, 255, .08); padding: 10px 8px; text-align: left; }
.kit--stack { grid-template-columns: 1fr !important; }
.kit--stack li { grid-template-columns: 48px 1fr !important; }
.v2-legacy, .v2-technic { padding-block: 8px 0; }
.v2-technic > * + * { margin-top: 28px; }

/* ---------- кнопки старых шаблонов и плагина — в новом виде ---------- */
.sk-leadgen-btn, .ss-btn, .sk-cta, .app-cta-secondary, .app-cta-yamap {
	display: inline-flex; align-items: center; justify-content: center; gap: .5em;
	min-height: 48px; padding: 0 1.2em; border-radius: 999px; font-weight: 700; text-decoration: none;
	border: 1px solid var(--gold-line); color: var(--text); background: transparent;
}
.sk-leadgen-btn--primary, .ss-btn-primary, .sk-cta {
	background: linear-gradient(180deg, var(--gold-hi), var(--gold) 55%, #e2a12c); color: var(--gold-ink); border-color: transparent;
	box-shadow: 0 8px 24px -8px rgba(245, 185, 66, .65);
}
.sk-leadgen-btn--primary:hover, .ss-btn-primary:hover, .sk-cta:hover { color: var(--gold-ink); }
.sk-leadgen-btn--ghost:hover, .sk-leadgen-btn--map:hover, .ss-btn-ghost:hover, .app-cta-secondary:hover, .app-cta-yamap:hover { color: var(--gold-hi); border-color: var(--gold); background: var(--gold-soft); }

/* ---------- блоки плагина ---------- */
.sk-leadgen-panel, .sk-scale-content, .sk-hub-seo, .sk-brand-seo, .sk-home-seo-boost, .sk-seo-landing, .sk-related-ready {
	box-sizing: border-box; width: auto;
	max-width: calc(min(var(--max), 100%) - 2 * var(--gutter)); margin: clamp(28px, 5vw, 56px) auto;
	padding: clamp(20px, 3.5vw, 36px); border-radius: var(--r-l);
	background: var(--ink-2); border: 1px solid rgba(245, 185, 66, .18); color: var(--text-2);
	display: grid; gap: 16px;
}
.sk-leadgen-panel { background: radial-gradient(80% 120% at 100% 0%, rgba(245, 185, 66, .16), transparent 60%), var(--ink-2); border-color: rgba(245, 185, 66, .3); }
.sk-leadgen-panel h2, .sk-scale-content h2, .sk-hub-seo h2, .sk-brand-seo h2, .sk-home-seo-boost h2, .sk-seo-landing-title {
	color: var(--text); font-family: var(--font-display); font-weight: 800; text-transform: uppercase;
	font-size: clamp(1.25rem, 1rem + 1.4vw, 2rem); line-height: 1.1; margin: 0;
}
.sk-scale-content h3, .sk-hub-seo h3, .sk-brand-seo h3 { color: var(--text); font-size: 1.05rem; margin: 8px 0 0; }
.sk-leadgen-panel__eyebrow, .sk-hub-seo__eyebrow, .sk-brand-seo__eyebrow, .sk-home-seo-boost__eyebrow {
	font-size: .8125rem; color: var(--gold); font-weight: 700; margin: 0;
}
.sk-leadgen-actions, .sk-brand-seo__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.sk-leadgen-panel__facts, .sk-scale-facts, .sk-hub-seo__facts, .sk-brand-seo__facts, .sk-home-seo-boost__facts, .sk-landing-proof {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px;
}
.sk-leadgen-panel__facts > div, .sk-scale-facts > div, .sk-hub-seo__facts > div, .sk-brand-seo__facts > div, .sk-home-seo-boost__facts > span {
	padding: 12px 14px; border-radius: 14px; background: var(--ink-3); border: 1px solid rgba(255, 255, 255, .06); display: grid; gap: 2px; font-size: .875rem;
}
.sk-leadgen-panel__facts strong, .sk-scale-facts strong, .sk-hub-seo__facts strong, .sk-brand-seo__facts strong { color: var(--gold); font-family: var(--font-display); font-weight: 800; }
.sk-hub-seo__grid, .sk-brand-seo__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; }
.sk-hub-seo__grid > div, .sk-brand-seo__grid > div { padding: 14px 16px; border-radius: 14px; background: var(--ink-3); }
.sk-scale-content ul, .sk-scale-content ol, .sk-hub-seo ol, .sk-hub-seo__facts-list, .sk-home-seo-boost__routes { margin: 0; padding-left: 1.2em; display: grid; gap: 6px; }
.sk-scale-related, .sk-hub-seo__chips, .sk-brand-seo__chips, .sk-commercial-links, .sk-landing-models, .sk-home-seo-boost__links, .sk-related-ready ul {
	list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px;
}
.sk-scale-related a, .sk-hub-seo__chips a, .sk-brand-seo__chips a, .sk-commercial-links a, .sk-landing-models a, .sk-home-seo-boost__links a, .sk-related-ready a {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; border-radius: 999px;
	border: 1px solid var(--gold-line); color: var(--text); text-decoration: none; font-weight: 600; font-size: .9375rem; background: rgba(255, 255, 255, .02);
}
.sk-scale-related a:hover, .sk-hub-seo__chips a:hover, .sk-brand-seo__chips a:hover, .sk-commercial-links a:hover, .sk-landing-models a:hover, .sk-home-seo-boost__links a:hover { border-color: var(--gold); background: var(--gold-soft); color: var(--text); }
.sk-home-seo-boost__main { color: var(--gold-hi); font-weight: 700; }
.sk-home-seo-boost__routes a { color: var(--text); }
.sk-home-seo-boost__routes strong { color: var(--gold); }
.sk-scale-content details, .sk-hub-seo__faq details, .sk-brand-seo__faq details, .sk-landing-faq details { border-top: 1px solid rgba(245, 185, 66, .16); }
.sk-scale-content summary, .sk-hub-seo__faq summary, .sk-brand-seo__faq summary, .sk-landing-faq summary {
	cursor: pointer; min-height: 52px; display: flex; align-items: center; font-weight: 700; color: var(--text);
}
.sk-brand-seo__note, .sk-brand-seo__trust { font-size: .875rem; color: var(--text-3); }

/* ---------- старые шаблоны: секции, крошки, заголовки ---------- */
.app-main { max-width: var(--max); margin: 0 auto; padding: 16px var(--gutter) 0; display: grid; gap: 24px; }
.app-section, .app-hero-card, .sk-container, .container.sk-technic, .container.sk-brand, .ss-page { max-width: var(--max); margin-inline: auto; padding-inline: var(--gutter); }
.app-section-title, .sk-hero h1, .ss-hero h1, .sk-technic h1, .sk-brand h1, .sk-model-title {
	font-family: var(--font-display); font-weight: 900; text-transform: uppercase; letter-spacing: -0.02em; line-height: 1.05; color: var(--text);
	font-size: clamp(1.6rem, .9rem + 3.6vw, 3.25rem); margin: 16px 0 12px; text-wrap: balance;
}
.app-section-sub, .sk-muted, .sk-seo-lead, .ss-lead, .sk-model-subtitle { color: var(--text-2); }
.sk-breadcrumbs, .ss-breadcrumbs { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; font-size: .875rem; color: var(--text-3); padding-top: 14px; }
.sk-breadcrumbs a, .ss-breadcrumbs a { color: var(--text-2); text-decoration: none; min-height: 44px; display: inline-flex; align-items: center; }
.sk-breadcrumbs a:hover, .ss-breadcrumbs a:hover { color: var(--gold-hi); }
.sk-badge, .sk-model-badge, .app-location-tag { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; background: var(--gold-soft); color: var(--gold-hi); font-size: .8125rem; font-weight: 700; }
.sk-model-badge-dot { color: var(--gold); }

/* карточки и сетки */
.app-card, .app-seo-card, .sk-card, .sk-block, .app-location-card, .sk-model-hero, .sk-service-hero, .app-hero-card {
	background: var(--ink-2); border: 1px solid rgba(255, 255, 255, .07); border-radius: var(--r-l); padding: clamp(16px, 3vw, 28px);
}
.app-device-grid, .app-seo-grid, .sk-problem__grid, .sk-service-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
.app-device-card { display: grid; gap: 6px; padding: 16px; border-radius: var(--r-m); background: linear-gradient(165deg, #1d1d23, #111115 70%); border: 1px solid rgba(245, 185, 66, .28); color: var(--text); text-decoration: none; }
.app-device-card:hover { border-color: var(--gold); color: var(--text); }
.app-device-icon { font-size: 1.5rem; }
.app-device-name { font-weight: 800; font-family: var(--font-display); font-size: .95rem; text-transform: uppercase; }
.app-device-note { color: var(--text-3); font-size: .8125rem; }

/* списки моделей, проблем и услуг (single-technic и др.) */
.sk-model-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
@media (min-width: 640px) { .sk-model-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1000px) { .sk-model-grid { grid-template-columns: repeat(4, 1fr); } }
.sk-model-btn {
	display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 52px; padding: 0 14px;
	border-radius: 12px; background: var(--ink-3); border: 1px solid rgba(255, 255, 255, .07); color: var(--text); text-decoration: none; font-weight: 600; font-size: .9375rem;
}
.sk-model-btn::after { content: ""; flex: none; width: 7px; height: 7px; border-top: 1.5px solid var(--gold); border-right: 1.5px solid var(--gold); transform: rotate(45deg); }
.sk-model-btn:hover { border-color: var(--gold); background: var(--gold-soft); color: var(--text); }
.sk-model-links h2, .sk-related h2, .sk-models h2, .sk-brand-links h2, .ss-section h2, .sk-problem__title, .sk-service-title {
	font-size: clamp(1.15rem, 1rem + 1vw, 1.6rem); margin: 22px 0 14px; color: var(--text);
}
.sk-content { color: var(--text-2); max-width: 72ch; }
.sk-content p + p { margin-top: 10px; }
.sk-problem__list, .sk-bullets, .ss-list { margin: 0; padding-left: 1.2em; display: grid; gap: 6px; color: var(--text-2); }
.sk-problem__list li::marker, .sk-bullets li::marker, .ss-list li::marker { color: var(--gold); }
.sk-related ul:not(.sk-model-grid) { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.sk-related ul:not(.sk-model-grid) a { display: inline-flex; min-height: 44px; align-items: center; padding: 0 14px; border-radius: 999px; border: 1px solid var(--gold-line); color: var(--text); text-decoration: none; }

/* «Почему SmartKing», «Как проходит ремонт», FAQ — части родителя */
.sk-trust, .sk-steps, .sk-faq { margin-top: 28px; }
.sk-trust__title, .sk-steps__title, .sk-faq-title { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; color: var(--text); font-size: clamp(1.15rem, 1rem + 1vw, 1.6rem); margin: 0 0 14px; }
.sk-trust__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px 28px; }
.sk-trust__item { display: grid; grid-template-columns: 20px 1fr; gap: 10px; color: var(--text); }
.sk-trust__item .icon { width: 20px; height: 20px; color: var(--gold); }
.sk-steps__list { counter-reset: step; list-style: none; margin: 0; padding: 0; display: grid; }
.sk-steps__item { counter-increment: step; position: relative; padding: 12px 0 12px 40px; border-top: 1px solid rgba(245, 185, 66, .16); color: var(--text-2); }
.sk-steps__item::before { content: counter(step); position: absolute; left: 0; top: 10px; font: 800 1.25rem/1.3 var(--font-display); color: var(--gold); }
.sk-steps__item strong { color: var(--text); }
@media (min-width: 900px) {
	.sk-steps__list { grid-template-columns: repeat(5, 1fr); gap: 24px; }
	.sk-steps__item { padding: 44px 0 0; }
	.sk-steps__item strong { display: block; }
}
.sk-faq-list { display: grid; }
.sk-faq-item { border-top: 1px solid rgba(245, 185, 66, .16); padding: 14px 0; }
.sk-faq-q { color: var(--text); font-weight: 700; }
.sk-faq-a { color: var(--text-2); margin-top: 6px; }
.ss-faq details { border-top: 1px solid rgba(245, 185, 66, .16); }
.ss-faq summary { cursor: pointer; min-height: 52px; display: flex; align-items: center; font-weight: 700; color: var(--text); }
.ss-cta-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }

/* /trubles/ */
.trubles-search-input { width: 100%; min-height: 54px; padding: 0 18px; border-radius: 999px; background: var(--ink-2); border: 1.5px solid var(--gold-line); color: var(--text); font: 500 1rem var(--font-body); }
.trubles-search-input:focus { outline: none; border-color: var(--gold); }
.trubles-groups { display: grid; gap: 18px; margin-top: 16px; }
.trubles-group-title { color: var(--text-3); font-size: .875rem; font-weight: 700; margin-bottom: 8px; }
.trubles-group-list { display: flex; flex-wrap: wrap; gap: 8px; }
.trubles-chip { display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--gold-line); color: var(--text); text-decoration: none; }
.trubles-chip:hover { border-color: var(--gold); background: var(--gold-soft); color: var(--text); }

/* новости и статьи (index.php родителя) */
.sk-feed { display: grid; gap: 14px; }
.sk-feed-item { display: grid; gap: 14px; padding: 16px; border-radius: var(--r-l); background: var(--ink-2); border: 1px solid rgba(255, 255, 255, .07); }
@media (min-width: 720px) { .sk-feed-item { grid-template-columns: 220px 1fr; } }
.sk-feed-thumb img { border-radius: var(--r-m); width: 100%; height: auto; }
.sk-feed-body:first-child { grid-column: 1 / -1; } /* запись без картинки — на всю ширину */
.sk-feed-title { line-height: 1.2; margin-bottom: 6px; }
.sk-feed-title a { color: var(--text); text-decoration: none; font-family: var(--font-display); font-weight: 800; font-size: 1.15rem; }
.sk-feed-meta { color: var(--text-3); font-size: .8125rem; }
.sk-feed-excerpt { color: var(--text-2); }
.sk-feed-more { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; color: var(--gold-hi); font-weight: 700; text-decoration: none; }
.sk-feed-more .icon { width: 16px; height: 16px; }
.sk-feed-excerpt p { margin: 0; }
.sk-article { max-width: 760px; }
.sk-article-thumb { margin: 0 0 18px; }
.sk-article-thumb img { width: 100%; height: auto; border-radius: var(--r-m); display: block; }
.sk-article-nav { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; margin-top: 28px; }
.sk-article-nav a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 14px; border-radius: 14px; border: 1px solid var(--gold-line); color: var(--text); text-decoration: none; font-size: .9375rem; }
.sk-article-nav a:hover { border-color: var(--gold); background: var(--gold-soft); color: var(--text); }
.sk-article-body { color: var(--text-2); font-size: 1.0625rem; line-height: 1.65; display: grid; gap: 14px; }
.sk-article-body h2, .sk-article-body h3 { color: var(--text); margin-top: 12px; }
.sk-article-body a { color: var(--gold-hi); }
.sk-article-meta, .sk-article-back { color: var(--text-3); font-size: .875rem; }
.nav-links { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 20px; }
.nav-links .page-numbers { display: inline-grid; place-items: center; min-width: 44px; min-height: 44px; padding: 0 12px; border-radius: 12px; background: var(--ink-3); color: var(--text); text-decoration: none; }
.nav-links .page-numbers.current { background: var(--gold); color: var(--gold-ink); }

/* формы (статус ремонта, скупка) */
.app-main input[type="text"], .app-main input[type="tel"], .app-main input[type="search"], .app-main input[type="number"], .app-main select, .app-main textarea,
.v2-main input[type="text"], .v2-main input[type="tel"], .v2-main input[type="number"], .v2-main select, .v2-main textarea {
	min-height: 52px; padding: 0 16px; border-radius: 14px; background: var(--ink-2); border: 1.5px solid var(--gold-line); color: var(--text); font: 500 1rem var(--font-body);
}
.v2-main textarea, .app-main textarea { padding: 12px 16px; }
.v2-main button[type="submit"], .app-main button[type="submit"], .v2-main input[type="submit"] {
	min-height: 52px; padding: 0 1.4em; border: 0; border-radius: 999px; cursor: pointer; font: 700 1rem var(--font-body);
	background: linear-gradient(180deg, var(--gold-hi), var(--gold) 55%, #e2a12c); color: var(--gold-ink);
}

/* старая нижняя навигация и шапка родителя не используются в v2 */
.app-bottom-nav, .app-topbar { display: none !important; }

/* ---------- фото: естественные цвета с лёгким тёплым оттенком (владелец: «сильно пожелтил») ----------
   В макетах фото переводились в ч/б и заливались янтарём целиком (в первом экране и в рамках) или на 50%
   (верстак, оборудование). Теперь цвет свой, янтарь — тонкий слой; в первом экране фото остаётся
   приглушённым, чтобы заголовок поверх читался. */
.intake__photo img, .hero-in__photo img { filter: grayscale(.45) contrast(1.12) brightness(.6); }
.intake__photo::after, .hero-in__photo::after { opacity: .4; }
.bench__photo::before, .shop figure::before, .photo-frame::before { opacity: .22; }
.photo-frame img { filter: saturate(.92) contrast(1.06) brightness(.9); }

/* панель доверия на главной (skv2_trust_panel): награда, площадки с отзывами, цифры. Заменяет полосу .ledger */
.trust {
	padding-block: clamp(22px, 4vw, 40px); border-block: 1px solid rgba(245, 185, 66, .16);
	background: radial-gradient(70% 140% at 0% 0%, rgba(245, 185, 66, .09), transparent 60%), linear-gradient(180deg, #131214, #0b0b0d);
}
.trust__in { display: grid; gap: 18px; grid-template-areas: "award" "reviews" "stats"; }
.trust__award { grid-area: award; display: flex; align-items: center; gap: 14px; }
.trust__award img { flex: none; width: 58px; height: auto; filter: drop-shadow(0 10px 20px rgba(245, 185, 66, .28)); }
.trust__award b { display: block; font: 800 1rem/1.15 var(--font-display); text-transform: uppercase; letter-spacing: -.01em; color: var(--text); }
.trust__award span { display: block; margin-top: 4px; font-size: .8125rem; color: var(--gold); }
.trust__reviews { grid-area: reviews; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.trust__reviews a {
	display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; align-items: center; gap: 10px; min-height: 54px; padding: 8px 12px 8px 10px;
	border-radius: 14px; background: linear-gradient(165deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .01)); border: 1px solid rgba(245, 185, 66, .2);
	color: var(--text); text-decoration: none; transition: border-color var(--t-fast), background-color var(--t-fast);
}
.trust__reviews a:hover { border-color: var(--gold); background: var(--gold-soft); color: var(--text); }
.trust__mark { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 9px; font: 800 .75rem/1 var(--font-display); color: #fff; }
.trust__mark--ya { background: #fc3f1d; }
.trust__mark--gis { background: #29a644; }
.trust__mark--google { background: #fff; color: #4285f4; }
.trust__mark--avito { background: #00aaff; }
.trust__name { min-width: 0; font-weight: 700; font-size: .875rem; line-height: 1.2; }
.trust__rate { display: inline-flex; align-items: center; gap: 3px; font: 800 .9375rem/1 var(--font-display); color: var(--gold-hi); }
.trust__rate .icon { width: 14px; height: 14px; color: var(--gold); }
.trust__stats { grid-area: stats; list-style: none; margin: 0; padding: 16px 0 0; border-top: 1px solid rgba(245, 185, 66, .14); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; text-align: center; }
.trust__stats b {
	display: block; font: 800 clamp(1.05rem, .85rem + 1.2vw, 1.75rem)/1.1 var(--font-display); white-space: nowrap; color: var(--gold);
}
.trust__stats span { display: block; margin-top: 4px; font-size: .75rem; line-height: 1.3; color: var(--text-3); }
/* на телефоне оценка под названием площадки, цифры по ширине колонки: иначе текст зажимало и обрезало */
@media (max-width: 899px) {
	.trust__reviews a { grid-template-columns: 30px minmax(0, 1fr); grid-template-areas: "mark name" "mark rate"; column-gap: 9px; row-gap: 2px; align-content: center; }
	.trust__mark { grid-area: mark; }
	.trust__name { grid-area: name; font-size: .8125rem; }
	.trust__rate { grid-area: rate; font-size: .8125rem; }
	.trust__rate .icon { width: 12px; height: 12px; }
	.trust__reviews li { display: flex; }
	.trust__reviews a { flex: 1; }
	.trust__stats b { font-size: clamp(.71875rem, 3.55vw, 1.05rem); }
	.trust__stats span { font-size: .6875rem; }
}
@media (max-width: 359px) { .trust__name { font-size: .75rem; } .trust__reviews a { padding-inline: 8px; column-gap: 7px; } }
@media (min-width: 900px) {
	.trust__in { grid-template-columns: auto 1fr; grid-template-areas: "award stats" "reviews reviews"; column-gap: 40px; row-gap: 22px; align-items: center; }
	.trust__award img { width: 72px; }
	.trust__award b { font-size: 1.15rem; }
	.trust__stats { padding: 0 0 0 32px; border-top: 0; border-left: 1px solid rgba(245, 185, 66, .14); text-align: left; gap: 28px; }
	.trust__reviews { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
	.trust__reviews a { min-height: 62px; padding-inline: 14px; }
}

/* фон первого экрана главной — «живая плата» (assets/js-src/hero-board.js): холст создаёт скрипт и прячет фото;
   вокруг заголовка плата приглушена маской, чтобы текст читался. Без JS остаётся фото */
.intake__pcb {
	position: absolute; inset: 0; width: 100%; height: 100%; z-index: -2; pointer-events: none; max-width: none !important;
	-webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, .45) 0%, rgba(0, 0, 0, .5) 30%, #000 62%);
	mask-image: linear-gradient(180deg, rgba(0, 0, 0, .45) 0%, rgba(0, 0, 0, .5) 30%, #000 62%);
}
.intake--pcb .intake__photo { display: none; }
.intake--pcb { background: radial-gradient(90% 55% at 72% 78%, rgba(245, 185, 66, .11), transparent 70%), radial-gradient(70% 50% at 10% 0%, rgba(245, 185, 66, .06), transparent 70%), var(--ink); }
@media (min-width: 900px) {
	.intake__pcb {
		-webkit-mask-image: linear-gradient(100deg, rgba(0, 0, 0, .35) 0%, rgba(0, 0, 0, .45) 38%, #000 62%);
		mask-image: linear-gradient(100deg, rgba(0, 0, 0, .35) 0%, rgba(0, 0, 0, .45) 38%, #000 62%);
	}
}

/* ---------- контр-правила к !important плагина (#smartking-mobile-seo, ≤700/760px) ---------- */
@media (max-width: 899px) {
	body.sk-v2 { padding-bottom: calc(80px + env(safe-area-inset-bottom)) !important; }
	body.sk-v2 .app-shell { padding-bottom: 0 !important; }
}
body.sk-v2 .app-shell { max-width: none !important; width: auto !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
body.sk-v2 .sk-leadgen-panel, body.sk-v2 .sk-scale-content, body.sk-v2 .sk-hub-seo, body.sk-v2 .sk-brand-seo,
body.sk-v2 .sk-home-seo-boost, body.sk-v2 .sk-seo-landing, body.sk-v2 .sk-related-ready {
	max-width: calc(min(var(--max), 100%) - 2 * var(--gutter)) !important; margin-left: auto !important; margin-right: auto !important;
}
body.sk-v2 .hero-in h1 { font-size: clamp(1.6rem, .9rem + 4.4vw, 4rem) !important; line-height: 1.08 !important; }
body.sk-v2 .intake h1 { font-size: inherit !important; }

/* ссылки-чипы в блоках плагина — в строку с переносом, а не по одной на строку (плагин ставит 1fr !important) */
body.sk-v2 .sk-home-seo-boost__links, body.sk-v2 .sk-hub-seo__chips, body.sk-v2 .sk-brand-seo__chips,
body.sk-v2 .sk-scale-related, body.sk-v2 .sk-commercial-links, body.sk-v2 .sk-related-ready ul {
	display: flex !important; flex-wrap: wrap !important;
}
body.sk-v2 .sk-home-seo-boost__links a, body.sk-v2 .sk-hub-seo__chips a, body.sk-v2 .sk-brand-seo__chips a,
body.sk-v2 .sk-scale-related a, body.sk-v2 .sk-commercial-links a, body.sk-v2 .sk-related-ready a { width: auto !important; }

/* правовая информация из настроек сайта — свёрнута */
.foot__info summary { cursor: pointer; min-height: 44px; display: inline-flex; align-items: center; color: var(--text-2); font-weight: 600; }
.foot__info summary:hover { color: var(--gold-hi); }
.foot__info[open] summary { margin-bottom: 10px; }
.foot__info-body { display: grid; gap: 10px; font-size: .8125rem; line-height: 1.55; }
.foot__info-body ul { margin: 0; padding-left: 1.1em; }

/* ---------- внутренние страницы v2: услуга, новости, скупка, работы, статус, 404 ---------- */
.v2-feed, .v2-works, .v2-devices:not(.section), .v2-service, .v2-404, .v2-page-text { padding-top: 8px; }
.v2-service { display: grid; gap: 20px; }
.v2-empty { color: var(--text-2); }
.prose li p { margin: 0; }
.hero-in .prose { color: var(--text-2); }

.nowrap { white-space: nowrap; }

/* страницы проблем (taxonomy-trubles.php) */
.v2-trouble { display: grid; gap: clamp(28px, 4vw, 44px); padding-top: 8px; }
.v2-trouble h2 { font-size: clamp(1.25rem, 1rem + 1.6vw, 2rem); margin: 0 0 12px; text-transform: uppercase; }
.v2-trouble .prose h2 { margin: 0; }
.v2-trouble > section > .lead { margin: -4px 0 14px; }

/* три кнопки в шапке на телефоне: Главная, Новости, Галерея. Звонок на телефоне — в панели связи внизу экрана */
.top__tabs {
	flex: 1 1 0; min-width: 0; max-width: 300px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
	border: 1px solid var(--gold-line); border-radius: 14px; overflow: hidden; -webkit-tap-highlight-color: transparent;
}
.top__tabs a {
	min-height: 44px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px;
	color: var(--text-2); font: 600 .6875rem/1 var(--font-body); text-decoration: none; transition: color var(--t-fast), background-color var(--t-fast);
}
.top__tabs a + a { border-left: 1px solid var(--gold-line); }
.top__tabs .icon { width: 18px; height: 18px; }
.top__tabs a:hover, .top__tabs a[aria-current="page"] { color: var(--gold-hi); background: var(--gold-soft); }
.top__tabs a:focus-visible { outline: 2px solid var(--gold); outline-offset: -3px; }
@media (max-width: 899px) { .top__call { display: none; } }
@media (max-width: 559px) { .logo span { display: none; } .top__tabs { max-width: none; } } /* на узком экране подпись у логотипа не помещается рядом с кнопками */
@media (min-width: 900px) { .top__tabs { display: none; } }

/* панель связи внизу экрана на телефоне: звонок, WhatsApp, Telegram, MAX, маршрут. Цвета те же, что у кнопок связи на странице */
.callbar {
	position: fixed; z-index: 50; left: 10px; right: 10px; bottom: calc(8px + env(safe-area-inset-bottom));
	display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); isolation: isolate;
	border-radius: 18px; box-shadow: 0 14px 34px -12px rgba(0, 0, 0, .85), 0 2px 8px rgba(0, 0, 0, .4);
	-webkit-tap-highlight-color: transparent;
}
.callbar__item {
	min-height: 54px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px;
	font: 600 .6875rem/1 var(--font-body); text-decoration: none; transition: filter var(--t-fast) var(--ease-out);
}
.callbar__item:first-child { border-radius: 18px 0 0 18px; }
.callbar__item:last-child { border-radius: 0 18px 18px 0; }
.callbar__item .icon { width: 22px; height: 22px; }
.callbar__item:active { filter: brightness(.88); }
.callbar__item:focus-visible { outline: 2px solid #fff; outline-offset: -4px; }
.callbar__item--call, .callbar__item--call:hover { background: var(--gold); color: var(--gold-ink); }
.callbar__item--wa, .callbar__item--wa:hover { background: var(--wa); color: var(--wa-ink); }
.callbar__item--tg, .callbar__item--tg:hover { background: var(--tg); color: var(--tg-ink); }
.callbar__item--max, .callbar__item--max:hover { background: var(--max); color: #fff; }
.callbar__item--route, .callbar__item--route:hover { background: var(--route); color: #fff; }
@media (min-width: 900px) { .callbar { display: none; } }
/* под панелью не видно текста страницы: фон затемняется от панели до края экрана */
.callbar::before {
	content: ""; position: absolute; z-index: -1; left: -10px; right: -10px; top: -18px; bottom: calc(-8px - env(safe-area-inset-bottom));
	background: linear-gradient(180deg, rgba(9, 9, 11, 0), rgba(9, 9, 11, .9) 42%, var(--ink)); pointer-events: none;
}

/* смена страниц (View Transitions, Chrome 126+, Safari 18.2+): содержимое уходит и приходит со сдвигом,
   шапка и панель связи стоят на месте. Где не поддерживается — обычный переход */
@view-transition { navigation: auto; }
.top { view-transition-name: sk-top; }
.callbar { view-transition-name: sk-callbar; }
::view-transition-group(sk-top), ::view-transition-group(sk-callbar), ::view-transition-new(sk-top), ::view-transition-new(sk-callbar) { animation: none; }
::view-transition-old(sk-top), ::view-transition-old(sk-callbar) { display: none; }
::view-transition-old(root) { animation: 180ms cubic-bezier(.4, 0, 1, 1) both sk-page-out; }
::view-transition-new(root) { animation: 340ms cubic-bezier(.22, 1, .36, 1) both sk-page-in; }
@keyframes sk-page-out { to { opacity: 0; translate: -32px 0; } }
@keyframes sk-page-in { from { opacity: 0; translate: 32px 0; } }
@media (prefers-reduced-motion: reduce) { @view-transition { navigation: none; } }

/* плагин ставит html и body overflow-x: hidden — с ним position: sticky не работает (шапка с кнопкой звонка). clip так же прячет лишнее по ширине, но не мешает прилипанию */
:root { overflow-x: clip !important; }
body.sk-v2 { overflow-x: clip !important; }

/* плотнее на телефоне (владелец: «громоздко»): ниже шапка, плитки поломок —
   в строку «иконка + текст». На 360 px верхняя и нижняя панели занимали четверть экрана, шесть плиток — 523 px */
@media (max-width: 899px) {
	.top { background: var(--ink); -webkit-backdrop-filter: none; backdrop-filter: none; } /* с backdrop-filter WebKit пропускал текст страницы сквозь шапку */
	.top__in { min-height: 52px; gap: 12px; }
	.logo img { height: 32px; }
	.logo span { font-size: .6875rem; }
	.intake { padding-block: 8px 24px; }
	.intake__head { padding-top: 8px; }
	.intake h1 { gap: 10px; }
	.board { margin-top: 18px; }
	.tiles { gap: 10px; }
	.tile a { min-height: 0; flex-direction: row; align-items: center; justify-content: flex-start; gap: 10px; padding: 12px 10px; }
	.tile__ring { flex: none; width: 34px; height: 34px; }
	.tile__ring .icon { width: 19px; height: 19px; }
	.tile__name { font-size: .75rem; }
	.tile__hint { margin-top: 3px; font-size: .6875rem; }
	/* «Что чиним»: устройства переносятся на новую строку, а не уезжают вбок с обрезанным «Ноутб…» */
	.devices { flex-wrap: wrap; overflow: visible; gap: 8px; padding-bottom: 0; }
	.devices a { min-height: 44px; gap: 8px; padding: 0 14px 0 11px; font-size: .875rem; }
	.devices a .icon { width: 18px; height: 18px; }
	.brands a { min-height: 44px; font-size: .875rem; }
	body.sk-v2 { padding-bottom: calc(66px + env(safe-area-inset-bottom)) !important; }
}


/* цвета кнопок связи (выбор владельца): Telegram голубой, MAX фиолетовый, маршрут красный. Контраст текста не ниже 4.5:1 */
:root { --tg: #2aabee; --tg-ink: #03202f; --max: #7c3aed; --route: #dc2626; }
.btn--tg { background: var(--tg); color: var(--tg-ink); box-shadow: 0 8px 24px -10px rgba(42, 171, 238, .6); }
.btn--tg:hover { background: #4bb9f2; color: var(--tg-ink); }
.btn--max { background: var(--max); color: #fff; box-shadow: 0 8px 24px -10px rgba(124, 58, 237, .7); }
.btn--max:hover { background: #6d28d9; color: #fff; }
.btn--route { background: var(--route); color: #fff; box-shadow: 0 8px 24px -10px rgba(220, 38, 38, .7); }
.btn--route:hover { background: #b91c1c; color: #fff; }

/* кнопки связи на телефоне: звонок и маршрут во всю ширину, мессенджеры по два в ряд */
@media (max-width: 899px) {
	.visit__acts, .master__cta, .v2-device__cta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); } /* minmax(0): с 1fr длинная подпись раздвигала сетку шире карточки, и кнопки обрезались */
	.visit__acts .btn, .master__cta .btn, .v2-device__cta .btn { width: 100%; min-width: 0; padding-inline: .6em; }
	.visit__acts .btn--gold, .master__cta .btn--gold, .v2-device__cta .btn--gold,
	.visit__acts .btn--route, .master__cta .btn--route, .v2-device__cta .btn--route,
	.visit__acts .btn--max, .master__cta .btn--max, .v2-device__cta .btn--max { grid-column: 1 / -1; }
}
@media (max-width: 359px) {
	.visit__acts .btn, .master__cta .btn, .v2-device__cta .btn { padding-inline: .3em; gap: .4em; font-size: .9375rem; }
}


/* разделы устройств (template-parts/device-hub.php) */
.v2-hub { padding-block: clamp(28px, 4vw, 56px) 0; }
.chips--plain a { padding-inline: 16px; }
.sk-selected-filter { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; margin-bottom: 20px; padding: 10px 16px; border-radius: 14px; background: var(--gold-soft); color: var(--text); }
.section:has(> .wrap > .sk-selected-filter) { padding-top: 8px; }
.sk-selected-filter__reset { display: inline-flex; align-items: center; min-height: 44px; color: var(--gold-hi); font-weight: 700; }

.hub-switch { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; margin: -8px 0 20px; color: var(--text-2); font-size: .9375rem; }
.hub-switch a { display: inline-flex; align-items: center; min-height: 44px; color: var(--gold-hi); font-weight: 600; }

/* отзывы */
.v2-reviews { display: grid; gap: 12px; padding-top: clamp(32px, 5vw, 56px); }
.v2-reviews h2 { font-size: clamp(1.25rem, 1rem + 1.6vw, 2rem); }
.v2-reviews .chips .icon { color: var(--gold); }

/* устройства на продажу */
.v2-devices.section { padding-block: 8px clamp(28px, 5vw, 48px); }
.dev-grid, .work-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
@media (min-width: 720px) { .dev-grid, .work-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1100px) { .dev-grid, .work-grid { grid-template-columns: repeat(4, 1fr); } }
.dev-card a { display: flex; flex-direction: column; gap: 8px; height: 100%; padding: 10px; border-radius: var(--r-m); background: var(--ink-2); border: 1px solid rgba(245, 185, 66, .18); color: var(--text); text-decoration: none; }
.dev-card a:hover { border-color: var(--gold); color: var(--text); }
.dev-card img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 10px; background: var(--ink-3); }
.dev-card__name { font-weight: 700; }
.dev-card__more { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; color: var(--gold-hi); font-size: .875rem; font-weight: 600; }
.dev-card__more .icon { width: 16px; height: 16px; }
.v2-device { display: grid; gap: 24px; padding-block: 8px clamp(28px, 5vw, 48px); }
@media (min-width: 900px) { .v2-device--gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; } }
.v2-device__cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.dev-gallery { list-style: none; margin: 0; padding: 0; display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; }
.dev-gallery li { flex: 0 0 88%; scroll-snap-align: start; }
.dev-gallery li:only-child { flex-basis: 100%; }
.dev-gallery img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; border-radius: var(--r-m); background: var(--ink-2); }

/* наши работы */
.work-card { display: flex; flex-direction: column; border-radius: var(--r-m); overflow: hidden; background: var(--ink-2); border: 1px solid rgba(245, 185, 66, .18); }
.work-card:hover { border-color: var(--gold); }
.work-card__link { display: flex; flex-direction: column; flex: 1; color: var(--text); text-decoration: none; }
.work-card__link:hover { color: var(--gold-hi); }
.work-card__img img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.work-card__title { padding: 10px 12px 0; font-weight: 700; line-height: 1.3; }
.work-card__foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 2px 12px 4px; color: var(--text-3); font-size: .8125rem; }
.v2-work { display: grid; gap: 20px; }
@media (min-width: 900px) { .v2-work { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); align-items: start; } }
.v2-work__img { margin: 0; }
.v2-work__img img { display: block; width: 100%; height: auto; border-radius: var(--r-l); }
.v2-work .work-card__foot { padding-inline: 0; }
.sm-like-btn { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 6px; background: none; border: 0; color: var(--text-2); cursor: pointer; font: 600 .875rem var(--font-body); }
.sm-like-btn:hover, .sm-like-btn.sm-liked .sm-like-icon { color: var(--gold); }

/* статус ремонта; status-card, status-pill и status-msg выводит js/smartking-status.js родителя */
.status-check-block { display: grid; gap: 12px; max-width: 640px; padding: clamp(18px, 3vw, 28px); border-radius: var(--r-l); background: var(--ink-2); border: 1px solid rgba(245, 185, 66, .2); }
.status-label { font-weight: 700; color: var(--text); }
.status-input-row { display: grid; gap: 10px; }
@media (min-width: 560px) { .status-input-row { grid-template-columns: 1fr auto; } }
.status-input { width: 100%; }
.status-hint { margin: 0; font-size: .875rem; color: var(--text-3); }
.status-result:empty { display: none; }
.status-msg { color: var(--text-2); }
.status-msg--error { color: #ff9b8c; }
.status-card-row { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid rgba(255, 255, 255, .07); }
.status-card-row > span:first-child { color: var(--text-3); }
.status-card-row > span:last-child { color: var(--text); font-weight: 600; text-align: right; }
.status-pill { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; background: var(--gold-soft); color: var(--gold-hi); font-weight: 700; }

/* разделы родителя: телефоны, ноутбуки, планшеты */
body.sk-v2 .sk-model-hero, body.sk-v2 .sk-service-hero { background: none; border: 0; border-radius: 0; max-width: var(--max); margin-inline: auto; padding: 8px var(--gutter) 0; }
body.sk-v2 .sk-model-title { font-size: clamp(1.5rem, 1rem + 3vw, 3rem) !important; line-height: 1.08 !important; }
body.sk-v2 h2.app-section-title { font-size: clamp(1.25rem, 1rem + 1.6vw, 2rem); }
body.sk-v2 .app-section, body.sk-v2 .app-main { max-width: var(--max) !important; margin-left: auto !important; margin-right: auto !important; padding-left: var(--gutter) !important; padding-right: var(--gutter) !important; }
body.sk-v2 .app-main > .app-section { padding-left: 0 !important; padding-right: 0 !important; }
.app-section { margin-top: clamp(28px, 5vw, 48px); }

/* лендинги плагина: ровный текст по сетке страницы, без карточки в карточке */
body.sk-v2 .sk-seo-landing { display: block; background: none; border: 0; border-radius: 0; padding: 0; color: var(--text-2); }
body.sk-v2 .sk-seo-landing > * { max-width: 72ch; }
body.sk-v2 .sk-seo-landing h1.sk-seo-landing-title { max-width: none; font-weight: 900; font-size: clamp(1.6rem, .9rem + 4.4vw, 4rem) !important; letter-spacing: -0.03em; line-height: 1.08 !important; text-shadow: 0 0 36px rgba(245, 185, 66, .3); margin: 20px 0 14px; }
body.sk-v2 .sk-seo-landing h2 { color: var(--text); font-size: clamp(1.15rem, 1rem + 1vw, 1.6rem); line-height: 1.15; margin: 28px 0 10px; }
body.sk-v2 .sk-seo-landing h2.sk-seo-landing-title { margin-top: 0; }
body.sk-v2 .sk-seo-landing p { margin: 0 0 10px; }
body.sk-v2 .sk-seo-landing ul:not(.sk-commercial-links):not(.sk-landing-models) { margin: 0 0 10px; padding-left: 1.2em; display: grid; gap: 6px; }
body.sk-v2 .sk-seo-landing li::marker { color: var(--gold); }
body.sk-v2 .sk-landing-commercial, body.sk-v2 .sk-landing-depth { background: none; border: 0; padding: 0; margin: 0; max-width: 72ch !important; }
body.sk-v2 .sk-landing-proof { margin: 14px 0; }
body.sk-v2 .sk-landing-proof > * { padding: 12px 14px; border-radius: 14px; background: var(--ink-2); border: 1px solid rgba(245, 185, 66, .14); }
body.sk-v2 .sk-seo-landing .sk-leadgen-actions { margin-top: 16px; }

@media (max-width: 760px) {
	/* плагин на телефоне растягивает по 100vw с отступом 12px — возвращаем общий край страницы */
	body.sk-v2 .sk-seo-landing, body.sk-v2 .sk-leadgen-panel, body.sk-v2 .sk-scale-content, body.sk-v2 .sk-hub-seo, body.sk-v2 .sk-brand-seo, body.sk-v2 .sk-home-seo-boost, body.sk-v2 .sk-related-ready {
		max-width: none !important; margin-left: var(--gutter) !important; margin-right: var(--gutter) !important;
	}
	body.sk-v2 .sk-landing-commercial, body.sk-v2 .sk-landing-depth { margin-left: 0 !important; margin-right: 0 !important; }
	/* подробности заявки дублируют блок контактов сразу под ней */
	body.sk-v2 .sk-leadgen-panel__facts { display: none; }
}

/* ---------- внутренние страницы: воронка как на главной ---------- */
/* на телефоне в первом экране две кнопки: звонок и WhatsApp с готовым текстом про страницу */
.hero-in__quick { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 18px; }
.hero-in__quick .btn { width: 100%; min-height: 48px; padding: 0 .6em; font-size: .9375rem; }
@media (min-width: 900px) { .hero-in__quick { display: none; } }
/* плитки поломок и выбор устройства в первом экране */
.hero-in .board { margin-top: 20px; }
.hero-in .tile a { min-height: 0; }
@media (min-width: 900px) { .hero-in .tile a { min-height: 124px; padding: 16px; gap: 12px; } }
.hero-in__pick { margin-top: 20px; display: grid; gap: 10px; }
.hero-in__pick p { margin: 0; font-weight: 600; color: var(--text); }
.hero-in__pick .chips a { background: rgba(9, 9, 11, .72); }
/* шаги работы */
.numbered { counter-reset: step; list-style: none; margin: 0; padding: 0; display: grid; }
.numbered li { counter-increment: step; position: relative; padding: 14px 0 14px 44px; border-top: 1px solid var(--gold-line); color: var(--text-2); }
.numbered li:last-child { border-bottom: 1px solid var(--gold-line); }
.numbered li::before { content: counter(step); position: absolute; left: 0; top: 11px; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; border: 1.5px solid var(--gold); color: var(--gold); font: 800 .875rem/1 var(--font-display); }
/* чего лучше не делать */
.dont { margin-top: 14px; padding: 14px 16px; border-radius: 14px; background: rgba(220, 38, 38, .1); border: 1px solid rgba(248, 113, 113, .35); color: var(--text-2); display: grid; gap: 6px; }
.dont b { color: var(--text); }
.dont ul { margin: 0; padding-left: 1.1em; display: grid; gap: 4px; }
.dont li::marker { color: #f87171; }
.ticks--cols { grid-template-columns: 1fr; }
@media (min-width: 720px) { .ticks--cols { grid-template-columns: 1fr 1fr; column-gap: 40px; } .ticks--cols li:nth-last-child(2) { border-bottom: 1px solid var(--gold-line); } }
/* блок «Причины» и «Как решаем» из базы: списки с жирным началом */
.section .prose { max-width: 78ch; }
.prose strong { color: var(--text); }
/* серии моделей у больших брендов */
.series__fold { border-top: 1px solid rgba(245, 185, 66, .16); }
.series__fold:last-of-type { border-bottom: 1px solid rgba(245, 185, 66, .16); }
.series__fold[hidden] { display: none; }
.series__fold summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 12px; min-height: 60px; }
.series__fold summary::-webkit-details-marker { display: none; }
.series__fold summary::after { content: ""; flex: none; margin-left: 2px; margin-right: 6px; width: 10px; height: 10px; border-right: 2px solid var(--gold); border-bottom: 2px solid var(--gold); transform: rotate(45deg); transition: transform var(--t-fast) var(--ease-out); }
.series__fold[open] summary::after { transform: rotate(-135deg); }
.series__fold summary h3 { margin: 0; flex: 1; }
.series__fold summary h3::after { display: none; }
.series__count { color: var(--text-3); font-size: .875rem; }
.series__fold .models { padding-bottom: 18px; }
.series:has(.series__fold) { gap: 0; }
.series:has(.series__fold) .empty { margin-top: 14px; }
/* зазор перед панелью доверия в разделах устройств */
.v2-hub-gap { height: clamp(28px, 4vw, 56px); }
/* вопросы в блоках плагина: без стрелки ответ выглядел потерянным, а строка не читалась как раскрывающаяся */
.sk-scale-content summary, .sk-hub-seo__faq summary, .sk-brand-seo__faq summary, .sk-landing-faq summary { list-style: none; justify-content: space-between; gap: 16px; }
.sk-scale-content summary::-webkit-details-marker, .sk-hub-seo__faq summary::-webkit-details-marker, .sk-brand-seo__faq summary::-webkit-details-marker, .sk-landing-faq summary::-webkit-details-marker { display: none; }
.sk-scale-content summary::after, .sk-hub-seo__faq summary::after, .sk-brand-seo__faq summary::after, .sk-landing-faq summary::after { content: ""; flex: none; width: 10px; height: 10px; margin-right: 6px; border-right: 2px solid var(--gold); border-bottom: 2px solid var(--gold); transform: rotate(45deg); transition: transform var(--t-fast) var(--ease-out); }
.sk-scale-content details[open] summary::after, .sk-hub-seo__faq details[open] summary::after, .sk-brand-seo__faq details[open] summary::after, .sk-landing-faq details[open] summary::after { transform: rotate(-135deg); }
/* плитки поломок: длинное слово не должно распирать колонку за край экрана */
.tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 900px) { .tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* все страницы компактнее (владелец: заголовок занимает всю страницу) */
body.sk-v2 .hero-in h1 { font-size: clamp(1.35rem, 1rem + 1.6vw, 2.4rem) !important; line-height: 1.12 !important; letter-spacing: -0.02em; margin-top: 10px; }
.hero-in { padding-block: 4px 22px; }
.hero-in .crumbs { padding-top: 8px; }
.hero-in .crumbs a { min-height: 32px; }
.hero-in .lead { margin-top: 8px; font-size: 1rem; }
.hero-in__cta { margin-top: 14px; }
.hero-in__cta .btn { min-height: 44px; padding: 0 1.05em; font-size: .9375rem; }
.hero-in__quick { margin-top: 12px; }
.gauge { margin-top: 14px; }
.gauge > div { padding: 10px 14px; gap: 2px; }
.gauge dd { font-size: 1.05rem; }
.gauge dd small { margin-top: 2px; font-size: .75rem; }
.hero-in__pick, .hero-in .board { margin-top: 14px; }
.finder { display: block; margin-top: 14px; }
.finder input { min-height: 48px; font-size: 1rem; }
/* главная: первый экран тоже ниже */
.intake h1 .q { font-size: clamp(1.6rem, 6.4cqi, 3.4rem); }
.intake h1 .sub { font-size: 1rem; max-width: none; }
.intake h1 { gap: 8px; }
.proof { margin-top: 12px; font-size: .875rem; }
.intake { padding-block: 8px 22px; }
.intake__head { padding-top: 8px; }
@media (max-width: 389px) { .tile__name { font-size: .6875rem; } .tile__ring { width: 30px; height: 30px; } .tile a { gap: 8px; padding-inline: 8px; } }
@media (min-width: 900px) {
	.tile__ring { width: 40px; height: 40px; }
	.tile__ring .icon { width: 22px; height: 22px; }
	.tile__name { font-size: .8125rem; }
	.intake { padding-block: 22px 36px; }
	.intake__grid { row-gap: 14px; }
	.tiles { gap: 12px; }
	.tile a { min-height: 124px; padding: 14px; gap: 10px; }
}
/* заголовки разделов и отступы */
body.sk-v2 h2 { font-size: clamp(1.15rem, 1rem + .9vw, 1.65rem); }
body.sk-v2 .section { padding-block: clamp(26px, 3.5vw, 48px); }
body.sk-v2 .section__head { margin-bottom: clamp(12px, 1.6vw, 20px); gap: 8px; }
body.sk-v2 .section__head .lead { font-size: .9375rem; }
body.sk-v2 .rule { height: 22px; margin-block: 0; }
body.sk-v2 .route li { padding-bottom: 18px; }
body.sk-v2 .route h3 { margin-top: 6px; }
body.sk-v2 .photo-frame { aspect-ratio: 5 / 4; }
body.sk-v2 .master__photo img { aspect-ratio: 1; }
body.sk-v2 .kit li { padding-block: 12px; }
body.sk-v2 .ticks li { padding-block: 9px; }
body.sk-v2 .price { padding-block: 11px; min-height: 52px; }
@media (min-width: 900px) {
	body.sk-v2 .master { grid-template-columns: minmax(0, .55fr) minmax(0, 1.45fr); gap: 36px; }
	body.sk-v2 .photo-frame { aspect-ratio: 4 / 3; }
	body.sk-v2 .split { gap: 36px; }
	/* у фото с выносками цен пропорции менять нельзя, подписи привязаны к деталям на кадре: только уже колонка */
	body.sk-v2 .bench { grid-template-columns: minmax(0, .62fr) minmax(0, 1fr); gap: 24px; }
	body.sk-v2 .shop { height: 400px; }
}
/* первый блок сразу после первого экрана: без провала */
.hero-in + .section, .hero-in + .trust + .section { padding-top: clamp(16px, 2vw, 28px); }
.hero-in + .trust, .intake + .trust { padding-block: clamp(14px, 2vw, 24px); }
/* заявка и блоки плагина */
.sk-leadgen-panel h2, .sk-scale-content h2, .sk-hub-seo h2, .sk-brand-seo h2, .sk-home-seo-boost h2, .sk-seo-landing-title { font-size: clamp(1.1rem, 1rem + .8vw, 1.5rem); }
.sk-leadgen-panel, .sk-scale-content, .sk-hub-seo, .sk-brand-seo, .sk-home-seo-boost, .sk-seo-landing, .sk-related-ready { margin-block: clamp(18px, 3vw, 36px); }
body.sk-v2 .sk-seo-landing h2 { font-size: clamp(1.05rem, 1rem + .6vw, 1.35rem); }
.visit h2 { font-size: clamp(1.15rem, 1rem + .9vw, 1.65rem); }

/* поиск на главной (assets/js-src/site-search.js): подсказки поверх первого экрана */
.qs { position: relative; z-index: 3; margin-top: 12px; max-width: 560px; }
.qs .finder { margin-top: 0; max-width: none; }
.qs__panel { position: absolute; z-index: 20; left: 0; right: 0; top: calc(100% + 6px); overflow-y: auto; overscroll-behavior: contain; padding: 6px; border-radius: 16px; background: #131316; border: 1px solid var(--gold-line); box-shadow: 0 18px 44px -12px rgba(0, 0, 0, .9); }
.qs__panel[hidden] { display: none; }
.qs__panel ul { list-style: none; margin: 0; padding: 0; }
.qs__item { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 46px; padding: 8px 12px; border-radius: 10px; color: var(--text); text-decoration: none; font-weight: 600; font-size: .9375rem; line-height: 1.3; }
.qs__item:hover, .qs__item:focus-visible { background: var(--gold-soft); color: var(--text); }
.qs__item--wa { color: var(--gold-hi); }
.qs__hint { flex: none; color: var(--text-3); font-weight: 500; font-size: .75rem; }
.qs__note { margin: 0; padding: 8px 12px; color: var(--text-2); font-size: .875rem; }
.qs__chips { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 8px 8px; }
.qs__chips button { min-height: 40px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--gold-line); background: transparent; color: var(--text); font: 600 .875rem var(--font-body); cursor: pointer; }
.qs__chips button:hover { border-color: var(--gold); background: var(--gold-soft); }
/* пока список открыт, первый экран его не обрезает и лежит поверх блока ниже */
.intake--search { overflow: visible; z-index: 30; }
.intake--search .intake__head { z-index: 5; } /* иначе плитки ниже по коду лежат поверх списка */
@media (min-width: 900px) {
	.intake .qs { grid-column: 1; grid-row: 3; margin-top: 0; }
	.intake .intake__cta { grid-row: 4; }
}

/* плитки «Что сломалось?» с услугами (1.17.4, владелец: «сделай одного размера»): все плитки одной высоты,
   название сразу под значком, поэтому заголовки в ряду начинаются на одной линии */
.tiles { grid-auto-rows: 1fr; }
.tile a { justify-content: flex-start; }
.js .tile:nth-child(7) a { animation-delay: 1.15s; } .js .tile:nth-child(8) a { animation-delay: 1.25s; } .js .tile:nth-child(9) a { animation-delay: 1.35s; }

/* реальные случаи из отзывов на страницах поломок (1.17.5): карточки как отзыв на Картах, карусель листается сама */
.v2-reviews__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.v2-reviews__head h2 { margin: 0; }
.v2-reviews__nav { display: flex; gap: 8px; flex: none; }
.v2-reviews__btn { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: transparent; color: var(--gold); border: 1.5px solid rgba(245, 185, 66, .55); cursor: pointer; transition: background var(--t-fast), border-color var(--t-fast); }
.v2-reviews__btn:hover, .v2-reviews__btn:focus-visible { background: rgba(245, 185, 66, .12); border-color: var(--gold); }
.v2-reviews__btn .icon { width: 20px; height: 20px; }
.v2-reviews__btn[data-dir="-1"] .icon { transform: scaleX(-1); }
.v2-reviews__track { display: grid; grid-auto-flow: column; grid-auto-columns: min(420px, 86%); gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; padding: 4px 2px 14px; scrollbar-width: none; overscroll-behavior-x: contain; }
.v2-reviews__track::-webkit-scrollbar { display: none; }
.v2-reviews__track:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; border-radius: var(--r-m); }
.v2-review { scroll-snap-align: start; margin: 0; padding: 18px; border-radius: var(--r-m); background: linear-gradient(165deg, #1d1d23, #111115 70%); border: 1px solid rgba(245, 185, 66, .26); display: flex; flex-direction: column; gap: 10px; box-shadow: 0 10px 28px -16px rgba(0, 0, 0, .9); }
.v2-review__top { display: flex; align-items: center; gap: 12px; }
.v2-review__ava { flex: none; width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; font: 800 1.05rem/1 var(--font-display); color: #141414; background: var(--tone, var(--gold)); }
.v2-review__who { display: grid; gap: 2px; min-width: 0; }
.v2-review__who b { color: var(--text); font-size: .95rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.v2-review__who span { color: var(--text-3); font-size: .8125rem; }
.v2-review__src { margin-left: auto; flex: none; width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: #fc3f1d; color: #fff; font: 700 .8rem/1 var(--font-body); }
.v2-review__stars { color: #ffc531; letter-spacing: 2px; font-size: 1rem; line-height: 1; }
.v2-review blockquote { margin: 0; color: var(--text-2); font-size: .9375rem; line-height: 1.55; }
.v2-cases__more { margin-top: 6px; color: var(--text-3); font-size: .875rem; }
.v2-cases__more a { color: var(--gold); }
@media (max-width: 599px) { .v2-reviews__nav { display: none; } }
