@font-face{font-family:"Noto Serif ExtraCondensed";font-style:normal;font-weight:900;font-display:swap;src:url(/assets/nsxc900.5f8b00a8b0.woff2) format("woff2");unicode-range:U+0020-007E,U+00A0-00FF,U+0401,U+0410-044F,U+0451,U+2010-2027,U+2030-203A,U+2116,U+2122,U+20BD,U+2212}
@font-face{font-family:"Noto Serif ExtraCondensed";font-style:normal;font-weight:900;font-display:swap;src:url(/assets/nsxc900-ext.43203f5c73.woff2) format("woff2");unicode-range:U+0400,U+0402-040F,U+0450,U+0452-04FF}
@font-face{font-family:"Noto Serif";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/ns700.3cb8255edd.woff2) format("woff2");unicode-range:U+0020-007E,U+00A0-00FF,U+0401,U+0410-044F,U+0451,U+2010-2027,U+2030-203A,U+2116,U+2122,U+20BD,U+2212}
@font-face{font-family:"Noto Serif";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/ns700-ext.aaa230718a.woff2) format("woff2");unicode-range:U+0400,U+0402-040F,U+0450,U+0452-04FF}
@font-face{font-family:"Noto Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/ns400.1fa54c67a7.woff2) format("woff2");unicode-range:U+0020-007E,U+00A0-00FF,U+0401,U+0410-044F,U+0451,U+2010-2027,U+2030-203A,U+2116,U+2122,U+20BD,U+2212}
@font-face{font-family:"Noto Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/ns400-ext.dbcab6b2f2.woff2) format("woff2");unicode-range:U+0400,U+0402-040F,U+0450,U+0452-04FF}
@font-face{font-family:"PT Sans";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/pts400.5e29965761.woff2) format("woff2");unicode-range:U+0020-007E,U+00A0-00FF,U+0401,U+0410-044F,U+0451,U+2010-2027,U+2030-203A,U+2116,U+2122,U+20BD,U+2212}
@font-face{font-family:"PT Sans";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/pts400-ext.a3b8cdb337.woff2) format("woff2");unicode-range:U+0400,U+0402-040F,U+0450,U+0452-04FF}
@font-face{font-family:"PT Sans";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/pts700.484f3e9ea4.woff2) format("woff2");unicode-range:U+0020-007E,U+00A0-00FF,U+0401,U+0410-044F,U+0451,U+2010-2027,U+2030-203A,U+2116,U+2122,U+20BD,U+2212}
@font-face{font-family:"PT Sans";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/pts700-ext.c0a5e6ec6e.woff2) format("woff2");unicode-range:U+0400,U+0402-040F,U+0450,U+0452-04FF}
@font-face{font-family:"Roboto Condensed";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/rc700.acd7d419b3.woff2) format("woff2")}
/* Главная по макетам владельца 42 (компьютер) и 43 (телефон), основа — макет главной владельца (21.10.2026); шрифты — как на эталоне.
   --u — 1% ширины экрана (не больше 19,2px: после 1920px композиция не растёт и стоит по центру, --side — поле по бокам).
   Размеры сняты с макетов в долях ширины. Одна светлая тема с тёмными панелями — как фирменный макет.
   Эмблема — как на остальных страницах: 20% ширины у левого края на 9,6%, на телефоне 30% на 7,3%; в шапке и вместе с ней. */
:root{
  --cream:#F5EBDD; --sand:#DFC7A5; --ink:#111111; --graphite:#252321; --muted:#4a4036;
  --gold:#C99643; --gold-hi:#E8C887; --gold-lo:#8A6420; --paper:#FFF8EE;
  --f-hero:"Noto Serif ExtraCondensed","Noto Serif",Georgia,serif;
  --f-display:"Noto Serif","PT Serif",Georgia,serif;
  --f-body:"PT Sans","Helvetica Neue",Arial,sans-serif;
  --f-plate:"PT Sans Narrow","Roboto Condensed","Arial Narrow",sans-serif;
  --f-sign:"Roboto Condensed","PT Sans Narrow","Arial Narrow",sans-serif;
  --u:min(1vw,19.2px); --side:max(0px,(100vw - 1920px) / 2);
  --wrap:calc(90 * var(--u)); --logo:calc(20 * var(--u)); --logo-x:calc(9.6 * var(--u) + var(--side)); --logo-r:.6; --top-h:72px;
  --cut:clamp(16px,2.2 * var(--u),40px);
  color-scheme:light;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.5 var(--f-body);min-height:100vh;display:flex;flex-direction:column}
main{flex:1 0 auto}
a{color:inherit}
img{display:block;max-width:100%;height:auto}
.wrap{width:min(100% - 48px, var(--wrap));margin-inline:auto}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.panel :focus-visible,.foot :focus-visible{outline-color:var(--gold-hi)}

