/* Настоящее начертание 600 у антиквы: файлы лежат в fonts/, site.css объявляет только 400–500, и браузер рисовал жирность сам */
@font-face{font-family:'Source Serif 4';src:url('/assets/fonts/source-serif-600-cyrillic.woff2') format('woff2');font-weight:600;font-display:swap;unicode-range:U+0400-052F,U+2DE0-2DFF,U+A640-A69F}
@font-face{font-family:'Source Serif 4';src:url('/assets/fonts/source-serif-600-latin.woff2') format('woff2');font-weight:600;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
/* Общий шаблон услуг. Размеры и ритм — сводка исследования от 23.10.2026. */
.usluga{--vozduh:128px;--kolonka:680px;font-size:18px;line-height:29px;overflow-wrap:break-word;padding-bottom:var(--vozduh)}
.page-usluga .descriptor,.page-usluga .descriptor-focus,.page-usluga .footer{font-size:14px;line-height:20px}
.page-usluga .descriptor strong{font-weight:600}
.page-usluga .nav,.page-usluga .header-note{font-size:14px;line-height:20px}
.usluga *{min-width:0}
.usluga strong,.usluga b{font-weight:600}
.usluga p{margin:0 0 24px}
.usluga p:last-child{margin-bottom:0}
.usluga .breadcrumb{padding-top:32px;margin:0;font-size:14px;line-height:20px}
.usluga h2{max-width:980px;margin:0 0 32px;scroll-margin-top:32px}
.usluga h3{font-size:28px;letter-spacing:-.025em;line-height:1.2}
.usluga a.inline{border-bottom:1px solid var(--bronze)}
.usluga a.inline:hover{color:var(--bronze)}
.usluga .button,.usluga .u-secondary{font:600 16px/24px var(--sans);min-height:54px;padding:14px 24px;cursor:pointer;gap:16px}
.usluga .button:hover{background:var(--green);transform:none;text-decoration:underline;text-underline-offset:4px}
.usluga .text-link{font-size:16px;line-height:24px;font-weight:600}
.usluga .u-secondary{display:inline-flex;align-items:center;justify-content:space-between;min-height:48px;border:1.5px solid var(--green);color:var(--green)}
.usluga :focus-visible{outline:2px solid var(--bronze);outline-offset:5px}
.u-prose,.u-vvod{max-width:var(--kolonka)}
.u-ekran{padding-top:var(--vozduh)}
.usluga .u-nadzag{font:600 17px/27px var(--sans);color:var(--bronze);margin:0 0 12px;max-width:var(--kolonka);text-transform:none;letter-spacing:0}

/* В DOM порядок телефонный; справа на компьютере портрет занимает все строки. */
.u-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);grid-template-rows:repeat(4,auto);column-gap:6%;row-gap:24px;align-items:start;padding:48px 0}
.u-hero h1{grid-column:1;grid-row:1;font-size:clamp(40px,5.4vw,76px);line-height:1.04;letter-spacing:-.05em}
.usluga .u-hero-lead{grid-column:1;grid-row:2;margin:0;max-width:var(--kolonka)}
.u-hero-text{grid-column:1;grid-row:3;max-width:var(--kolonka)}
.u-hero .actions{grid-column:1;grid-row:4;gap:16px 24px;margin:8px 0 0}
.u-photo{position:relative;padding:18px 0 0 18px}
.u-photo:before{content:'';position:absolute;inset:0 18px 18px 0;background:var(--green)}
.u-photo img{position:relative;width:100%;aspect-ratio:4/5;object-fit:cover}
.u-hero .u-photo{grid-column:2;grid-row:1/-1;align-self:center}
.plashki{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}
.plashki li{padding:32px 24px 32px 0;border-bottom:1px solid var(--line)}
.plashki li+li{padding-left:24px;border-left:1px solid var(--line)}
.usluga .u-number strong,.usluga .u-cena>strong{display:block;font:400 clamp(44px,3.5vw,56px)/1.1 var(--serif);letter-spacing:-.04em;color:var(--green);margin:0 0 8px}
.u-number span,.u-chislo>span,.usluga .podpis{display:block;font:400 14px/20px var(--sans);color:var(--muted)}
.begushaya{display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line);padding:24px 0}
.begushaya-label{flex:none;font:italic 17px/1.3 var(--serif);color:var(--muted);max-width:210px}
.begushaya-okno{overflow:hidden;flex:1}
/* Между копиями нет gap: правое поле входит в ширину каждого одинакового ряда. */
.begushaya-lenta{display:flex;width:max-content;animation:usluga-lenta 38s linear infinite}
.begushaya-ryad{display:flex;flex:none;align-items:center;gap:56px;padding-right:56px}
.begushaya-ryad>a,.begushaya-ryad>span{font:24px/1.2 var(--serif);letter-spacing:-.03em;white-space:nowrap}
.begushaya-ryad a:hover{color:var(--bronze)}
.begushaya:hover .begushaya-lenta{animation-play-state:paused}
@keyframes usluga-lenta{to{transform:translateX(-50%)}}
/* Клавиатурой доступны все издания, в том числе за пределами окна ленты. */
.begushaya:focus-within .begushaya-lenta{width:auto;animation:none}
.begushaya:focus-within .begushaya-ryad{flex:0 1 auto;max-width:100%;flex-wrap:wrap;gap:16px 32px;padding:0}
.begushaya:focus-within .begushaya-ryad[aria-hidden]{display:none}

.vypiski{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ink)}
.vypiski blockquote{margin:0;padding:32px 32px 32px 0;border-bottom:1px solid var(--line);font:clamp(24px,2.3vw,32px)/1.3 var(--serif);letter-spacing:-.02em}
.vypiski blockquote:nth-child(even){padding-left:32px;border-left:1px solid var(--line)}
.usluga .podpis{margin:16px 0 48px;max-width:var(--kolonka)}
.ekran-quotes .u-prose p:last-child{font:32px/1.25 var(--serif);color:var(--green)}
.u-chislo{max-width:var(--kolonka);margin-top:64px;padding-top:32px;border-top:1px solid var(--ink)}
.usluga .u-chislo strong{display:block;font:400 52px/1.1 var(--serif);letter-spacing:-.04em;color:var(--bronze)}
.usluga .u-chislo p{font:26px/1.3 var(--serif);margin:8px 0 16px}

