/* Новые SEO-блоки в теле страниц (партия SEO-текстов 2026-10, docs/seo-texts-2026-10). Стили из ТЗ + дополнения в конце файла. */
.bd-body p{margin:0 0 15px}.bd-body>:last-child{margin-bottom:0}
html .def-title.bd-t-l{font-size:clamp(28px,3vw,44px)!important;line-height:1.12!important}
html .def-title.bd-t-xl{font-size:clamp(24px,2.4vw,36px)!important;line-height:1.15!important}
.bd-title{margin-bottom:32px}.bd-sticky{position:sticky;top:110px}
.bd-h3{font-family:Cormorant,serif;font-weight:500;font-size:26px;line-height:1.15;text-transform:uppercase;margin:28px 0 14px}
.bd-list{list-style:none!important;padding:0!important;margin:0 0 18px}.bd-list>li{position:relative;padding-left:26px;margin:0 0 9px}
.bd-list>li::before{content:"";position:absolute;left:0;top:10px;width:14px;height:1px;background:currentColor}
.bd-list--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 32px;counter-reset:bd;margin:8px 0 22px}
.bd-list--grid>li{counter-increment:bd;padding:16px 0 18px;margin:0;border-top:1px solid rgba(0,0,0,.18)}
.bd-list--grid>li::before{content:counter(bd,decimal-leading-zero);position:static;display:block;width:auto;height:auto;background:none;font-family:Cormorant,serif;font-size:28px;line-height:1;margin:0 0 10px}
.bd-li{display:block}.bd-li::first-letter{text-transform:uppercase}
.bd-multicol{column-count:2;column-gap:40px}.bd-multicol>*{break-inside:avoid}
@media(max-width:1199px){.bd-multicol{column-count:1}.bd-sticky{position:static}}
.bd-duo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.bd-sec+.bd-sec,.bd-deco+.bd-sec,.bd-sec+.bd-deco{padding-top:0}
.bd-gal-text{padding:80px 0 70px}.bd-desc{margin-bottom:24px}.bd-list-lead{margin:0 0 56px}
.bd-lead-title{font-family:Cormorant,serif;font-weight:500;font-size:30px;line-height:1.1;text-transform:uppercase;margin:0 0 20px}
.bd-h1-pre{font-family:Golos,sans-serif!important;font-size:clamp(13px,1.2vw,18px)!important;line-height:1.35!important;letter-spacing:.12em!important;font-weight:400!important;margin:0 0 .9em}
.bd-table{width:100%;border-collapse:collapse;margin:0 0 18px}.bd-table td{border-top:1px solid rgba(0,0,0,.15);padding:10px 12px 10px 0;vertical-align:top}
.bd-list>li{list-style:none!important}.bd-list>li::marker{content:none}
.bd-h1-home .bd-h1-line{white-space:nowrap;font-size:.86em}

/* Дополнения к стилям ТЗ. У последнего абзаца .bd-body нижний отступ обнулён — внутри новых
   секций это верно, но в старых блоках новый текст встал вместо абзаца с mb-40, и следующий
   элемент блока (сетка ссылок, фото) оказывался вплотную к тексту. */
:is(.row,[class*="col-"]):has(> [class*="col-"] > .bd-body) + :is(.row,[class*="col-"]){margin-top:40px}
/* Колонки текста, вставшие друг под друга на узком экране: отступ как между абзацами. */
@media(max-width:1199.98px){.row>.col-xl-6:has(> .bd-body)+.col-xl-6:has(> .bd-body){margin-top:15px}}
@media(max-width:991.98px){.row>.col-lg-6:has(> .bd-body)+.col-lg-6:has(> .bd-body){margin-top:15px}}
/* Вступление портфолио под крупным H1. */
.portfolio-list-page__title+.bd-list-lead{margin-top:32px}
@media(max-width:1199.98px){.portfolio-list-page__title+.bd-list-lead{margin-top:20px}}
/* Старые блоки услуг вкладывают колонку в колонку или контейнер в контейнер — отступы
   складывались, и новый текст стоял правее своего заголовка на 12–20px. */
.container .container:has(.bd-body){padding-left:0;padding-right:0}
.container>[class*="col-"]:has(.bd-body),[class*="col-"]>[class*="col-"]:has(>.bd-body){padding-left:0;padding-right:0}
/* Строка старого блока сразу под новым текстом в той же сетке («Причины работать с нами»)
   раньше отделялась отступом старого абзаца — без него читалась как продолжение текста. */
.row>[class*="col-"]:has(>.bd-body)~.row{margin-top:80px}
@media(max-width:1199.98px){.row>[class*="col-"]:has(>.bd-body)~.row{margin-top:48px}}
/* Вступление портфолио: шаблон списка обнуляет поля .row — выравниваем колонки по H1. */
.portfolio-list-page .bd-list-lead{margin-left:-12px;margin-right:-12px}
/* Блок текста в галерее проекта: padding из ТЗ обнулял боковой отступ колонки — текст стоял
   на 6px левее фото (на 375 — в 4px от края экрана). */
.bd-gal-text{padding-left:calc(var(--bs-gutter-x)*.5);padding-right:calc(var(--bs-gutter-x)*.5)}

/* Длинные слова старых заголовков не должны обрезаться узким экраном. */
@media(max-width:767.98px){.detail-page-wrap .acc-section__title{font-size:clamp(32px,8vw,52px)}}
@media(max-width:575.98px){.main-banner__text--word-long .main-banner__title{font-size:clamp(26px,8.5vw,40px)}}
@media(min-width:576px) and (max-width:1199.98px){.main-banner__text--word-long .main-banner__title{font-size:clamp(40px,8.5vw,72px)}}
@media(min-width:1200px){.main-banner__text--word-long .main-banner__title{font-size:clamp(56px,5vw,72px)}}
