
/* ---- css/css-bundle-v4035-786ca99f.css ---- */
/* ===== css/water-background-headings-red-v1243.css?v=1245 ===== */
/* v.1245 — единый фирменный красный для секционных заголовков сайта. */
:root{--grafo-heading-red:#34465a;}

/* Пара заголовок + подзаголовок, как «Почерк в графологии» /
   «Сколько людей, столько и почерков...». */
html[data-site-river-background] body .practice__header.header-block > .header-block__title,
html[data-site-river-background] body .practice__header.header-block > .header-block__sub-title,
html[data-site-river-background] body .categories__header.header-block > .header-block__title,
html[data-site-river-background] body .categories__header.header-block > .header-block__sub-title,
html[data-site-river-background] body .header-block > .header-block__title,
html[data-site-river-background] body .header-block > .header-block__sub-title,

/* Заголовки секций, которые используют старый класс categories__title. */
html[data-site-river-background] body .practice__header > .categories__title,
html[data-site-river-background] body .categories__header > .categories__title,

/* Явные зоны воды/камней. */
.bgimg-1 h1,.bgimg-1 h2,.bgimg-1 h3,.bgimg-1 h4,
.bgimg-2 h1,.bgimg-2 h2,.bgimg-2 h3,.bgimg-2 h4,
.bgimg-3 h1,.bgimg-3 h2,.bgimg-3 h3,.bgimg-3 h4,
.graphology-river-strip h1,.graphology-river-strip h2,.graphology-river-strip h3,.graphology-river-strip h4,
.river-strip h1,.river-strip h2,.river-strip h3,.river-strip h4,
[data-site-river-background] .river-title,
[data-site-river-background] .water-title{
  color:var(--grafo-heading-red)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.46),0 2px 5px rgba(0,0,0,.17)!important;
}

/* Документы — принудительно тем же красным. */
html body #documents2026 .documents-main-heading,
html body #documents2026 .header-block__sub-title{
  color:var(--grafo-heading-red)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.46),0 2px 5px rgba(0,0,0,.17)!important;
}

/* Содержимое белых листов и карточек не наследует этот декоративный цвет. */
html[data-site-river-background] body .documentation-info-paper .header-block__title,
html[data-site-river-background] body .documentation-info-paper .header-block__sub-title,
html[data-site-river-background] body .item-service .header-block__title,
html[data-site-river-background] body .item-service .header-block__sub-title,
html[data-site-river-background] body .item-practice .header-block__title,
html[data-site-river-background] body .item-practice .header-block__sub-title{
  text-shadow:none!important;
}


/* ===== css/site-unified-column-river-gap-v4006.css?v=4006 ===== */
/* v.4006 — единый механизм 24px перед первыми колонками.
   Эталон: graphology.html — отступ задаёт сама секция колонок,
   а в промежутке виден общий фон сайта «камешки и вода».
   JS не используется. */

/* Страницы, где перед первым рядом колонок уже есть отдельная river-strip:
   полоса не участвует в геометрии; 24px создаёт margin самой секции. */
html body.page-index .home-river-strip-1,
html body.page-graphology .graphology-river-strip-1,
html body.page-handwriting .handwriting-river-strip-1{
  display:none!important;
  min-height:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
}

html body.page-index .home-river-strip-1 + .page__services,
html body.page-graphology .graphology-river-strip-1 + .page__services,
html body.page-handwriting .handwriting-river-strip-1 + .page__services,
html body.page-services .services-main-v1267,
html body.page-news-archive .news0-first-columns-v1283,
html body.page-news .page__main-block + .page__services,
html body.article-index-page .news-lawyer-first-columns-v1284,
html body.article-detail-page .news-lawyer-first-columns-v1284{
  margin-top:24px!important;
  margin-right:0!important;
  margin-left:0!important;
  padding-top:0!important;
}

/* Фирменный красный для заголовков и текста, расположенных непосредственно
   на общем водно-каменном фоне. Содержимое белых карточек/листов не меняется. */