/* Кнопки */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;cursor:pointer;
  font:700 18px/1 var(--f-display);color:var(--ink);
  background:linear-gradient(180deg,#F6DFA6 0%,var(--gold-hi) 35%,var(--gold) 100%);
  border:1px solid var(--gold-lo);border-radius:12px;padding:12px 22px;
  box-shadow:0 6px 14px rgba(110,70,10,.28),inset 0 1px 0 rgba(255,255,255,.6)}
.btn .ar{font-size:1.25em;line-height:.8}
.btn:hover{filter:brightness(1.05)}
.btn.ghost{background:transparent;color:var(--gold-hi);border-color:var(--gold);box-shadow:none}
@media (prefers-reduced-motion:no-preference){.btn{transition:filter .2s}}

/* Шапка (эмблема, меню, кнопки) — общая для всех страниц: factory/site/parts.js (headCss). */
/* Меню, Telegram, телефон и «гамбургер» шапки — общие для всех страниц: factory/site/parts.js (headCss). */
/* Круглый значок Telegram — в блоке «Контакты» (кнопки .cbtn). */
.tg{width:48px;height:48px;flex:none;border-radius:50%;background:var(--ink);display:grid;place-items:center;box-shadow:0 3px 8px rgba(0,0,0,.25)}
.tg svg{width:22px;height:22px;fill:var(--cream)}

/* Первый экран — слои: фон 44, мягкий светлый градиент под текстом, машина 45, текст и кнопка */
.hero{position:relative;overflow:hidden;background:#d9b47a;height:calc(46.9 * var(--u) + var(--cut));min-height:440px}
.hero .bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 58%}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(255,240,215,.34) 0%,rgba(255,240,215,.12) 38%,rgba(255,240,215,0) 55%)}
/* Текст — ниже эмблемы, которая нависает над первым экраном (--logo-r — пропорция эмблемы из сборки картинок). */
.copy{position:absolute;z-index:3;left:calc(5.86 * var(--u) + var(--side));width:calc(46 * var(--u));
  top:max(calc(8.4 * var(--u)), calc(var(--logo) * var(--logo-r) + 16px - var(--top-h)))}
.hero h1{margin:0;font:900 calc(6.15 * var(--u))/.98 var(--f-hero);letter-spacing:-.006em;color:var(--ink);text-shadow:0 2px 0 rgba(255,250,240,.35)}
.hero h1 .l{display:block;white-space:nowrap}
.tag{display:inline-block;margin:calc(1.9 * var(--u)) 0 0;padding-bottom:calc(1.1 * var(--u));border-bottom:1px solid var(--gold-lo);
  font:700 max(11.5px, calc(1.55 * var(--u)))/1 var(--f-display);letter-spacing:.3em;text-transform:uppercase;color:var(--graphite)}
.cta{display:inline-flex;justify-content:space-between;margin-top:calc(2.3 * var(--u));min-width:calc(28.8 * var(--u));height:calc(6.05 * var(--u));white-space:nowrap;
  padding:0 calc(3.4 * var(--u)) 0 calc(4.1 * var(--u));font-size:calc(2.05 * var(--u));border-radius:calc(1.1 * var(--u))}
.car{position:absolute;z-index:2;right:calc(4.8 * var(--u) + var(--side));bottom:calc(3.4 * var(--u) + var(--cut));width:calc(51.3 * var(--u))}
.car img{width:100%;height:auto;-webkit-box-reflect:below -3px linear-gradient(transparent 74%,rgba(0,0,0,.26))}
.car::after{content:"";position:absolute;z-index:-1;left:7%;right:7%;bottom:2%;height:9%;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.55),rgba(0,0,0,0))}

/* Заголовки разделов с золотыми линиями */
.h2{display:flex;align-items:center;justify-content:center;gap:clamp(12px,2.2 * var(--u),26px);margin:0 0 clamp(18px,2.4 * var(--u),34px);
  font:700 clamp(26px,3.6 * var(--u),54px)/1.1 var(--f-display);text-align:center}
.h2::before,.h2::after{content:"";height:2px;width:min(130px,13vw);background:linear-gradient(90deg,transparent,var(--gold) 70%,var(--gold-hi))}
.h2::after{transform:scaleX(-1)}
section{padding-block:clamp(22px,2.4 * var(--u),44px)}

/* Тёмные панели со скошенными углами и золотой рамкой */
.panel{position:relative;isolation:isolate;z-index:4;color:var(--cream);background:var(--gold);
  clip-path:polygon(var(--cut) 0,calc(100% - var(--cut)) 0,100% var(--cut),100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,var(--cut) 100%,0 calc(100% - var(--cut)),0 var(--cut))}
