/* Витрина pavos.ru, вариант B «Реестр» (24.10.2026). Главная, /developer, /referent, /receipts.
   Фирменный стиль PAVOS: латунь и медь на тёмно-зелёном, Unbounded + Manrope. Без стекла, без подъёма при наведении,
   разрядка капса не больше .08em. Прежний site.css удалён 25.10.2026 (копия в /opt/backups/old-assets-*). */
:root {
  --green: #13261E; --deep: #0E1D16; --raised: #1B3429; --line: #2C4A3C; --line-hi: #3B5A4A;
  --brass: #CFAE62; --brass-hi: #DCC07A; --copper: #C4733F; --cream: #EFE6D2; --sage: #A9B8A8; --dim: #6F8176;
  --ok: #8CC49A; --bad: #E07A5A; --code: #0A1611;
  --mono: ui-monospace, "Cascadia Mono", "SF Mono", Consolas, "Liberation Mono", monospace;
  --wrap: min(100% - 48px, 1180px);
  color-scheme: dark;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 92px; }
body { margin: 0; min-height: 100vh; display: flex; flex-direction: column; color: var(--cream); font: 16px/1.6 Manrope, system-ui, sans-serif;
  background: radial-gradient(120% 120% at 30% 20%, #1D3A2D 0%, #13261E 55%, #0E1D16 100%) fixed; overflow-x: clip; }
main { flex: 1; }
a { color: inherit; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--brass); outline-offset: 3px; }
.i { width: 17px; height: 17px; flex: none; }
.wrap { width: var(--wrap); margin: 0 auto; }
.mono { font-family: var(--mono); font-variant-numeric: tabular-nums; }
.muted { color: var(--sage); }
.k { margin: 0; color: var(--copper); font: 600 .74rem var(--mono); letter-spacing: .04em; text-transform: uppercase; }
.dot { color: var(--copper); }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 18px; border: 1px solid transparent; border-radius: 10px; background: var(--brass); color: var(--green); font: 700 .88rem Manrope, sans-serif; text-decoration: none; cursor: pointer; }
.btn:hover { background: var(--brass-hi); }
.btn.ghost { background: transparent; color: var(--cream); border-color: var(--line-hi); }
.btn.ghost:hover { border-color: var(--brass); color: var(--brass); background: transparent; }
.btn .i { width: 15px; height: 15px; }

/* логотип */
.logo { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; }
.logo .mark { flex: none; }
.logo-word { color: var(--brass); font: 700 1.14rem/1 Unbounded, sans-serif; letter-spacing: -.04em; }
.logo-tld { margin-left: -4px; align-self: flex-end; padding-bottom: 2px; color: var(--copper); font: 500 .72rem/1 Unbounded, sans-serif; }