html[data-site-river-background] body .bgimg-1 h1,
html[data-site-river-background] body .bgimg-1 h2,
html[data-site-river-background] body .bgimg-1 h3,
html[data-site-river-background] body .bgimg-1 h4,
html[data-site-river-background] body .bgimg-1 h5,
html[data-site-river-background] body .bgimg-1 h6,
html[data-site-river-background] body .bgimg-1 p,
html[data-site-river-background] body .bgimg-1 .header-block__text,
html[data-site-river-background] body .bgimg-2 h1,
html[data-site-river-background] body .bgimg-2 h2,
html[data-site-river-background] body .bgimg-2 h3,
html[data-site-river-background] body .bgimg-2 h4,
html[data-site-river-background] body .bgimg-2 h5,
html[data-site-river-background] body .bgimg-2 h6,
html[data-site-river-background] body .bgimg-2 p,
html[data-site-river-background] body .bgimg-2 .header-block__text,
html[data-site-river-background] body .bgimg-3 h1,
html[data-site-river-background] body .bgimg-3 h2,
html[data-site-river-background] body .bgimg-3 h3,
html[data-site-river-background] body .bgimg-3 h4,
html[data-site-river-background] body .bgimg-3 h5,
html[data-site-river-background] body .bgimg-3 h6,
html[data-site-river-background] body .bgimg-3 p,
html[data-site-river-background] body .bgimg-3 .header-block__text,
html[data-site-river-background] body .river-strip h1,
html[data-site-river-background] body .river-strip h2,
html[data-site-river-background] body .river-strip h3,
html[data-site-river-background] body .river-strip h4,
html[data-site-river-background] body .river-strip p,
html[data-site-river-background] body .graphology-river-strip h1,
html[data-site-river-background] body .graphology-river-strip h2,
html[data-site-river-background] body .graphology-river-strip h3,
html[data-site-river-background] body .graphology-river-strip h4,
html[data-site-river-background] body .graphology-river-strip p,
html[data-site-river-background] body .handwriting-river-strip h1,
html[data-site-river-background] body .handwriting-river-strip h2,
html[data-site-river-background] body .handwriting-river-strip h3,
html[data-site-river-background] body .handwriting-river-strip h4,
html[data-site-river-background] body .handwriting-river-strip p,
html[data-site-river-background] body .home-river-strip h1,
html[data-site-river-background] body .home-river-strip h2,
html[data-site-river-background] body .home-river-strip h3,
html[data-site-river-background] body .home-river-strip h4,
html[data-site-river-background] body .home-river-strip p,
html[data-site-river-background] body .services-river-strip h1,
html[data-site-river-background] body .services-river-strip h2,
html[data-site-river-background] body .services-river-strip h3,
html[data-site-river-background] body .services-river-strip h4,
html[data-site-river-background] body .services-river-strip p,
html[data-site-river-background] body .rules-river-strip h1,
html[data-site-river-background] body .rules-river-strip h2,
html[data-site-river-background] body .rules-river-strip h3,
html[data-site-river-background] body .rules-river-strip h4,
html[data-site-river-background] body .rules-river-strip p,
html[data-site-river-background] body .river-title,
html[data-site-river-background] body .water-title,
html[data-site-river-background] body .rules-river-heading{
  color:var(--grafo-heading-red,#34465a)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.46),0 2px 5px rgba(0,0,0,.17)!important;
}


/* ===== css/handwriting-exact-gaps-v1263.css?v=4013 ===== */
/* v.1263 — только handwriting.html.
   Пять фактических вертикальных промежутков ровно по 24px.
   Учтены 400px river strips, -111px services margin, 125/80px practice padding,
   два <br>, margin 24px у бумажных страниц и -30px practice__body. */

/* v.1363 — Низ cover -> первые колонки: ТОЧНО тот же механизм, что services.html.
   Первая локальная river-strip исключена из геометрии, а секция колонок получает 24px margin-top. */
html body.page-handwriting .handwriting-river-strip-1{
  display:none!important;
  min-height:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
}
html body.page-handwriting .handwriting-river-strip-1 + .page__services{
  margin-top:24px!important; /* как .services-main-v1267 на services.html */
  margin-right:0!important;
  margin-bottom:0!important;
  margin-left:0!important;
  padding-top:0!important;
}

/* Два старых <br> после services не должны увеличивать второй зазор. */
html body.page-handwriting .page__services + br,
html body.page-handwriting .page__services + br + br{
  display:none!important;
}

/* 2) Низ колонок -> верх бумажной страницы «Почерк в почерковедении».
   Декоративная полоса сама равна 24px. У бумаги убираем собственный top margin,
   а у practice — штатный padding-top 125px. */
html body.page-handwriting .handwriting-river-strip-2{
  min-height:24px!important;
  height:24px!important;
  margin:0!important;
  padding:0!important;
}
html body.page-handwriting .handwriting-comparison-section{
  margin:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
}
html body.page-handwriting .handwriting-comparison-section
  .handwriting-paper.documentation-info-paper{
  margin-top:0!important;
}

/* 3) Низ страницы «Почерк…» -> верх колонок «А.… / Б.» = 24px.
   Нижний margin бумаги становится самим зазором. */
html body.page-handwriting .handwriting-comparison-section
  .handwriting-paper.documentation-info-paper{
  margin-bottom:24px!important;
}
html body.page-handwriting .handwriting-comparison-section
  .handwriting-comparison-cards{
  margin-top:0!important;
}

/* v.4014: убираем штатный нижний padding .practice только у секции
   «Почерк… + А./Б.», который увеличивал промежуток после колонок. */
html body.page-handwriting .handwriting-river-strip-2 + .page__practice.practice{
  padding-bottom:0!important;
}

/* 4) Низ колонок «А./Б.» -> верх страницы «Письмо» = 24px.
   Используется тот же фактический механизм, что перед страницей
   «Почерк в почерковедении»: отдельная bgimg-2 river-strip высотой 24px. */
html body.page-handwriting .handwriting-river-strip-3{
  min-height:24px!important;
  height:24px!important;
  margin:0!important;
  padding:0!important;
}
html body.page-handwriting .handwriting-paper-section{
  margin-top:0!important;
  /* v.4013: тот же фактический верхний зазор, что у секции перед «Почерк…».
     В React-разметке верхняя секция получает штатный .practice padding-top;
     нижняя секция теперь повторяет те же значения на тех же брейкпоинтах. */
  padding-top:125px!important;
  padding-bottom:0!important;
}
html body.page-handwriting .handwriting-paper-section
  .handwriting-paper.documentation-info-paper{
  /* v.4015: нижний визуальный зазор был немного больше верхнего.
     Уменьшаем только верхний margin страницы «Письмо» на 4px. */
  margin-top:20px!important;
}
@media (max-width:990px){
  html body.page-handwriting .handwriting-paper-section{
    padding-top:40px!important;
  }
}
@media (max-width:770px){
  html body.page-handwriting .handwriting-paper-section{
    padding-top:0!important;
  }
}
@media (max-width:700px){
  html body.page-handwriting .handwriting-paper-section
    .handwriting-paper.documentation-info-paper{
    margin-top:14px!important;
  }
}

/* 5) Низ страницы «Письмо» -> футер = 24px.
   Убираем штатные 28/80px секции; нижний margin бумаги задаёт ровно 24px. */
html body.page-handwriting .handwriting-paper-section
  .handwriting-paper.documentation-info-paper{
  margin-bottom:24px!important;
}
html body.page-handwriting .handwriting-paper-section + .footer{
  margin-top:0!important;
}


/* ===== css/site-selected-subtitles-h2-v1273.css?v=1273 ===== */
/* v.1273 — исправление отсутствующего результата v.1271/v.1272.
   Причина: cover-layout-var84.css имел более специфичный !important-селектор.
   Здесь применяется более специфичный селектор и точная типографика services.html.
   Цвет НЕ задаётся и остаётся прежним для каждой страницы. */

html body .page__main-block .main-block__subtitle.g74-h2-like-services{
  font-family:inherit!important;
  font-size:clamp(18px,2.15vw,30px)!important;
  font-weight:700!important;
  line-height:1.22!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  font-style:normal!important;
  display:block!important;
  margin:0 0 30px 0!important;
  padding:0!important;
}

@media(max-width:700px){
  html body .page__main-block .main-block__subtitle.g74-h2-like-services{
    font-size:20px!important;
  }
}



/* ---- css/cover-fixed-geometry-v4309.css ---- */
/* v.4309 — stable first-screen cover geometry, loaded LAST on cover pages.
   Goal: cover X/Y/size must not depend on text height or page-specific align-self rules. */
@media (min-width: 801px) {
  .page__main-block .main-block__container {
    width: min(calc(100% - 48px), 1360px) !important;
    max-width: 1360px !important;
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: minmax(360px, 0.78fr) minmax(560px, 1.22fr) !important;
    grid-template-areas: "heading image" "body image" !important;
    column-gap: clamp(54px, 5vw, 86px) !important;
    row-gap: 28px !important;
    align-items: start !important;
    padding: clamp(82px, 7vw, 106px) 0 clamp(54px, 6vw, 88px) !important;
    margin: 0 auto !important;
  }

  .page__main-block .main-block__heading { grid-area: heading !important; }
  .page__main-block .main-block__body { grid-area: body !important; }

  .page__main-block .main-block__image._ibg {
    grid-area: image !important;
    position: relative !important;
    inset: auto !important;
    align-self: start !important;
    justify-self: stretch !important;
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    margin: 96px 0 0 0 !important;
    transform: none !important;
    overflow: hidden !important;
  }

  .page__main-block .main-block__image._ibg > img[src*="cover_"] {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 16 / 10 !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
    transform: none !important;
  }
}

/* v.4311 — unified hero heading position.
   graphology.html is the approved visual reference. The heading block is
   pinned to one top-left point of the shared desktop hero grid so X/Y does
   not vary with page-specific rules or the height of the body content. */
@media (min-width: 801px) {
  .page__main-block .main-block__heading {
    grid-area: heading !important;
    position: relative !important;
    inset: auto !important;
    align-self: start !important;
    justify-self: start !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 2 !important;
  }
  .page__main-block .main-block__title,
  .page__main-block .main-block__subtitle {
    position: static !important;
    inset: auto !important;
    transform: none !important;
  }
  .page__main-block .main-block__title {
    margin-top: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .page__main-block .main-block__subtitle {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}


/* v.4312 — unify the vertical position of the author block with graphology.html.
   The left heading and body share one grid row. The body receives a fixed
   reference offset equal to graphology.html: one title line + 8px gap +
   one subtitle line + the approved 28px heading/body gap. This makes the
   avatar + “Исакова Лариса” start at the same Y on every cover page,
   regardless of the page-specific heading height. */
@media (min-width: 801px) {
  .page__main-block .main-block__container {
    grid-template-areas: "heading image" !important;
    grid-template-rows: auto !important;
  }

  .page__main-block .main-block__heading {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: start !important;
  }

  .page__main-block .main-block__body {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: start !important;
    padding-top: calc(
      clamp(38.08px, 3.36vw, 53.76px) +
      8px +
      clamp(33.04px, 2.773vw, 47.2px) +
      28px
    ) !important;
  }

  .page__main-block .main-block__image._ibg {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
}

/* v.4314 — lock the “Исакова Лариса” author block to the services.html
   desktop reference position on every analogous cover page.
   The author is taken out of normal flow and pinned to one Y coordinate;
   equivalent flow space is reserved so following page-specific content cannot
   pull the author up/down. services.html therefore remains the visual reference. */
@media (min-width: 801px) {
  .page__main-block .main-block__body {
    --g74-author-top-services: calc(
      clamp(38.08px, 3.36vw, 53.76px) +
      8px +
      clamp(33.04px, 2.773vw, 47.2px) +
      28px
    );
    position: relative !important;
    inset: auto !important;
    margin: 0 !important;
    transform: none !important;
    padding-top: calc(var(--g74-author-top-services) + 90px) !important;
  }

  .page__main-block .main-block__body > .main-block__text:first-child {
    position: absolute !important;
    top: var(--g74-author-top-services) !important;
    left: 0 !important;
    right: auto !important;
    bottom: auto !important;
    width: 100% !important;
    max-width: 500px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 3 !important;
  }
}

/* v.4316 — index.html: make “Юридические услуги” typographically identical
   to the main title on graphology.html. Kept as a div to avoid adding a second H1
   on index.html; only visual typography is synchronized. */
body.page-index .page__main-block .g74-title-like-graphology {
  font-family: Montserrat, sans-serif !important;
  font-size: 40px !important;
  line-height: 137% !important;
  letter-spacing: 0.2px !important;
  font-weight: 800 !important;
}
@media (max-width: 480px) {
  body.page-index .page__main-block .g74-title-like-graphology {
    font-size: 30px !important;
  }
}


/* ---- css/heading-unified-v4317.css ---- */
/* v.4317 — unified visible page heading typography.
   Reference: index.html visible "Юридические услуги" title from approved v.4316.
   Important: index.html uses .main-block__title on a div, not the SEO-hidden H1.
   Therefore both visible .main-block__title and visible semantic H1 are normalized. */

.page__main-block .main-block__title,
h1:not(.seo-visually-hidden) {
  font-family: Montserrat, sans-serif !important;
  font-size: 40px !important;
  line-height: 137% !important;
  letter-spacing: 0.2px !important;
  font-weight: 800 !important;
}

@media (max-width: 480px) {
  .page__main-block .main-block__title,
  h1:not(.seo-visually-hidden) {
    font-size: 30px !important;
  }
}

/* v.4319 — keep the visible first-screen page title on one line on desktop.
   The title may use the free horizontal space above the cover image instead of
   wrapping inside the left 520px text column and colliding with the fixed author block. */
@media (min-width: 801px) {
  .page__main-block .main-block__heading {
    width: max-content !important;
    max-width: none !important;
    overflow: visible !important;
  }

  .page__main-block .main-block__title {
    display: block !important;
    width: max-content !important;
    max-width: none !important;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }
}


/* v.4325 — menu-matching first word accent in hero titles.
   Uses the same red-brown accent as the active upper-navigation item (#850909). */
.page__main-block .main-block__title > .hero-title-menu-word,
h1.main-block__title > .hero-title-menu-word,
h1.activity-h1 > .hero-title-menu-word {
  color:#34465a !important;
}


/* ---- css/header-v4444-09.css ---- */
/* v4444-09: header-only correction */
@media (min-width:771px){
  .header__container{column-gap:20px !important;}
  .g74-prelogo-nav{
    flex:0 0 auto !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    overflow:visible !important;
    background-color:rgba(250,250,250,1) !important;
  }
  .g74-prelogo-nav > a{
    float:left !important;
    display:block !important;
    color:rgba(13,92,99,1) !important;
    text-align:center !important;
    padding:10px 10px !important;
    text-decoration:none !important;
    font-size:14px !important;
  }
  .header__container > .g74-prelogo-nav,
  .header__container > .g74-header-feather,
  .header__container > .g74-header-name{
    margin-left:0 !important;
    margin-right:0 !important;
  }
}
.topnav > a[aria-current="page"]:not(.icon),
.topnav > a.active:not(.icon){
  background-color:rgba(133,9,9,1) !important;
  color:#fff !important;
  font-weight:700 !important;
}
.topnav > a[aria-current="page"]:not(.icon) span,
.topnav > a.active:not(.icon) span{color:#fff !important;}