.panel::before{content:"";position:absolute;inset:1.5px;z-index:-1;background:radial-gradient(120% 90% at 50% 0%,#2b2622,var(--ink) 70%);clip-path:inherit}
.panel .h2{color:var(--cream)}
.panel .intro{margin:0 0 clamp(14px,1.6 * var(--u),26px);max-width:78ch;color:var(--sand);font:400 clamp(15px,1.3 * var(--u),19px)/1.5 var(--f-body)}
.panel .intro a{color:var(--gold-hi);white-space:nowrap}
/* Панель каталога заходит на первый экран на величину скоса: в углах виден фон, как на макете. */
#katalog{margin-top:calc(-1 * var(--cut));padding-block:clamp(26px,3 * var(--u),56px) clamp(30px,3.4 * var(--u),60px)}
#otzyvy{padding-block:clamp(26px,3 * var(--u),56px)}

.empty{text-align:center;max-width:640px;margin:0 auto;color:var(--sand);font-size:18px}
.empty .cta2{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:20px}

.more{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:clamp(18px,2.4 * var(--u),30px)}
[hidden]{display:none !important}
.btn.ghost.dark{color:var(--ink);border-color:var(--gold);background:transparent}

/* Как проходит покупка — 3 шага, золотые кольца, стрелки между шагами */
.steps{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:start;gap:clamp(10px,1.4 * var(--u),24px)}
.step{display:grid;grid-template-columns:auto 1fr;gap:clamp(12px,1.8 * var(--u),22px);align-items:start}
.step > div{padding-top:calc(clamp(60px,7.3 * var(--u),96px) * .1)}
.ic{width:clamp(60px,7.3 * var(--u),96px);height:clamp(60px,7.3 * var(--u),96px);border-radius:50%;flex:none;
  background:radial-gradient(circle at 35% 30%,#3a332c,var(--ink));box-shadow:0 0 0 3px var(--gold),0 0 0 5px rgba(232,200,135,.45),0 6px 14px rgba(0,0,0,.25);display:grid;place-items:center}
.ic svg{width:44%;height:44%;stroke:var(--gold-hi);fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.step h3{margin:0 0 6px;font:700 clamp(20px,2.2 * var(--u),30px)/1.1 var(--f-display)}
.step p{margin:0;color:var(--muted);font:400 clamp(14px,1.35 * var(--u),18px)/1.4 var(--f-display)}
.step-ar{font:400 clamp(28px,3 * var(--u),40px)/1 var(--f-display);color:var(--ink);margin-top:calc(clamp(60px,7.3 * var(--u),96px) / 2 - .55em)}

/* Выкуп и комиссия — карточка в стиле макета */
.svc a{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(14px,2.2 * var(--u),28px);align-items:center;text-decoration:none;
  padding:clamp(18px,2.6 * var(--u),34px);border:1.5px solid var(--gold);border-radius:16px;background:linear-gradient(180deg,var(--paper),#F0E0C6);box-shadow:0 6px 14px rgba(110,70,10,.12)}
.svc h3{margin:0 0 8px;font:700 clamp(22px,2.6 * var(--u),34px)/1.1 var(--f-display)}
.svc p{margin:0;color:var(--muted);font-size:clamp(16px,1.6 * var(--u),20px)}
.svc .more-l{font:700 17px var(--f-display);color:var(--gold-lo);white-space:nowrap}

/* Отзывы — тёмная панель; выводится только при реальных отзывах */
.reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px}
.review{margin:0;border:1px solid var(--gold);border-radius:14px;padding:22px;background:rgba(255,255,255,.03)}
.review .q{width:30px;height:30px;fill:none;stroke:var(--gold-hi);stroke-width:1.6;stroke-linecap:round}
.review blockquote{margin:10px 0 12px}
.review p{margin:0;color:var(--cream)}
.review figcaption{font-size:14px;color:var(--gold-hi)}

/* Вопросы и ответы */
.faq{display:grid;gap:10px}
.faq details{background:linear-gradient(180deg,var(--paper),#F2E4CE);border:1.5px solid var(--gold);border-radius:12px;padding:0 22px;box-shadow:0 6px 14px rgba(110,70,10,.1)}
.faq summary{cursor:pointer;list-style:none;padding:16px 0;font:700 19px/1.3 var(--f-display);display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--gold-lo);font-size:26px;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq p{margin:0 0 16px;color:var(--muted);max-width:80ch}
.faq .src{font-size:14px}
.faq .src a{color:var(--gold-lo)}
.faq-more{display:flex;justify-content:center;margin-top:22px}
.faq-more .btn{font-size:17px}

/* Контакты — три кнопки как на макете; с ВКонтакте — четыре (класс n4) */
.contacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.25 * var(--u),24px)}
.contacts.n4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cbtn{display:flex;align-items:center;gap:16px;text-decoration:none;min-height:clamp(58px,6.4 * var(--u),84px);padding:10px 22px;
  border:1.5px solid var(--gold);border-radius:14px;background:linear-gradient(180deg,var(--paper),#F2E4CE);box-shadow:0 6px 14px rgba(110,70,10,.12)}
.cbtn .tg{width:46px;height:46px}
.cbtn .tg svg{width:22px;height:22px}
.cbtn .bot svg{fill:none;stroke:var(--cream);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cbtn strong{display:block;font:700 20px/1.1 var(--f-display)}
.cbtn small{display:block;color:#5b5045;font-size:14px}
.cbtn::after{content:"›";margin-left:auto;font:700 28px/1 var(--f-display)}

/* Подвал — общий для всех страниц: стили в factory/site/parts.js (footCss) */

@media (max-width:900px){
  :root{--logo:30vw;--logo-x:7.3vw;--top-h:60px}
  .steps{grid-template-columns:1fr}.step-ar{display:none}
  .step{grid-template-columns:auto 1fr auto;align-items:center;padding:14px 0;border-bottom:1px solid var(--sand)}
  .step > div{padding-top:0}
  .step:last-of-type{border-bottom:0}
  .step::after{content:"›";font:400 30px/1 var(--f-display)}
  .contacts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .contacts.n4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .cbtn{flex-direction:column;justify-content:center;gap:8px;padding:12px 6px;text-align:center}
  .cbtn small{display:none}.cbtn::after{display:none}
  .cbtn strong{font-size:16px}
}
/* Телефон — по макету 43: текст слева, машина справа снизу, композиция в долях ширины */
@media (max-width:720px){
  .hero{height:calc(max(55.8vw, 230px) + var(--cut));min-height:0}
  .hero .bg img{object-position:62% 50%}
  .hero::after{background:linear-gradient(90deg,rgba(255,240,215,.62) 0%,rgba(255,240,215,.42) 45%,rgba(255,240,215,.12) 68%,rgba(255,240,215,0) 80%)}
  .copy{left:6.3vw;width:60vw;top:max(8.6vw, 30px, calc(var(--logo) * var(--logo-r) + 12px - var(--top-h)))}
  .hero h1{font-size:max(22px, 6.55vw)}
  .tag{font-size:max(9px, 2.3vw);margin-top:2.4vw;padding-bottom:1.5vw;letter-spacing:.26em}
  .cta{display:inline-flex;width:auto;min-width:31.4vw;height:max(7.9vw, 34px);margin-top:3vw;padding:0 2.2vw 0 2.8vw;font-size:max(11.5px, 2.8vw);border-radius:8px;gap:6px;white-space:nowrap}
  .wrap{width:calc(100% - 32px)}
  .h2{font-size:max(20px, 5.4vw);gap:3vw}
  .h2::before,.h2::after{width:7vw}
  /* Машина меньше и правее: «Статус в деталях» и «Подобрать номер» — на свободном месте; у заднего колеса — небольшой отступ
     от края экрана, размер машины прежний (замечания владельца 21.10.2026). */
  .car{right:3vw;bottom:calc(4.4vw + var(--cut));width:52vw}
  /* «Подобрать номер» сдвинута влево: от левого края экрана тот же отступ 3vw, что у машины справа (замечание владельца 21.10.2026). */
  .cta{margin-left:-3.3vw}
  /* Заголовок над зданиями — лёгкая светлая подложка: свечение под буквами и светлее левая часть фона. */
  .hero h1{text-shadow:0 0 6px rgba(255,248,236,.95),0 0 16px rgba(255,244,226,.85),0 0 28px rgba(255,240,215,.6)}
  .svc a{grid-template-columns:auto 1fr;padding:18px}
  .svc .more-l{grid-column:1 / -1;justify-self:end}
  .faq details{padding:0 16px}
  .faq summary{font-size:17px}
  :root{--cut:max(16px,2.8vw)}
}
@media (max-width:420px){
  .contacts{gap:8px}
  .contacts.n4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cbtn strong{font-size:14px}
  .cbtn .tg{width:40px;height:40px}
}
:root{--hu:min(1vw,19.2px);--hside:max(0px,(100vw - 1920px) / 2);--hlogo:calc(20 * var(--hu));--hlogo-x:calc(9.6 * var(--hu) + var(--hside));--htop:72px}
@media(max-width:900px){:root{--hlogo:30vw;--hlogo-x:7.3vw;--htop:60px}}
.top{position:sticky;top:0;z-index:20;background:linear-gradient(#FFF8EE,#F5EBDD);border-bottom:2px solid #C99643;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.top .bar{position:relative;display:flex;align-items:center;justify-content:flex-end;height:var(--htop);padding-left:calc(var(--hlogo-x) + var(--hlogo) + 24px);padding-right:max(24px, calc(4.8 * var(--hu) + var(--hside)))}
.top .brand{position:absolute;left:var(--hlogo-x);top:2px;width:var(--hlogo);transition:width .25s ease}
.top .brand img{display:block;width:100%;height:auto;filter:drop-shadow(0 8px 14px rgba(0,0,0,.35));transition:filter .25s ease}
.scrolled .top .brand{width:calc((var(--htop) - 8px) / var(--logo-r,.6));top:4px}
.scrolled .top .brand img{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}
@media(prefers-reduced-motion:reduce){.top .brand,.top .brand img{transition:none}}
@media(max-width:900px){.top .bar{padding-right:12px}}
.top .nav{display:flex;align-items:center;gap:clamp(14px,1.4vw,28px);margin-inline:auto;padding-right:16px;min-width:0}
.top .nav a{font:400 clamp(15px,1.15vw,19px)/1 "Noto Serif","PT Serif",Georgia,serif;color:#111;text-decoration:none;white-space:nowrap;padding:6px 0}
.top .nav a:hover{color:#8A6420}
.top .nav a[aria-current],.top .menu nav a[aria-current]{color:#8A6420;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
.top .acts{display:flex;align-items:center;gap:12px;flex:none}
.top .tg{width:48px;height:48px;flex:none;border-radius:50%;background:#111;display:grid;place-items:center;box-shadow:0 3px 8px rgba(0,0,0,.25)}
.top .tg svg{width:22px;height:22px;fill:#F5EBDD}
.top .phone{padding:12px 20px;font-size:17px;gap:10px;white-space:nowrap}.top .phone::after{content:none}
.top .phone svg{width:18px;height:18px;fill:#111}
.top .menu{display:none;position:static}
.top .menu summary{list-style:none;cursor:pointer;width:44px;height:44px;display:grid;place-items:center}
.top .menu summary::-webkit-details-marker{display:none}
.top .menu summary span{display:block;width:28px;height:3px;background:#111;border-radius:2px;box-shadow:0 -9px 0 #111,0 9px 0 #111}
.top .menu nav{position:absolute;left:0;right:0;top:100%;display:grid;gap:2px;padding:8px 24px 16px;background:#F5EBDD;border-bottom:2px solid #C99643;box-shadow:0 10px 20px rgba(0,0,0,.12)}
.top .menu nav a{font:700 20px "Noto Serif","PT Serif",Georgia,serif;color:#111;text-decoration:none;padding:10px 0;border-bottom:1px solid #DFC7A5}
.top .menu nav a:last-child{border-bottom:0}
/* Три кнопки связи (телефон, Telegram, ВКонтакте): до 1700 px — плотнее меню и кнопки, чтобы меню помещалось целиком. */
@media(max-width:1700px){.top .bar{padding-right:max(24px, calc(3 * var(--hu) + var(--hside)))}.top .nav{gap:clamp(12px,1.05vw,28px);padding-right:10px}.top .acts{gap:8px}.top .tg{width:44px;height:44px}.top .phone{padding:12px 16px}}
@media(max-width:1366px){.top .phone .t{display:none}.top .phone{padding:12px}}
@media(max-width:1100px){.top .nav{display:none}.top .menu{display:block}.top .acts{margin-left:auto}}
@media(max-width:900px){.top .tg,.top .phone{width:42px;height:42px;padding:0}.top .tg svg,.top .phone svg{width:19px;height:19px}.top .acts{gap:8px}}
@media(max-width:400px){.top .tg,.top .phone,.top .menu summary{width:38px;height:38px}.top .acts{gap:6px}.top .bar{padding-left:calc(var(--hlogo-x) + var(--hlogo) + 10px);padding-right:8px}}
/* Поиск по номеру (главная и /katalog/): выбор региона и знак из 7 позиций; при выборе — «Найдено: N» и «Сбросить».
   Цвета — фирменные, как у тёмной панели каталога; знак — белый с чёрной рамкой, как карточки номеров. Нажимаемые области — от 44 px. */
.qs{--qs-gold:#C99643;--qs-hi:#E8C887;--qs-lo:#8A6420;--qs-ink:#111;--qs-cream:#F5EBDD;--qs-sand:#DFC7A5;--qs-sign:"Roboto Condensed",Plate,"Arial Narrow",sans-serif;
  display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin:0 0 clamp(16px,1.8vw,26px);color:var(--qs-cream);font:16px/1.4 "PT Sans","Helvetica Neue",Arial,sans-serif}
.qs button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.qs :focus-visible{outline:2px solid var(--qs-hi);outline-offset:3px}
/* Знак — ровно по центру; слева «Москва», справа «Мособл.» и «Все» (решение владельца 21.10.2026). На телефоне — кнопки строкой под знаком. */
.qs-top{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px 24px;min-width:0}
.qs-gl{grid-column:1;justify-self:end}
.qs-w{grid-column:2}
.qs-gr{grid-column:3;justify-self:start}
.qs-g{display:flex;gap:10px}
.qs .qs-b{min-height:52px;padding:10px 24px;border:1px solid rgba(201,150,67,.6);border-radius:12px;background:rgba(255,255,255,.04);color:var(--qs-cream);font-size:18px;line-height:1.2;white-space:nowrap}
.qs-b:hover{border-color:var(--qs-hi)}
.qs-b[aria-pressed="true"]{background:linear-gradient(180deg,#F6DFA6,var(--qs-hi) 35%,var(--qs-gold));border-color:var(--qs-lo);color:var(--qs-ink);font-weight:700}
/* Знак — как карточки номеров (ГОСТ Р 50577, тип 1, 520×112 мм): Roboto Condensed Bold, цифры 0,68 высоты, буквы 0,52,
   все символы на одной линии; ширина места у букв 0,535 высоты знака, у цифр 0,51, между буквами и цифрами — зазор. */
.qs-w{position:relative;flex:none;max-width:100%}
.qs-plate{--h:96px;display:flex;width:calc(var(--h) * 4.64);max-width:100%;height:var(--h);border:calc(var(--h) * .03 + 1.5px) solid var(--qs-ink);border-radius:calc(var(--h) * .12);
  background:#FAFAF8;color:var(--qs-ink);box-shadow:0 0 0 2px #fff,0 8px 20px rgba(0,0,0,.4);overflow:hidden}
.qs-m{flex:1;display:flex;justify-content:center;min-width:0}
.qs .qs-c{flex:none;height:100%;padding:0;border:0;border-radius:6px;background:transparent;color:inherit;font:700 calc(var(--h) * .95)/1 var(--qs-sign);text-align:center;white-space:nowrap}
.qs-c.l{width:calc(var(--h) * .535)}
.qs-c.d{width:calc(var(--h) * .51)}
.qs-c[data-i="1"]{margin-left:calc(var(--h) * .07)}
.qs-c[data-i="3"]{margin-right:calc(var(--h) * .07)}
.qs-c .s{font-size:.75em}
.qs-c *{pointer-events:none}
/* «*» — любой символ: серым, посередине высоты знака, одинаково на всех местах */
/* «*» на одной линии посередине знака: у букв звёздочка чуть меньше, подъём пересчитан под её размер. */
.qs-c .any{display:inline-block;font-size:.4em;color:#a29c92;vertical-align:.4em}
.qs-c.l .any{font-size:.34em;vertical-align:.56em}
.qs-c:hover{background:#F1E8D8}
.qs-c[aria-expanded="true"]{background:#F6DFA6}
.qs .qs-c:focus-visible{outline:3px solid #0039A6;outline-offset:-3px}
.qs-r{flex:none;width:calc(var(--h) * 1.18);display:flex;flex-direction:column;align-items:stretch;border-left:calc(var(--h) * .03 + 1.5px) solid var(--qs-ink);padding-bottom:calc(var(--h) * .06)}
.qs .qs-c.rg{flex:1;width:auto;height:auto;min-height:44px;font-size:calc(var(--h) * .7);line-height:.84}
.qs .qs-c.rg.r3{font-size:calc(var(--h) * .58);letter-spacing:-.02em}
.qs-c.rg .any{font-size:.55em;vertical-align:.25em}
.qs-ru{display:flex;align-items:center;justify-content:center;gap:calc(var(--h) * .05);font:700 calc(var(--h) * .17)/1 var(--qs-sign);letter-spacing:.04em}
.qs-fl{width:calc(var(--h) * .27);height:calc(var(--h) * .17);background:linear-gradient(#fff 33%,#0039A6 33% 66%,#D52B1E 66%);outline:1px solid #777}
/* Сетка выбора — под знаком, по ширине знака: на телефоне не выходит за экран */
.qs-pk{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 10px);padding:12px;border:1px solid var(--qs-gold);border-radius:14px;background:#1b1815;box-shadow:0 16px 32px rgba(0,0,0,.5)}
.qs-pt{margin:4px 48px 10px 4px;font:700 15px/1.3 "Noto Serif",Georgia,serif;color:var(--qs-hi)}
.qs-o{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px}
.qs-o.rg{grid-template-columns:repeat(auto-fill,minmax(60px,1fr))}
.qs-o button{min-height:44px;padding:0;border:1px solid rgba(201,150,67,.55);border-radius:8px;background:#FAFAF8;color:var(--qs-ink);font:700 22px/1 var(--qs-sign)}
.qs-o button:hover{background:#F1E8D8}
.qs-o button[aria-pressed="true"]{background:linear-gradient(180deg,#F6DFA6,var(--qs-hi) 35%,var(--qs-gold));border-color:var(--qs-lo)}
/* Крестик нарисован линиями: символа «×» нет в шрифтах сайта */
.qs-x{position:absolute;top:4px;right:4px;width:44px;height:44px;padding:0;border:0;border-radius:8px;background:transparent}
.qs-x::before,.qs-x::after{content:"";position:absolute;left:12px;right:12px;top:21px;height:2px;border-radius:1px;background:var(--qs-cream);transform:rotate(45deg)}
.qs-x::after{transform:rotate(-45deg)}
/* Пока что-то выбрано: «Найдено: N», ссылка на подборку и «Сбросить» */
.qs-res{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}
.qs-reset{min-height:44px;padding:8px 22px;border:1px solid var(--qs-gold);border-radius:10px;background:transparent;color:var(--qs-hi)}
.qs-reset:hover{background:rgba(232,200,135,.1)}
.qs-found{margin:0;color:var(--qs-sand);font-size:16px}
.qs-found a,.qs-nf a{color:var(--qs-hi);font-weight:700}
.qs-nf{margin:0;padding:18px;border:1px dashed var(--qs-gold);border-radius:12px;text-align:center;font-size:18px}
/* 721–1023 px: в одну строку «Москва | знак | Мособл. Все» не помещается (нужно ~806 px) — знак отдельной строкой, кнопки регионов
   под ним одним рядом по центру (без горизонтальной прокрутки). */
@media (min-width:721px) and (max-width:1023px){
  .qs-top{display:flex;flex-wrap:wrap;justify-content:center;gap:0 10px}
  .qs-top::after{content:"";order:0;flex:0 0 100%}
  .qs-w{order:-1}
  .qs-g{order:1;margin-top:16px}
}
@media (max-width:720px){
  .qs{gap:12px}
  .qs-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px}
  .qs-w{grid-column:1 / -1;grid-row:1}
  .qs-g{display:contents}
  .qs .qs-g .qs-b{grid-row:2;min-height:44px;padding:8px 6px;font-size:16px}
  .qs-w{width:100%;min-width:0}
  /* Телефон: та же геометрия, что у знака (буква | три цифры | две буквы, поля у рамки и разделителя), высота — по ширине экрана. */
  .qs-plate{--h:min(86px, (100vw - 34px) / 4.64);width:calc(var(--h) * 4.64)}
  .qs-w{display:flex;justify-content:center}
  .qs-reset{padding-inline:16px}
  .qs-nf{font-size:16px;padding:14px}
}
/* Подвал (общий) */
.foot{flex-shrink:0;background:#111111;color:#DFC7A5;border-top:2px solid #C99643;padding-block:40px 28px;font:15px/1.5 "PT Sans","Helvetica Neue",Arial,sans-serif}
.foot .foot-in{width:min(100% - 48px, calc(90 * min(1vw, 19.2px)));margin-inline:auto}
.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:32px}
.foot .fh{margin:0 0 12px;font:700 19px/1.2 "Noto Serif","PT Serif",Georgia,serif;color:#E8C887}
.foot p{margin:0;max-width:44ch}
.foot .note{margin-top:8px;font-size:13px;color:#a8977f}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.foot a{color:#F5EBDD;text-decoration-color:rgba(232,200,135,.45)}
.foot a:hover{color:#E8C887}
.foot a.all{color:#E8C887}
.foot .legal{max-width:none;margin-top:28px;padding-top:16px;border-top:1px solid rgba(201,150,67,.3);font-size:13px;color:#a8977f}
@media (max-width:900px){.foot .cols{grid-template-columns:1fr 1fr;gap:28px 24px}.foot .cols > :first-child{grid-column:1 / -1}}
@media (max-width:420px){.foot .cols{grid-template-columns:1fr}}
@media (max-width:720px){.foot .foot-in{width:calc(100% - 32px)}}
:root{--logo-r:0.7080}
/* Карточка номера — один шаблон (factory/site/card.js) */
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.25vw,24px)}
@media (max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.grid{grid-template-columns:1fr;gap:12px}}
.card{container-type:inline-size;position:relative;display:grid;justify-items:center;align-content:start;gap:12px;text-align:center;
  background:linear-gradient(180deg,#FFF8EE,#F1E2CB);color:#111;border:1.5px solid #C99643;border-radius:12px;
  padding:clamp(16px,1.9vw,28px) 16px clamp(16px,1.7vw,24px);box-shadow:0 10px 24px rgba(0,0,0,.28)}
.card[hidden]{display:none}
.card .info{display:grid;justify-items:center;gap:10px;min-width:0}
.card .line{margin:0;color:#111;text-align:center;white-space:nowrap}
.card .pl{display:block;text-decoration:none;border-radius:12px}
.card .pl::after{content:none}
.card .btn{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;min-width:min(190px,100%);min-height:44px;padding:11px 18px;
  color:#111;text-decoration:none;background:linear-gradient(180deg,#F6DFA6 0%,#E8C887 35%,#C99643 100%);border:1px solid #8A6420;border-radius:12px;
  box-shadow:0 6px 14px rgba(110,70,10,.28),inset 0 1px 0 rgba(255,255,255,.6)}
.card .btn::after{content:none}
.card .btn .ar{font-size:1.25em;line-height:.8}
.card .btn:hover{filter:brightness(1.05)}
.card .plate{--h:min(21cqi,92px);display:inline-flex;width:calc(var(--h) * 4.64);height:var(--h);padding:0;font-size:inherit;
  border:calc(var(--h) * .03 + 1.5px) solid #111;border-radius:calc(var(--h) * .12);background:#FAFAF8;
  box-shadow:0 0 0 2px #fff,0 4px 10px rgba(0,0,0,.25);font-family:"Roboto Condensed","Arial Narrow",sans-serif;font-weight:700;color:#111;line-height:1;overflow:hidden;white-space:nowrap}
.card .plate .m{flex:1;display:flex;align-items:baseline;justify-content:center;padding:0;font-size:calc(var(--h) * .95);letter-spacing:0}
.card .plate .m b,.card .plate .m i{display:block;text-align:center;font-style:normal;font-weight:700;margin:0}
.card .plate .m b{width:calc(var(--h) * .535);font-size:.75em}
.card .plate .m i{width:calc(var(--h) * .51)}
.card .plate .m i:first-of-type{margin-left:calc(var(--h) * .07)}
.card .plate .m i:last-of-type{margin-right:calc(var(--h) * .07)}
.card .plate .r{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:calc(var(--h) * .03 + 1.5px) solid #111;width:calc(var(--h) * 1.18)}
.card .plate .rc{font-size:calc(var(--h) * .7);line-height:.84}
.card .plate .r3 .rc{font-size:calc(var(--h) * .58);letter-spacing:-.02em}
.card .plate .ru{display:flex;align-items:center;gap:calc(var(--h) * .05);margin-top:calc(var(--h) * .03);font:700 calc(var(--h) * .17)/1 "Roboto Condensed","Arial Narrow",sans-serif;letter-spacing:.04em}
/* Флажок: сброс общих стилей класса .fl внутренних страниц (старый блок фильтра — рамка и отступы). */
.card .plate .fl{display:block;flex:none;width:calc(var(--h) * .27);height:calc(var(--h) * .17);padding:0;margin:0;border:0;border-radius:0;box-shadow:none;
  background:linear-gradient(#fff 33%,#0039A6 33% 66%,#D52B1E 66%);outline:1px solid #777}
@media (max-width:720px){
  .card{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);justify-items:start;align-items:center;gap:10px;padding:10px 12px}
  .card .info{justify-items:center;gap:4px;width:100%}
  .card .plate{--h:min(10.6cqi,56px)}
  .card .line{font-size:min(20px,6cqi)}
  .card .btn{padding:7px 12px;min-width:0;width:100%;border-radius:9px}
}
/* Единая типографика (повторный аудит 21.10.2026): factory/site/type.js */
:root{--f-h:"Noto Serif",Georgia,serif;--f-h1:"Noto Serif ExtraCondensed","Noto Serif",Georgia,serif;--f-t:"PT Sans","Helvetica Neue",Arial,sans-serif;
  --f-body:var(--f-t);--f-head:var(--f-h);--f-display:var(--f-h);
  --t-h1:calc(6.15 * min(1vw, 19.2px));--t-h2:clamp(24px, 3.06vw, 48px);--t-h3:clamp(20px, 1.67vw, 26px);
  --t-p:18px;--t-btn:18px;--t-nav:19px;--t-menu:18px;--t-q:19px;--t-price:22px;--t-small:14px}
@media (max-width:720px){:root{--t-h1:26px;--t-p:16px;--t-btn:16px;--t-q:17px;--t-price:20px}}
body{font-family:var(--f-t)}
.hero h1,.banner h1,.panel h1,.num h1{font:900 var(--t-h1)/1 var(--f-h1);font-stretch:normal;letter-spacing:-.006em}
/* Телефон: H1 главной — 32 px, остальных страниц — 26 px (решение владельца 21.10.2026). */
@media (max-width:720px){.hero h1{font-size:32px}}
.h2,.ttl,.prose h2,.light h2,.dark h2,.panel h2{font:700 var(--t-h2)/1.15 var(--f-h)}
.step h3,.svc h3,.prose h3,.faq h3,h3.sub,.art b{font:700 var(--t-h3)/1.25 var(--f-h)}
.step p,.svc p,.faq details p,.prose p:not([class]),.prose li,.banner p,.panel p,.light .wrap>p:not([class]),.dark .wrap>p:not([class]),.arts-empty,.art .an,.empty p{font:400 var(--t-p)/1.55 var(--f-t)}
.btn:not(.cta),.card .btn,.faq-more .btn,.more .btn,.cbtn,.cbtn strong,.svc .more-l{font:700 var(--t-btn)/1.2 var(--f-h)}
.nav a{font:400 var(--t-nav)/1.2 var(--f-h)}
@media (max-width:1280px){.nav a{font-size:17px}}
.menu nav a{font:700 var(--t-menu)/1.3 var(--f-h)}
.faq summary{font:700 var(--t-q)/1.35 var(--f-h)}
.line,.card .line,.pv,.num .line{font:700 var(--t-price)/1.15 var(--f-t);font-variant-numeric:tabular-nums;letter-spacing:.01em}
.card .lbl{font:700 12px/1 var(--f-t);letter-spacing:.2em}
.crumbs{font:400 var(--t-small)/1.5 var(--f-t)}
.dates,.faq .src,.faq .art-link,.art .d,.cbtn small{font:400 var(--t-small)/1.45 var(--f-t)}