/* плавающая шапка, сплошная */
.pill { position: sticky; top: 12px; z-index: 30; width: min(100% - 24px, 1180px); margin: 12px auto 0; display: flex; align-items: center; gap: 18px; padding: 8px 10px 8px 16px; background: var(--deep); border: 1px solid var(--line-hi); border-radius: 16px; }
.pill-nav { display: flex; gap: 2px; margin-left: 6px; }
.pill-nav a { padding: 7px 12px; border-radius: 8px; color: var(--sage); font-size: .86rem; font-weight: 600; text-decoration: none; }
.pill-nav a:hover { background: var(--raised); color: var(--cream); }
.pill-nav a[aria-current] { color: var(--brass); }
.pill-right { margin-left: auto; display: flex; align-items: center; gap: 8px; }
.pill .wx { margin-left: auto; margin-right: -4px; }
.pill .wx + .pill-right { margin-left: 0; }
.enter { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--line-hi); border-radius: 50%; color: var(--sage); text-decoration: none; }
.enter:hover { border-color: var(--brass); color: var(--brass); }
.wx { display: flex; align-items: center; gap: 11px; padding-right: 12px; }
.wx-clock { display: grid; grid-template-columns: auto auto; column-gap: 9px; align-items: baseline; }
.wx-city { grid-column: 1 / -1; color: var(--copper); font-size: .6rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.wx-time { min-width: 5.3em; color: var(--brass); font: 600 .85rem/1.4 Unbounded, sans-serif; font-variant-numeric: tabular-nums; }
.wx-date { color: var(--sage); font-size: .68rem; white-space: nowrap; }
.wx-weather { display: flex; align-items: center; gap: 5px; }
.wx-weather[hidden] { display: none; }
.wx-icon { width: 19px; height: 19px; color: var(--brass); }
.wx-temp { color: var(--cream); font: 600 .78rem Unbounded, sans-serif; }
.wx-text { display: none; }

/* первый экран */
.hero { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(28px, 5vw, 72px); align-items: center; padding: clamp(44px, 7vw, 96px) 0 clamp(36px, 5vw, 64px); }
.hero h1 { margin: 18px 0 0; font: 700 clamp(2.2rem, 4.9vw, 4.5rem)/1.04 Unbounded, sans-serif; letter-spacing: -.055em; text-wrap: balance; }
.hero h1 .ac { color: var(--brass); }
.hero .lead { margin: 22px 0 0; font-size: 1.12rem; font-weight: 600; max-width: 34ch; }
.hero .sub { margin: 10px 0 0; color: var(--sage); max-width: 50ch; }
.cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.schema { background: var(--deep); border: 1px solid var(--line); border-radius: 20px; padding: 18px 20px 20px; }
.schema .hd { display: flex; justify-content: space-between; gap: 12px; color: var(--sage); font: 500 .72rem var(--mono); }
.schema svg { display: block; width: 100%; height: auto; margin-top: 6px; }
.schema .sc-edge { fill: none; stroke: var(--brass); stroke-width: 3; stroke-linejoin: round; }
.schema .sc-inner { fill: none; stroke: var(--line); stroke-width: 1; stroke-dasharray: 3 5; }
.schema .sc-spoke { stroke: var(--line); stroke-width: 1; }
.schema .sc-ray { stroke: var(--copper); stroke-width: 3; stroke-linecap: round; }
.schema .sc-n { fill: var(--brass); }
.schema .sc-top { fill: var(--copper); }
.schema .sc-l { font: 700 20px Unbounded, sans-serif; fill: var(--green); }
.schema .sc-w { font: 600 11px Manrope, sans-serif; fill: var(--cream); }
.schema .sc-c1 { font: 700 15px Unbounded, sans-serif; fill: var(--brass); }
.schema .sc-c2 { font: 500 11px Manrope, sans-serif; fill: var(--sage); }
.schema .ft { margin-top: 6px; padding-top: 12px; border-top: 1px solid var(--line); display: flex; justify-content: space-between; gap: 12px; color: var(--sage); font-size: .8rem; }
/* узлы по очереди подсвечиваются (цвет, без свечения); при reduced-motion стоят неподвижно */
@keyframes sc-node-on { 0%, 16% { fill: var(--cream); } 22%, 100% { fill: var(--brass); } }
@keyframes sc-top-on { 0%, 16% { fill: var(--brass-hi); } 22%, 100% { fill: var(--copper); } }
@keyframes sc-word-on { 0%, 16% { fill: var(--brass-hi); } 22%, 100% { fill: var(--cream); } }
.schema .n0 { animation: sc-top-on 10s infinite; }
.schema .n1, .schema .n2, .schema .n3, .schema .n4 { animation: sc-node-on 10s infinite; }
.schema .w0, .schema .w1, .schema .w2, .schema .w3, .schema .w4 { animation: sc-word-on 10s infinite; }
.schema .n1, .schema .w1 { animation-delay: 2s; } .schema .n2, .schema .w2 { animation-delay: 4s; }
.schema .n3, .schema .w3 { animation-delay: 6s; } .schema .n4, .schema .w4 { animation-delay: 8s; }

/* разделы */
.sec { padding-top: clamp(44px, 6vw, 88px); }
.sec-h { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 8px 32px; margin-bottom: 20px; }
.sec-h h2 { margin: 8px 0 0; font: 700 clamp(1.8rem, 3.6vw, 3rem)/1.05 Unbounded, sans-serif; letter-spacing: -.05em; }
.sec-h > p { margin: 0; color: var(--sage); max-width: 34ch; }

/* реестр проектов */
.reg { border: 1px solid var(--line); border-radius: 18px; background: var(--deep); overflow: hidden; }
.reg + .reg { margin-top: 12px; }
.reg .th, .reg summary, .reg a.line, .reg div.line { display: grid; grid-template-columns: 52px minmax(150px, 1.1fr) minmax(0, 2fr) 120px 28px; gap: 16px; align-items: center; padding: 0 22px; }
.reg .th { min-height: 40px; border-bottom: 1px solid var(--line); color: var(--sage); font: 600 .7rem var(--mono); letter-spacing: .04em; text-transform: uppercase; }
.reg details, .reg a.line, .reg div.line { border-bottom: 1px solid var(--line); }
.reg > :last-child { border-bottom: 0; }
.reg summary, .reg a.line, .reg div.line { min-height: 74px; }
.reg summary { cursor: pointer; list-style: none; }
.reg summary::-webkit-details-marker { display: none; }
.reg summary:hover, .reg details[open] summary, .reg a.line:hover { background: var(--raised); }
.reg a.line { text-decoration: none; }
.reg .no { color: var(--copper); font: 600 .8rem var(--mono); }
.reg .nm { font: 700 1.08rem/1.2 Unbounded, sans-serif; letter-spacing: -.03em; }
.reg .ds { color: var(--sage); font-size: .92rem; }
.reg .pl { font: 500 .82rem var(--mono); color: var(--cream); }
.reg .chev { color: var(--brass); }
.reg details[open] .chev { rotate: 90deg; }
.reg .more { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 32px; padding: 26px 22px 28px 90px; background: var(--raised); border-top: 1px solid var(--line); }
.reg .more p { margin: 0 0 12px; color: var(--sage); max-width: 56ch; }
.reg .more ul { list-style: none; margin: 0 0 18px; padding: 0; }
.reg .more li { padding: 7px 0; border-top: 1px solid var(--line); font-size: .92rem; }
.reg .more li::before { content: "+"; color: var(--copper); font: 700 .9rem var(--mono); margin-right: 10px; }
.reg .more .act { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; }
.reg .more .note { color: var(--sage); font-size: .84rem; }
.reg .more .vis { align-self: start; border: 1px solid var(--line-hi); border-radius: 14px; background: var(--code); overflow: hidden; }
.reg .more a.vis { display: block; text-decoration: none; }
.reg .more a.vis:hover { border-color: var(--brass); }
.reg .more .vis img { display: block; width: 100%; height: auto; }
.reg .more .vis .badge { display: block; padding: 8px 12px; border-top: 1px solid var(--line); color: var(--brass); font: 600 .72rem var(--mono); letter-spacing: .04em; text-transform: uppercase; }
.reg .more .tile { display: grid; place-items: center; min-height: 160px; color: var(--brass); }
.reg .more .tile .i { width: 56px; height: 56px; }
.more-h { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin: 32px 0 12px; }
.more-h .mono { color: var(--sage); font-size: .8rem; }

/* принципы: линия с узлами */
.flow { display: grid; grid-template-columns: repeat(5, 1fr); position: relative; margin: 8px 0 0; padding: 0; list-style: none; }
.flow::before { content: ""; position: absolute; left: 10%; right: 10%; top: 26px; height: 1px; background: var(--line-hi); }
.flow li { text-align: center; position: relative; padding: 0 6px; }
.flow .n { width: 52px; height: 52px; margin: 0 auto 14px; display: grid; place-items: center; border-radius: 50%; background: var(--deep); border: 2px solid var(--brass); color: var(--brass); font: 700 1.2rem Unbounded, sans-serif; }
.flow li:first-child .n { border-color: var(--copper); color: var(--copper); }
.flow b { display: block; font-size: .95rem; }
.flow span { display: block; margin-top: 2px; color: var(--sage); font: 500 .72rem var(--mono); }

/* об авторе, ссылки */
.about { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 28px; align-items: start; padding: 28px; border: 1px solid var(--line); border-radius: 20px; background: var(--deep); }
.about h2 { margin: 8px 0 12px; font: 700 clamp(1.5rem, 3vw, 2.2rem)/1.1 Unbounded, sans-serif; letter-spacing: -.045em; }
.about p { margin: 0 0 12px; color: var(--sage); max-width: 64ch; }
.about-link { display: inline-flex; align-items: center; gap: 8px; color: var(--brass); font-weight: 700; text-decoration: none; }
.about-link:hover { color: var(--brass-hi); }
.links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.links a { display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border: 1px solid var(--line-hi); border-radius: 10px; color: var(--cream); text-decoration: none; font-weight: 600; font-size: .9rem; }
.links a:hover { border-color: var(--brass); color: var(--brass); }

/* заказ разработки и подвал */
.order { margin-top: clamp(44px, 6vw, 88px); border: 1px solid var(--line); border-radius: 22px; background: var(--deep); padding: clamp(24px, 4vw, 48px); display: grid; grid-template-columns: 1.2fr 1fr; gap: 32px; align-items: center; }
.order h2 { margin: 0; font: 700 clamp(1.6rem, 3.2vw, 2.6rem)/1.08 Unbounded, sans-serif; letter-spacing: -.05em; }
.order h2 span { color: var(--brass); }
.order p { margin: 0 0 18px; color: var(--sage); max-width: 46ch; }
.foot { margin-top: clamp(44px, 6vw, 88px); border-top: 1px solid var(--line); background: var(--deep); }
.foot-in { width: var(--wrap); margin: 0 auto; padding: 22px 0; display: flex; flex-wrap: wrap; gap: 10px 26px; align-items: center; color: var(--sage); font-size: .84rem; }
.foot-in a { color: var(--sage); }
.foot-in a:hover { color: var(--brass); }
.foot-in .logo-word { color: var(--brass); }
.foot-in .sp { margin-left: auto; display: flex; flex-wrap: wrap; gap: 8px 22px; }

/* страницы приложений: паспорт слева, содержание справа */
.ap { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: clamp(28px, 5vw, 72px); padding: clamp(40px, 6vw, 80px) 0 0; align-items: start; }
.ap aside { position: sticky; top: 92px; }
.ap h1 { margin: 12px 0 0; font: 700 clamp(2.2rem, 4.6vw, 3.6rem)/1.02 Unbounded, sans-serif; letter-spacing: -.06em; color: var(--brass); text-wrap: balance; }
.ap h1.long { font-size: clamp(1.8rem, 3.2vw, 2.6rem); }
.ap .tag { margin: 14px 0 0; color: var(--sage); }
.ap .qr { display: grid; grid-template-columns: 112px 1fr; gap: 14px; align-items: center; margin-top: 22px; padding: 14px; border: 1px solid var(--line); border-radius: 16px; background: var(--deep); }
.ap .qr img { width: 112px; height: 112px; background: var(--cream); border-radius: 10px; padding: 6px; }
.ap .qr small { display: block; margin-top: 8px; color: var(--sage); font-size: .78rem; }
.ap .solo { margin-top: 22px; }
.ap .solo small { display: block; margin-top: 8px; color: var(--sage); font-size: .8rem; }
.spec { margin: 18px 0 0; border-top: 1px solid var(--line); }
.spec div { display: grid; grid-template-columns: 110px 1fr; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: .9rem; }
.spec dt { color: var(--sage); }
.spec dd { margin: 0; font: 500 .84rem var(--mono); }
.stores { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.stores a, .stores span { padding: 5px 11px; border: 1px solid var(--line-hi); border-radius: 8px; font: 600 .74rem var(--mono); color: var(--sage); text-decoration: none; }
.stores a { border-color: var(--brass); color: var(--brass); }
.stores a:hover { background: var(--raised); }
.blk { padding-bottom: clamp(36px, 5vw, 64px); }
.blk h2 { margin: 6px 0 18px; font: 700 clamp(1.5rem, 2.8vw, 2.2rem)/1.1 Unbounded, sans-serif; letter-spacing: -.045em; }
.ph2 { border: 1px solid var(--line); border-radius: 20px; background: var(--deep); padding: 22px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 24px; }
.ph2 .b { padding: 11px 14px; border-radius: 14px; border: 1px solid var(--line); background: var(--green); font-size: .92rem; }
.ph2 .b.me { background: var(--raised); border-color: var(--line-hi); }
.ph2 .b.ev { border-color: var(--brass); }
.ph2 .b.ev strong { display: block; color: var(--brass); font: 600 .74rem var(--mono); }
.ph2 .col { display: flex; flex-direction: column; gap: 10px; }
.ph2 .who { color: var(--brass); font: 700 1rem Unbounded, sans-serif; grid-column: 1 / -1; }
.frow { border-top: 1px solid var(--line); }
.frow article { display: grid; grid-template-columns: 52px minmax(0, 220px) 1fr; gap: 18px; padding: 20px 0; border-bottom: 1px solid var(--line); align-items: baseline; }
.frow article:hover { background: var(--deep); }
.frow .no { color: var(--copper); font: 600 .8rem var(--mono); padding-left: 4px; }
.frow h3 { margin: 0; font: 700 1.05rem/1.25 Unbounded, sans-serif; letter-spacing: -.03em; }
.frow p { margin: 0; color: var(--sage); }
.chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.chips span { padding: 4px 10px; border: 1px solid var(--line-hi); border-radius: 8px; font: 500 .76rem var(--mono); color: var(--cream); }
.chips i { color: var(--copper); font-style: normal; align-self: center; font-family: var(--mono); }
.ol { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); counter-reset: n; }
.ol li { counter-increment: n; display: grid; grid-template-columns: 52px 1fr; gap: 14px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.ol li::before { content: "0" counter(n); color: var(--copper); font: 600 .9rem var(--mono); padding-left: 4px; }
.ol b { display: block; font-size: 1.02rem; }
.ol span { color: var(--sage); }
.tbl { border: 1px solid var(--line); border-radius: 16px; background: var(--deep); overflow: hidden; }
.tbl div { padding: 14px 18px; border-top: 1px solid var(--line); }
.tbl div:first-child { border-top: 0; }
.tbl.long div { color: var(--sage); line-height: 1.65; }
.tbl.long a { color: var(--brass); }
.recpt { border: 1px solid var(--line); border-radius: 20px; background: var(--deep); padding: 22px; }
.recpt .paper { background: var(--cream); color: var(--green); padding: 20px; border-radius: 12px; margin: 14px 0; }
.recpt .paper header { font-weight: 800; font-size: 1rem; margin-bottom: 14px; }
.recpt .paper dl { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0; }
.recpt .paper dt { color: #5F5E5B; }
.recpt .paper dd { text-align: right; margin: 0; }
.recpt .paper .total { border-top: 1px dashed #6F8176; padding-top: 12px; margin-top: 14px; display: flex; justify-content: space-between; font-weight: 800; }
.recpt .exp { background: var(--raised); border: 1px solid var(--line-hi); border-radius: 12px; padding: 14px 16px; color: var(--brass); display: flex; gap: 12px; align-items: center; }
.recpt .exp small { display: block; color: var(--sage); margin-top: 4px; }
.recpt .note { margin: 12px 0 0; color: var(--sage); font-size: .8rem; }

/* страница разработки */
.dv { width: var(--wrap); margin: 0 auto; padding: clamp(44px, 7vw, 92px) 0 24px; }
.dv-hero { max-width: 980px; margin: 0 0 48px; }
.dv-hero h1 { margin: 16px 0 18px; font: 700 clamp(2rem, 5vw, 4rem)/1.06 Unbounded, sans-serif; letter-spacing: -.06em; color: var(--brass); text-wrap: balance; }
.dv-lead { max-width: 720px; margin: 0; font-size: clamp(1.05rem, 2vw, 1.3rem); line-height: 1.65; }
.dv-promise { margin: 20px 0 0; max-width: 720px; color: var(--brass); font: 600 clamp(1rem, 2vw, 1.2rem)/1.5 Unbounded, sans-serif; letter-spacing: -.02em; }
.dv-svc { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 64px; }
.dv-svc article { min-height: 190px; padding: 20px 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--deep); }
.dv-svc article > span { color: var(--copper); font: 600 .78rem var(--mono); }
.dv-svc h2, .dv-svc h3 { margin: 18px 0 9px; color: var(--brass); font: 600 .95rem/1.4 Unbounded, Manrope, sans-serif; }
.dv-svc p { margin: 0; color: var(--sage); font-size: .86rem; line-height: 1.65; }
.dv-faq { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dv-faq > h2 { grid-column: 1 / -1; margin: 0 0 4px; color: var(--cream); font: 700 clamp(1.5rem, 3.2vw, 2.3rem)/1.1 Unbounded, sans-serif; letter-spacing: -.05em; }
.dv-faq article { min-height: 0; }
.dv-faq p { font-size: .9rem; }
.dv-contact { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(24px, 6vw, 72px); align-items: start; padding: clamp(22px, 4vw, 42px); border: 1px solid var(--line); border-radius: 20px; background: var(--deep); }
.dv-intro h2 { margin: 12px 0; color: var(--brass); font: 600 clamp(1.4rem, 3vw, 2rem)/1.25 Unbounded, Manrope, sans-serif; }
.dv-intro p { color: var(--sage); font-size: .92rem; }
.dv-form { display: grid; gap: 12px; }
.dv-form label { display: grid; gap: 6px; margin: 0; color: var(--cream); font-size: .84rem; font-weight: 600; }
.dv-form label .muted { font-weight: 400; }
.dv-form input:not([type=checkbox]), .dv-form select, .dv-form textarea { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid var(--line-hi); border-radius: 10px; background: var(--code); color: var(--cream); font: 400 .94rem Manrope, system-ui, sans-serif; }
.dv-form select { color-scheme: dark; }
.dv-form textarea { resize: vertical; }
.dv-form input:focus, .dv-form select:focus, .dv-form textarea:focus { border-color: var(--brass); }
.dv-row { display: grid; grid-template-columns: .8fr 1.2fr; gap: 12px; }
.dv-consent { display: grid !important; grid-template-columns: 18px 1fr; align-items: start; gap: 10px !important; color: var(--sage) !important; font-size: .78rem !important; font-weight: 400 !important; line-height: 1.6; }
.dv-consent input { width: 16px; height: 16px; margin: 2px 0 0; accent-color: var(--brass); }
.dv-consent a { color: var(--brass); }
.dv-form .btn { justify-self: start; }
.dv-fine { margin: 0; color: var(--sage); font-size: .76rem; }
.dv-ok, .dv-err { display: grid; gap: 3px; margin-bottom: 14px; padding: 13px 15px; border: 1px solid var(--line-hi); border-radius: 12px; background: var(--raised); color: var(--cream); }
.dv-ok strong { color: var(--ok); }
.dv-err { display: block; color: var(--bad); }
.dv-trap { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

@media (max-width: 960px) {
  .pill { flex-wrap: wrap; gap: 6px 8px; padding-left: 12px; }
  .pill-right .btn { padding: 0 14px; }
  .pill-nav { order: 3; width: 100%; justify-content: center; margin: 0; padding-top: 6px; border-top: 1px solid var(--line); }
  .pill .wx { display: none; }
  .hero, .order, .ap, .reg .more, .dv-contact { grid-template-columns: 1fr; }
  .reg .th { display: none; }
  .reg summary, .reg a.line, .reg div.line { grid-template-columns: 38px 1fr 22px; gap: 4px 12px; padding: 14px 16px; }
  .reg .ds, .reg .pl { grid-column: 2; }
  .reg .chev, .reg .arr { grid-column: 3; grid-row: 1; }
  .reg .more { padding: 20px 16px; }
  .ap aside { position: static; }
  .frow article { grid-template-columns: 40px 1fr; }
  .frow article p { grid-column: 2; }
  .flow { grid-template-columns: 1fr; gap: 14px; }
  .flow::before { display: none; }
  .flow li { display: grid; grid-template-columns: 52px 1fr; text-align: left; gap: 14px; align-items: center; }
  .flow .n { margin: 0; }
  .ph2 { grid-template-columns: 1fr; }
  .dv-svc { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .dv-faq, .dv-row { grid-template-columns: 1fr; }
  .dv-svc { grid-template-columns: 1fr; margin-bottom: 44px; }
  .dv-svc article { min-height: 0; }
  .cta .btn { flex: 1 1 100%; }
  .ap .qr { grid-template-columns: 96px 1fr; }
  .ap .qr img { width: 96px; height: 96px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .schema .n0, .schema .n1, .schema .n2, .schema .n3, .schema .n4, .schema .w0, .schema .w1, .schema .w2, .schema .w3, .schema .w4 { animation: none; }
}

/* раскрытая строка реестра без картинки: справа короткий паспорт вместо пустой плитки (25.10.2026) */
.reg .th span:first-child { font-family: Manrope, system-ui, sans-serif; }
.reg .more.solo { grid-template-columns: minmax(0, 1fr); }
.reg .more .spec { margin: 0; align-self: start; border-top-color: var(--line-hi); }
.reg .more .spec div { border-bottom-color: var(--line-hi); }

/* расшифровка слов принципа PAVOS: кружок с буквой, слово и два столбца «что это значит» и «зачем это нужно» (25.10.2026) */
.schema { padding: 22px 24px; }
.steps5 { list-style: none; margin: 8px 0 0; padding: 0; }
.steps5 li { display: grid; grid-template-columns: 56px minmax(150px, 220px) minmax(0, 1fr) minmax(0, 1fr); gap: 6px 28px; position: relative; padding-bottom: 32px; }
.steps5 li:last-child { padding-bottom: 0; }
.steps5 li:not(:last-child)::before { content: ""; position: absolute; left: 27px; top: 58px; bottom: 6px; width: 1px; background: var(--line-hi); }
.steps5 .n { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 50%; background: var(--deep); border: 2px solid var(--brass); color: var(--brass); font: 700 1.2rem Unbounded, sans-serif; }
.steps5 li:first-child .n { border-color: var(--copper); color: var(--copper); }
.steps5 .w b { display: block; margin-top: 2px; font: 700 1.2rem/1.2 Unbounded, sans-serif; letter-spacing: -.03em; }
.steps5 .w span { display: block; margin-top: 6px; color: var(--sage); font: 500 .78rem var(--mono); }
.steps5 i { display: block; margin-bottom: 6px; color: var(--copper); font: 600 .7rem var(--mono); letter-spacing: .04em; text-transform: uppercase; font-style: normal; }
.steps5 p { margin: 0; max-width: 44ch; color: var(--cream); }
.steps5 .y p { color: var(--sage); }
@media (max-width: 960px) {
  .steps5 li { grid-template-columns: 52px minmax(0, 1fr); gap: 4px 16px; padding-bottom: 28px; }
  .steps5 .n { grid-row: 1 / span 3; }
  .steps5 .w, .steps5 .d, .steps5 .y { grid-column: 2; }
  .steps5 .d { margin-top: 8px; }
  .steps5 .y { margin-top: 10px; }
  .steps5 li:not(:last-child)::before { left: 25px; }
}

/* расшифровка знака под схемой (25.10.2026) */
.sc-legend { margin: 14px 0 0; padding-top: 14px; border-top: 1px solid var(--line); display: grid; grid-template-columns: 1fr 1fr; gap: 12px 22px; }
.sc-legend dt { color: var(--copper); font: 600 .7rem var(--mono); letter-spacing: .04em; text-transform: uppercase; }
.sc-legend dd { margin: 3px 0 0; color: var(--cream); font-size: .86rem; line-height: 1.5; }
@media (max-width: 640px) { .sc-legend { grid-template-columns: 1fr; } }

/* краски и порядок на главной (25.10.2026): без наложений на схеме, значки расшифровки, латунь, медь и «успех»-зелёный из палитры */
.logo-word { font-size: 1.28rem; }
.logo-tld { font-size: .82rem; }
.hero h1::after, .sec-h h2::after { content: ""; display: block; width: 56px; height: 3px; margin-top: 20px; border-radius: 2px; background: var(--copper); }
.sec-h h2::after { margin-top: 14px; }
.hero .lead { margin-top: 20px; }

.schema .sc-edge { fill: rgba(207, 174, 98, .08); }
.schema .sc-inner { fill: rgba(196, 115, 63, .1); stroke: var(--line-hi); }
.schema .sc-halo { fill: none; stroke: var(--copper); stroke-opacity: .5; stroke-width: 1.5; }
.schema .sc-ray { stroke-width: 3.2; }
.schema .sc-arr path { fill: var(--copper); }
.schema .sc-w { font-size: 12px; }
.schema .sc-c2 { font: 500 12px Manrope, sans-serif; fill: var(--sage); }
.schema .sc-c3 { font: 700 12px Manrope, sans-serif; fill: var(--ok); }
.schema .n4 { fill: var(--ok); animation-name: sc-ok-on; }
@keyframes sc-ok-on { 0%, 16% { fill: var(--cream); } 22%, 100% { fill: var(--ok); } }

.sc-legend { grid-template-columns: 1fr; gap: 0; margin-top: 18px; padding-top: 0; border-top: 0; }
.sc-legend div { display: grid; grid-template-columns: 158px minmax(0, 1fr); gap: 4px 16px; align-items: center; padding: 12px 0; border-top: 1px solid var(--line); }
.sc-legend dt { display: flex; align-items: center; gap: 12px; color: var(--brass); font: 700 .9rem/1.2 Manrope, sans-serif; letter-spacing: 0; text-transform: none; }
.sc-legend dd { margin: 0; color: var(--sage); font-size: .88rem; line-height: 1.5; }
.schema .sw { width: 30px; height: 30px; margin: 0; flex: none; }
.sw-a { fill: rgba(207, 174, 98, .14); stroke: var(--brass); stroke-width: 2.4; stroke-linejoin: round; }
.sw-ring { fill: none; stroke-width: 2; }
.sw-ring.c { stroke: var(--copper); stroke-opacity: .65; }
.sw-ring.a { stroke: var(--brass); stroke-width: 2.4; stroke-dasharray: 4.5 3.2; }
.sw-line { fill: none; stroke: var(--copper); stroke-width: 3; stroke-linecap: round; }
.sw-fill.c { fill: var(--copper); }
.sw-fill.a { fill: var(--brass); }
.sw-fill.ok { fill: var(--ok); }
@media (max-width: 640px) { .sc-legend div { grid-template-columns: 1fr; } }

.reg .pl { justify-self: start; padding: 3px 10px; border: 1px solid var(--line-hi); border-radius: 8px; background: rgba(169, 184, 168, .08); color: var(--sage); }
.reg .pl-and { border-color: rgba(140, 196, 154, .45); background: rgba(140, 196, 154, .1); color: var(--ok); }
.reg .pl-web { border-color: rgba(207, 174, 98, .45); background: rgba(207, 174, 98, .1); color: var(--brass); }
.reg .th span:nth-child(4) { padding-left: 11px; }

.steps5 li { align-items: start; padding: 22px 26px; margin-bottom: 12px; border: 1px solid var(--line); border-radius: 16px; background: var(--deep); box-shadow: inset 4px 0 0 var(--brass); }
.steps5 li:last-child { padding-bottom: 22px; margin-bottom: 0; }
.steps5 li:not(:last-child)::before { display: none; }
.steps5 li:first-child { box-shadow: inset 4px 0 0 var(--copper); }
.steps5 li:last-child { box-shadow: inset 4px 0 0 var(--ok); }
.steps5 .n { background: var(--brass); border-color: var(--brass); color: var(--green); }
.steps5 li:first-child .n { background: var(--copper); border-color: var(--copper); color: var(--green); }
.steps5 li:last-child .n { background: var(--ok); border-color: var(--ok); color: var(--green); }
.steps5 .y i { color: var(--ok); }
@media (max-width: 960px) { .steps5 li { padding: 18px 18px 18px 20px; } }

.order { background: var(--brass); border-color: var(--brass); color: var(--green); }
.order h2 span { color: var(--green); text-decoration: underline; text-decoration-color: var(--copper); text-decoration-thickness: 4px; text-underline-offset: 7px; }
.order p { color: rgba(19, 38, 30, .88); }
.order .btn { background: var(--green); color: var(--brass); }
.order .btn:hover { background: var(--deep); color: var(--brass-hi); }
.order a:focus-visible { outline-color: var(--green); }
@media (max-width: 640px) {
  .schema { padding: 18px 14px; }
  .schema .sc-w { font-size: 14px; }
  .schema .sc-c2, .schema .sc-c3 { font-size: 12.5px; }
  .schema .sc-l { font-size: 22px; }
  .schema .w3 { transform: translateX(-10px); }
  .schema .w1 { transform: translateX(10px); }
}
@media (prefers-reduced-motion: reduce) { .schema .n4 { animation: none; } }

/* выравнивание (25.10.2026, по замечанию владельца «вёрстка съехала везде») */
/* шапка той же ширины, что и контент: раньше отступы были 12 и 24 px и шапка выступала на каждой ширине меньше 1228 px */
.pill { width: var(--wrap); }
@media (max-width: 640px) { :root { --wrap: min(100% - 32px, 1180px); } }
/* «.ru» стоит на одной строке с «pavos»: оба по центру знака, разница базовых линий компенсирована */
.logo-tld { align-self: center; padding-bottom: 0; transform: translateY(.164rem); }
/* первый экран: текст и схема начинаются с одной линии */
.hero { align-items: start; }
/* пять услуг на /developer: три и две карточки в ряд вместо четырёх и одной */
.dv-svc:not(.dv-faq) { display: flex; flex-wrap: wrap; }
.dv-svc:not(.dv-faq) article { flex: 1 1 calc(33.333% - 8px); min-width: 210px; }

/* юридические страницы в стиле витрины (25.10.2026): общая шапка и подвал, узкая колонка текста */
.doc { width: min(var(--wrap), 760px); margin: 0 auto; padding: clamp(36px, 6vw, 72px) 0 8px; }
.doc .kicker { margin: 0 0 12px; color: var(--copper); font: 600 .74rem var(--mono); letter-spacing: .04em; text-transform: uppercase; }
.doc h1 { margin: 0 0 22px; font: 700 clamp(1.7rem, 3.6vw, 2.6rem)/1.1 Unbounded, sans-serif; letter-spacing: -.05em; text-wrap: balance; }
.doc h1::after { content: ""; display: block; width: 56px; height: 3px; margin-top: 18px; border-radius: 2px; background: var(--copper); }
.doc h2 { margin: 36px 0 10px; color: var(--brass); font: 700 1.1rem/1.3 Unbounded, sans-serif; letter-spacing: -.02em; }
.doc p, .doc li { margin: 0 0 12px; color: var(--cream); line-height: 1.75; overflow-wrap: anywhere; }
.doc ul { margin: 0 0 14px; padding-left: 1.3em; }
.doc li { margin-bottom: 6px; }
.doc a { color: var(--brass); }
.doc .muted { color: var(--sage); }
.doc .small { font-size: .86rem; }

/* шапка на узких телефонах (25.10.2026): на 360 px помещаются логотип и кнопки в одну строку, меню второй строкой */
@media (max-width: 420px) {
  .pill { padding: 8px 8px 8px 12px; gap: 6px; }
  .logo { gap: 6px; }
  .logo .mark { width: 26px; height: 26px; }
  .logo-word { font-size: 1.12rem; }
  .logo-tld { font-size: .74rem; transform: translateY(.136rem); }
  .pill-right { gap: 6px; }
  .pill-right .btn { min-height: 40px; padding: 0 12px; font-size: .84rem; gap: 6px; }
  .enter { width: 40px; height: 40px; }
}

/* узкие экраны 320–420 px (25.10.2026): длинные слова в заголовках не дают горизонтальной прокрутки */
@media (max-width: 420px) {
  .doc h1 { font-size: clamp(1.15rem, 6.2vw, 1.7rem); overflow-wrap: anywhere; }
  .dv-hero h1 { font-size: clamp(1.5rem, 8vw, 2rem); overflow-wrap: anywhere; }
}
@media (max-width: 340px) { .pill-nav a { padding: 7px 8px; } }

/* подпись под схемой (25.10.2026): «от замысла к результату» вынесена из центра пятиугольника, где её пересекали луч и пунктир */
.sc-cap { margin: 2px 0 0; text-align: center; color: var(--sage); font: 500 .94rem/1.4 Manrope, sans-serif; }
.sc-cap b { color: var(--ok); font-weight: 700; }