.u-shagi{list-style:none;margin:0 0 48px;padding:0;max-width:960px}
.u-shagi li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:32px;padding:0 0 48px;position:relative}
.u-shagi li:not(:last-child):after{content:'';position:absolute;left:24px;top:64px;bottom:16px;border-left:1px solid var(--line)}
.u-shag-number{font:400 56px/1 var(--serif);color:var(--bronze)}
.u-shagi h3{max-width:680px;margin-bottom:16px}
.u-shagi p{max-width:680px;font-size:17px;line-height:27px}
.u-infografika{display:block;max-width:960px;margin-top:32px}
.u-infografika img{width:100%;height:auto}
.shema{max-width:960px;margin:48px 0 32px}
.shema-vhody{position:relative;padding:0 32px 100px}
.shema-vhod{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;text-align:center}
.shema svg{stroke:var(--bronze);stroke-width:1.5;overflow:visible}
.shema svg path{vector-effect:non-scaling-stroke}
.shema .shema-tip{fill:var(--bronze);stroke:none}
.shema-skobka{position:absolute;bottom:0;left:0;width:100%;height:100px}
.shema-skobka-tip{position:absolute;bottom:0;left:calc(50% - 8px);width:16px;height:12px}
.shema-itog{text-align:center;margin-top:16px}
.shema-diagramma{position:relative;margin-top:24px;padding-top:96px}
.shema-strelka{position:absolute;top:0;left:calc(50% - 8px);width:16px;height:80px}
.shema-cvet-0{--dolya:var(--green)}
.shema-cvet-1{--dolya:#416b59}
.shema-cvet-2{--dolya:#648774}
.shema-cvet-3{--dolya:#82a08a}
.shema-cvet-4{--dolya:#a1b9a2}
.shema-cvet-5{--dolya:#c2d0b8}
.shema-dolya{background:var(--dolya)}
.shema-vynoska{display:none}
.shema-vynoska circle{fill:var(--bronze);stroke:var(--paper);stroke-width:1.5}
/* Без JS числа остаются читаемыми; измеренная схема связывает их с полосой. */
.shema-sostav{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:24px}
.shema-ready .shema-sector{position:absolute;inset:0;pointer-events:none}
.shema-ready .shema-podpis,.shema-ready .shema-dolya{position:absolute;pointer-events:auto}
.shema-ready .shema-dolya{box-shadow:inset 1px 0 var(--paper)}
.shema-ready .shema-vynoska{display:block;position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.shema-vynoska path{pointer-events:stroke;stroke-width:2}
.shema-vynoska circle{pointer-events:all}
.usluga .shema-podpis strong{font-size:32px;margin-bottom:0}
.shema-part{transition:opacity 200ms;touch-action:manipulation}
.shema:has(.shema-part:focus-visible) .shema-part:not(:focus-visible),
.shema:has(.shema-part[data-active]) .shema-part:not([data-active]){opacity:.3}
.usluga .shema-sector:focus-visible{outline:0}
.shema-sector:focus-visible .shema-podpis{outline:2px solid var(--bronze);outline-offset:5px}
@media(hover:hover){
 .shema:has(.shema-part:hover) .shema-part{opacity:.3}
 .shema:has(.shema-part:hover) .shema-part:hover{opacity:1}
}
/* Таймлайн: общие ряды удерживают засечки на одной высоте при переносах. */
.shema-taim-root{container-type:inline-size;width:100%;max-width:960px;margin:32px 0}
.shema-taim-list{position:relative;list-style:none;margin:0;padding:0}
.shema-taim-list:before{content:'';position:absolute;left:8px;top:22px;bottom:0;width:1.5px;background:var(--bronze)}
.shema-taim-phase{position:relative;padding:0 0 40px 40px;transition:opacity 200ms;touch-action:manipulation}
.shema-taim-phase:last-child{padding-bottom:8px}
.shema-taim-when{font:400 clamp(32px,9cqi,36px)/1.15 var(--serif);letter-spacing:-.035em;color:var(--green);margin-bottom:20px}
.shema-taim-mark{position:absolute;left:0;top:0;width:32px;height:40px}
.shema-taim-mark svg{display:block;width:100%;height:100%;fill:none;stroke:var(--bronze);stroke-width:1.5}
.shema-taim-mark path{vector-effect:non-scaling-stroke}
.shema-taim-mark .shema-taim-horizontal{display:none}
.shema-taim-accent{display:none;position:absolute;background:var(--green);left:2px;top:0;width:13px;height:44px}
.shema-taim-main .shema-taim-accent{display:block}
.usluga .shema-taim-title{margin:0 0 20px;font:600 20px/1.3 var(--sans);letter-spacing:0;color:var(--ink)}
.shema-taim-items{list-style:none;margin:0;padding:0;display:grid;gap:12px;font:400 17px/27px var(--sans);color:var(--muted)}
.shema-taim-root[data-shema-selected] .shema-taim-phase{opacity:.3}
.shema-taim-root[data-shema-selected] .shema-taim-phase[data-shema-current]{opacity:1}
@container(min-width:760px){
 .shema-taim-list{display:grid;grid-template-columns:var(--taim-columns);grid-template-rows:auto 40px auto;row-gap:16px}
 .shema-taim-list:before{display:none}
 .shema-taim-phase,.shema-taim-phase:last-child{display:grid;grid-row:1/4;grid-template-rows:subgrid;padding:0}
 .shema-taim-when{align-self:end;text-align:center;margin:0;padding:0 12px;font-size:clamp(40px,5cqi,48px)}
 .shema-taim-mark{position:relative;width:100%;height:40px}
 .shema-taim-mark .shema-taim-horizontal{display:block}
 .shema-taim-mark .shema-taim-vertical{display:none}
 .shema-taim-accent{left:28%;top:25px;width:44%;height:14px}
 .shema-taim-body{padding:8px 16px 0}
}
@media(prefers-reduced-motion:reduce){.shema-taim-phase{transition:none}}
/* Новые схемы: узкая композиция служит основой, широкая включается по месту. */
.shema-kanaly-root,.shema-tsep-root{container-type:inline-size;width:100%;max-width:960px;margin:32px 0;color:var(--green)}
.shema-kanaly-row,.shema-tsep-stage{transition:opacity 200ms;touch-action:manipulation}
.shema-kanaly-root[data-shema-selected] .shema-kanaly-row,
.shema-tsep-root[data-shema-selected] .shema-tsep-stage{opacity:.3}
.shema-kanaly-root[data-shema-selected] .shema-kanaly-row[data-shema-current],
.shema-tsep-root[data-shema-selected] .shema-tsep-stage[data-shema-current]{opacity:1}
.shema-kanaly-legenda{display:flex;flex-wrap:wrap;gap:16px 32px;margin-bottom:32px;font:14px/20px var(--sans);color:var(--ink)}
.shema-kanaly-color-0{--kanaly-color:var(--bronze)}
.shema-kanaly-color-1{--kanaly-color:var(--green)}
.shema-kanaly-key{display:flex;align-items:center;gap:12px}
.shema-kanaly-key i{width:32px;height:4px;background:var(--kanaly-color);flex:none}
.shema-kanaly-rows{display:grid;gap:24px}
.shema-kanaly-row{display:grid;gap:8px;align-items:center}
.shema-kanaly-name{font:16px/25px var(--sans);color:var(--ink)}
.shema-kanaly-bars{display:grid;gap:8px}
/* Одинаковый запас под 100 % оставляет общую шкалу и не обрезает крайнее число. */
.shema-kanaly-bar{padding-right:88px}
.shema-kanaly-track{height:32px;display:flex;align-items:center}
.shema-kanaly-fill{display:block;position:relative;height:20px;background:var(--kanaly-color)}
.shema-kanaly-value{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:8px;white-space:nowrap;font:400 28px/1.1 var(--serif);letter-spacing:-.035em}
.shema-kanaly-note{background:var(--tone);padding:16px 24px;color:var(--tone-bronze);font:400 28px/1.2 var(--serif)}
.shema-kanaly-bracket{display:none}
.shema-tsep-grid{display:grid;gap:32px}
.shema-tsep-labels{display:none}
.shema-tsep-stage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 0}
.shema-tsep-heading{grid-column:1/-1;font:16px/25px var(--sans);color:var(--ink)}
.shema-tsep-cell{display:flex;flex-direction:column;justify-content:flex-end;border-bottom:1px solid var(--bronze)}
.shema-tsep-rowname{font:600 16px/20px var(--sans);color:var(--ink);margin-bottom:8px;padding-right:8px}
.shema-tsep-shape{height:20px;display:flex;align-items:flex-end}
.shema-tsep-shape svg{display:block;width:100%;height:100%;fill:var(--green)}
.shema-tsep-before .shema-tsep-shape svg{fill:var(--muted);fill-opacity:.55}
.shema-tsep-value{display:block;flex:1;padding:12px 8px;border-left:1px solid var(--bronze);font:400 28px/1.2 var(--serif);letter-spacing:-.04em;overflow-wrap:break-word}
.shema-tsep-cell:nth-of-type(odd) .shema-tsep-value,.shema-tsep-last .shema-tsep-value{border-right:1px solid var(--bronze)}
.shema-tsep-notes{grid-column:1/-1;display:grid;gap:8px;color:var(--bronze);font:400 22px/1.25 var(--serif)}
.shema-tsep-notes svg{display:none}
@container(min-width:760px){
 .shema-kanaly-rows{column-gap:24px;row-gap:32px}
 .shema-kanaly-bracketed{grid-template-columns:minmax(0,1fr) 260px}
 .shema-kanaly-row{grid-column:1;grid-row:var(--kanaly-row);grid-template-columns:180px minmax(0,1fr);gap:24px}
 .shema-kanaly-name{font-size:17px;line-height:27px}
 .shema-kanaly-bar{padding-right:96px}
 .shema-kanaly-value{font-size:32px}
 .shema-kanaly-note{grid-column:2;grid-row:var(--kanaly-start)/span var(--kanaly-span);position:relative;display:flex;align-items:center;background:none;padding:0 0 0 40px;color:var(--bronze)}
 .shema-kanaly-bracket{display:block;position:absolute;left:0;top:0;width:24px;height:100%;stroke:var(--bronze);stroke-width:1.5}
 .shema-kanaly-bracket path{vector-effect:non-scaling-stroke}
}
@container(min-width:800px){
 .shema-tsep-grid:not(.shema-tsep-long){grid-template-columns:64px repeat(var(--tsep-count),minmax(0,1fr));grid-template-rows:repeat(var(--tsep-rows),auto);gap:0}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-labels{display:grid;grid-template-rows:subgrid;grid-row:1/-1;font:600 16px/20px var(--sans);color:var(--ink)}
 .shema-tsep-labels span{align-self:start;padding:0 8px 0 0}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-stage{grid-row:1/-1;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;gap:0}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-heading{grid-row:1;grid-column:1;padding:0 8px 24px;text-align:center;font:14px/20px var(--sans)}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-cell{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:112px minmax(0,1fr);justify-content:stretch;grid-row:var(--tsep-row);grid-column:1}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-rowname{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-shape{height:112px;border-right:1px solid var(--paper)}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-shape svg{height:var(--tsep-height)}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-value{flex:none;text-align:left;font-size:clamp(28px,3.4cqw,36px);border-right:0}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-stage:last-child .shema-tsep-value{border-right:1px solid var(--bronze)}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-notes{grid-row:3;grid-column:1;align-content:center;justify-items:center;text-align:center;padding:16px 8px 24px;font-size:20px}
 .shema-tsep-grid:not(.shema-tsep-long) .shema-tsep-notes svg{display:block;width:16px;height:32px;stroke:var(--bronze);stroke-width:1.5}
}
@media(prefers-reduced-motion:reduce){
 .shema-kanaly-row,.shema-tsep-stage{transition:none}
}
.u-spisok{list-style:none;margin:0;padding:0;columns:2;column-gap:48px}
.u-spisok li{break-inside:avoid;padding:24px 0 24px 32px;border-top:1px solid var(--line);position:relative;font-size:17px;line-height:27px}
.u-spisok li:before{content:'';position:absolute;left:4px;top:34px;width:7px;height:7px;border-radius:50%;background:var(--bronze)}
.obrazcy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}
.ekran-spisok{padding-bottom:32px}
.ekran-spisok+.u-ekran{padding-top:calc(var(--vozduh) - 32px)}
.u-document{display:grid;grid-template-columns:32px minmax(0,1fr) 20px;align-items:center;gap:24px;padding:24px;border:1.5px solid var(--green);color:var(--green);font:600 17px/27px var(--sans)}
.u-document:hover{background:var(--tone)}
.u-document svg{flex:none}

.u-bloki{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}
.u-blok{background:var(--tone);padding:32px}
.u-blok h3{margin-bottom:16px}
.u-blok p{font-size:17px;line-height:27px}
.u-pravila{margin-top:64px;background:var(--green);color:var(--paper);padding:48px}
.u-pravila h3{color:var(--paper);margin-bottom:24px}
.u-pravila ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.u-pravila li{border-top:1px solid var(--paper);padding-top:16px;font:22px/1.35 var(--serif)}
.u-ot-vas{margin-top:64px;padding:32px;background:var(--tone);max-width:960px}
.u-ot-vas h3{color:var(--tone-bronze);margin-bottom:24px}
.u-ot-vas ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px;padding-left:24px;margin:0 0 32px}
.u-ot-vas li{font-size:17px;line-height:27px;padding-left:4px}
.u-ot-vas p{max-width:var(--kolonka)}
.u-kto{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:6%;align-items:start}
@media(min-width:1000px){
 .u-kto-photo{align-self:stretch}
 .u-kto-photo .u-photo{position:sticky;top:32px}
}
.pressa-spisok{list-style:none;margin:32px 0 24px;padding:0;border-top:1px solid var(--ink)}
.pressa-spisok a{display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:12px 24px;padding:24px 0;border-bottom:1px solid var(--line)}
.pressa-spisok span{grid-column:1/-1;font:32px/1.2 var(--serif);letter-spacing:-.02em}
.pressa-spisok strong{font-size:18px;line-height:29px}
.pressa-spisok svg{margin-top:8px}
.pressa-spisok a:hover{color:var(--bronze)}
.usluga .u-kto-text{margin-top:64px;max-width:var(--kolonka)}
.u-price-heading{margin-bottom:32px}
.u-ceny{border-top:1px solid var(--ink);margin-bottom:32px}
.u-cena{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr) minmax(0,1.05fr);align-items:center;gap:32px;padding:32px 0;border-bottom:1px solid var(--line)}
.u-cena h3{max-width:280px}
.u-cena p{font-size:17px;line-height:27px;color:var(--muted);margin:0}
.usluga .u-cena>strong{color:var(--ink);text-align:right;margin:0}
.u-cena small{display:block;font:14px/20px var(--sans);letter-spacing:0;color:var(--muted);margin-top:8px}
.u-cena:nth-child(2){border-bottom-color:var(--ink)}
.u-price-action{margin-top:32px}
.u-risk{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}
.u-risk li{padding:32px 0;border-top:1px solid var(--ink);font-size:17px;line-height:27px}
.u-risk strong{display:block;margin-bottom:16px}
.nda{max-width:var(--kolonka);border-left:3px solid var(--bronze);padding-left:32px;margin-bottom:64px}
.nda h3{margin-bottom:24px}
.nda p{font-size:17px;line-height:27px}
.u-keysy{display:grid;gap:32px}
.u-keys{padding:32px;border:1px solid var(--line);border-top:2px solid var(--green)}
.u-keys>h3{font-size:36px;max-width:var(--kolonka);margin-bottom:32px}
.u-keys-chisla{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:32px;margin-bottom:32px}
.u-keys-number{font:16px/24px var(--sans);color:var(--ink)}
.u-keys-label{font-weight:600;margin-bottom:8px}
.u-keys-pair{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px}
.u-keys-number strong{display:block;font:400 56px/1.1 var(--serif);letter-spacing:-.04em;color:var(--green);margin-bottom:8px}
.u-keys-pair .u-keys-bylo{font:32px/1.1 var(--serif);color:var(--muted)}
.u-keys-arrow{font-size:24px;color:var(--bronze)}
.u-keys-raz{font-weight:600;color:var(--bronze)}
.u-keys-story{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.u-keys-story>div{padding:24px;border-top:1px solid var(--line)}
.u-keys-story .u-keys-stalo{background:var(--tone);border-color:transparent}
.u-keys-story dt{font:600 16px/24px var(--sans);color:var(--bronze);margin-bottom:12px}
.u-keys-story dd{margin:0}
.u-keys-story ul{margin:0;padding-left:20px}
.u-keys-story li{padding-left:4px}
.u-keys-story li+li{margin-top:12px}
.u-keys-story li::marker{color:var(--bronze)}
.u-uslugi{list-style:none;margin:0;padding:0;columns:3;column-gap:32px}
.u-uslugi li{padding:16px 0;border-top:1px solid var(--line);font:24px/1.3 var(--serif);break-inside:avoid}
.u-uslugi a{display:block}
.u-uslugi a:hover{color:var(--bronze)}
.usluga .faq{max-width:960px}
.usluga .faq details{padding:0;border-bottom:1px solid var(--line)}
.usluga .faq summary{padding:24px 32px 24px 0;font:26px/1.3 var(--serif);position:relative;list-style:none}
.usluga .faq summary::-webkit-details-marker{display:none}
.usluga .faq summary:after{content:'+';position:absolute;right:0;top:24px;color:var(--bronze);font-family:var(--sans)}
.usluga .faq details[open] summary:after{content:'−'}
.usluga .faq details p{max-width:var(--kolonka);font-size:18px;line-height:29px;margin:0 0 24px}
.usluga .u-predel{max-width:var(--kolonka);margin:32px 0;padding:32px;background:var(--tone);color:var(--tone-bronze);font-weight:600}
.usluga .pereskaz{max-width:var(--kolonka);font:italic 28px/1.35 var(--serif);color:var(--green);margin-top:32px}
.u-zhurnal{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}
.u-zhurnal a{display:block;padding:24px 0;border-top:1px solid var(--line);font:26px/1.3 var(--serif)}
.u-zhurnal a:hover{color:var(--bronze)}

/* Форма остаётся обычной POST-формой до подключения JS. */
.u-zapis{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding:48px;background:var(--green);color:var(--paper)}
.u-zapis h2,.u-zapis h3{color:var(--paper)}
.u-zapis p{font-size:17px;line-height:27px;max-width:var(--kolonka)}
.usluga .u-cena-zapis{font:400 56px/1.1 var(--serif);color:var(--gold);margin-bottom:32px}
.u-kviz{align-self:start}
.u-forma{display:grid;gap:24px}
.u-forma h3{font-size:28px;line-height:1.25}
.u-forma label{display:grid;gap:8px;font-size:17px;line-height:27px}
.u-forma input:not([type=checkbox]):not([type=radio]),.u-forma textarea{width:100%;max-width:100%;padding:12px 16px;border:1px solid var(--muted);border-radius:0;background:var(--paper);color:var(--ink);font:18px/29px var(--sans)}
.u-forma textarea{resize:vertical;min-height:120px}
.u-forma .soglasie{display:flex;gap:12px;align-items:flex-start;font:13px/18px var(--sans)}
.u-forma .soglasie input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--green)}
.u-forma .button{width:100%;justify-content:center}
.u-zapis .button,.u-zapis .button:hover{background:var(--paper);color:var(--green)}
.u-zapis a.inline{border-color:var(--paper);text-decoration:underline;text-underline-offset:3px}
.u-zapis a.inline:hover{color:var(--gold)}
.u-zapis :focus-visible{outline-color:var(--gold)}
.u-forma .button:disabled{cursor:wait;opacity:.65}
.u-question{border:0;margin:0;padding:0}
.u-question legend{font:600 17px/27px var(--sans);padding:0;margin-bottom:12px}
.u-chips{display:flex;flex-wrap:wrap;gap:8px}
.u-forma .u-chip{display:inline-flex;flex:0 1 auto;width:auto;position:relative;cursor:pointer;max-width:100%}
.u-chip input{position:absolute;opacity:0;width:1px;height:1px}
.u-chip span{display:block;min-height:44px;border:1.5px solid var(--paper);padding:10px 12px;font:600 16px/24px var(--sans);color:var(--paper)}
.u-chip input:checked+span{background:var(--paper);color:var(--green)}
.u-chip input:focus-visible+span{outline:2px solid var(--gold);outline-offset:4px}
.u-chip:hover span{border-color:var(--gold)}
.usluga .u-kviz-status{margin:16px 0 0;font:14px/20px var(--sans)}
.u-kviz-status:empty{display:none}
.usluga .u-spasibo{font:28px/1.35 var(--serif)}
.u-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

@media(max-width:1100px){
 .u-hero{column-gap:32px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
 .u-bloki{grid-template-columns:1fr}
 .u-cena{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .u-cena p{grid-column:1;grid-row:2}
 .u-cena>strong{grid-column:2;grid-row:1/3}
 .u-zapis{gap:32px}
 .u-uslugi{columns:2}
}
@media(max-width:700px){
 .usluga{--vozduh:64px;font-size:17px;line-height:27px}
 .usluga p{margin-bottom:20px}
 .usluga h2{margin-bottom:24px}
 .usluga h3{font-size:26px}
 .usluga .breadcrumb{padding-top:24px}
 .usluga .button{min-height:52px;width:100%}
 .usluga .u-secondary{min-height:48px;width:100%}
 .u-hero{display:flex;flex-direction:column;gap:24px;padding:32px 0}
 .u-hero h1{font-size:clamp(34px,9.6vw,52px);line-height:1.08;letter-spacing:-.04em}
 .u-hero .u-hero-lead{margin:0}
 .u-hero .u-photo{width:100%;align-self:stretch}
 .u-photo img{aspect-ratio:5/4;object-position:center 30%}
 .u-hero .actions{width:100%;margin:0;gap:16px}
 .plashki{grid-template-columns:1fr}
 .plashki li,.plashki li+li{padding:24px 0;border-left:0}
 .usluga .u-number strong,.usluga .u-cena>strong{font-size:40px}
 .begushaya{flex-direction:column;align-items:flex-start;gap:16px}
 .begushaya-label{max-width:none}
 .begushaya-okno{width:100%;flex:auto}
 .begushaya-ryad{gap:32px;padding-right:32px}
 .vypiski{grid-template-columns:1fr}
 .vypiski blockquote,.vypiski blockquote:nth-child(even){padding:24px 0;border-left:0}
 .usluga .podpis{margin:16px 0 32px}
 .u-chislo{margin-top:40px;padding-top:24px}
 .usluga .u-chislo strong{font-size:40px}
 .u-shagi li{grid-template-columns:40px minmax(0,1fr);gap:16px;padding-bottom:32px}
 .u-shag-number{font-size:40px}
 .u-shagi li:not(:last-child):after{left:16px;top:48px;bottom:12px}
 .u-shagi p,.u-spisok li,.u-blok p,.u-ot-vas li,.u-cena p,.u-risk li,.nda p,.u-zapis p{font-size:16px;line-height:25px}
 .u-shagi{margin-bottom:24px}
 .shema{margin:32px 0}
 .shema-vhody{padding:0 32px 76px}
 .shema-vhod{grid-template-columns:1fr;gap:32px}
 .shema-skobka{height:64px}
 .shema-vhody:before,.shema-vhody:after{content:'';position:absolute;top:24px;bottom:64px;width:16px;border:solid var(--bronze)}
 .shema-vhody:before{left:0;border-width:1.5px 0 0 1.5px}
 .shema-vhody:after{right:0;border-width:1.5px 1.5px 0 0}
 .shema-itog{margin-top:16px}
 .shema-diagramma{padding-top:64px}
 .shema-strelka{left:18px;height:48px}
 .shema-ready .shema-dolya{box-shadow:inset 0 1px var(--paper)}
 .usluga .shema-podpis strong{font-size:30px}
 .u-spisok{columns:1}
 .obrazcy{grid-template-columns:1fr;gap:16px;margin-top:24px}
 .u-document{gap:16px;padding:24px}
 .u-bloki{gap:16px;margin-top:24px}
 .u-blok,.u-ot-vas{padding:24px}
 .u-pravila{margin-top:40px;padding:24px}
 .u-pravila ul{grid-template-columns:1fr;gap:16px}
 .u-ot-vas{margin-top:40px}
 .u-ot-vas ul{grid-template-columns:1fr;gap:16px;margin-bottom:24px}
 .u-kto{grid-template-columns:1fr;gap:24px}
 .pressa-spisok{margin-top:24px}
 .pressa-spisok span{font-size:28px}
 .pressa-spisok strong{font-size:17px;line-height:27px}
 .usluga .u-kto-text{margin-top:40px}
 .u-price-heading{margin-bottom:24px}
 .u-cena{grid-template-columns:1fr;gap:16px;padding:24px 0}
 .u-cena p,.u-cena>strong{grid-column:auto;grid-row:auto}
 .usluga .u-cena>strong{text-align:left}
 .u-cena h3{max-width:none}
 .u-price-action{margin-top:24px}
 .u-risk{grid-template-columns:1fr;gap:16px}
 .u-risk li{padding:24px 0}
 .nda{padding-left:24px;margin-bottom:40px}
 .u-keys{padding:24px 16px}
 .u-keys>h3{font-size:30px;margin-bottom:24px}
 .u-keys-chisla{grid-template-columns:1fr;gap:24px;margin-bottom:24px}
 .u-keys-number strong{font-size:44px}
 .u-keys-pair .u-keys-bylo{font-size:28px}
 .u-keys-story{grid-template-columns:1fr;gap:16px}
 .u-keys-story>div{padding:16px 8px}
 .u-uslugi{columns:1}
 .usluga .faq summary{font-size:24px}
 .usluga .faq details p{font-size:17px;line-height:27px;margin-bottom:20px}
 .usluga .u-predel{padding:24px;margin:24px 0}
 .usluga .pereskaz{font-size:26px;margin-top:24px}
 .u-zhurnal{grid-template-columns:1fr;gap:16px}
 .u-zapis{grid-template-columns:1fr;gap:32px;padding:32px var(--gutter);margin-inline:calc(-1 * var(--gutter))}
 .usluga .u-cena-zapis{font-size:40px;margin-bottom:24px}
 .u-forma h3{font-size:26px}
 .u-forma label{font-size:16px;line-height:25px}
 .u-forma input:not([type=checkbox]):not([type=radio]),.u-forma textarea{font-size:17px;line-height:27px}
 .u-forma .soglasie{font:13px/18px var(--sans)}
 .usluga .u-kviz-status{font:14px/20px var(--sans)}
 .usluga .u-spasibo{font:26px/1.35 var(--serif)}
}
@media(prefers-reduced-motion:reduce){
 .shema-part{transition:none}
 .begushaya-lenta{animation:none;width:auto}
 .begushaya-ryad{flex:0 1 auto;max-width:100%;flex-wrap:wrap;gap:16px 32px;padding:0}
 .begushaya-ryad[aria-hidden]{display:none}
}
/* Слова не рвутся (слово Никиты 23.10 04:44): подписи времени и заголовки кейсов по размеру колонки */
.shema-taim-when{font-size:clamp(32px,2.8vw,40px)}
@media(max-width:600px){.u-keys h3{font-size:28px}}
@media(max-width:380px){.u-keys h3{font-size:24px}}

/* Технологичность: общая композиция для любого числа программ и строк доказательства. */
.usluga .u-tehno-intro{max-width:680px;margin:0 0 32px;font:400 18px/29px var(--sans)}
.u-tehno-layout{max-width:1120px;overflow-wrap:break-word}
.u-tehno-programs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:960px}
.u-tehno-card{padding:32px;background:var(--tone)}
.u-tehno-card:last-child:nth-child(odd){grid-column:1/-1}
.u-tehno-frequency{display:flex;align-items:flex-start;gap:8px;margin-bottom:12px;font:600 14px/20px var(--sans);color:var(--tone-bronze)}
.u-tehno-frequency svg{flex:none;margin-top:2px}
.usluga .u-tehno-program-title{margin:0 0 8px;font:600 17px/27px var(--sans);letter-spacing:0;color:var(--ink)}
.usluga .u-tehno-program-text{margin:0;font:400 17px/27px var(--sans)}
.u-tehno-comparison{margin-top:64px}
.usluga .u-tehno-proof-title{margin:0 0 32px;font:600 24px/32px var(--sans);letter-spacing:0;max-width:720px}
.u-tehno-chart{display:grid;grid-template-columns:minmax(0,720px) minmax(0,1fr);gap:32px;align-items:start}
.usluga .u-tehno-result{grid-column:2;grid-row:1;margin:0;font:400 56px/1.1 var(--serif);letter-spacing:-.035em;color:var(--green)}
.u-tehno-bars{grid-column:1;grid-row:1;display:grid;gap:24px;list-style:none;margin:0;padding:0;max-width:720px}
.u-tehno-row{transition:opacity 200ms;touch-action:manipulation}
.u-tehno-bars[data-shema-selected] .u-tehno-row{opacity:.3}
.u-tehno-bars[data-shema-selected] .u-tehno-row[data-shema-current]{opacity:1}
.u-tehno-label{margin-bottom:8px;font:400 16px/24px var(--sans)}
.u-tehno-track{position:relative}
.u-tehno-fill{display:block;width:var(--tehno-width);height:16px;background:var(--muted)}
.u-tehno-row:first-child .u-tehno-fill{background:var(--green)}
.u-tehno-row:nth-child(2) .u-tehno-fill{background:var(--ink)}
/* Без JS значение остаётся над полосой; после замера — у её конца, если хватает места. */
.u-tehno-value{display:block;width:max-content;max-width:100%;margin:0 0 8px auto;text-align:right;font:600 17px/24px var(--sans)}
.u-tehno-track[data-tehno-inline] .u-tehno-value{position:absolute;left:calc(var(--tehno-width) + 8px);top:50%;transform:translateY(-50%);margin:0}
.usluga .u-tehno-caption{max-width:680px;margin:24px 0 0;font:400 14px/20px var(--sans);color:var(--muted)}
.u-tehno-layout-report{display:grid;grid-template-columns:minmax(0, .85fr) minmax(0, 1.35fr);gap:32px;align-items:start}
.u-tehno-layout-report .u-tehno-programs{grid-template-columns:minmax(0,1fr)}
.u-tehno-report{padding:24px;background:var(--tone)}
.u-tehno-paper{padding:32px;background:#fbf8f1;color:var(--ink)}
.usluga .u-tehno-report-note{margin:0 0 16px;font:600 14px/20px var(--sans);color:var(--tone-bronze)}
.usluga .u-tehno-report-title{margin:0 0 24px;font:600 22px/30px var(--sans);letter-spacing:0}
.u-tehno-report-lines{list-style:none;margin:0;padding:0}
.u-tehno-report-line{font:400 17px/27px var(--sans)}
.u-tehno-report-line+.u-tehno-report-line{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.u-tehno-report-line .u-tehno-number{font:600 20px/27px var(--serif);color:var(--green)}
.u-tehno-request{font-weight:600}
@media(max-width:1000px){
 .u-tehno-layout-report{grid-template-columns:minmax(0,1fr);gap:40px}
 .u-tehno-layout-report .u-tehno-programs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .u-tehno-report{max-width:720px}
 .u-tehno-chart{grid-template-columns:minmax(0,1fr)}
 .usluga .u-tehno-result{grid-column:1;grid-row:1;font-size:48px}
 .u-tehno-bars{grid-row:2;width:100%}
}
@media(max-width:700px){
 .usluga .u-tehno-intro{margin-bottom:24px;font-size:17px;line-height:27px}
 .u-tehno-programs,.u-tehno-layout-report .u-tehno-programs{grid-template-columns:minmax(0,1fr);gap:16px}
 .u-tehno-card{padding:24px}
 .usluga .u-tehno-program-text{font-size:16px;line-height:25px}
 .u-tehno-comparison{margin-top:40px}
 .usluga .u-tehno-proof-title{font-size:22px;line-height:30px;margin-bottom:24px}
 .u-tehno-chart{gap:24px}
 .usluga .u-tehno-result{font-size:40px}
 .u-tehno-report,.u-tehno-paper{padding:24px}
 .usluga .u-tehno-report-title{font-size:20px;line-height:28px}
}
@media(prefers-reduced-motion:reduce){.u-tehno-row{transition:none}}
/* Блок технологичности после просмотра снимков: название программы крупнее текста, лист отчёта едет за прокруткой рядом с длинным столбцом карточек */
.usluga .u-tehno-program-title{font-size:20px;line-height:28px}
@media(min-width:1001px){.u-tehno-layout-report .u-tehno-report{position:sticky;top:32px}}
@media(max-width:600px){.usluga .u-tehno-program-title{font-size:18px;line-height:26px}}

/* Семь схем svoy. Общие свойства ограничены новыми корнями. */
:is(.shema-stolbcy-root,.shema-stek-root,.shema-matritsa-root,.shema-chek-root,.shema-vodopad-root,.shema-poteri-root,.shema-panel-root){width:100%;max-width:960px;margin:32px 0;container-type:inline-size;color:var(--ink);font:17px/27px var(--sans);overflow-wrap:normal;word-break:normal;hyphens:none}
:is(.shema-stolbcy-root,.shema-stek-root,.shema-matritsa-root,.shema-chek-root,.shema-vodopad-root,.shema-poteri-root,.shema-panel-root) [data-shema-part]{transition:opacity 200ms;touch-action:manipulation}
:is(.shema-stolbcy-root,.shema-stek-root,.shema-matritsa-root,.shema-chek-root,.shema-vodopad-root,.shema-poteri-root,.shema-panel-root)[data-shema-selected] [data-shema-part]{opacity:.3}
:is(.shema-stolbcy-root,.shema-stek-root,.shema-matritsa-root,.shema-chek-root,.shema-vodopad-root,.shema-poteri-root,.shema-panel-root)[data-shema-selected] [data-shema-current]{opacity:1}

.shema-stolbcy-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}
.shema-stolbcy-axis{font:14px/20px var(--sans);color:var(--muted)}
.shema-stolbcy-result{max-width:600px;text-align:right}
.shema-stolbcy-result strong{display:block;font:600 56px/1.08 var(--serif);color:var(--green);margin-bottom:8px;letter-spacing:-.035em}
.shema-stolbcy-result>span{font:17px/27px var(--sans)}
.shema-stolbcy-legend{display:flex;flex-wrap:wrap;gap:16px 32px;margin-bottom:32px;font:14px/20px var(--sans)}
.shema-stolbcy-legend>span{display:flex;gap:8px;align-items:center}
.shema-stolbcy-key{display:inline-block;width:24px;height:12px;flex:none;background:var(--stolbcy-color,color-mix(in srgb,var(--green) 40%,var(--paper)))}
.shema-stolbcy-green{--stolbcy-color:var(--green)}
.shema-stolbcy-chart{display:grid;grid-template-columns:repeat(var(--stolbcy-count),minmax(0,1fr));gap:16px;padding:var(--stolbcy-headroom,160px) 0 0;border-left:1px solid var(--bronze)}
.shema-stolbcy-group{display:grid;grid-template-rows:280px auto;align-content:start}
.shema-stolbcy-bars{display:grid;grid-template-columns:repeat(var(--stolbcy-series),minmax(0,1fr));gap:8px;align-items:end;border-bottom:1px solid var(--bronze);padding:0 8px}
.shema-stolbcy-part{height:100%;position:relative;display:flex;align-items:end;justify-content:center}
.shema-stolbcy-fill{position:relative;width:100%;height:var(--stolbcy-size);background:var(--stolbcy-color,color-mix(in srgb,var(--green) 40%,var(--paper)))}
.shema-stolbcy-value{position:absolute;bottom:calc(100% + 12px);left:50%;white-space:nowrap;font:600 24px/1 var(--serif);color:var(--green);transform:rotate(-90deg);transform-origin:left center}
.shema-stolbcy-flat .shema-stolbcy-value{transform:translateX(-50%)}
.shema-stolbcy-label{display:none;text-align:center;padding-top:12px;font:14px/20px var(--sans)}
.shema-stolbcy-index{display:block;text-align:center;padding-top:12px;font:14px/20px var(--sans);color:var(--muted)}
.shema-stolbcy-labels{padding-left:24px;margin:24px 0 0;columns:2;column-gap:32px;font:14px/20px var(--sans)}
.shema-stolbcy-labels>li{break-inside:avoid;padding:0 0 8px 4px}
.shema-stolbcy-labelled .shema-stolbcy-label{display:block}
.shema-stolbcy-labelled .shema-stolbcy-index,.shema-stolbcy-labelled .shema-stolbcy-labels{display:none}

.shema-stek-root{position:relative}
.shema-stek-columns{display:grid;grid-template-columns:repeat(var(--stek-count),minmax(0,1fr));gap:48px}
.shema-stek-column{display:grid;grid-template-rows:auto var(--stek-height) auto;align-items:end;position:relative}
.shema-stek-total{display:block;padding-bottom:24px;font:600 44px/1.1 var(--serif);letter-spacing:-.025em;color:var(--green)}
.shema-stek-plot{position:relative;height:var(--stek-height);display:grid;grid-template-rows:repeat(var(--stek-rows),minmax(0,1fr));border-bottom:1px solid var(--bronze)}
.shema-stek-part{display:flex;align-items:center;grid-row:var(--stek-row);padding-left:calc(34% + 32px)}
.shema-stek-segment{position:absolute;left:0;width:34%;top:var(--stek-top);height:var(--stek-size);background:color-mix(in srgb,var(--green) var(--stek-shade),var(--paper));border-bottom:1px solid var(--paper)}
.shema-stek-label{position:relative;width:100%;font:14px/20px var(--sans);padding:8px 0}
.shema-stek-label>strong{display:block;margin-top:4px;font:600 24px/1.1 var(--serif);color:var(--green)}
.shema-stek-leader{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;fill:var(--bronze);stroke:var(--bronze);stroke-width:1}
.shema-stek-leader path{fill:none}
.shema-stek-name{padding-top:16px;align-self:start;font:17px/27px var(--sans)}
.shema-stek-ours .shema-stek-segment{background:var(--green);border:0;width:100%}
.shema-stek-ours .shema-stek-plot{padding-top:calc((1 - var(--stek-ratio)) * var(--stek-height))}
.shema-stek-ours .shema-stek-part{padding-left:0}
.shema-stek-ours .shema-stek-label{padding:16px 24px;text-align:center;color:var(--paper);font:400 24px/1.2 var(--serif)}
.shema-stek-ours .shema-stek-label>strong{color:var(--paper)}
.shema-stek-ours .shema-stek-leader{display:none}
.shema-stek-single .shema-stek-part{padding-left:0}
.shema-stek-single .shema-stek-segment{width:100%}
.shema-stek-single .shema-stek-label{align-self:end;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;height:calc(var(--stek-ratio) * var(--stek-height));padding:24px;color:var(--paper);font:400 28px/1.2 var(--serif)}
.shema-stek-single .shema-stek-label>strong{color:var(--paper);font-size:24px;margin-top:16px}
.shema-stek-single .shema-stek-leader{display:none}
.shema-stek-outside .shema-stek-plot{padding-top:0}
.shema-stek-outside .shema-stek-part{padding-left:calc(34% + 32px)}
.shema-stek-outside .shema-stek-segment{width:34%}
.shema-stek-outside .shema-stek-label{display:block;height:auto;padding:8px 0;align-self:center;text-align:left;color:var(--ink);font:14px/20px var(--sans)}
.shema-stek-outside .shema-stek-label>strong{color:var(--green);font:600 24px/1.1 var(--serif);margin-top:4px}
.shema-stek-outside .shema-stek-leader{display:block}
.shema-stek-difference{display:flex;gap:16px;align-items:center;color:var(--bronze);font:400 28px/1.2 var(--serif);margin-bottom:32px;max-width:680px}
.shema-stek-bracket{width:20px;height:80px;flex:none;fill:none;stroke:var(--bronze);stroke-width:1.5}
.shema-stek-bracket path{vector-effect:non-scaling-stroke}
.shema-stek-ready .shema-stek-difference{position:absolute;margin:0;left:calc(var(--stek-last-left) - 32px);top:var(--stek-difference-top);width:calc(100% - var(--stek-last-left) + 32px);height:var(--stek-difference-height);max-width:none;align-items:center;padding:0 0 0 32px;font-size:24px}
.shema-stek-ready .shema-stek-bracket{position:absolute;left:0;top:0;height:100%;width:20px}
.shema-stek-ready .shema-stek-total{position:relative;top:var(--stek-total-offset,0px);z-index:1}

.shema-matritsa-y{display:flex;gap:24px;align-items:end;justify-content:space-between;margin-bottom:16px;font:14px/20px var(--sans)}
.shema-matritsa-y>span:first-child{font:400 24px/1.2 var(--serif)}
.shema-matritsa-map{position:relative;aspect-ratio:1.5;border-left:1px solid var(--bronze);border-bottom:1px solid var(--bronze);margin:0 16px}
.shema-matritsa-quadrant{position:absolute;left:50%;top:0;right:0;bottom:50%;background:var(--tone)}
.shema-matritsa-quadrant>span{display:block;text-align:right;padding:16px;font:400 28px/1.15 var(--serif);color:var(--green)}
.shema-matritsa-axes{position:absolute;inset:0;pointer-events:none}
.shema-matritsa-axes:before{content:'';position:absolute;left:50%;top:0;bottom:0;border-left:1px solid var(--bronze)}
.shema-matritsa-axes:after{content:'';position:absolute;top:50%;left:0;right:0;border-top:1px solid var(--bronze)}
.shema-matritsa-point{--matritsa-color:color-mix(in srgb,var(--green) 58%,var(--paper))}
.shema-matritsa-main{--matritsa-color:var(--green);color:var(--green)}
.shema-matritsa-dot{position:absolute;left:var(--matritsa-x);top:var(--matritsa-y);transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--matritsa-color);color:var(--paper);font:600 14px/20px var(--sans);z-index:2}
.shema-matritsa-label{display:none;position:absolute;font:14px/20px var(--sans);color:var(--ink);background:var(--paper);padding:4px 6px;width:max-content;max-width:240px;z-index:1}
.shema-matritsa-leader{display:none;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;fill:none;stroke:var(--bronze);stroke-width:1}
.shema-matritsa-labelled .shema-matritsa-label,.shema-matritsa-labelled .shema-matritsa-leader{display:block}
.shema-matritsa-labelled .shema-matritsa-dot>span,.shema-matritsa-labelled .shema-matritsa-list{display:none}
.shema-matritsa-ends{margin-top:16px;color:var(--muted);font:14px/20px var(--sans)}
.shema-matritsa-x{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);gap:16px;margin-top:8px;font:14px/20px var(--sans)}
.shema-matritsa-x>strong{font:400 24px/1.2 var(--serif);text-align:center}
.shema-matritsa-x>span:last-child{text-align:right}
.shema-matritsa-list{margin:32px 0 0;padding-left:28px;columns:2;column-gap:32px}
.shema-matritsa-item{padding:0 0 12px 4px;break-inside:avoid;font:14px/20px var(--sans)}
.shema-matritsa-item::marker{color:var(--matritsa-color,var(--muted));font-weight:600}

.shema-chek-root{max-width:680px;background:var(--tone);padding:24px}
.shema-chek-paper{background:#fbf8f1;padding:32px}
.usluga .shema-chek-title{font:600 40px/1.12 var(--serif);letter-spacing:-.025em;color:var(--green);margin:0 0 32px}
.shema-chek-lines{margin:0}
.shema-chek-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--line)}
.shema-chek-row>dt{font:17px/27px var(--sans)}
.shema-chek-row>dd{margin:0;font:600 32px/1.1 var(--serif);color:var(--green)}
.shema-chek-total{display:flex;align-items:baseline;justify-content:space-between;gap:8px 24px;flex-wrap:wrap;border-top:2px solid var(--bronze);padding-top:24px;margin-top:24px;color:var(--green);font:600 40px/1.1 var(--serif)}
.shema-chek-total>strong{font:inherit}
.shema-chek-caption{margin-top:16px;font:14px/20px var(--sans);color:var(--muted)}

.shema-vodopad-chart{display:grid;grid-template-columns:repeat(var(--vodopad-count),minmax(0,1fr));column-gap:16px;row-gap:12px;position:relative}
.shema-vodopad-step{display:grid;grid-row:1/5;grid-template-rows:subgrid;position:relative}
.shema-vodopad-plot{position:relative;height:320px;grid-row:1}
.shema-vodopad-plot:before{content:'';position:absolute;top:var(--vodopad-zero);left:0;width:calc(100% + 16px);border-top:1px solid var(--bronze)}
.shema-vodopad-step:last-child .shema-vodopad-plot:before{width:100%}
.shema-vodopad-step:not(:last-child) .shema-vodopad-plot:after{content:'';position:absolute;right:-16px;top:var(--vodopad-end);width:16px;border-top:1px solid var(--bronze)}
.shema-vodopad-bar{position:absolute;left:0;right:0;top:var(--vodopad-top);height:var(--vodopad-size);background:color-mix(in srgb,var(--green) 40%,var(--paper))}
.shema-vodopad-final .shema-vodopad-bar{background:var(--green)}
.shema-vodopad-label{font:14px/20px var(--sans);grid-row:2}
.shema-vodopad-value{font:600 clamp(18px,2.6cqi,28px)/1.2 var(--serif);color:var(--green);grid-row:3;align-self:start}
.shema-vodopad-note{font:14px/20px var(--sans);grid-row:4;color:var(--bronze);padding-top:12px}
.shema-vodopad-highlight .shema-vodopad-bar{outline:2px solid var(--bronze);outline-offset:3px}
.shema-vodopad-note>span{display:block;width:1px;height:24px;background:var(--bronze);margin-bottom:8px}
.shema-vodopad-ready .shema-vodopad-note{position:absolute;left:var(--vodopad-note-left);top:var(--vodopad-note-top);width:var(--vodopad-note-width);padding:0;background:var(--paper);z-index:1}
.shema-vodopad-ready .shema-vodopad-note>span{position:absolute;top:100%;height:var(--vodopad-leader-height);left:var(--vodopad-leader-left);margin:0}

.shema-poteri-root{display:grid;grid-template-columns:minmax(0,1fr) 192px;gap:32px;align-items:center}
.shema-poteri-chart{display:grid;grid-template-columns:repeat(var(--poteri-count),minmax(0,1fr));gap:8px 0}
.shema-poteri-stage{display:grid;grid-row:1/5;grid-template-rows:subgrid;position:relative}
.shema-poteri-label{font:14px/20px var(--sans);padding-right:12px;grid-row:1}
.shema-poteri-value{font:600 40px/1.1 var(--serif);color:var(--green);grid-row:2}
.shema-poteri-plot{height:260px;position:relative;grid-row:3}
.shema-poteri-plot>svg{display:block;width:100%;height:100%;fill:color-mix(in srgb,var(--green) var(--poteri-shade),var(--paper))}
.shema-poteri-stage+.shema-poteri-stage .shema-poteri-plot{border-left:2px solid var(--paper)}
.shema-poteri-bar{display:none}
.shema-poteri-loss{position:relative;grid-row:4;padding:24px 12px 0 0;color:var(--bronze);font:14px/20px var(--sans)}
.shema-poteri-loss>strong{display:block;font:600 28px/1.1 var(--serif);margin-bottom:8px}
.shema-poteri-main{color:var(--green)}
.shema-poteri-arrow{display:block;position:absolute;left:0;right:12px;top:8px;height:1px;background:currentColor}
.shema-poteri-arrow:after{content:'';position:absolute;right:0;top:-3px;border-left:6px solid currentColor;border-top:3px solid transparent;border-bottom:3px solid transparent}
.shema-poteri-result{border-left:1px solid var(--bronze);padding-left:24px}
.shema-poteri-result>strong{display:block;font:600 56px/1.05 var(--serif);color:var(--green);margin-bottom:8px;letter-spacing:-.035em}
.shema-poteri-result>span{font:17px/27px var(--sans)}

.shema-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.shema-panel-tile{display:flex;flex-direction:column;background:var(--tone);padding:32px;gap:8px}
.shema-panel-heading{font:17px/27px var(--sans)}
.shema-panel-value{display:block;font:600 clamp(44px,5cqi,56px)/1.1 var(--serif);letter-spacing:-.04em;color:var(--green)}
.shema-panel-change{font:400 28px/1.2 var(--serif);color:var(--muted)}
.shema-panel-good{color:var(--green)}
.shema-panel-bad{color:var(--tone-bronze)}
.shema-panel-line{width:100%;height:80px;display:block;margin-top:auto;padding-top:16px;color:color-mix(in srgb,var(--green) 65%,var(--tone))}
.shema-panel-line.shema-panel-bad{color:var(--tone-bronze)}
.shema-panel-line polyline{stroke:currentColor;fill:none;stroke-width:1.5;vector-effect:non-scaling-stroke}
.shema-panel-line circle{fill:currentColor}
.shema-panel-caption{margin-top:16px;font:14px/20px var(--sans);color:var(--muted)}

@container(max-width:820px){
 .shema-stek-columns{gap:32px}
 .shema-stek-total{font-size:36px}
 .shema-panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .shema-panel-tile{padding:24px}
}
@container(max-width:700px){
 .shema-stolbcy-heading{flex-direction:column-reverse;align-items:start;gap:24px;margin-bottom:24px}
 .shema-stolbcy-result{text-align:left}
 .shema-stolbcy-result strong{font-size:40px}
 .shema-stolbcy-result>span{font-size:16px;line-height:25px}
 .shema-stolbcy-chart{gap:8px}
 .shema-stolbcy-bars{padding:0 2px;gap:4px}
 .shema-stolbcy-group{grid-template-rows:200px auto}
 .shema-stolbcy-value{font-size:20px}
 .shema-stolbcy-labels{columns:1}
 .shema-stolbcy-mobile-rows .shema-stolbcy-chart{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;padding:0;border:0}
 .shema-stolbcy-mobile-rows .shema-stolbcy-group{display:flex;flex-direction:column;gap:8px}
 .shema-stolbcy-mobile-rows .shema-stolbcy-label{display:block;order:-1;text-align:left;padding:0;font-size:16px;line-height:25px}
 .shema-stolbcy-mobile-rows .shema-stolbcy-index,.shema-stolbcy-mobile-rows .shema-stolbcy-labels{display:none}
 .shema-stolbcy-mobile-rows .shema-stolbcy-bars{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:0;border:0}
 .shema-stolbcy-mobile-rows .shema-stolbcy-part{height:auto;display:block;padding-top:28px}
 .shema-stolbcy-mobile-rows .shema-stolbcy-fill{width:var(--stolbcy-size);height:20px;position:static}
 .shema-stolbcy-mobile-rows .shema-stolbcy-value{bottom:auto;top:0;left:0;transform:none}
 .shema-stek-columns{display:flex;flex-direction:column;gap:32px}
 .shema-stek-column{display:flex;flex-direction:column;align-items:stretch}
 .shema-stek-total,.shema-stek-ready .shema-stek-total{position:static;font-size:36px;padding-bottom:16px}
 .shema-stek-plot,.shema-stek-ours .shema-stek-plot{height:auto;display:grid;grid-template-rows:none;gap:12px;border:0;padding-top:48px}
 .shema-stek-part,.shema-stek-single .shema-stek-part{display:block;grid-row:auto;padding:0}
 .shema-stek-segment,.shema-stek-single .shema-stek-segment{top:0;left:calc(var(--stek-offset) * var(--stek-ratio));height:32px;width:calc(var(--stek-share) * var(--stek-ratio));border:0;border-right:1px solid var(--paper)}
 .shema-stek-ours .shema-stek-segment{border:0}
 .shema-stek-label,.shema-stek-ours .shema-stek-label{display:flex;gap:4px 16px;flex-wrap:wrap;align-items:baseline;justify-content:space-between;height:auto;padding:0;text-align:left;color:var(--ink);font:16px/25px var(--sans)}
 .shema-stek-label>strong,.shema-stek-ours .shema-stek-label>strong{color:var(--green);margin:0;font:600 24px/1.2 var(--serif)}
 .shema-stek-leader{display:none}
 .shema-stek-name{align-self:auto;font-size:16px;line-height:25px;padding-top:16px}
 .shema-stek-difference,.shema-stek-ready .shema-stek-difference{position:static;width:auto;height:auto;max-width:none;padding:0;margin-bottom:24px;font-size:28px}
 .shema-stek-bracket,.shema-stek-ready .shema-stek-bracket{position:static;height:64px;width:20px}
 .shema-matritsa-map{aspect-ratio:1}
 .shema-matritsa-quadrant>span{padding:12px;font-size:20px}
 .shema-matritsa-y{gap:16px}
 .shema-matritsa-y>span:first-child{font-size:20px}
 .shema-matritsa-x{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 16px}
 .shema-matritsa-x>strong{grid-column:1/-1;grid-row:2;font-size:24px}
 .shema-matritsa-list{columns:1}
 .shema-matritsa-labelled .shema-matritsa-label,.shema-matritsa-labelled .shema-matritsa-leader{display:none}
 .shema-matritsa-labelled .shema-matritsa-dot>span,.shema-matritsa-labelled .shema-matritsa-list{display:block}
 .shema-vodopad-chart{display:flex;flex-direction:column;gap:24px}
 .shema-vodopad-step{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;grid-template-rows:auto 24px auto}
 .shema-vodopad-label{grid-column:1;grid-row:1;font-size:16px;line-height:25px}
 .shema-vodopad-value{grid-column:2;grid-row:1;font-size:24px;text-align:right}
 .shema-vodopad-plot{grid-column:1/-1;grid-row:2;height:24px}
 .shema-vodopad-bar{top:0;bottom:0;right:auto;left:var(--vodopad-left);width:var(--vodopad-size);height:100%}
 .shema-vodopad-plot:before{display:none}
 .shema-vodopad-step:not(:last-child) .shema-vodopad-plot:after{top:100%;left:var(--vodopad-next);right:auto;height:16px;width:1px;border:0;background:var(--bronze)}
 .shema-vodopad-note,.shema-vodopad-ready .shema-vodopad-note{position:static;grid-column:1/-1;grid-row:3;padding:8px 0 0;width:auto}
 .shema-vodopad-note>span{display:none}
 .shema-poteri-chart{display:flex;flex-direction:column;gap:16px}
 .shema-poteri-stage{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;grid-template-rows:auto 32px auto}
 .shema-poteri-label{grid-column:1;grid-row:1;padding:0;font-size:16px;line-height:25px}
 .shema-poteri-value{grid-column:2;grid-row:1;font-size:36px}
 .shema-poteri-plot,.shema-poteri-stage+.shema-poteri-stage .shema-poteri-plot{grid-column:1/-1;grid-row:2;height:32px;border:0}
 .shema-poteri-plot>svg{display:none}
 .shema-poteri-bar{display:block;width:var(--poteri-size);height:100%;background:color-mix(in srgb,var(--green) var(--poteri-shade),var(--paper))}
 .shema-poteri-loss{grid-column:1/-1;grid-row:3;display:flex;align-items:baseline;gap:8px 16px;flex-wrap:wrap;padding:12px 0 16px 24px}
 .shema-poteri-loss>strong{font-size:24px;margin:0}
 .shema-poteri-arrow{left:0;top:8px;bottom:8px;right:auto;width:1px;height:auto}
 .shema-poteri-arrow:after{top:auto;bottom:0;right:-3px;border:0;border-top:6px solid currentColor;border-left:3px solid transparent;border-right:3px solid transparent}
 .shema-panel-grid{grid-template-columns:minmax(0,1fr)}
 .shema-panel-heading{font-size:16px;line-height:25px}
 .shema-panel-value{font-size:40px}
}
@container(max-width:500px){
 .shema-chek-paper{padding:24px}
 .usluga .shema-chek-title{font-size:36px;margin-bottom:24px}
 .shema-chek-row{grid-template-columns:minmax(0,1fr);gap:8px}
 .shema-chek-row>dt{font-size:16px;line-height:25px}
 .shema-chek-row>dd{font-size:32px}
 .shema-chek-total{font-size:36px}
}
/* Корень не может запросить собственную ширину через @container. */
@media(max-width:1000px){.shema-poteri-root{grid-template-columns:minmax(0,1fr)}.shema-poteri-result{max-width:480px}}
/* Длинное неразрывное слово получает строку целиком, а не обрезку или мелкий кегль. */
.shema-panel-wide .shema-panel-grid{grid-template-columns:minmax(0,1fr)}
.shema-vodopad-rows .shema-vodopad-chart{display:flex;flex-direction:column;gap:24px}
.shema-vodopad-rows .shema-vodopad-step{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;grid-template-rows:auto 24px auto}
.shema-vodopad-rows .shema-vodopad-label{grid-column:1;grid-row:1;font-size:16px;line-height:25px}
.shema-vodopad-rows .shema-vodopad-value{grid-column:2;grid-row:1;font-size:24px;text-align:right}
.shema-vodopad-rows .shema-vodopad-plot{grid-column:1/-1;grid-row:2;height:24px}
.shema-vodopad-rows .shema-vodopad-bar{top:0;bottom:0;right:auto;left:var(--vodopad-left);width:var(--vodopad-size);height:100%}
.shema-vodopad-rows .shema-vodopad-plot:before{display:none}
.shema-vodopad-rows .shema-vodopad-step:not(:last-child) .shema-vodopad-plot:after{top:100%;left:var(--vodopad-next);right:auto;height:16px;width:1px;border:0;background:var(--bronze)}
.shema-vodopad-rows .shema-vodopad-note{position:static;grid-column:1/-1;grid-row:3;padding:8px 0 0;width:auto}
.shema-vodopad-rows .shema-vodopad-note>span{display:none}
.shema-poteri-root.shema-poteri-rows{display:block}
.shema-poteri-rows .shema-poteri-chart{display:flex;flex-direction:column;gap:16px}
.shema-poteri-rows .shema-poteri-stage{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;grid-template-rows:auto 32px auto}
.shema-poteri-rows .shema-poteri-label{grid-column:1;grid-row:1;padding:0;font-size:16px;line-height:25px}
.shema-poteri-rows .shema-poteri-value{grid-column:2;grid-row:1;font-size:36px}
.shema-poteri-rows .shema-poteri-plot,.shema-poteri-rows .shema-poteri-stage+.shema-poteri-stage .shema-poteri-plot{grid-column:1/-1;grid-row:2;height:32px;border:0}
.shema-poteri-rows .shema-poteri-plot>svg{display:none}
.shema-poteri-rows .shema-poteri-bar{display:block;width:var(--poteri-size);height:100%;background:color-mix(in srgb,var(--green) var(--poteri-shade),var(--paper))}
.shema-poteri-rows .shema-poteri-loss{grid-column:1/-1;grid-row:3;display:flex;align-items:baseline;gap:8px 16px;flex-wrap:wrap;padding:12px 0 16px 24px}
.shema-poteri-rows .shema-poteri-loss>strong{font-size:24px;margin:0}
.shema-poteri-rows .shema-poteri-arrow{left:0;top:8px;bottom:8px;right:auto;width:1px;height:auto}
.shema-poteri-rows .shema-poteri-arrow:after{top:auto;bottom:0;right:-3px;border:0;border-top:6px solid currentColor;border-left:3px solid transparent;border-right:3px solid transparent}
.shema-poteri-rows .shema-poteri-result{margin-top:24px;border-left:0;border-top:1px solid var(--bronze);padding:24px 0 0}
@media(max-width:700px){
 :is(.shema-stolbcy-root,.shema-stek-root,.shema-matritsa-root,.shema-chek-root,.shema-vodopad-root,.shema-poteri-root,.shema-panel-root){margin:24px 0;font-size:16px;line-height:25px}
 .shema-poteri-root{display:block}
 .shema-poteri-result{margin-top:24px;border-left:0;border-top:1px solid var(--bronze);padding:24px 0 0}
 .shema-poteri-result>strong{font-size:40px}
 .shema-chek-root{padding:16px}
}
@media(prefers-reduced-motion:reduce){
 :is(.shema-stolbcy-root,.shema-stek-root,.shema-matritsa-root,.shema-chek-root,.shema-vodopad-root,.shema-poteri-root,.shema-panel-root) [data-shema-part]{transition:none}
}
/* Выноска каскада: с привязкой к четвёртой строке сетки абсолютная подпись отсчитывалась от неё и уезжала под схему */
.usluga .shema-vodopad-ready .shema-vodopad-note{grid-row:auto;grid-column:auto}
/* Стопка «наша» из нескольких частей: без оттенков и разделителей части сливались в один столбец */
.usluga .shema-stek-ours.shema-stek-outside .shema-stek-segment{background:color-mix(in srgb,var(--green) calc(var(--stek-shade) + 28%),var(--paper));border-bottom:1px solid var(--paper)}
/* Шкала на 4–5 этапов: в колонке около 190 px крупная подпись времени и длинные слова рвались по буквам */
.usluga .shema-taim-when,.usluga .shema-taim-title,.usluga .shema-taim-items{overflow-wrap:normal;word-break:normal;hyphens:none}
.usluga .shema-taim-list:has(>li:nth-child(4)){--taim-columns:repeat(4,minmax(0,1fr)) !important}
.usluga .shema-taim-list:has(>li:nth-child(5)){--taim-columns:repeat(5,minmax(0,1fr)) !important}
@container(min-width:760px){
 .usluga .shema-taim-list:has(>li:nth-child(4)) .shema-taim-when{font-size:clamp(26px,3.2cqi,32px);padding:0 4px}
 .usluga .shema-taim-list:has(>li:nth-child(4)) .shema-taim-body{padding:8px 8px 0}
 .usluga .shema-taim-list:has(>li:nth-child(4)) .shema-taim-items{font-size:16px;line-height:24px}
}
/* Узкая «наша» стопка из нескольких частей: ширина 100% от правила компьютера перебивала долю, и полоса уезжала вбок на 280 px */
@container(max-width:700px){
 .usluga .shema-stek-ours .shema-stek-segment{width:calc(var(--stek-share) * var(--stek-ratio));border:0;border-right:1px solid var(--paper);background:color-mix(in srgb,var(--green) calc(var(--stek-shade) + 28%),var(--paper))}
 .usluga .shema-stek-single .shema-stek-segment{background:var(--green)}
}
/* Каталог направления: строк цен больше двух, тёмная черта — под последней, а не под второй */
.usluga .u-ceny .u-cena:nth-child(2):not(:last-child){border-bottom-color:var(--line)}
.usluga .u-ceny .u-cena:last-child{border-bottom-color:var(--ink)}
/* Общая страница услуг: первый экран без фото, заголовки направлений — ссылки на их страницы */
.usluga-katalog .u-hero{display:block}
.usluga-katalog .u-hero h1{max-width:1040px}
.usluga-katalog .u-hero-lead{margin-top:24px}
.usluga-katalog .u-price-heading h2 a:hover{color:var(--bronze)}
