/* ======================================================================
   RIS Web — Информационный портал ФГБУ «Российский институт стандартизации»
   Шаблон создан по ТЗ. Стиль: современный, деловой, чистый (п.7.2 ТЗ).
   Минимальное разрешение 375x667 (п.5.2 ТЗ).
   ====================================================================== */

:root {
  --c-brand: #002864;       /* основной синий РИС (лого, ссылки, hero) */
  --c-brand-dark: #001A45;
  --c-brand-rgb: 0, 40, 100;
  --c-brand-light: #E8F1FB;
  --c-action: #0088cc;      /* Figma «Кнопка голубая» — все CTA */
  --c-action-hover: #006699;
  --c-action-rgb: 0, 136, 204;
  --btn-radius: 50px;       /* Figma pill: голубая/контур 47px, белая 50px */
  --btn-height: 47px;
  --btn-height-white: 50px;
  --c-accent: #D8232A;      /* акцент-красный (кнопки) */
  --c-hero-stripe: #E30613; /* красная полоса карточек hero — Figma frame-3 */
  --c-accent-light: #FFE7E8;
  --c-gold: #C9A86A;        /* фирменный охряный (как у гербовых элементов) */
  --c-text: #14213D;
  --c-muted: #5B6478;
  --c-line: #E2E6EE;
  --c-bg: #FFFFFF;
  --c-bg-soft: #F4F6FA;
  --c-bg-dark: #002864;
  --c-success: #1E8A4A;
  --radius-sm: 8px;
  --radius: 14px;
  --radius-lg: 22px;
  --shadow-sm: 0 2px 6px rgba(20,33,61,0.06);
  --shadow: 0 6px 24px rgba(20,33,61,0.08);
  --shadow-lg: 0 12px 40px rgba(20,33,61,0.12);
  --container: 1440px;
  --gutter: 24px;
  --section-y: 80px;
  --section-y-after-hero: 56px;
  /* Figma Group 125 / РСТ_шкала (6004:5805): h 27.6px */
  --hero-decor-h: 27.6px;
  /* Figma Group 52 / Group 125: две плитки РСТ_шкала */
  --hero-decor-tile-w: calc(1600.6 / 1440 * 100vw);
  --hero-decor-lead-l: calc(-281 / 1440 * 100vw);
  --hero-decor-trail-l: calc(1316 / 1440 * 100vw);
  /* Figma 375: тайлы y=778, шкала y=795 → зазор ~17px */
  --hero-tiles-decor-gap: 17px;
  --section-y-compact: 64px;
  --section-y-subpage-bottom: 48px;
  /* Figma Rectangle 444 (8014:13186) — MCP get_design_context */
  --hero-photo: url("/local/templates/ris/assets/img/hero/home-hero-bg-figma.jpg");
  --hero-photo-fallback: url("/local/templates/ris/assets/img/hero/home-hero-bg.png");
  /* Figma Rectangle 445 (8014:13187, 10006:9895): #020303 @ 72% */
  --hero-home-overlay: rgba(2, 3, 3, 0.72);
  /* Figma img: w118.79% h108.32% left-12.89% top-8.32% */
  /* Figma: img в overflow:hidden (118.79%×108.32%, left -12.89%) → в CSS только cover, без искажения пропорций */
  --hero-home-photo-size: cover;
  --hero-home-photo-pos: 42% 36%;
  --hero-photo-about: url("/local/templates/ris/assets/img/hero/about-banner-figma.jpg");
  --hero-photo-about-mobile: url("/local/templates/ris/assets/img/hero/about-banner-mobile.jpg");
  --hero-photo-about-fallback: url("/local/templates/ris/assets/img/hero/about-banner.jpg");
  /* Figma inner-heroes-layers.json → figma-spec/inner-heroes-breakpoints.json */
  --hero-h-about-1440: 670px;
  --hero-h-about-1280: 597px;
  --hero-h-about-1900: 893px;
  --hero-h-about-375: calc(100vw * 763 / 375);
  --hero-h-science-1440: 671px;
  --hero-h-science-1900: 895px;
  --hero-h-science-375: calc(100vw * 761 / 375);
  --hero-h-media-1280: 599px;
  --hero-h-media-1440: 670px;
  --hero-h-media-1900: 893px;
  --hero-h-media-800: 431px;
  --hero-h-media-375: calc(100vw * 763 / 375);
  --hero-h-education-1440: 669px;
  --hero-h-education-800: calc(100vw * 383 / 800);
  --hero-h-education-1900: 893px;
  --hero-h-education-375: calc(100vw * 763 / 375);
  --hero-h-standardization-1440: 669px;
  --hero-h-standardization-375: calc(100vw * 763 / 375);
  --hero-h-standardization-mid: calc(100vw * 669 / 1440);
  --hero-pad-standardization-1440: 30px;
  --hero-gradient-standardization: linear-gradient(135deg, #001a45 0%, #002864 42%, #003d7a 100%);
  --hero-photo-science: url("/local/templates/ris/assets/img/hero/science-banner-figma.jpg");
  --hero-photo-science-mobile: url("/local/templates/ris/assets/img/hero/science-banner-mobile.jpg");
  --hero-photo-science-fallback: url("/local/templates/ris/assets/img/hero/science-banner.jpg");
  --hero-photo-education: url("/local/templates/ris/assets/img/hero/education-banner-figma.jpg");
  --hero-photo-education-mobile: url("/local/templates/ris/assets/img/hero/education-banner-mobile.jpg");
  --hero-photo-education-fallback: url("/local/templates/ris/assets/img/hero/education-banner.jpg");
  --hero-photo-certification: url("/local/templates/ris/assets/img/hero/certification-banner-figma.png");
  --hero-photo-certification-fallback: url("/local/templates/ris/assets/img/hero/certification-banner.jpg");
  --l3-check-icon: url("/local/templates/ris/assets/img/certification/l3-form-check-figma.png");
  --hero-gradient-certification: linear-gradient(135deg, #001a45 0%, #002864 48%, #1a4d8c 100%);
  --hero-photo-projects: none;
  --hero-gradient-projects: linear-gradient(135deg, #002864 0%, #003366 55%, #004080 100%);
  --hero-photo-media: url("/local/templates/ris/assets/img/hero/media-banner-figma.jpg");
  --hero-photo-media-mobile: url("/local/templates/ris/assets/img/hero/media-banner-mobile.jpg");
  --hero-photo-media-fallback: url("/local/templates/ris/assets/img/hero/media-banner.jpg");
  /* Figma: 6_index_375 → 56px; 2_index_1440 → ~138px (факт. ~140 с border) */
  --header-h: 56px;
  --font: "Montserrat", system-ui, -apple-system, sans-serif;
  --font-display: var(--font);
  --font-heading: var(--font);
  --font-body-figma: "Fira Sans", system-ui, -apple-system, sans-serif;
  --font-ui: var(--font);
  --transition: 220ms cubic-bezier(.2,.7,.3,1);
}

/* ---------- Reset ---------- */
*, *::before, *::after { box-sizing: border-box; }
html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-h) + 16px);
  min-width: 375px;
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

:focus-visible {
  outline: 3px solid var(--c-brand);
  outline-offset: 2px;
}
html {
  overflow-x: clip;
}
body {
  margin: 0;
  font-family: var(--font);
  font-size: 16px;
  line-height: 1.55;
  color: var(--c-text);
  background: var(--c-bg);
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}
main {
  overflow-x: clip;
}
img, svg, video { max-width: 100%; display: block; }
.header img, .header svg { max-width: none; }
a { color: var(--c-brand); text-decoration: none; transition: color var(--transition); }
a:hover { color: var(--c-accent); }
button { font-family: inherit; cursor: pointer; border: 0; background: none; }
input, textarea, select { font-family: inherit; font-size: inherit; }
h1,h2,h3,h4,h5 { margin: 0 0 .5em; font-weight: 700; line-height: 1.2; color: var(--c-text); }
h1 { font-size: clamp(28px, 4vw, 48px); letter-spacing: -.02em; }
h2 { font-size: clamp(24px, 3vw, 36px); letter-spacing: -.01em; }
h3 { font-size: clamp(20px, 2vw, 24px); }
p { margin: 0 0 1em; }
ul { padding-left: 0; list-style: none; margin: 0; }

/* ---------- Layout ---------- */
.container { width: 100%; max-width: var(--container); padding: 0 var(--gutter); margin: 0 auto; }
.section { padding: var(--section-y) 0; }
/* Якоря меню / хеши: не прятать заголовок секции под sticky header */
main section[id],
main [id].section {
  scroll-margin-top: calc(var(--header-h) + 16px);
}
.section--soft { background: var(--c-bg-soft); }
.section--dark { background: var(--c-bg-dark); color: #fff; }
.section--dark h2, .section--dark h3 { color: #fff; }
.section-header { display: flex; align-items: baseline; justify-content: space-between; gap: 16px 24px; margin-bottom: 32px; flex-wrap: wrap; }
.section-header--center { justify-content: center; text-align: center; }
.section-header--center .section-title { width: 100%; text-align: center; }
.section-header--stack { flex-direction: column; align-items: flex-start; gap: 12px; }
.section-header__lead { margin: 0; max-width: 842px; font-size: 16px; line-height: 1.55; color: var(--color-text-muted, #5c6470); }
.section-title { margin: 0; font-family: var(--font-heading); font-size: clamp(28px, 2.5vw, 36px); font-weight: 600; letter-spacing: -.01em; line-height: 1.35; }
.section-link { font-family: var(--font-ui); font-weight: 500; font-size: 15px; color: var(--c-brand); border-bottom: 1px solid transparent; transition: color var(--transition), border-color var(--transition); }
.section-link:hover { color: var(--c-accent); border-bottom-color: rgba(216, 35, 42, 0.45); }

/* ---------- Buttons ---------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 8px; padding: 15px 40px; min-height: var(--btn-height); border-radius: var(--btn-radius);
  font-family: var(--font-ui); font-weight: 500; font-size: 14px; line-height: normal;
  transition: all var(--transition); white-space: nowrap;
  border: 2px solid transparent;
  box-sizing: border-box;
}
.btn--primary {
  background: var(--c-action);
  border-color: var(--c-action);
  color: #fff;
}
.btn--primary:hover {
  background: var(--c-action-hover);
  border-color: var(--c-action-hover);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(var(--c-action-rgb), 0.28);
}
body.page-home #prices .price-card .btn,
body.page-home #prices .price-card__cta {
  margin-top: 12px;
}
body.page-home #prices .price-card__list {
  flex: 1 1 auto;
}
/* legacy class: те же голубые CTA, что btn--primary (Figma «Кнопка голубая») */
.btn--accent {
  background: var(--c-action);
  border-color: var(--c-action);
  color: #fff;
}
.btn--accent:hover {
  background: var(--c-action-hover);
  border-color: var(--c-action-hover);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(var(--c-action-rgb), 0.28);
}
.btn--ghost {
  background: transparent;
  color: var(--c-action);
  border-color: var(--c-action);
}
.btn--ghost:hover {
  background: var(--c-action);
  border-color: var(--c-action);
  color: #fff;
}
.btn--white {
  background: #fff;
  color: var(--c-action);
  border-radius: var(--btn-radius);
  min-height: var(--btn-height-white);
  transform: none;
  box-shadow: none;
}
.btn--white:hover {
  background: #fff;
  color: var(--c-action-hover);
  transform: none;
}
/* Кнопка-обводка на тёмном CTA (Figma UI kit, блок «Полигон») */
.btn--outline-white {
  background: transparent;
  color: #fff;
  border-color: rgba(255, 255, 255, 0.88);
}
.btn--outline-white:hover {
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  border-color: #fff;
  transform: translateY(-1px);
}

/* Figma «Кнопка контур» — голубая обводка */
.btn--outline-action {
  background: transparent;
  border: 1px solid var(--c-action);
  color: var(--c-action);
}
.btn--outline-action:hover {
  background: rgba(var(--c-action-rgb), 0.06);
  border-color: var(--c-action);
  color: var(--c-action);
  transform: none;
  box-shadow: none;
}

.btn--sm { padding: 10px 18px; font-size: 14px; min-height: var(--btn-height); border-radius: var(--btn-radius); }

/* Единый вид CTA на всех страницах (Figma UI kit) */
.btn.btn--primary,
.btn.btn--accent,
a.btn.btn--primary,
button.btn.btn--primary {
  background: var(--c-action);
  border-color: var(--c-action);
  color: #fff;
  border-radius: var(--btn-radius);
  min-height: var(--btn-height);
}
.btn.btn--primary:hover,
.btn.btn--accent:hover,
a.btn.btn--primary:hover,
button.btn.btn--primary:hover {
  background: var(--c-action-hover);
  border-color: var(--c-action-hover);
  color: #fff;
}
.btn.btn--ghost,
a.btn.btn--ghost {
  border-radius: var(--btn-radius);
  min-height: var(--btn-height);
  color: var(--c-action);
  border-color: var(--c-action);
}
.btn.btn--ghost:hover,
a.btn.btn--ghost:hover {
  background: var(--c-action);
  border-color: var(--c-action);
  color: #fff;
}
.btn.btn--white,
a.btn.btn--white {
  border-radius: var(--btn-radius);
  min-height: var(--btn-height-white);
  background: #fff;
  color: var(--c-action);
}
.btn.btn--white:hover,
a.btn.btn--white:hover {
  background: #fff;
  color: var(--c-action-hover);
}

/* ---------- Top utility bar ---------- */
/* Figma 2_index_1440 / внутренние *_1440: отдельного topbar нет */
.topbar { display: none !important; }
body.page-home {
  overflow-x: clip;
}

.topbar--legacy {
  background: var(--c-brand-dark); color: #cfd8e8;
  font-size: 13px; padding: 8px 0;
}
.topbar__inner { display: flex; gap: 24px; align-items: center; flex-wrap: wrap; }
.topbar a { color: #cfd8e8; }
.topbar a:hover { color: #fff; }
.topbar__phone { font-weight: 600; color: #fff; }
.topbar__tools { margin-left: auto; display: flex; gap: 16px; align-items: center; }
.topbar__btn {
  display: inline-flex; align-items: center; gap: 6px;
  color: #cfd8e8; padding: 4px 8px; border-radius: 6px;
  transition: background var(--transition);
}
.topbar__btn:hover { background: rgba(255,255,255,.1); color: #fff; }
.lang-switch { display: inline-flex; gap: 4px; }
.lang-switch button {
  color: #cfd8e8; padding: 2px 8px; border-radius: 4px;
  font-size: 12px; font-weight: 600;
}
.lang-switch button.is-active { background: var(--c-accent); color: #fff; }

/* ---------- Header / Navigation ---------- */
.header {
  position: sticky;
  top: 0;
  z-index: 180;
  background: #fff;
  border-bottom: 0;
  box-shadow: none;
  overflow: hidden; /* mobile: обрезка лого; desktop — header-figma.css → visible */
  min-height: 138px; /* Figma 1440 — детали в header-figma.css */
}
.header__top {
  display: flex; align-items: center; gap: 16px 20px;
  padding: 10px 0 10px; /* <1024; desktop — header-figma.css */
  flex-wrap: nowrap;
  border-bottom: 1px solid var(--c-line);
}
@media (min-width: 1024px) {
  .header {
    overflow: visible;
  }
  .header__top {
    padding-top: 0;
    padding-bottom: 0;
    border-bottom: 0;
  }
}
.header__contact {
  text-align: center; line-height: 1.2;
  flex: 1;
  /* min-width: 0 ломает подпись в grid 1024–1440 («Ед…» / «8…») — оставляем только там, где нужен flex-shrink */
  min-width: min(100%, 12rem);
}
.header__contact-label {
  display: block;
  font-size: 12px;
  color: var(--c-muted);
  overflow-wrap: normal;
  word-break: normal;
}
.header__contact-phone {
  font-size: 18px; font-weight: 700; color: #0d0d0d;
  letter-spacing: -0.01em;
}
.header__contact-phone:hover { color: var(--c-accent); }
/* Bitrix edit-area: обёртка для серой кнопки «Изменить элемент» */
.ris-edit-area {
  display: block;
  max-width: 100%;
  min-height: 28px;
  position: relative;
}
.header__contact .ris-edit-area {
  display: block;
  min-height: 0;
}
.nav__submenu .ris-edit-area,
.mobile-panel .ris-edit-area,
.footer-menu .ris-edit-area,
.footer__utils .ris-edit-area {
  display: block;
  padding: 2px 0;
  min-height: 32px;
}
/* Компактные зоны Bitrix: серая панель «Изменить элемент» вместо жёлтого карандаша */
.ris-edit-area.bx-context-toolbar-empty-area .bx-context-toolbar-icon {
  display: none !important;
}
.ris-edit-area.bx-context-toolbar-empty-area:hover .bx-context-toolbar,
.ris-edit-area.bx-context-toolbar-empty-area.bx-context-toolbar-over .bx-context-toolbar {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.header__rst {
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  width: 52px; height: 52px;
  text-decoration: none; color: inherit;
}
.header__rst img { width: 50px; height: 50px; object-fit: contain; display: block; }
.header__search {
  display: flex; align-items: center;
  flex: 1 1 auto; min-width: 180px; max-width: 300px;
  border: 1px solid #e8eaef; border-radius: 999px;
  padding: 4px 8px 4px 18px; background: #f1f3f7;
}
.header__search input {
  flex: 1; border: 0; background: transparent; padding: 8px 0;
  font-size: 14px; min-width: 0; color: var(--c-text);
}
.header__search input::placeholder {
  color: #8b93a6;
}
.header__search input:focus { outline: none; }
.header__search-btn {
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  border-radius: 0;
  background: transparent;
  color: var(--c-muted);
  display: grid;
  place-items: center;
  flex-shrink: 0;
  box-sizing: border-box;
}
.header__search-btn:hover { background: transparent; opacity: .75; }
.header__search-icon { width: 20px; height: 20px; display: block; opacity: .55; }
.header__utilities {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  margin-left: auto;
  min-width: max-content;
  flex-wrap: nowrap;
  isolation: isolate;
}
.header__lang {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}
.header__quick {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  flex-wrap: nowrap;
}
.header__lang-btn {
  border: 0; background: transparent; padding: 0; cursor: pointer;
  line-height: 0; border-radius: 2px;
  box-sizing: border-box;
}
.header__lang-inner {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.header__lang {
  position: relative;
}
.header__lang-dropdown {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 8px;
  background: #fff;
  border: 1px solid #e1e4e8;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  padding: 6px 0;
  min-width: 120px;
  display: flex;
  flex-direction: column;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: opacity 0.2s, visibility 0.2s, transform 0.2s;
  z-index: 100;
}
.header__lang.is-open .header__lang-dropdown,
.header__lang:hover .header__lang-dropdown,
.header__lang:focus-within .header__lang-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.header__lang-dropdown::before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 0;
  width: 100%;
  height: 10px;
}
.header__lang-option {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 16px;
  border: none;
  background: transparent;
  width: 100%;
  text-align: left;
  font-size: 14px;
  color: var(--c-text);
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.header__lang-option:hover,
.header__lang-option:focus-visible {
  background: #f5f7f9;
  color: var(--c-accent);
}
.header__lang-option.is-active {
  background: #eff4f9;
  color: var(--c-accent);
  font-weight: 500;
}
.header__lang-chevron {
  display: block;
  width: 6px;
  height: 3px;
  flex-shrink: 0;
  object-fit: contain;
  opacity: 0.55;
}
.header__flag { display: block; width: auto; height: 20px; max-width: 45px; object-fit: contain; }
.header__quick-btn {
  width: 50px;
  height: 50px;
  min-width: 44px;
  min-height: 44px;
  border-radius: 0;
  border: 0;
  background: transparent;
  padding: 0;
  display: inline-grid;
  place-items: center;
  line-height: 0;
  flex: 0 0 auto;
  flex-shrink: 0;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  transition: transform var(--transition), opacity var(--transition);
}
@media (min-width: 1280px) {
  .header__quick-btn { width: 50px; height: 50px; }
}
.header__quick-btn:hover { transform: translateY(-1px); opacity: .9; }
.header__quick-btn:active { transform: translateY(0); opacity: 1; }
.header__quick-btn:focus-visible {
  outline: 2px solid var(--c-brand);
  outline-offset: 2px;
}
.header__lang-btn:focus-visible {
  outline: 2px solid var(--c-brand);
  outline-offset: 2px;
}
.header__quick-img {
  display: block;
  width: 22px;
  height: 22px;
  max-width: none;
  object-fit: contain;
  object-position: center center;
  margin: 0;
}
/* Figma 6_index_375: круглая кнопка поиска (30×30), как a11y/sitemap/lk */
.header__quick-btn--search .header__quick-img--search {
  width: 30px;
  height: 30px;
  max-width: 30px;
  max-height: 30px;
}
@media (min-width: 1280px) {
  /* Figma frame-3: иконка ~30px в зоне нажатия 50×50 */
  .header__quick-img,
  .header__quick-img--search {
    width: 30px !important;
    height: 30px !important;
    max-width: 30px;
    max-height: 30px;
  }
}
.logo__title--brand {
  font-size: 13px; text-transform: uppercase;
  letter-spacing: .06em; line-height: 1.25;
  max-width: 200px;
}
.topbar__phone--alt { opacity: .85; font-size: 12px; }

.header__inner {
  display: flex; align-items: center; gap: 16px;
  padding: 10px 0 10px;
  min-height: 48px;
}
.header__inner .nav {
  margin-left: 0;
  flex-wrap: nowrap;
  justify-content: space-between;
}
@media (min-width: 1024px) {
  .header__inner .nav {
    flex: 1 1 100%;
    align-self: stretch;
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0;
    margin-inline: 0;
  }
}
.logo {
  display: flex; align-items: center; gap: 12px;
  flex-shrink: 0; text-decoration: none;
}
.logo__mark {
  width: 48px; height: 48px; border-radius: 8px;
  flex-shrink: 0; object-fit: contain;
}
.logo__img {
  flex-shrink: 0; object-fit: contain;
  border-radius: 0;
}
.logo__mark {
  background: linear-gradient(135deg, var(--c-brand), var(--c-brand-dark));
  display: grid; place-items: center; color: #fff;
  font-weight: 800; font-size: 14px; letter-spacing: .04em;
}
.logo__img { background: transparent; padding: 0; border: 0; }
.logo__img--inner-mark {
  width: auto;
  max-width: 220px;
  height: 32px;
  object-fit: contain;
  object-position: left center;
}
/* Figma 1440: горизонтальный wordmark; на ≤1023 — компактный inner-mark */
.logo__img.logo__img--home-strip {
  display: none;
  width: 240px;
  max-width: 240px;
  height: 31px;
  object-fit: contain;
  object-position: left center;
  flex-shrink: 0;
  border-radius: 0;
}
@media (min-width: 1024px) {
  .logo__img.logo__img--home-strip {
    display: block;
  }
  .logo__img.logo__img--inner-mark {
    display: none !important;
  }
  /* Высота шапки 156px + зазор 18px — header-figma.css */
}
.logo__text { line-height: 1.1; }
.logo__title { font-weight: 700; font-size: 15px; color: var(--c-brand-dark); }
.logo__subtitle { font-size: 11px; color: var(--c-muted); text-transform: uppercase; letter-spacing: .04em; }

.nav { display: flex; gap: 2px; margin-left: auto; }
.nav__item { position: relative; }
.nav__link {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 8px 12px; color: var(--c-text);
  font-weight: 500; font-size: 14px; border-radius: 0;
  transition: color var(--transition), opacity var(--transition);
  background: transparent;
}
.nav__link:hover,
.nav__item.is-active > .nav__link {
  color: var(--c-brand);
  background: transparent;
}
.nav__link svg { width: 12px; height: 12px; opacity: .7; transition: transform var(--transition); }
.nav__item:hover .nav__link svg { transform: rotate(180deg); }
.nav__submenu {
  position: absolute; top: 100%; left: 0; min-width: 260px;
  background: #fff; border: 1px solid var(--c-line); border-radius: var(--radius);
  box-shadow: var(--shadow-lg); padding: 8px;
  opacity: 0; visibility: hidden; transform: translateY(8px);
  transition: all var(--transition); z-index: 50;
}
@media (min-width: 1024px) {
  .header {
    overflow: visible;
  }
  .nav__submenu {
    z-index: 300;
  }
  .search-form {
    z-index: 310;
  }
}
.nav__item:hover .nav__submenu,
.nav__item.is-open .nav__submenu { opacity: 1; visibility: visible; transform: translateY(0); }
.nav__item.is-open > .nav__link svg { transform: rotate(180deg); }
.nav__submenu a {
  display: block; padding: 10px 14px; border-radius: 8px;
  color: var(--c-text); font-size: 14px;
}
.nav__submenu a:hover { background: var(--c-brand-light); color: var(--c-brand); }

.header__actions { display: flex; gap: 8px; align-items: center; }
.icon-btn {
  width: 40px; height: 40px; display: grid; place-items: center;
  border-radius: 8px; color: var(--c-text);
  transition: all var(--transition);
}
.icon-btn:hover { background: var(--c-brand-light); color: var(--c-brand); }
.icon-btn svg { width: 20px; height: 20px; }

/* Поиск */
.search-trigger { position: relative; }
.search-form {
  position: absolute; top: calc(100% + 8px); right: 0;
  width: 360px; display: flex; gap: 8px;
  background: #fff; padding: 8px; border: 1px solid var(--c-line);
  border-radius: var(--radius); box-shadow: var(--shadow-lg);
  opacity: 0; visibility: hidden; transform: translateY(-8px);
  transition: all var(--transition); z-index: 60;
}
.search-form.is-open { opacity: 1; visibility: visible; transform: translateY(0); }
.search-form input {
  flex: 1; border: 1px solid var(--c-line); border-radius: 8px;
  padding: 10px 14px; font-size: 14px;
}
.search-form input:focus { outline: 2px solid var(--c-brand); }

/* Mobile menu */
.header__mobile-toggle-wrap { display: none; }
.mobile-toggle { display: none; }
.mobile-panel,
.mobile-backdrop { display: none; }
@media (max-width: 1023px) {
  /* Figma 6_index_375 / 7_menu_375: без topbar, одна строка шапки ~56px */
  .topbar { display: none; }
  :root {
    --ris-mobile-header-offset: calc(56px + env(safe-area-inset-top, 0px));
  }

  .header {
    min-height: 56px;
  }
  .header__top .header__rst,
  .header__top .header__search { display: none; }
  .header__top {
    display: grid;
    align-items: center;
    column-gap: 8px;
    padding: env(safe-area-inset-top, 0px) max(15px, env(safe-area-inset-right, 0px)) 0 max(15px, env(safe-area-inset-left, 0px));
    height: auto;
    min-height: calc(56px + env(safe-area-inset-top, 0px));
    box-sizing: border-box;
    border-bottom: 0;
    flex-wrap: nowrap;
  }
  .header__mobile-toggle-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    grid-column: -1;
    flex-shrink: 0;
  }
  .header__top .logo {
    grid-column: 1;
    flex: 0 0 auto;
    width: auto;
    min-width: 0;
    overflow: visible;
    max-width: none;
  }
  .header__top .logo__subtitle { display: none; }
  .header__top .logo__text,
  .header__top .logo__text--inner { display: none !important; }
  /* Убрали переопределение логотипа для внутренних страниц по просьбе клиента */
  body.page-home .logo .logo__text { display: none !important; }

  .header__top .header__contact {
    display: none;
  }
  /* Bitrix edit-frame вокруг header_phone — не участвует в grid */
  .header__top > [id^="bx_"] {
    display: contents;
  }
  .header__top > script {
    display: none !important;
  }

  /* Figma 6_index_375 / 7_*_375: 139×18 + 4×30px иконки + бургер 20×12, строка 56px */
  @media (max-width: 799px) {
    .header__top {
      /* logo | icons | spacer | burger — иконки сразу после лого, бургер справа */
      grid-template-columns: 139px auto 1fr auto;
      height: 56px !important;
      min-height: 56px !important;
      max-height: 56px !important;
      column-gap: 8px;
      padding-left: max(15px, env(safe-area-inset-left, 0px));
      padding-right: max(15px, env(safe-area-inset-right, 0px));
    }
    .header__top .logo {
      grid-column: 1;
      width: 139px;
      min-width: 139px;
      max-width: 139px;
      flex: 0 0 139px;
      overflow: hidden;
    }
    .header__top .logo__img.logo__img--inner-mark {
      display: block;
      width: 139px;
      max-width: 100%;
      height: 18px;
      object-fit: contain;
      object-position: left center;
    }
    .header__top .header__utilities {
      grid-column: 2;
      justify-self: start;
      gap: 0;
      margin-left: 0;
      min-width: min-content;
      max-width: none;
      flex-shrink: 0;
    }
    .header__top .header__lang {
      display: none !important;
    }
    .header__top .header__quick {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      flex: 0 0 auto;
    }
    .header__top .header__quick-btn {
      /* Figma Group 122/145/124/4 — 30×30 */
      width: 30px;
      height: 30px;
      min-width: 30px;
      min-height: 30px;
      max-width: 30px;
      max-height: 30px;
      display: inline-grid;
      place-items: center;
      overflow: visible;
    }
    .header__top .header__quick-img {
      width: 30px !important;
      height: 30px !important;
      max-width: 30px;
      max-height: 30px;
      object-fit: contain;
      object-position: center center;
    }
    .header__top .header__quick-btn--search .header__quick-img--search {
      width: 30px !important;
      height: 30px !important;
      max-width: 30px;
      max-height: 30px;
    }
    .header__top .header__mobile-toggle-wrap {
      grid-column: 4;
      flex: 0 0 auto;
    }
    .header__mobile-toggle-wrap .mobile-toggle {
      width: 30px;
      height: 30px;
      min-width: 30px;
      min-height: 30px;
      max-width: 30px;
      max-height: 30px;
      padding: 0;
    }
    .header__mobile-toggle-wrap .icon-burger {
      width: 20px;
      height: 12px;
    }
  }

  @media (max-width: 480px) {
    body.page-home .hero--home {
      min-height: max(clamp(480px, 128vw, 620px), 520px);
    }
    .hero--home .hero__stats.stats-grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 8px 10px;
    }
    .hero--home .stat__num {
      font-size: 20px;
    }
    .hero--home .stat__txt {
      font-size: 10px;
      line-height: 1.2;
    }
  }

  /* Figma *_800 (2_5_Обучение_800): 185×24 + контакт + 4×30px + RU + бургер, строка 56px */
  @media (min-width: 800px) and (max-width: 1023px) {
    .header__top {
      grid-template-columns: auto minmax(0, max-content) minmax(0, 1fr) auto;
      height: 56px;
      min-height: 56px;
      max-height: 56px;
      padding: 0 16px;
      column-gap: 14px;
    }
    .header__top .logo {
      flex: 0 0 auto;
      width: 185px;
      min-width: 0;
      max-width: min(185px, 28vw);
    }
    .header__top .logo__img.logo__img--inner-mark {
      width: min(185px, 28vw);
      height: 24px;
      max-width: min(185px, 28vw);
      min-width: 0;
    }
    .header__top .header__contact {
      display: block;
      grid-column: 2;
      justify-self: center;
      text-align: center;
      min-width: 0;
      line-height: 1.15;
      padding: 0 4px;
    }
    .header__top .header__contact-label {
      display: block;
      font-size: 10px;
      line-height: 1.2;
      margin-bottom: 1px;
      white-space: nowrap;
    }
    .header__top .header__contact-phone {
      display: block;
      font-size: clamp(11px, 1.5vw, 13px);
      font-weight: 700;
      line-height: 1.2;
      white-space: nowrap;
    }
    .header__top .header__utilities {
      grid-column: 3;
      justify-self: end;
      margin-left: 0;
      gap: 12px;
      min-width: min-content;
      flex-shrink: 0;
    }
    .header__top .header__quick {
      display: inline-flex !important;
      align-items: center;
      gap: 12px;
      flex: 0 0 auto;
    }
    .header__top .header__lang {
      display: inline-flex;
      flex: 0 0 auto;
    }
    .header__top .header__lang-btn {
      width: 50px;
      height: 50px;
      min-width: 50px;
      min-height: 50px;
      max-width: 50px;
      max-height: 50px;
      padding: 0;
      display: inline-grid;
      place-items: center;
    }
    .header__top .header__lang-btn .header__flag {
      height: 20px;
      width: auto;
      max-width: 35px;
    }
    .header__top .header__quick-btn {
      width: 50px;
      height: 50px;
      min-width: 50px;
      min-height: 50px;
      max-width: 50px;
      max-height: 50px;
      display: inline-grid;
      place-items: center;
      overflow: visible;
    }
    .header__top .header__quick-img {
      width: 30px !important;
      height: 30px !important;
      max-width: 30px;
      max-height: 30px;
    }
    .header__top .header__quick-btn--search .header__quick-img--search {
      width: 30px !important;
      height: 30px !important;
      max-width: 30px;
      max-height: 30px;
    }
    .header__top .header__mobile-toggle-wrap {
      grid-column: 4;
    }
    .header__mobile-toggle-wrap .mobile-toggle {
      width: 50px;
      height: 50px;
      min-width: 50px;
      min-height: 50px;
      max-width: 50px;
      max-height: 50px;
    }
    .header__mobile-toggle-wrap .icon-burger {
      width: 20px;
      height: 12px;
    }
  }

  /* Навигация — в mobile-panel; второй ряд шапки не занимает место */
  .header > .container.header__inner { display: none !important; }
  .mobile-toggle {
    margin: 0;
    display: grid;
    place-items: center;
  }
  .mobile-panel[hidden] { display: none !important; }
  .mobile-panel.is-open { display: flex; }
  .mobile-backdrop { display: block; }
}
@media (min-width: 1024px) {
  .header__quick-btn--search { display: none !important; }
  /* Размеры lang/quick — header-figma.css (50×50, флаг 35×20) */
}
.mobile-panel {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: var(--ris-mobile-header-offset, 118px);
  width: 100%;
  max-width: none;
  background: #fff;
  z-index: 200;
  flex-direction: column;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  visibility: hidden;
  pointer-events: none;
  opacity: 0;
  transition: opacity var(--transition), visibility var(--transition);
}
.mobile-panel.is-open {
  visibility: visible;
  pointer-events: auto;
  opacity: 1;
}
.mobile-panel__level {
  display: none;
  flex-direction: column;
  padding: 8px 0 24px;
}
.mobile-panel__level.is-active { display: flex; }
.mobile-panel__item {
  display: block;
  width: 100%;
  text-align: left;
  padding: 18px 20px;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.35;
  color: var(--c-text);
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--c-line);
  text-decoration: none;
  cursor: pointer;
  font-family: inherit;
}
.mobile-panel__item--branch {
  padding-left: 20px;
}
.mobile-panel__back {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 16px 20px;
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  color: var(--c-text);
  background: #f4f6fa;
  border: 0;
  border-bottom: 1px solid var(--c-line);
  cursor: pointer;
  font-family: inherit;
  text-align: left;
}
.mobile-panel__back::before {
  content: "‹";
  font-size: 22px;
  line-height: 1;
  color: var(--c-brand);
}
body.mobile-menu-open .header {
  z-index: 250;
}
body.mobile-menu-open .mobile-toggle .icon-burger { display: none; }
body.mobile-menu-open .mobile-toggle .icon-close { display: block; }
.mobile-toggle .icon-close { display: none; }
.mobile-panel__branch {
  display: flex;
  align-items: stretch;
  width: 100%;
  border-bottom: 1px solid var(--c-line);
}
.mobile-panel__branch .mobile-panel__item--label {
  flex: 1;
  min-width: 0;
  border-bottom: 0;
}
.mobile-panel__chevron {
  flex: 0 0 52px;
  display: grid;
  place-items: center;
  align-self: stretch;
  padding: 0;
  margin: 0;
  border: 0;
  border-left: 1px solid var(--c-line);
  background: transparent;
  color: var(--c-brand);
  cursor: pointer;
  font-family: inherit;
}
.mobile-panel__chevron svg {
  width: 12px;
  height: 12px;
  transform: rotate(-90deg);
}
.mobile-panel__chevron:focus-visible {
  outline: 2px solid var(--c-brand);
  outline-offset: -2px;
}
.mobile-backdrop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: var(--ris-mobile-header-offset, 118px);
  background: rgba(0, 0, 0, 0.25);
  opacity: 0;
  visibility: hidden;
  z-index: 150;
  transition: all var(--transition);
}
.mobile-backdrop.is-open { opacity: 1; visibility: visible; }

@media (min-width: 1024px) {
  :root {
    --header-h: 140px;
  }
  body.page-home,
  body.page-inner {
    --header-h: 156px;
  }
  .logo .logo__text--inner {
    display: none !important;
  }
  /* Desktop header layout: header-figma.css (Figma 2_index_1440 / 1_index_1900) */
  .header__mobile-toggle-wrap,
  .header__actions,
  .mobile-toggle { display: none !important; }
}
/* ≥1024: десктопная шапка с меню; бургер только ≤1023 */

/* ---------- Hero (макет Figma: тёмный блок с фото, 1440) ---------- */
.hero {
  position: relative;
  padding: 88px 0 var(--section-y);
  color: #fff;
  overflow: hidden;
  background: var(--c-bg-dark);
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(102deg, rgba(var(--c-brand-rgb), 0.94) 0%, rgba(var(--c-brand-rgb), 0.82) 38%, rgba(var(--c-brand-rgb), 0.45) 68%, rgba(var(--c-brand-rgb), 0.25) 100%),
    linear-gradient(180deg, rgba(var(--c-brand-rgb), 0.35) 0%, transparent 45%),
    var(--hero-photo) center/cover no-repeat;
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: radial-gradient(ellipse 80% 60% at 85% 40%, rgba(216, 35, 42, 0.12), transparent 55%);
  pointer-events: none;
}
/* Главная: Rectangle 444 (фото) + Rectangle 445 (оверлей) — Figma MCP */
.hero--home::before {
  background-image:
    linear-gradient(var(--hero-home-overlay), var(--hero-home-overlay)),
    var(--hero-photo);
  background-size: auto, var(--hero-home-photo-size);
  background-position: 0 0, var(--hero-home-photo-pos);
  background-repeat: no-repeat, no-repeat;
}
@media (min-width: 881px) {
  .hero--home::before {
    background-position: 0 0, 58% 34%;
  }
}
@media (min-width: 1280px) {
  .hero--home::before {
    background-position: 0 0, 52% 32%;
  }
}
.hero--home::after {
  display: none;
}
.hero .container { position: relative; z-index: 1; }
/* Главная: фото на всю высоту hero; шкала РСТ и контент — поверх (Figma Group 125) */
.hero--home::before {
  z-index: 0;
  inset: 0;
  bottom: 0;
  height: auto;
}
.hero--home .container {
  position: relative;
  z-index: 4;
}
.hero__inner {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 48px;
  align-items: center;
}
.hero__eyebrow {
  display: inline-block;
  padding: 6px 14px;
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 16px;
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.hero__title {
  margin-bottom: 20px;
  color: #fff;
  font-size: clamp(32px, 3.33vw, 48px);
  line-height: 1.1;
  letter-spacing: -.02em;
}
.hero__lead { font-size: 18px; color: rgba(255, 255, 255, 0.88); margin-bottom: 32px; max-width: 560px; line-height: 1.55; }
.hero__actions { display: flex; gap: 12px; flex-wrap: wrap; }
.hero .btn--ghost {
  border-color: rgba(255, 255, 255, 0.85);
  color: #fff;
}
.hero .btn--ghost:hover {
  background: #fff;
  color: var(--c-action);
  border-color: #fff;
}
.hero__art {
  background: rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-lg);
  padding: 28px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.stats-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.stat {
  padding: 16px 18px;
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.1);
  text-align: left;
  border: 1px solid rgba(255, 255, 255, 0.12);
}
.stat__num { font-size: 28px; font-weight: 800; color: #fff; line-height: 1; }
.stat__txt { font-size: 13px; color: rgba(255, 255, 255, 0.78); margin-top: 6px; }

/* Figma: главная — hero с карточками на фоне */
.hero--home {
  /* Figma: фото + Group 125 (РСТ_шкала 28px); тайлы выше шкалы с зазором */
  position: relative;
  z-index: 0;
  padding: 28px 0 var(--hero-decor-h);
  overflow-x: hidden;
  overflow-y: visible;
  min-height: 670px;
  box-sizing: border-box;
  background-color: #020303;
  scroll-margin-top: var(--header-h);
  isolation: isolate;
}
.page-home .logo__img--home-strip {
  width: 240px;
  max-width: 240px;
  height: 31px;
  border-radius: 0;
}
.hero--home .hero__inner {
  /* Figma: заголовок 652px слева, stats справа (x≈792) */
  grid-template-columns: minmax(0, 652px) minmax(0, 1fr);
  align-items: start;
  gap: 32px 40px;
  margin-bottom: 28px;
}
.hero--home > .container {
  box-sizing: border-box;
}
.hero--home .hero__copy {
  width: 100%;
  max-width: 652px;
  box-sizing: border-box;
}
.hero--home .hero__title {
  /* Figma 10008:9387 / 2001:3213: Montserrat ExtraBold + Medium, lh 1.35 */
  font-family: var(--font-ui);
  font-weight: 500;
  font-size: 24px;
  line-height: 1.35;
  letter-spacing: -0.022em;
  margin: 0 0 6px;
  width: 100%;
  max-width: 652px;
  text-align: left;
  overflow-wrap: break-word;
  text-shadow: 0 2px 28px rgba(0, 8, 24, 0.42), 0 1px 4px rgba(0, 0, 0, 0.18);
}
.hero--home .hero__title-strong,
.hero--home .hero__title-rest {
  display: inline;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
}
.hero--home .hero__title-strong {
  font-weight: 800;
}
.hero--home .hero__title-rest {
  font-weight: 500;
}
.hero--home .hero__lead {
  /* Figma 10008:9387 / 10008:9388: Fira Sans Regular 14px / 1.3 */
  font-family: var(--font);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.3;
  width: 100%;
  max-width: 498px;
  margin: 0;
  color: #fff;
  text-align: left;
  word-break: break-word;
  overflow-wrap: break-word;
  text-shadow: 0 1px 12px rgba(0, 10, 28, 0.28);
}
.hero--home .hero__stats {
  background: transparent;
  border: 0;
  padding: 0;
  backdrop-filter: none;
  align-self: start;
}
.hero--home .hero__stats.stats-grid {
  /* Figma home-hero.json: statsGapY 64, statsGapX 76 */
  gap: 64px 76px;
  max-width: 480px;
  width: 100%;
  justify-self: end;
  align-self: start;
  margin-top: 4px;
}
.hero--home .hero__stats .stat {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  background: transparent;
  border: 0;
  padding: 0;
  text-align: center;
  overflow: visible;
  min-width: 0;
}
/* Figma 10009:7327: только stat__num, без декоративного фона */
body.page-home .hero--home .hero__stats .stat::before {
  content: none !important;
  display: none !important;
}
.hero--home .stat__num {
  position: relative;
  z-index: 1;
  font-size: clamp(28px, 2.9vw, 42px);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1;
}
.hero--home .stat__txt {
  position: relative;
  z-index: 1;
  font-size: 14px;
  line-height: 1.35;
  max-width: 175px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  color: rgba(255, 255, 255, 0.92);
}
.hero--home .hero__tiles {
  position: relative;
  z-index: 2;
  margin-top: 4px;
  margin-bottom: var(--hero-tiles-decor-gap);
  gap: 16px;
  align-items: stretch;
}
/* Ряд из 4 тайлов как Figma 1440: общий .grid--4 схлопывается в 2 колонки уже с max-width 980px — для героя откладываем до одноколоночного mobile (880) */
@media (min-width: 601px) {
  .hero--home .hero__tiles.grid--4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-auto-rows: 1fr;
  }
}
@media (min-width: 1280px) {
  .hero--home .hero__title {
    font-size: 44px;
    line-height: 48px;
    letter-spacing: -0.025em;
  }
  .hero--home .hero__tiles.grid--4 {
    grid-template-columns: repeat(4, 275px);
    gap: 33px;
    justify-content: flex-start;
  }
}
.hero--home .tile--hero {
  position: relative;
  z-index: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  background: #fff;
  color: var(--c-text);
  border: 0;
  border-top: 2px solid var(--c-hero-stripe);
  border-radius: 0;
  /* Figma «услуги» 2001:3738 / 10007:11245 @1280–1440: 275×194, p 25, полоса 4px #ed1a34 */
  min-height: 194px;
  padding: 25px;
  box-sizing: border-box;
  border-top: 4px solid #ed1a34;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.9) inset,
    0 2px 4px rgba(20, 33, 61, 0.04),
    0 10px 28px rgba(20, 33, 61, 0.09);
  transition: box-shadow 0.28s ease, transform 0.28s ease, border-color 0.28s ease;
}
.hero--home .tile--hero:hover {
  z-index: 3;
  color: var(--c-text);
  border: 0;
  border-top: 4px solid #ed1a34;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.95) inset,
    0 14px 36px rgba(20, 33, 61, 0.14);
  transform: translateY(-2px);
}
/* Figma I*:19:1427 — колонка заголовок + описание */
.hero--home .tile--hero .tile__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  width: 100%;
  height: 144px;
  flex: 0 0 144px;
  box-sizing: border-box;
}
.hero--home .tile--hero .tile__title {
  /* Figma I*:17:1376 — Montserrat SemiBold 20, 2 строки × lh 1.2 */
  font-family: var(--font-ui);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.2;
  color: #020203;
  text-align: center;
  width: 100%;
  flex: 0 0 calc(2.4em);
  min-height: calc(2.4em);
  max-height: calc(2.4em);
  height: calc(2.4em);
  margin: 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  text-overflow: ellipsis;
  overflow-wrap: break-word;
}
.hero--home .tile--hero .tile__title-line {
  display: block;
  line-height: 1.2;
  text-align: center;
}
.hero--home .tile--hero .tile__desc {
  /* Figma I*:17:1377 — Fira Sans Regular 16 / 1.3, h 89, overflow hidden */
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  font-style: normal;
  line-height: 1.3;
  color: #020203;
  text-align: center;
  width: 100%;
  flex: 0 0 89px;
  height: 89px;
  max-height: 89px;
  margin: 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  text-overflow: ellipsis;
}
.hero--home .tile--hero .tile__icon { display: none; }
.hero--home .tile--hero-pic {
  padding: 0;
  border: 0;
  min-height: 0;
  background: transparent;
  box-shadow: 0 2px 12px rgba(20, 33, 61, 0.08);
  overflow: hidden;
}
.hero--home .tile--hero-pic:hover {
  border: 0;
  box-shadow: 0 6px 20px rgba(20, 33, 61, 0.12);
}
.hero--home .tile--hero-pic__img {
  display: block;
  width: 100%;
  height: auto;
  vertical-align: top;
}
.hero-decor {
  position: relative;
  z-index: 4;
  display: block;
  width: 100%;
  max-width: none;
  height: var(--hero-decor-h);
  margin: 0;
  flex-shrink: 0;
  background: transparent;
  overflow: hidden;
  pointer-events: none;
}
.hero--home .hero-decor {
  /* Figma Group 125: шкала РСТ поверх фото, ниже тайлов */
  position: absolute;
  left: 50%;
  right: auto;
  bottom: 0;
  width: 100vw;
  max-width: none;
  margin: 0;
  transform: translateX(-50%);
  z-index: 5;
  background: transparent;
}
.hero-decor__track {
  position: relative;
  width: 100%;
  height: var(--hero-decor-h);
  overflow: hidden;
}
.hero-decor__lead {
  position: absolute;
  top: 0;
  left: var(--hero-decor-lead-l);
  width: var(--hero-decor-tile-w-lead, var(--hero-decor-tile-w));
  height: var(--hero-decor-h);
  margin: 0;
  display: block;
  line-height: 0;
}
.hero-decor__bars {
  width: 100%;
  min-width: 100%;
  max-width: none;
  height: var(--hero-decor-h);
  display: block;
  /* Figma РСТ_шкала — деления поверх фото, фон SVG прозрачный */
  object-fit: fill;
  object-position: center center;
  vertical-align: top;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}
.hero-decor__bars--trail {
  position: absolute;
  top: 0;
  left: var(--hero-decor-trail-l);
  width: var(--hero-decor-tile-w-trail, var(--hero-decor-tile-w));
}
.hero--home .hero-decor__track {
  position: static;
  overflow: visible;
}
.hero--home .hero-decor__lead,
.hero--home .hero-decor__bars--trail {
  position: static;
  left: auto;
  width: 100%;
}
.hero--home .hero-decor__bars {
  object-position: left center;
}
@media (min-width: 1280px) {
  .hero--home .hero-decor__track {
    position: relative;
    width: 100%;
    height: var(--hero-decor-h);
    overflow: hidden;
  }
  .hero--home .hero-decor__lead,
  .hero--home .hero-decor__bars--trail {
    position: absolute;
    top: 0;
    margin: 0;
    display: block;
    line-height: 0;
  }
  .hero--home .hero-decor__lead {
    left: var(--hero-decor-lead-l);
    width: var(--hero-decor-tile-w-lead, var(--hero-decor-tile-w));
  }
  .hero--home .hero-decor__bars--trail {
    left: var(--hero-decor-trail-l);
    width: var(--hero-decor-tile-w-trail, var(--hero-decor-tile-w));
  }
  .hero--home .hero-decor__bars {
    width: 100%;
    min-width: 100%;
    height: var(--hero-decor-h);
    object-fit: fill;
    object-position: left center;
  }
}
@media (min-width: 1440px) and (max-width: 1899px) {
  :root {
    --hero-decor-tile-w-lead: calc(1600.6 / 1440 * 100vw);
    --hero-decor-tile-w-trail: calc(1600.6 / 1440 * 100vw);
    --hero-decor-lead-l: calc(-281 / 1440 * 100vw);
    --hero-decor-trail-l: calc(1316 / 1440 * 100vw);
    --hero-tiles-decor-gap: 32px;
  }
}
@media (min-width: 1900px) {
  :root {
    --hero-decor-tile-w-lead: calc(1836.6 / 1900 * 100vw);
    --hero-decor-tile-w-trail: calc(1600.6 / 1900 * 100vw);
    --hero-decor-lead-l: calc(-35 / 1900 * 100vw);
    --hero-decor-trail-l: calc(1798 / 1900 * 100vw);
  }
}
.hero--home + .section,
.hero--home + .section--soft {
  /* секция «Продукт» сразу после hero + шкалы РСТ */
  padding-top: var(--section-y);
  position: relative;
  z-index: 1;
}
/* Первая секция после внутреннего hero — плотнее, чем 80px (Figma / sites24 ~48–64px) */
.hero--about + .section,
.hero--about + .section--soft,
.hero--standardization + .section,
.hero--standardization + .section--soft,
.hero--science + .section,
.hero--science + .section--soft,
.hero--education + .section,
.hero--education + .section--soft,
.hero--education + .section--postgraduate,
.hero--media + .section,
.hero--media + .section--soft,
.hero--certification + .section,
.hero--certification + .section--soft,
.hero--projects + .section,
.hero--projects + .section--soft,
.hero[class*="hero--"]:not(.hero--home):not(.hero--about):not(.hero--standardization):not(.hero--science):not(.hero--education):not(.hero--media):not(.hero--certification):not(.hero--projects) + .section,
.hero[class*="hero--"]:not(.hero--home):not(.hero--about):not(.hero--standardization):not(.hero--science):not(.hero--education):not(.hero--media):not(.hero--certification):not(.hero--projects) + .section--soft,
.hero.hero--subpage + .section--subpage {
  padding-top: var(--section-y-after-hero);
}
.hero.hero--subpage + .section--subpage {
  padding-top: 32px;
}

.btn--pill { border-radius: 999px; padding: 12px 28px; }
.price-card .btn--ghost.btn--pill {
  border-color: var(--c-brand);
  color: var(--c-brand);
}

.hero--banner { padding: 56px 0 64px; }
.hero--banner .hero__lead { max-width: 720px; }

/* Figma Frame 720 — горизонтальные ссылки в полосе hero (внутренние ≥881px) */
/* hero__section-nav убран из разметки */
.hero__section-nav {
  display: none !important;
}
.hero__section-nav-link {
  color: rgba(255, 255, 255, 0.72);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.15s ease;
}
.hero__section-nav-link:hover,
.hero__section-nav-link.is-active {
  color: #fff;
}
.hero__section-nav-link.is-active {
  font-weight: 600;
}
@media (min-width: 1280px) {
  /* Desktop: Frame 720 только в шапке, не в белой полосе strip-hero */
  body:not(.page-home) .hero--strip .hero__section-nav {
    display: none !important;
  }
}
body:not(.page-home) .hero.hero--copy-only .hero__inner {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}
/* Внутренние hero: тёмный фон под фото (::before), без белой «заглушки» */
body:not(.page-home) section.page-hero:not(.hero--strip),
body:not(.page-home) section.hero:not(.hero--home):not(.hero--strip) {
  position: relative;
  z-index: 2;
  isolation: isolate;
  background-color: var(--c-bg-dark);
  overflow: hidden;
}
body:not(.page-home):not(.page-standardization) section.page-hero.hero--standardization {
  background-color: var(--c-bg-dark);
}
body:not(.page-home) section.hero:not(.hero--home) .stat::before {
  content: none !important;
  display: none !important;
}

/* «О нас», «Стандартизация», «Наука», «Обучение», «Пресс-центр»: единый каркас hero (Figma frame-11…14) */
.hero--about,
.hero--standardization,
.hero--science,
.hero--education,
.hero--media,
.hero--certification,
.hero--projects,
.hero[class*="hero--"]:not(.hero--home):not(.hero--about):not(.hero--standardization):not(.hero--science):not(.hero--education):not(.hero--media):not(.hero--certification):not(.hero--projects) {
  padding: clamp(48px, 5vw, 64px) 0 0;
}
.hero--about .hero__eyebrow,
.hero--standardization .breadcrumbs,
.hero--science .breadcrumbs,
.hero--education .breadcrumbs,
.hero--media .breadcrumbs,
.hero--certification .breadcrumbs,
.hero--projects .breadcrumbs,
.hero[class*="hero--"]:not(.hero--home) .breadcrumbs {
  margin-bottom: 16px;
}
.hero--about .hero__title,
.hero--standardization .hero__title,
.hero--science .hero__title,
.hero--education .hero__title,
.hero--media .hero__title,
.hero--certification .hero__title,
.hero--projects .hero__title,
.hero[class*="hero--"]:not(.hero--home) .hero__title {
  font-family: var(--font-heading);
  margin-bottom: 20px;
}
.hero--about .hero__lead,
.hero--standardization .hero__lead,
.hero--science .hero__lead,
.hero--education .hero__lead,
.hero--media .hero__lead,
.hero--certification .hero__lead,
.hero--projects .hero__lead,
.hero[class*="hero--"]:not(.hero--home) .hero__lead {
  font-family: var(--font-body-figma);
  font-weight: 400;
  margin-bottom: 28px;
}
.hero--about .hero__actions,
.hero--standardization .hero__actions,
.hero--science .hero__actions,
.hero--education .hero__actions,
.hero--media .hero__actions,
.hero--certification .hero__actions,
.hero--projects .hero__actions {
  margin-top: 4px;
  gap: 12px;
}
.hero--about::before,
.hero--standardization::before,
.hero--science::before,
.hero--education::before,
.hero--media::before,
.hero--certification::before,
.hero--projects::before,
.hero[class*="hero--"]:not(.hero--home):not(.hero--about):not(.hero--standardization):not(.hero--science):not(.hero--education):not(.hero--media):not(.hero--certification):not(.hero--projects)::before {
  background-image:
    linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
    var(--hero-inner-photo, var(--hero-photo-about));
  background-size: auto, auto, cover;
  background-position: 0 0, 0 0, 76% center;
  background-repeat: no-repeat;
}
.hero--about::before {
  --hero-inner-photo: var(--hero-photo-about);
  /* Figma Rectangle 445 (13189:41465): SOLID #020303 @ 72% поверх фото */
  background-image:
    linear-gradient(rgba(2, 3, 3, 0.72), rgba(2, 3, 3, 0.72)),
    var(--hero-photo-about);
  background-size: auto, cover;
  background-position: 0 0, 42% center;
}
.hero--standardization::before {
  background-image:
    linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
    var(--hero-gradient-standardization);
  background-size: auto, auto, cover;
  background-position: 0 0, 0 0, 68% center;
}
.hero--science::before {
  --hero-inner-photo: var(--hero-photo-science);
  background-image:
    linear-gradient(88deg, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0.48) 28%, rgba(0, 0, 0, 0.28) 54%, rgba(0, 0, 0, 0.16) 78%, rgba(0, 0, 0, 0.10) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.24) 0%, transparent 60%),
    var(--hero-photo-science);
  background-size: auto, auto, cover;
  /* Figma 6_2_Наука_1440: сюжет справа (лаборатория), не кроп с главной */
  background-position: 0 0, 0 0, 72% center;
}
.hero--education::before {
  --hero-inner-photo: var(--hero-photo-education);
  background-image:
    linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
    var(--hero-photo-education);
  background-size: auto, auto, cover;
  /* Figma 2_2_Обучение_1440: фон 12625:13695, портрет — отдельный img */
  background-position: 0 0, 0 0, center center;
}
/* Figma 2_2/2_6_Обучение: цитата Менделеева + портрет, без title/lead/stats */
body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip) {
  padding: 0;
  box-sizing: border-box;
  overflow: visible;
  display: flex;
  flex-direction: column;
}
body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip)::before {
  bottom: 0;
  height: auto;
  /* Figma Rectangle 445 (12625:13697 / 13188:9333): rgba(2,2,3,0.72) */
  background-image:
    linear-gradient(rgba(2, 2, 3, 0.72), rgba(2, 2, 3, 0.72)),
    var(--hero-photo-education);
  background-size: auto, cover;
  background-position: 0 0, center center;
}
.hero--education-quote .hero__inner--quote {
  display: block;
  margin-bottom: 0;
}
.hero--education-quote .hero__quote-layout {
  display: grid;
  gap: 20px 32px;
  /* Figma 1440: портрет и цитата с одного y=280 → start, не end */
  align-items: start;
}
.hero--education-quote .hero__quote-portrait {
  border-radius: 40px;
  overflow: hidden;
  width: min(301px, 42vw);
  max-width: 301px;
  aspect-ratio: 301 / 415;
  margin-inline: 0;
  flex-shrink: 0;
  border: none;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.32);
}
.hero--education-quote .hero__quote-portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}
.hero--education-quote .hero__quote {
  margin: 0;
  color: #fff;
  border-left: none;
  padding-left: 0;
  font-style: normal;
  font-size: inherit;
  line-height: inherit;
}
.hero--education-quote .hero__quote-text {
  margin: 0;
  font-family: var(--font);
  font-size: 20px;
  font-weight: 800;
  font-style: italic;
  line-height: 1.35;
  color: #fff;
}
.hero--education-quote .hero__quote-cite {
  display: block;
  margin-top: 26px;
  font-family: var(--font);
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.16px;
  line-height: 1.35;
  color: #fff;
  text-transform: none;
}
/* Figma 2_6/2_5/2_2/2_1: «Дополнительное профессиональное образование» (12625:9730 / 11829 / 13993) */
#dpo .section-title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  max-width: min(485px, 100%);
  text-wrap: balance;
}
@media (min-width: 1280px) {
  #dpo .section-title {
    font-size: 28px;
    max-width: min(566px, 100%);
  }
}
@media (min-width: 1920px) {
  #dpo .section-title {
    font-size: 32px;
    max-width: min(646px, 100%);
  }
}
@media (max-width: 599px) {
  #dpo .section-header {
    justify-content: center;
  }
  #dpo .section-title {
    text-align: center;
    margin-inline: auto;
    max-width: min(328px, 100%);
  }
}
/* Figma 2_6/2_5/2_2: #dpo — ДПО (Rectangle 448 + «Доп обр» 378×404) */
#dpo.section--soft {
  background: #f5f5f5;
}
#dpo {
  padding-top: clamp(40px, 5vw, 70px);
  padding-bottom: clamp(48px, 6vw, 80px);
}
#dpo .section-header--dpo {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px 24px;
  margin-bottom: clamp(28px, 5vw, 70px);
}
#dpo .dpo-head-badge {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
  max-width: 149px;
}
#dpo .dpo-head-badge__text {
  display: block;
}
#dpo .dpo-head-badge__icon {
  display: block;
  width: 45px;
  height: 45px;
  flex-shrink: 0;
}
#dpo .dpo-head-badge__icon img {
  width: 45px;
  height: 45px;
  object-fit: contain;
  display: block;
}
/* Figma: красная линия 4px на каждой карточке (Rectangle 437), не на всём ряду */
#dpo .dpo-showcase-shell {
  position: relative;
}
#dpo .dpo-showcase {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(10px, 2.5vw, 33px);
  align-items: stretch;
}
#dpo .dpo-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  min-height: clamp(280px, 42vw, 404px);
  padding: 25px;
  background: #fff;
  border: none;
  border-radius: 0;
  text-decoration: none;
  color: inherit;
  box-shadow: none;
  transition: box-shadow 0.2s;
}
#dpo .dpo-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: #ed1a34;
}
#dpo .dpo-card:hover {
  box-shadow: 0 8px 28px rgba(20, 33, 61, 0.1);
  transform: none;
}
#dpo .dpo-card__media {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 296px;
  max-width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
#dpo .dpo-card--1 .dpo-card__media {
  height: 264px;
}
#dpo .dpo-card--2 .dpo-card__media {
  height: 261px;
}
#dpo .dpo-card--3 .dpo-card__media {
  height: 255px;
}
#dpo .dpo-card__media img {
  width: 100%;
  height: auto;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center top;
  display: block;
}
#dpo .dpo-card--1 .dpo-card__media img {
  height: 112.12%;
  margin-top: -5.68%;
}
#dpo .dpo-card--2 .dpo-card__media img {
  height: 113.41%;
  margin-top: -7.66%;
}
#dpo .dpo-card--3 .dpo-card__media img {
  height: 116.08%;
  margin-top: -7.06%;
}
#dpo .dpo-card__title {
  margin: 0;
  padding: 0;
  font-size: clamp(18px, 2vw, 20px);
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  color: #020203;
}
#dpo .dpo-card__desc,
#dpo .dpo-card__cta {
  display: none;
}
@media (max-width: 599px) {
  #dpo .section-header--dpo {
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 24px;
  }
  #dpo .dpo-head-badge {
    justify-content: center;
    max-width: none;
  }
  #dpo .dpo-showcase {
    grid-template-columns: 1fr;
    gap: 24px;
    max-width: min(345px, 100%);
    margin-inline: auto;
  }
  #dpo .dpo-card {
    flex-direction: row;
    align-items: center;
    min-height: 0;
    padding: 0;
    gap: 0;
  }
  #dpo .dpo-card__media,
  #dpo .dpo-card--1 .dpo-card__media,
  #dpo .dpo-card--2 .dpo-card__media,
  #dpo .dpo-card--3 .dpo-card__media {
    flex: 0 0 110px;
    width: 110px;
    height: auto;
    min-height: 0;
    padding: 15px 10px;
    overflow: visible;
  }
  #dpo .dpo-card__media img,
  #dpo .dpo-card--1 .dpo-card__media img,
  #dpo .dpo-card--2 .dpo-card__media img,
  #dpo .dpo-card--3 .dpo-card__media img {
    width: auto;
    height: auto;
    max-width: 110px;
    max-height: 110px;
    margin-top: 0;
    object-fit: contain;
    object-position: center;
  }
  #dpo .dpo-card__title {
    flex: 1;
    padding: 15px 15px 15px 0;
    font-size: clamp(16px, 4.5vw, 20px);
    line-height: 1.3;
    text-align: left;
  }
}
@media (min-width: 1280px) {
  #dpo .dpo-showcase {
    gap: 33px;
  }
  #dpo .dpo-card {
    min-height: 404px;
  }
  #dpo .dpo-card__title {
    font-size: 20px;
  }
}
/* Figma 2_6/2_5/2_2: блок «Аспирантура» */
.section--postgraduate {
  padding-top: 28px;
  padding-bottom: 48px;
  background: #fff;
}
.postgraduate-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px 24px;
  margin-bottom: 20px;
}
.postgraduate-head__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 24px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
.postgraduate-head__license {
  display: none;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  max-width: 351px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}
.postgraduate-head__license-icon {
  flex-shrink: 0;
  width: 45px;
  height: 45px;
}
.postgraduate-head__license-icon img {
  display: block;
  width: 45px;
  height: 45px;
  object-fit: contain;
}
.postgraduate-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  align-items: start;
}
.edu-program-cards {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.section--postgraduate .edu-program-card {
  display: block;
  padding: 20px 25px;
  background: #fff;
  border: none;
  border-radius: 50px;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  font-family: var(--font-ui);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
  text-decoration: none;
  transition: box-shadow 0.2s;
}
.section--postgraduate .edu-program-card:hover {
  box-shadow: 0 0 16px rgba(57, 59, 65, 0.16);
}
.section--postgraduate .edu-program-card--short {
  min-height: 60px;
  display: flex;
  align-items: center;
}
.postgraduate-aside__panel {
  padding: 16px 12px 20px;
  background: #f5f5f5;
  border-radius: 0;
}
.postgraduate-aside__panel .education-highlights__grid {
  margin-bottom: 0;
}
.postgraduate-aside__actions {
  justify-content: flex-start;
  margin-top: 16px;
  gap: 16px;
}
.postgraduate-aside__actions .btn--ghost {
  background: #fff;
  border: 1px solid #08c;
  color: #08c;
}
.postgraduate-features {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin-top: 28px;
}
.postgraduate-feature {
  margin: 0;
  padding: 25px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}
.postgraduate-feature__title {
  margin: 0 0 15px;
  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  color: #020203;
}
.postgraduate-feature__text {
  margin: 0;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}
.postgraduate-feature__link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 15px;
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #686a73;
  text-decoration: none;
  transition: color 0.2s;
}
.postgraduate-feature__link-arrow {
  display: block;
  width: 5px;
  height: 6px;
  flex-shrink: 0;
  object-fit: contain;
}
.postgraduate-feature__link:hover {
  color: var(--c-brand);
}
.education-highlights__grid {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px 24px;
}
.education-highlights__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  min-height: 118px;
  padding: 12px 8px;
}
.education-highlights__icon {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: var(--c-brand-light) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23002864' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E") center/28px no-repeat;
}
.education-highlights__icon--seats {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23002864' stroke-width='1.5'%3E%3Cpath d='M4 18v2h16v-2M6 10V6a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v4'/%3E%3C/svg%3E");
}
.education-highlights__icon--term {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23002864' stroke-width='1.5'%3E%3Cpath d='M4 19h16M8 17V7M16 17V7'/%3E%3C/svg%3E");
}
.education-highlights__label {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  color: var(--c-text);
  max-width: 130px;
}
/* Figma Frame 727 (12625:13909 @1440, 12625:12837 @1280, 13188:9340 @1900) */
.section--postgraduate .education-highlights__grid {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  max-width: 468px;
  min-height: 123px;
  margin: 0;
  padding: 0;
  gap: 0;
}
.section--postgraduate .education-highlights__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 15px;
  min-height: 0;
  padding: 0;
}
.section--postgraduate .education-highlights__item:nth-child(1) {
  width: 132px;
  max-width: 132px;
}
.section--postgraduate .education-highlights__item:nth-child(2) {
  width: 100px;
  max-width: 100px;
}
.section--postgraduate .education-highlights__item--term {
  width: 130px;
  max-width: 130px;
  align-self: stretch;
  justify-content: flex-end;
  gap: 17px;
}
.section--postgraduate .education-highlights__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: auto;
  min-width: 0;
  border-radius: 0;
  background: none;
}
.section--postgraduate .education-highlights__icon img {
  display: block;
  width: auto;
  height: auto;
  max-width: none;
  object-fit: contain;
  flex-shrink: 0;
}
.section--postgraduate .education-highlights__icon--time img {
  height: 80px;
  width: auto;
}
.section--postgraduate .education-highlights__icon--seats img {
  height: 80px;
  width: auto;
}
.section--postgraduate .education-highlights__icon--term img {
  height: 70px;
  width: auto;
}
.section--postgraduate .education-highlights__label {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.14px;
  color: #020203;
  max-width: none;
}
.section--postgraduate .education-highlights__label--multiline {
  display: flex;
  flex-direction: column;
  gap: 0;
}
@media (max-width: 767px) {
  .postgraduate-head {
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 110px;
  }
  .postgraduate-head__title {
    width: 100%;
    text-align: center;
    font-size: 24px;
  }
  .postgraduate-layout {
    gap: 10px;
  }
  .postgraduate-aside__panel {
    padding: 20px 12px;
    min-height: 163px;
    box-sizing: border-box;
  }
  .postgraduate-aside__actions {
    flex-direction: column;
    align-items: center;
    gap: 18px;
    margin-top: 18px;
  }
  .postgraduate-aside__actions .btn {
    width: min(319px, 100%);
    justify-content: center;
    min-height: 47px;
    padding: 15px 40px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 50px;
  }
  .postgraduate-aside__actions .btn--primary {
    width: min(186px, 100%);
  }
  .postgraduate-features {
    margin-top: 35px;
    gap: 31px;
  }
  .section--postgraduate .education-highlights__grid {
    max-width: 342px;
    margin-inline: auto;
  }
  .section--postgraduate .education-highlights__item:nth-child(1),
  .section--postgraduate .education-highlights__item:nth-child(2),
  .section--postgraduate .education-highlights__item--term {
    width: 100px;
    max-width: 100px;
  }
  .section--postgraduate .education-highlights__icon--time img {
    height: 57px;
    width: auto;
  }
  .section--postgraduate .education-highlights__icon--seats img {
    height: 57px;
    width: 50px;
  }
  .section--postgraduate .education-highlights__icon--term img {
    height: 49.77px;
    width: 49.875px;
  }
  .section--postgraduate .education-highlights__item:nth-child(1) .education-highlights__label {
    max-width: 88px;
  }
  .section--postgraduate .education-highlights__item:nth-child(2) .education-highlights__label {
    max-width: 100px;
  }
  .section--postgraduate .education-highlights__item--term .education-highlights__label {
    max-width: 94px;
  }
}
@media (min-width: 768px) {
  .postgraduate-head__license {
    display: flex;
  }
  .postgraduate-head {
    margin-bottom: 35px;
  }
  .postgraduate-head__title {
    font-size: 24px;
    text-align: left;
  }
  .postgraduate-layout {
    grid-template-columns: minmax(0, 343px) minmax(280px, 1fr);
    gap: 59px 32px;
  }
  .postgraduate-aside__panel {
    padding: 20px 12px;
    min-height: 163px;
    box-sizing: border-box;
  }
  .postgraduate-aside__actions {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
    margin-top: 35px;
  }
  .postgraduate-aside__actions .btn {
    min-height: 47px;
    padding: 15px 40px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 50px;
  }
  .postgraduate-aside__actions .btn--primary {
    width: 186px;
    max-width: 100%;
    justify-content: center;
  }
  .postgraduate-aside__actions .btn--ghost {
    width: 319px;
    max-width: 100%;
    justify-content: center;
  }
  .postgraduate-features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 31px;
    margin-top: 52px;
  }
  .section--postgraduate .education-highlights__grid {
    max-width: 342px;
  }
  .section--postgraduate .education-highlights__item:nth-child(1),
  .section--postgraduate .education-highlights__item:nth-child(2),
  .section--postgraduate .education-highlights__item--term {
    width: 100px;
    max-width: 100px;
  }
  .section--postgraduate .education-highlights__icon--time img {
    height: 57px;
    width: auto;
  }
  .section--postgraduate .education-highlights__icon--seats img {
    height: 57px;
    width: 50px;
  }
  .section--postgraduate .education-highlights__icon--term img {
    height: 49.77px;
    width: 49.875px;
  }
  .section--postgraduate .education-highlights__item:nth-child(1) .education-highlights__label {
    max-width: 88px;
  }
  .section--postgraduate .education-highlights__item:nth-child(2) .education-highlights__label {
    max-width: 100px;
  }
  .section--postgraduate .education-highlights__item--term .education-highlights__label {
    max-width: 94px;
  }
}
@media (min-width: 1280px) {
  .section--postgraduate {
    padding-top: 40px;
    padding-bottom: 56px;
  }
  .postgraduate-head {
    margin-bottom: 70px;
  }
  .postgraduate-head__title {
    font-size: 28px;
  }
  .postgraduate-layout {
    grid-template-columns: minmax(0, 600px) minmax(320px, 551px);
    gap: 51px;
  }
  .postgraduate-aside__panel {
    min-height: 241px;
    padding: 56px 42px 0;
  }
  .postgraduate-aside__actions {
    flex-direction: row;
    flex-wrap: nowrap;
    margin-top: 60px;
    gap: 44px;
  }
  .postgraduate-aside__actions .btn--primary,
  .postgraduate-aside__actions .btn--ghost {
    width: auto;
  }
  .postgraduate-features {
    gap: 52px;
    margin-top: 72px;
    grid-template-columns: repeat(2, minmax(0, 575px));
  }
  .section--postgraduate .education-highlights__grid {
    max-width: 468px;
  }
  .section--postgraduate .education-highlights__item:nth-child(1) {
    width: 132px;
    max-width: 132px;
  }
  .section--postgraduate .education-highlights__item:nth-child(2) {
    width: 100px;
    max-width: 100px;
  }
  .section--postgraduate .education-highlights__item--term {
    width: 130px;
    max-width: 130px;
  }
  .section--postgraduate .education-highlights__icon--time img {
    height: 80px;
    width: auto;
  }
  .section--postgraduate .education-highlights__icon--seats img {
    height: 80px;
    width: auto;
  }
  .section--postgraduate .education-highlights__icon--term img {
    height: 70px;
    width: auto;
  }
  .section--postgraduate .education-highlights__item:nth-child(1) .education-highlights__label,
  .section--postgraduate .education-highlights__item:nth-child(2) .education-highlights__label,
  .section--postgraduate .education-highlights__item--term .education-highlights__label {
    max-width: none;
  }
}
@media (max-width: 767px) {
  body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip) {
    /* Figma 2_6_Обучение_375: фон 763px + РСТ_шкала 20px */
    --hero-decor-h: 20px;
    --hero-decor-tile-w: calc(1159.854 / 375 * 100vw);
    --hero-decor-lead-l: calc(-784 / 375 * 100vw);
    --hero-decor-trail-l: calc(373.246 / 375 * 100vw);
    min-height: var(--hero-h-education-375);
    padding-top: calc(100vw * 46 / 375);
    padding-bottom: calc(100vw * 42 / 375);
    box-sizing: border-box;
  }
  body.page-education .hero--education-quote > .container {
    /* Figma: портрет x=31 @375 */
    padding-inline: calc(100vw * 31 / 375);
  }
  body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip)::before {
    bottom: 0;
    background-image:
      linear-gradient(rgba(2, 2, 3, 0.72), rgba(2, 2, 3, 0.72)),
      var(--hero-photo-education-mobile);
    background-size: auto, cover;
    background-position: 0 0, center top;
  }
  .hero--education-quote .hero__quote-layout {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
    gap: calc(100vw * 45 / 375);
    align-items: start;
  }
  .hero--education-quote .hero__quote-portrait {
    width: min(312px, calc(100vw - 62px));
    max-width: 312px;
    aspect-ratio: 1 / 1;
    border-radius: 40px;
  }
  .hero--education-quote .hero__quote {
    width: min(312px, calc(100vw - 62px));
    max-width: 312px;
    margin-inline: auto;
    text-align: center;
  }
  .hero--education-quote .hero__quote-text {
    max-width: 100%;
    width: 100%;
    margin-inline: auto;
    font-size: 20px;
    text-align: center;
  }
  .hero--education-quote .hero__quote-cite {
    margin-top: calc(100vw * 44 / 375);
    font-size: 16px;
    letter-spacing: 0.16px;
  }
}
@media (max-width: 880px) {
  .education-highlights__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }
  .education-highlights__label {
    font-size: 12px;
  }
}
body.page-education .hero--education-quote .hero__section-nav {
  display: none !important;
}

@media (min-width: 768px) and (max-width: 1279px) {
  body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip) {
    /* Figma 2_5_Обучение_800: hero 383px + РСТ_шкала 20px */
    --hero-decor-h: 20px;
    --hero-decor-tile-w: calc(1159.854 / 800 * 100vw);
    --hero-decor-lead-l: calc(-409 / 800 * 100vw);
    --hero-decor-trail-l: calc(748.246 / 800 * 100vw);
    min-height: var(--hero-h-education-800);
    padding-top: calc(100vw * 33 / 800);
    padding-bottom: calc(100vw * 17 / 800);
    box-sizing: border-box;
  }
  body.page-education .hero--education-quote > .container {
    /* Figma: портрет x=27 @800 */
    padding-inline: calc(100vw * 27 / 800);
  }
  body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip)::before {
    bottom: 0;
    background-image:
      linear-gradient(rgba(2, 2, 3, 0.72), rgba(2, 2, 3, 0.72)),
      var(--hero-photo-education);
    background-size: auto, cover;
    background-position: 0 0, center center;
  }
  body.page-education .hero--education-quote .hero__quote-layout {
    grid-template-columns: calc(100vw * 227 / 800) minmax(0, 1fr);
    align-items: start;
    gap: calc(100vw * 55 / 800);
    text-align: left;
  }
  body.page-education .hero--education-quote .hero__quote-portrait {
    width: calc(100vw * 227 / 800);
    max-width: 227px;
    aspect-ratio: 227 / 313;
    border-radius: 40px;
  }
  body.page-education .hero--education-quote .hero__quote {
    /* Figma: цитата y=121, портрет y=82 → +39px */
    margin-top: calc(100vw * 39 / 800);
  }
  body.page-education .hero--education-quote .hero__quote-text {
    max-width: calc(100vw * 460 / 800);
    font-size: 20px;
  }
  body.page-education .hero--education-quote .hero__quote-cite {
    margin-top: calc(100vw * 26 / 800);
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.16px;
  }
}
@media (min-width: 881px) {
  .hero--education-quote .hero__quote-layout {
    grid-template-columns: minmax(220px, 340px) minmax(0, 1fr);
    align-items: start;
    text-align: left;
  }
  .hero--education-quote .hero__quote-portrait {
    margin-inline: 0;
  }
}
@media (min-width: 1280px) and (max-width: 1899px) {
  body.page-education .hero--education-quote > .container {
    /* Figma 1440: gutter 120 */
    max-width: 1440px;
    padding-inline: calc(100vw * 120 / 1440);
  }
  body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip) {
    /* Figma 2_2_Обучение_1440: портрет y=280 → padding-top 124px; РСТ_шкала 27.6px */
    min-height: var(--hero-h-education-1440);
    padding-top: 124px;
    padding-bottom: calc(var(--hero-h-education-1440) - 124px - 415px - var(--hero-decor-h));
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip)::before {
    bottom: 0;
    /* Figma 12625:13695 — 1440×669 от y=156 */
    background-size: auto, 1440px 669px;
    background-position: 0 0, center center;
  }
  .hero--education-quote .hero__quote-layout {
    grid-template-columns: 301px minmax(0, 1fr);
    align-items: start;
    gap: 83px;
  }
  .hero--education-quote .hero__quote-portrait {
    width: 301px;
    max-width: 301px;
    aspect-ratio: 301 / 415;
    border-radius: 40px;
    /* Figma: x=119 при gutter 120 */
    margin-inline-start: -1px;
  }
  .hero--education-quote .hero__quote-text {
    max-width: 817px;
    font-size: 36px;
    font-weight: 800;
    font-style: italic;
    line-height: 1.35;
  }
  .hero--education-quote .hero__quote-cite {
    margin-top: 46px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.2px;
    line-height: 1.35;
    color: #fff;
  }
}
@media (min-width: 1440px) and (max-width: 1899px) {
  /* Figma 2_2_Обучение_1440 (12625:13692) — «Аспирантура» */
  body.page-education {
    --container: 1440px;
    --gutter: 120px;
  }
  body.page-education .section--postgraduate {
    padding-top: 40px;
    padding-bottom: 56px;
  }
  body.page-education .postgraduate-head {
    margin-bottom: 70px;
    align-items: flex-start;
  }
  body.page-education .postgraduate-head__title {
    font-family: var(--font-heading);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }
  body.page-education .postgraduate-head__license {
    font-family: var(--font-body-figma);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    max-width: 351px;
  }
  body.page-education .postgraduate-head__license-icon {
    width: 45px;
    height: 45px;
  }
  body.page-education .postgraduate-layout {
    grid-template-columns: 600px 551px;
    gap: 51px;
    align-items: start;
  }
  body.page-education .edu-program-cards {
    gap: 10px;
  }
  body.page-education .section--postgraduate .edu-program-card {
    font-family: var(--font-ui);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    color: #020203;
    padding: 20px 25px;
    border-radius: 50px;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }
  body.page-education .postgraduate-aside__panel {
    min-height: 241px;
    padding: 56px 42px 0;
    background: #f5f5f5;
    box-sizing: border-box;
  }
  body.page-education .section--postgraduate .education-highlights__grid {
    max-width: 468px;
  }
  body.page-education .section--postgraduate .education-highlights__label {
    font-family: var(--font-ui);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0.14px;
    color: #020203;
    max-width: none;
  }
  body.page-education .postgraduate-aside__actions {
    flex-direction: row;
    flex-wrap: nowrap;
    margin-top: 60px;
    gap: 44px;
  }
  body.page-education .postgraduate-aside__actions .btn {
    min-height: 47px;
    padding: 15px 40px;
    font-family: var(--font-ui);
    font-size: 14px;
    font-weight: 500;
    border-radius: 50px;
  }
  body.page-education .postgraduate-aside__actions .btn--ghost {
    border-width: 1px;
    border-color: #08c;
    color: #08c;
  }
  body.page-education .postgraduate-features {
    margin-top: 72px;
    gap: 52px;
    grid-template-columns: 575px 575px;
  }
  body.page-education .postgraduate-feature {
    min-height: 289px;
    padding: 25px;
    box-sizing: border-box;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }
  body.page-education .postgraduate-feature__title {
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 15px;
    color: #020203;
  }
  body.page-education .postgraduate-feature__text {
    font-family: var(--font-body-figma);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
  }
  body.page-education .postgraduate-feature__link {
    font-family: var(--font-ui);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    color: #686a73;
    margin-top: 15px;
  }
}

/* Figma 2_1_Обучение_1900 (13188:9111): hero 893px, цитата 36px, портрет 401×553, без РСТ_шкала */
@media (min-width: 1900px) {
  body.page-education {
    --container: 1920px;
    --gutter: 120px;
  }
  body.page-education .container {
    max-width: var(--container);
    margin-inline: auto;
  }
  body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip) {
    min-height: var(--hero-h-education-1900);
    padding-top: 170px;
    padding-bottom: 170px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip) .hero-decor {
    display: none !important;
  }
  body:not(.page-home) .hero--education.hero--education-quote:not(.hero--strip)::before {
    bottom: 0;
    background-size: auto, cover;
    background-position: 0 0, center center;
  }
  body.page-education .hero--education-quote .hero__inner--quote {
    margin-inline-start: 149px;
    margin-inline-end: 0;
  }
  body.page-education .hero--education-quote .hero__quote-layout {
    grid-template-columns: 401px minmax(0, 1fr);
    align-items: start;
    gap: 165px;
  }
  body.page-education .hero--education-quote .hero__quote-portrait {
    width: 401px;
    max-width: 401px;
    aspect-ratio: 401 / 553;
    border-radius: 40px;
  }
  body.page-education .hero--education-quote .hero__quote-text {
    max-width: 817px;
    font-size: 36px;
    font-weight: 800;
    font-style: italic;
    line-height: 1.35;
  }
  body.page-education .hero--education-quote .hero__quote-cite {
    margin-top: 46px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.2px;
    line-height: 1.35;
    color: #fff;
  }

  /* Figma 13188:9339+ — «Аспирантура» @1900 */
  body.page-education .section--postgraduate {
    padding-top: 60px;
    padding-bottom: 56px;
  }
  body.page-education .postgraduate-head {
    margin-bottom: 65px;
    align-items: flex-start;
  }
  body.page-education .postgraduate-head__title {
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
  }
  body.page-education .postgraduate-head__license {
    font-size: 16px;
    line-height: 1.3;
    max-width: 351px;
  }
  body.page-education .postgraduate-head__license-icon {
    width: 45px;
    height: 45px;
  }
  body.page-education .postgraduate-layout {
    grid-template-columns: 803px 803px;
    gap: 73px;
  }
  body.page-education .edu-program-cards {
    gap: 30px;
  }
  body.page-education .postgraduate-aside__panel {
    min-height: 241px;
    padding: 56px 79px 0;
  }
  body.page-education .section--postgraduate .education-highlights__grid {
    max-width: 645px;
  }
  body.page-education .section--postgraduate .education-highlights__label {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
    max-width: none;
  }
  body.page-education .postgraduate-aside__actions {
    flex-direction: row;
    flex-wrap: nowrap;
    margin-top: 60px;
    gap: 44px;
  }
  body.page-education .postgraduate-features {
    margin-top: 70px;
    gap: 73px;
    grid-template-columns: 803px 803px;
  }
  body.page-education .postgraduate-feature {
    min-height: 226px;
    box-sizing: border-box;
  }
  body.page-education .postgraduate-feature__title {
    font-size: 20px;
    margin-bottom: 15px;
  }

  /* Figma 13188:9381+ — ДПО @1900 */
  body.page-education #dpo {
    padding-top: 70px;
    padding-bottom: 69px;
  }
  body.page-education #dpo.section--soft {
    background: #f5f5f5;
  }
  body.page-education #dpo .section-header--dpo {
    max-width: 1400px;
    margin-inline: auto;
    margin-bottom: 60px;
  }
  body.page-education #dpo .section-title {
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    max-width: 646px;
    color: #020203;
  }
  body.page-education #dpo .dpo-head-badge {
    font-size: 16px;
    line-height: 1.3;
    max-width: 149px;
  }
  body.page-education #dpo .dpo-showcase-shell {
    max-width: 1400px;
    margin-inline: auto;
    padding-inline: 0;
  }
  body.page-education #dpo .dpo-showcase {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 133px;
    justify-content: center;
    overflow: visible;
    flex-wrap: unset;
  }
  body.page-education #dpo .dpo-card {
    width: 378px;
    min-height: 404px;
    height: auto;
    padding: 25px;
    gap: 15px;
    flex-direction: column;
    align-items: center;
    scroll-snap-align: unset;
    flex: unset;
  }
  body.page-education #dpo .dpo-card__title {
    font-size: 20px;
    line-height: 1.3;
    padding: 0;
  }

  /* Figma 13188:9337+ — Экосистема ARM @1900 */
  body.page-education #arm {
    padding-top: 8px;
    padding-bottom: 70px;
  }
  body.page-education #arm .edu-arm-layout {
    max-width: 1440px;
    margin-inline: auto;
    grid-template-columns: 484px 861px;
    gap: 95px;
    align-items: center;
  }
  body.page-education #arm .edu-arm-layout__art img {
    width: 484px;
    max-width: 484px;
  }
  body.page-education #arm .edu-arm-layout__title {
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    max-width: 634px;
    margin-bottom: 25px;
    color: #020203;
  }
  body.page-education #arm .edu-arm-layout__copy p {
    font-family: var(--font-body-figma);
    font-size: 16px;
    line-height: 1.3;
    max-width: 861px;
    color: #020203;
  }
  body.page-education #arm .edu-arm-layout__copy p:last-of-type {
    margin-bottom: 53px;
  }
  body.page-education #arm .edu-arm-layout__cta {
    min-width: 298px;
    margin-top: 0;
  }
}

@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-education {
    --container: 1280px;
    --gutter: 39px;
  }
  body.page-education .postgraduate-layout {
    grid-template-columns: 600px 551px;
    gap: 51px;
  }
  body.page-education .postgraduate-aside__panel {
    min-height: 241px;
    padding: 56px 42px 0;
  }
  body.page-education .section--postgraduate .education-highlights__grid {
    max-width: 468px;
  }
}

@media (max-width: 600px) {
  .section--postgraduate .education-highlights__grid {
    max-width: 100%;
    min-height: 0;
  }
  .section--postgraduate .education-highlights__item,
  .section--postgraduate .education-highlights__item--term {
    width: auto;
    max-width: none;
    align-self: auto;
    justify-content: flex-start;
    gap: 8px;
  }
  .section--postgraduate .education-highlights__label {
    font-size: 11px;
  }
  .section--postgraduate .education-highlights__icon--time img {
    height: 56px;
    width: auto;
  }
  .section--postgraduate .education-highlights__icon--seats img {
    height: 55px;
    width: auto;
  }
  .section--postgraduate .education-highlights__icon--term img {
    height: 48px;
    width: auto;
  }
}
.hero--certification::before {
  --hero-inner-photo: var(--hero-photo-certification);
  background-image:
    linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
    var(--hero-gradient-certification);
  background-size: auto, auto, cover;
  background-position: 0 0, 0 0, center;
}
/* Figma 1_6/1_2_Сертификация: title 12625:10185 (24px) / 14554 (28px) / 9177 (32px) */
.hero--certification .hero__title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  max-width: min(345px, 100%);
  margin-bottom: 10px;
  color: #fff;
}
.hero--certification .hero__lead {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  color: rgba(255, 255, 255, 0.88);
  max-width: min(343px, 100%);
  margin-bottom: 20px;
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
  line-clamp: unset;
}
@media (min-width: 1024px) {
  .hero--certification .hero__title {
    font-size: 28px;
    max-width: min(425px, 100%);
  }
  .hero--certification .hero__lead {
    font-size: 16px;
    line-height: 1.55;
    max-width: min(560px, 100%);
    margin-bottom: 24px;
  }
}
@media (min-width: 1920px) {
  .hero--certification .hero__title {
    font-size: 32px;
    max-width: min(485px, 100%);
  }
}
.hero--projects::before {
  --hero-inner-photo: var(--hero-photo-projects);
  background-image:
    linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
    var(--hero-gradient-projects);
  background-size: auto, auto, cover;
  background-position: 0 0, 0 0, center;
}
/* Figma 7_2_Проекты_1440: белый hero, заголовок + крошки, без фото/stats/decor */
body:not(.page-home) .hero--projects.hero--strip {
  background: #f5f5f5;
  background-color: #f5f5f5;
  min-height: 0;
  padding: 0;
  box-sizing: border-box;
}
body:not(.page-home) .hero--projects.hero--strip::before,
body:not(.page-home) .hero--projects.hero--strip::after {
  display: none;
}
body:not(.page-home) .hero--projects.hero--strip .hero-decor {
  display: none;
}
body:not(.page-home) .hero--projects.hero--strip .hero__inner {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  margin-bottom: 0;
  padding-top: clamp(24px, 2.8vw, 36px);
  padding-bottom: clamp(16px, 2vw, 24px);
}
body:not(.page-home) .hero--projects.hero--strip .hero__title {
  color: var(--c-text);
  font-size: clamp(32px, 3.2vw, 44px);
  line-height: 1.1;
  margin-bottom: 8px;
  max-width: none;
}
body:not(.page-home) .hero--projects.hero--strip .breadcrumbs {
  margin-bottom: 0;
  font-size: 14px;
  color: var(--c-muted);
}
body:not(.page-home) .hero--projects.hero--strip .breadcrumbs a {
  color: var(--c-muted);
}
body:not(.page-home) .hero--projects.hero--strip .breadcrumbs a:hover {
  color: var(--c-brand);
}
body:not(.page-home) .hero--projects.hero--strip .breadcrumbs--pipe .breadcrumbs__sep {
  margin: 0 6px;
  opacity: 0.55;
}
body:not(.page-home) .hero--projects.hero--strip .breadcrumbs span + span::before {
  content: none;
}
body:not(.page-home) .hero--projects.hero--strip .hero__section-nav-link {
  color: var(--c-muted);
}
body:not(.page-home) .hero--projects.hero--strip .hero__section-nav-link:hover,
body:not(.page-home) .hero--projects.hero--strip .hero__section-nav-link.is-active {
  color: var(--c-brand);
}
/* Figma 5_*_Стандартизация: фото + заголовок + «Главная | …» (как О нас / Наука) */
body:not(.page-home) .hero--standardization .hero__inner {
  margin-bottom: 0;
}
body:not(.page-home) .hero--standardization .hero__title {
  font-size: clamp(26px, 5.2vw, 44px);
  line-height: 1.12;
  margin-bottom: 8px;
  max-width: none;
}
body:not(.page-home) .hero--standardization .breadcrumbs {
  margin-bottom: 0;
  font-size: 14px;
}
body:not(.page-home) .hero--standardization .breadcrumbs--pipe .breadcrumbs__sep {
  margin: 0 6px;
  opacity: 0.55;
}
body:not(.page-home) .hero--standardization .breadcrumbs span + span::before {
  content: none;
}
.hero--media::before {
  --hero-inner-photo: var(--hero-photo-media);
  /* Figma Rectangle 445 (как about): #020303 @ 72% поверх фото */
  background-image:
    linear-gradient(rgba(2, 3, 3, 0.72), rgba(2, 3, 3, 0.72)),
    var(--hero-photo-media);
  background-size: auto, cover;
  /* Figma 4_2/4_6_Медиа: микрофон справа (13189:40909 / 22220) */
  background-position: 0 0, 72% center;
}
.hero--media .hero__lead {
  max-width: 498px;
}
.hero--media .hero__actions {
  flex-wrap: wrap;
  gap: 12px;
}
.hero--media .hero__actions .btn {
  min-height: 50px;
  padding-inline: clamp(24px, 3vw, 40px);
  border-radius: 50px;
  font-size: 14px;
  font-weight: 500;
}
/* Внутренние: полоса РСТ только на фото-hero (Figma Group 52 / РСТ_шкала) */
body:not(.page-home) .hero-decor {
  display: none;
}
body:not(.page-home):not(.page-standardization) .hero--standardization:not(.hero--strip) .hero-decor,
body:not(.page-home) .hero--about:not(.hero--strip) .hero-decor,
body:not(.page-home) .hero--science:not(.hero--strip) .hero-decor,
body:not(.page-home) .hero--media:not(.hero--strip) .hero-decor,
body:not(.page-home) .hero--education:not(.hero--strip) .hero-decor,
body:not(.page-home) .hero--certification:not(.hero--strip) .hero-decor {
  display: block;
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 100vw;
  max-width: none;
  margin: 0;
  transform: translateX(-50%);
  z-index: 5;
  background: transparent;
}
body:not(.page-home) .hero--about:not(.hero--strip) .hero-decor__bars {
  height: var(--hero-decor-h);
  object-fit: fill;
}
body:not(.page-home) .hero--about:not(.hero--strip) {
  overflow: visible;
  display: flex;
  flex-direction: column;
}
body:not(.page-home) .hero--about:not(.hero--strip) .container,
body:not(.page-home) .hero--standardization:not(.hero--strip) .container,
body:not(.page-home) .hero--science:not(.hero--strip) .container,
body:not(.page-home) .hero--media:not(.hero--strip) .container,
body:not(.page-home) .hero--education:not(.hero--strip) .container,
body:not(.page-home) .hero--certification:not(.hero--strip) .container {
  position: relative;
  z-index: 4;
}
body:not(.page-home) .hero--about:not(.hero--strip) .hero__section-nav,
body:not(.page-home) .hero--about:not(.hero--strip) .hero__inner {
  position: relative;
  z-index: 6;
}
/* Полоса/подстраница — компактный hero; фото-L1 задают min-height в брейкпоинтах ниже */
body:not(.page-home) .hero--strip,
body:not(.page-home) .hero--subpage:not(.hero--about):not(.hero--science):not(.hero--media):not(.hero--education):not(.hero--standardization) {
  min-height: 0;
  padding-bottom: 0;
}
body:not(.page-home) .hero--about:not(.hero--strip)::before,
body:not(.page-home) .hero--standardization:not(.hero--strip)::before,
body:not(.page-home) .hero--science:not(.hero--strip)::before,
body:not(.page-home) .hero--education:not(.hero--strip)::before,
body:not(.page-home) .hero--media:not(.hero--strip)::before,
body:not(.page-home) .hero--certification:not(.hero--strip)::before,
body:not(.page-home) .hero--projects:not(.hero--strip)::before {
  /* Фото до низа hero; шкала РСТ — поверх (::after не используем) */
  bottom: 0;
  height: auto;
}
body:not(.page-home) .hero--standardization::before {
  background-position: center;
}
body:not(.page-home) .hero--certification:not(.hero--strip)::before,
body:not(.page-home) .hero--projects:not(.hero--strip)::before {
  background-position: 68% 32%;
}
body:not(.page-home) .hero--about::before {
  background-position: 0 0, 42% center;
  background-size: auto, cover;
}
@media (min-width: 1280px) {
  body:not(.page-home) .hero--about::before {
    background-size: auto, cover;
    background-position: 0 0, 42% center;
  }
}
body:not(.page-home) .hero--media::before {
  background-position: 0 0, 72% center;
  background-size: auto, cover;
}
body:not(.page-home) .hero--education:not(.hero--education-quote)::before {
  background-position: 0 0, 0 0, center center;
  background-size: auto, auto, cover;
}
body:not(.page-home) .hero--science::before {
  background-position: 0 0, 0 0, 72% center;
  background-size: auto, auto, cover;
}
@media (min-width: 881px) and (max-width: 1279px) {
  /* Планшет 881–1279 (iPad / узкий desktop): фото-L1 с достаточной высотой */
  body:not(.page-home):not(.page-standardization) .hero--standardization,
  body:not(.page-home) .hero--science,
  body:not(.page-home) .hero--education:not(.hero--education-quote),
  body:not(.page-home) .hero--media {
    min-height: clamp(380px, 48vw, 520px);
    padding-top: clamp(40px, 5vw, 56px);
    padding-bottom: clamp(40px, 5vw, 56px);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--science::before,
  body:not(.page-home) .hero--education:not(.hero--education-quote)::before {
    inset: 0;
    bottom: 0;
    background-size: auto, auto, cover;
  }
  body:not(.page-home) .hero--media::before {
    inset: 0;
    bottom: 0;
    background-size: auto, cover;
  }
  body:not(.page-home):not(.page-standardization) .hero--standardization::before {
    inset: 0;
    bottom: 0;
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.72) 32%, rgba(0, 0, 0, 0.45) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.38) 0%, transparent 55%),
      var(--hero-gradient-standardization);
    background-size: auto, auto, cover;
    background-position: center;
  }
}
@media (min-width: 881px) {
  body:not(.page-home) .hero--media {
    min-height: clamp(520px, 46.5vw, 670px);
    padding-top: clamp(48px, 5vw, 72px);
    box-sizing: border-box;
  }
}
@media (min-width: 1280px) {
  body:not(.page-home) .hero--science::before {
    bottom: 0;
    background-position: 0 0, 0 0, 72% center;
    background-size: auto, auto, cover;
  }
  body:not(.page-home) .hero--media::before {
    bottom: 0;
    background-position: 0 0, 72% center;
    background-size: auto, cover;
  }
  body:not(.page-home) .hero--science,
  body:not(.page-home) .hero--education:not(.hero--education-quote),
  body:not(.page-home) .hero--media,
  body:not(.page-home) .hero--certification:not(.hero--strip) {
    min-height: 670px;
    padding-top: 72px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--standardization {
    min-height: var(--hero-h-standardization-1440);
    padding-top: 72px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--standardization .hero__title,
  body:not(.page-home) .hero--science .hero__title,
  body:not(.page-home) .hero--media .hero__title,
  body:not(.page-home) .hero--education .hero__title {
    font-size: 44px;
    line-height: 1.08;
    letter-spacing: -0.025em;
    max-width: 817px;
  }
}
@media (max-width: 880px) {
  /* Фото-L1: не схлопывать hero до высоты одной строки заголовка */
  body:not(.page-home) .hero--science,
  body:not(.page-home) .hero--media,
  body:not(.page-home) .hero--education:not(.hero--education-quote) {
    min-height: clamp(220px, 55vw, 360px);
    padding-top: max(20px, env(safe-area-inset-top, 0px));
    padding-bottom: 40px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--about:not(.hero--strip)::before,
  body:not(.page-home) .hero--certification::before,
  body:not(.page-home) .hero--science::before,
  body:not(.page-home) .hero--media::before,
  body:not(.page-home) .hero--education:not(.hero--education-quote)::before,
  body:not(.page-home) .hero--standardization::before {
    inset: 0;
    bottom: 0;
    height: auto;
    min-height: 0;
  }
  body:not(.page-home) .hero--about:not(.hero--strip)::before,
  body:not(.page-home) .hero--certification::before {
    background-position: 0 0, 0 0, 72% 28%;
    background-size: auto, auto, cover;
  }
  body:not(.page-home) .hero--certification::before {
    background-position: 72% 28%;
  }
  body:not(.page-home) .hero--media::before {
    background-position: 0 0, 78% 30%;
    background-size: auto, cover;
  }
  body:not(.page-home) .hero--education:not(.hero--education-quote)::before {
    background-position: 0 0, 0 0, center center;
    background-size: auto, auto, cover;
  }
  body:not(.page-home) .hero--science::before {
    background-position: 0 0, 0 0, 78% 32%;
    background-size: auto, auto, cover;
  }
  /* Figma 5_6: без растра главной (в jpg попали цифры stats) — синий градиент */
  body:not(.page-home) .hero--standardization::before {
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.72) 35%, rgba(0, 0, 0, 0.45) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.38) 0%, transparent 55%),
      var(--hero-gradient-standardization);
    background-size: auto, auto, cover;
    background-position: center;
  }
  body:not(.page-home) .hero--standardization {
    min-height: clamp(280px, var(--hero-h-standardization-mid), 420px);
    padding-top: max(16px, env(safe-area-inset-top, 0px));
    padding-bottom: 40px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--standardization .hero__title {
    font-size: clamp(22px, 5.8vw, 28px);
    line-height: 1.12;
    max-width: min(346px, calc(100vw - 32px));
    margin-bottom: 8px;
  }
  body:not(.page-home) .hero--standardization .breadcrumbs {
    font-size: 13px;
    margin-bottom: 4px;
  }
  body:not(.page-home) .hero--projects.hero--strip .hero__inner {
    padding-top: 30px;
    padding-bottom: 37px;
  }
  body:not(.page-home) .hero--projects.hero--strip .hero__title {
    font-size: clamp(22px, 5.8vw, 28px);
    margin-bottom: 6px;
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  .industries {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
  }
}
.hero--about::after,
.hero--standardization::after,
.hero--science::after,
.hero--education::after,
.hero--media::after,
.hero--certification::after,
.hero--projects::after,
.hero[class*="hero--"]:not(.hero--home):not(.hero--about):not(.hero--standardization):not(.hero--science):not(.hero--education):not(.hero--media):not(.hero--certification):not(.hero--projects)::after {
  display: none;
}
.hero--about .container,
.hero--standardization .container,
.hero--science .container,
.hero--education .container,
.hero--media .container,
.hero--certification .container,
.hero--projects .container,
.hero[class*="hero--"]:not(.hero--home):not(.hero--about):not(.hero--standardization):not(.hero--science):not(.hero--education):not(.hero--media):not(.hero--certification):not(.hero--projects) .container {
  z-index: 2;
}
.hero--about .hero__inner,
.hero--standardization .hero__inner,
.hero--science .hero__inner,
.hero--education .hero__inner,
.hero--media .hero__inner,
.hero--certification .hero__inner,
.hero--projects .hero__inner {
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
  align-items: start;
  gap: 40px;
  margin-bottom: 28px;
}
.hero--about:not(:has(.hero__stats)) .hero__inner,
.hero--science:not(:has(.hero__stats)) .hero__inner,
.hero--media:not(:has(.hero__stats)) .hero__inner,
.hero--standardization:not(:has(.hero__stats)) .hero__inner,
.hero--certification:not(:has(.hero__stats)) .hero__inner,
.hero--projects:not(:has(.hero__stats)) .hero__inner,
.hero--education.hero--education-quote .hero__inner {
  grid-template-columns: 1fr;
  margin-bottom: 0;
}
@media (max-width: 880px) {
  .hero--about .hero__inner,
  .hero--standardization .hero__inner,
  .hero--science .hero__inner,
  .hero--education .hero__inner,
  .hero--media .hero__inner,
  .hero--certification .hero__inner,
  .hero--projects .hero__inner {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 20px;
  }
}
.hero--about .hero__copy,
.hero--standardization .hero__copy,
.hero--education .hero__copy,
.hero--media .hero__copy,
.hero--certification .hero__copy,
.hero--projects .hero__copy {
  max-width: 640px;
}
/* Figma 6_2_Наука_1440: lead width 941px */
.hero--science .hero__copy {
  max-width: 941px;
}
/* Figma 3_2_О нас_1440: title 817px, lead 774px */
.hero--about .hero__copy {
  max-width: 817px;
  position: relative;
  z-index: 2;
}
.hero--about .hero__lead {
  max-width: 774px;
}
.hero--about .hero__inner {
  position: relative;
  z-index: 2;
}
.hero--about .hero__title,
.hero--science .hero__title,
.hero--media .hero__title {
  font-size: clamp(32px, 3.4vw, 44px);
  font-weight: 800;
  line-height: 1.35;
  max-width: 817px;
}
.hero--science .hero__title {
  max-width: 652px;
}
.hero--media .hero__title {
  max-width: 652px;
}
.hero--about .hero__stats,
.hero--standardization .hero__stats,
.hero--science .hero__stats,
.hero--education .hero__stats,
.hero--media .hero__stats,
.hero--certification .hero__stats,
.hero--projects .hero__stats {
  background: transparent;
  border: 0;
  padding: 0;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  align-self: start;
}
.hero--about .hero__stats.stats-grid,
.hero--standardization .hero__stats.stats-grid,
.hero--science .hero__stats.stats-grid,
.hero--education .hero__stats.stats-grid,
.hero--media .hero__stats.stats-grid,
.hero--certification .hero__stats.stats-grid,
.hero--projects .hero__stats.stats-grid {
  gap: 32px 40px;
}
.hero--about .hero__stats .stat,
.hero--standardization .hero__stats .stat,
.hero--science .hero__stats .stat,
.hero--education .hero__stats .stat,
.hero--media .hero__stats .stat,
.hero--certification .hero__stats .stat,
.hero--projects .hero__stats .stat {
  background: transparent;
  border: 0;
  padding: 0;
  text-align: center;
}
.hero--about .stat__num,
.hero--standardization .stat__num,
.hero--science .stat__num,
.hero--education .stat__num,
.hero--media .stat__num,
.hero--certification .stat__num,
.hero--projects .stat__num {
  font-size: clamp(28px, 2.8vw, 40px);
  font-weight: 800;
  letter-spacing: -0.03em;
}
.hero--about .stat__txt,
.hero--standardization .stat__txt,
.hero--science .stat__txt,
.hero--education .stat__txt,
.hero--media .stat__txt,
.hero--certification .stat__txt,
.hero--projects .stat__txt {
  font-size: 14px;
  line-height: 1.35;
  max-width: 220px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  color: rgba(255, 255, 255, 0.92);
}

/* Подстраницы: компактный hero (ниже правил разделов — перебивает .hero--media и др.) */
.hero.hero--subpage {
  padding: clamp(32px, 4vw, 48px) 0 0;
}
.hero.hero--subpage .hero__inner {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  margin-bottom: 20px;
  max-width: 760px;
}
.hero.hero--subpage .hero__copy { max-width: none; }
.hero.hero--subpage .hero__title {
  font-size: clamp(26px, 2.5vw, 36px);
  margin-bottom: 10px;
}
.hero.hero--subpage .hero__lead {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 0;
  max-width: 640px;
}
.hero.hero--subpage .breadcrumbs { margin-bottom: 12px; }
.hero.hero--subpage + .section--subpage {
  padding-top: 32px;
}

/* Крошки внутри hero разделов (тёмный фон) */
.hero--standardization .breadcrumbs,
.hero--science .breadcrumbs,
.hero--education .breadcrumbs,
.hero--media .breadcrumbs,
.hero--certification .breadcrumbs,
.hero--projects .breadcrumbs {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.75);
  margin-bottom: 16px;
}
.hero--standardization .breadcrumbs a,
.hero--science .breadcrumbs a,
.hero--education .breadcrumbs a,
.hero--media .breadcrumbs a,
.hero--certification .breadcrumbs a,
.hero--projects .breadcrumbs a {
  color: rgba(255, 255, 255, 0.75);
}
.hero--standardization .breadcrumbs a:hover,
.hero--science .breadcrumbs a:hover,
.hero--education .breadcrumbs a:hover,
.hero--media .breadcrumbs a:hover,
.hero--certification .breadcrumbs a:hover,
.hero--projects .breadcrumbs a:hover {
  color: #fff;
}
.hero--standardization .breadcrumbs span + span::before,
.hero--science .breadcrumbs span + span::before,
.hero--education .breadcrumbs span + span::before,
.hero--media .breadcrumbs span + span::before,
.hero--certification .breadcrumbs span + span::before,
.hero--projects .breadcrumbs span + span::before {
  content: "/";
  margin: 0 8px;
  opacity: 0.45;
}

/* Figma 6_2_Наука_1440 / 6_6_Наука_375: один столбец, без stats и без крошек в hero */
.hero--science .hero__inner {
  grid-template-columns: minmax(0, 1fr);
  max-width: 941px;
}
.hero--science .hero__copy {
  max-width: 941px;
}
.hero--science .hero__lead {
  max-width: 941px;
  font-size: clamp(15px, 1.6vw, 20px);
  line-height: 1.3;
}
@media (min-width: 1280px) {
  body:not(.page-home) .hero--science {
    min-height: 671px;
    padding-top: 93px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--science .hero__title {
    max-width: 652px;
    margin-bottom: 24px;
  }
  body:not(.page-home) .hero--science .hero__lead {
    margin-bottom: 32px;
    -webkit-line-clamp: unset;
    display: block;
    overflow: visible;
  }
}
@media (max-width: 1279px) {
  .hero--science .breadcrumbs {
    display: none;
  }
  body:not(.page-home) .hero--science {
    padding-top: 20px;
    padding-bottom: 48px;
  }
  body:not(.page-home) .hero--science .hero__title {
    font-size: clamp(22px, 6vw, 28px);
    line-height: 1.15;
    max-width: none;
    margin-bottom: 12px;
  }
  body:not(.page-home) .hero--science .hero__lead {
    font-size: 15px;
    line-height: 1.5;
    max-width: none;
    margin-bottom: 20px;
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
  }
  .hero--science .hero__actions {
    margin-bottom: 8px;
  }
  .hero--science .hero__actions .btn--white {
    min-height: 50px;
    padding-inline: 24px;
  }
  body:not(.page-home) .hero--science::before {
    background-position: 0 0, 0 0, 82% 28%;
    background-size: auto, auto, cover;
  }
}
@media (min-width: 600px) and (max-width: 1279px) {
  /* Figma 6_3_Наука_1280 / планшет: фиксированная высота фото, не растягивать cover */
  body:not(.page-home) .hero--science {
    min-height: clamp(420px, 58vw, 560px);
    padding-top: 20px;
    padding-bottom: 48px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--science::before {
    bottom: 44px;
    background-position: 0 0, 0 0, 76% 30%;
    background-size: auto, auto, cover;
  }
  body:not(.page-home) .hero--science .hero__lead {
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
  }
}

@media (max-width: 599px) {
  body:not(.page-home) .hero--science {
    min-height: clamp(480px, 165vw, 620px);
    padding-top: 20px;
    padding-bottom: 48px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--science::before {
    bottom: 44px;
    background-position: 0 0, 0 0, 88% 26%;
    background-size: auto, auto, cover;
  }
}

.hero + .section { padding-top: 32px; }

@media (min-width: 768px) and (max-width: 1023px) {
  :root {
    --gutter: clamp(20px, 3.5vw, 40px);
    --section-y: 64px;
    --section-y-after-hero: 48px;
  }
  .industries {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }
  body:not(.page-home) #prices .pricing {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    overflow: visible;
  }
  body:not(.page-home) #prices .price-card {
    flex: unset;
    scroll-snap-align: unset;
  }
  .section-header {
    flex-wrap: wrap;
    gap: 12px 16px;
  }
}
@media (min-width: 801px) and (max-width: 879px) {
  :root { --gutter: clamp(18px, 3vw, 32px); }
  .industries {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
}
@media (min-width: 881px) {
  :root {
    --hero-tiles-decor-gap: 24px;
  }
}
@media (min-width: 1280px) {
  :root {
    --gutter: clamp(24px, 5.56vw, 80px);
    --hero-tiles-decor-gap: 0px;
  }
}
@media (min-width: 1440px) and (max-width: 1899px) {
  :root { --gutter: 80px; }
  body.page-home {
    --gutter: 120px;
  }
  .hero--home {
    /* Figma 2_index_1440: heroTitle y=216, hero top y=156 → 60px */
    padding: 60px 0 var(--hero-decor-h);
    min-height: 911px;
  }
  /* Figma x=120 при gutter 80 → +40px к полям hero */
  .hero--home .hero__inner,
  .hero--home .hero__tiles {
    margin-inline: 40px;
  }
  .hero--home .hero__inner {
    grid-template-columns: 652px 480px;
    gap: 20px;
    margin-bottom: 4px;
  }
  .hero--home .hero__tiles {
    margin-top: 66px;
    margin-bottom: 0;
  }
  .hero--home .hero__copy {
    max-width: 652px;
  }
  .hero--home .hero__title {
    font-size: 44px;
    line-height: 48px;
    letter-spacing: -0.025em;
    margin: 0 0 33px;
    max-width: 652px;
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
    line-clamp: unset;
    max-height: none;
  }
  .hero--home .hero__lead {
    font-size: 17px;
    line-height: 25px;
    max-width: 498px;
    margin: 0;
    max-height: none;
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
    line-clamp: unset;
  }
  .hero--home .hero__stats.stats-grid {
    gap: 64px 76px;
    margin-top: 4px;
    margin-right: 0;
  }
  .hero--home .hero__stats .stat {
    min-height: 88px;
  }
  .hero--home .stat__num {
    font-size: 44px;
  }
  .hero--home .hero__tiles {
    gap: 33px;
  }
  .hero--about .hero__title,
  .hero--standardization .hero__title,
  .hero--science .hero__title,
  .hero--education .hero__title,
  .hero--media .hero__title,
  .hero--projects .hero__title {
    font-size: 44px;
    line-height: 1.08;
    letter-spacing: -0.025em;
  }
  .hero--home .stat__num {
    font-size: 44px;
    font-weight: 800;
    letter-spacing: -0.03em;
  }
  .hero--home .stat__txt {
    max-width: 240px;
  }
  .hero--about .stat__num,
  .hero--standardization .stat__num,
  .hero--science .stat__num,
  .hero--education .stat__num,
  .hero--media .stat__num,
  .hero--certification .stat__num,
  .hero--projects .stat__num {
    font-size: 44px;
    font-weight: 800;
    letter-spacing: -0.03em;
  }
  .hero--about .stat__txt,
  .hero--standardization .stat__txt,
  .hero--science .stat__txt,
  .hero--education .stat__txt,
  .hero--media .stat__txt,
  .hero--certification .stat__txt,
  .hero--projects .stat__txt {
    max-width: 240px;
  }
  .header__top {
    column-gap: 24px;
  }
  .header__utilities {
    gap: 14px;
    min-width: 310px;
  }
  .header__quick {
    gap: 14px;
  }
  .header__quick-img,
  .header__quick-img--search {
    width: 30px !important;
    height: 30px !important;
    max-width: 30px;
    max-height: 30px;
  }
  .header__search {
    min-width: 200px;
    max-width: 280px;
  }
  .section--soft > .container > .product-showcase {
    padding-top: 48px;
    padding-bottom: 64px;
    padding-left: calc((100vw - min(1440px, 100vw)) / 2 + var(--gutter));
    padding-right: calc((100vw - min(1440px, 100vw)) / 2 + var(--gutter));
  }
  .hero--home + .section--soft > .container > .product-showcase {
    padding-top: 40px;
  }
  .split-row--product {
    gap: 72px;
    grid-template-columns: minmax(0, 523px) minmax(380px, 1fr);
  }
  .split-row--product .split-row__copy {
    max-width: 523px;
  }
  .industries { gap: 20px; }
}
/* Figma 1_index_1900 (frame 1920): контент на всю ширину, не колонка 1440 по центру */
@media (min-width: 1900px) {
  body.page-home {
    --container: 1920px;
    --gutter: 120px;
  }
  body.page-home .container {
    max-width: var(--container);
    margin-inline: auto;
  }
  body.page-home .header > .container.header__top,
  body.page-home .header > .container.header__inner {
    padding-inline: var(--gutter);
  }

  /* Hero: заголовок 874px, lead 602px, 4×375×252, gap 58 */
  body.page-home .hero--home {
    min-height: 1021px;
    /* Figma 1_index_1900: title y=237, hero top y=156 → 81px */
    padding: 81px 0 var(--hero-decor-h);
  }
  body.page-home .hero--home .hero__inner,
  body.page-home .hero--home .hero__tiles {
    margin-inline: 0;
  }
  body.page-home .hero--home .hero__inner {
    grid-template-columns: minmax(0, 874px) minmax(520px, 1fr);
    gap: 20px 48px;
    margin-bottom: 4px;
  }
  body.page-home .hero--home .hero__copy {
    max-width: 874px;
  }
  body.page-home .hero--home .hero__title {
    font-size: 48px;
    line-height: 1.35;
    letter-spacing: -0.025em;
    margin: 0 0 35px;
    max-width: 874px;
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
    line-clamp: unset;
    max-height: none;
  }
  body.page-home .hero--home .hero__lead {
    font-size: 24px;
    line-height: 1.3;
    max-width: 602px;
    margin: 0;
    max-height: none;
  }
  body.page-home .hero--home .hero__stats.stats-grid {
    max-width: none;
    width: 100%;
    justify-self: stretch;
    gap: 64px 80px;
  }
  body.page-home .hero--home .stat__num {
    font-size: 64px;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
  }
  body.page-home .hero--home .stat__txt {
    font-size: 16px;
    line-height: 1.35;
    max-width: 175px;
  }
  body.page-home .hero--home .hero__tiles {
    margin-top: 66px;
  }
  body.page-home .hero--home .hero__tiles.grid--4 {
    grid-template-columns: repeat(4, 375px);
    gap: 58px;
    justify-content: flex-start;
    max-width: none;
  }
  body.page-home .hero--home .tile--hero {
    min-height: 252px;
    padding: 35px;
  }
  body.page-home .hero--home .tile--hero .tile__title {
    font-size: 24px;
    margin-bottom: 20px;
  }
  body.page-home .hero--home .tile--hero .tile__desc {
    font-size: 20px;
  }

  body.page-home .section--home-product > .container > .product-showcase,
  body.page-home .section--soft > .container > .product-showcase {
    padding-left: calc((100vw - min(1920px, 100vw)) / 2 + var(--gutter));
    padding-right: calc((100vw - min(1920px, 100vw)) / 2 + var(--gutter));
  }
  body.page-home #prices .pricing,
  body.page-home .section--home-prices .pricing {
    display: grid !important;
    max-width: none;
    grid-template-columns: repeat(3, 378px) !important;
    gap: 133px !important;
    justify-content: center;
    margin-inline: auto;
    padding-inline: 0;
    overflow: visible;
  }
  body.page-home #prices .price-card {
    width: 378px;
    min-height: 0;
    height: auto;
    flex: unset;
  }

  body.page-home .section--news-home .news-showcase.h-slider {
    overflow: hidden;
  }
  body.page-home .section--news-home .news-showcase .h-slider__track.media-cards-grid--news-home {
    display: flex;
    flex-wrap: nowrap;
    gap: 33px;
    max-width: none;
    margin-inline: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-bottom: 8px;
    scrollbar-width: thin;
  }
  body.page-home .section--news-home .news-showcase .h-slider__track > .news-card {
    flex: 0 0 378px;
    width: 378px;
    scroll-snap-align: start;
  }

  body.page-home .fund-library-cta {
    max-width: 1434px;
  }
  body.page-home .fund-library-cta__title {
    max-width: 972px;
    font-size: 32px;
    line-height: 1;
  }
  body.page-home .fund-library-cta__lead {
    max-width: 779px;
    font-size: 16px;
    line-height: 1.3;
  }

  body.page-home .section--events-home .events-showcase.h-slider {
    overflow: visible;
  }
  body.page-home .section--events-home .events-showcase .h-slider__track {
    gap: 33px;
    scroll-padding-inline: 0;
  }

  body.page-home .edu-training {
    max-width: none;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    min-height: 678px;
  }
  body.page-home .edu-training__panel {
    padding: 60px clamp(40px, 6vw, 120px);
  }
}

/* Hero home: title + lead — планшет 881–1023 (Figma 4_index_1024) */
@media (min-width: 881px) and (max-width: 1023px) {
  .hero--home .hero__copy {
    max-width: min(485px, 100%);
  }
  .hero--home .hero__title {
    font-size: clamp(28px, 3.4vw, 34px);
    line-height: 1.35;
    max-width: min(485px, 100%);
    margin-bottom: 14px;
  }
  .hero--home .hero__lead {
    font-size: 14px;
    line-height: 1.35;
    max-width: min(439px, 100%);
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  /* Figma 4_index_1024 (10007:15475 / 15476): hero copy */
  body.page-home .hero--home .hero__copy {
    max-width: min(526px, 100%);
  }
  body.page-home .hero--home .hero__title {
    font-size: 30px;
    line-height: 1.35;
    max-width: min(526px, 100%);
    margin-bottom: 12px;
  }
  body.page-home .hero--home .hero__lead {
    font-family: var(--font-body-figma);
    font-size: 18px;
    line-height: 1.3;
    max-width: min(457px, 100%);
  }
}
@media (min-width: 800px) and (max-width: 1279px) {
  .hero--home {
    padding: 28px 0 var(--hero-decor-h);
    min-height: clamp(560px, 68vh, 700px);
    box-sizing: border-box;
  }
  .hero--home::before {
    bottom: 0;
  }
  .hero--home .hero__inner {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 400px);
    gap: 20px 32px;
    margin-bottom: 28px;
    align-items: start;
  }
  .hero--home .hero__tiles.grid--4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(12px, 2.8vw, 23px);
    margin-bottom: var(--hero-tiles-decor-gap);
  }
}
@media (min-width: 800px) and (max-width: 1023px) {
  .hero--home .tile--hero {
    min-height: 164px;
    height: 164px;
    max-height: 164px;
    padding: 15px 10px;
    box-sizing: border-box;
  }
  .hero--home .tile--hero .tile__body {
    height: 134px;
    flex: 0 0 134px;
    gap: 5px;
    overflow: hidden;
    min-height: 0;
  }
  .hero--home .tile--hero .tile__title {
    font-size: 16px;
    margin: 0;
    flex: 0 0 calc(2.4em);
    max-height: calc(2.4em);
    min-height: calc(2.4em);
    height: calc(2.4em);
    overflow: hidden;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
  .hero--home .tile--hero .tile__desc {
    font-size: 14px;
    flex: 0 0 89px;
    height: 89px;
    max-height: 89px;
    min-height: 89px;
    line-height: 1.3;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    line-clamp: 4;
    text-overflow: ellipsis;
    overflow-wrap: break-word;
  }
}
@media (min-width: 881px) and (max-width: 1023px) {
  /* Figma 4_index_1024: stats 2×2, ~336×~200 */
  body.page-home .hero--home .hero__inner {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    gap: 16px 24px;
  }
  body.page-home .hero--home .hero__stats.stats-grid {
    grid-template-columns: repeat(2, minmax(120px, 1fr));
    gap: 90px 80px;
    width: 336px;
    max-width: 336px;
    justify-self: end;
  }
  body.page-home .hero--home .hero__stats .stat {
    min-height: 88px;
    gap: 8px;
  }
  body.page-home .hero--home .stat__num {
    font-size: 32px;
  }
  body.page-home .hero--home .stat__txt {
    font-size: 13px;
    line-height: 1.35;
    max-width: 141px;
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  body.page-home .hero--home .hero__inner {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 400px);
    gap: 20px 32px;
  }
  body.page-home .hero--home .hero__stats.stats-grid {
    grid-template-columns: repeat(2, minmax(125px, 1fr));
    gap: 90px 80px;
    width: 336px;
    max-width: 336px;
    justify-self: end;
  }
  body.page-home .hero--home .hero__stats .stat {
    min-height: 92px;
    gap: 8px;
  }
  body.page-home .hero--home .stat__num {
    font-size: 36px;
    font-weight: 700;
    line-height: 1;
  }
  body.page-home .hero--home .stat__txt {
    font-family: var(--font-ui);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.35;
    max-width: 141px;
  }
  .hero--home .hero__tiles.grid--4 {
    grid-template-columns: repeat(4, 230px);
    gap: 14px;
    justify-content: space-between;
    max-width: 962px;
    margin-inline: auto;
  }
  /* Figma услуги 1024 (10007:15905): 230×174 */
  .hero--home .tile--hero {
    width: 230px;
    max-width: 230px;
    min-height: 174px;
    height: 174px;
    padding: 15px;
    box-sizing: border-box;
  }
  .hero--home .tile--hero .tile__body {
    height: 144px;
    flex: 0 0 144px;
    gap: 7px;
  }
  .hero--home .tile--hero .tile__title {
    font-size: 20px;
    margin-bottom: 0;
    flex: 0 0 calc(2.4em);
    min-height: calc(2.4em);
    max-height: calc(2.4em);
    height: calc(2.4em);
    overflow: hidden;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
  .hero--home .tile--hero .tile__desc {
    font-family: var(--font-body-figma);
    font-size: 16px;
    line-height: 1.3;
    flex: 0 0 89px;
    height: 89px;
    max-height: 89px;
    color: #020203;
  }
}
@media (min-width: 1280px) and (max-width: 1439px) {
  /* Figma 3_index_1280: как 1440, чуть компактнее */
  body.page-home .hero--home .hero__stats.stats-grid {
    gap: 58px 76px;
    max-width: 400px;
    width: 100%;
    justify-self: end;
  }
  body.page-home .hero--home .hero__stats .stat {
    min-height: 96px;
  }
  body.page-home .hero--home .stat__num {
    font-size: 40px;
  }
  body.page-home .hero--home .stat__txt {
    font-size: 14px;
    max-width: 175px;
  }
}

/* Внутренние L1 601–799: hero не схлопляется (главная — см. 601–880) */
@media (min-width: 601px) and (max-width: 799px) {
  body:not(.page-home) .hero--about,
  body:not(.page-home):not(.page-standardization) .hero--standardization {
    min-height: clamp(280px, var(--hero-h-standardization-mid), 420px);
    box-sizing: border-box;
  }
  body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip) {
    min-height: 0;
    padding-top: 32px;
    padding-bottom: 32px;
  }
  body:not(.page-home) .hero--about,
  body:not(.page-home) .hero--science,
  body:not(.page-home) .hero--media,
  body:not(.page-home) .hero--education:not(.hero--education-quote) {
    min-height: clamp(280px, calc(100vw * 669 / 1440), 420px);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--standardization::before {
    inset: 0;
    bottom: 0;
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.72) 35%, rgba(0, 0, 0, 0.45) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.38) 0%, transparent 55%),
      var(--hero-gradient-standardization);
    background-size: auto, auto, cover;
    background-position: center;
  }
}

@media (min-width: 1280px) and (max-width: 1439px) {
  :root {
    /* Figma 3_index_1280 — Group 52 / 10007:11301 + 10007:11443 */
    --hero-decor-tile-w-lead: calc(1600.6 / 1280 * 100vw);
    --hero-decor-tile-w-trail: calc(1600.6 / 1280 * 100vw);
    --hero-decor-lead-l: calc(-360 / 1280 * 100vw);
    --hero-decor-trail-l: calc(1237 / 1280 * 100vw);
    --hero-tiles-decor-gap: 32px;
  }
  .hero--home {
    padding-top: 31px;
    min-height: 596px;
  }
  .hero--home .hero__inner {
    gap: 24px 32px;
    margin-bottom: 32px;
  }
  .hero--home .hero__copy {
    max-width: 652px;
  }
  .hero--home .hero__title {
    /* Figma 10007:11234 — Montserrat 36px / 1.35 */
    font-size: 36px;
    line-height: 1.35;
    letter-spacing: -0.025em;
    max-width: 652px;
    margin-bottom: 20px;
  }
  .hero--home .hero__lead {
    font-size: 17px;
    line-height: 25px;
    max-width: 498px;
  }
}

@media (max-width: 880px) {
  /* Figma 6_index_375: поля контейнера 16px (не 24) */
  :root {
    --gutter: 16px;
  }
  .hero { padding: 48px 0 56px; }
  .hero__inner { grid-template-columns: 1fr; gap: 32px; }
  body:not(.page-home) .hero--about::before,
  body:not(.page-home) .hero--standardization::before,
  body:not(.page-home) .hero--science::before,
  body:not(.page-home) .hero--education::before,
  body:not(.page-home) .hero--media::before,
  body:not(.page-home) .hero--certification::before,
  body:not(.page-home) .hero--projects::before {
    inset: 0;
    bottom: 0;
    height: auto;
  }
  /* .hero--home ≤600px — отдельный блок @media (max-width: 600px); 601–880 — блок 601–880 */
  body:not(.page-home) .hero--about,
  body:not(.page-home) .hero--standardization,
  body:not(.page-home) .hero--science,
  body:not(.page-home) .hero--education,
  body:not(.page-home) .hero--media,
  body:not(.page-home) .hero--certification {
    padding-top: 24px;
    padding-bottom: 40px;
  }
  .hero--about .hero__inner,
  .hero--standardization .hero__inner,
  .hero--science .hero__inner,
  .hero--education .hero__inner,
  .hero--media .hero__inner,
  .hero--certification .hero__inner,
  .hero--projects .hero__inner {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: 16px;
  }
  body:not(.page-home) .hero--about .hero__title,
  body:not(.page-home) .hero--standardization .hero__title,
  body:not(.page-home) .hero--science .hero__title,
  body:not(.page-home) .hero--education .hero__title,
  body:not(.page-home) .hero--media .hero__title {
    font-size: clamp(22px, 5.5vw, 28px);
    margin-bottom: 12px;
  }
  body:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: clamp(520px, 115vw, 680px);
    padding-top: 16px;
    padding-bottom: 48px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--standardization {
    min-height: clamp(220px, 55vw, 360px);
    padding-top: 16px;
    padding-bottom: 40px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--standardization::before {
    inset: 0;
    bottom: 0;
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.72) 35%, rgba(0, 0, 0, 0.45) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.38) 0%, transparent 55%),
      var(--hero-gradient-standardization);
    background-size: auto, auto, cover;
    background-position: center;
  }
  body:not(.page-home) .hero--about .hero__title {
    font-size: clamp(22px, 5.8vw, 28px);
    line-height: 1.12;
    max-width: 346px;
    margin-bottom: 10px;
  }
  body:not(.page-home) .hero--about .hero__lead {
    font-size: 14px;
    line-height: 1.45;
    margin-bottom: 0;
    max-width: 343px;
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
  }
  body:not(.page-home) .hero--certification {
    min-height: clamp(480px, 108vw, 640px);
    padding-top: 16px;
    padding-bottom: 48px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--certification::before {
    bottom: 44px;
    background-position: 72% 28%;
  }
  /* Figma 6_6_Наука_375: полный lead, баннер без обрезки текста */
  body:not(.page-home) .hero--science {
    min-height: clamp(560px, 178vw, 720px);
    padding-top: 16px;
    padding-bottom: 48px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--science::before {
    bottom: 44px;
    background-size: auto, auto, cover, cover;
    background-position: 0 0, 0 0, 82% 38%, 82% 38%;
  }
  body:not(.page-home) .hero--science .hero__title {
    font-size: clamp(22px, 5.8vw, 28px);
    line-height: 1.15;
    max-width: none;
    margin-bottom: 12px;
  }
  body:not(.page-home) .hero--science .hero__lead {
    font-size: 15px;
    line-height: 1.5;
    max-width: none;
    margin-bottom: 20px;
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
  }
  body:not(.page-home) .hero--standardization .hero__lead,
  body:not(.page-home) .hero--education .hero__lead,
  body:not(.page-home) .hero--projects .hero__lead {
    font-size: 14px;
    line-height: 1.45;
    margin-bottom: 12px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
  }
  .hero.hero--subpage { padding-top: 32px; }
  .hero.hero--subpage .hero__inner {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    margin-bottom: 16px;
  }
  .hero--about .hero__copy,
  .hero--standardization .hero__copy,
  .hero--science .hero__copy,
  .hero--education .hero__copy,
  .hero--media .hero__copy,
  .hero--certification .hero__copy,
  .hero--projects .hero__copy { max-width: none; }
  .hero--about .hero__stats,
  .hero--standardization .hero__stats,
  .hero--science .hero__stats,
  .hero--education .hero__stats,
  .hero--media .hero__stats,
  .hero--certification .hero__stats,
  .hero--projects .hero__stats { max-width: 100%; }
  .hero--about .hero__stats.stats-grid,
  .hero--standardization .hero__stats.stats-grid,
  .hero--science .hero__stats.stats-grid,
  .hero--education .hero__stats.stats-grid,
  .hero--media .hero__stats.stats-grid,
  .hero--certification .hero__stats.stats-grid,
  .hero--projects .hero__stats.stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 16px;
    margin-bottom: 12px;
  }
  .hero--about .stat__num,
  .hero--standardization .stat__num,
  .hero--science .stat__num,
  .hero--education .stat__num,
  .hero--media .stat__num,
  .hero--certification .stat__num,
  .hero--projects .stat__num {
    font-size: clamp(14px, 3.6vw, 18px);
  }
  .hero--about .stat__txt,
  .hero--standardization .stat__txt,
  .hero--science .stat__txt,
  .hero--education .stat__txt,
  .hero--media .stat__txt,
  .hero--certification .stat__txt,
  .hero--projects .stat__txt {
    font-size: 10px;
    line-height: 1.25;
    max-width: none;
  }
  .hero-decor { margin-top: 0; height: var(--hero-decor-h); }
  .hero-decor__track,
  .hero-decor__bars { height: var(--hero-decor-h); object-fit: fill; }
  body.page-home .section {
    padding: 32px 0;
  }
  body.page-home .hero--home + .section {
    padding-top: 20px;
  }
  /* product-showcase mobile — внутри max-width: 880 */
  .section--soft > .container > .product-showcase {
    padding: 12px 0 20px;
  }
  @media (max-width: 600px) {
    /* Figma 6_index_375: заголовок → текст → 252×252 (y=885) → кнопка */
    .product-showcase .h-slider__track,
    .product-showcase .product-showcase__track {
      display: block;
      overflow-x: hidden;
      padding-bottom: 0;
    }
    .product-showcase .h-slider__track > *,
    .product-showcase .product-showcase__track > * {
      flex: none !important;
      width: 100% !important;
      max-width: 100% !important;
      min-width: 0 !important;
    }
    .split-row--product {
      display: flex;
      flex-direction: column;
      gap: 0;
      width: 100%;
      max-width: 100%;
    }
    .split-row--product .split-row__copy {
      display: block;
    }
    .product-showcase .section-title {
      order: 1;
      font-size: clamp(24px, 6.4vw, 28px);
      line-height: 1.35;
      letter-spacing: 0;
      margin: 0 0 30px;
      width: 100%;
      max-width: none;
    }
    .product-showcase .product-showcase__text {
      order: 2;
      display: flex;
      flex-direction: column;
      gap: 15px;
      margin: 0 0 48px;
      width: 100%;
    }
    .split-row--product .split-row__art {
      order: 3;
      align-self: center;
      width: 252px;
      max-width: 252px;
      min-height: 0;
      margin: 0 auto 24px;
      aspect-ratio: 1;
      flex: 0 0 auto;
    }
    .split-row--product .split-row__art--contain img {
      display: block;
      width: 252px;
      height: 252px;
      max-width: 252px;
      max-height: 252px;
      margin-inline: auto;
      object-fit: contain;
      object-position: center center;
    }
    .product-showcase .split-row__copy p,
    .product-showcase .product-showcase__text p {
      order: unset;
      font-size: 16px;
      line-height: 1.3;
      margin: 0;
      max-width: none;
      width: 100%;
    }
  }
  @media (min-width: 601px) and (max-width: 880px) {
    /* Figma 5_index_800 @601+: две колонки, gap заголовок→текст 21px */
    .split-row--product {
      display: grid !important;
      grid-template-columns: minmax(0, 1fr) minmax(200px, 46%);
      gap: clamp(16px, 3vw, 28px);
      align-items: start;
    }
    .split-row--product .split-row__copy {
      display: block !important;
    }
    .product-showcase .section-title {
      font-size: clamp(26px, 3.8vw, 30px);
      line-height: 1.15;
      margin-bottom: 21px;
      max-width: none;
    }
    .product-showcase .split-row__copy p {
      font-size: 15px;
      line-height: 1.3;
      margin: 0 0 14px;
      max-width: none;
    }
  }
  body.page-home #polygon.section {
    padding-top: 24px;
    padding-bottom: 12px;
  }
  body.page-home .section--home-prices {
    padding-bottom: 40px;
  }
  body.page-home .cta-banner--polygon h2 {
    font-size: clamp(18px, 5.1vw, 22px);
    line-height: 1.28;
    text-align: center;
    margin-bottom: 0;
    max-width: none;
  }
  body.page-home .cta-banner--polygon p {
    font-size: 13px;
    line-height: 1.45;
    text-align: center;
    margin: 0 auto;
    max-width: none;
  }
  body.page-home .cta-banner--polygon .cta-banner__actions {
    justify-content: center;
    margin-top: 0;
    width: 100%;
  }
  body.page-home .cta-banner--polygon .cta-banner__actions .btn {
    width: min(100%, 280px);
    min-width: 200px;
  }
  body.page-home #prices .pricing {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 10px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 8px;
    scrollbar-width: thin;
    margin-inline: calc(-1 * var(--gutter));
    padding-inline: var(--gutter);
  }
  body.page-home #prices .price-card {
    flex: 0 0 min(300px, calc(100vw - 32px));
    scroll-snap-align: start;
    padding: 20px 15px;
    gap: 20px;
    min-height: 0;
  }
  body.page-home #prices .price-card__name::after {
    margin-top: 20px;
  }
  body.page-home #prices .price-card .btn {
    max-width: none;
  }
  body:not(.page-home) .cta-banner--polygon {
    text-align: left;
    justify-items: start;
    /* Figma 6_index_375: заголовок ~192px + лид ~63px + кнопка — выше 280px */
    height: auto;
    min-height: 280px;
    max-height: none;
    aspect-ratio: auto;
    overflow: visible;
    padding: 16px 14px 16px;
    background-image:
      linear-gradient(
        102deg,
        rgba(0, 32, 82, 0.84) 0%,
        rgba(0, 24, 62, 0.65) 45%,
        rgba(0, 14, 38, 0.38) 100%
      ),
      url("/local/templates/ris/assets/img/cta/polygon-banner-mobile.jpg"),
      url("/local/templates/ris/assets/img/cta/polygon-banner-mcp.png");
    background-size: auto, cover, cover;
    background-position: 0 0, 66% 42%, 68% center;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }
  body:not(.page-home) .cta-banner--polygon h2 {
    font-size: 17px;
    line-height: 1.28;
    text-align: left;
    margin-bottom: 8px;
    display: block !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }
  body:not(.page-home) .cta-banner--polygon p {
    font-size: 13px;
    line-height: 1.4;
    text-align: left;
    margin: 0 0 10px;
    max-width: none;
    display: block !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }
  body:not(.page-home) .cta-banner--polygon .cta-banner__actions {
    justify-content: flex-start;
    margin-top: 10px;
    width: auto;
  }
  body:not(.page-home) .cta-banner--polygon .cta-banner__actions .btn {
    width: auto;
    min-width: 200px;
    justify-content: center;
    min-height: 44px;
    padding: 10px 28px;
  }
  #prices .section-header {
    margin-bottom: 16px;
  }
  #prices .pricing {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 12px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 8px;
    scrollbar-width: thin;
  }
  #prices .price-card {
    flex: 0 0 min(272px, 84vw);
    scroll-snap-align: start;
    padding: 14px 14px 16px;
    gap: 10px;
    min-height: 0;
  }
  #prices .price-card__list li:nth-child(n+4) {
    display: none;
  }
  #prices .price-card__amount {
    font-size: 24px;
  }
  .btn:not(.header__quick-btn):not(.header__lang-btn),
  .mobile-toggle:not(.header__mobile-toggle-wrap .mobile-toggle) {
    min-height: 44px;
    min-width: 44px;
  }
  #prices .price-card__name {
    font-size: 16px;
    padding-bottom: 10px;
  }
  #prices .price-card__amount {
    font-size: 26px;
  }
  #prices .price-card__list {
    font-size: 13px;
    gap: 6px;
  }
  #prices .price-card__advantage {
    font-size: 12px;
    padding: 8px 10px;
  }
  .pricing {
    max-width: none;
    grid-template-columns: 1fr;
  }
  /* Figma 6_index_375: новости — карусель 300×450, без стрелок */
  .section--news-home .news-showcase.h-slider {
    margin-inline: calc(-1 * var(--gutter));
    width: auto;
  }
  .section--news-home .news-showcase .h-slider__track {
    padding-inline: var(--gutter);
    scroll-padding-inline: var(--gutter);
  }
  .section--news-home .news-showcase .h-slider__track > .news-card {
    flex: 0 0 min(300px, 85vw);
    width: min(300px, 85vw);
    min-height: 432px;
    height: 432px;
    max-height: 432px;
    overflow: hidden;
  }
  .section--events-home .events-showcase.h-slider {
    margin-inline: calc(-1 * var(--gutter));
    width: auto;
  }
  .section--events-home .events-showcase .h-slider__track {
    padding-inline: var(--gutter);
    scroll-padding-inline: var(--gutter);
  }
  .section--events-home .events-showcase .h-slider__track > .event-card--media {
    flex: 0 0 min(300px, 85vw);
    width: min(300px, 85vw);
  }
  .section--news-home .news-card__img {
    /* Figma I2014:583x;44:1287 — 378×220 */
    aspect-ratio: 378 / 220;
    max-height: none;
    height: auto;
  }
  .section--news-home .news-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
  /* Figma 6_index_375: инсайты — горизонтальная карусель 300×432 (не сетка 2×2) */
  body.page-home .section--articles .insights-showcase.h-slider {
    margin-inline: calc(-1 * var(--gutter));
    width: auto;
    padding-inline: 0;
  }
  body.page-home .section--articles .insights-showcase .h-slider__track.media-cards-grid--articles,
  body.page-home #articles .grid.grid--4.media-cards-grid--articles {
    display: flex !important;
    flex-wrap: nowrap;
    gap: 13px;
    max-width: none;
    margin-inline: 0;
    padding-inline: var(--gutter);
    scroll-padding-inline: var(--gutter);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    grid-template-columns: none !important;
    -webkit-overflow-scrolling: touch;
  }
  body.page-home .section--articles .insights-showcase .h-slider__track > .insight-card,
  body.page-home #articles .grid.grid--4.media-cards-grid--articles > .insight-card {
    flex: 0 0 300px;
    width: 300px;
    max-width: 300px;
    min-height: 432px;
    scroll-snap-align: start;
  }
  body.page-home .section--articles .insights-showcase .h-slider__nav {
    display: none;
  }
  #articles .insight-card__img {
    aspect-ratio: 378 / 300;
    max-height: none;
    height: auto;
  }
  #articles .insight-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
  .section--insights .insight-card__img {
    aspect-ratio: 378 / 300;
    max-height: none;
    height: auto;
  }
  .section--insights .insight-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
  .industries {
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
  }
  .industry-card {
    min-height: 140px;
  }
  .section--insights .section-header,
  #articles .section-header,
  .section--news-home .section-header,
  .section--partners .section-header,
  .section--events-home .section-header {
    align-items: center;
    text-align: center;
  }
  .cta-banner--join {
    min-height: 0;
    padding: 30px 16px 40px;
    gap: 20px;
  }
  .cta-banner--join__title {
    font-size: 24px;
  }
  .cta-banner--join .cta-banner__copy {
    max-width: none;
    width: 100%;
  }
}
@media (max-width: 600px) {
  /* Figma 6_index_375: hero главная ≤600px (10005:8561) */
  body.page-home .hero--home {
    padding: 50px 0 var(--hero-decor-h);
    min-height: clamp(500px, 130vw, 640px);
    box-sizing: border-box;
  }
  body.page-home .hero--home::before {
    inset: 0;
    bottom: 0;
    height: auto;
    min-height: 0;
  }
  body.page-home .hero--home .hero-decor {
    z-index: 5;
  }
  body.page-home .hero--home .hero__inner {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-bottom: 12px;
  }
  body.page-home .hero--home .hero__copy {
    text-align: left;
    width: 100%;
    max-width: min(346px, calc(100vw - 2 * var(--gutter)));
    padding-top: 13px;
  }
  body.page-home .hero--home .hero__title {
    font-size: 24px;
    line-height: 34px;
    letter-spacing: -0.022em;
    width: 100%;
    max-width: min(346px, 100%);
    margin: 0 0 22px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    max-height: 68px;
  }
  body.page-home .hero--home .hero__lead {
    font-size: 14px;
    line-height: 20px;
    width: 100%;
    max-width: 300px;
    margin: 3px 0 12px;
    max-height: 80px;
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
    line-clamp: unset;
  }
  body.page-home .hero--home .hero__stats .stat {
    text-align: center;
  }
  body.page-home .hero--home .stat__txt {
    margin-left: auto;
    margin-right: auto;
  }
  body.page-home .hero--home .hero__tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
    margin-bottom: var(--hero-tiles-decor-gap);
  }
  body.page-home .hero--home .tile--hero {
    min-height: 164px;
    padding: 15px 10px;
    border-top-width: 4px;
  }
  body.page-home .hero--home .tile--hero .tile__title {
    font-size: 16px;
    margin-bottom: 5px;
  }
  body.page-home .hero--home .tile--hero .tile__desc {
    font-size: 14px;
  }

  /* Figma 3_6_О нас_375: 13189:19680 → about-banner-mobile.jpg (375×763) */
  body:not(.page-home) .hero--about {
    min-height: calc(100vw * 763 / 375);
    padding-top: 16px;
    padding-bottom: 48px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--about::before {
    bottom: 44px;
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
      var(--hero-photo-about-mobile);
    background-size: auto, auto, cover;
    background-position: 0 0, 0 0, center top;
  }
  body:not(.page-home) .hero--science {
    min-height: calc(100vw * 761 / 375);
    padding-top: 16px;
    padding-bottom: 48px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--science::before {
    bottom: 44px;
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
      var(--hero-photo-science-mobile);
    background-size: auto, auto, cover;
    background-position: 0 0, 0 0, center top;
  }
  body:not(.page-home) .hero--media {
    min-height: calc(100vw * 763 / 375);
    padding-top: 16px;
    padding-bottom: 48px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--media::before {
    bottom: 44px;
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
      var(--hero-photo-media-mobile);
    background-size: auto, auto, cover;
    background-position: 0 0, 0 0, center top;
  }
  body:not(.page-home) .hero--education:not(.hero--education-quote) {
    min-height: calc(100vw * 762 / 375);
    padding-top: 16px;
    padding-bottom: 48px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--education:not(.hero--education-quote)::before {
    bottom: 44px;
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.88) 0%, rgba(0, 0, 0, 0.55) 45%, rgba(0, 0, 0, 0.35) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, transparent 55%),
      var(--hero-photo-education-mobile);
    background-size: auto, auto, cover;
    background-position: 0 0, 0 0, center top;
  }
  body:not(.page-home) .hero--standardization {
    min-height: var(--hero-h-standardization-375);
    padding-top: 16px;
    padding-bottom: 32px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--standardization::before {
    inset: 0;
    bottom: 0;
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.72) 35%, rgba(0, 0, 0, 0.45) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.38) 0%, transparent 55%),
      var(--hero-gradient-standardization);
    background-size: auto, auto, cover;
    background-position: center;
  }
  body:not(.page-home) .hero--standardization .hero__title {
    font-size: clamp(22px, 5.8vw, 28px);
    line-height: 1.12;
    max-width: min(346px, calc(100vw - 32px));
  }
  body.page-home .hero--home .hero__stats.stats-grid {
    grid-template-columns: repeat(4, minmax(0, 80px));
    gap: 8px 12px;
    margin-bottom: 18px;
    margin-top: 6px;
    max-width: 100%;
    justify-self: stretch;
    justify-content: space-between;
  }
  body.page-home .hero--home .hero__stats .stat {
    min-height: 63px;
    gap: 4px;
  }
  body.page-home .hero--home .stat__num {
    font-size: 20px;
    line-height: 1;
    letter-spacing: -0.03em;
  }
  body.page-home .hero--home .stat__txt {
    font-size: 10px;
    line-height: 1.2;
    max-width: 80px;
    margin-top: 0;
  }
  .hero--about .hero__stats.stats-grid,
  .hero--standardization .hero__stats.stats-grid,
  .hero--science .hero__stats.stats-grid,
  .hero--education .hero__stats.stats-grid,
  .hero--media .hero__stats.stats-grid,
  .hero--certification .hero__stats.stats-grid,
  .hero--projects .hero__stats.stats-grid { grid-template-columns: 1fr; }
}

/* Figma 5_index_800 (601–880, вкл. 772px): MCP 10009:7323/7423/7327 */
@media (min-width: 601px) and (max-width: 880px) {
  body.page-home .hero--home {
    padding-top: 18px;
    padding-bottom: var(--hero-decor-h);
    min-height: clamp(384px, 48vw, 432px);
  }
  body.page-home .hero--home .hero__inner {
    grid-template-columns: minmax(0, 1fr) minmax(200px, 280px);
    gap: 12px 18px;
    margin-bottom: 14px;
  }
  body.page-home .hero--home .hero__copy {
    max-width: min(485px, 100%);
  }
  body.page-home .hero--home .hero__title {
    font-size: 24px;
    line-height: 1.35;
    margin-bottom: 9px;
    max-width: min(485px, 100%);
    width: 100%;
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
    line-clamp: unset;
  }
  body.page-home .hero--home .hero__lead {
    font-size: 14px;
    line-height: 1.3;
    max-width: min(439px, 100%);
    width: 100%;
    margin-bottom: 0;
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
    line-clamp: unset;
  }
  /* Figma Group 118–116: 108px колонки, gap 34×19 */
  body.page-home .hero--home .hero__stats.stats-grid {
    grid-template-columns: repeat(2, 108px);
    gap: 19px 34px;
    width: 250px;
    max-width: 250px;
    margin-bottom: 0;
    justify-self: end;
    align-self: start;
  }
  body.page-home .hero--home .hero__stats .stat {
    min-height: 66px;
    gap: 4px;
  }
  body.page-home .hero--home .stat__num {
    font-size: 28px;
    line-height: 1;
    letter-spacing: -0.03em;
  }
  body.page-home .hero--home .stat__txt {
    font-size: 12px;
    line-height: 1.35;
    max-width: 108px;
  }
  body.page-home .hero--home .hero__tiles {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(10px, 2.6vw, 23px);
    margin-top: 4px;
    margin-bottom: var(--hero-tiles-decor-gap);
  }
  body.page-home .hero--home .tile--hero {
    min-height: 164px;
    padding: 15px 10px;
  }
  body.page-home .hero--home .tile--hero .tile__title {
    font-size: 16px;
    margin-bottom: 5px;
  }
  body.page-home .hero--home .tile--hero .tile__desc {
    font-size: 14px;
    line-height: 1.3;
  }
  body.page-home #prices .pricing {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    overflow: visible;
    margin-inline: 0;
    padding-inline: 0;
    scroll-snap-type: none;
  }
  body.page-home #prices .price-card {
    flex: unset;
    width: auto;
    min-width: 0;
    scroll-snap-align: unset;
    padding: 20px 15px;
    gap: 20px;
  }
  body.page-home #prices .price-card__name::after {
    margin-top: 20px;
  }
  body.page-home #prices .price-card .btn {
    max-width: none;
    width: 100%;
    margin-top: 0;
  }
  body.page-home .section--industries .section-header {
    justify-content: center;
  }
  body.page-home .section--industries .section-header .section-link {
    display: none;
  }
  body.page-home .section--industries .industries {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
  }
  body.page-home .section--industries .section-title {
    width: 100%;
    text-align: center;
  }
  body.page-home .section--industries .industries-promo.grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
  body.page-home .section--industries .tile--promo {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 25px 15px;
    min-height: 372px;
    align-items: stretch;
  }
  body.page-home .section--industries .tile--promo .tile__body,
  body.page-home .section--industries .tile--promo .tile__media {
    grid-column: auto;
    grid-row: auto;
  }
  body.page-home .section--industries .tile--promo .tile__media img {
    max-width: 100%;
    max-height: 235px;
    width: auto;
  }
  body.page-home .cta-banner--polygon h2 {
    text-align: center;
  }
  body.page-home .cta-banner--polygon p {
    text-align: center;
  }
}

/* ---------- Cards / Grids ---------- */
.grid { display: grid; gap: 24px; }
.grid--2 { grid-template-columns: repeat(2,1fr); }
.grid--3 { grid-template-columns: repeat(3,1fr); }
.grid--4 { grid-template-columns: repeat(4,1fr); }
@media (max-width: 980px) { .grid--3, .grid--4 { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 600px) {
  .grid--2, .grid--3, .grid--4 { grid-template-columns: 1fr; }
  /* Figma 4_6_Медиа_375: карусели вместо одноколоночной сетки */
  body.page-media #press .press-showcase .h-slider__track.grid.grid--4,
  body.page-media #news .news-showcase .h-slider__track.grid.grid--4,
  body.page-media #insights .insights-showcase .h-slider__track.grid.grid--3 {
    display: flex !important;
    flex-wrap: nowrap;
    grid-template-columns: none !important;
  }
  body.page-home #articles .grid.grid--4.media-cards-grid--articles {
    display: flex !important;
    flex-wrap: nowrap;
    grid-template-columns: none !important;
    gap: 13px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-inline: var(--gutter);
    scroll-padding-inline: var(--gutter);
    margin-inline: calc(-1 * var(--gutter));
    width: auto;
    max-width: none;
  }
  body.page-home #articles .grid.grid--4.media-cards-grid--articles > .insight-card {
    flex: 0 0 300px;
    width: 300px;
    max-width: 300px;
    scroll-snap-align: start;
  }
}

.card {
  background: #fff; border: 1px solid var(--c-line);
  border-radius: var(--radius); padding: 28px;
  transition: all var(--transition); display: flex; flex-direction: column;
}
.card:hover { border-color: var(--c-brand); box-shadow: var(--shadow); transform: translateY(-3px); }
.card__icon { width: 48px; height: 48px; border-radius: 12px; background: var(--c-brand-light); display: grid; place-items: center; color: var(--c-brand); margin-bottom: 16px; }
.card__icon svg { width: 24px; height: 24px; }
.card__title { font-size: 18px; font-weight: 700; margin-bottom: 10px; }
.card__title a { color: inherit; }
.card__text { color: var(--c-muted); font-size: 14px; flex: 1; }
.card__more { margin-top: 16px; font-weight: 600; display: inline-flex; gap: 6px; align-items: center; }

/* Service tile */
.tile {
  background: #fff; border: 1px solid var(--c-line); border-radius: var(--radius);
  border-top: 4px solid var(--c-accent);
  padding: 28px 24px; transition: all var(--transition);
  display: flex; flex-direction: column; gap: 12px;
  text-decoration: none; color: var(--c-text);
  min-height: 172px;
}
.tile:hover {
  border-color: var(--c-brand); box-shadow: var(--shadow); color: var(--c-brand);
  transform: translateY(-3px);
}
.tile__icon {
  width: 48px; height: 48px; border-radius: 12px;
  background: var(--c-brand-light); color: var(--c-brand);
  display: grid; place-items: center; margin-bottom: 4px;
}
.tile__icon img, .tile__icon svg { width: 28px; height: 28px; display: block; }
.tile--accent .tile__icon { background: rgba(255, 255, 255, 0.15); color: #fff; }
.tile__num { font-size: 12px; color: var(--c-muted); font-weight: 600; }
.tile__title { font-size: 20px; font-weight: 700; line-height: 1.25; }
.tile__desc { font-size: 14px; color: var(--c-muted); }
.tile__arrow { margin-top: auto; align-self: flex-end; }
.tile--accent { background: var(--c-brand); color: #fff; border-color: var(--c-brand); border-top-color: var(--c-accent); }
.tile--accent:hover { background: var(--c-brand-dark); color: #fff; }
.tile--accent .tile__desc, .tile--accent .tile__num { color: rgba(255,255,255,.85); }

/* Pill / Tag — touch target ≥44px (WCAG 2.5.5) */
.tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 44px;
  min-width: 44px;
  padding: 8px 14px;
  border-radius: 999px;
  background: var(--c-bg-soft);
  color: var(--c-text);
  font-family: var(--font-heading);
  font-size: 14px;
  font-weight: 500;
  border: 1px solid var(--c-line);
  cursor: pointer;
  transition: all var(--transition);
}
.tag:hover, .tag.is-active { background: var(--c-brand); color: #fff; border-color: var(--c-brand); }

.tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }

/* Фильтры новостей — текстовые ссылки, активный красный (Figma frame-0 / frame-9) */
.tags--text {
  gap: 4px 20px;
  row-gap: 8px;
  margin-bottom: 28px;
}
.tags--text .tag {
  padding: 10px 4px;
  min-height: 44px;
  border-radius: 0;
  border: 0;
  background: transparent;
  color: var(--c-text);
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  box-sizing: border-box;
}
.tags--text .tag:hover {
  background: transparent;
  color: var(--c-accent);
  border: 0;
}
.tags--text .tag.is-active {
  background: transparent;
  color: var(--c-accent);
  border: 0;
  box-shadow: none;
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 2px;
}

/* News card */
.news-card {
  background: #fff; border: 1px solid var(--c-line); border-top: 4px solid var(--c-accent);
  border-radius: 0;
  overflow: hidden;
  transition: border-color var(--transition), box-shadow var(--transition);
  display: flex; flex-direction: column;
  box-shadow: 0 2px 10px rgba(20, 33, 61, 0.05);
}
.news-card:hover {
  box-shadow: 0 10px 32px rgba(20, 33, 61, 0.1);
  border-color: rgba(0, 40, 100, 0.14);
}
.news-card__img {
  aspect-ratio: 378 / 280;
  max-height: 280px;
  background: linear-gradient(135deg, var(--c-brand-light), #fff);
  background-size: cover; background-position: center;
  position: relative; overflow: hidden;
}
.news-card__img img,
.insight-card__img img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}
/* Рубрика в строке меты под превью (Figma frame-9) */
.news-card__meta .news-card__rubric {
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: var(--c-accent);
  letter-spacing: 0;
}
/* Старые карточки: подпись/дата поверх превью (напр. science) */
.news-card__img .news-card__rubric {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 4px 10px;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 4px;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  color: var(--c-brand);
  text-transform: none;
  letter-spacing: 0;
}
.news-card__meta {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 8px;
}
.news-card__body { padding: 20px; flex: 1; display: flex; flex-direction: column; }
.news-card__date { font-family: var(--font); font-size: 14px; line-height: normal; color: var(--c-muted); margin-bottom: 8px; }
.news-card__meta .news-card__date { margin-bottom: 0; flex-shrink: 0; text-align: right; }
.news-card__title { font-family: var(--font); font-size: 16px; font-weight: 600; line-height: 1.3; margin-bottom: 10px; }
.news-card__title a { color: var(--c-text); }
.news-card__title a:hover { color: var(--c-brand); }
.news-card__excerpt { font-family: var(--font-body-figma); font-size: 16px; line-height: 1.3; color: var(--c-text); flex: 1; }
.news-card__more { margin-top: 14px; font-family: var(--font-ui); font-weight: 500; font-size: 14px; color: #686a73; }

/* Новости (Figma: заголовок по центру, теги 2 ряда, карусель, кнопка снизу) */
.section--news-home .section-header {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
  margin-bottom: 28px;
}
/* Figma Frame 15/16 (2001:3901 / 2001:3910): 2 ряда pill-тегов, gap 10px */
.tags--news-home {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  max-width: 1173px;
  margin-inline: auto;
  margin-bottom: 32px;
}
.tags--news-home .tags__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  width: 100%;
}
.tags--news-home .tags__row--offset {
  padding-left: 26px;
  box-sizing: border-box;
}
.tags--news-home .tag {
  box-sizing: border-box;
  min-height: 0;
  min-width: 0;
  padding: 5px;
  font-family: var(--font);
  font-size: 14px;
  line-height: normal;
  font-weight: 500;
  border-radius: 5px;
  background: #f3f3f3;
  border: none;
  color: #ed1a34;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.2s ease;
}
.tags--news-home .tag:hover,
.tags--news-home .tag:focus-visible {
  background: #e8e8e8;
  color: #ed1a34;
}
.tags--news-home .tag.is-active {
  background: #f3f3f3;
  color: #ed1a34;
  box-shadow: none;
  text-decoration: none;
}
body.page-home .section--news-home .section-title {
  font-size: 28px;
  line-height: 1.35;
  font-weight: 600;
  color: #020203;
}
.section--news-home .news-showcase.h-slider {
  position: relative;
  padding-inline: 0;
  margin: 0;
  overflow: hidden;
  max-width: 100%;
}
.section--news-home .news-showcase .h-slider__track {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  scroll-snap-type: x mandatory;
  align-items: stretch;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  padding-bottom: 4px;
  overflow-x: auto;
  width: 100%;
  max-width: 100%;
}
.section--news-home .news-showcase .h-slider__track::-webkit-scrollbar {
  display: none;
}
.section--news-home .news-showcase .h-slider__track > .news-card {
  flex: 0 0 min(300px, calc(100vw - 2 * var(--gutter) - 10px));
  width: min(300px, calc(100vw - 2 * var(--gutter) - 10px));
  max-width: 378px;
  scroll-snap-align: start;
  min-height: 450px;
}
.section--news-home .news-showcase .h-slider__nav,
.section--news-home .news-showcase .h-slider__hint {
  display: none !important;
}
body.page-home .section--news-home .section-actions--news-home {
  display: flex;
  justify-content: center;
  margin-top: 28px;
}
body.page-home .section--news-home .section-actions--news-home .btn {
  min-width: 282px;
  min-height: var(--btn-height);
  justify-content: center;
  border-radius: var(--btn-radius);
}
@media (min-width: 1280px) {
  .section--news-home .news-showcase .h-slider__track {
    gap: 33px;
  }
  .section--news-home .news-showcase .h-slider__track > .news-card {
    flex: 0 0 378px;
    width: 378px;
    min-height: 478px;
  }
  .section--news-home .news-card__img {
    aspect-ratio: auto;
    height: 220px;
    max-height: 220px;
    flex-shrink: 0;
  }
  .section--news-home .news-card__body {
    padding: 20px 22px 24px;
  }
}

/* Главная: карточки новостей — Figma 2014:5831 (378×478, превью 378×220) */
body.page-home .section--news-home .news-card {
  border: 0;
  border-top: 4px solid var(--c-accent);
  border-radius: 0;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  overflow: hidden;
  box-sizing: border-box;
}
body.page-home .section--news-home .news-card__img {
  aspect-ratio: 378 / 220;
  max-height: none;
  flex-shrink: 0;
}
body.page-home .section--news-home .news-card__body {
  padding: 20px 22px 24px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 8px;
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
}
body.page-home .section--news-home .news-card__more {
  margin-top: 0;
  flex-shrink: 0;
  padding-top: 0;
  font-family: var(--font-ui);
  font-size: 14px;
  font-weight: 500;
  color: #686a73;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
body.page-home .news-card__more-arrow {
  display: inline-block;
  width: 5px;
  height: 6px;
  flex-shrink: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='6' viewBox='0 0 5 6' fill='none'%3E%3Cpath d='M0 0L5 3L0 6V0Z' fill='%23686A73'/%3E%3C/svg%3E") center/contain no-repeat;
}
body.page-home .section--news-home .news-card__title {
  margin: 0;
  flex-shrink: 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  min-height: calc(1.3em * 2);
  max-height: calc(1.3em * 2);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
body.page-home .section--news-home .news-card__excerpt {
  flex: 0 0 auto;
  flex-shrink: 0;
  min-height: calc(1.3em * 2);
  max-height: calc(1.3em * 2);
  margin: 0;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
body.page-home .section--news-home .section-header--center {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
}
body.page-home .section--news-home .section-header--center .section-link {
  font-size: 15px;
  font-weight: 600;
}
@media (min-width: 1280px) {
  body.page-home .section--news-home .news-showcase.h-slider {
    overflow: hidden;
    margin: 0;
    padding: 0;
    width: 100%;
  }
  body.page-home .section--news-home .news-showcase .h-slider__track.media-cards-grid--news-home {
    display: flex;
    flex-wrap: nowrap;
    grid-template-columns: none;
    gap: 33px;
    max-width: none;
    width: 100%;
    margin-inline: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 0;
    padding: 0 0 4px;
    scrollbar-width: none;
  }
  body.page-home .section--news-home .news-showcase .h-slider__track > .news-card {
    flex: 0 0 378px;
    width: 378px;
    max-width: 378px;
    min-height: 487px;
    height: 487px;
    max-height: 487px;
    overflow: hidden;
    scroll-snap-align: start;
  }
  body.page-home .section--news-home .news-card__img {
    height: 220px;
    max-height: 220px;
    min-height: 220px;
    aspect-ratio: auto;
  }
  body.page-home .section--news-home .news-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
  body.page-home .section--news-home .news-card__body {
    padding: 25px;
    gap: 15px;
  }
  body.page-home .section--news-home .news-card__excerpt {
    flex: 0 0 auto;
    flex-shrink: 0;
    min-height: calc(1.3em * 2);
    max-height: calc(1.3em * 2);
  }
}
@media (min-width: 1440px) {
  body.page-home .section--articles .insight-card,
  body.page-home .section--news-home .news-card {
    min-height: 487px;
  }
}
@media (min-width: 881px) and (max-width: 1279px) {
  body.page-home .section--articles .insights-showcase .h-slider__track.media-cards-grid--articles {
    display: flex;
    flex-wrap: nowrap;
    grid-template-columns: none;
    gap: 24px;
    max-width: none;
    margin-inline: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding: 0 0 4px;
  }
  body.page-home .section--articles .insights-showcase .h-slider__track > .insight-card {
    flex: 0 0 min(300px, calc(100vw - 2 * var(--gutter) - 24px));
    width: min(300px, calc(100vw - 2 * var(--gutter) - 24px));
    scroll-snap-align: start;
  }
  body.page-home .section--news-home .news-showcase.h-slider {
    overflow: hidden;
    width: 100%;
    margin: 0;
  }
  body.page-home .section--news-home .news-showcase .h-slider__track.media-cards-grid--news-home {
    display: flex;
    flex-wrap: nowrap;
    grid-template-columns: none;
    gap: 24px;
    max-width: none;
    margin-inline: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding: 0 0 4px;
  }
  body.page-home .section--news-home .news-showcase .h-slider__track > .news-card {
    flex: 0 0 min(300px, calc(100vw - 2 * var(--gutter) - 24px));
    width: min(300px, calc(100vw - 2 * var(--gutter) - 24px));
    scroll-snap-align: start;
  }
}

/* Pricing (Figma: 3×378×489, gap 33, красная линия под названием) */
.pricing {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  align-items: stretch;
}
@media (min-width: 1280px) {
  .pricing {
    gap: 33px;
    max-width: 1200px;
    margin-inline: auto;
    grid-template-columns: repeat(3, 378px);
    justify-content: center;
  }
  body.page-home .section--home-prices .pricing {
    justify-content: center;
    margin-inline: auto;
  }
  body.page-home .price-card__advantage {
    padding: 0;
    background: transparent;
    color: #686a73;
    font-weight: 400;
    line-height: 1.45;
  }
}
@media (max-width: 767px) { .pricing { grid-template-columns: 1fr; max-width: none; } }
.price-card {
  background: #fff;
  border: 0;
  border-radius: 0;
  padding: 30px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  transition: box-shadow var(--transition);
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}
.price-card .btn,
.price-card__cta {
  align-self: center;
  min-width: 230px;
  min-height: 47px;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  justify-content: center;
  margin-top: auto;
  flex-shrink: 0;
}
.price-card__list {
  margin: 0;
  flex: 1;
}
.price-card__advantage {
  margin: 0;
}
.price-card:hover {
  box-shadow: 0 0 18px rgba(57, 59, 65, 0.16);
}
.price-card--featured {
  background: linear-gradient(165deg, #00306e 0%, var(--c-brand) 42%, var(--c-brand-dark) 100%);
  color: #fff;
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: var(--shadow-lg);
}
.price-card--featured:hover {
  border-color: rgba(255, 255, 255, 0.2);
}
@media (min-width: 1280px) {
  .price-card {
    width: 378px;
    min-height: 0;
    height: auto;
    padding: 30px;
  }
}
.price-card--featured h3,
.price-card--featured .price-card__amount { color: #fff; }
.price-card__name {
  display: block;
  font-family: var(--font);
  font-size: 28px;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  line-height: 1;
  color: #020203;
  padding-bottom: 0;
  margin: 0;
  border-bottom: 0;
}
.price-card__name::after {
  content: "";
  display: block;
  width: 100%;
  height: 4px;
  margin-top: 30px;
  background: #ed1a34;
}
.price-card--featured .price-card__name {
  color: #fff;
  opacity: 1;
}
.price-card--featured .price-card__name::after {
  background: var(--c-accent);
}
.price-card--featured .price-card__amount,
.price-card--featured .price-card__amount small {
  color: #fff;
}
.price-card__amount { font-family: var(--font); font-size: 48px; font-weight: 500; letter-spacing: 0; line-height: 1; color: #020203; }
.price-card__amount small { font-family: var(--font); font-size: 16px; font-weight: 500; opacity: 1; margin-left: 4px; }
.price-card--featured .price-card__amount small { opacity: 0.85; }
.price-card__advantage {
  padding: 12px 14px;
  background: var(--c-brand-light);
  color: var(--c-brand);
  border-radius: var(--radius-sm);
  font-family: var(--font);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
}
.price-card--featured .price-card__advantage { background: rgba(255,255,255,.14); color: #fff; }
.price-card__list { display: flex; flex-direction: column; gap: 10px; font-family: var(--font); font-size: 16px; font-weight: 400; flex: 1; line-height: 1.3; color: var(--c-muted); }
.price-card--featured .price-card__list { color: rgba(255, 255, 255, 0.88); }
.price-card__list li { display: flex; gap: 8px; align-items: flex-start; }
.price-card__list li::before { content: "✓"; color: var(--c-brand); font-weight: 700; flex-shrink: 0; }
.price-card--featured .price-card__list li::before { color: rgba(255, 255, 255, 0.95); }

/* Figma «Тариф» (2010:3032 / 10007:13847 @1280+): типографика #prices на главной */
body.page-home #prices .price-card__name {
  font-family: var(--font);
  font-size: 28px;
  font-weight: 600;
  line-height: 1;
  color: #020203;
}
body.page-home #prices .price-card__name::after {
  margin-top: 30px;
  height: 4px;
  background: #ed1a34;
}
body.page-home #prices .price-card__amount,
body.page-home #prices .price-card__value {
  font-family: var(--font);
  font-size: 48px;
  font-weight: 500;
  line-height: 1;
  color: #020203;
}
body.page-home #prices .price-card__amount small,
body.page-home #prices .price-card__currency {
  font-family: var(--font);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  color: #020203;
}
body.page-home #prices .price-card__advantage {
  padding: 0;
  background: transparent;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  color: #020203;
}
body.page-home #prices .price-card__list {
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
  gap: 5px;
}
body.page-home #prices .price-card__list li::before {
  color: var(--c-action);
}
body.page-home #prices .price-card .btn,
body.page-home #prices .price-card__cta {
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  min-height: 47px;
  max-width: 318px;
  width: 100%;
}

/* Timeline (не страница «О нас» — там .section--about-history) */
.section--history:not(.section--about-history) .history-spotlight {
  display: grid;
  grid-template-columns: minmax(280px, 42%) minmax(0, 1fr);
  gap: 40px 48px;
  align-items: start;
  margin-bottom: 40px;
}
.section--history:not(.section--about-history) .history-spotlight__art img {
  width: 100%;
  height: auto;
  display: block;
  border: 1px solid var(--c-line);
}
.section--history:not(.section--about-history) .history-spotlight__year {
  font-size: 15px;
  font-weight: 700;
  color: var(--c-brand);
  margin: 0 0 8px;
}
.section--history:not(.section--about-history) .history-spotlight__title {
  font-size: clamp(22px, 2.2vw, 28px);
  line-height: 1.2;
  margin: 0 0 16px;
  letter-spacing: -0.02em;
}
.section--history:not(.section--about-history) .history-spotlight__copy p {
  font-size: 15px;
  line-height: 1.55;
  color: var(--c-text);
}
.section--history:not(.section--about-history) .history-spotlight__caption {
  font-size: 13px;
  color: var(--c-muted);
  margin-top: 12px;
}
@media (max-width: 900px) {
  .section--history:not(.section--about-history) .history-spotlight {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.section--history:not(.section--about-history) .timeline {
  margin-top: 8px;
}
.timeline {
  display: flex;
  gap: 0;
  overflow-x: auto;
  padding: 28px 0 16px;
  scrollbar-width: thin;
  position: relative;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}
.timeline::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 14px;
  height: 4px;
  background: var(--c-brand);
  pointer-events: none;
  z-index: 0;
}
.timeline__item {
  flex: 0 0 min(275px, 78vw);
  padding: 32px 24px 20px;
  background: #fff;
  border: 1px solid var(--c-line);
  border-top: 4px solid var(--c-brand);
  scroll-snap-align: start;
  position: relative;
  z-index: 1;
}
@media (min-width: 1280px) {
  .timeline__item { flex: 0 0 275px; }
  .section--history .timeline {
    padding-left: 0;
    padding-right: 0;
    flex-wrap: nowrap;
    overflow-x: auto;
  }
}
.timeline__year { font-size: 28px; font-weight: 800; color: var(--c-brand); margin-bottom: 8px; }
.timeline__text { font-size: 14px; color: var(--c-muted); line-height: 1.45; }

/* Partners — «Нам доверяют» (Figma: карусель логотипов на белом фоне) */
.section--partners .section-header {
  margin-bottom: 32px;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.section--partners {
  padding-top: clamp(32px, 4vw, 48px);
  padding-bottom: clamp(32px, 4vw, 48px);
}
.partners-showcase.h-slider {
  padding: 8px 48px 0;
  margin: 0 -8px;
  overflow-x: clip;
  width: 100%;
  max-width: 100%;
}
.partners-showcase .h-slider__track {
  gap: 48px;
  align-items: center;
  padding-bottom: 8px;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-padding-inline: 8px;
  -webkit-overflow-scrolling: touch;
}
.partners-showcase .h-slider__track > * {
  flex: 0 0 auto;
  max-width: none;
  scroll-snap-align: center;
}
.partners__slide {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 4px 8px;
  text-decoration: none;
  transition: opacity var(--transition);
}
.partners__slide img {
  display: block;
  max-width: min(300px, 42vw);
  max-height: 56px;
  width: auto;
  height: auto;
  object-fit: contain;
  object-position: center center;
  filter: grayscale(1);
  opacity: 0.85;
  transition: filter 0.25s ease, opacity 0.25s ease;
}
.partners__slide:hover img,
.partners__slide:focus-visible img {
  filter: none;
  opacity: 1;
}
.partners__slide-text {
  display: none;
  font-weight: 700;
  font-size: 14px;
  color: var(--c-muted);
  white-space: nowrap;
}
.partners__slide:not(:has(img)) .partners__slide-text {
  display: block;
}
.section--inner-partners .partners__slide--inner-strip {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
}
.section--inner-partners .partners__slide--inner-strip img {
  width: auto;
  max-width: none;
  height: 40px;
  max-height: 40px;
  object-fit: contain;
}
.section--inner-partners .partners__slide--inner-logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: none;
  object-fit: contain;
  object-position: center center;
  filter: none;
  opacity: 1;
}
.section--inner-partners .partners__slide img {
  filter: none;
  opacity: 1;
}
.section--inner-partners .partners-showcase .h-slider__track {
  gap: 40px;
  align-items: center;
}
.section--inner-partners .partners-showcase.h-slider {
  overflow: visible;
}
.partners-showcase .h-slider__nav {
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
}
.partners-showcase .h-slider__nav--prev { left: 0; }
.partners-showcase .h-slider__nav--next { right: 0; }
@media (max-width: 880px) {
  .section--partners .section-header { margin-bottom: 20px; }
  .section--partners .section-title { font-size: clamp(22px, 5vw, 28px); }
  .partners-showcase.h-slider {
    padding-inline: 36px;
    margin-inline: calc(-1 * var(--gutter));
    padding-left: calc(36px + var(--gutter));
    padding-right: calc(36px + var(--gutter));
    width: auto;
  }
  .partners-showcase .h-slider__track { gap: 32px; }
  .partners-showcase .h-slider__nav { display: flex; }
  .partners__slide img {
    max-width: min(260px, 38vw);
    max-height: 48px;
  }
}

/* Figma 2_6_Обучение: «Образовательные партнеры» — заголовок слева, логотипы в ряд */
.section--edu-partners .section-header {
  align-items: flex-start;
  text-align: left;
}
.section--edu-partners {
  padding-top: clamp(24px, 4vw, 40px);
  padding-bottom: clamp(28px, 4vw, 44px);
}
.section--edu-partners .section-title {
  font-size: clamp(20px, 4.8vw, 27px);
  line-height: 1.2;
}
/* Figma Frame 757: логотипы в ряд, без стрелок карусели */
.section--edu-partners .partners-showcase--edu-strip {
  margin: 0;
  padding: 0;
  overflow: visible;
}
.section--edu-partners .partners-showcase--edu-strip .partners-showcase__track {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: clamp(24px, 4vw, 40px);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 4px;
}
.section--edu-partners .partners-showcase--edu-strip .partners-showcase__track::-webkit-scrollbar {
  display: none;
}
.section--edu-partners .partners-showcase--edu-strip .partners__slide {
  flex: 0 0 auto;
  scroll-snap-align: start;
}
.section--edu-partners .partners__slide img {
  max-height: 56px;
  max-width: min(200px, 38vw);
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}
@media (max-width: 880px) {
  .section--edu-partners .section-header {
    margin-bottom: 16px;
  }
  .section--edu-partners .partners-showcase--edu-strip .partners-showcase__track {
    gap: 24px;
    margin-inline: calc(-1 * var(--gutter));
    padding-inline: var(--gutter);
  }
  .section--edu-partners .partners__slide img {
    max-height: 48px;
    max-width: min(157px, 34vw);
  }
}

/* Event card (календарь Б24: дата слева) */
.event-card {
  display: flex; gap: 20px; padding: 24px;
  border: 1px solid var(--c-line); border-top: 4px solid var(--c-accent);
  border-radius: var(--radius);
  background: #fff; align-items: center;
  transition: all var(--transition);
  color: inherit; text-decoration: none;
}
.event-card:hover { box-shadow: var(--shadow); }
.event-card__date {
  flex-shrink: 0; min-width: 80px; text-align: center;
  background: var(--c-brand-light); padding: 14px; border-radius: var(--radius-sm);
}
.event-card__day { font-size: 28px; font-weight: 800; color: var(--c-brand); line-height: 1; }
.event-card__month { font-size: 12px; color: var(--c-muted); text-transform: uppercase; margin-top: 4px; }
.event-card__title { font-size: 16px; font-weight: 600; margin-bottom: 6px; color: var(--c-text); }
.event-card__meta { font-size: 13px; color: var(--c-muted); }

/* Мероприятия — компактные карточки (Figma «Мероприятия» 378×422 / 300×369) */
.event-card--media {
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--c-line);
  border-top: 0;
  background: #fff;
  box-shadow: 0 2px 10px rgba(20, 33, 61, 0.05);
}
.event-card--media .event-card__cover {
  aspect-ratio: 378 / 240;
  max-height: 240px;
  background: linear-gradient(135deg, var(--c-brand-light), #e2e8f4);
  position: relative;
}
.event-card--media .event-card__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.event-card--media .event-card__body {
  padding: 16px 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}
.event-card--media .event-card__labels {
  display: none;
}
.event-card--media .event-card__tag {
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  color: var(--c-accent);
  background: transparent;
  padding: 0;
  border-radius: 0;
  line-height: normal;
}
.event-card--media .event-card__title {
  margin: 0;
  font-family: var(--font);
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  color: var(--c-text);
}
.event-card--media .event-card__when {
  font-family: var(--font);
  font-size: 16px;
  font-weight: 700;
  color: #020203;
  line-height: 1.3;
}
.event-card--media .event-card__place {
  font-family: var(--font);
  font-size: 16px;
  font-weight: 400;
  color: #020203;
  line-height: 1.3;
  margin-top: auto;
}
.event-card--media:hover .event-card__title {
  color: var(--c-brand);
}

/* Главная: мероприятия — карусель на сером фоне */
.section--events-home {
  background: var(--c-bg-soft);
}
.section--events-home .section-header {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
  margin-bottom: 28px;
}
.section--events-home .events-showcase.h-slider {
  position: relative;
  padding-inline: 0;
  margin: 0;
  overflow: visible;
}
.section--events-home .events-showcase .h-slider__track {
  gap: 10px;
  scroll-snap-type: x mandatory;
  align-items: stretch;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  padding-bottom: 4px;
}
.section--events-home .events-showcase .h-slider__track::-webkit-scrollbar {
  display: none;
}
.section--events-home .events-showcase .h-slider__track > .event-card--media {
  flex: 0 0 min(300px, calc(100vw - 2 * var(--gutter) - 10px));
  width: min(300px, calc(100vw - 2 * var(--gutter) - 10px));
  max-width: 378px;
  scroll-snap-align: start;
  min-height: 369px;
}
.section--events-home .events-showcase .h-slider__hint {
  display: none;
}
body.page-home .section--events-home .section-actions--events-home {
  display: none;
}
@media (min-width: 1280px) {
  .section--events-home .events-showcase .h-slider__track {
    gap: 33px;
  }
  .section--events-home .events-showcase .h-slider__track > .event-card--media {
    flex: 0 0 378px;
    width: 378px;
    min-height: 422px;
  }
  .section--events-home .event-card--media .event-card__cover {
    aspect-ratio: auto;
    height: 220px;
    max-height: none;
  }
}

/* CTA banner */
.cta-banner {
  background: linear-gradient(125deg, #00152e 0%, var(--c-brand-dark) 38%, var(--c-brand) 72%, #0a4a9e 100%);
  color: #fff; border-radius: var(--radius-lg);
  padding: 48px 52px; display: grid;
  grid-template-columns: minmax(0, 1.45fr) auto;
  align-items: center;
  gap: 36px 40px; position: relative; overflow: hidden;
}
.cta-banner::before {
  content: ""; position: absolute; top: -50%; right: -10%;
  width: 400px; height: 400px; border-radius: 50%;
  background: rgba(255,255,255,.07);
}
.cta-banner h2 { color: #fff; }
.cta-banner p { color: rgba(255,255,255,.85); margin-bottom: 0; max-width: 52em; }
.cta-banner--gold {
  background: url("/local/templates/ris/assets/img/sections/lead-gold-ref.png") center / cover no-repeat;
  min-height: 260px;
  color: #fff;
}
.cta-banner--gold h2,
.cta-banner--gold p { color: #fff; text-shadow: 0 1px 8px rgba(0, 0, 0, 0.35); }
.section--insights,
.section--articles {
  padding-top: 72px;
  padding-bottom: 80px;
  background: var(--c-bg-soft);
}
.section--insights .section-header,
.section--articles .section-header,
#articles.section--articles .section-header {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
  margin-bottom: 36px;
}
.section--insights .section-header .section-link,
#articles .section-header .section-link {
  font-size: 15px;
}
.section--insights .grid--4,
.section--articles .grid--4,
#articles .grid--4 {
  gap: 24px;
}
body.page-home .section--articles .media-cards-grid--articles {
  gap: 17px;
}
body.page-home .section--insights .section-actions--insights {
  display: flex;
  justify-content: center;
  margin-top: 28px;
}
body.page-home .section--insights .section-actions--insights .btn {
  min-width: 282px;
  min-height: var(--btn-height);
  justify-content: center;
  border-radius: var(--btn-radius);
}

/* Главная: топовые инсайты — карусель (Figma 5_index_800) */
.section--insights .insights-showcase.h-slider {
  position: relative;
  padding-inline: clamp(36px, 5vw, 56px);
  margin: 0;
  overflow: visible;
}
.section--insights .insights-showcase .h-slider__track {
  gap: 10px;
  scroll-snap-type: x mandatory;
  align-items: stretch;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  padding-bottom: 4px;
}
.section--insights .insights-showcase .h-slider__track::-webkit-scrollbar {
  display: none;
}
.section--insights .insights-showcase .h-slider__track > .insight-card {
  flex: 0 0 min(300px, calc(100vw - 120px));
  width: min(300px, calc(100vw - 120px));
  max-width: 378px;
  scroll-snap-align: start;
  min-height: 432px;
}
.section--insights .insights-showcase .h-slider__nav {
  display: flex;
  top: 42%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
}
.section--insights .insights-showcase .h-slider__nav--prev {
  left: 0;
}
.section--insights .insights-showcase .h-slider__nav--next {
  right: 0;
}
.section--insights .insights-showcase .h-slider__hint {
  display: none;
}
@media (min-width: 1280px) {
  .section--insights .insights-showcase .h-slider__track {
    gap: 33px;
  }
  .section--insights .insights-showcase .h-slider__track > .insight-card {
    flex: 0 0 378px;
    width: 378px;
    min-height: 487px;
  }
  .section--insights .insights-showcase .h-slider__nav {
    display: flex;
  }
}

/* Figma 2_index_1440 / 3_index_1280: инсайты — лента за правый край, одна стрелка справа */
@media (min-width: 1280px) and (max-width: 1899px) {
  body.page-home .section--articles {
    overflow-x: clip;
    overflow-y: visible;
  }
  body.page-home .section--articles > .container {
    max-width: none;
    padding-inline: 0;
  }
  body.page-home .section--articles .section-header {
    margin-bottom: 60px;
    padding-inline: var(--gutter);
    box-sizing: border-box;
  }
  body.page-home .section--articles .section-actions--insights {
    margin-top: 60px;
    padding-inline: var(--gutter);
    box-sizing: border-box;
  }
  body.page-home .section--articles .insights-showcase.h-slider {
    position: relative;
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: var(--gutter);
    padding-right: 0;
    overflow: visible;
    box-sizing: border-box;
  }
  body.page-home .section--articles .insights-showcase .h-slider__track.media-cards-grid--articles {
    display: flex;
    flex-wrap: nowrap;
    gap: 33px;
    width: max-content;
    min-width: 100%;
    max-width: none;
    margin-inline: 0;
    padding-right: var(--gutter);
    padding-bottom: 4px;
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    grid-template-columns: none;
    justify-content: flex-start;
  }
  body.page-home .section--articles .insights-showcase .h-slider__track.media-cards-grid--articles::-webkit-scrollbar {
    display: none;
  }
  body.page-home .section--articles .insights-showcase .h-slider__track > .insight-card {
    flex: 0 0 378px;
    width: 378px;
    max-width: 378px;
    min-height: 487px;
    scroll-snap-align: start;
  }
  body.page-home .section--articles .insights-showcase .h-slider__nav--prev {
    display: none;
  }
  body.page-home .section--articles .insights-showcase .h-slider__nav--next {
    display: flex;
    top: 43%;
    transform: translateY(-50%);
    z-index: 6;
  }
}
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-home .section--articles .insights-showcase .h-slider__track.media-cards-grid--articles {
    gap: 23px;
  }
  body.page-home .section--articles .insights-showcase .h-slider__nav--next {
    right: 16px;
  }
}
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-home .section--articles .insights-showcase .h-slider__nav--next {
    right: 63px;
  }
}

/* Figma 1_index_1900: «Топовые инсайты» — карусель 5×378 (gap 33), не статичная сетка */
@media (min-width: 1900px) {
  body.page-home .section--articles .section-header {
    margin-bottom: 36px;
  }
  body.page-home .section--articles .section-title {
    font-size: 32px;
    line-height: 1.35;
    letter-spacing: -0.02em;
  }
  body.page-home .section--articles .insights-showcase.h-slider {
    padding-inline: clamp(36px, 5vw, 56px);
  }
  body.page-home .section--articles .insights-showcase .h-slider__track.media-cards-grid--articles {
    display: flex;
    flex-wrap: nowrap;
    gap: 33px;
    width: 100%;
    max-width: calc(100% - 2 * var(--gutter));
    margin-inline: auto;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    grid-template-columns: none;
    justify-content: flex-start;
    padding-bottom: 4px;
  }
  body.page-home .section--articles .insight-card {
    display: flex;
    flex-direction: column;
    flex: 0 0 378px;
    width: 378px;
    max-width: 378px;
    min-width: 0;
    min-height: 487px;
    height: 487px;
    max-height: 487px;
    overflow: hidden;
    box-sizing: border-box;
    scroll-snap-align: start;
  }
  body.page-home .section--articles .insight-card__img {
    width: 100%;
    height: 300px;
    max-height: 300px;
    min-height: 300px;
    aspect-ratio: 378 / 300;
    flex-shrink: 0;
  }
  body.page-home .section--articles .insight-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
}

/* Главная: «Полигон» + «Тарифы» — Figma Rectangle 434, светлый фон, без фото-баннера */
body.page-home #polygon.section {
  background: var(--c-bg-soft);
  padding-top: clamp(32px, 5vw, 48px);
  padding-bottom: clamp(16px, 3vw, 24px);
}
body.page-home .section--home-prices {
  background: var(--c-bg-soft);
  padding-top: 0;
  padding-bottom: clamp(40px, 6vw, 64px);
}
body.page-home .cta-banner--polygon {
  box-sizing: border-box;
  height: auto;
  min-height: 0;
  max-height: none;
  overflow: visible;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: transparent;
  background-image: none;
  border-radius: 0;
  color: #020203;
  grid-template-columns: 1fr;
  text-align: center;
  justify-items: center;
  padding: 0;
  gap: 0;
  position: static;
}
body.page-home .cta-banner--polygon::before,
body.page-home .cta-banner--polygon::after {
  display: none;
}
body.page-home .cta-banner--polygon .cta-banner__copy {
  max-width: 935px;
  width: 100%;
  margin-inline: auto;
  text-align: center;
}
body.page-home .cta-banner--polygon h2 {
  font-family: var(--font);
  font-size: clamp(20px, 2.15vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  color: #020203;
  margin: 0;
  text-shadow: none;
  display: block;
  overflow: visible;
  max-width: 935px;
  text-align: center;
}
body.page-home .cta-banner--polygon p {
  max-width: min(523px, 100%);
  margin: 0 auto;
  font-size: 14px;
  line-height: 1.5;
  color: #020203;
  text-shadow: none;
  display: block;
  overflow: visible;
  text-align: center;
}
body.page-home .cta-banner--polygon .cta-banner__actions {
  justify-content: center;
  margin-top: 0;
  width: 100%;
  flex-shrink: 0;
}
body.page-home .cta-banner--polygon .cta-banner__actions .btn {
  min-width: 230px;
  min-height: 47px;
  padding: 12px 28px;
  white-space: nowrap;
  justify-content: center;
  box-shadow: none;
}
/* Figma 1_index_1900: после базовых .cta-banner--polygon (иначе max-width 935px перебивает) */
@media (min-width: 1900px) {
  body.page-home #polygon.section {
    padding-top: 48px;
    padding-bottom: 32px;
  }
  body.page-home #polygon > .container {
    max-width: var(--container);
  }
  body.page-home .cta-banner--polygon .cta-banner__copy {
    max-width: 1559px;
    width: 100%;
    margin-inline: auto;
  }
  body.page-home .cta-banner--polygon h2 {
    max-width: 1559px;
    width: 100%;
    font-family: var(--font);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.27;
    letter-spacing: -0.02em;
    margin: 0;
    text-align: center;
    -webkit-line-clamp: unset;
    line-clamp: unset;
    overflow: visible;
    display: block;
  }
  body.page-home .cta-banner--polygon p {
    max-width: 523px;
    width: 100%;
    font-size: 16px;
    line-height: 1.3;
    margin: 0 auto;
    text-align: center;
    -webkit-line-clamp: unset;
    line-clamp: unset;
    overflow: visible;
    display: block;
  }
  body.page-home .cta-banner--polygon .cta-banner__actions .btn {
    min-width: 230px;
  }
}
body.page-home .price-card__advantage {
  padding: 0;
  background: transparent;
}
body.page-home #prices .pricing {
  margin-top: clamp(8px, 2vw, 16px);
}
/* Тёмный баннер «Полигон» — только внутренние страницы (не главная) */
.cta-banner--polygon {
  box-sizing: border-box;
  height: 280px;
  min-height: 280px;
  max-height: 280px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-image:
    linear-gradient(
      102deg,
      rgba(0, 32, 82, 0.82) 0%,
      rgba(0, 26, 68, 0.62) 42%,
      rgba(0, 16, 42, 0.42) 100%
    ),
    url("/local/templates/ris/assets/img/cta/polygon-banner-mcp.png");
  background-position: 0 0, 68% 42%;
  background-size: auto, cover;
  background-repeat: no-repeat;
  grid-template-columns: 1fr;
  text-align: center;
  justify-items: center;
  padding: 32px 40px 36px;
  gap: 0;
}
.cta-banner--polygon::before {
  display: none;
}
.cta-banner--polygon .cta-banner__copy {
  max-width: 935px;
}
.cta-banner--polygon h2 {
  font-size: clamp(20px, 2.15vw, 30px);
  line-height: 1.27;
  margin: 0 0 35px;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
  display: block;
  overflow: visible;
  max-width: 935px;
}
.cta-banner--polygon p {
  max-width: 523px;
  margin: 0 auto 45px;
  font-size: 14px;
  line-height: 1.5;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
  display: block;
  overflow: visible;
}
@media (min-width: 881px) and (max-width: 1023px) {
  body:not(.page-home) .cta-banner--polygon h2 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-bottom: 20px;
  }
  body:not(.page-home) .cta-banner--polygon p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-bottom: 24px;
  }
}
.cta-banner--polygon .cta-banner__text-link {
  color: #fff;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.cta-banner--polygon .cta-banner__text-link:hover {
  color: rgba(255, 255, 255, 0.92);
}
.cta-banner--polygon .cta-banner__actions {
  justify-content: center;
  margin-top: 0;
  width: auto;
  flex-shrink: 0;
}
.cta-banner--polygon .cta-banner__actions .btn {
  min-width: 230px;
  min-height: 47px;
  padding: 12px 28px;
  white-space: nowrap;
  justify-content: center;
}
.cta-banner--polygon::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 14px;
  pointer-events: none;
  opacity: 0.55;
  background: repeating-linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0,
    rgba(255, 255, 255, 0) 5px,
    rgba(255, 255, 255, 0.22) 5px,
    rgba(255, 255, 255, 0.22) 6px
  );
}
.cta-banner__copy { position: relative; z-index: 1; min-width: 0; }
.cta-banner .btn--primary {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}
.cta-banner .btn--primary:hover {
  color: #fff;
}
.cta-banner__actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  position: relative;
  z-index: 1;
}
@media (max-width: 880px) {
  .cta-banner { grid-template-columns: 1fr; padding: 36px 24px 40px; text-align: center; }
  .cta-banner__actions { justify-content: center; }
  .cta-banner p { margin-left: auto; margin-right: auto; }
}

/* Side-nav layout */
.split {
  display: grid;
  grid-template-columns: minmax(0, 240px) minmax(0, 1fr);
  gap: 32px;
  align-items: start;
}
.split > * { min-width: 0; }
.split + .grid,
.split .grid { margin-top: 0; }
@media (max-width: 1100px) {
  .split { grid-template-columns: 1fr; gap: 24px; }
}
.side-nav {
  position: static;
  top: auto;
  align-self: start;
  z-index: 1;
  max-width: 100%;
}
@media (min-width: 1101px) {
  .side-nav { position: sticky; top: 120px; }
  .cert-personnel-split .side-nav {
    position: static;
    top: auto;
  }
}
.side-nav h4 { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--c-muted); margin-bottom: 12px; }
.side-nav a {
  display: block; padding: 10px 14px; border-radius: 8px;
  color: var(--c-text); font-size: 14px;
  border-left: 2px solid transparent; transition: all var(--transition);
}
.side-nav a:hover, .side-nav a.is-active { background: var(--c-brand-light); color: var(--c-brand); border-left-color: var(--c-brand); }

/* Figma 1_2_Сертификация: табы + карточки; без наложения sticky-nav на grid */
.cert-mandatory-split .cert-mandatory-panels {
  position: relative;
  z-index: 2;
}
@media (max-width: 1100px) {
  .cert-mandatory-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }
  .cert-mandatory-nav a {
    flex: 1 1 calc(33.333% - 6px);
    min-width: 140px;
    border-left: none;
    border-bottom: 2px solid transparent;
    text-align: center;
    padding: 10px 12px;
  }
  .cert-mandatory-nav a.is-active,
  .cert-mandatory-nav a:hover {
    border-left-color: transparent;
    border-bottom-color: var(--c-brand);
  }
  .cert-mandatory-panels.grid--2 {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 600px) {
  .cert-mandatory-nav a {
    flex: 1 1 calc(50% - 4px);
  }
}

/* Figma 1_2_Сертификация — блок «Испытания»: без sticky-nav поверх split-row */
.cert-tests-split .cert-tests-body {
  position: relative;
  z-index: 2;
}
@media (max-width: 1100px) {
  .cert-tests-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }
  .cert-tests-nav h4 {
    flex: 0 0 100%;
    margin-bottom: 4px;
  }
  .cert-tests-nav a {
    flex: 1 1 calc(33.333% - 6px);
    min-width: 148px;
    border-left: none;
    border-bottom: 2px solid transparent;
    text-align: center;
    padding: 10px 12px;
  }
  .cert-tests-nav a.is-active,
  .cert-tests-nav a:hover {
    border-left-color: transparent;
    border-bottom-color: var(--c-accent);
  }
  #tests .split-row {
    margin-top: 4px;
  }
}
@media (max-width: 600px) {
  .cert-tests-nav a {
    flex: 1 1 calc(50% - 4px);
    min-width: 0;
  }
}

/* Обучение — «Сертификация персонала»: без sticky-nav поверх плиток при прокрутке */
.cert-layout.cert-personnel-split {
  grid-template-columns: 1fr;
  gap: 20px;
}
.cert-personnel-body {
  position: relative;
  z-index: 2;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.cert-personnel-tiles {
  min-width: 0;
}
.cert-personnel-cta {
  min-width: 0;
}
@media (max-width: 1100px) {
  .cert-personnel-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: stretch;
  }
  .cert-personnel-nav h4 {
    flex: 0 0 100%;
    margin-bottom: 4px;
  }
  .cert-personnel-nav a {
    flex: 1 1 calc(33.333% - 6px);
    min-width: 140px;
    border-left: none;
    border-bottom: 2px solid transparent;
    text-align: center;
    padding: 10px 12px;
  }
  .cert-personnel-nav a.is-active,
  .cert-personnel-nav a:hover {
    border-left-color: transparent;
    border-bottom-color: var(--c-brand);
  }
  .cert-personnel-tiles.grid--2 {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 600px) {
  .cert-personnel-nav a {
    flex: 1 1 calc(50% - 4px);
    min-width: 0;
  }
}
@media (min-width: 1101px) {
  .cert-layout.cert-personnel-split {
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 24px 32px;
    align-items: start;
  }
  .cert-personnel-cta {
    max-width: 280px;
  }
}

/* CTA «Присоединиться» перед футером (Figma Rectangle 443: 1200×260, #08c) */
.section--join-cta {
  padding: 56px 0 64px;
}
.cta-banner--join {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 42px;
  max-width: 1200px;
  margin-inline: auto;
  min-height: 260px;
  padding: 60px 40px 70px;
  box-sizing: border-box;
  text-align: center;
  background: #0088cc;
  background-image: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
  color: #fff;
  grid-template-columns: unset;
  overflow: hidden;
}
.cta-banner--join::before {
  display: none;
}
.cta-banner--join .cta-banner__copy {
  max-width: 744px;
}
.cta-banner--join__title {
  margin: 0;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.02em;
  color: #fff;
  text-align: center;
}
.cta-banner--join .cta-banner__actions {
  justify-content: center;
  margin-top: 0;
  width: auto;
}
.cta-banner--join__btn.btn.btn--white {
  flex: none;
  min-width: 206px;
  min-height: var(--btn-height-white);
  padding: 15px 40px;
  border-radius: var(--btn-radius);
  background: #fff;
  color: var(--c-action);
  border: none;
  font-weight: 500;
  font-size: 14px;
  line-height: normal;
}
.cta-banner--join__btn.btn.btn--white:hover {
  background: #fff;
  color: var(--c-action-hover);
  transform: none;
  box-shadow: none;
}

/* ---------- Footer (Figma: меню футер + нижняя панель) ---------- */
.footer {
  margin-top: 0;
  padding: 0;
  background: #f5f5f5;
  color: var(--c-text);
}
.footer a {
  color: inherit;
  text-decoration: none;
  transition: color var(--transition);
}
.footer a:hover {
  color: var(--c-brand);
}

.footer__nav {
  background: #f5f5f5;
  padding: 48px 0 56px;
  border-top: none;
}
.footer__nav > .container {
  max-width: 1440px;
}
.footer__nav-grid {
  display: grid;
  grid-template-columns: 1fr;
  column-gap: 20px;
  row-gap: 32px;
  align-items: start;
  justify-content: start;
}
/* Figma 5_index_800 / 1_5_800 (12625:12191–12197): 3+3+1, 235px, gap 22/30 */
@media (min-width: 561px) and (max-width: 1023px) {
  .footer__nav > .container {
    padding-inline: 27px;
    max-width: none;
    box-sizing: border-box;
  }

  .footer__nav-grid {
    grid-template-columns: repeat(3, minmax(0, 235px));
    column-gap: 22px;
    row-gap: 30px;
    justify-content: start;
    width: 100%;
    max-width: none;
  }

  .footer__nav-grid > .footer-menu {
    max-width: 235px;
    width: 100%;
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .footer__nav-grid > .footer-menu:nth-child(1) { grid-column: 1; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(2) { grid-column: 2; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(3) { grid-column: 3; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(4) { grid-column: 1; grid-row: 2; }
  .footer__nav-grid > .footer-menu:nth-child(5) { grid-column: 2; grid-row: 2; }
  .footer__nav-grid > .footer-menu:nth-child(6) { grid-column: 3; grid-row: 2; }
  .footer__nav-grid > .footer-menu:nth-child(7) { grid-column: 1; grid-row: 3; }
}
/* Figma 4_index_1024: 4+3, 226px, gap 20/21, padding 30 */
@media (min-width: 1024px) and (max-width: 1279px) {
  .footer__nav > .container {
    padding-inline: 30px;
    max-width: none;
    box-sizing: border-box;
  }
  .footer__nav-grid {
    grid-template-columns: repeat(4, 226px);
    column-gap: 20px;
    row-gap: 21px;
  }
  .footer__nav-grid > .footer-menu {
    max-width: 226px;
  }
  .footer__nav-grid > .footer-menu:nth-child(1) { grid-column: 1; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(2) { grid-column: 2; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(3) { grid-column: 3; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(4) { grid-column: 4; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(5) { grid-column: 1; grid-row: 2; }
  .footer__nav-grid > .footer-menu:nth-child(6) { grid-column: 2; grid-row: 2; }
  .footer__nav-grid > .footer-menu:nth-child(7) { grid-column: 3; grid-row: 2; }
}
/* Figma 3_index_1280 / 2_index_1440: 4+3, 280px, gap 26/60 */
@media (min-width: 1280px) and (max-width: 1899px) {
  .footer__nav > .container {
    max-width: none;
    box-sizing: border-box;
  }
  .footer__nav-grid {
    grid-template-columns: repeat(4, 280px);
    column-gap: 26px;
    row-gap: 60px;
    max-width: 1198px;
    justify-content: start;
  }
  .footer__nav-grid > .footer-menu {
    max-width: 280px;
  }
  .footer__nav-grid > .footer-menu:nth-child(1) { grid-column: 1; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(2) { grid-column: 2; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(3) { grid-column: 3; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(4) { grid-column: 4; grid-row: 1; }
  .footer__nav-grid > .footer-menu:nth-child(5) { grid-column: 1; grid-row: 2; }
  .footer__nav-grid > .footer-menu:nth-child(6) { grid-column: 2; grid-row: 2; }
  .footer__nav-grid > .footer-menu:nth-child(7) { grid-column: 3; grid-row: 2; }
}
@media (min-width: 1280px) and (max-width: 1439px) {
  .footer__nav > .container {
    padding-inline: 41px;
  }
}
@media (min-width: 1440px) and (max-width: 1899px) {
  .footer__nav > .container {
    padding-inline: 119px;
  }
}
@media (min-width: 1900px) {
  .footer__nav {
    padding: 60px 0 56px;
  }
  .footer__nav > .container {
    padding-inline: 124px;
    max-width: 1920px;
    margin-inline: auto;
  }
  /* Figma 3_1_О нас_1900: 7×«меню футер» 200px, gap 65, один ряд (y=6388) */
  body:not(.page-home) .footer__nav-grid {
    grid-template-columns: repeat(7, 200px);
    column-gap: 65px;
    row-gap: 0;
    justify-content: space-between;
    width: 100%;
    max-width: none;
  }
  body:not(.page-home) .footer__nav-grid > .footer-menu {
    grid-column: auto !important;
    grid-row: auto !important;
    max-width: 200px;
  }
}
@media (max-width: 560px) {
  .footer__nav {
    padding: 36px 0 40px;
  }
  .footer__nav-grid {
    grid-template-columns: 1fr;
    row-gap: 0;
  }
  .footer__nav-grid > .footer-menu {
    grid-column: 1 !important;
    grid-row: auto !important;
    padding-bottom: 32px;
  }
  .footer__nav-grid > .footer-menu:last-child {
    padding-bottom: 0;
  }
}

.footer-menu {
  display: flex;
  flex-direction: column;
  gap: 25px;
  min-width: 0;
  max-width: 280px;
}
.footer-menu__title {
  margin: 0;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  color: #020203;
  text-decoration: none;
}
a.footer-menu__title:hover {
  color: var(--c-brand);
}
.footer-menu__title--split {
  display: flex;
  flex-direction: column;
  gap: 0;
  line-height: 1.25;
}
.footer-menu__list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer-menu__list a {
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: #020203;
  text-decoration: none;
}
.footer-menu__list a:hover {
  color: var(--c-brand);
}

.footer__bar {
  background: #fff;
  border-top: none;
  padding: 36px 0 48px;
}
.footer__bar-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(200px, 240px);
  gap: 24px 32px;
  align-items: start;
}
.footer__bar-main {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  min-width: 0;
}
.footer__brand-link {
  display: block;
  line-height: 0;
  text-decoration: none;
}
.footer__logo-wordmark {
  display: block;
  width: auto;
  height: 38px;
  max-width: 100%;
  opacity: 1;
}
.footer__legal {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 8px;
  font-size: 13px;
  line-height: 1.5;
  color: #6b7a96;
}
.footer__legal a {
  color: #6b7a96;
  text-decoration: none;
}
.footer__legal a:hover {
  color: var(--c-brand);
}
.footer__copy {
  color: #6b7a96;
}

.footer__contact-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  min-width: 0;
}
.footer__hotline {
  display: inline-block;
  margin-bottom: 0;
  font-family: var(--font-heading);
  font-size: 24px;
  font-weight: 500;
  color: #020203;
  letter-spacing: 0;
  line-height: normal;
  text-decoration: none;
}
.footer__hotline:hover {
  color: var(--c-brand);
}
.footer__email {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--c-text);
  text-decoration: none;
}
.footer__email:hover {
  color: var(--c-brand);
}
.footer__address {
  margin: 2px 0 0;
  font-size: 14px;
  line-height: 1.5;
  color: #4a5875;
  max-width: 360px;
}
.footer__socials {
  display: flex;
  gap: 12px;
  margin-top: 14px;
  flex-wrap: wrap;
}
.footer__socials a {
  display: block;
  width: 38px;
  height: 38px;
  line-height: 0;
  text-decoration: none;
  transition: opacity var(--transition), transform var(--transition);
}
.footer__socials a:hover {
  opacity: 0.85;
  transform: translateY(-1px);
}
.footer__socials img {
  width: 38px;
  height: 38px;
  display: block;
  object-fit: contain;
}

.footer__utils {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: flex-start;
  justify-self: start;
}
.footer__util {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.35;
  color: var(--c-text);
  cursor: pointer;
  text-decoration: none;
  transition: color var(--transition);
}
.footer__util:hover {
  color: var(--c-brand);
}
.footer__util img {
  flex-shrink: 0;
  display: block;
  object-fit: contain;
}

/* Footer Lang Dropdown */
.footer__lang-wrap {
  position: relative;
  display: inline-flex;
}
.footer__lang-dropdown {
  position: absolute;
  bottom: 100%;
  left: 0;
  margin-bottom: 8px;
  background: #fff;
  border: 1px solid #e1e4e8;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  padding: 6px 0;
  min-width: 140px;
  display: flex;
  flex-direction: column;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity 0.2s, visibility 0.2s, transform 0.2s;
  z-index: 100;
}
.footer__lang-wrap.is-open .footer__lang-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.footer__lang-option {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 16px;
  border: none;
  background: transparent;
  width: 100%;
  text-align: left;
  font-size: 14px;
  color: var(--c-text);
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.footer__lang-option:hover,
.footer__lang-option:focus {
  background: #f5f6f8;
  color: var(--c-brand);
  outline: none;
}
.footer__lang-option.is-active {
  background: rgba(0,40,100,0.05);
  font-weight: 500;
  color: var(--c-brand);
}
.footer__lang-chevron {
  margin-left: 6px;
  transition: transform 0.2s;
}
.footer__lang-wrap.is-open .footer__lang-chevron {
  transform: rotate(180deg);
}

/* ---------- Формы и сообщения ---------- */
.form-message {
  margin-top: 12px; padding: 12px 16px; border-radius: 8px;
  font-size: 14px; font-weight: 500;
  display: none;
}
.form-message--success {
  display: block; background: #d4f5e0; color: #1E8A4A;
  border: 1px solid #1E8A4A;
}
.form-message--error {
  display: block; background: var(--c-accent-light); color: var(--c-accent);
  border: 1px solid var(--c-accent);
}
.form-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 14px; }
.form-field label { font-size: 13px; font-weight: 600; color: var(--c-text); }
.form-field input, .form-field textarea, .form-field select {
  padding: 10px 14px; border: 1px solid var(--c-line);
  border-radius: 8px; font-size: 14px; background: #fff;
}
.form-field input:focus, .form-field textarea:focus {
  outline: 2px solid var(--c-brand); border-color: var(--c-brand);
}
.form-consent {
  display: flex; gap: 8px; align-items: flex-start;
  font-size: 13px; color: var(--c-muted); margin-bottom: 14px;
}
.form-consent input { margin-top: 3px; }
.honeypot { position: absolute; left: -9999px; opacity: 0; pointer-events: none; }

/* ---------- Cookie banner (Figma frame-0: тёмная полоса на всю ширину) ---------- */
.cookie {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  max-width: none;
  margin: 0;
  background: #0f1729;
  color: rgba(255, 255, 255, 0.88);
  border: none;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0;
  padding: 16px max(24px, env(safe-area-inset-left, 0px)) 18px max(24px, env(safe-area-inset-right, 0px));
  padding-bottom: calc(18px + env(safe-area-inset-bottom, 0px));
  box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.18);
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 20px 28px;
  flex-wrap: wrap;
}
@media (min-width: 1480px) {
  .cookie {
    padding-left: calc((100vw - min(var(--container), 100vw)) / 2 + max(24px, env(safe-area-inset-left, 0px)));
    padding-right: calc((100vw - min(var(--container), 100vw)) / 2 + max(24px, env(safe-area-inset-right, 0px)));
  }
}
.cookie p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  flex: 1 1 280px;
  min-width: min(100%, 240px);
  color: inherit;
}
.cookie a {
  color: #8eb4ff;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.cookie a:hover { color: #fff; }
.cookie .btn--primary {
  background: #fff;
  color: var(--c-action);
  border-color: #fff;
  flex-shrink: 0;
}
.cookie .btn--primary:hover {
  background: #fff;
  color: var(--c-action-hover);
  transform: none;
  box-shadow: none;
}
.cookie.is-hidden { display: none; }
body.has-cookie-banner {
  padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
}
@media (max-width: 1279px) {
  body.has-cookie-banner {
    padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px));
  }
  .cookie {
    padding: 12px 16px;
    padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px));
    gap: 12px;
  }
  .cookie p { font-size: 13px; flex: 1 1 200px; }
  .cookie .btn--primary { min-height: 44px; width: 100%; max-width: 200px; }
}

/* ---------- Accessibility / Версия для слабовидящих ---------- */
body.a11y {
  --a11y-bg: #000;
  --a11y-surface: #111;
  --a11y-text: #fff;
  --a11y-text-muted: #e6e6e6;
  --a11y-accent: #ffe900;
  --a11y-border: #ffe900;
  font-size: 20px;
  line-height: 1.75;
  background: var(--a11y-bg) !important;
  color: var(--a11y-text) !important;
  padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
}
body.a11y .header, body.a11y .footer, body.a11y .section,
body.a11y .section--soft, body.a11y .section--dark {
  background: var(--a11y-bg) !important;
  color: var(--a11y-text) !important;
}
body.a11y :is(p, li, dd, dt, blockquote, figcaption, .section-header__lead, .hero__lead, .stat__txt) {
  color: var(--a11y-text-muted) !important;
}
body.a11y a, body.a11y .nav__link, body.a11y h1, body.a11y h2, body.a11y h3 {
  color: var(--a11y-accent) !important;
}
body.a11y a {
  text-decoration: underline !important;
  text-underline-offset: 0.16em;
  text-decoration-thickness: 0.08em;
}
body.a11y .card, body.a11y .tile, body.a11y .news-card, body.a11y .price-card,
body.a11y .event-card, body.a11y .gost-card, body.a11y .timeline__item, body.a11y .stat,
body.a11y .topbar, body.a11y .mobile-panel {
  background: var(--a11y-surface) !important;
  color: var(--a11y-text) !important;
  border-color: var(--a11y-border) !important;
}
body.a11y .btn--primary, body.a11y .btn--accent {
  background: var(--a11y-accent) !important;
  color: #000 !important;
  border-color: var(--a11y-accent) !important;
}
body.a11y .btn--ghost { color: var(--a11y-accent) !important; border-color: var(--a11y-accent) !important; }
body.a11y .btn--outline-white {
  color: var(--a11y-accent) !important;
  border-color: var(--a11y-accent) !important;
  background: transparent !important;
}
body.a11y .topbar__btn,
body.a11y .header__quick-btn,
body.a11y .header__lang-btn,
body.a11y .header__lang-option,
body.a11y .header__search input,
body.a11y .mobile-search,
body.a11y .mobile-search__bar,
body.a11y .page-header,
body.a11y .hero,
body.a11y .split-row,
body.a11y .table,
body.a11y .table-wrap {
  background-color: var(--a11y-surface) !important;
  color: var(--a11y-text) !important;
  border-color: var(--a11y-border) !important;
}
body.a11y .cookie {
  background: var(--a11y-bg) !important;
  border-top-color: var(--a11y-border) !important;
  color: var(--a11y-text) !important;
  bottom: 48px;
}
body.a11y .cookie .btn--primary {
  background: var(--a11y-accent) !important;
  color: #000 !important;
  border-color: var(--a11y-accent) !important;
}
body.a11y.a11y-no-images,
body.a11y.a11y-no-images *::before,
body.a11y.a11y-no-images *::after {
  background-image: none !important;
}
body.a11y.a11y-no-images img:not(.no-a11y),
body.a11y.a11y-no-images .news-card__img,
body.a11y.a11y-no-images .hero__art,
body.a11y.a11y-no-images .project-card__logo img {
  visibility: hidden !important;
}
body.a11y.a11y-fs-lg { zoom: 1.12; }
body.a11y.a11y-fs-xl { zoom: 1.24; }
body.a11y.a11y-spacing :is(p, li, a, button, input, textarea, label, h1, h2, h3, h4, h5, h6, .section-title, .hero__title, .hero__lead) {
  letter-spacing: 0.05em !important;
  word-spacing: 0.12em !important;
  line-height: 1.9 !important;
}

/* ---------- Utilities ---------- */
.text-muted { color: var(--c-muted); }
.text-center { text-align: center; }
.mb-0 { margin-bottom: 0; }
.mt-32 { margin-top: 32px; }
.visually-hidden {
  position: absolute; width: 1px; height: 1px; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap;
}
.skip-link {
  min-height: 44px;
  display: inline-flex;
  align-items: center; position: absolute; left: -9999px; top: 0; background: var(--c-accent); color: #fff; padding: 8px 16px; z-index: 1000; }
.skip-link:focus { left: 16px; top: 16px; }

/* ---------- Page header (внутренние — тёмный блок как в Figma) ---------- */
.page-header {
  position: relative;
  padding: 56px 0 48px;
  color: #fff;
  overflow: hidden;
  background: var(--c-bg-dark);
  border-bottom: none;
}
.page-header::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(102deg, rgba(var(--c-brand-rgb), 0.92) 0%, rgba(var(--c-brand-rgb), 0.78) 100%),
    var(--hero-photo) center/cover no-repeat;
}
.page-header .container { position: relative; z-index: 1; }
.page-header h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(32px, 3.33vw, 44px);
  line-height: 1.1;
  letter-spacing: -.02em;
}
.page-header .breadcrumbs { font-size: 13px; color: rgba(255, 255, 255, 0.75); margin-bottom: 12px; }
.page-header .breadcrumbs a { color: rgba(255, 255, 255, 0.75); }
.page-header .breadcrumbs a:hover { color: #fff; }
.breadcrumbs { font-size: 13px; color: var(--c-muted); margin-bottom: 12px; }
.breadcrumbs a { color: var(--c-muted); }
.breadcrumbs a:hover { color: var(--c-brand); }
.breadcrumbs span + span::before { content: "/"; margin: 0 8px; opacity: .5; }
.breadcrumbs--pipe span + span::before { content: none; }
.breadcrumbs--pipe .breadcrumbs__sep { margin: 0 6px; opacity: 0.55; }
.breadcrumbs--pipe a { text-decoration: underline; text-underline-offset: 2px; }
.page-header .breadcrumbs span + span::before { opacity: .45; }

.section--after-header { padding-top: 32px; }
.page-header + .section,
.page-header + main .section:first-of-type { padding-top: 32px; }

/* ---------- Quote block ---------- */
.quote-block {
  display: grid; grid-template-columns: 1.4fr 1fr; gap: 32px;
  background: #fff; border-radius: var(--radius-lg);
  padding: 40px; border: 1px solid var(--c-line); align-items: center;
}
@media (max-width: 880px) { .quote-block { grid-template-columns: 1fr; } }
.quote-block blockquote {
  margin: 0; font-family: var(--font-display); font-size: 24px;
  line-height: 1.4; color: var(--c-text); font-style: italic;
}
.quote-block cite { display: block; margin-top: 16px; font-style: normal; font-size: 14px; color: var(--c-muted); }
.quote-portrait {
  aspect-ratio: 1;
  background: linear-gradient(135deg, var(--c-brand-light), var(--c-bg-soft));
  border-radius: var(--radius); display: grid; place-items: center;
  font-size: 48px; color: var(--c-brand); font-weight: 800;
  overflow: hidden; flex-shrink: 0; width: 88px; height: 88px;
}
.quote-portrait img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}
/* Figma 6_2_Наука_1440/1900: круг 388px, цитата без рамки; gap 87px */
.quote-block--science {
  grid-template-columns: 388px minmax(0, 511px);
  gap: 87px;
  align-items: center;
  max-width: 986px;
  margin-inline: auto;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
}
.quote-block--science .quote-portrait {
  width: 388px;
  height: auto;
  max-width: 388px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #e8eef5;
  font-size: 0;
  margin: 0;
}
.quote-block--science .quote-portrait img {
  border-radius: 50%;
  object-position: 50% 22%;
}
.quote-block--science blockquote {
  margin: 0;
  font-family: var(--font-body-figma);
  font-size: 20px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.2px;
  color: #020203;
  max-width: 511px;
  align-self: center;
}
.quote-block--science cite {
  display: block;
  margin-top: 35px;
  font-style: normal;
  color: #020203;
  max-width: 331px;
}
.quote-block--science .quote-block__cite-name {
  display: block;
  font-family: var(--font-ui);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.2px;
}
.quote-block--science .quote-block__cite-role {
  display: block;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: 0.2px;
}
@media (min-width: 1900px) {
  .quote-block--science {
    grid-template-columns: 388px minmax(0, 773px);
    max-width: 1248px;
  }
  .quote-block--science blockquote {
    max-width: 773px;
  }
  .quote-block--science cite {
    margin-top: 48px;
  }
}
@media (max-width: 880px) {
  .quote-block--science {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: left;
    max-width: none;
    gap: 14px;
  }
  .quote-block--science .quote-portrait {
    width: min(344px, 88vw);
    max-width: 344px;
    margin-inline: auto;
  }
  .quote-block--science blockquote {
    width: 100%;
    max-width: none;
  }
  .quote-block--science cite {
    max-width: none;
  }
}

/* Vacancy card */
.vacancy {
  background: #fff; border: 1px solid var(--c-line); border-radius: var(--radius);
  padding: 20px; display: flex; flex-direction: column; gap: 10px;
}
.vacancy__title { font-size: 16px; font-weight: 700; }
.vacancy__salary { font-size: 14px; font-weight: 600; color: var(--c-text); margin: 0; }
.vacancy__tags { display: flex; gap: 6px; flex-wrap: wrap; }
.vacancy__tag { font-size: 11px; padding: 3px 8px; background: var(--c-brand-light); color: var(--c-brand); border-radius: 4px; font-weight: 500; }
.vacancy__actions { margin-top: auto; }

/* Figma 6_2_Наука: конкурс — карточки документов (Образование 295×120), не вакансии */
.science-competition-lead {
  max-width: 42em;
  margin: 0;
  font-size: 15px;
  line-height: 1.5;
  color: var(--c-text);
}
.science-competition-docs {
  gap: 16px;
  align-items: stretch;
}
.science-doc-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-height: 120px;
  padding: 20px 20px 20px 25px;
  background: #fff;
  border: 1px solid var(--c-line);
  border-top: 4px solid var(--c-accent);
  border-radius: var(--radius-md, 12px);
  box-shadow: 0 2px 8px rgba(20, 33, 61, 0.06);
  color: var(--c-text);
  text-decoration: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.science-doc-card:hover {
  border-color: var(--c-brand);
  box-shadow: 0 4px 18px rgba(0, 40, 100, 0.1);
}
.science-doc-card__icon {
  flex-shrink: 0;
  width: 33px;
  height: 40px;
  margin-top: 2px;
}
.science-doc-card__icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.science-doc-card__text {
  font-size: 14px;
  line-height: 1.35;
  font-weight: 500;
}
@media (max-width: 980px) {
  .science-competition-docs.grid--3 {
    grid-template-columns: 1fr;
  }
  .science-doc-card {
    min-height: 0;
  }
}

/* GOSTs grid (Figma frame-9/10: миниатюра документа слева, текст справа) */
.gost-card {
  padding: 20px; background: #fff; border: 1px solid var(--c-line);
  border-top: 4px solid var(--c-accent);
  border-radius: 0; transition: all var(--transition);
  display: flex; flex-direction: column; gap: 8px; min-height: 160px;
  color: inherit; text-decoration: none;
}
.gost-card:hover { border-color: var(--c-brand); box-shadow: var(--shadow); }
.gost-card__code { font-size: 12px; font-weight: 700; color: var(--c-accent); letter-spacing: .04em; }
.gost-card__title { font-size: 15px; font-weight: 600; color: var(--c-text); }
.gost-card__desc { font-size: 13px; color: var(--c-muted); flex: 1; }
.gost-card--row {
  flex-direction: row;
  align-items: center;
  gap: 14px;
  min-height: 97px;
  padding: 12px 16px;
  border-radius: 0;
  box-shadow: var(--shadow-sm);
}
.gost-card--row:hover { box-shadow: var(--shadow); }
.gost-card__thumb {
  flex-shrink: 0;
  width: 56px;
  height: 72px;
  align-self: center;
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid var(--c-line);
  background: #fafbfc;
}
.gost-card__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gost-card__stack {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  flex: 1;
}
.gost-card--row .gost-card__title {
  font-family: var(--font);
  font-size: 16px;
  line-height: 1.2;
}
.gost-card--row .gost-card__desc {
  font-family: var(--font);
  font-size: 16px;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
/* Топовые ГОСТы — Figma Rectangle 13: сайдбар + сетка 3×2, компонент «Госты» 378×97 */
.section--gosts-home {
  padding-top: clamp(40px, 5vw, 60px);
  padding-bottom: clamp(48px, 6vw, 70px);
  background: var(--c-bg-soft);
}
.gosts-home {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr;
  grid-template-areas:
    "title"
    "grid"
    "more";
}
.gosts-home__title {
  grid-area: title;
  margin: 0;
  font-family: var(--font-heading);
  font-size: clamp(22px, 2.2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
.section--gosts-home .gosts-home__title.section-title {
  font-size: clamp(22px, 2.2vw, 28px);
  line-height: 1.35;
  letter-spacing: 0;
  font-weight: 600;
  color: #020203;
}
.gosts-home__more {
  grid-area: more;
  min-width: 206px;
  min-height: 47px;
  padding: 15px 40px;
  justify-content: center;
  align-self: start;
  font-family: var(--font-ui);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #08c;
  border-color: #08c;
}
.grid--gosts-home {
  grid-area: grid;
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr;
}
.section--gosts-home .gost-card--row {
  flex-direction: row;
  align-items: center;
  gap: 20px;
  min-height: 97px;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.section--gosts-home .gost-card--row:hover {
  box-shadow: none;
  border-color: transparent;
}
.section--gosts-home .gost-card__thumb {
  flex-shrink: 0;
  width: 66px;
  height: 97px;
  align-self: flex-start;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: hidden;
}
.section--gosts-home .gost-card__thumb img {
  object-fit: cover;
  object-position: center top;
}
.section--gosts-home .gost-card__stack {
  gap: 10px;
}
.section--gosts-home .gost-card__code {
  font-family: var(--font-heading);
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  color: #020203;
  letter-spacing: 0;
}
.section--gosts-home .gost-card__desc {
  font-family: var(--font-body-figma);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
  flex: none;
  max-height: 67px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}
@media (min-width: 600px) {
  .grid--gosts-home {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
}
@media (min-width: 881px) {
  .gosts-home {
    grid-template-columns: minmax(180px, 236px) minmax(0, 1fr);
    grid-template-rows: auto auto;
    gap: 16px 48px;
    align-items: start;
  }
  .gosts-home__title {
    grid-area: unset;
    grid-column: 1;
    grid-row: 1;
  }
  .gosts-home__more {
    grid-area: unset;
    grid-column: 1;
    grid-row: 2;
    margin-top: 8px;
  }
  .grid--gosts-home {
    grid-area: unset;
    grid-column: 2;
    grid-row: 1 / span 2;
  }
}
@media (min-width: 1280px) {
  .grid--gosts-home {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 33px;
    max-width: none;
    margin-inline: 0;
  }
  .section--gosts-home .gost-card--row {
    max-width: 378px;
  }
}
@media (max-width: 880px) {
  .gosts-home__more {
    margin-inline: auto;
  }
}

/* Figma 1_index_1900: сайдбар 236px + gap 176 + сетка 3×378 (gap 65) — после базовых .gosts-home */
@media (min-width: 1900px) {
  body.page-home .gosts-home {
    grid-template-columns: 236px minmax(0, max-content);
    column-gap: 176px;
    row-gap: 12px;
    align-items: start;
    justify-content: start;
  }
  body.page-home .gosts-home__title {
    grid-column: 1;
    grid-row: 1;
    text-align: left;
    font-size: 28px;
    line-height: 1.35;
    max-width: 236px;
    margin: 0;
  }
  body.page-home .gosts-home__more {
    grid-column: 1;
    grid-row: 2;
    margin-top: 24px;
    margin-inline: 0;
    justify-self: start;
    align-self: start;
  }
  body.page-home .grid--gosts-home {
    grid-column: 2;
    grid-row: 1 / span 2;
    grid-template-columns: repeat(3, 378px);
    column-gap: 65px;
    row-gap: 33px;
    justify-content: start;
    justify-items: stretch;
    width: max-content;
    max-width: 1264px;
    margin-inline: 0;
  }
  body.page-home .section--gosts-home .gost-card--row {
    max-width: 378px;
    width: 100%;
  }
  body.page-home .section--gosts-home {
    padding-top: 60px;
    padding-bottom: 70px;
  }
}

/* Figma Rectangle 13: серая полоса на всю ширину; фонд и новости — на белом */
body.page-home .section--fund-library {
  background: #fff;
}
body.page-home .section--gosts-home {
  position: relative;
  isolation: isolate;
  background: transparent;
  padding-top: 60px;
  padding-bottom: 70px;
}
body.page-home .section--gosts-home::before {
  content: "";
  position: absolute;
  inset: 0;
  left: 50%;
  width: 100vw;
  max-width: 100vw;
  transform: translateX(-50%);
  background: var(--c-bg-soft);
  z-index: -1;
}
body.page-home .section--gosts-home > .container {
  position: relative;
  z-index: 1;
}
body.page-home .section--news-home {
  background: #fff;
}

/* Figma 1_index_1900: новости — горизонтальная карусель 378×478, без стрелок (после grid-переопределений) */
@media (min-width: 1900px) {
  body.page-home .section--news-home .news-showcase.h-slider {
    overflow: hidden;
    width: 100%;
    margin: 0;
    padding: 0;
  }
  body.page-home .section--partners .section-title,
  body.page-home .section--events-home .section-title {
    font-size: 32px;
    line-height: 1.35;
  }
  body.page-home .section--news-home .section-title {
    font-size: 28px;
    line-height: 1.35;
  }
  body.page-home .section--news-home .news-showcase .h-slider__track.media-cards-grid--news-home {
    display: flex;
    flex-wrap: nowrap;
    grid-template-columns: none;
    gap: 33px;
    max-width: none;
    width: 100%;
    margin-inline: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 0;
    scrollbar-width: none;
    padding-bottom: 4px;
  }
  body.page-home .section--news-home .news-showcase .h-slider__track > .news-card {
    flex: 0 0 378px;
    width: 378px;
    min-height: 487px;
    height: 487px;
    max-height: 487px;
    overflow: hidden;
    scroll-snap-align: start;
  }

  /* Figma 1_index_1900: «Решаем вместе» — 574 + 250 + кнопка/лого (gaps 105 / 51) */
  body.page-home .section--problem-report {
    padding-top: 64px;
    padding-bottom: 72px;
  }
  body.page-home .problem-banner {
    display: grid;
    grid-template-columns: 574px 250px auto;
    grid-template-areas: "copy media actions";
    align-items: center;
    column-gap: 105px;
    row-gap: 0;
    max-width: 1378px;
    width: min(1378px, 100%);
    margin-inline: auto;
    text-align: left;
  }
  body.page-home .problem-banner__copy {
    grid-area: copy;
    max-width: 574px;
    justify-self: start;
    text-align: left;
  }
  body.page-home .problem-banner__title,
  body.page-home .problem-banner__lead {
    text-align: left;
  }
  body.page-home .problem-banner__title {
    font-size: 32px;
    line-height: 1.35;
  }
  body.page-home .problem-banner__media {
    grid-area: media;
    justify-self: center;
  }
  body.page-home .problem-banner__media img {
    width: 250px;
    height: 250px;
  }
  body.page-home .problem-banner__actions {
    grid-area: actions;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    justify-self: start;
    gap: 51px;
  }

  /* Figma Rectangle 443 @1900: 1378×260 (не 1200px по центру узкой колонки) */
  body.page-home .section--join-cta {
    padding: 56px 0 64px;
  }
  body.page-home .section--join-cta > .container {
    max-width: var(--container);
    padding-inline: var(--gutter);
  }
  body.page-home .cta-banner--join {
    max-width: 1378px;
    width: min(1378px, 100%);
    margin-inline: auto;
    min-height: 260px;
    padding: 60px 40px 70px;
    gap: 42px;
    box-sizing: border-box;
  }
  body.page-home .cta-banner--join .cta-banner__copy {
    max-width: 850px;
  }
  body.page-home .cta-banner--join__title {
    font-size: 32px;
    line-height: 1.35;
  }

  /* Figma 1_index_1900: футер — 7×«меню футер» 200px (gap 65), бар: лого | контакты | утилиты */
  body.page-home .footer__nav {
    padding: 60px 0 56px;
  }
  body.page-home .footer__nav > .container,
  body.page-home .footer__bar > .container.footer__bar-grid,
  body.page-home .footer__bar > .container {
    max-width: var(--container);
    padding-inline: var(--gutter);
  }
  body.page-home .footer__nav-grid {
    grid-template-columns: repeat(7, minmax(0, 200px));
    column-gap: clamp(32px, 3.4vw, 65px);
    row-gap: 0;
    width: 100%;
    max-width: none;
    margin-inline: 0;
    justify-content: space-between;
  }
  body.page-home .footer__nav-grid > .footer-menu {
    grid-column: auto !important;
    grid-row: auto !important;
    min-width: 0;
  }

  body.page-home .footer__bar {
    padding: 36px 0 56px;
  }
  body.page-home .footer__bar > .container.footer__bar-grid {
    display: grid;
    /* Figma 1_index_1900: лого 122, контакты 835, утилиты 1568 (минус gutter 120) */
    grid-template-columns: 294px 421px minmax(250px, 733px) 233px;
    grid-template-rows: auto auto;
    grid-template-areas:
      "brand gap contacts utils"
      "legal gap contacts utils";
    column-gap: 0;
    row-gap: 49px;
    align-items: start;
    width: 100%;
    max-width: none;
  }
  body.page-home .footer__bar-main {
    display: contents;
  }
  body.page-home .footer__brand-link {
    grid-area: brand;
    align-self: start;
  }
  body.page-home .footer__logo-wordmark {
    width: 294px;
    height: 38px;
    object-fit: contain;
    object-position: left center;
  }
  body.page-home .footer__legal {
    grid-area: legal;
    margin-top: 0;
    max-width: 360px;
  }
  body.page-home .footer__contact-block {
    grid-area: contacts;
    align-self: start;
    max-width: 420px;
    gap: 13px;
  }
  body.page-home .footer__hotline {
    margin-bottom: 0;
  }
  body.page-home .footer__address {
    margin-bottom: 22px;
  }
  body.page-home .footer__utils {
    grid-area: utils;
    justify-self: start;
    align-self: start;
    width: 233px;
    gap: 20px;
  }
  body.page-home .footer__socials a {
    border-radius: 0;
    background: transparent;
  }
  body.page-home .footer__util {
    font-weight: 500;
    gap: 10px;
  }
  body.page-home .footer__util img {
    width: auto;
    height: auto;
    max-width: none;
  }
}

/* Figma 3_2/3_1 О нас + внутренние: нижняя панель футера — лого | контакты | утилиты (как 1_index) */
@media (min-width: 881px) {
  .footer__bar > .container.footer__bar-grid {
    display: grid;
    /* 3_2 @1440: лого 120, контакты 608, утилиты 1087 → 294 + 194 + flex + 233 */
    grid-template-columns: 294px minmax(120px, 194px) minmax(280px, 1fr) 233px;
    grid-template-rows: auto auto;
    grid-template-areas:
      "brand . contacts utils"
      "legal . contacts utils";
    column-gap: 0;
    row-gap: 49px;
    align-items: start;
    width: 100%;
    max-width: none;
  }
  .footer__bar-main {
    display: contents;
  }
  .footer__brand-link {
    grid-area: brand;
    align-self: start;
  }
  .footer__logo-wordmark {
    width: 294px;
    height: 38px;
    object-fit: contain;
    object-position: left center;
  }
  .footer__legal {
    grid-area: legal;
    margin-top: 0;
    max-width: 353px;
    gap: 10px;
  }
  .footer__contact-block {
    grid-area: contacts;
    align-self: start;
    max-width: 420px;
    gap: 13px;
  }
  .footer__address {
    margin: 0 0 22px;
  }
  .footer__socials {
    margin-top: 0;
    gap: 15px;
  }
  .footer__utils {
    grid-area: utils;
    justify-self: start;
    align-self: start;
    width: 233px;
    gap: 20px;
  }
  .footer__util {
    font-family: var(--font-heading);
    font-weight: 500;
    font-size: 14px;
    line-height: normal;
    gap: 10px;
  }
  .footer__util img {
    width: auto;
    height: auto;
    max-width: none;
  }
}
@media (min-width: 1280px) {
  .footer__bar > .container.footer__bar-grid {
    max-width: none;
  }
}
@media (min-width: 1440px) {
  .footer__bar > .container.footer__bar-grid {
    padding-inline: 119px;
    box-sizing: border-box;
  }
}
@media (min-width: 1900px) {
  .footer__bar > .container.footer__bar-grid {
    padding-inline: 124px;
    max-width: 1920px;
    margin-inline: auto;
    grid-template-columns: 294px 421px minmax(250px, 733px) 233px;
  }
}

/* Insight feed (3x2) */
.insight-card {
  background: #fff; border-radius: 0; overflow: hidden;
  border: 1px solid var(--c-line); border-top: 4px solid var(--c-accent);
  display: flex; flex-direction: column;
  transition: border-color var(--transition), box-shadow var(--transition);
  box-shadow: 0 2px 10px rgba(20, 33, 61, 0.05);
}
.insight-card:hover {
  box-shadow: 0 10px 32px rgba(20, 33, 61, 0.1);
  border-color: rgba(0, 40, 100, 0.14);
}
.insight-card__img {
  aspect-ratio: 378 / 300;
  max-height: 300px;
  background: linear-gradient(135deg, var(--c-brand), var(--c-brand-dark));
  position: relative;
  overflow: hidden;
}
@media (min-width: 1280px) {
  .insight-card {
    min-height: 487px;
  }
  .insight-card__img {
    aspect-ratio: auto;
    height: 300px;
    flex-shrink: 0;
  }
  .insight-card__body {
    padding: 22px 24px 26px;
  }
}
.insight-card__meta {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 10px;
}
.insight-card__meta .insight-card__rubric {
  position: static;
  padding: 0;
  background: none;
  border-radius: 0;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: var(--c-accent);
  letter-spacing: 0;
}
.insight-card__img .insight-card__rubric {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 4px 10px;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 4px;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  color: var(--c-brand);
  text-transform: none;
  letter-spacing: 0;
}
.insight-card__body { padding: 20px 22px 22px; flex: 1; display: flex; flex-direction: column; }
.insight-card__body > .news-card__date { margin-bottom: 8px; }
.insight-card__meta + .news-card__title { margin-top: 0; }
.insight-card__meta .news-card__date {
  margin-bottom: 0;
  flex-shrink: 0;
  text-align: right;
}

/* Add tile (с плюсом) */
.add-tile {
  display: grid; place-items: center; text-align: center;
  background: var(--c-brand-light); border: 2px dashed var(--c-brand);
  border-radius: var(--radius); color: var(--c-brand);
  font-weight: 600; padding: 32px;
  text-decoration: none; transition: all var(--transition); min-height: 200px;
}
.add-tile:hover { background: var(--c-brand); color: #fff; border-color: var(--c-brand); }
.add-tile__plus {
  width: 56px; height: 56px; border-radius: 50%;
  background: rgba(255,255,255,.4); display: grid; place-items: center;
  font-size: 28px; margin-bottom: 12px; font-weight: 300;
}

/* Отрасли + промо НИР / аспирантура / журнал (Figma frame-10, сетка 6× на 1440) */
.section--industries {
  padding-top: 72px;
  padding-bottom: 88px;
  background: #fff;
}
.section--industries .section-header {
  margin-bottom: 32px;
}
.section-header--sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
/* Figma «Тариф» (2010:3032): #prices — 3×378, порядок: название → цена → описание → кнопка → список */
@media (min-width: 768px) and (max-width: 1899px) {
  body.page-home #prices .pricing {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(10px, 1.5vw, 33px);
    overflow: visible;
    margin-inline: 0;
    padding-inline: 0;
    max-width: none;
    justify-content: stretch;
  }
  body.page-home #prices .price-card {
    width: auto;
    min-height: 0;
    height: auto;
    flex: unset;
    scroll-snap-align: unset;
    padding: clamp(18px, 3vw, 24px) clamp(14px, 2vw, 24px) clamp(20px, 3vw, 28px);
    gap: clamp(14px, 2vw, 18px);
  }
}
/* Figma «Тариф 1024» (10009:5686): компактная карточка 300×452 */
@media (max-width: 1279px) {
  body.page-home #prices .price-card__name {
    font-size: 24px;
  }
  body.page-home #prices .price-card__name::after {
    margin-top: 20px;
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  body.page-home #prices .pricing {
    grid-template-columns: repeat(3, 300px);
    justify-content: center;
    gap: 10px;
  }
  body.page-home #prices .price-card {
    min-height: 0;
    height: auto;
  }
}
@media (min-width: 1280px) {
  body.page-home .section--home-prices {
    padding-top: 48px;
    padding-bottom: 64px;
  }
  body.page-home .section--home-prices .pricing {
    margin-top: 0;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
  }
  /* Figma 2_index_1440: «Отрасли» по центру (x≈656), без ссылки «Другие отрасли» */
  .section--industries .section-header {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
    margin-bottom: 70px;
  }
  body.page-home .section--industries .section-header .section-link {
    display: none;
  }
}
.section--industries .section-title {
  font-size: clamp(28px, 2.35vw, 34px);
  letter-spacing: -0.02em;
  line-height: 1.12;
}
.industries-promo {
  margin-top: 40px;
}
@media (min-width: 1024px) {
  .section--industries .industries-promo {
    margin-top: 44px;
  }
}

.industries {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 20px;
}
@media (min-width: 1280px) {
  .industries {
    gap: 33px;
    max-width: 1200px;
    margin-inline: auto;
    grid-template-columns: repeat(4, 275px);
    justify-content: start;
  }
  body.page-home .section--industries .industries {
    margin-left: 40px;
    margin-right: auto;
  }
  body.page-home .section--industries .section-title {
    font-size: 32px;
    line-height: 1.35;
  }
  .section--industries .industries-promo.grid--3 {
    max-width: 1200px;
    margin-inline: auto;
    gap: 33px;
    grid-template-columns: repeat(3, 378px);
    justify-content: center;
  }
  body.page-home .section--industries .tile--promo {
    width: 378px;
    max-width: 378px;
    padding: 25px;
    gap: 15px;
    box-sizing: border-box;
  }
  body.page-home .section--industries .tile--promo .tile__body {
    gap: 15px;
    text-align: left;
  }
  body.page-home .section--industries .tile--promo .tile__title {
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    text-align: left;
  }
  body.page-home .section--industries .tile--promo .tile__desc {
    font-size: 16px;
    line-height: 1.3;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    max-height: calc(16px * 1.3 * 2);
  }
  body.page-home .section--industries .tile--promo .tile__media img {
    max-width: 328px;
    max-height: 280px;
  }
}
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-home .section--industries .industries {
    margin-left: auto;
    margin-right: auto;
  }
}
.industry-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 128px;
  padding: 20px 12px;
  background: #fff;
  border: 1px solid var(--c-line);
  border-radius: 0;
  box-shadow: var(--shadow-sm);
  text-align: center;
  color: var(--c-text);
  text-decoration: none;
  transition: border-color var(--transition), background var(--transition), color var(--transition), box-shadow var(--transition);
}
.industry-card:hover {
  border-color: var(--c-brand);
  background: var(--c-brand);
  color: #fff;
  box-shadow: var(--shadow);
}
.industry-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(36px, 3.75vw, 54px);
  height: clamp(40px, 4.17vw, 60px);
  flex-shrink: 0;
}
.industry-card__icon img,
.industry-card__icon svg {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  display: block;
  object-fit: contain;
}
.industry-card:hover .industry-card__icon img,
.industry-card:hover .industry-card__icon svg {
  filter: brightness(0) invert(1);
}
.industry-card__label {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  max-width: 22ch;
  text-wrap: balance;
}
.industry-pill {
  padding: 10px 18px; background: #fff; border: 1px solid var(--c-line);
  border-radius: 999px; color: var(--c-text); font-size: 14px; font-weight: 500;
  transition: all var(--transition);
}
.industry-pill:hover { border-color: var(--c-brand); background: var(--c-brand); color: #fff; }

@media (min-width: 1280px) {
  .industry-card {
    min-height: 167px;
    padding: 22px 14px;
  }
  .industry-card__label {
    font-size: 16px;
    letter-spacing: -0.01em;
  }
}
@media (max-width: 1279px) {
  .industries { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  body:not(.page-home) .industries { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .industries { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Figma 1_index_1900: Отрасли 4×275×167 (gap 100/33), промо 3×378 (gap 133), общая ширина 1400px */
@media (min-width: 1900px) {
  body.page-home .section--industries > .container {
    max-width: var(--container);
  }
  body.page-home .section--industries .industries {
    --industries-align-inset: 139px;
    width: 1400px;
    max-width: calc(100% - var(--industries-align-inset));
    margin-left: var(--industries-align-inset);
    margin-right: auto;
    grid-template-columns: repeat(4, 275px);
    column-gap: 100px;
    row-gap: 33px;
    justify-content: flex-start;
    justify-items: stretch;
  }
  body.page-home .section--industries .industry-card {
    width: 275px;
    max-width: 275px;
    min-width: 275px;
    height: 167px;
    min-height: 167px;
    max-height: 167px;
    aspect-ratio: 275 / 167;
    padding: 25px;
    gap: 15px;
    box-sizing: border-box;
    justify-content: center;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }
  body.page-home .section--industries .industry-card__icon {
    width: 54px;
    height: 60px;
    flex-shrink: 0;
  }
  body.page-home .section--industries .industry-card__icon img,
  body.page-home .section--industries .industry-card__icon svg {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }
  body.page-home .section--industries .industries-promo.grid--3 {
    width: 1400px;
    max-width: calc(100% - var(--industries-align-inset, 139px));
    margin-left: var(--industries-align-inset, 139px);
    margin-right: auto;
    margin-top: 65px;
    grid-template-columns: repeat(3, 378px);
    column-gap: 133px;
    row-gap: 0;
    justify-content: flex-start;
    justify-items: stretch;
  }
  body.page-home .section--industries .industries-promo .tile--promo {
    width: 378px;
    max-width: 378px;
    min-width: 0;
  }
  body.page-home .section--industries .industries-promo .tile--promo .tile__media img {
    max-width: 328px;
    max-height: 280px;
  }
}

/* «Решаем вместе» / Госуслуги (Figma 2_index_1440: текст + 250×250 + кнопка + лого) */
.section--problem-report {
  padding-top: clamp(40px, 6vw, 64px);
  padding-bottom: clamp(48px, 7vw, 72px);
  background: #fff;
}
.problem-banner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  max-width: 1200px;
  margin-inline: auto;
  text-align: center;
}
.problem-banner__copy {
  width: 100%;
  max-width: 502px;
}
.problem-banner__title {
  margin: 0 0 12px;
  font-size: clamp(22px, 2.5vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.02em;
  color: var(--c-text);
}
.problem-banner__title-line {
  display: block;
  text-decoration: none;
}
.problem-banner__lead {
  display: inline-block;
  margin: 0;
  font-size: 16px;
  line-height: 1.3;
  font-weight: 400;
  color: var(--c-text);
  text-decoration: none;
}
.problem-banner__lead:hover {
  color: var(--c-brand);
}
.problem-banner__media {
  flex-shrink: 0;
  line-height: 0;
}
.problem-banner__media img {
  display: block;
  width: clamp(160px, 28vw, 250px);
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
}
.problem-banner__actions {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(20px, 4vw, 51px);
}
.problem-banner__brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  width: 129px;
  text-decoration: none;
}
.problem-banner__brand img {
  display: block;
  width: 129px;
  max-width: 100%;
  height: 21px;
  object-fit: contain;
}
.problem-banner__brand-tagline {
  display: block;
  width: 100%;
  font-family: var(--font-body-figma);
  font-size: 18px;
  line-height: 1.3;
  font-weight: 400;
  color: #2864b8;
  text-align: center;
  white-space: nowrap;
}
.problem-banner__btn {
  min-width: 151px;
  min-height: 47px;
  padding-inline: 40px;
}
/* Figma 5_index_800 / 6_index_1024: текст сверху, иллюстрация + кнопка/лого в ряд */
@media (min-width: 640px) and (max-width: 1023px) {
  .problem-banner {
    display: grid;
    grid-template-columns: auto auto;
    grid-template-rows: auto auto;
    grid-template-areas:
      "copy copy"
      "media actions";
    justify-content: center;
    align-items: center;
    column-gap: 20px;
    row-gap: 20px;
    text-align: left;
  }
  .problem-banner__copy {
    grid-area: copy;
    justify-self: center;
    width: 100%;
    max-width: 574px;
    margin-right: 0;
    text-align: center;
  }
  .problem-banner__title {
    text-align: center;
  }
  .problem-banner__lead {
    text-align: center;
  }
  .problem-banner__media {
    grid-area: media;
    justify-self: end;
  }
  .problem-banner__media img {
    width: clamp(197px, 28vw, 250px);
    height: auto;
    max-width: 250px;
  }
  .problem-banner__actions {
    grid-area: actions;
    flex-direction: column-reverse;
    align-items: flex-start;
    justify-content: center;
    justify-self: start;
    gap: 18px;
  }
  .problem-banner__btn {
    min-width: 151px;
    border-radius: var(--btn-radius);
  }
}

@media (max-width: 639px) {
  .problem-banner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "copy copy"
      "media actions";
    align-items: center;
    column-gap: 12px;
    row-gap: 20px;
    text-align: left;
  }
  .problem-banner__copy {
    grid-area: copy;
    max-width: none;
    width: 100%;
  }
  .problem-banner__media {
    grid-area: media;
    justify-self: start;
  }
  .problem-banner__media img {
    width: clamp(160px, 42vw, 197px);
  }
  .problem-banner__actions {
    grid-area: actions;
    flex-direction: column-reverse;
    align-items: flex-start;
    justify-self: end;
    gap: 14px;
  }
}

@media (min-width: 1024px) {
  .problem-banner {
    display: grid;
    grid-template-columns: minmax(0, 502px) 250px auto;
    grid-template-areas: "copy media actions";
    align-items: center;
    column-gap: 38px;
    row-gap: 20px;
    text-align: left;
  }
  .problem-banner__copy {
    grid-area: copy;
    justify-self: start;
    max-width: 502px;
    margin-right: 0;
    text-align: left;
  }
  .problem-banner__title,
  .problem-banner__lead {
    text-align: left;
  }
  .problem-banner__media {
    grid-area: media;
    justify-self: center;
  }
  .problem-banner__media img {
    width: 250px;
  }
  .problem-banner__actions {
    grid-area: actions;
    justify-self: end;
    justify-content: flex-end;
    gap: 51px;
  }
}

/* Schemed cycle */
.cycle-schema {
  display: flex;
  gap: 0;
  flex-wrap: nowrap;
  padding: 40px 24px 32px;
  background: #fff;
  border: 1px solid var(--c-line);
  border-radius: var(--radius-lg);
  justify-content: space-between;
  overflow-x: auto;
  position: relative;
}
.cycle-schema::before {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  top: 52px;
  height: 4px;
  background: var(--c-brand);
  pointer-events: none;
}
.cycle-step {
  flex: 0 0 min(220px, 42vw);
  background: var(--c-brand-light);
  border-radius: var(--radius);
  padding: 28px 16px 20px;
  position: relative;
  text-align: center;
  z-index: 1;
}
.cycle-step:not(:last-child)::after {
  content: "→";
  position: absolute;
  right: -18px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 22px;
  font-weight: 700;
  color: var(--c-brand);
  z-index: 2;
}
.cycle-step__num {
  position: absolute; top: -14px; left: 50%; transform: translateX(-50%);
  background: var(--c-brand); color: #fff;
  width: 28px; height: 28px; border-radius: 50%;
  display: grid; place-items: center; font-weight: 700; font-size: 13px;
}
.cycle-step__title { font-size: 14px; font-weight: 600; margin-top: 6px; }

.cycle-schema--figma {
  display: block;
  padding: 0;
  border: none;
  background: transparent;
  overflow: visible;
  margin: 0;
}
.cycle-schema--figma::before {
  display: none;
}
.cycle-schema--figma img {
  display: block;
  width: 100%;
  max-width: 959px;
  height: auto;
  margin-inline: auto;
  border-radius: var(--radius-lg);
}

/* Slider hero (пресс-центр / медиа) */
.slider-hero {
  position: relative;
  aspect-ratio: 16/7;
  min-height: 360px;
  border-radius: var(--radius-lg);
  overflow: hidden;
  color: #fff;
  padding: 48px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: var(--c-bg-dark);
}
.slider-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(105deg, rgba(var(--c-brand-rgb), 0.9) 0%, rgba(var(--c-brand-rgb), 0.55) 100%),
    var(--hero-photo-media) 72% center/cover no-repeat;
}
.slider-hero > * { position: relative; z-index: 1; }
.slider-hero h2 { color: #fff; max-width: 600px; }
.slider-hero p { color: rgba(255,255,255,.9); max-width: 540px; }
.slider-hero__ui {
  position: absolute; right: 32px; top: 50%; transform: translateY(-50%);
  display: flex; flex-direction: column; align-items: flex-end; gap: 12px;
}
.slider-hero__dots { display: flex; flex-direction: column; gap: 8px; }
.slider-hero__dot { width: 10px; height: 10px; border-radius: 50%; background: rgba(255,255,255,.4); cursor: pointer; border: 0; transition: all var(--transition); padding: 0; }
.slider-hero__dot.is-active { background: #fff; transform: scale(1.3); }
.slider-hero__dot:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.slider-hero__pause {
  padding: 8px 14px; border-radius: 6px; font-size: 13px; font-weight: 600;
  background: rgba(255,255,255,.2); color: #fff;
}
.slider-hero__pause:hover { background: rgba(255,255,255,.35); }
.slider-hero__pause[aria-pressed="true"] { background: rgba(255,255,255,.45); }
.slider-hero__slide {
  display: none;
  position: relative;
  z-index: 1;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  min-height: 100%;
}
.slider-hero__slide.is-active { display: flex; animation: fadeIn .5s; }
.slider-hero__slide[hidden] { display: none !important; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }

/* Projects — Figma 7_2_Проекты_1440: карточка 378×339, Frame 771 (серый header + белое тело) */
.section--projects-list {
  padding-top: clamp(24px, 3vw, 40px);
  padding-bottom: clamp(48px, 5vw, 80px);
  background: #fff;
}
.projects-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 33px;
  align-items: stretch;
}
@media (max-width: 1199px) {
  .projects-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
}
@media (max-width: 599px) {
  .projects-grid { grid-template-columns: 1fr; gap: 20px; }
}
.project-card {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-height: 339px;
  padding: 0;
  border-radius: var(--radius-lg);
  border: 1px solid var(--c-line);
  background: #fff;
  color: var(--c-text);
  overflow: hidden;
  box-shadow: 0 2px 14px rgba(20, 33, 61, 0.06);
  transition: box-shadow var(--transition), transform var(--transition);
  position: relative;
}
.project-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}
.project-card__head {
  display: flex;
  align-items: center;
  gap: 18px;
  min-height: 120px;
  padding: 22px 25px;
  background: #f5f5f5;
}
.project-card__logo {
  flex: 0 0 86px;
  width: 86px;
  height: 86px;
  border-radius: 8px;
  background: #fff;
  display: grid;
  place-items: center;
  overflow: hidden;
}
.project-card__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.project-card__logo--text {
  font-weight: 800;
  font-size: 15px;
  letter-spacing: 0.04em;
  color: var(--c-brand);
}
.project-card__title {
  flex: 1;
  margin: 0;
  font-size: clamp(15px, 1.05vw, 18px);
  font-weight: 700;
  line-height: 1.25;
  color: var(--c-text);
}
.project-card__title a {
  color: inherit;
  text-decoration: none;
}
.project-card__title a:hover { color: var(--c-brand); }
.project-card__desc {
  margin: 0;
  flex: 1;
  padding: 20px 25px 25px;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(20, 33, 61, 0.78);
}
.project-card__link {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.project-card__link:hover { text-decoration: none; }

.project-card--wide-logo .project-card__head {
  justify-content: flex-start;
  align-items: center;
}
.project-card--wide-logo .project-card__logo--wide {
  flex: 1 1 auto;
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 0;
  border-radius: 0;
  background: transparent;
  display: block;
}
.project-card--wide-logo .project-card__logo--wide img {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: left center;
}
.project-card--text-only .project-card__head {
  align-items: flex-start;
}
.project-card--text-only .project-card__title--header {
  flex: 1;
  margin: 0;
  font-size: clamp(14px, 0.95vw, 16px);
  font-weight: 700;
  line-height: 1.25;
  color: var(--c-text);
  text-transform: uppercase;
  letter-spacing: 0.01em;
}

/* Wide content rows */
.split-row { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
.split-row--product {
  gap: 48px;
  grid-template-columns: minmax(0, 523px) minmax(280px, 1fr);
  align-items: start;
}
.split-row--product .split-row__copy {
  max-width: 523px;
}
.split-row--product .split-row__art--contain {
  background: transparent;
  border-radius: 0;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media (max-width: 880px) {
  .split-row:not(.split-row--product):not(.split-row--science-ckp) { grid-template-columns: 1fr; }
}

/* Figma Отрасли_разделы: десктоп — колонка (заголовок, текст, иллюстрация); мобилка 375 — ряд */
.tile--promo {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding: 25px;
  min-height: 0;
  border-radius: 0;
  border: 1px solid var(--c-line);
  border-top: 4px solid var(--c-accent);
  overflow: hidden;
  align-items: stretch;
  background: #f5f5f5;
  box-shadow: var(--shadow-sm);
  text-decoration: none;
  transition: border-color var(--transition), box-shadow var(--transition);
}
.tile--promo:hover {
  border-color: var(--c-brand);
  box-shadow: var(--shadow);
  transform: none;
  color: inherit;
}
.tile--promo .tile__body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0;
}
.tile--promo .tile__title {
  font-family: var(--font);
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: normal;
  margin: 0;
  color: #020203;
}
.tile--promo .tile__desc {
  margin: 0;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tile--promo .tile__media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 0;
  padding: 0;
  background: transparent;
}
.tile--promo .tile__media img {
  display: block;
  width: auto;
  max-width: 328px;
  height: auto;
  max-height: 280px;
  margin-inline: auto;
  object-fit: contain;
  object-position: center bottom;
}
.tile--promo .tile__media--placeholder {
  min-height: 200px;
  background: linear-gradient(135deg, #e8f1fb 0%, #f4f6fa 100%);
}
.tile--promo:hover .tile__title { color: var(--c-brand); }
@media (max-width: 767px) {
  /* Figma Отрасли_разделы 375: иллюстрация слева ~109px, текст справа */
  .tile--promo {
    display: grid;
    grid-template-columns: minmax(100px, 34%) 1fr;
    grid-template-rows: auto;
    gap: 15px;
    padding: 15px 10px;
    align-items: start;
  }
  .tile--promo .tile__media {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
  }
  .tile--promo .tile__media img {
    max-width: 100%;
    max-height: 95px;
    width: auto;
  }
  .tile--promo .tile__body {
    grid-column: 2;
    grid-row: 1;
    gap: 10px;
  }
  .tile--promo .tile__desc {
    font-size: 16px;
    -webkit-line-clamp: 4;
  }
}
@media (min-width: 881px) and (max-width: 1279px) {
  .tile--promo {
    padding: 15px;
    gap: 10px;
  }
  .tile--promo .tile__media img {
    max-width: 270px;
    max-height: 235px;
  }
}

.product-showcase {
  position: relative;
  padding: 32px 56px 40px;
  background: var(--c-bg-soft, #f5f5f5);
  box-sizing: border-box;
}
body.page-home .section--home-product .product-showcase,
body.page-home .section--home-product .product-showcase__body {
  background: #fff;
}
.product-showcase .h-slider__nav {
  position: absolute;
}
.product-showcase__main > .product-showcase__rail .product-showcase__nav,
.product-showcase__main > .product-showcase__nav {
  position: static;
  top: auto;
  left: auto;
  right: auto;
  transform: none;
}
.product-showcase__nav {
  border-radius: 50%;
  display: grid;
  place-items: center;
  cursor: pointer;
  z-index: 20;
  pointer-events: auto;
  border: 0;
}
/* Figma frame-7: белый фон на всю ширину, стрелки у краёв viewport (breakout из .container) */
@media (min-width: 800px) {
  body.page-home {
    overflow-x: clip;
    max-width: 100%;
  }
  body.page-home .section--home-product,
  body.page-home .section--soft:has(.product-showcase),
  body.page-home .section--partners {
    overflow-x: clip;
    background: #fff;
  }
  body.page-home .section--home-product > .container {
    max-width: none;
    padding-inline: 0;
  }
  body.page-home .section--home-product > .container > .product-showcase,
  .section--soft:has(.product-showcase) {
    overflow: visible;
  }
  body.page-home .section--home-product > .container > .product-showcase,
  .section--soft > .container > .product-showcase {
    width: 100%;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: calc((100vw - min(var(--container), 100vw)) / 2 + var(--gutter));
    padding-right: calc((100vw - min(var(--container), 100vw)) / 2 + var(--gutter));
    padding-top: 48px;
    padding-bottom: 56px;
    box-sizing: border-box;
    background: #fff;
  }
  .hero--home + .section--soft > .container > .product-showcase,
  body.page-home .section--home-product > .container > .product-showcase {
    padding-top: 32px;
  }
  body.page-home .product-showcase__main {
    width: 100%;
    max-width: none;
    overflow: visible;
  }
}
.product-showcase.h-slider,
.product-showcase {
  overflow: hidden;
  isolation: isolate;
}
body.page-home .section--home-product .product-showcase {
  overflow: visible;
}
.product-showcase__track {
  position: relative;
}
.product-showcase__slide {
  display: none;
}
.product-showcase__slide.is-active {
  display: block;
}
.product-showcase .split-row { margin: 0; }
.product-showcase .section-title {
  margin: 0 0 21px;
  max-width: 527px;
}
.product-showcase .split-row__copy p {
  font-size: 15px;
  line-height: 1.3;
  margin: 0 0 14px;
  max-width: 523px;
}
.product-showcase .h-slider__track,
.product-showcase__track {
  display: block;
  overflow: hidden;
  overflow-x: hidden;
}
.product-showcase .h-slider__track > *,
.product-showcase__track > * {
  flex: none;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
@media (max-width: 600px) {
  .section--soft > .container > .product-showcase {
    width: auto;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .product-showcase { padding: 0 0 8px; }
  .product-showcase__dots {
    display: flex;
    margin-top: 16px;
  }
  body:not(.page-home) .product-showcase__main {
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-template-areas:
      "track track track"
      "prev . next";
    row-gap: 20px;
    align-items: center;
  }
  body:not(.page-home) .product-showcase__track {
    grid-area: track;
  }
  body:not(.page-home) .product-showcase__rail--prev {
    grid-area: prev;
    justify-self: start;
  }
  body:not(.page-home) .product-showcase__rail--next {
    grid-area: next;
    justify-self: end;
  }
  body:not(.page-home) .product-showcase__rail .product-showcase__nav,
  body:not(.page-home) .product-showcase__main > .product-showcase__nav {
    position: static;
    transform: none;
    display: grid;
    width: 44px;
    height: 44px;
    font-size: 22px;
    margin-top: 8px;
  }
}
.split-row__art {
  background: linear-gradient(135deg, var(--c-brand-light), var(--c-bg-soft));
  border-radius: var(--radius-lg); aspect-ratio: 4/3;
  display: grid; place-items: center; color: var(--c-brand);
  overflow: hidden;
}
.split-row__art img { width: 100%; height: 100%; object-fit: cover; display: block; }
.split-row__art--contain {
  background: var(--c-bg-soft);
  border-radius: 0;
  aspect-ratio: auto;
  min-height: 280px;
}
.split-row__art--contain img {
  object-fit: contain;
  padding: 24px;
  width: 100%;
  max-width: 100%;
  height: auto;
  max-height: 360px;
  margin: 0 auto;
}
/* Figma Icon_01: справа, object-contain, без подложки в product-showcase */
.product-showcase .split-row__art--contain {
  min-height: 0;
  background: transparent;
}
.product-showcase .split-row__art--contain img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: clamp(280px, 38vw, 453px);
  margin: 0 0 0 auto;
  padding: 0;
  object-fit: contain;
  object-position: center right;
}
@media (min-width: 601px) and (max-width: 1279px) {
  /* Figma 5_index_800 / 4_index_1024: две колонки, иллюстрация справа */
  .split-row--product {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(200px, 46%);
    gap: clamp(16px, 3vw, 32px);
    align-items: start;
  }
  .split-row--product .split-row__copy {
    display: block !important;
    max-width: none;
  }
  .product-showcase .section-title {
    font-size: clamp(26px, 3.2vw, 32px);
    line-height: 1.15;
    letter-spacing: -0.02em;
    margin-bottom: 21px;
    max-width: min(527px, 100%);
  }
  .product-showcase .split-row__copy p {
    font-size: 15px;
    line-height: 1.3;
    margin: 0 0 14px;
    max-width: min(486px, 100%);
  }
  .split-row--product .split-row__art {
    justify-self: end;
    max-width: 100%;
  }
  .product-showcase .split-row__art--contain img {
    max-height: clamp(300px, 40vw, 453px);
    margin-left: auto;
    margin-right: 0;
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  /* Figma 4_index_1024: заголовок → текст, gap 30px */
  .product-showcase .section-title {
    margin-bottom: 30px;
  }
}
@media (min-width: 1440px) and (max-width: 1899px) {
  /* Figma 2_index_1440: Icon_01 602×602 @ x=753, gap copy→art 107px */
  .split-row--product {
    gap: 72px;
    grid-template-columns: minmax(0, 523px) minmax(380px, 1fr);
  }
  .product-showcase .split-row--product {
    margin-left: 40px;
  }
  .product-showcase .section-title {
    font-size: clamp(30px, 2.2vw, 34px);
    line-height: 1.12;
    margin-bottom: 24px;
    max-width: 527px;
  }
  .product-showcase .split-row__copy p {
    font-size: 15px;
    line-height: 1.62;
    max-width: 523px;
  }
  .product-showcase .split-row__art--contain img {
    max-height: clamp(400px, 36vw, 520px);
    max-width: min(100%, 520px);
    aspect-ratio: 1;
  }
}
@media (min-width: 1440px) and (max-width: 1899px) {
  .product-showcase .split-row__art--contain img {
    max-height: 520px;
  }
}
.split-row__art svg { width: 60%; height: 60%; opacity: .85; }

/* Members / Учёный совет (Figma: карточка 275×435, фото 150×150) */
.members-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
@media (max-width: 980px) { .members-grid { grid-template-columns: repeat(2, 1fr); } }
.member {
  background: #fff;
  border: 1px solid var(--c-line);
  border-radius: var(--radius);
  padding: 20px;
  text-align: center;
}
.member__avatar {
  width: 96px;
  height: 96px;
  border-radius: 50%;
  background: var(--c-brand-light);
  margin: 0 auto 14px;
  display: grid;
  place-items: center;
  color: var(--c-brand);
  font-size: 28px;
  font-weight: 700;
}
.member__name { font-size: 15px; font-weight: 700; margin-bottom: 4px; }
.member__role { font-size: 13px; color: var(--c-muted); }

.members-grid--council {
  display: flex;
  flex-wrap: nowrap;
  gap: 33px;
  align-items: stretch;
  overflow: visible;
}
.section--science-council {
  padding-top: clamp(48px, 5vw, 72px);
  padding-bottom: clamp(56px, 6vw, 88px);
  background: #fff;
  overflow: visible;
}
.science-council__title {
  margin: 0 0 clamp(48px, 5vw, 60px);
  width: 100%;
  text-align: center;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: clamp(24px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.01em;
  color: var(--c-text, #020203);
}
.science-council__footer {
  margin: clamp(28px, 4vw, 48px) auto 0;
  text-align: center;
}
.science-council__doc-link {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: min(100%, 580px);
  min-height: 60px;
  padding: 20px 52px 20px 25px;
  background: #fff;
  border-radius: 50px;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
  color: var(--c-text, #020203);
  text-decoration: none;
  position: relative;
  transition: box-shadow var(--transition), color var(--transition);
}
.science-council__doc-link::after {
  content: "";
  position: absolute;
  right: 25px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid var(--c-brand);
  border-bottom: 2px solid var(--c-brand);
  transform: translateY(-60%) rotate(-45deg);
}
.science-council__doc-link:hover {
  color: var(--c-brand);
  box-shadow: 0 4px 16px rgba(57, 59, 65, 0.14);
}
.science-council__carousel.h-slider--council {
  position: relative;
  display: block;
  max-width: none;
  width: calc(100% + 50vw - 50%);
  margin-left: 0;
  margin-right: calc(50% - 50vw);
  padding: 0;
  overflow: visible;
}
.science-council__carousel.h-slider {
  overflow: visible;
  max-width: none;
}
.science-council__viewport {
  width: 100%;
  min-width: 0;
  overflow: hidden;
}
.h-slider--council .h-slider__track.members-grid--council {
  gap: 33px;
  padding-bottom: 8px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.h-slider--council .h-slider__track.members-grid--council::-webkit-scrollbar {
  display: none;
}
.h-slider--council .h-slider__track > .member--council {
  flex: 0 0 min(275px, 78vw);
  max-width: 275px;
  scroll-snap-align: start;
}
.science-council__carousel .science-council__nav.h-slider__nav {
  position: absolute;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
  color: transparent;
  font-size: 0;
  line-height: 0;
  z-index: 5;
  cursor: pointer;
}
.science-council__carousel .h-slider__nav--prev {
  left: clamp(-62px, -4.3vw, -25px);
  right: auto;
}
.science-council__carousel .h-slider__nav--next {
  right: clamp(24px, 6.3vw, 91px);
  left: auto;
}
.science-council__nav-icon {
  display: block;
  width: 50px;
  height: 50px;
  background: url("img/science/council-carousel-arrow-figma.svg") center / contain no-repeat;
}
.science-council__carousel .h-slider__nav--prev .science-council__nav-icon {
  transform: scaleX(-1);
}
.science-council__carousel .science-council__nav:hover,
.science-council__carousel .science-council__nav:focus-visible {
  background: transparent;
  border: none;
  color: transparent;
}
.science-council__carousel .science-council__nav:hover .science-council__nav-icon,
.science-council__carousel .science-council__nav:focus-visible .science-council__nav-icon {
  opacity: 0.85;
}
@media (max-width: 880px) {
  .science-council__carousel.h-slider--council {
    width: 100%;
    margin-right: 0;
  }
  .science-council__carousel .science-council__nav.h-slider__nav {
    display: none;
  }
}
@media (min-width: 881px) {
  .science-council__carousel .science-council__nav.h-slider__nav {
    display: flex;
  }
}
@media (min-width: 1280px) {
  .h-slider--council .h-slider__track > .member--council {
    flex: 0 0 275px;
  }
  body.page-science .section--science-council > .container {
    padding-left: clamp(24px, 8.4vw, 121px);
    padding-right: clamp(24px, 8.4vw, 121px);
    overflow: visible;
  }
  body.page-science .science-council__title {
    font-size: 28px;
  }
}
@media (min-width: 1900px) {
  body.page-science .science-council__title {
    font-size: 32px;
    line-height: 1.35;
    margin-bottom: 55px;
  }
  body.page-science .science-council__footer {
    margin-top: 70px;
  }
  body.page-science .science-council__carousel .h-slider__nav--next {
    right: 75px;
  }
  .h-slider--council .h-slider__track.members-grid--council {
    gap: 33px;
  }
}

/* Figma 6_2_Наука — #publications (13189:44462, 44418–44431 @1440; 14325–14373 @1900) */
body.page-science #publications.section--science-publications {
  background: #f5f5f5;
}
body.page-science #publications .section-header--publications {
  margin-bottom: 60px;
}
body.page-science #publications .science-publications__title {
  width: 100%;
  max-width: none;
  margin: 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: clamp(24px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.01em;
  text-align: center;
  color: var(--c-text, #020203);
}
body.page-science #publications .edu-pub-layout__issues-title {
  margin: 0 0 16px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--c-text, #020203);
}
body.page-science #publications .edu-pub-issue {
  min-height: 60px;
  padding: 20px 25px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  border-radius: 50px;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}
body.page-science #publications .science-pub-cta.edu-pub-layout__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 378px;
  min-height: 47px;
  padding: 15px 40px;
  border: 1px solid #08c;
  border-radius: 50px;
  background: transparent;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #08c;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
body.page-science #publications .science-pub-cta.edu-pub-layout__cta:hover,
body.page-science #publications .science-pub-cta.edu-pub-layout__cta:focus-visible {
  background: #08c;
  border-color: #08c;
  color: #fff;
}
body.page-science #publications .edu-pub-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 370px));
  gap: 60px 30px;
  max-width: none;
  justify-content: start;
}
body.page-science #publications .edu-pub-card {
  gap: 20px;
  min-height: 150px;
  max-width: 370px;
}
body.page-science #publications .edu-pub-card__cover {
  width: 106px;
  height: 150px;
  box-shadow: none;
}
body.page-science #publications .edu-pub-card__body {
  gap: 10px;
  padding-top: 0;
}
body.page-science #publications .edu-pub-card__tag {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #ed1a34;
  background: #f3f3f3;
  padding: 5px;
  border-radius: 5px;
}
body.page-science #publications .edu-pub-card__title {
  display: flex;
  flex-direction: column;
  gap: 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  color: var(--c-text, #020203);
}
body.page-science #publications .edu-pub-card__title-line {
  display: block;
}
@media (min-width: 1280px) {
  body.page-science #publications > .container {
    padding-left: clamp(24px, 8.4vw, 121px);
    padding-right: clamp(24px, 8.4vw, 121px);
  }
  body.page-science #publications .edu-pub-layout {
    grid-template-columns: 378px minmax(0, 1fr);
    gap: 50px;
    align-items: start;
  }
  body.page-science #publications .edu-pub-layout__issues,
  body.page-science #publications .edu-pub-issues,
  body.page-science #publications .science-pub-cta.edu-pub-layout__cta {
    max-width: 378px;
  }
}
@media (min-width: 1900px) {
  body.page-science #publications .science-publications__title {
    font-size: 32px;
  }
  body.page-science #publications .edu-pub-layout {
    gap: 133px;
  }
}
.member--council {
  box-sizing: border-box;
  width: 100%;
  max-width: 275px;
  min-height: 435px;
  padding: 25px;
  text-align: center;
  border: none;
  border-radius: 0;
  background: #fff;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
}
@media (max-width: 1279px) {
  .member--council {
    flex: 0 0 min(275px, 82vw);
    scroll-snap-align: start;
    min-height: 0;
  }
}
.member--council .member__avatar--photo,
.member--council .member__avatar--placeholder {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  margin: 0;
  flex-shrink: 0;
  object-fit: cover;
  object-position: center top;
  display: block;
  background: #e8ecf2;
}
.member--council .member__name {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  margin: 0;
  max-width: 225px;
  color: #020203;
}
.member--council .member__role {
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #000;
  margin: 0;
  max-width: 225px;
  flex: 1;
}

/* Обучение — главная (Figma 6005:7277 #0073ad + 2018:4140 фото, без градиента) */
.section--edu-training {
  padding: 0;
  background: transparent;
}
.edu-training {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  min-height: clamp(420px, 47vw, 676px);
  align-items: stretch;
  overflow: hidden;
  background: #0073ad;
}
.edu-training::before {
  display: none;
}
.edu-training__panel {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #0073ad;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: clamp(32px, 5vw, 60px) clamp(16px, 4vw, 120px);
}
.edu-training__title {
  margin: 0 0 clamp(24px, 3vw, 40px);
  font-size: clamp(22px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  color: #fff;
  max-width: 565px;
}
.edu-training__list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: 451px;
  width: 100%;
}
.edu-training__list li {
  margin: 0;
}
.edu-training__link {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  min-height: 60px;
  padding: 20px 25px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
  color: #020203;
  text-decoration: none;
  background: #fff;
  border-radius: 50px;
  box-shadow: 0 0 12.5px rgba(19, 33, 74, 0.2);
  transition: box-shadow var(--transition), transform var(--transition);
}
.edu-training__link::after {
  content: none;
}
.edu-training__link:hover {
  background: #fff;
  color: var(--c-brand);
  box-shadow: 0 4px 18px rgba(19, 33, 74, 0.24);
  transform: translateY(-1px);
}
.edu-training__visual {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  background: #0073ad;
  pointer-events: none;
}
.edu-training__photo {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: 50% 31%;
  opacity: 1;
}
@media (min-width: 1280px) and (max-width: 1899px) {
  .edu-training {
    grid-template-columns: 691px 691px;
    justify-content: center;
    max-width: 1440px;
    margin-inline: auto;
    min-height: 676px;
  }
  .edu-training__panel {
    padding: 60px 120px;
  }
}
@media (max-width: 767px) {
  .edu-training {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .edu-training__visual {
    position: relative;
    inset: auto;
    order: -1;
    min-height: clamp(240px, 56vw, 380px);
    pointer-events: none;
  }
  .edu-training__photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 31%;
  }
  .edu-training__panel {
    position: relative;
    z-index: 1;
    padding: 24px 16px 32px;
  }
  .edu-training__list {
    max-width: none;
  }
  .edu-training__link {
    min-height: 52px;
    padding: 16px 20px;
    font-size: 15px;
  }
}

/* Цифровая библиотека фонда — Figma Rectangle 442: белая карточка на фоне #F4F6FA */
.section--fund-library {
  padding-top: clamp(40px, 5vw, 64px);
  padding-bottom: clamp(40px, 5vw, 64px);
  background: var(--c-bg-soft);
}
.fund-library-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 297px);
  gap: 24px 40px;
  align-items: center;
  max-width: 1200px;
  margin-inline: auto;
  padding: clamp(24px, 3vw, 32px) clamp(20px, 3vw, 40px);
  background: #fff;
  border-radius: 0;
  box-shadow: 0 0 25px rgba(57, 59, 65, 0.1);
  text-align: left;
}
.fund-library-cta__copy {
  min-width: 0;
}
.fund-library-cta__title {
  margin: 0 0 clamp(16px, 2.5vw, 24px);
  font-size: clamp(22px, 2.1vw, 28px);
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #121617;
  text-align: left;
}
.fund-library-cta__lead {
  margin: 0 0 clamp(20px, 3vw, 28px);
  max-width: 779px;
  font-size: 15px;
  line-height: 1.5;
  color: var(--c-muted);
  text-align: left;
}
.fund-library-cta__btn {
  min-width: 165px;
  min-height: 47px;
  justify-content: center;
}
.fund-library-cta__art {
  display: flex;
  align-items: center;
  justify-content: center;
}
.fund-library-cta__art img {
  display: block;
  width: min(100%, 297px);
  height: auto;
  margin-inline: auto;
}
@media (max-width: 767px) {
  .fund-library-cta {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 20px 16px 24px;
    text-align: center;
  }
  .fund-library-cta__title,
  .fund-library-cta__lead {
    text-align: center;
    margin-inline: auto;
  }
  .fund-library-cta__art {
    order: -1;
  }
  .fund-library-cta__btn {
    margin-inline: auto;
  }
}
body.page-home .fund-library-cta__btn.btn--primary {
  border-radius: var(--btn-radius);
  padding: 12px 28px;
  min-width: 165px;
  width: auto;
}
@media (min-width: 1280px) {
  .section--fund-library {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}

/* Helper: callout with arrow */
.callout {
  display: inline-flex; gap: 8px; align-items: center;
  padding: 6px 12px; background: var(--c-accent-light); color: var(--c-accent);
  border-radius: 8px; font-size: 13px; font-weight: 600;
}

/* Стрелки горизонтального слайдера */
.h-slider { position: relative; overflow: hidden; max-width: 100%; }
.h-slider__track {
  display: flex; gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory;
  scrollbar-width: thin; padding-bottom: 12px;
  width: 100%; max-width: 100%; box-sizing: border-box;
}
.h-slider__track > * { flex: 0 0 min(320px, 88vw); scroll-snap-align: start; min-width: 0; max-width: 88vw; }
.h-slider__nav {
  position: absolute; top: 40%; width: 44px; height: 44px; border-radius: 50%;
  background: #fff; box-shadow: var(--shadow); border: 1px solid var(--c-line);
  display: grid; place-items: center; cursor: pointer; z-index: 5;
}
.h-slider__nav--prev { left: -22px; }
.h-slider__nav--next { right: -22px; }
.h-slider__nav:hover { background: var(--c-brand); color: #fff; border-color: var(--c-brand); }

/* Figma Group 132 / Group 53 — единая стрелка карусели 50×50 (about / science / partners / news) */
.h-slider__nav-icon {
  display: block;
  width: 50px;
  height: 50px;
  background: url("img/about/press-carousel-arrow-figma.svg") center / contain no-repeat;
}
.h-slider__nav--prev .h-slider__nav-icon {
  transform: scaleX(-1);
}
.h-slider__nav:has(.h-slider__nav-icon) {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
  color: transparent;
  font-size: 0;
  line-height: 0;
}
.h-slider__nav:has(.h-slider__nav-icon):hover,
.h-slider__nav:has(.h-slider__nav-icon):focus-visible {
  background: transparent;
  border: none;
  color: transparent;
}
.h-slider__nav:has(.h-slider__nav-icon):hover .h-slider__nav-icon,
.h-slider__nav:has(.h-slider__nav-icon):focus-visible .h-slider__nav-icon {
  opacity: 0.85;
}

/* Figma frame-7: только legacy .h-slider__nav; стрелки в __main — в колонках сетки */
.product-showcase .h-slider__nav {
  top: 50%;
  transform: translateY(-50%);
  width: 52px;
  height: 52px;
  font-size: 26px;
  line-height: 1;
  font-weight: 300;
  color: #22324d;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid #a7b2c4;
  box-shadow: 0 6px 18px rgba(20, 33, 61, 0.18);
}
.product-showcase__main > .product-showcase__rail .product-showcase__nav,
.product-showcase__main > .product-showcase__nav {
  z-index: 6;
  width: 50px;
  height: 50px;
  font-size: 24px;
  line-height: 1;
  font-weight: 300;
  color: #22324d;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid #a7b2c4;
  box-shadow: 0 6px 18px rgba(20, 33, 61, 0.18);
}
.product-showcase .h-slider__nav:hover,
.product-showcase__main > .product-showcase__rail .product-showcase__nav:hover,
.product-showcase__main > .product-showcase__nav:hover {
  background: #ffffff;
  color: var(--c-brand);
  border-color: var(--c-brand);
}
.product-showcase .h-slider__nav--prev {
  left: max(8px, calc(env(safe-area-inset-left, 0px) + 4px));
}
.product-showcase .h-slider__nav--next {
  right: max(8px, calc(env(safe-area-inset-right, 0px) + 4px));
}
.product-showcase__rail {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-width: 50px;
  box-sizing: border-box;
}
.product-showcase__body {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
/* Область слайда: стрелки по вертикали по центру иллюстрации, не всего блока с padding */
.product-showcase__main {
  position: relative;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding-inline: 0;
}
.product-showcase__dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  margin: 7px 0 0;
  padding: 0;
  border: 0;
}
.product-showcase__dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #c8ccd6;
  flex-shrink: 0;
  padding: 0;
  border: 0;
  cursor: pointer;
}
.product-showcase__dot.is-active {
  background: var(--c-accent);
}
.product-showcase__dots span {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #c8ccd6;
  flex-shrink: 0;
}
.product-showcase__dots span.is-active {
  background: var(--c-accent);
}
@media (min-width: 800px) {
  .product-showcase__dots {
    display: flex;
  }
  /* Стрелки — отдельные колонки слева/справа, контент в центре (без absolute) */
  .product-showcase__main {
    display: grid;
    grid-template-columns: minmax(50px, auto) minmax(0, 1fr) minmax(50px, auto);
    grid-template-areas: "prev track next";
    align-items: center;
    column-gap: clamp(16px, 2.5vw, 40px);
    padding-inline: 0;
  }
  .product-showcase__main > .product-showcase__track {
    grid-area: track;
    min-width: 0;
  }
  .product-showcase__main > .product-showcase__rail--prev {
    grid-area: prev;
  }
  .product-showcase__main > .product-showcase__rail--next {
    grid-area: next;
  }
  .product-showcase__main > .product-showcase__rail,
  .product-showcase__main > .product-showcase__rail .product-showcase__nav {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    margin: 0;
  }
  body.page-home .product-showcase__main > .product-showcase__rail .product-showcase__nav--prev,
  body.page-home .product-showcase__main > .product-showcase__rail .product-showcase__nav--next,
  body.page-home .product-showcase__main > .product-showcase__nav--prev,
  body.page-home .product-showcase__main > .product-showcase__nav--next {
    left: auto;
    right: auto;
    top: auto;
    transform: none;
  }
}
@media (min-width: 1280px) {
  body.page-home .product-showcase.h-slider,
  body.page-home .product-showcase {
    overflow: visible;
  }
}
@media (min-width: 800px) and (max-width: 880px) {
  .product-showcase {
    padding-top: 28px;
    padding-bottom: 36px;
  }
}
/* Figma 1_index_1900: «Продвигаемый продукт» — после правил 1440px (725+602, gap 218) */
@media (min-width: 1900px) {
  body.page-home .product-showcase.h-slider,
  body.page-home .product-showcase {
    overflow-x: clip;
    overflow-y: visible;
  }
  body.page-home .product-showcase .h-slider__track,
  body.page-home .product-showcase__track {
    overflow: visible;
  }
  body.page-home .product-showcase .split-row--product {
    display: grid;
    grid-template-columns: 725px 602px;
    gap: 218px;
    width: min(1545px, 100%);
    max-width: 100%;
    margin-inline: auto;
    align-items: center;
    box-sizing: border-box;
  }
  body.page-home .product-showcase .section-title {
    max-width: 725px;
    margin-bottom: 45px;
    font-size: 34px;
    line-height: 1.12;
  }
  body.page-home .product-showcase .split-row__copy {
    max-width: 725px;
  }
  body.page-home .product-showcase .split-row__copy p {
    max-width: 725px;
    margin-bottom: 55px;
  }
  body.page-home .product-showcase .split-row__art {
    width: 602px;
    max-width: 602px;
    min-width: 0;
    justify-self: end;
    overflow: visible;
  }
  body.page-home .product-showcase .split-row__art--contain {
    overflow: visible;
    min-height: 0;
    background: transparent;
  }
  body.page-home .product-showcase .split-row__art--contain img {
    display: block;
    width: 602px;
    height: 602px;
    max-width: 602px;
    max-height: 602px;
    margin: 0;
    padding: 0;
    object-fit: contain;
    object-position: center right;
  }

  /* Обучение: полоса на всю ширину 1920 (Rectangle 441) */
  body.page-home .section--edu-training {
    max-width: none;
  }
  body.page-home .edu-training {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    min-height: 678px;
  }
  body.page-home .edu-training__panel {
    padding: 60px 120px;
  }
}

/* Figma 2_index_1440 (1440–1899): после базовых 1280px / 1440px — иначе перебиваются */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-home .hero--home .hero__copy {
    max-width: 652px;
  }
  body.page-home .hero--home .hero__title {
    font-size: 44px;
    line-height: 1.35;
    letter-spacing: -0.025em;
    max-width: 652px;
    margin-bottom: 30px;
  }
  body.page-home .hero--home .hero__lead {
    font-size: 17px;
    line-height: 1.47;
    max-width: 498px;
  }
  body.page-home .hero--home .hero__inner,
  body.page-home .hero--home .hero__tiles {
    margin-inline: 40px;
  }
  body.page-home .hero--home .hero__tiles.grid--4 {
    grid-template-columns: repeat(4, 275px);
    gap: 33px;
    max-width: 1200px;
    justify-content: flex-start;
  }
  body.page-home .hero--home .tile--hero {
    min-height: 194px;
  }

  /* Продвигаемый продукт (Figma 2_index_1440): 523 + 107 + 602, без обрезки иллюстрации */
  body.page-home .product-showcase.h-slider,
  body.page-home .product-showcase {
    overflow: visible;
  }
  body.page-home .product-showcase .h-slider__track,
  body.page-home .product-showcase__track {
    overflow: visible;
  }
  /* Стрелки в боковых колонках (Figma 2_index_1440: Group 126 x=90, Group 125 x=1350) */
  body.page-home .product-showcase__main {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr) 50px;
    grid-template-areas: "prev track next";
    align-items: center;
    column-gap: 0;
    width: calc(100% + 60px);
    max-width: none;
    margin-inline: -30px;
    position: relative;
  }
  body.page-home .product-showcase__main > .product-showcase__track {
    grid-area: track;
    width: 100%;
    min-width: 0;
  }
  body.page-home .product-showcase__main > .product-showcase__rail {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    z-index: 6;
  }
  body.page-home .product-showcase__main > .product-showcase__rail--prev {
    grid-area: prev;
    justify-self: center;
  }
  body.page-home .product-showcase__main > .product-showcase__rail--next {
    grid-area: next;
    justify-self: center;
  }
  body.page-home .product-showcase__main > .product-showcase__rail .product-showcase__nav {
    position: static;
    transform: none;
  }
  body.page-home .product-showcase .split-row--product {
    display: grid;
    grid-template-columns: minmax(0, 523px) minmax(0, 602px);
    gap: 107px;
    margin-left: 0;
    margin-inline: auto;
    width: 100%;
    max-width: none;
    justify-content: space-between;
    align-items: start;
  }
  body.page-home .product-showcase .section-title {
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    margin-bottom: 45px;
    max-width: 527px;
  }
  body.page-home .product-showcase .split-row__copy {
    max-width: 523px;
  }
  body.page-home .product-showcase .split-row__copy p {
    font-size: 16px;
    line-height: 1.3;
    margin-bottom: 15px;
    max-width: 523px;
  }
  body.page-home .product-showcase .split-row__copy p:last-of-type {
    margin-bottom: 55px;
  }
  body.page-home .product-showcase .split-row__art {
    width: auto;
    max-width: 602px;
    min-width: 0;
    justify-self: end;
    overflow: visible;
  }
  body.page-home .product-showcase .split-row__art--contain {
    overflow: visible;
  }
  body.page-home .product-showcase .split-row__art--contain img {
    display: block;
    width: min(602px, 100%);
    height: auto;
    max-width: 602px;
    aspect-ratio: 1;
    margin: 0 0 0 auto;
    padding: 0;
    object-fit: contain;
    object-position: center right;
  }

  body.page-home #polygon.section {
    padding-top: 48px;
    padding-bottom: 32px;
  }
  body.page-home .cta-banner--polygon h2 {
    font-size: 28px;
    line-height: 1.35;
    max-width: 935px;
  }
  body.page-home .cta-banner--polygon p {
    font-size: 14px;
    max-width: 523px;
  }

  body.page-home .section--home-prices .pricing,
  body.page-home #prices .pricing {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 33px;
    max-width: 1200px;
    margin-inline: auto;
    justify-content: center;
    overflow: visible;
    scroll-snap-type: none;
    padding-inline: 0;
  }
  body.page-home #prices .price-card {
    width: 378px;
    min-height: 0;
    height: auto;
    flex: unset;
    scroll-snap-align: unset;
  }

  body.page-home .section--industries .industries {
    margin-inline: auto;
    margin-left: auto;
    max-width: 1200px;
    width: 100%;
    grid-template-columns: repeat(4, 275px);
    column-gap: 33px;
    row-gap: 33px;
    justify-content: center;
  }
  body.page-home .section--industries .industries-promo.grid--3 {
    margin-inline: auto;
    margin-left: auto;
    max-width: 1200px;
    grid-template-columns: repeat(3, 378px);
    gap: 33px;
    justify-content: center;
  }
  body.page-home .section--industries .tile--promo {
    width: 378px;
    max-width: 378px;
    padding: 25px;
    gap: 15px;
    box-sizing: border-box;
  }
  body.page-home .section--industries .tile--promo .tile__body {
    gap: 15px;
    text-align: left;
  }
  body.page-home .section--industries .tile--promo .tile__desc {
    -webkit-line-clamp: 2;
    line-clamp: 2;
    max-height: calc(16px * 1.3 * 2);
  }

  body.page-home .section--edu-training {
    max-width: none;
  }
  body.page-home .edu-training {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    min-height: 676px;
  }
  body.page-home .edu-training__panel {
    padding: 60px 80px;
  }

  body.page-home .fund-library-cta {
    max-width: 1200px;
    margin-inline: auto;
    min-height: 298px;
    padding: 32px 40px;
  }

  body.page-home .gosts-home {
    grid-template-columns: 236px minmax(0, max-content);
    column-gap: 48px;
    row-gap: 12px;
    max-width: 1200px;
    margin-inline: auto;
  }
  body.page-home .gosts-home__title {
    grid-column: 1;
    grid-row: 1;
    text-align: left;
    font-size: 28px;
    max-width: 236px;
  }
  body.page-home .gosts-home__more {
    grid-column: 1;
    grid-row: 2;
    margin-inline: 0;
    justify-self: start;
  }
  body.page-home .grid--gosts-home {
    grid-column: 2;
    grid-row: 1 / span 2;
    grid-template-columns: repeat(2, 378px);
    gap: 33px;
    justify-content: start;
    max-width: none;
    margin-inline: 0;
  }
  body.page-home .section--gosts-home .gost-card--row {
    max-width: 378px;
    width: 100%;
  }
  body.page-home .grid--gosts-home .gost-card--row:nth-child(n + 3) {
    grid-column: 1 / -1;
    justify-self: start;
    max-width: 378px;
  }

  body.page-home .section--news-home .news-showcase .h-slider__track.media-cards-grid--news-home {
    max-width: 1200px;
    margin-inline: auto;
  }

  /* Мероприятия: горизонтальная карусель (как инсайты), не сетка */
  body.page-home .section--events-home .events-showcase .h-slider__track {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    gap: 33px;
    width: max-content;
    min-width: 100%;
    max-width: none;
    margin-inline: 0;
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    padding-bottom: 4px;
  }
  body.page-home .section--events-home .events-showcase .h-slider__track > .event-card--media {
    flex: 0 0 378px;
    width: 378px;
    min-height: 422px;
    scroll-snap-align: start;
  }
  body.page-home .section--events-home .events-showcase .h-slider__track > .event-card--media:nth-child(n + 5) {
    grid-column: auto;
    justify-self: stretch;
  }

  body.page-home .problem-banner {
    max-width: 1200px;
    grid-template-columns: minmax(0, 502px) 250px auto;
    column-gap: 38px;
  }

  body.page-home .section--join-cta .cta-banner--join {
    max-width: 1200px;
    min-height: 260px;
  }
  body.page-home .cta-banner--join__title {
    font-size: 28px;
  }
}
.pub-layout {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 32px;
}
@media (max-width: 880px) {
  .pub-layout { grid-template-columns: 1fr; }
}

/* Internal pages: cards, hero quote, layouts */
/* «О нас»: миссия / видение — Figma Frame 743 / 744; pull = (heroBgY+heroH)−missionY */
body.page-about .section--about-mission {
  --about-mission-card-h: 173px;
  --about-mission-pull: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.section--about-mission {
  position: relative;
  z-index: 3;
  padding: 0;
  margin-top: var(--about-mission-pull, 0);
}

.section--about-mission > .container {
  padding-top: 0;
  padding-bottom: 0;
}

.about-mission__grid {
  display: grid;
  gap: 30px;
  align-items: stretch;
  max-width: 1200px;
  margin-inline: auto;
}

.about-mission-card {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 25px;
  background: #fff;
  border: none;
  border-radius: 0;
  box-shadow: none;
  text-decoration: none;
  color: #020303;
  transition: none;
  overflow: hidden;
}

/* Figma Rectangle 436 / 446 — красная полоска 4px на обеих карточках */
.about-mission-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--c-accent);
}

.about-mission-card:hover {
  border: none;
  box-shadow: none;
  transform: none;
}

.about-mission-card__title {
  margin: 0 0 15px;
  padding: 0;
  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  color: #020303;
}

.about-mission-card__title::after {
  display: none;
  content: none;
}

.about-mission-card__text {
  flex: 1 1 auto;
  min-height: 0;
  margin: 0;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020303;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  overflow: hidden;
}

@media (min-width: 1280px) {
  body:not(.page-home) .hero--about .hero__inner,
  body:not(.page-home) .hero--standardization .hero__inner,
  body:not(.page-home) .hero--science .hero__inner,
  body:not(.page-home) .hero--education .hero__inner,
  body:not(.page-home):not(.page-media) .hero--media .hero__inner,
  body:not(.page-home) .hero--projects .hero__inner {
    max-width: 1200px;
    margin-inline: auto;
    gap: 40px;
  }
  /* Белая полоса сертификации — на всю ширину контейнера, не колонка 1200px */
  body:not(.page-home) .hero--certification.hero--strip .hero__inner {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    gap: 0;
  }
  body:not(.page-home):not(.page-media) main > .section .grid--4 {
    max-width: 1200px;
    margin-inline: auto;
    gap: 33px;
  }
  body:not(.page-home):not(.page-media) main > .section .grid--3 {
    max-width: 1200px;
    margin-inline: auto;
    gap: 33px;
  }
}
@media (min-width: 768px) and (max-width: 1279px) {
  body:not(.page-home) .hero--about .hero__inner,
  body:not(.page-home) .hero--standardization .hero__inner,
  body:not(.page-home) .hero--science .hero__inner,
  body:not(.page-home) .hero--education .hero__inner,
  body:not(.page-home) .hero--media .hero__inner,
  body:not(.page-home) .hero--certification .hero__inner,
  body:not(.page-home) .hero--projects .hero__inner {
    gap: 36px;
  }
}
.card--lg { padding: 36px; }
.card--md { padding: 32px; }
.card--center { padding: 32px; text-align: center; }
.card--center > p { max-width: 680px; margin: 0 auto 20px; }
.card--accent-surface { background: var(--c-accent-light); border-color: var(--c-accent); }
.card__icon--on-white { background: #fff; color: var(--c-accent); }
.card__icon--brand-light { background: var(--c-brand-light); }

.hero__quote {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 20px;
  line-height: 1.3;
  border-left: 4px solid var(--c-accent);
  padding-left: 20px;
  margin: 0 0 16px;
}
.hero--education-quote .hero__quote,
body.page-education .hero--education-quote .hero__quote {
  border-left: none;
  padding-left: 0;
  font-style: normal;
}
.hero__quote-author { font-weight: 600; color: var(--c-muted); margin: 0; }

.section-label {
  font-size: 14px;
  text-transform: uppercase;
  color: var(--c-muted);
}
.link-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
}
.link-list--tight { gap: 10px; margin-bottom: 0; }
.pill-row { display: flex; flex-wrap: wrap; gap: 8px; }

.stat--boxed { background: #fff; border: 1px solid var(--c-line); }
.stat--inline { margin-top: 16px; display: inline-block; }

.grid--gap-lg { gap: 32px; align-items: start; }
.split-row--wide { gap: 48px; }
.grid--stack { grid-template-columns: 1fr; gap: 14px; }
.section-link--center { display: block; text-align: center; margin-top: 8px; }

.quote-row { display: flex; gap: 20px; align-items: center; }
.btn-row { display: flex; gap: 12px; flex-wrap: wrap; }
.btn-row--mt { margin-top: 20px; }
.section-header__actions { display: flex; gap: 12px; flex-wrap: wrap; }
.stack-list { display: flex; flex-direction: column; gap: 12px; }

.split-row__art--43 { aspect-ratio: 4/3; }
.split-row__art--square { aspect-ratio: 1; min-height: 340px; }
/* Figma 3_2_О нас: image 105 (13189:41969) — карта офисов 557×556 */
.split-row__art--about-contacts {
  background: #e8f1fb;
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.split-row__art--about-contacts img {
  object-fit: cover;
  object-position: center;
}
@media (max-width: 880px) {
  #contacts .split-row {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  #contacts .split-row__art--about-contacts {
    order: -1;
    min-height: min(343px, 92vw);
    width: 100%;
    aspect-ratio: 1;
  }
  #contacts .split-row__art--about-contacts img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
.split-row__art--brand {
  background: linear-gradient(135deg, #003C7E, #1A4DC9);
  color: #fff;
}
.split-row__art--brand svg { opacity: .8; }
.arm-actions { margin-top: 24px; }

.cert-layout:not(.cert-personnel-split) {
  display: grid;
  grid-template-columns: 240px 1fr 220px;
  gap: 24px;
  align-items: start;
}
@media (max-width: 1100px) {
  .cert-layout:not(.cert-personnel-split) { grid-template-columns: 1fr; }
}
.btn--block { width: 100%; }

.section--dark .section-title { color: #fff; }
.cert-dark-nav {
  background: rgba(255, 255, 255, .05);
  padding: 20px;
  border-radius: 14px;
}
.cert-dark-nav h4 { color: #9bb0d0; }
.cert-dark-nav a { color: #fff; }
.cert-dark-nav a:hover,
.cert-dark-nav a.is-active {
  background: rgba(255, 255, 255, .1);
  color: #fff;
  border-left-color: var(--c-accent);
}
.cert-dark-body h2 { color: #fff; }
.cert-dark-body p { color: #cfd8e8; }
.section--dark .split-row__art--on-dark {
  background: rgba(255, 255, 255, .08);
  color: #fff;
}

.featured-event__link { text-decoration: none; color: inherit; }
.featured-event__body h3 { margin-bottom: 6px; }
.featured-event__body p { margin: 0; opacity: .9; }

.prose-narrow { max-width: 760px; }
@media (max-width: 880px) {
  .h-slider__nav { display: none; }
  .h-slider__track { scroll-padding-inline: 16px; }
  .h-slider__hint {
    display: block;
    font-size: 12px;
    color: var(--c-muted);
    text-align: right;
    margin-top: 6px;
  }
}
.h-slider__hint { display: none; }

/* Highlighted event */
.featured-event {
  background: linear-gradient(135deg, var(--c-accent), #9d181d);
  color: #fff; border-radius: var(--radius-lg); padding: 40px;
  display: grid; grid-template-columns: auto 1fr auto; gap: 24px; align-items: center;
}
.featured-event h3 { color: #fff; }
.featured-event__date {
  background: rgba(255,255,255,.18); padding: 16px 24px; border-radius: var(--radius);
  text-align: center;
}
.featured-event__day { font-size: 36px; font-weight: 800; line-height: 1; }
.featured-event__monthyear { font-size: 12px; text-transform: uppercase; opacity: .9; margin-top: 4px; }
@media (max-width: 880px) {
  .featured-event { grid-template-columns: 1fr; padding: 24px; text-align: center; }
}

/* ---------- Дополнения: поиск, карта сайта, мобильный поиск, a11y, i18n ---------- */
.topbar__inner { row-gap: 8px; }
.tags--scroll-wrap {
  position: relative;
  margin-bottom: 24px;
  width: 100%;
  max-width: 100%;
}
.tags--scroll-wrap .tags.tags--scroll {
  margin-bottom: 0;
}
.tags--scroll .tag {
  flex-shrink: 0;
  min-height: 44px;
}
/* Горизонтальный скролл тегов — только узкие экраны; обрезка «уехавших» кнопок */
@media (max-width: 880px) {
  .tags--scroll-wrap {
    overflow-x: clip;
  }
  .tags--scroll-wrap::after {
    content: "Листайте →";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    font-size: 11px;
    font-weight: 600;
    color: var(--c-muted);
    pointer-events: none;
    padding-left: 28px;
    background: linear-gradient(90deg, transparent, var(--c-bg-soft) 52%);
  }
  .section--soft .tags--scroll-wrap::after {
    background: linear-gradient(90deg, transparent, var(--c-bg-soft) 52%);
  }
  .tags--scroll,
  .tags.tags--scroll[data-filter-group] {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 8px;
    padding-right: 72px;
    scroll-padding-inline: var(--gutter);
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    overscroll-behavior-x: contain;
    mask-image: linear-gradient(to right, #000 calc(100% - 56px), transparent 100%);
    -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 56px), transparent 100%);
  }
}
@media (min-width: 881px) {
  .tags--scroll-wrap {
    overflow: visible;
  }
  .tags--scroll-wrap::after {
    display: none;
  }
}
.industry-card {
  min-height: 44px;
  box-sizing: border-box;
}
@media (max-width: 1279px) {
  body:not(.page-home) .hero--about,
  body:not(.page-home) .hero--standardization,
  body:not(.page-home) .hero--science,
  body:not(.page-home) .hero--education,
  body:not(.page-home) .hero--media,
  body:not(.page-home) .hero--certification,
  body:not(.page-home) .hero--projects {
    scroll-margin-top: var(--ris-mobile-header-offset, 56px);
  }
}

/* Figma 9/10: полноэкранный белый поиск на 375 */
.mobile-search-backdrop {
  position: fixed;
  inset: 0;
  background: #fff;
  z-index: 400;
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition), visibility var(--transition);
}
.mobile-search-backdrop[hidden] {
  display: none !important;
}
.mobile-search-backdrop.is-open {
  display: block;
  opacity: 1;
  visibility: visible;
}
.mobile-search {
  position: fixed;
  inset: 0;
  z-index: 410;
  background: #fff;
  padding: 16px var(--gutter) 24px;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity var(--transition), visibility var(--transition);
}
.mobile-search[hidden] {
  display: none !important;
}
.mobile-search:not([hidden]) {
  display: flex;
}
.mobile-search.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
body.mobile-search-open:has(.mobile-search.is-open) .topbar,
body.mobile-search-open:has(.mobile-search.is-open) .header,
body.mobile-search-open:has(.mobile-search.is-open) main {
  visibility: hidden;
}
.mobile-search__bar {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 0;
  flex-shrink: 0;
  padding-bottom: 12px;
  box-shadow: 0 1px 0 rgba(20, 33, 61, 0.08);
}
.mobile-search__icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: #f0f2f6;
  display: grid;
  place-items: center;
}
.mobile-search__icon img {
  width: 20px;
  height: 20px;
  object-fit: contain;
}
.mobile-search__bar input {
  flex: 1;
  min-width: 0;
  border: 0;
  background: #f0f2f6;
  border-radius: 999px;
  padding: 11px 16px;
  font-size: 16px;
  color: var(--c-text);
}
.mobile-search__bar input::placeholder {
  color: var(--c-muted);
}
.mobile-search__bar input:focus {
  outline: 2px solid var(--c-brand);
  outline-offset: 2px;
}
.mobile-search__close {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  color: var(--c-text);
  display: grid;
  place-items: center;
  cursor: pointer;
  padding: 0;
}
.mobile-search__suggest {
  list-style: none;
  margin: 0;
  padding: 4px 0 0;
  flex: 1;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.mobile-search__suggest li { border-bottom: 1px solid var(--c-line); }
.mobile-search__suggest li:last-child { border-bottom: 0; }
.mobile-search__suggest a {
  display: block;
  padding: 18px 4px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.35;
  color: var(--c-text);
  text-decoration: none;
}
.mobile-search__suggest a:hover { color: var(--c-brand); }

.search-page-form {
  display: flex; gap: 12px; flex-wrap: wrap; max-width: 720px;
}
.search-page-form input {
  flex: 1; min-width: 200px; padding: 14px 16px;
  border: 1px solid var(--c-line); border-radius: var(--radius-sm);
}
.search-results { margin: 24px 0 0; padding: 0; list-style: none; }
.search-results__item {
  padding: 16px 0; border-bottom: 1px solid var(--c-line);
}
.search-results__item a { font-weight: 600; font-size: 18px; }
.search-results__ext { font-size: 12px; color: var(--c-muted); margin-left: 8px; }

.sitemap { display: grid; gap: 40px; }
@media (min-width: 768px) { .sitemap { grid-template-columns: repeat(3, 1fr); } }
.sitemap__title { font-size: 20px; margin-bottom: 12px; }
.sitemap__list li { margin-bottom: 8px; }
.sitemap__list a { font-weight: 500; }

/* Подстраницы и служебные экраны */
.section--subpage {
  padding: var(--section-y-after-hero) 0 var(--section-y-subpage-bottom);
}
.section--subpage-figma .container--prose {
  max-width: min(960px, 100%);
}
.section--subpage .prose {
  max-width: 760px;
}
.section--subpage .prose-back + p,
.section--subpage .prose-back + .prose__body {
  margin-top: 0;
}
.prose-back {
  margin: 0 0 28px;
  font-size: 15px;
  font-weight: 600;
}
.prose-back a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--c-brand);
}
.prose { max-width: 760px; }
.prose > *:first-child { margin-top: 0; }
.prose > *:last-child { margin-bottom: 0; }
.prose p { margin: 0 0 1.15em; line-height: 1.55; }
.prose h2 {
  font-family: var(--font);
  font-size: clamp(22px, 2.2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  margin: 1.75em 0 0.65em;
  letter-spacing: -0.02em;
}
.prose h2:first-child { margin-top: 0; }
.prose h3 {
  font-family: var(--font);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.35;
  margin: 1.35em 0 0.5em;
}
.prose ul,
.prose ol {
  margin: 0 0 1.25em;
  padding-left: 1.35em;
  list-style: disc;
}
.prose p,
.prose li,
.prose ul,
.prose ol { font-family: var(--font); }
.prose li { margin-bottom: 0.45em; }
.prose .btn { margin-top: 0.5em; }
.prose a:not(.btn):not(.l3-link-list__row) { text-decoration: underline; text-underline-offset: 3px; }

/* Секции без .section-header — заголовок h2 у контейнера */
.section > .container > h2:first-child {
  margin: 0 0 32px;
  font-size: clamp(24px, 2.5vw, 32px);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.15;
}
.section > .container > .split:first-child h2:first-child,
.section > .container > h2.section-title:first-child {
  margin-bottom: 32px;
}
.section--compact {
  padding: var(--section-y-compact) 0;
}

.lang-banner {
  background: var(--c-brand-light); color: var(--c-brand-dark);
  padding: 10px 16px; text-align: center; font-size: 14px;
  border-bottom: 1px solid var(--c-line);
}
.lang-banner a { margin-left: 12px; font-weight: 700; }

.a11y-panel {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 120;
  background: var(--a11y-surface, #111);
  color: var(--a11y-text, #fff);
  border-top: 3px solid var(--a11y-border, #ffe900);
  padding: 10px 16px;
}
.a11y-panel__inner {
  max-width: var(--container); margin: 0 auto;
  display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: center;
}
.a11y-panel__label { font-weight: 600; margin-right: 8px; font-size: 14px; }
.a11y-panel__btn {
  padding: 8px 14px; border-radius: 6px; border: 1px solid var(--a11y-border, #ffe900);
  color: var(--a11y-accent, #ffe900); font-weight: 600; font-size: 14px;
}
.a11y-panel__btn[aria-pressed="true"] {
  background: var(--a11y-accent, #ffe900);
  color: #000;
}

html.a11y-root {
  scroll-behavior: auto;
}
body.a11y *:focus-visible {
  outline: 3px solid var(--a11y-border, #ffe900) !important;
  outline-offset: 2px;
}


/* ---------- Адаптив: мобильные правки (п.5.2 ТЗ, от 375px) ---------- */
@media (max-width: 768px) {
  .topbar__inner > a:not([href^="tel:"]) { display: none; }
}
@media (max-width: 600px) {
  :root { --gutter: 16px; }
  .topbar { font-size: 12px; padding: 6px 0; }
  .topbar__inner { gap: 6px; flex-wrap: wrap; }
  .topbar__tools { margin-left: auto; gap: 8px; }
  .topbar__btn { padding: 2px 6px; font-size: 12px; }
  .lang-switch button { padding: 2px 6px; font-size: 11px; }
  .logo:not(.header__top .logo) { gap: 8px; min-width: 0; flex: 1; }
  .logo__mark { width: 40px; height: 40px; font-size: 12px; flex-shrink: 0; }
  .logo__text { min-width: 0; }
  .logo__title { font-size: 12px; line-height: 1.2; max-width: 10.5rem; }
  .logo__subtitle { display: none !important; }
  .topbar__btn span, .topbar__btn { font-size: 0; }
  .topbar__btn svg { margin: 0; }
  .header__inner { padding: 10px 0; min-height: auto; gap: 8px; }
  .hero { padding: 32px 0; }
  .hero__lead { font-size: 15px; }
  .hero__actions { flex-direction: column; }
  .hero__actions .btn { width: 100%; }
  :root { --section-y-after-hero: 40px; --section-y-compact: 48px; }
  .section { padding: 48px 0; }
  .section--subpage { padding: 32px 0 32px; }
  .hero--subpage + .section--subpage { padding-top: 24px; }
  .hero--subpage .hero__inner { margin-bottom: 16px; }
  .hero--about + .section,
  .hero--about + .section--soft,
  .hero--standardization + .section,
  .hero--standardization + .section--soft,
  .hero--science + .section,
  .hero--science + .section--soft,
  .hero--education + .section,
  .hero--education + .section--soft,
  .hero--media + .section,
  .hero--media + .section--soft,
  .hero--certification + .section,
  .hero--certification + .section--soft,
  .hero--projects + .section,
  .hero--projects + .section--soft {
    padding-top: var(--section-y-after-hero);
  }
  .section-header { flex-direction: column; align-items: flex-start; gap: 12px; margin-bottom: 24px; }
  .hero--about .hero__inner,
  .hero--standardization .hero__inner,
  .hero--science .hero__inner,
  .hero--education .hero__inner,
  .hero--media .hero__inner,
  .hero--certification .hero__inner,
  .hero--projects .hero__inner {
    margin-bottom: 24px;
  }
  .slider-hero {
    padding: 24px 48px 24px 20px;
    min-height: 280px;
    aspect-ratio: auto;
  }
  .slider-hero h2 { font-size: clamp(20px, 5.5vw, 28px); }
  .slider-hero__ui { right: 12px; gap: 8px; }
  .slider-hero__pause { font-size: 12px; padding: 6px 10px; }
  .featured-event { padding: 20px; }
  .page-header { padding: 32px 0 20px; }
  .price-card, .card { padding: 20px; }
  .partners-showcase .h-slider__track { gap: 20px; }
  .partners__slide img { max-height: 48px; }
  .event-card:not(.event-card--media) { flex-direction: column; align-items: flex-start; text-align: left; }
  .event-card:not(.event-card--media) .event-card__date { width: 100%; display: flex; gap: 12px; align-items: center; justify-content: flex-start; }
  .event-card:not(.event-card--media) .event-card__day { font-size: 22px; }
  .cycle-step { flex: 0 0 100%; min-width: 0; }
  .cta-banner { padding: 24px 20px; }
  .cta-banner__actions { width: 100%; }
  .cta-banner__actions .btn { flex: 1; min-width: 0; }
  .cta-banner--join {
    padding: 30px 16px 40px;
  }
  .cta-banner--join .cta-banner__actions {
    width: auto;
  }
  .cta-banner--join .cta-banner__actions .btn {
    flex: none;
    width: auto;
  }
  .section--join-cta {
    padding: 40px 0 48px;
  }
  .cta-banner--join__title {
    font-size: 24px;
  }
  .h-slider__track > * { flex: 0 0 min(300px, 88vw); }
  .product-showcase .h-slider__track,
  .product-showcase__track {
    display: block;
    overflow-x: hidden;
  }
  .product-showcase .h-slider__track > *,
  .product-showcase__track > * {
    flex: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .split-row--product {
    grid-template-columns: 1fr !important;
    width: 100%;
    max-width: 100%;
  }
  .split-row--product .split-row__copy {
    display: block;
    max-width: none;
    width: 100%;
  }
  .product-showcase .section-title,
  .product-showcase .split-row__copy p {
    max-width: none;
    width: 100%;
  }
  .tags--scroll-wrap {
    overflow-x: clip;
    margin-inline: calc(-1 * var(--gutter));
    padding-inline: var(--gutter);
    width: auto;
  }
  .tags--scroll,
  .tags[data-filter-group].tags--scroll {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
  }
  .tags--scroll .tag,
  .tags[data-filter-group] .tag {
    flex-shrink: 0;
  }
}

@media (min-width: 800px) and (max-width: 880px) {
  body.page-home .section--industries .section-header {
    justify-content: center;
  }
  body.page-home .section--industries .section-header .section-link {
    display: none;
  }
  body.page-home .section--industries .industries {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
  }
  body.page-home .section--industries .section-title {
    width: 100%;
    text-align: center;
  }
  body.page-home .section--industries .industries-promo.grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
  body.page-home .section--industries .tile--promo {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 25px 15px;
    min-height: 372px;
    align-items: stretch;
  }
  body.page-home .section--industries .tile--promo .tile__body,
  body.page-home .section--industries .tile--promo .tile__media {
    grid-column: auto;
    grid-row: auto;
  }
  body.page-home .section--industries .tile--promo .tile__media img {
    max-width: 100%;
    max-height: 235px;
    width: auto;
  }
  body.page-home .section--industries .tile--promo .tile__body {
    text-align: left;
    gap: 15px;
  }
  body.page-home .section--industries .tile--promo .tile__title {
    text-align: left;
  }
  body.page-home .section--industries .tile--promo .tile__desc {
    -webkit-line-clamp: 2;
    line-clamp: 2;
    max-height: calc(16px * 1.3 * 2);
  }
  body.page-home .section--industries .tile--promo .tile__media {
    margin-top: auto;
  }
  body.page-home .section--insights .section-header {
    margin-bottom: 24px;
  }
  /* Figma 5_index_800: топовые ГОСТы — заголовок по центру, сетка 2×3 */
  body.page-home .gosts-home__title {
    text-align: center;
  }
  body.page-home .grid--gosts-home {
    gap: 16px clamp(20px, 7.5vw, 64px);
  }
  body.page-home #prices .pricing {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    overflow: visible;
    margin-inline: 0;
    padding-inline: 0;
  }
  body.page-home #prices .price-card {
    flex: unset;
    scroll-snap-align: unset;
    padding: 18px 14px 20px;
    gap: 14px;
    min-height: 0;
    height: auto;
  }
  body.page-home #prices .price-card .btn,
  body.page-home #prices .price-card__cta {
    margin-top: 0;
    width: 100%;
    min-width: 0;
  }
}

/* Figma 5_index_800 / планшет 768–880: обучение + библиотека — горизонтально (после max-width:767) */
@media (min-width: 768px) and (max-width: 880px) {
  body.page-home .edu-training {
    grid-template-columns: minmax(0, 401fr) minmax(0, 399fr);
    min-height: clamp(520px, 78.25vw, 626px);
  }
  body.page-home .edu-training__panel {
    justify-content: flex-start;
    padding: 30px 16px 30px 28px;
  }
  body.page-home .edu-training__title {
    font-size: clamp(18px, 2.6vw, 22px);
    line-height: 1.15;
    margin-bottom: 40px;
    max-width: none;
  }
  body.page-home .edu-training__list {
    max-width: 345px;
    gap: 10px;
  }
  body.page-home .edu-training__link {
    width: 100%;
    max-width: 345px;
    min-height: 60px;
    padding: 20px 25px;
    font-size: 16px;
    align-self: flex-start;
  }
  /* Figma 5_index_800: библиотека 747×324, иллюстрация 246px */
  body.page-home .fund-library-cta {
    grid-template-columns: minmax(0, 1fr) minmax(160px, 246px);
    min-height: clamp(280px, 42vw, 324px);
  }
  body.page-home .fund-library-cta__lead {
    max-width: 442px;
  }
  body.page-home .fund-library-cta__art img {
    width: min(100%, 246px);
  }
  /* Figma 5_index_800: ГОСТы — заголовок по центру, кнопка внизу */
  body.page-home .gosts-home__title {
    text-align: center;
  }
  body.page-home .gosts-home__more {
    margin-inline: auto;
    justify-self: center;
  }
  body.page-home .grid--gosts-home {
    gap: 16px clamp(20px, 7.5vw, 64px);
  }
}

/* Главная: Figma 5_index_800 / 6_index_1024 — отрасли, промо, тарифы, инсайты (768–1279) */
@media (min-width: 768px) and (max-width: 1279px) {
  body.page-home .section--industries .section-header {
    justify-content: center;
  }
  body.page-home .section--industries .section-header .section-link {
    display: none;
  }
  body.page-home .section--industries .section-title {
    width: 100%;
    text-align: center;
  }
  body.page-home .section--industries .industries {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
  }
  body.page-home .section--industries .industry-card {
    min-height: 129px;
    padding: 14px 8px;
    gap: 8px;
  }
  body.page-home .section--industries .industry-card__label {
    font-size: 11px;
    line-height: 1.25;
    max-width: none;
  }
  body.page-home .section--industries .industries-promo.grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
  body.page-home .section--industries .tile--promo {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 25px 15px;
    min-height: 372px;
    align-items: stretch;
    border-top-width: 4px;
  }
  body.page-home .section--industries .tile--promo .tile__body,
  body.page-home .section--industries .tile--promo .tile__media {
    grid-column: auto;
    grid-row: auto;
  }
  body.page-home .section--industries .tile--promo .tile__body {
    text-align: left;
    gap: 15px;
  }
  body.page-home .section--industries .tile--promo .tile__title {
    text-align: left;
  }
  body.page-home .section--industries .tile--promo .tile__desc {
    -webkit-line-clamp: 2;
    line-clamp: 2;
    max-height: calc(16px * 1.3 * 2);
  }
  body.page-home .section--industries .tile--promo .tile__media {
    margin-top: auto;
  }
  body.page-home .section--industries .tile--promo .tile__media img {
    max-width: 100%;
    max-height: 235px;
    width: auto;
  }
  body.page-home #prices .pricing {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    overflow: visible;
    margin-inline: 0;
    padding-inline: 0;
    scroll-snap-type: none;
  }
  body.page-home #prices .price-card {
    flex: unset;
    width: auto;
    min-width: 0;
    scroll-snap-align: unset;
    padding: 18px 14px 20px;
    gap: 14px;
    min-height: 0;
    height: auto;
  }
  body.page-home #prices .price-card .btn,
  body.page-home #prices .price-card__cta {
    margin-top: 12px;
    width: 100%;
    min-width: 0;
  }
  body.page-home .section--insights .section-header {
    margin-bottom: 24px;
  }
  /* Цифровая библиотека — Figma 5_index_800 / 6_index_1024: карточка на сером поле */
  body.page-home .section--fund-library {
    padding-top: 20px;
    padding-bottom: 28px;
    background: var(--c-bg-soft);
  }
  body.page-home .section--fund-library .container {
    max-width: none;
    padding-inline: 28px;
  }
  body.page-home .fund-library-cta {
    grid-template-columns: minmax(0, 1fr) minmax(160px, 297px);
    gap: 12px 20px;
    max-width: none;
    width: 100%;
    padding: 24px 20px 28px;
    min-height: clamp(280px, 42vw, 334px);
    border-radius: 0;
    text-align: left;
    align-items: center;
    box-shadow: 0 0 25px rgba(57, 59, 65, 0.1);
  }
  body.page-home .fund-library-cta__art {
    order: 0;
    align-self: center;
  }
  body.page-home .fund-library-cta__title,
  body.page-home .fund-library-cta__lead {
    text-align: left;
    margin-inline: 0;
  }
  body.page-home .fund-library-cta__title {
    font-size: clamp(18px, 2.5vw, 22px);
    margin-bottom: 16px;
    line-height: 1.2;
  }
  body.page-home .fund-library-cta__lead {
    font-size: 14px;
    line-height: 1.45;
    margin-bottom: 20px;
    max-width: 599px;
  }
  body.page-home .fund-library-cta__btn {
    margin-inline: 0;
    align-self: flex-start;
  }
  body.page-home .fund-library-cta__art img {
    width: min(100%, 297px);
    margin-inline: auto;
  }
}

/* Figma 6_index_1024 (881–1279): ГОСТы — сайдбар слева, сетка 2×3 справа */
@media (min-width: 881px) and (max-width: 1279px) {
  body.page-home .gosts-home {
    grid-template-columns: minmax(168px, 236px) minmax(0, 1fr);
    grid-template-rows: auto auto;
    gap: 12px 32px;
    align-items: start;
  }
  body.page-home .gosts-home__title {
    grid-column: 1;
    grid-row: 1;
    text-align: left;
    margin: 0;
  }
  body.page-home .gosts-home__more {
    grid-column: 1;
    grid-row: 2;
    margin-inline: 0;
    margin-top: 8px;
    justify-self: start;
    align-self: start;
  }
  body.page-home .grid--gosts-home {
    grid-column: 2;
    grid-row: 1 / span 2;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 32px;
  }
  body.page-home .section--gosts-home .gost-card--row {
    min-height: 112px;
  }
  body.page-home .section--gosts-home .gost-card__thumb {
    width: 66px;
    height: 112px;
  }
}

/* ===== P2 visual polish — mobile cosmetics only ===== */
@media (max-width: 880px) {
  .hero--home .hero__title {
    text-shadow: 0 2px 20px rgba(0, 8, 22, 0.5);
  }
  .hero--home .tile--hero {
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.85) inset,
      0 6px 20px rgba(20, 33, 61, 0.08);
  }
  .hero--home .tile--hero:hover {
    box-shadow: 0 10px 26px rgba(20, 33, 61, 0.12);
  }
  body:not(.page-home) .cta-banner--polygon {
    background-position: 0 0, 70% 40%;
  }
  body:not(.page-home) .cta-banner--polygon h2,
  body:not(.page-home) .cta-banner--polygon p {
    text-shadow: 0 2px 14px rgba(0, 0, 0, 0.45);
  }
  body.page-home #prices .price-card {
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }
  #prices .price-card {
    box-shadow: 0 4px 16px rgba(20, 33, 61, 0.08);
  }
  .news-card,
  .insight-card {
    box-shadow: 0 2px 8px rgba(20, 33, 61, 0.06);
  }
}

/* Figma 5_index_800 / 6_index_1024: «Присоединиться», футер (до 1023px) */
@media (max-width: 1023px) {
  .section--join-cta {
    padding: 32px 0 40px;
  }
  .section--join-cta > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
  }
  .cta-banner--join {
    min-height: 182px;
    width: 100%;
    max-width: min(748px, 100%);
    margin-inline: auto;
    padding: 28px 24px 32px;
    gap: 24px;
    box-sizing: border-box;
  }
  .cta-banner--join__title {
    font-size: clamp(20px, 4.5vw, 22px);
    line-height: 1.25;
  }
  .cta-banner--join__btn.btn.btn--white {
    min-width: 206px;
    min-height: 50px;
    border-radius: 50px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .footer__nav {
    padding: 40px 0 44px;
  }
  .footer-menu {
    gap: 12px;
  }
  .footer-menu__title {
    font-size: 14px;
    line-height: 1.3;
  }
  .footer-menu__list {
    gap: 10px;
  }
  .footer-menu__list a {
    font-size: 13px;
    line-height: 1.45;
  }
  .footer__bar {
    padding: 28px 0 40px;
  }
  .footer__bar-grid {
    grid-template-columns: minmax(0, 1fr) minmax(180px, 220px);
    gap: 24px 32px;
  }
  .footer__bar-main {
    gap: 20px;
  }
  .footer__hotline {
    font-size: 24px;
  }
  .footer__email {
    font-size: 15px;
  }
  .footer__legal {
    margin-top: 4px;
    font-size: 12px;
    gap: 8px;
  }
  .footer__utils {
    gap: 10px;
  }
  .footer__util {
    font-size: 13px;
  }
}
@media (max-width: 680px) {
  .footer__bar {
    padding: 24px 0 32px;
  }
  .footer__bar-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .footer__utils {
    justify-self: start;
  }
}

/* Figma 6_index_375: Полигон — переопределение глобальных правил .cta-banner--polygon (не главная) */
@media (max-width: 880px) {
  body:not(.page-home) .cta-banner--polygon {
    height: 280px !important;
    max-height: 280px !important;
    min-height: 280px !important;
    overflow: visible !important;
  }
  body:not(.page-home) .cta-banner--polygon h2,
  body:not(.page-home) .cta-banner--polygon p {
    display: block !important;
    overflow: visible !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }
  .product-showcase .split-row__art--contain {
    min-height: min(252px, 68vw);
  }
  .product-showcase .split-row__art--contain img {
    width: min(252px, 72vw) !important;
    height: min(252px, 72vw) !important;
    min-width: min(200px, 65vw) !important;
    min-height: min(200px, 65vw) !important;
  }
}

/* ===== Figma: формы, disclosure, статусы документов, партнёры ===== */
form[data-b24-form] [type="submit"]:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.field--empty .field__input,
.field--empty input,
.field--empty textarea {
  border-color: var(--color-border, #c5cdd8);
}
.field--filled .field__input,
.field--filled input:not([type="checkbox"]),
.field--filled textarea {
  border-color: var(--color-navy, #002864);
}
.form-consent input:not(:checked) ~ .form-consent__text {
  color: var(--color-muted, #5b6478);
}
[data-disclosure] {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  text-align: left;
  background: transparent;
  border: 0;
  font: inherit;
  cursor: pointer;
  padding: 12px 0;
}
[data-disclosure]::after {
  content: '';
  width: 10px;
  height: 10px;
  margin-left: auto;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform 0.2s ease;
}
[data-disclosure].is-open::after,
[data-disclosure][aria-expanded="true"]::after {
  transform: rotate(-135deg);
}
[data-disclosure][data-arrow="link"]::after {
  transform: rotate(-45deg);
}
.doc-status--draft,
.doc-status--pending {
  color: #5b6478;
  background: #eef1f5;
}
.doc-status--active,
.doc-status--published {
  color: #002864;
  background: #e8f1fb;
}
/* Figma Наука_ГНЦ: золотая текстура 1440×534 + CTA как у «Полигон» */
.cta-banner--science-gnc {
  box-sizing: border-box;
  min-height: clamp(260px, 32vw, 320px);
  overflow: hidden;
  border-top: 4px solid var(--c-accent);
  border-radius: var(--radius-lg);
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) auto;
  align-items: center;
  gap: 24px 36px;
  padding: clamp(28px, 4vw, 44px) clamp(24px, 4vw, 52px);
  color: #fff;
  background-image:
    linear-gradient(
      102deg,
      rgba(0, 26, 68, 0.9) 0%,
      rgba(0, 40, 100, 0.78) 38%,
      rgba(0, 40, 100, 0.52) 72%,
      rgba(0, 40, 100, 0.38) 100%
    ),
    url("/local/templates/ris/assets/img/sections/science-gnc-banner.png");
  background-position: 0 0, 72% center;
  background-size: auto, cover;
  background-repeat: no-repeat;
}
.cta-banner--science-gnc::before {
  display: none;
}
.cta-banner--science-gnc::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 14px;
  pointer-events: none;
  opacity: 0.55;
  background: repeating-linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0,
    rgba(255, 255, 255, 0) 5px,
    rgba(255, 255, 255, 0.22) 5px,
    rgba(255, 255, 255, 0.22) 6px
  );
}
.cta-banner--science-gnc .cta-banner__copy {
  max-width: 52em;
}
.cta-banner--science-gnc .callout {
  color: rgba(255, 255, 255, 0.88);
  font-weight: 600;
  letter-spacing: 0.04em;
}
.cta-banner--science-gnc h2 {
  font-size: clamp(22px, 2.6vw, 32px);
  line-height: 1.15;
  margin-bottom: 10px;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
}
.cta-banner--science-gnc p {
  font-size: clamp(14px, 1.5vw, 16px);
  line-height: 1.5;
  max-width: 42em;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
}
.cta-banner--science-gnc .cta-banner__actions {
  flex-shrink: 0;
}
@media (max-width: 880px) {
  .cta-banner--science-gnc {
    grid-template-columns: 1fr;
    min-height: clamp(240px, 68vw, 300px);
    padding: 24px 20px 28px;
    text-align: left;
    background-position: 0 0, 68% 40%;
  }
  .cta-banner--science-gnc .cta-banner__actions {
    justify-content: flex-start;
    width: 100%;
  }
  .cta-banner--science-gnc .cta-banner__actions .btn {
    min-height: 50px;
  }
}
.news-card__rubric--press {
  font-weight: 600;
}

/* About overlap/mission — см. конец файла (Figma 3_*_О нас_*) */

/* ========== Figma 5_2 «Стандартизация» ========== */
body.page-standardization {
  --std-card-w: 275px;
  --std-card-gap: 33px;
  --hero-pad-standardization-1440: 48px;
  --std-hero-bg: #f5f5f5;
  --std-catalog-title: var(--c-action);
  --std-catalog-lead: #121617;
  --std-accent-blue: var(--c-action);
  --std-accent-red: #ed1a34;
  --std-card-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}

body.page-standardization section.page-hero.hero--standardization:not(.hero--strip) {
  background-color: var(--std-hero-bg);
}

/* Hero + каталог — Figma 5_2: Rectangle 446 #f5f5f5, каталог на светлом (не синий градиент) */
body.page-standardization .hero--standardization:not(.hero--strip) {
  overflow: visible;
  z-index: 1;
  min-height: 0;
  padding-top: var(--hero-pad-standardization-1440);
  padding-bottom: 48px;
  background-color: var(--std-hero-bg);
}

body.page-standardization .hero--standardization:not(.hero--strip) .container {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

body.page-standardization .hero--standardization.hero--copy-only .hero__inner {
  grid-template-columns: 1fr;
  margin-bottom: 0;
  gap: 0;
}

body.page-standardization .hero--standardization .hero__title {
  font-family: var(--font);
  font-size: clamp(24px, 4vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  margin: 0 0 10px;
  max-width: 36rem;
  color: #020303;
}

body.page-standardization .hero--standardization .breadcrumbs,
body.page-standardization .hero--standardization .breadcrumbs a {
  margin: 0;
  font-family: "Fira Sans", sans-serif;
  font-size: 14px;
  line-height: 1.2;
  color: #686a73;
}

/* Figma: body copy — Fira Sans; headings — Montserrat */
body.page-standardization .std-card__text,
body.page-standardization .std-card--federal .std-card__text,
body.page-standardization .std-card--consult .std-card__text,
body.page-standardization .std-card--npa-row .std-card__text,
body.page-standardization .std-compact-card .std-card__text,
body.page-standardization .std-defense__copy p,
body.page-standardization .std-promo__copy p,
body.page-standardization .std-contacts-card__email,
body.page-standardization .std-contacts-card__hours,
body.page-standardization .catalog-block__lead {
  font-family: "Fira Sans", sans-serif;
}

body.page-standardization .hero--standardization .breadcrumbs a:hover {
  color: var(--c-brand);
}

body.page-standardization .hero--standardization .hero__section-nav-link {
  color: rgba(2, 3, 3, 0.72);
}

body.page-standardization .hero--standardization .hero__section-nav-link:hover,
body.page-standardization .hero--standardization .hero__section-nav-link.is-active {
  color: #020303;
}

body.page-standardization .hero--standardization .hero__section-nav {
  margin-bottom: clamp(20px, 4vw, 48px);
}

@media (min-width: 881px) and (max-width: 1279px) {
  body.page-standardization .hero--standardization .hero__section-nav {
    margin-bottom: 48px;
  }
}

body.page-standardization .hero--standardization + .section--std-dev {
  margin-top: 57px;
}

body.page-standardization .hero--standardization:not(.hero--strip) .hero-decor {
  display: none !important;
}

body.page-standardization .hero--standardization + .section--soft,
body.page-standardization .hero--standardization + .section {
  position: relative;
  z-index: 2;
}

@media (min-width: 1280px) and (max-width: 1899px) {
  body.page-standardization {
    --gutter: 80px;
  }

  body.page-standardization .hero--standardization .hero__inner,
  body.page-standardization .hero--standardization .catalog-block {
    margin-inline: 40px;
    width: calc(100% - 80px);
    max-width: 1200px;
  }

  body.page-standardization .hero--standardization .hero__title {
    max-width: none;
    margin: 0 0 10px;
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
  }

  body.page-standardization .hero--standardization .breadcrumbs {
    margin-bottom: 40px;
  }

  body.page-standardization .catalog-block {
    margin-top: 0;
    margin-bottom: 0;
  }

  body.page-standardization .catalog-block__panel::before {
    top: 0;
    left: -42px;
  }
}

.std-section-title {
  margin: 0 0 clamp(28px, 4vw, 40px);
  font-family: var(--font);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: #020303;
}

.std-section-title--center {
  text-align: center;
  margin-inline: auto;
  max-width: 52rem;
}

.std-section-header {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px 24px;
  margin-bottom: clamp(28px, 4vw, 40px);
}

.std-section-header .std-section-title {
  margin-bottom: 0;
}

.std-section-header--center {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 8px 16px;
}

.std-section-header--center .std-section-link {
  font-size: 14px;
}

.std-section-link {
  font-family: var(--font);
  font-size: 15px;
  font-weight: 600;
  color: var(--c-brand);
  text-decoration: none;
}

.std-section-link:hover {
  color: var(--c-brand-dark);
}

.std-grid {
  display: grid;
  gap: var(--std-card-gap);
  justify-content: center;
}

.std-grid--4 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 600px) {
  .std-grid--4 {
    grid-template-columns: 1fr;
  }
  .std-card,
  .std-card--tall {
    max-width: none;
    min-height: 197px;
  }
}

.std-grid--3,
.std-grid--2 {
  grid-template-columns: 1fr;
}

@media (min-width: 601px) {
  .std-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .std-grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 881px) {
  .std-grid--4 {
    grid-template-columns: repeat(2, minmax(0, var(--std-card-w)));
  }
  .std-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1280px) {
  body.page-standardization {
    --std-card-w: 275px;
  }
  .std-grid--4 {
    grid-template-columns: repeat(4, var(--std-card-w));
    justify-content: center;
  }
  .catalog-block__tiles.std-grid--4 {
    justify-content: start;
  }
  .std-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 378px));
    justify-content: start;
    gap: 33px;
  }
  .std-grid--2 {
    grid-template-columns: repeat(2, minmax(0, 378px));
    justify-content: start;
    gap: 33px;
  }
}

.std-card {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  max-width: var(--std-card-w);
  min-height: 197px;
  margin-inline: auto;
  padding: 25px;
  background: #fff;
  border: none;
  border-radius: 0;
  border-top: 4px solid var(--c-accent);
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  text-decoration: none;
  color: #020303;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.std-card:hover {
  box-shadow: 0 0 18px rgba(57, 59, 65, 0.14);
  transform: none;
  color: #020303;
}

.std-card--tall {
  min-height: 240px;
  max-width: var(--std-card-w);
}

.std-card--mid {
  min-height: 159px;
  max-width: none;
}

@media (min-width: 1280px) {
  .std-card {
    margin-inline: 0;
  }
}

.std-card__title {
  margin: 0;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
  color: #020303;
}

.std-card__text {
  margin: 0;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--c-muted);
}

/* Каталог: панель 1199×257 (y=291) + плитки y=581 gap 33 */
body.page-standardization .catalog-block {
  position: relative;
  z-index: 3;
  width: 100%;
  max-width: 1200px;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
}

body.page-standardization .catalog-block__panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 842px) minmax(0, 274px);
  column-gap: clamp(16px, 3vw, 82px);
  row-gap: 10px;
  align-items: start;
  padding-top: clamp(28px, 4vw, 47px);
}

body.page-standardization .catalog-block__panel::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: min(100%, 1199px);
  height: clamp(220px, 28vw, 257px);
  background: #fff;
  z-index: 0;
  pointer-events: none;
}

body.page-standardization .catalog-block__panel > * {
  position: relative;
  z-index: 1;
}

body.page-standardization .catalog-block__art {
  pointer-events: none;
}

body.page-standardization .catalog-block__cta {
  position: relative;
  z-index: 2;
}

.catalog-block__title {
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  font-family: var(--font);
  font-size: clamp(28px, 3.2vw, 36px);
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: 0;
  color: var(--std-catalog-title);
}

.catalog-block__lead {
  grid-column: 1;
  grid-row: 2;
  margin: 0;
  max-width: 842px;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--std-catalog-lead);
}

.catalog-block__cta {
  grid-column: 1;
  grid-row: 3;
  margin: 0;
}

.catalog-block__btn.btn.btn--primary {
  min-width: 197px;
  min-height: var(--btn-height);
  padding: 15px 28px;
  border-radius: var(--btn-radius);
  transform: none;
  box-shadow: none;
  font-family: var(--font);
  font-weight: 500;
  font-size: 14px;
  line-height: normal;
  background: var(--c-action);
  border-color: var(--c-action);
}

.catalog-block__btn.btn.btn--primary:hover {
  transform: none;
  background: var(--c-action-hover);
  border-color: var(--c-action-hover);
}

.catalog-block__art {
  grid-column: 2;
  grid-row: 1 / span 3;
  align-self: start;
  justify-self: end;
  margin-top: -18px;
}

.catalog-block__art img {
  display: block;
  width: 274px;
  max-width: 100%;
  height: auto;
  aspect-ratio: 274 / 233;
  object-fit: contain;
}

.catalog-block__tiles {
  margin-top: clamp(24px, 3vw, 33px);
  justify-content: start;
}

.catalog-block__tiles .std-card {
  margin-inline: 0;
  min-height: 197px;
  max-height: 197px;
  overflow: hidden;
  box-shadow: none;
}

.catalog-block__tiles .std-card__title {
  flex: 0 0 auto;
  margin: 0;
  font-family: var(--font);
  font-size: 20px;
  font-weight: 600;
  line-height: 24px;
  color: #020203;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.catalog-block__tiles .std-card__text {
  flex: 1 1 auto;
  min-height: 0;
  margin: 0;
  font-family: "Fira Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
  max-height: 84px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
}

@media (min-width: 1280px) {
  body.page-standardization .catalog-block {
    margin-top: 0;
    margin-bottom: 0;
  }

  body.page-standardization .catalog-block__panel {
    padding-top: 0;
    padding-left: 42px;
    min-height: 257px;
    box-sizing: border-box;
    /* Только колонка текста; art absolute — иначе span 3 рядов раздувает lead/кнопку */
    grid-template-columns: minmax(0, 842px);
    grid-template-rows: 49px 63px auto;
    row-gap: 10px;
    column-gap: 0;
  }

  body.page-standardization .catalog-block__panel::before {
    top: -30px;
    left: -42px;
    width: 1199px;
    height: 257px;
    background: #fff;
    box-shadow: none;
  }

  body.page-standardization .catalog-block__title {
    display: flex;
    align-items: center;
    margin-top: 0;
    line-height: 1.27;
    height: 49px;
    min-height: 49px;
    max-height: 49px;
    overflow: hidden;
    color: var(--c-brand);
  }

  body.page-standardization .catalog-block__cta {
    margin: 8px 0 0;
  }

  body.page-standardization .catalog-block__art {
    position: absolute;
    top: -18px;
    left: 878px;
    width: 274px;
    margin: 0;
    grid-column: unset;
    grid-row: unset;
    z-index: 1;
  }

  body.page-standardization .catalog-block__lead {
    margin: 0;
    height: 63px;
    max-height: 63px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  body.page-standardization .catalog-block__cta {
    margin: 0;
    padding-top: 8px;
    align-self: start;
  }

  body.page-standardization .catalog-block__tiles {
    margin-top: 3px;
    margin-left: -42px;
    width: calc(100% + 42px);
    max-width: 1200px;
  }

  body.page-standardization .catalog-block__tiles .std-card {
    gap: 15px;
    padding: 25px;
  }

  body.page-standardization .catalog-block__tiles .std-card__title {
    flex: 0 0 48px;
    min-height: 48px;
    max-height: 48px;
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
  }

  body.page-standardization .catalog-block__tiles .std-card__text {
    flex: 1 1 auto;
    min-height: 0;
    max-height: 84px;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    line-height: 1.3;
    -webkit-line-clamp: 4;
  }

  .catalog-block__tiles.std-grid--4 {
    grid-template-columns: repeat(4, var(--std-card-w));
    gap: 33px;
    justify-content: start;
  }
}

@media (max-width: 880px) {
  body.page-standardization .catalog-block__panel {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding-top: 28px;
  }

  body.page-standardization .catalog-block__panel::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .catalog-block__title {
    order: 1;
    font-size: clamp(24px, 6.5vw, 32px);
  }

  .catalog-block__art {
    order: 2;
    align-self: center;
    margin-top: 0;
    max-width: min(220px, 60vw);
  }

  .catalog-block__lead {
    order: 3;
  }

  .catalog-block__cta {
    order: 4;
  }

  .catalog-block__tiles {
    margin-top: 20px;
  }
}

body.page-standardization .section--std-dev,
body.page-standardization .section--std-intl,
body.page-standardization .section--std-defense,
body.page-standardization .section--std-consulting,
body.page-standardization .section--std-sto,
body.page-standardization .section--std-classifiers,
body.page-standardization .section--std-federal,
body.page-standardization .section--std-resources,
body.page-standardization .section--std-cycle,
body.page-standardization .section--std-npa,
body.page-standardization .section--std-tk,
body.page-standardization .section--std-join,
body.page-standardization .section--std-compliance,
body.page-standardization .section--std-science {
  padding-top: clamp(32px, 4vw, 64px);
  padding-bottom: clamp(32px, 4vw, 64px);
}

body.page-standardization #polygon {
  padding-top: clamp(20px, 3vw, 24px);
  padding-bottom: clamp(20px, 3vw, 24px);
}

/* Фоны секций по прямоугольникам Figma */
body.page-standardization .section--std-defense,
body.page-standardization .section--std-sto,
body.page-standardization .section--std-npa,
body.page-standardization .section--std-compliance,
body.page-standardization .section--std-join,
body.page-standardization .section--std-resources {
  background: var(--std-hero-bg);
}

body.page-standardization .section--std-federal {
  background: var(--std-hero-bg);
}

body.page-standardization .section--std-science {
  background: #fff;
}

/* Y-сдвиги @1440: DOM audit vs FIGMA_BOX_1440 (Δy = siteTop − figmaTop).
   2026-05: intl −30; resources translateY(313px); cycle−196… science−59, pb1376. */
@media (min-width: 1280px) {
  body.page-standardization .hero--standardization:not(.hero--strip) {
    padding-bottom: 32px;
  }

  body.page-standardization .section--std-dev,
  body.page-standardization .section--std-intl,
  body.page-standardization .section--std-defense,
  body.page-standardization .section--std-consulting {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  body.page-standardization .section--std-dev {
    background: #fff;
  }

  body.page-standardization .section--std-dev,
  body.page-standardization .hero--standardization + .section--std-dev {
    margin-top: 57px;
  }

  body.page-standardization .section--std-intl {
    /* было 55px при top:-56/mb:-56 у .std-dev-grid; без сдвига — −1px */
    margin-top: -1px;
  }

  body.page-standardization .section--std-defense {
    /* Figma soft bg y=2113, h=374; title y=2173 */
    margin-top: 265px;
    min-height: 374px;
    padding-top: 60px;
    box-sizing: border-box;
  }

  body.page-standardization .section--std-consulting {
    /* Figma #consulting top≈2491, title y=2547 (padding-top 55) */
    margin-top: 4px;
    padding-top: 55px;
  }

  body.page-standardization .section--std-sto {
    /* Figma Rectangle 449 y=3237 (не overlap на consulting) */
    margin-top: 136px;
    min-height: 397px;
    box-sizing: border-box;
  }

  body.page-standardization .section--std-classifiers {
    margin-top: -14px;
  }

  body.page-standardization .section--std-federal {
    margin-top: -12px;
  }

  body.page-standardization #polygon {
    margin-top: 0;
  }

  body.page-standardization .section--std-classifiers,
  body.page-standardization .section--std-resources {
    padding-top: 48px;
    padding-bottom: 48px;
  }

  body.page-standardization .section--std-sto {
    padding-top: 61px;
    padding-bottom: 48px;
  }

  body.page-standardization .section--std-resources {
    /* federal без отдельного #polygon в потоке: было −214, Δy≈−230 → +16 */
    margin-top: 16px;
  }

  body.page-standardization .section--std-cycle {
    padding-top: 32px;
    padding-bottom: 70px;
    margin-top: 2px;
    background: #fff;
  }

  body.page-standardization #cycle .std-section-title--center {
    width: 100%;
    max-width: none;
    margin: 0 0 65px;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    color: #020203;
  }

  body.page-standardization .std-cycle-order {
    margin-top: 70px;
  }

  body.page-standardization .section--std-cycle .cycle-schema--figma img {
    max-height: 912px;
    object-fit: contain;
  }

  body.page-standardization .section--std-npa,
  body.page-standardization .section--std-join {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  body.page-standardization .section--std-npa {
    margin-top: 0;
  }

  body.page-standardization .section--std-tk {
    margin-top: 47px;
  }

  body.page-standardization .section--std-join {
    margin-top: 2px;
    padding-top: 0;
    padding-bottom: 0;
    background: var(--std-hero-bg);
  }

  /* Figma Rectangle 453: серый фон 338px; image 399×399; до «Науки» ~52px без overlap */
  body.page-standardization .section--std-compliance {
    margin-top: 72px;
    padding-top: 40px;
    padding-bottom: 52px;
  }

  body.page-standardization .section--std-science {
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 56px;
    background: #fff;
  }
}

/* Hero + каталог: перекрытие глобальных photo-hero (44px title, градиент) */
body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip) {
  background-color: var(--std-hero-bg);
}

body.page-standardization:not(.page-home) .hero--standardization:not(.hero--strip)::before {
  background-image: none;
  background-color: var(--std-hero-bg);
  inset: 0;
  bottom: 0;
}

/* Каталог в hero: панель 1199×257 + 4×275 (Figma 5_2 / 5_4) — с 881px, не только 1280 */
@media (min-width: 881px) {
  body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip) {
    min-height: 0;
    padding-top: clamp(32px, 4vw, 48px);
    padding-bottom: clamp(32px, 4vw, 48px);
  }

  /* Figma: крошки → белая панель 40px, padding-top панели до заголовка 30px */
  body.page-standardization .hero--standardization .breadcrumbs {
    margin-bottom: 40px;
  }

  body.page-standardization .catalog-block {
    margin-top: 0;
    margin-bottom: 0;
  }

  body.page-standardization .catalog-block__panel {
    padding-top: 30px;
    padding-left: clamp(24px, 4vw, 42px);
    padding-right: clamp(16px, 3vw, 24px);
    min-height: 257px;
    box-sizing: border-box;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    row-gap: 10px;
    column-gap: 0;
  }

  body.page-standardization .catalog-block__panel::before {
    top: 0;
    left: 0;
    width: 100%;
    max-width: 100%;
    height: 257px;
    background: #fff;
    box-shadow: none;
  }

  body.page-standardization .catalog-block__title {
    margin-top: 0;
    font-size: clamp(28px, 3.5vw, 36px);
    font-weight: 800;
    line-height: 1.27;
    color: var(--std-accent-blue);
  }

  body.page-standardization .catalog-block__lead {
    margin: 0;
    max-width: min(842px, calc(100% - min(220px, 34vw) - 24px));
    font-size: 16px;
    line-height: 1.3;
    display: block;
    overflow: visible;
    height: auto;
    max-height: none;
    -webkit-line-clamp: unset;
  }

  body.page-standardization .catalog-block__cta {
    margin: 0;
    padding-top: 8px;
  }

  body.page-standardization .catalog-block__art {
    position: absolute;
    top: 12px;
    right: clamp(16px, 3vw, 24px);
    left: auto;
    width: min(274px, 34vw);
    margin: 0;
    grid-column: unset;
    grid-row: unset;
    z-index: 1;
  }

  body.page-standardization .catalog-block__art img {
    width: 100%;
    max-width: 274px;
    margin-left: auto;
  }

  body.page-standardization .catalog-block__tiles {
    margin-top: 33px;
    margin-left: 0;
    width: 100%;
    max-width: 100%;
  }

  body.page-standardization .catalog-block__tiles.std-grid--4 {
    gap: clamp(17px, 2.5vw, 33px);
    justify-content: start;
  }

  body.page-standardization .catalog-block__tiles .std-card {
    max-width: none;
    width: 100%;
    min-height: 197px;
    max-height: none;
    box-shadow: var(--std-card-shadow);
    border-top-color: var(--std-accent-blue);
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  body.page-standardization .hero--standardization:not(.hero--strip) {
    overflow-x: clip;
  }

  body.page-standardization .hero--standardization .hero__inner,
  body.page-standardization .hero--standardization .catalog-block {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
  }
}

@media (min-width: 1024px) {
  body.page-standardization .catalog-block__tiles.std-grid--4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  body.page-standardization .catalog-block__tiles.std-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1280px) {
  body.page-standardization:not(.page-home) .hero--standardization .hero__title {
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    letter-spacing: 0;
    max-width: 36rem;
    margin: 0 0 10px;
  }

  body.page-standardization .hero--standardization .hero__copy .hero__title {
    margin-bottom: 10px;
  }

  body.page-standardization .hero--standardization .breadcrumbs {
    margin: 0;
    font-family: var(--font);
    font-size: 14px;
    line-height: 1.2;
    color: #686a73;
  }

  body.page-standardization .catalog-block__title {
    font-size: 36px;
    font-weight: 800;
    line-height: 1.27;
  }

  body.page-standardization .catalog-block__tiles {
    margin-left: 0;
    width: 100%;
    max-width: 1200px;
  }

  body.page-standardization .catalog-block__tiles .std-card {
    gap: 15px;
    border-top-color: var(--std-accent-blue);
    box-shadow: none;
  }

  body.page-standardization .catalog-block__tiles .std-card:nth-child(4) .std-card__title {
    max-height: 71px;
    -webkit-line-clamp: 3;
  }

  body.page-standardization .catalog-block__tiles .std-card:nth-child(4) .std-card__text {
    max-height: 66px;
    -webkit-line-clamp: 3;
  }

  body.page-standardization .catalog-block__art {
    margin-top: -12px;
    margin-right: 0;
  }
}

/* Карточки — Figma Rectangle 436 #0088cc 4px; консалтинг Rectangle 470 #ed1a34 5px */
body.page-standardization .std-card:not(.std-card--consult):not(.std-card--federal):not(.std-card--npa-row) {
  gap: 15px;
  border-top-width: 4px;
  border-top-color: var(--std-accent-blue);
  box-shadow: var(--std-card-shadow);
}

body.page-standardization .std-dev-cell .std-card,
body.page-standardization .std-dev-cell .std-card.std-card--tall {
  border-top: none;
  box-shadow: none;
}

body.page-standardization .catalog-block__tiles .std-card {
  border-top-width: 4px;
  border-top-color: var(--std-accent-blue);
  box-shadow: none;
  background-color: #fff;
  background-image: linear-gradient(#0088cc, #0088cc);
  background-size: 100% 4px;
  background-repeat: no-repeat;
  background-position: 0 0;
  border-top: none;
}

body.page-standardization .std-card--consult {
  border-top-width: 5px;
  border-top-color: var(--std-accent-red);
  box-shadow: var(--std-card-shadow);
}

body.page-standardization .std-card--icon-row {
  border-top-width: 4px;
  border-top-color: var(--std-accent-blue);
}

@media (min-width: 1280px) {
  body.page-standardization .std-section-title,
  body.page-standardization .std-section-title--center {
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    letter-spacing: 0;
  }

  body.page-standardization .std-dev-cell .std-card.std-card--tall {
    min-height: 240px;
    max-height: 240px;
    padding: 25px;
  }
}

/* Figma 5_1_Стандартизация_1900 (13189:13205): hero 893px, каталог 1677×361, 4×375×252 gap 58 */
@media (min-width: 1900px) {
  body.page-standardization {
    --container: 1920px;
    --gutter: 120px;
    --std-card-w: 375px;
    --std-card-gap: 58px;
    --hero-h-standardization-1900: 893px;
  }

  body.page-standardization .container {
    max-width: var(--container);
    margin-inline: auto;
  }

  body.page-standardization .header > .container.header__top,
  body.page-standardization .header > .container.header__inner {
    padding-inline: var(--gutter);
  }

  /* Figma: hero y=156 (зазор в header-figma.css); title y=186 → padding-top 30px */
  body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip) {
    margin-top: 0;
    min-height: var(--hero-h-standardization-1900);
    padding-top: 30px;
    padding-bottom: 48px;
    box-sizing: border-box;
  }

  body.page-standardization .hero--standardization .hero__inner,
  body.page-standardization .hero--standardization .catalog-block {
    margin-inline: 0;
    width: 100%;
    max-width: 1677px;
  }

  body.page-standardization .hero--standardization .hero__title {
    font-size: 32px;
    line-height: 1.35;
    font-weight: 600;
    margin: 0 0 12px;
    max-width: none;
  }

  body.page-standardization .hero--standardization .breadcrumbs {
    margin-bottom: 40px;
  }

  body.page-standardization .catalog-block {
    margin-top: 0;
    margin-bottom: 0;
  }

  body.page-standardization .catalog-block__panel {
    min-height: 361px;
    padding-top: 30px;
    padding-left: 41px;
    padding-right: 41px;
    grid-template-rows: 65px 119px auto;
    row-gap: 28px;
  }

  body.page-standardization .catalog-block__panel::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 361px;
    box-shadow: 0 0 25px rgba(57, 59, 65, 0.1);
  }

  body.page-standardization .catalog-block__title {
    font-size: 48px;
    font-weight: 800;
    line-height: 1.35;
    height: auto;
    min-height: 0;
    max-height: none;
  }

  body.page-standardization .catalog-block__lead {
    font-family: "Fira Sans", sans-serif;
    font-size: 24px;
    line-height: 1.3;
    max-width: 1069px;
    height: auto;
    max-height: 119px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
  }

  body.page-standardization .catalog-block__art {
    top: 17px;
    right: 41px;
    left: auto;
    width: 390px;
  }

  body.page-standardization .catalog-block__art img {
    width: 390px;
    height: 332px;
    max-width: 390px;
    object-fit: cover;
  }

  body.page-standardization .catalog-block__tiles {
    margin-top: 52px;
    margin-left: 0;
    width: 100%;
    max-width: none;
  }

  body.page-standardization .catalog-block__tiles.std-grid--4 {
    grid-template-columns: repeat(4, 375px);
    gap: 58px;
    justify-content: start;
  }

  body.page-standardization .catalog-block__tiles .std-card {
    width: 375px;
    max-width: 375px;
    min-height: 252px;
    max-height: 252px;
    padding: 35px;
    gap: 20px;
    box-shadow: none;
  }

  body.page-standardization .catalog-block__tiles .std-card__title {
    flex: 0 0 58px;
    min-height: 58px;
    max-height: 58px;
    font-size: 24px;
    font-weight: 600;
    line-height: 29px;
    color: #020203;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin: 0;
  }

  body.page-standardization .catalog-block__tiles .std-card__text {
    flex: 1 1 auto;
    min-height: 0;
    font-family: "Fira Sans", sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    max-height: 104px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    margin: 0;
  }

  body.page-standardization .catalog-block__tiles .std-card:nth-child(4) .std-card__title {
    flex: 0 0 58px;
    min-height: 58px;
    max-height: 58px;
    -webkit-line-clamp: 2;
  }

  body.page-standardization .catalog-block__tiles .std-card:nth-child(4) .std-card__text {
    max-height: 104px;
    -webkit-line-clamp: 4;
  }
}

/* Международные — Figma: 375 (3+2, ~109px), 800 (3+2, ~193px), 1440 (3+2, 275px) */
.std-intl-grid {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(10px, 2.5vw, 33px);
  margin-inline: auto;
}

.std-intl-grid__row {
  display: grid;
  width: 100%;
  justify-content: center;
  justify-items: center;
  align-items: stretch;
  gap: 10px;
}

/* Figma 5_index_375: три колонки 109px, gap 10 */
.std-intl-grid__row--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 345px;
}

/* Figma 375: две колонки по центру */
.std-intl-grid__row--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 228px;
}

.std-intl-card {
  box-sizing: border-box;
  width: 100%;
  max-width: 275px;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 15px;
  min-height: 129px;
  padding: 25px 12px;
  background: #fff;
  border: 1px solid var(--c-line);
  border-top: 4px solid var(--c-accent);
  border-radius: 0;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  text-decoration: none;
  text-align: center;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.page-standardization .std-intl-card {
  gap: 15px;
  padding: 25px;
  border: none;
  border-top: none;
  box-shadow: var(--std-card-shadow);
}

.std-intl-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 60px;
  width: 100%;
  min-height: 60px;
}

.std-intl-card__icon img {
  display: block;
  width: auto;
  height: auto;
  max-width: 72px;
  max-height: 60px;
  object-fit: contain;
}

.std-intl-card:hover {
  border-color: var(--c-brand);
  box-shadow: 0 0 18px rgba(57, 59, 65, 0.14);
}

body.page-standardization .std-intl-card:hover {
  border: none;
  box-shadow: 0 0 18px rgba(57, 59, 65, 0.14);
}

.std-intl-card__label {
  font-family: var(--font);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  color: #020303;
}

body.page-standardization .std-intl-card__label {
  font-family: var(--font);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  color: #020203;
}

body.page-standardization .section--std-intl {
  position: relative;
  z-index: 1;
}

@media (max-width: 879px) {
  body.page-standardization .section--std-intl {
    margin-top: 24px;
    padding-top: clamp(28px, 5vw, 40px);
  }

  body.page-standardization #international .std-section-title--center {
    margin-bottom: clamp(20px, 4vw, 32px);
    font-size: clamp(22px, 5.5vw, 30px);
  }

  /* Figma 5_6 @375 «Отрасли 375» (13189:49216+): 109×129, px 7 py 10, gap 10, Montserrat Medium 10 / lh 1.3 */
  body.page-standardization .std-intl-grid {
    gap: 10px;
  }

  body.page-standardization .std-intl-grid__row {
    gap: 10px;
    width: fit-content;
    max-width: 100%;
    margin-inline: auto;
  }

  body.page-standardization .std-intl-grid__row--3 {
    grid-template-columns: repeat(3, 109px);
    max-width: 347px;
  }

  body.page-standardization .std-intl-grid__row--2 {
    grid-template-columns: repeat(2, 109px);
    max-width: 228px;
  }

  body.page-standardization .std-intl-card {
    box-sizing: border-box;
    width: 109px;
    max-width: 109px;
    min-height: 129px;
    max-height: none;
    padding: 10px 7px;
    gap: 10px;
    box-shadow: 0 0 7.5px rgba(57, 59, 65, 0.07);
  }

  body.page-standardization .std-intl-card__icon {
    flex: 0 0 60px;
    width: 100%;
    min-height: 60px;
    height: 60px;
  }

  body.page-standardization .std-intl-card__icon img {
    display: block;
    max-width: none;
    max-height: none;
    object-fit: contain;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(1) .std-intl-card__icon img {
    width: 72px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(2) .std-intl-card__icon img {
    width: 64px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(3) .std-intl-card__icon img {
    width: 58px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card:nth-child(1) .std-intl-card__icon img {
    width: 58px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card:nth-child(2) .std-intl-card__icon img {
    width: 60px;
    height: 60px;
  }

  body.page-standardization .std-intl-card__icon--blend {
    width: 60px;
    height: 60px;
  }

  body.page-standardization .std-intl-card__icon--blend img {
    width: 60px;
    height: 60px;
  }

  body.page-standardization .std-intl-card__label {
    display: -webkit-box;
    width: 95px;
    max-width: 95px;
    max-height: 39px;
    margin: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    font-family: var(--font);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
    color: #020203;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card__label {
    -webkit-line-clamp: 3;
    max-height: 39px;
  }
}

@media (min-width: 600px) and (max-width: 879px) {
  /* Figma 5_5 @800 «Отрасли 376+» (13189:34021+): ~193×129, gap 31, label 10px (179px у card 5) */
  body.page-standardization .std-intl-grid {
    gap: 10px;
  }

  body.page-standardization .std-intl-grid__row {
    gap: 31px;
  }

  body.page-standardization .std-intl-grid__row--3 {
    grid-template-columns: repeat(3, 193px);
    max-width: 659px;
  }

  body.page-standardization .std-intl-grid__row--2 {
    grid-template-columns: repeat(2, 193px);
    max-width: 417px;
  }

  body.page-standardization .std-intl-card {
    width: 193px;
    max-width: 193px;
    min-height: 129px;
    padding: 10px 7px;
    gap: 10px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card:nth-child(2) .std-intl-card__label {
    width: 179px;
    max-width: 179px;
  }
}

body.page-standardization .std-intl-grid__row--2 .std-intl-card__label {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 4;
}

/* Figma 5_index_800: 3×193 + 2×193, gap 31 — generic (не page-standardization @≤879: см. блок выше) */
@media (min-width: 600px) {
  .std-intl-grid__row {
    gap: 15px;
  }

  .std-intl-grid__row--3 {
    grid-template-columns: repeat(3, minmax(0, 193px));
    max-width: 659px;
    gap: 31px;
  }

  .std-intl-grid__row--2 {
    grid-template-columns: repeat(2, minmax(0, 193px));
    max-width: 417px;
    gap: 31px;
  }

  body:not(.page-standardization) .std-intl-card {
    min-height: 167px;
    padding: 25px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card__label {
    -webkit-line-clamp: 3;
  }
}

@media (min-width: 880px) and (max-width: 1279px) {
  .std-intl-grid__row--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: min(100%, 891px);
    gap: clamp(21px, 3vw, 33px);
  }

  .std-intl-grid__row--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: min(100%, 583px);
    gap: clamp(21px, 3vw, 33px);
  }

  .std-intl-card {
    max-width: 275px;
    width: 100%;
  }

  /* Figma 5_4 @1024 (13189:48001+): 275×167, иконки y=25 по центру */
  body.page-standardization .std-intl-grid__row--3,
  body.page-standardization .std-intl-grid__row--2 {
    grid-template-columns: repeat(3, 275px);
  }

  body.page-standardization .std-intl-grid__row--2 {
    grid-template-columns: repeat(2, 275px);
    width: fit-content;
    max-width: 583px;
    margin-inline: auto;
  }

  body.page-standardization .std-intl-grid__row--3 {
    width: fit-content;
    max-width: 891px;
    margin-inline: auto;
    gap: 33px;
  }

  body.page-standardization .std-intl-card {
    width: 275px;
    max-width: 275px;
    min-height: 167px;
    max-height: 167px;
    padding: 25px;
    gap: 15px;
  }

  body.page-standardization .std-intl-card__icon {
    flex: 0 0 60px;
    min-height: 60px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body.page-standardization .std-intl-card__icon img {
    display: block;
    max-width: none;
    max-height: none;
    object-fit: contain;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(1) .std-intl-card__icon img {
    width: 72px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(2) .std-intl-card__icon img {
    width: 64px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(3) .std-intl-card__icon img {
    width: 58px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card:nth-child(1) .std-intl-card__icon img {
    width: 58px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card:nth-child(2) .std-intl-card__icon img {
    width: 60px;
    height: 60px;
  }

  body.page-standardization .std-intl-card__icon--blend {
    width: 60px;
    height: 60px;
  }

  body.page-standardization .std-intl-card__icon--blend img {
    width: 60px;
    height: 60px;
  }

  body.page-standardization .std-intl-card__label {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    max-width: 225px;
    max-height: 42px;
    -webkit-line-clamp: 2;
  }
}

@media (min-width: 1280px) {
  .std-intl-grid {
    gap: 33px;
  }

  .std-intl-grid__row--3 {
    grid-template-columns: repeat(3, 275px);
    width: fit-content;
    max-width: 891px;
    margin-inline: auto;
    gap: 33px;
  }

  .std-intl-grid__row--2 {
    grid-template-columns: repeat(2, 275px);
    width: fit-content;
    max-width: 583px;
    margin-inline: auto;
    gap: 33px;
  }

  .std-intl-card {
    width: 275px;
    max-width: 275px;
    min-height: 167px;
    max-height: 167px;
    padding: 25px;
  }

  body.page-standardization .std-intl-card__label {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    max-height: 2.6em;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card__label {
    -webkit-line-clamp: 2;
  }
}

/* Figma 5_3_Стандартизация_1280 #international (13189:40654–40907): заголовок по центру, 3+2×275×167 gap 33 */
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-standardization #international > .container {
    max-width: 1280px;
    margin-inline: auto;
    padding-inline: 40px;
    box-sizing: border-box;
  }

  body.page-standardization #international .std-section-title.std-section-title--center {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 auto 70px;
    padding: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization .std-intl-grid {
    gap: 33px;
    align-items: center;
  }

  body.page-standardization .std-intl-grid__row--3 {
    grid-template-columns: repeat(3, 275px);
    width: fit-content;
    max-width: 891px;
    margin-inline: auto;
    gap: 33px;
  }

  body.page-standardization .std-intl-grid__row--2 {
    grid-template-columns: repeat(2, 275px);
    width: fit-content;
    max-width: 583px;
    margin-inline: auto;
    gap: 33px;
  }

  body.page-standardization .std-intl-card {
    width: 275px;
    max-width: 275px;
    min-height: 167px;
    max-height: 167px;
    padding: 25px;
    gap: 15px;
    box-shadow: var(--std-card-shadow);
    align-items: center;
  }

  body.page-standardization .std-intl-card__icon {
    flex: 0 0 60px;
    min-height: 60px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body.page-standardization .std-intl-card__icon img {
    display: block;
    max-width: none;
    max-height: none;
    object-fit: contain;
  }

  /* MCP: иконки по центру карточки 275px — x≈101.5 / 105.3 / 108.7 / 108.5 / 107.5 */
  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(1) .std-intl-card__icon img {
    width: 72px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(2) .std-intl-card__icon img {
    width: 64px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(3) .std-intl-card__icon img {
    width: 58px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card:nth-child(1) .std-intl-card__icon img {
    width: 58px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card:nth-child(2) .std-intl-card__icon img {
    width: 60px;
    height: 60px;
  }

  body.page-standardization .std-intl-card__icon--blend {
    position: relative;
    width: 60px;
    height: 60px;
    overflow: hidden;
  }

  body.page-standardization .std-intl-card__icon--blend img {
    width: 60px;
    height: 60px;
    object-fit: cover;
  }

  body.page-standardization .std-intl-card__icon--blend::after {
    content: "";
    position: absolute;
    inset: 0;
    background: #08c;
    mix-blend-mode: lighten;
    pointer-events: none;
  }

  body.page-standardization .std-intl-card__label {
    display: -webkit-box;
    width: 100%;
    max-width: 225px;
    max-height: 42px;
    margin: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-family: var(--font);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    text-align: center;
    color: #020203;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card__label {
    -webkit-line-clamp: 2;
    max-height: 42px;
  }
}

/* Разработка — Figma 5_2: 4×275×240, иллюстрация над белой карточкой, gap 33 / row 25 */
.std-dev-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 275px));
  gap: 33px;
  row-gap: 25px;
  justify-content: center;
  justify-items: stretch;
  align-items: start;
}

.std-dev-cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 275px;
  margin-inline: auto;
}

.std-dev-cell__icon {
  display: block;
  width: clamp(120px, 12vw, 168px);
  height: auto;
  margin-bottom: -24px;
  position: relative;
  z-index: 2;
  pointer-events: none;
  object-fit: contain;
}

.std-dev-cell .std-card {
  box-sizing: border-box;
  width: 100%;
  max-width: 275px;
  margin-inline: 0;
}

@media (max-width: 600px) {
  .std-dev-grid {
    grid-template-columns: minmax(0, 275px);
    justify-content: center;
  }
}

@media (max-width: 880px) {
  body.page-standardization #dev > .container {
    padding-inline: 15px;
    box-sizing: border-box;
  }

  body.page-standardization #dev .std-section-title--center {
    margin: 0 0 35px;
    font-family: var(--font);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.35;
    text-align: center;
    color: #020203;
  }

  body.page-standardization .std-dev-grid {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: stretch;
  }

  /* Figma 5_6 @375 «Отрасли_разделы» (13189:49143+): 345×auto, #f5f5f5, icon 109 + text, #ed1a34 4px */
  body.page-standardization .std-dev-cell {
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 15px;
    width: 100%;
    max-width: 345px;
    min-height: 0;
    margin-inline: auto;
    padding: 15px 10px;
    background: #f5f5f5;
    overflow: hidden;
  }

  body.page-standardization .std-dev-cell::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #ed1a34;
    z-index: 1;
  }

  body.page-standardization .std-dev-cell::after {
    display: none;
  }

  body.page-standardization .std-dev-cell__icon {
    position: relative;
    z-index: 2;
    flex: 0 0 109px;
    width: 109px;
    height: 109px;
    margin: 0;
    object-fit: contain;
  }

  body.page-standardization .std-dev-cell .std-card,
  body.page-standardization .std-dev-cell .std-card.std-card--tall {
    position: relative;
    z-index: 2;
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    max-width: none;
    min-height: 0;
    max-height: none;
    margin: 0;
    padding: 0;
    gap: 10px;
    background: transparent;
    border: none;
    box-shadow: none;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }

  body.page-standardization .std-dev-cell .std-card__title {
    width: 100%;
    max-width: 201px;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
  }

  body.page-standardization .std-dev-cell .std-card__text {
    width: 100%;
    max-width: 201px;
    margin: 0;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
  }

  body.page-standardization .std-dev-cell:nth-child(1) .std-card__text,
  body.page-standardization .std-dev-cell:nth-child(4) .std-card__text {
    max-height: 63px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  body.page-standardization .std-dev-cell:nth-child(2) .std-card__text,
  body.page-standardization .std-dev-cell:nth-child(3) .std-card__text {
    max-height: 63px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  body.page-standardization .std-dev-cell:nth-child(3) .std-card__title {
    max-height: 120px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
  }

  body.page-standardization .std-dev-cta {
    margin: 40px 0 0;
    text-align: center;
  }

  body.page-standardization .std-dev-cta__btn.btn.btn--primary {
    min-width: 260px;
    height: 50px;
    min-height: 50px;
    padding: 15px 40px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 500;
  }
}

@media (min-width: 881px) {
  body.page-standardization .std-dev-grid {
    grid-template-columns: repeat(2, 275px);
    gap: 33px;
    row-gap: 25px;
    justify-content: center;
  }

  /* Figma 5_2 @1440 / 5_3 @1280: колонка 275×394 #f5f5f5, #ed1a34 4px, иконка, белая карточка 275×240 */
  body.page-standardization .std-dev-cell {
    box-sizing: border-box;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 275px;
    max-width: 275px;
    min-height: 394px;
    background: #f5f5f5;
    overflow: visible;
  }

  body.page-standardization .std-dev-cell::before {
    content: "";
    display: block !important;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #ed1a34;
    z-index: 3;
  }

  body.page-standardization .std-dev-cell::after {
    display: none !important;
  }

  body.page-standardization .std-dev-cell__icon {
    position: relative;
    z-index: 2;
    flex: 0 0 auto;
    object-fit: contain;
    pointer-events: none;
    margin-bottom: -24px;
  }

  body.page-standardization .std-dev-cell:nth-child(1) .std-dev-cell__icon {
    width: 168px;
    height: 168px;
    margin-top: 10px;
  }

  body.page-standardization .std-dev-cell:nth-child(2) .std-dev-cell__icon {
    width: 138px;
    height: 138px;
    margin-top: 25px;
  }

  body.page-standardization .std-dev-cell:nth-child(3) .std-dev-cell__icon {
    width: 173px;
    height: 173px;
    margin-top: 6px;
  }

  body.page-standardization .std-dev-cell:nth-child(4) .std-dev-cell__icon {
    width: 143px;
    height: 143px;
    margin-top: 23px;
  }

  body.page-standardization .std-dev-cell .std-card,
  body.page-standardization .std-dev-cell .std-card.std-card--tall {
    box-sizing: border-box;
    width: 100%;
    max-width: 275px;
    min-height: 240px;
    max-height: 240px;
    margin-top: auto;
    margin-inline: 0;
    padding: 25px;
    gap: 10px;
    background: #fff;
    border: none;
    border-top: none;
    box-shadow: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  body.page-standardization .std-dev-cell .std-card__title {
    width: 100%;
    max-width: 225px;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: center;
  }

  body.page-standardization .std-dev-cell .std-card__text {
    width: 100%;
    max-width: 225px;
    margin: 0;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    text-align: center;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  body.page-standardization .std-dev-cell:nth-child(1) .std-card__title,
  body.page-standardization .std-dev-cell:nth-child(4) .std-card__title {
    max-height: 48px;
    -webkit-line-clamp: 2;
  }

  body.page-standardization .std-dev-cell:nth-child(1) .std-card__text,
  body.page-standardization .std-dev-cell:nth-child(4) .std-card__text {
    max-height: 132px;
    -webkit-line-clamp: 7;
  }

  body.page-standardization .std-dev-cell:nth-child(2) .std-card__title,
  body.page-standardization .std-dev-cell:nth-child(3) .std-card__title {
    max-height: 96px;
    -webkit-line-clamp: 4;
  }

  body.page-standardization .std-dev-cell:nth-child(2) .std-card__text,
  body.page-standardization .std-dev-cell:nth-child(3) .std-card__text {
    max-height: 84px;
    -webkit-line-clamp: 5;
  }
}

@media (min-width: 1280px) {
  .std-dev-grid {
    grid-template-columns: repeat(4, 275px);
    gap: 33px;
    row-gap: 25px;
    justify-content: center;
  }
}

/* Оборонная — Figma 5_2: заголовок, текст 613px, «Подробнее», карточка контактов 451×171 */
.std-defense {
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr;
  grid-template-areas:
    "title"
    "body";
  align-items: start;
}

.std-defense__title {
  grid-area: title;
  margin: 0 0 24px;
}

.std-defense__body {
  grid-area: body;
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr;
  grid-template-areas:
    "main"
    "contacts";
  align-items: start;
}

.std-defense__main {
  grid-area: main;
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
}

.std-defense__body .std-contacts-card {
  grid-area: contacts;
}

.std-defense__copy {
  min-width: 0;
}

.std-defense__actions {
  margin: 0;
}

.std-defense__more {
  min-width: 165px;
  min-height: 50px;
  justify-content: center;
}

.std-defense__copy p {
  margin: 0;
  font-family: var(--font);
  font-size: 15px;
  line-height: 1.5;
  color: #020303;
}

.std-contacts-card {
  grid-area: contacts;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(115px, 127px);
  grid-template-rows: auto auto auto auto;
  column-gap: 24px;
  row-gap: 8px;
  align-items: start;
  width: 100%;
  max-width: 451px;
  min-height: 171px;
  padding: 35px 42px;
  background: #fff;
  border-radius: 0;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}

.std-contacts-card__title {
  grid-column: 1 / -1;
  margin: 0 0 9px;
  font-family: var(--font);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.22;
  color: #020303;
}

.std-contacts-card__phone,
.std-contacts-card__email,
.std-contacts-card__hours {
  margin: 0;
  font-family: var(--font);
  font-size: 14px;
  line-height: 1.45;
  color: #020303;
}

.std-contacts-card__phone {
  grid-column: 1;
  grid-row: 2;
  font-size: clamp(20px, 2.4vw, 22px);
  font-weight: 600;
  letter-spacing: 0.01em;
}

.std-contacts-card__email {
  grid-column: 1;
  grid-row: 3;
}

.std-contacts-card__hours {
  grid-column: 2;
  grid-row: 2 / span 2;
  align-self: start;
  font-size: 14px;
  line-height: 1.35;
  color: #686a73;
}

.std-contacts-card__hours-label {
  display: block;
  margin-bottom: 4px;
  color: #020303;
}

.std-contacts-card__phone a,
.std-contacts-card__email a {
  color: var(--c-brand);
  text-decoration: none;
  font-weight: 600;
}

@media (max-width: 799px) {
  body.page-standardization .section--std-defense {
    padding-top: clamp(28px, 5vw, 40px);
    padding-bottom: clamp(28px, 5vw, 40px);
    margin-top: 24px;
  }

  body.page-standardization .std-defense {
    gap: 20px;
  }

  body.page-standardization .std-defense__title {
    margin: 0 0 20px;
    font-size: clamp(22px, 5.5vw, 32px);
    line-height: 1.2;
    text-align: left;
  }

  body.page-standardization .std-defense__body {
    grid-template-columns: 1fr;
    grid-template-areas:
      "main"
      "contacts";
    gap: 24px;
  }

  body.page-standardization .std-defense__main {
    gap: 20px;
  }

  body.page-standardization .std-defense__copy p {
    font-size: 15px;
    line-height: 1.5;
  }

  body.page-standardization .std-defense__actions {
    text-align: center;
  }

  body.page-standardization .std-contacts-card {
    max-width: none;
    width: 100%;
    min-height: 259px;
    padding: 35px 42px;
    justify-self: stretch;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto auto auto;
    row-gap: 10px;
  }

  body.page-standardization .std-contacts-card__title {
    grid-column: 1;
    grid-row: 1;
    margin-bottom: 12px;
  }

  body.page-standardization .std-contacts-card__phone {
    grid-column: 1;
    grid-row: 2;
    font-size: 22px;
  }

  body.page-standardization .std-contacts-card__email {
    grid-column: 1;
    grid-row: 3;
  }

  body.page-standardization .std-contacts-card__hours {
    grid-column: 1;
    grid-row: 4;
    align-self: start;
    margin-top: 4px;
  }
}

@media (min-width: 800px) and (max-width: 1279px) {
  body.page-standardization .section--std-defense {
    padding-top: 48px;
    padding-bottom: 48px;
  }

  body.page-standardization .std-defense__title {
    font-size: 28px;
    line-height: 1.35;
    margin-bottom: 24px;
  }

  body.page-standardization .std-defense__body {
    grid-template-columns: minmax(0, 1fr) minmax(234px, 451px);
    grid-template-areas: "main contacts";
    column-gap: clamp(24px, 5vw, 88px);
    align-items: start;
  }

  body.page-standardization .std-defense__body .std-contacts-card {
    justify-self: end;
    max-width: 451px;
    width: 100%;
    min-height: 171px;
  }

  body.page-standardization .std-defense__copy p {
    font-size: 16px;
    line-height: 1.4;
  }

  body.page-standardization .std-defense__actions {
    text-align: left;
  }
}

@media (min-width: 1280px) {
  /* Figma 5_2 @1440+: контент с x=120 — только sto/classifiers на 1440+ в отдельном блоке */

  body.page-standardization #defense .std-defense__title {
    margin: 0 0 35px;
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    text-align: left;
    max-width: none;
    margin-inline: 0;
    width: 100%;
  }

  body.page-standardization #consulting .std-section-title--center,
  body.page-standardization #sto .std-section-title--center {
    margin-bottom: 70px;
  }

  body.page-standardization .std-defense {
    grid-template-columns: minmax(0, 613px) 451px;
    grid-template-areas:
      "title title"
      "main contacts";
    column-gap: 136px;
    row-gap: 35px;
    align-items: start;
  }

  body.page-standardization .std-defense__body {
    display: contents;
  }

  body.page-standardization .std-defense__main {
    grid-area: main;
  }

  body.page-standardization .std-defense__title {
    margin-bottom: 0;
  }

  body.page-standardization .std-defense__copy {
    max-width: 613px;
  }

  body.page-standardization .std-defense__copy p {
    font-size: 16px;
    line-height: 1.3125;
  }

  body.page-standardization .std-contacts-card {
    grid-area: contacts;
    width: 451px;
    max-width: none;
    margin-top: -31px;
    justify-self: end;
  }

  body.page-standardization .std-contacts-card__title {
    margin-bottom: 17px;
  }

  body.page-standardization .std-contacts-card__phone {
    font-size: 22px;
    line-height: 1.3;
  }
}

/* Figma 5_3_Стандартизация_1280 #defense (13189:40674–40893): gutter 40, title left x=40, 613+136+451 */
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-standardization #defense > .container {
    max-width: 1280px;
    margin-inline: auto;
    padding-inline: 40px;
    box-sizing: border-box;
  }

  body.page-standardization #defense .std-defense__title {
    margin: 0 0 35px;
    text-align: left;
    max-width: none;
    margin-inline: 0;
    width: 100%;
  }

  body.page-standardization .std-defense {
    grid-template-columns: 613px 451px;
    column-gap: 136px;
  }

  body.page-standardization .std-defense__copy {
    max-width: 613px;
    width: 613px;
  }

  body.page-standardization .std-defense__copy p {
    font-family: "Fira Sans", sans-serif;
    line-height: 1.3;
  }
}

/* Консалтинг — лента без стрелок: 300×417 (до 1279) / сетка 378×392 @1280, Figma 5_2 */
body.page-standardization .std-consult-showcase.h-slider {
  position: relative;
  margin: 0;
  padding: 0;
  overflow: visible;
  max-width: none;
}

body.page-standardization .std-consult-showcase .h-slider__track {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 10px;
  margin-inline: calc(-1 * var(--gutter));
  padding-inline: var(--gutter);
  padding-bottom: 4px;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: var(--gutter);
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

body.page-standardization .std-consult-showcase .h-slider__track::-webkit-scrollbar {
  display: none;
}

body.page-standardization .std-consult-showcase .h-slider__track > .std-card--consult {
  flex: 0 0 300px;
  width: 300px;
  min-width: 300px;
  max-width: 300px;
  min-height: 417px;
  margin-inline: 0;
  padding: 25px;
  scroll-snap-align: start;
  box-sizing: border-box;
}

body.page-standardization .std-consult-showcase .h-slider__nav,
body.page-standardization .std-consult-showcase .h-slider__hint {
  display: none !important;
}

body.page-standardization .std-card--consult {
  max-width: none;
  gap: 0;
}

body.page-standardization .std-card--consult .std-card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 155px;
  min-height: 155px;
  margin: 0 0 15px;
}

body.page-standardization .std-card--consult .std-card__media img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 155px;
  object-fit: contain;
}

body.page-standardization .std-card--consult:nth-child(3) .std-card__media {
  flex-basis: 149px;
  min-height: 149px;
  margin-bottom: 6px;
}

body.page-standardization .std-card--consult:nth-child(3) .std-card__media img {
  max-width: 207px;
  max-height: 149px;
}

body.page-standardization .std-card--consult .std-card__title {
  margin: 0 0 15px;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  color: #020203;
}

body.page-standardization .std-card--consult .std-card__text {
  margin: 0;
  flex: 1 1 auto;
  font-family: "Fira Sans", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  color: #020203;
}

.std-consult-cta {
  margin: 40px 0 0;
  text-align: center;
}

.std-consult-cta .btn {
  min-width: 260px;
  min-height: 50px;
  justify-content: center;
}

@media (max-width: 879px) {
  body.page-standardization .section--std-consulting {
    margin-top: 24px;
    padding-top: clamp(28px, 5vw, 40px);
    padding-bottom: clamp(28px, 5vw, 40px);
  }

  body.page-standardization #consulting .std-section-title--center {
    margin-bottom: clamp(20px, 4vw, 32px);
    font-size: clamp(22px, 5.5vw, 30px);
    line-height: 1.2;
  }
}

@media (min-width: 880px) and (max-width: 1279px) {
  body.page-standardization .std-consult-showcase .h-slider__track {
    gap: 31px;
  }

  body.page-standardization #consulting .std-section-title--center {
    margin-bottom: 40px;
  }
}

@media (min-width: 1280px) {
  body.page-standardization .std-consult-showcase.h-slider {
    margin: 0;
    padding: 0;
  }

  body.page-standardization .std-consult-showcase .h-slider__track {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 33px;
    justify-content: start;
    overflow: visible;
    scroll-snap-type: none;
    margin-inline: 0;
    padding-inline: 0;
    padding-bottom: 0;
  }

  body.page-standardization .std-consult-showcase .h-slider__track > .std-card--consult {
    flex: none;
    width: 378px;
    min-width: 0;
    max-width: none;
    height: 392px;
    min-height: 392px;
    max-height: 392px;
    overflow: hidden;
  }

  body.page-standardization .std-card--consult:nth-child(3) .std-card__media {
    flex: 0 0 149px;
    min-height: 149px;
    margin: 0;
  }

  body.page-standardization .std-card--consult {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
    width: 378px;
    height: 392px;
    min-height: 392px;
    max-height: 392px;
    padding: 25px;
    overflow: hidden;
    border-top: none;
    background-color: #fff;
    background-image: linear-gradient(#ed1a34, #ed1a34);
    background-size: 100% 5px;
    background-repeat: no-repeat;
    background-position: 0 0;
  }

  body.page-standardization .std-card--consult .std-card__media {
    flex: 0 0 155px;
    min-height: 155px;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
  }

  body.page-standardization .std-card--consult .std-card__media img {
    display: block;
    width: 155px;
    height: 155px;
    max-width: 155px;
    max-height: 155px;
    object-fit: contain;
  }

  body.page-standardization .std-card--consult:nth-child(3) .std-card__media img {
    width: 207px;
    height: 149px;
    max-width: 207px;
    max-height: 149px;
  }

  body.page-standardization .std-card--consult .std-card__title {
    width: 100%;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
  }

  body.page-standardization .std-card--consult .std-card__text {
    width: 100%;
    margin: 0;
    flex: 0 1 auto;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    text-align: left;
  }
}

/* Figma 5_3_Стандартизация_1280 #consulting (13189:40685–40700): gutter 40, title center x=640 */
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-standardization #consulting > .container {
    max-width: 1280px;
    margin-inline: auto;
    padding-inline: 40px;
    box-sizing: border-box;
  }

  body.page-standardization #consulting .std-section-title.std-section-title--center {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 auto 70px;
    padding: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization .std-consult-cta {
    margin: 70px 0 0;
    text-align: center;
  }
}

/* Компактные карточки СТО / классификаторы — Figma 378×159 (десктоп), 300×241 (моб.) */
.std-compact-card {
  box-sizing: border-box;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  width: 100%;
  max-width: 300px;
  min-height: 241px;
  margin-inline: auto;
  padding: 25px 20px 20px;
  background: #fff;
  border: none;
  border-radius: 0;
  box-shadow: var(--std-card-shadow);
  text-align: center;
  text-decoration: none;
  color: #020303;
  transition: box-shadow 0.2s ease;
}

.std-compact-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--std-accent-blue);
}

.std-compact-card:hover {
  box-shadow: 0 0 18px rgba(57, 59, 65, 0.14);
  color: #020303;
}

.std-compact-card__icon {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.std-compact-card__icon img {
  display: block;
  width: 98px;
  height: 98px;
  max-width: 98px;
  max-height: 98px;
  object-fit: contain;
  object-position: center;
}

.std-compact-card__label {
  flex: 0 0 auto;
  min-width: 0;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
  color: #020303;
}

.std-compact-card__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-width: 0;
}

.std-compact-card .std-card__title {
  margin: 0;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
  color: #020303;
}

.std-compact-card .std-card__text {
  margin: 0;
  font-size: 14px;
  line-height: 1.3;
  color: #686a73;
}

body.page-standardization .std-compact-card::before {
  background: #ed1a34;
}

body.page-standardization .std-card.std-compact-card.std-card--icon-row {
  border-top: none;
  box-shadow: none;
}

/* СТО — 2×378 на десктопе */
.std-sto-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px;
  justify-content: center;
  max-width: 300px;
  margin-inline: auto;
}

@media (min-width: 601px) {
  .std-sto-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(12px, 2.5vw, 31px);
    max-width: min(100%, 748px);
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 599px) {
  body.page-standardization #sto .std-section-title--center {
    margin: 0 0 35px;
    font-size: 24px;
    line-height: 1.35;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-header {
    display: block;
    margin: 0 0 35px;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-header .std-section-title {
    margin: 0;
    font-size: 24px;
    line-height: 1.35;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-link {
    display: none;
  }

  body.page-standardization .std-sto-grid {
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 345px;
    width: 100%;
    margin-inline: auto;
  }

  body.page-standardization .std-sto-grid .std-compact-card {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 15px;
    width: 100%;
    max-width: 345px;
    min-height: 0;
    max-height: none;
    padding: 15px 10px;
    background: #fff;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
    text-align: left;
    border-top: none;
  }

  body.page-standardization .std-sto-grid .std-compact-card__icon {
    flex: 0 0 auto;
    width: auto;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(1) .std-compact-card__icon img {
    width: 98px;
    height: 98px;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(2) .std-compact-card__icon img {
    width: 109px;
    height: 109px;
  }

  body.page-standardization .std-sto-grid .std-compact-card__label {
    max-width: 201px;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    text-align: left;
  }

  body.page-standardization .std-classifier-showcase.h-slider {
    margin: 0;
    overflow: visible;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    overflow: visible;
    scroll-snap-type: none;
    padding: 0;
    margin: 0;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track > .std-compact-card {
    width: 100%;
    max-width: 345px;
    flex: none;
    scroll-snap-align: unset;
  }

  body.page-standardization #classifiers .std-card.std-compact-card {
    flex-direction: row;
    align-items: center;
    gap: 15px;
    max-width: 345px;
    padding: 15px 10px;
    background: #f5f5f5;
    box-shadow: none;
    border-top: none;
    text-align: left;
  }

  body.page-standardization #classifiers .std-compact-card__icon {
    flex: 0 0 109px;
    width: 109px;
    height: 109px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(1) .std-compact-card__icon img {
    width: 67px;
    height: 90px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(2) .std-compact-card__icon img {
    width: 62px;
    height: 90px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(3) .std-compact-card__icon img {
    width: 104px;
    height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card__body {
    max-width: 201px;
    align-items: flex-start;
    gap: 0;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__title {
    max-width: 201px;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    text-align: left;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__text {
    display: none !important;
  }
}

@media (min-width: 880px) and (max-width: 1279px) {
  body.page-standardization #sto .std-section-title--center {
    margin: 0 auto 70px;
    max-width: none;
    font-size: 28px;
    line-height: 1.35;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-header {
    display: block;
    margin: 0 0 60px;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-header .std-section-title {
    margin: 0;
    font-size: 28px;
    line-height: 1.35;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-link {
    display: none;
  }

  body.page-standardization .std-sto-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(16px, 3vw, 33px);
    width: 100%;
    max-width: 789px;
    justify-content: center;
    margin-inline: auto;
  }

  body.page-standardization .std-sto-grid .std-compact-card {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    width: 100%;
    max-width: none;
    min-width: 0;
    min-height: 159px;
    max-height: none;
    padding: 20px;
    background: #fff;
    box-shadow: var(--std-card-shadow);
    text-align: left;
    border-top: none;
    overflow: hidden;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(1) .std-compact-card__icon img {
    width: 98px;
    height: 98px;
    max-width: 98px;
    max-height: 98px;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(2) .std-compact-card__icon img {
    width: 121px;
    height: 121px;
    max-width: 121px;
    max-height: 121px;
  }

  body.page-standardization .std-sto-grid .std-compact-card__label {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    max-width: none;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.2;
    text-align: left;
    overflow-wrap: break-word;
  }

  body.page-standardization .std-classifier-showcase.h-slider {
    margin: 0;
    overflow: visible;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track {
    display: grid;
    grid-template-columns: repeat(3, 300px);
    gap: 31px;
    justify-content: center;
    overflow: visible;
    scroll-snap-type: none;
    padding: 0;
    margin: 0;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track > .std-compact-card {
    flex: none;
    width: 300px;
    max-width: 300px;
    scroll-snap-align: unset;
  }

  body.page-standardization #classifiers .std-card.std-compact-card {
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 300px;
    max-width: 300px;
    min-height: 241px;
    max-height: none;
    padding: 25px;
    gap: 15px;
    background: #f5f5f5;
    box-shadow: none;
    border-top: none;
    text-align: center;
  }

  body.page-standardization #classifiers .std-compact-card__icon {
    flex: 0 0 104px;
    width: 104px;
    height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(1) .std-compact-card__icon img {
    width: 67px;
    height: 90px;
    max-width: 67px;
    max-height: 90px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(2) .std-compact-card__icon img {
    width: 62px;
    height: 90px;
    max-width: 62px;
    max-height: 90px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(3) .std-compact-card__icon img {
    width: 104px;
    height: 104px;
    max-width: 104px;
    max-height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card__body {
    align-items: center;
    gap: 0;
    width: 100%;
    max-width: 200px;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__title {
    width: 200px;
    max-width: 200px;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    text-align: center;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__text {
    display: none !important;
  }
}

@media (min-width: 600px) and (max-width: 879px) {
  body.page-standardization #sto .std-section-title--center {
    margin: 0 auto 70px;
    font-size: 28px;
    line-height: 1.35;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-header {
    display: block;
    margin: 0 0 60px;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-header .std-section-title {
    margin: 0;
    font-size: 28px;
    line-height: 1.35;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-link {
    display: none;
  }

  body.page-standardization .std-sto-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(12px, 2.5vw, 32px);
    width: 100%;
    max-width: min(100%, 748px);
    justify-content: center;
    margin-inline: auto;
  }

  body.page-standardization .std-sto-grid .std-compact-card {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    max-width: none;
    min-width: 0;
    min-height: 159px;
    max-height: none;
    padding: clamp(12px, 2vw, 20px);
    gap: clamp(10px, 1.5vw, 16px);
    background: #fff;
    box-shadow: var(--std-card-shadow);
    text-align: left;
    border-top: none;
    overflow: hidden;
  }

  body.page-standardization .std-sto-grid .std-compact-card__icon {
    flex: 0 0 auto;
    width: auto;
    max-width: 98px;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(1) .std-compact-card__icon img,
  body.page-standardization .std-sto-grid .std-sto-card:nth-child(2) .std-compact-card__icon img {
    width: 98px;
    height: 98px;
    max-width: 98px;
    max-height: 98px;
  }

  body.page-standardization .std-sto-grid .std-compact-card__label {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    max-width: none;
    font-size: clamp(14px, 1.9vw, 18px);
    font-weight: 600;
    line-height: 1.25;
    text-align: left;
    white-space: normal;
    overflow-wrap: break-word;
    word-break: normal;
  }

  body.page-standardization .std-classifier-showcase.h-slider {
    margin: 0;
    overflow: visible;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track {
    display: grid;
    grid-template-columns: repeat(3, 233px);
    gap: 24px;
    justify-content: center;
    overflow: visible;
    scroll-snap-type: none;
    padding: 0;
    margin: 0;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track > .std-compact-card {
    flex: none;
    width: 233px;
    max-width: 233px;
    scroll-snap-align: unset;
  }

  body.page-standardization #classifiers .std-card.std-compact-card {
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 233px;
    max-width: 233px;
    min-height: 241px;
    max-height: none;
    padding: 25px;
    gap: 15px;
    background: #f5f5f5;
    box-shadow: none;
    border-top: none;
    text-align: center;
  }

  body.page-standardization #classifiers .std-compact-card__icon {
    flex: 0 0 104px;
    width: 104px;
    height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(1) .std-compact-card__icon img {
    width: 67px;
    height: 90px;
    max-width: 67px;
    max-height: 90px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(2) .std-compact-card__icon img {
    width: 62px;
    height: 90px;
    max-width: 62px;
    max-height: 90px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(3) .std-compact-card__icon img {
    width: 104px;
    height: 104px;
    max-width: 104px;
    max-height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card__body {
    align-items: center;
    gap: 0;
    width: 100%;
    max-width: 200px;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__title {
    width: 200px;
    max-width: 200px;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    text-align: center;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__text {
    display: none !important;
  }
}

@media (min-width: 1280px) {
  body.page-standardization .std-sto-grid {
    justify-content: center;
    column-gap: 33px;
  }
}

/* Классификаторы — лента без стрелок: 300 (моб.) / сетка 3×378 @1280, Figma 5_2 */
.std-classifier-showcase.h-slider {
  position: relative;
  margin: 0 calc(-1 * var(--gutter));
  padding: 0;
  overflow: visible;
  max-width: none;
}

.std-classifier-showcase .h-slider__track {
  gap: 31px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  padding-bottom: 4px;
  scroll-padding-inline: var(--gutter);
}

.std-classifier-showcase .h-slider__track::-webkit-scrollbar {
  display: none;
}

.std-classifier-showcase .h-slider__track > .std-compact-card {
  flex: 0 0 min(300px, calc(100vw - 2 * var(--gutter)));
  width: min(300px, calc(100vw - 2 * var(--gutter)));
  scroll-snap-align: start;
  margin-inline: 0;
}

.std-classifier-showcase .h-slider__nav,
.std-classifier-showcase .h-slider__hint {
  display: none !important;
}

body.page-standardization .std-card.std-compact-card {
  min-height: 241px;
  max-width: none;
  border-top: none;
}

@media (min-width: 1280px) {
  .std-compact-card {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    width: 378px;
    max-width: 378px;
    min-height: 159px;
    padding: 25px;
    gap: 15px;
  }

  .std-compact-card__icon {
    width: 98px;
    flex: 0 0 98px;
  }

  .std-compact-card__body {
    align-items: flex-start;
    text-align: left;
    gap: 15px;
  }

  .std-sto-grid {
    grid-template-columns: repeat(2, 378px);
    gap: 33px;
    max-width: none;
  }

  body.page-standardization .std-classifier-showcase.h-slider {
    margin: 0;
    padding: 0;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 33px;
    justify-content: start;
    overflow: visible;
    scroll-snap-type: none;
    padding-bottom: 0;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track > .std-compact-card {
    flex: none;
    width: 378px;
    min-height: 159px;
  }

  body.page-standardization .std-card.std-compact-card {
    min-height: 159px;
  }
}

/* Figma 5_3_Стандартизация_1280 #sto / #classifiers (13189:40702–40723, 40703–40722): gutter 40, titles center */
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-standardization #sto > .container,
  body.page-standardization #classifiers > .container {
    max-width: 1280px;
    margin-inline: auto;
    padding-inline: 40px;
    box-sizing: border-box;
  }

  body.page-standardization #sto .std-section-title.std-section-title--center {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 auto 70px;
    padding: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization .std-sto-grid {
    grid-template-columns: repeat(2, 378px);
    gap: 33px;
    justify-content: center;
    max-width: none;
    margin-inline: auto;
  }

  body.page-standardization .std-sto-grid .std-compact-card {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 378px;
    max-width: 378px;
    min-height: 159px;
    max-height: 159px;
    padding: 25px;
    gap: 0;
    background: #fff;
    box-shadow: var(--std-card-shadow);
    text-align: left;
  }

  body.page-standardization .std-sto-grid .std-compact-card::before {
    height: 4px;
    background: #ed1a34;
  }

  body.page-standardization .std-sto-grid .std-compact-card__icon {
    flex: 0 0 auto;
    width: auto;
    max-width: 121px;
  }

  body.page-standardization .std-sto-grid .std-compact-card__icon img {
    width: auto;
    height: auto;
    max-width: 121px;
    max-height: 121px;
    object-fit: contain;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(1) .std-compact-card__icon img {
    width: 98px;
    height: 98px;
    max-width: 98px;
    max-height: 98px;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(2) .std-compact-card__icon img {
    width: 121px;
    height: 121px;
    max-width: 121px;
    max-height: 121px;
  }

  body.page-standardization .std-sto-grid .std-compact-card__label {
    flex: 0 0 200px;
    width: 200px;
    max-width: 200px;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
  }

  body.page-standardization #classifiers .std-section-header {
    display: block;
    margin: 0 0 60px;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-header .std-section-title {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    color: #020203;
  }

  body.page-standardization #classifiers .std-section-link {
    display: none;
  }

  body.page-standardization .std-classifier-showcase.h-slider {
    margin: 0;
    padding: 0;
    overflow: visible;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 33px;
    justify-content: start;
    overflow: visible;
    scroll-snap-type: none;
    margin-inline: 0;
    padding-inline: 0;
    padding-bottom: 0;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track > .std-compact-card {
    flex: none;
    width: 378px;
    min-width: 378px;
    max-width: 378px;
    min-height: 159px;
    max-height: 159px;
    margin-inline: 0;
    scroll-snap-align: unset;
  }

  body.page-standardization #classifiers .std-card.std-compact-card {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0;
    min-height: 159px;
    max-height: 159px;
    padding: 25px;
    background: #f5f5f5;
    box-shadow: none;
    border-top: none;
    text-align: left;
  }

  body.page-standardization #classifiers .std-compact-card::before {
    height: 4px;
    background: #ed1a34;
  }

  body.page-standardization #classifiers .std-compact-card__icon {
    flex: 0 0 auto;
    width: auto;
    max-width: 104px;
  }

  body.page-standardization #classifiers .std-compact-card__icon img {
    width: auto;
    height: auto;
    object-fit: contain;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(1) .std-compact-card__icon {
    width: 104px;
    height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(1) .std-compact-card__icon img {
    width: 67px;
    height: 90px;
    max-width: 67px;
    max-height: 90px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(2) .std-compact-card__icon {
    width: 104px;
    height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(2) .std-compact-card__icon img {
    width: 62px;
    height: 90px;
    max-width: 62px;
    max-height: 90px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(3) .std-compact-card__icon {
    width: 104px;
    height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(3) .std-compact-card__icon img {
    width: 104px;
    height: 104px;
    max-width: 104px;
    max-height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card__body {
    flex: 0 0 200px;
    width: 200px;
    max-width: 200px;
    align-items: flex-start;
    gap: 0;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__title {
    width: 200px;
    max-width: 200px;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(1) .std-card__title {
    max-height: 48px;
    -webkit-line-clamp: 2;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(2) .std-card__title,
  body.page-standardization #classifiers .std-compact-card:nth-child(3) .std-card__title {
    max-height: 72px;
    -webkit-line-clamp: 3;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__text {
    display: none;
  }
}

/* Федеральные ресурсы — Figma Frame 743/744: 575×481, тень, без accent-bar */
.std-federal-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

body.page-standardization .std-card--federal {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 15px;
  width: 100%;
  max-width: none;
  margin-inline: 0;
  min-height: 280px;
  padding: 25px;
  box-sizing: border-box;
  overflow: hidden;
  border: none;
  border-top: none;
  border-radius: 0;
  background: #fff;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  color: #020203;
  text-decoration: none;
}

body.page-standardization .std-card--federal:hover {
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  transform: none;
  color: #020203;
}

body.page-standardization .std-card--federal .std-card__title {
  margin: 0;
  font-family: var(--font);
  font-size: 20px;
  line-height: normal;
  font-weight: 600;
  color: #020203;
}

body.page-standardization .std-card--federal .std-card__text {
  margin: 0;
  flex: 1 1 auto;
  min-height: 0;
  font-family: "Fira Sans", sans-serif;
  font-size: 16px;
  line-height: 1.3;
  font-weight: 400;
  color: #020203;
}

body.page-standardization .std-card--federal .std-card__text p {
  margin: 0;
}

body.page-standardization .std-card--federal .std-card__text p + p {
  margin-top: 1.3em;
}

body.page-standardization .std-card--federal .std-card__text p:last-child {
  margin-bottom: 0;
}

body.page-standardization .std-card--federal .std-card__more {
  flex: 0 0 auto;
  margin: 0;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #686a73;
}

body.page-standardization .std-card--federal .std-card__more::after {
  content: " ›";
  font-weight: 500;
}

/* Figma «герб» 13189:47698 — 222×475 @ (−25,−24), opacity 10%, img crop 214.41% / −107.2% */
body.page-standardization .std-card--federal::before {
  content: "";
  position: absolute;
  left: -25px;
  top: -24px;
  width: 222px;
  height: 475px;
  max-width: none;
  opacity: 0.1;
  overflow: hidden;
  background: url("img/standardization/federal-fifs-gerb-figma.png") no-repeat;
  background-size: 214.41% 100%;
  background-position: -107.2% 0;
  pointer-events: none;
  z-index: 0;
}

body.page-standardization .std-card--federal .std-card__title,
body.page-standardization .std-card--federal .std-card__text,
body.page-standardization .std-card--federal .std-card__more {
  position: relative;
  z-index: 1;
}

@media (max-width: 880px) {
  body.page-standardization .section--std-federal {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  body.page-standardization #federal .std-section-title--center {
    margin: 0 0 24px;
    font-family: var(--font);
    font-size: clamp(24px, 6.2vw, 32px);
    font-weight: 600;
    line-height: 1.2;
    color: #020303;
    text-align: center;
  }

  body.page-standardization .std-federal-grid {
    gap: 30px;
  }

  body.page-standardization .std-card--federal {
    min-height: 0;
    max-height: none;
  }

  body.page-standardization .std-card--federal .std-card__text {
    overflow: visible;
    max-height: none;
  }

  body.page-standardization .std-card--federal::before {
    left: -25px;
    top: -24px;
    width: 222px;
    height: 475px;
    max-width: none;
    opacity: 0.1;
    background-size: 214.41% 100%;
    background-position: -107.2% 0;
  }
}

@media (min-width: 881px) {
  .std-federal-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(33px, 4vw, 52px);
  }

  body.page-standardization .std-card--federal {
    max-height: none;
  }

  body.page-standardization .std-card--federal .std-card__text {
    overflow: visible;
    max-height: none;
  }
}

@media (min-width: 1280px) {
  body.page-standardization .section--std-federal {
    position: relative;
    padding-top: 56px;
    padding-bottom: 48px;
    overflow: visible;
  }

  /* CTA «Полигон» — в потоке документа (не absolute: иначе заголовок и карточки наезжают на баннер) */
  body.page-standardization .std-federal-polygon {
    position: relative;
    z-index: 0;
    padding: 0;
    margin: 0 0 48px;
    background: transparent;
  }

  body.page-standardization .std-federal-polygon > .container {
    max-width: 1200px;
    padding-left: 120px;
    padding-right: 120px;
    box-sizing: border-box;
  }

  body.page-standardization .std-federal__body {
    position: relative;
    z-index: 1;
    margin: 0;
    padding: 0;
  }

  body.page-standardization #federal .std-federal-polygon .cta-banner--polygon {
    min-height: 280px;
    height: 280px;
    max-height: 280px;
    padding: 32px 40px 36px;
  }

  body.page-standardization .std-federal-grid {
    grid-template-columns: repeat(2, 575px);
    gap: 52px;
    justify-content: start;
  }

  body.page-standardization .std-card--federal {
    width: 575px;
    max-width: 575px;
    min-height: 481px;
    max-height: 481px;
  }

  body.page-standardization .std-card--federal .std-card__text {
    overflow: hidden;
  }

  body.page-standardization .std-card--federal.std-card--fifs .std-card__text {
    max-height: 360px;
  }
}

/* Figma 5_3_Стандартизация_1280 #federal (13189:40754, 40883, 40756): gutter 40, title 28px center, 575+52+575 h481 */
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-standardization #federal > .container {
    max-width: 1280px;
    margin-inline: auto;
    padding-inline: 40px;
    box-sizing: border-box;
  }

  body.page-standardization .section--std-federal {
    background: #fff;
    padding-top: 60px;
    padding-bottom: 70px;
    box-sizing: border-box;
  }

  body.page-standardization #federal .std-section-title.std-section-title--center {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 auto 60px;
    padding: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization .std-federal-grid {
    grid-template-columns: repeat(2, 575px);
    gap: 52px;
    justify-content: start;
    margin-inline: 0;
  }

  body.page-standardization .std-card--federal {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 15px;
    width: 575px;
    max-width: 575px;
    min-height: 481px;
    max-height: 481px;
    height: 481px;
    padding: 25px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
    color: #020203;
  }

  body.page-standardization .std-card--federal .std-card__title {
    flex: 0 0 auto;
    width: 100%;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
  }

  body.page-standardization .std-card--federal .std-card__text {
    flex: 1 1 auto;
    width: 100%;
    min-height: 0;
    margin: 0;
    overflow: hidden;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    text-align: left;
  }

  body.page-standardization .std-card--federal .std-card__text p + p {
    margin-top: 1.3em;
  }

  body.page-standardization .std-card--federal .std-card__more {
    flex: 0 0 auto;
    margin: 0;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    color: #686a73;
  }

  body.page-standardization .std-card--federal.std-card--fifs .std-card__text {
    max-height: 360px;
  }
}

@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-standardization #federal > .container {
    padding-inline: 120px;
    box-sizing: border-box;
  }

  body.page-standardization .section--std-federal {
    background: #fff;
    padding-top: 60px;
    padding-bottom: 70px;
    box-sizing: border-box;
  }

  body.page-standardization #federal .std-section-title.std-section-title--center {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 auto 60px;
    padding: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization .std-federal-grid {
    grid-template-columns: repeat(2, 575px);
    gap: 52px;
    justify-content: start;
    margin-inline: 0;
  }

  body.page-standardization .std-card--federal {
    width: 575px;
    max-width: 575px;
    min-height: 481px;
    max-height: 481px;
    height: 481px;
  }

  body.page-standardization .std-card--federal::before {
    left: -25px;
    top: -24px;
    width: 222px;
    height: 475px;
    opacity: 0.1;
    background-size: 214.41% 100%;
    background-position: -107.2% 0;
  }

  body.page-standardization .std-card--federal.std-card--fifs .std-card__text {
    max-height: 360px;
  }
}

/* Ресурсы — серая панель + логотипы */
.std-resources-panel {
  padding: clamp(28px, 4vw, 40px);
  background: var(--c-bg-soft);
  border: 1px solid var(--c-line);
}

.std-resources-logos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 24px;
  align-items: center;
}

.std-resources-logos__item {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 8px;
  text-decoration: none;
  transition: opacity 0.2s ease;
}

.std-resources-logos__item img {
  display: block;
  max-width: 100%;
  max-height: 72px;
  width: auto;
  height: auto;
  object-fit: contain;
  opacity: 0.92;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.std-resources-logos__item:hover img {
  opacity: 1;
  transform: scale(1.03);
}

.std-resources-logos__text {
  font-family: var(--font);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--c-muted);
  text-align: center;
}

.std-resources-logos__item:hover .std-resources-logos__text {
  color: var(--c-brand);
}

@media (min-width: 601px) {
  .std-resources-logos {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 881px) {
  .std-resources-logos {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px 40px;
    max-width: 1198px;
    margin-inline: auto;
  }
}

body.page-standardization .section--std-cycle {
  background: #fff;
}

/* Цикл + CTA заказа */
body.page-standardization .section--std-cycle .cycle-schema--figma {
  margin-bottom: 0;
}

.cycle-schema--center {
  display: flex;
  justify-content: center;
  margin-inline: auto;
}

body.page-standardization .section--std-cycle .cycle-schema--figma img {
  border-radius: 0;
  max-width: 959px;
  width: 100%;
  height: auto;
  margin-inline: auto;
}

/* Цикл: кнопка «Заказать разработку» — Figma Кнопка белая 311×50 @ y=6158 */
body.page-standardization .std-cycle-order {
  margin: clamp(24px, 4vw, 32px) 0 0;
  padding: 0;
  text-align: center;
}

body.page-standardization .std-cycle-order__btn.btn.btn--primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: min(311px, 100%);
  min-height: 50px;
  padding: 15px 40px;
  border: none;
  border-radius: 50px;
  background: #0088cc;
  color: #fff;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  text-decoration: none;
  box-shadow: none;
  transform: none;
}

body.page-standardization .std-cycle-order__btn.btn.btn--primary:hover {
  background: var(--c-action-hover);
  color: #fff;
  transform: none;
  box-shadow: none;
}

/* НПА — Figma: 375 stack 341px / 800–1024 carousel 315×221 / 1280+ grid 378×254 */
body.page-standardization .std-npa-showcase.h-slider {
  position: relative;
  margin: 0;
  padding: 0;
  overflow: visible;
  max-width: none;
}

body.page-standardization .std-npa-showcase .h-slider__track {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  width: 100%;
  max-width: 341px;
  margin-inline: auto;
  overflow: visible;
  scroll-snap-type: none;
  padding: 0;
}

body.page-standardization .std-npa-showcase .h-slider__track > .std-card--npa-row {
  flex: none;
  width: 100%;
  scroll-snap-align: unset;
}

body.page-standardization .std-npa-showcase .h-slider__nav,
body.page-standardization .std-npa-showcase .h-slider__hint {
  display: none !important;
}

body.page-standardization .std-card--npa-row {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 15px;
  width: 100%;
  max-width: none;
  margin-inline: 0;
  min-height: 0;
  padding: 15px;
  box-sizing: border-box;
  border: none;
  border-radius: 0;
  background: #fff;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  color: #020203;
  text-decoration: none;
}

body.page-standardization .std-card--npa-row:hover {
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  transform: none;
  color: #020203;
}

body.page-standardization .std-card--npa-row .std-card__icon {
  flex: 0 0 50px;
  width: 50px;
  height: 50px;
}

body.page-standardization .std-card--npa-row .std-card__icon img {
  display: block;
  width: 50px;
  height: 50px;
  object-fit: contain;
}

body.page-standardization .std-card--npa-row .std-card__body {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 220px;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

body.page-standardization .std-card--npa-row .std-card__title {
  margin: 0;
  font-family: var(--font);
  font-size: 20px;
  line-height: normal;
  font-weight: 600;
  color: #020203;
}

body.page-standardization .std-card--npa-row .std-card__text {
  margin: 0;
  font-family: "Fira Sans", sans-serif;
  font-size: 16px;
  line-height: 1.3;
  font-weight: 400;
  color: #020203;
}

@media (max-width: 599px) {
  body.page-standardization .section--std-npa {
    padding-top: clamp(28px, 5vw, 40px);
    padding-bottom: clamp(28px, 5vw, 40px);
  }

  body.page-standardization #npa .std-section-title--center {
    margin: 0 0 35px;
    font-size: 24px;
    line-height: 1.35;
    text-align: left;
  }
}

@media (min-width: 600px) and (max-width: 1279px) {
  body.page-standardization #npa .std-section-title--center {
    margin: 0 auto 50px;
    font-size: 28px;
    line-height: 1.35;
    text-align: center;
  }

  body.page-standardization .std-npa-showcase.h-slider {
    margin: 0 calc(-1 * var(--gutter));
  }

  body.page-standardization .std-npa-showcase .h-slider__track {
    flex-direction: row;
    align-items: stretch;
    gap: 11px;
    max-width: none;
    margin-inline: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding-inline: var(--gutter);
    scroll-padding-inline: var(--gutter);
  }

  body.page-standardization .std-npa-showcase .h-slider__track::-webkit-scrollbar {
    display: none;
  }

  body.page-standardization .std-npa-showcase .h-slider__track > .std-card--npa-row {
    flex: 0 0 315px;
    width: 315px;
    min-height: 221px;
    scroll-snap-align: start;
  }
}

@media (min-width: 1280px) {
  body.page-standardization .std-npa-showcase.h-slider {
    margin: 0;
  }

  body.page-standardization .std-npa-showcase .h-slider__track {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    justify-content: center;
    gap: 33px;
    max-width: 1200px;
    margin-inline: auto;
    overflow: visible;
    scroll-snap-type: none;
  }

  body.page-standardization .std-npa-showcase .h-slider__track > .std-card--npa-row {
    flex: none;
    width: 378px;
    max-width: 378px;
  }

  body.page-standardization .std-card--npa-row {
    min-height: 254px;
    padding: 25px;
  }

  body.page-standardization .std-card--npa-row .std-card__icon {
    flex: 0 0 100px;
    width: 100px;
    height: 100px;
  }

  body.page-standardization .std-card--npa-row .std-card__icon img {
    width: 100px;
    height: 100px;
  }

  body.page-standardization #npa .std-section-title--center {
    width: 100%;
    max-width: none;
    margin: 0 0 70px;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    color: #020203;
  }

  body.page-standardization .std-cycle-order {
    margin-top: 24px;
  }

  .std-grid--icon-row {
    justify-content: center;
  }
}

/* Промо-блоки: курсы ТК, соответствие, наука */
.std-promo {
  display: grid;
  grid-template-columns: 1fr;
  gap: 28px;
  align-items: center;
}

.std-promo__copy .std-section-title {
  margin-bottom: 20px;
}

.std-promo__copy p {
  margin: 0 0 24px;
  max-width: 710px;
  font-family: "Fira Sans", sans-serif;
  font-size: 15px;
  line-height: 1.5;
  color: #020303;
}

.std-promo__btn.btn--primary {
  min-width: 165px;
  min-height: var(--btn-height);
  border-radius: var(--btn-radius);
  transform: none;
  box-shadow: none;
}

.std-promo__media img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin-inline: auto;
}

.std-promo__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 16px;
}

body.page-standardization .std-promo--science {
  align-items: flex-start;
}

body.page-standardization .std-promo--science .std-promo__copy .std-section-title {
  font-family: var(--font);
  font-size: clamp(22px, 2.5vw, 28px);
  font-weight: 600;
  line-height: 1.2;
  color: #020303;
}

body.page-standardization .std-promo--science .std-promo__copy p {
  max-width: 741px;
}

.btn--ghost.btn--on-light {
  border-radius: var(--btn-radius);
  min-height: var(--btn-height);
  padding: 12px 24px;
}

@media (min-width: 881px) {
  .std-promo {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 42%);
    gap: 40px;
  }
  .std-promo--media-left {
    grid-template-columns: minmax(280px, 42%) minmax(0, 1fr);
  }
  .std-promo--media-left .std-promo__media {
    order: -1;
  }
  .std-promo__media img {
    max-width: 402px;
  }
}

@media (min-width: 1280px) {
  /* TK курсы — Figma @1440: 1200px = 731 + 67 + 402, выравнивание с join CTA */
  body.page-standardization #tk-courses .std-promo--media-right {
    width: min(100%, 1200px);
    max-width: 1200px;
    margin-inline: auto;
    grid-template-columns: minmax(0, 731px) 402px;
    gap: 67px;
    align-items: flex-start;
  }

  body.page-standardization #tk-courses .std-promo__copy .std-section-title {
    max-width: 731px;
    margin-bottom: 35px;
  }

  body.page-standardization #tk-courses .std-promo__copy p {
    max-width: 710px;
    margin-bottom: 40px;
  }

  body.page-standardization #tk-courses .std-promo__media {
    width: 402px;
    flex: 0 0 402px;
  }

  body.page-standardization #tk-courses .std-promo__media img {
    display: block;
    width: 402px;
    max-width: 402px;
    height: 287px;
    margin: 0 0 0 auto;
    object-fit: cover;
  }

  body.page-standardization #tk-courses .std-promo__btn.btn--primary {
    min-width: 208px;
    min-height: 47px;
  }

  /* Оценка соответствия — Figma @1440: 1200px = 399 + 48 + copy, image 399×399 слева */
  body.page-standardization #compliance .std-promo--media-left {
    width: min(100%, 1200px);
    max-width: 1200px;
    margin-inline: auto;
    grid-template-columns: 399px minmax(0, 1fr);
    gap: 48px;
    align-items: center;
  }

  body.page-standardization #compliance .std-promo__media {
    width: 399px;
    flex: 0 0 399px;
  }

  body.page-standardization #compliance .std-promo__media img {
    display: block;
    width: 399px;
    max-width: 399px;
    height: 399px;
    margin: 0;
    object-fit: contain;
  }

  body.page-standardization #compliance .std-promo__copy .std-section-title {
    max-width: 731px;
    margin: 0 0 35px;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.2;
    color: #121617;
  }

  body.page-standardization #compliance .std-promo__copy p {
    max-width: 779px;
    margin: 0 0 35px;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #121617;
  }

  body.page-standardization #compliance .std-promo__btn.btn--primary {
    min-width: 165px;
    min-height: 47px;
  }

  .std-promo--media-right {
    grid-template-columns: minmax(0, 741px) minmax(320px, 1fr);
    gap: 48px;
    align-items: flex-start;
  }
  .std-promo--media-left {
    grid-template-columns: minmax(399px, 399px) minmax(0, 1fr);
    gap: 48px;
    align-items: flex-start;
  }

  /* Наука — Figma: текст 741px слева, orig 1 441×266 справа (x=879), две кнопки 165+182 */
  body.page-standardization #science-teaser > .container {
    padding-left: 120px;
    padding-right: 120px;
    box-sizing: border-box;
  }

  body.page-standardization .std-promo--science {
    width: min(100%, 1200px);
    max-width: 1200px;
    margin-inline: auto;
    grid-template-columns: minmax(0, 741px) 441px;
    justify-content: space-between;
    gap: 17px;
    align-items: flex-start;
  }

  body.page-standardization .std-promo--science .std-promo__copy .std-section-title {
    margin: 0 0 35px;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.2;
    color: #020303;
  }

  body.page-standardization .std-promo--science .std-promo__copy p {
    max-width: 741px;
    margin: 0 0 35px;
    font-family: var(--font);
    font-size: 15px;
    line-height: 1.4;
    color: #020303;
  }

  body.page-standardization .std-promo--science .std-promo__media {
    width: 441px;
    flex: 0 0 441px;
    height: 266px;
    overflow: hidden;
    align-self: flex-start;
  }

  /* Figma orig 1 (13189:47553): frame 441×266, img crop w 134.04% / left −15.89%, y −16 vs title */
  body.page-standardization .std-promo--science .std-promo__media img {
    display: block;
    width: 134.04%;
    max-width: none;
    height: 266px;
    margin: -16px 0 0 -15.89%;
    object-fit: cover;
    object-position: left top;
  }

  body.page-standardization .std-promo--science .std-promo__actions {
    flex-wrap: nowrap;
    gap: 20px;
  }

  body.page-standardization .std-promo--science .std-promo__actions .btn--primary {
    min-width: 165px;
    min-height: var(--btn-height);
    padding: 12px 24px;
    border-radius: var(--btn-radius);
  }

  body.page-standardization .std-promo--science .std-promo__actions .btn--ghost.btn--on-light {
    min-width: 182px;
    min-height: var(--btn-height);
    padding: 12px 24px;
    border-radius: var(--btn-radius);
  }
}

@media (min-width: 881px) and (max-width: 1279px) {
  body.page-standardization .std-promo--science {
    grid-template-columns: minmax(0, 1fr) minmax(200px, 41%);
    gap: clamp(17px, 3vw, 32px);
    align-items: flex-start;
  }

  body.page-standardization .std-promo--science .std-promo__media {
    width: 100%;
    max-width: 441px;
    height: auto;
    aspect-ratio: 441 / 266;
    overflow: hidden;
    margin-inline: auto 0;
  }

  body.page-standardization .std-promo--science .std-promo__media img {
    width: 134.04%;
    max-width: none;
    height: 100%;
    margin: -6.02% 0 0 -15.89%;
    object-fit: cover;
    object-position: left top;
  }
}

/* CTA «Присоединиться» — Figma Group 137: 1200×260, заголовок + кнопка по центру */
body.page-standardization .section--std-join {
  padding-top: 0;
  padding-bottom: 0;
  background: #fff;
}

body.page-standardization .section--std-join.section--soft {
  background: #fff;
}

body.page-standardization .section--std-join .container {
  max-width: 1200px;
  width: 100%;
  margin-inline: auto;
  padding-left: 0;
  padding-right: 0;
}

body.page-standardization .cta-banner.cta-banner--std-join {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  grid-template-columns: unset;
  align-items: center;
  justify-content: flex-start;
  gap: 42px;
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
  height: 260px;
  min-height: 260px;
  max-height: 260px;
  padding: 60px 40px 70px;
  border-radius: 0;
  background: var(--c-action) none;
  background-image: none;
  box-shadow: none;
  overflow: hidden;
  text-align: center;
  box-sizing: border-box;
}

body.page-standardization .cta-banner.cta-banner--std-join::before {
  display: none;
}

.cta-banner--std-join__title {
  margin: 0;
  font-family: var(--font);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  color: #fff;
  max-width: 744px;
  text-align: center;
}

.cta-banner--std-join__btn.btn.btn--white {
  min-width: 206px;
  min-height: 50px;
  padding: 15px 40px;
  border-radius: 50px;
  background: #fff;
  color: var(--std-accent-blue);
  border: none;
  font-family: var(--font);
  font-weight: 500;
  font-size: 14px;
  line-height: normal;
  text-decoration: none;
}

.cta-banner--std-join__btn.btn.btn--white:hover {
  background: #fff;
  color: var(--std-accent-blue);
  transform: none;
}

.section-header--center {
  justify-content: center;
  text-align: center;
}
.section-header--center .section-title {
  margin-inline: auto;
}
.section-actions--media {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 16px;
  margin-top: 32px;
}
body.page-media #news .tags {
  justify-content: center;
}

/* Figma 4_2_Медиа: карточки «Новости» 378×478 (как на главной) */
body.page-media .news-card__img .news-card__rubric,
body.page-media .insight-card__img .insight-card__rubric {
  display: none;
}
body.page-media .news-card__img,
body.page-media .insight-card__img {
  aspect-ratio: 378 / 280;
  max-height: 280px;
  background: #e8ecf0;
}
body.page-media .news-card__meta .news-card__rubric,
body.page-media .insight-card__meta .insight-card__rubric {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
  border-radius: 5px;
  background: #f1f1f1;
  font-family: "Montserrat", var(--font-heading);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #ed1a34;
  letter-spacing: 0;
  text-transform: none;
  white-space: nowrap;
  max-width: calc(100% - 110px);
  overflow: hidden;
  text-overflow: ellipsis;
}
body.page-media .news-card__title {
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
}
body.page-media .news-card__body,
body.page-media .insight-card__body {
  padding: 20px 22px 24px;
}
body.page-media .news-card__text {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1 1 auto;
  width: 100%;
  min-height: 0;
}
body.page-media .insight-card .news-card__title {
  margin: 0;
}
body.page-media .insight-card__excerpt,
body.page-media .insight-card .news-card__excerpt {
  min-height: 88px;
  margin: 0;
  flex: 1 1 auto;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
}
body.page-media .news-card__more {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 6px;
  margin-top: auto;
  padding-top: 12px;
  border: none;
  background: transparent;
  font-family: "Montserrat", var(--font-ui);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #686a73;
  text-decoration: none;
}
body.page-media .news-card__more:hover,
body.page-media .news-card__more:focus-visible {
  color: #686a73;
  text-decoration: none;
}
body.page-media .news-card__more::after {
  content: "";
  width: 5px;
  height: 6px;
  flex-shrink: 0;
  background: url("/local/templates/ris/assets/img/icons/read-more-chevron-figma.svg") no-repeat center / contain;
}
body.page-media .news-card,
body.page-media .insight-card {
  border: none;
  border-top: none;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}
body.page-media .news-card:hover,
body.page-media .insight-card:hover {
  border: none;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  transform: none;
}
body.page-media #news .tag,
body.page-media #news .tag:hover {
  min-height: 0;
  min-width: 0;
  padding: 5px;
  border: none;
  border-radius: 5px;
  background: #fff;
  font-family: "Montserrat", var(--font-heading);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #ed1a34;
  box-shadow: none;
  text-decoration: none;
}
body.page-media #news .tag.is-active {
  background: #fff;
  color: #ed1a34;
  border: none;
  box-shadow: none;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
body.page-media .media-cards-grid {
  gap: 17px;
}
@media (min-width: 1024px) and (max-width: 1279px) {
  body.page-media #news [data-filter-target="news-media"].media-cards-grid,
  body.page-media .media-cards-grid--insights {
    display: grid;
    grid-template-columns: repeat(3, 300px);
    gap: 31px;
    justify-content: center;
    max-width: calc(3 * 300px + 2 * 31px);
    margin-inline: auto;
    width: 100%;
  }
  body.page-media #news [data-filter-target="news-media"].media-cards-grid .news-card {
    width: 300px;
    min-height: 450px;
  }
  body.page-media .media-cards-grid--insights .insight-card {
    width: 300px;
    min-height: 432px;
  }
  body.page-media #news [data-filter-target="news-media"].media-cards-grid .news-card:nth-child(n + 10) {
    display: none;
  }
  body.page-media #insights .media-cards-grid--insights .insight-card:nth-child(n + 7) {
    display: none;
  }
  body.page-media .news-card__img,
  body.page-media .insight-card__img {
    aspect-ratio: 378 / 220;
    max-height: none;
    height: auto;
  }
  body.page-media .insight-card__img {
    aspect-ratio: 378 / 220;
  }
}
/* Figma 4_6_375 / 4_5_800 / 4_4_1024: «СМИ о нас» — горизонтальная карусель 300×450, без стрелок */
@media (max-width: 1279px) {
  body.page-media #press .press-showcase.h-slider {
    position: relative;
    margin-inline: calc(-1 * var(--gutter));
    width: auto;
    overflow: hidden;
    padding-inline: 0;
  }
  body.page-media #press .press-showcase .h-slider__track.media-cards-grid {
    display: flex !important;
    flex-wrap: nowrap;
    grid-template-columns: none !important;
    gap: 13px;
    max-width: none;
    margin-inline: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    padding-inline: var(--gutter);
    scroll-padding-inline: var(--gutter);
    padding-bottom: 4px;
  }
  body.page-media #press .press-showcase .h-slider__track.media-cards-grid::-webkit-scrollbar {
    display: none;
  }
  body.page-media #press .press-showcase .h-slider__track > .news-card {
    flex: 0 0 300px;
    width: 300px;
    min-height: 450px;
    scroll-snap-align: start;
  }
  body.page-media #press .press-showcase .h-slider__nav,
  body.page-media #press .press-showcase .h-slider__hint {
    display: none !important;
  }
  body.page-media #press .news-card__img {
    aspect-ratio: 378 / 220;
    max-height: none;
    height: auto;
  }
}
/* Figma 4_6_375 / 4_5_800: новости и инсайты — горизонтальная карусель 300×450/432, без стрелок */
@media (max-width: 1023px) {
  body.page-media #news .news-showcase.h-slider,
  body.page-media #insights .insights-showcase.h-slider {
    position: relative;
    margin-inline: calc(-1 * var(--gutter));
    width: auto;
    overflow: hidden;
    padding-inline: 0;
  }
  body.page-media #news .news-showcase .h-slider__track.media-cards-grid,
  body.page-media #insights .insights-showcase .h-slider__track.media-cards-grid {
    display: flex !important;
    flex-wrap: nowrap;
    grid-template-columns: none !important;
    gap: 13px;
    max-width: none;
    margin-inline: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    padding-inline: var(--gutter);
    scroll-padding-inline: var(--gutter);
    padding-bottom: 4px;
  }
  body.page-media #news .news-showcase .h-slider__track.media-cards-grid::-webkit-scrollbar,
  body.page-media #insights .insights-showcase .h-slider__track.media-cards-grid::-webkit-scrollbar {
    display: none;
  }
  body.page-media #news .news-showcase .h-slider__track > .news-card {
    flex: 0 0 300px;
    width: 300px;
    min-height: 450px;
    scroll-snap-align: start;
  }
  body.page-media #insights .insights-showcase .h-slider__track > .insight-card {
    flex: 0 0 300px;
    width: 300px;
    min-height: 432px;
    scroll-snap-align: start;
  }
  body.page-media #news .news-showcase .h-slider__nav,
  body.page-media #news .news-showcase .h-slider__hint,
  body.page-media #insights .insights-showcase .h-slider__nav,
  body.page-media #insights .insights-showcase .h-slider__hint {
    display: none !important;
  }
  body.page-media #news .news-card__img,
  body.page-media #insights .insight-card__img {
    aspect-ratio: 378 / 220;
    max-height: none;
    height: auto;
  }
}
@media (min-width: 601px) and (max-width: 880px) {
  body.page-media #news .news-showcase .h-slider__track.media-cards-grid,
  body.page-media #insights .insights-showcase .h-slider__track.media-cards-grid {
    gap: 10px;
  }
}
@media (min-width: 881px) and (max-width: 1023px) {
  body.page-media #news .news-showcase .h-slider__track.media-cards-grid,
  body.page-media #insights .insights-showcase .h-slider__track.media-cards-grid {
    gap: clamp(10px, calc(10px + (100vw - 880px) * 21 / 144), 31px);
  }
}
@media (min-width: 1024px) {
  body.page-media #news .news-showcase.h-slider,
  body.page-media #insights .insights-showcase.h-slider {
    margin-inline: 0;
    width: 100%;
    overflow: visible;
  }
  body.page-media #news .news-showcase .h-slider__track.media-cards-grid,
  body.page-media #insights .insights-showcase .h-slider__track.media-cards-grid {
    display: grid !important;
    overflow: visible;
    scroll-snap-type: none;
    padding-inline: 0;
    scroll-padding-inline: 0;
  }
}
@media (min-width: 601px) and (max-width: 880px) {
  body.page-media #press .press-showcase .h-slider__track.media-cards-grid {
    gap: 10px;
  }
}
@media (min-width: 881px) and (max-width: 1279px) {
  body.page-media #press .press-showcase .h-slider__track.media-cards-grid {
    gap: clamp(10px, calc(10px + (100vw - 880px) * 21 / 144), 31px);
  }
}
@media (min-width: 1280px) {
  body.page-media #press .press-showcase.h-slider {
    margin-inline: 0;
    width: 100%;
    overflow: visible;
  }
  body.page-media #press .press-showcase .h-slider__track.media-cards-grid {
    display: grid !important;
    overflow: visible;
    scroll-snap-type: none;
    padding-inline: 0;
    scroll-padding-inline: 0;
  }
}
@media (min-width: 1280px) and (max-width: 1599px) {
  body.page-media #news [data-filter-target="news-media"].media-cards-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 1280px) {
  body.page-media .news-card,
  body.page-media .insight-card {
    min-height: 478px;
  }
  body.page-media .news-card__body,
  body.page-media .insight-card__body {
    padding: 25px;
    gap: 15px;
  }
  body.page-media .news-card__text {
    min-height: 134px;
  }
  body.page-media .news-card__img,
  body.page-media .insight-card__img {
    aspect-ratio: auto;
    height: 280px;
    max-height: none;
    flex-shrink: 0;
  }
  body.page-media .insight-card {
    min-height: 487px;
  }
  body.page-media .insight-card__img {
    height: 220px;
    max-height: 220px;
    min-height: 220px;
  }
  body.page-media .media-cards-grid {
    gap: 33px;
    max-width: 1200px;
    margin-inline: auto;
    justify-content: center;
    justify-items: stretch;
  }
  body.page-media #press .media-cards-grid {
    grid-template-columns: repeat(3, 378px);
  }
  body.page-media main > .section .media-cards-grid.grid--4 {
    max-width: calc(4 * 378px + 3 * 33px);
    gap: 33px;
    justify-content: center;
  }
  body.page-media main > .section .media-cards-grid--insights.grid--3 {
    max-width: calc(3 * 378px + 2 * 33px);
    gap: 33px;
    justify-content: center;
  }
  body.page-media #news [data-filter-target="news-media"].media-cards-grid {
    grid-template-columns: repeat(4, 378px);
  }
  body.page-media .media-cards-grid--insights {
    grid-template-columns: repeat(3, 378px);
  }
}
@media (min-width: 1600px) {
  body.page-media #press .media-cards-grid {
    grid-template-columns: repeat(4, 378px);
  }
}

/* Figma 4_2_Медиа_1440 / 4_3_Медиа_1280: СМИ 3, новости 9, инсайты 6 */
@media (min-width: 1280px) and (max-width: 1899px) {
  body.page-media #press .media-cards-grid {
    grid-template-columns: repeat(3, 378px);
    max-width: calc(3 * 378px + 2 * 33px);
  }
  body.page-media #press .media-cards-grid .news-card:nth-child(n + 4) {
    display: none;
  }
  body.page-media #news [data-filter-target="news-media"].media-cards-grid {
    grid-template-columns: repeat(3, 378px);
    max-width: calc(3 * 378px + 2 * 33px);
  }
  body.page-media #news [data-filter-target="news-media"].media-cards-grid .news-card:nth-child(n + 10) {
    display: none;
  }
  body.page-media #insights .media-cards-grid--insights .insight-card:nth-child(n + 7) {
    display: none;
  }
  body.page-media main > .section .media-cards-grid--insights.grid--3 {
    max-width: calc(3 * 378px + 2 * 33px);
  }
}
@media (min-width: 1280px) {
  body:not(.page-home) .hero--standardization {
    min-height: var(--hero-h-standardization-1440);
    padding-top: 72px;
    padding-bottom: 56px;
    box-sizing: border-box;
  }
  body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip) {
    min-height: 0;
    padding-top: 30px;
    padding-bottom: 56px;
  }
  body:not(.page-home) .hero--standardization::before {
    inset: 0;
    bottom: 0;
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
      var(--hero-gradient-standardization);
    background-size: auto, auto, cover;
    background-position: center;
  }
  body.page-standardization .hero--standardization::before {
    background-image: none;
    background-color: var(--std-hero-bg);
    background-size: auto;
    background-position: center;
  }
  body:not(.page-home) .hero--media {
    min-height: var(--hero-h-media-1440);
    padding-top: 72px;
    padding-bottom: 56px;
    box-sizing: border-box;
  }
  body:not(.page-home):not(.page-media) .hero--media::before {
    bottom: var(--hero-decor-h);
    background-position: 0 0, 72% center;
  }
  body.page-media .hero__section-nav {
    display: none;
  }
}

/* Figma 4_5_Медиа_800 (601–880): фото + оверлей в одном hero, 3×«Кнопка белая» в ряд */
@media (min-width: 601px) and (max-width: 880px) {
  body.page-media .slider-hero[hidden] {
    display: none !important;
  }
  body.page-media .hero--media:not(.hero--strip) {
    min-height: clamp(400px, calc(100vw * 431 / 800), 460px);
    padding-top: 16px;
    padding-bottom: calc(var(--hero-decor-h) + 8px);
    box-sizing: border-box;
    overflow: hidden;
  }
  body.page-media .hero--media:not(.hero--strip)::before {
    inset: 0;
    bottom: 0;
    height: auto;
    background-image:
      linear-gradient(rgba(2, 3, 3, 0.72), rgba(2, 3, 3, 0.72)),
      var(--hero-photo-media);
    background-size: auto, cover;
    background-position: 0 0, 72% center;
  }
  body.page-media .hero--media .hero__title {
    font-size: clamp(22px, 3.5vw, 28px);
    line-height: 1.12;
    max-width: 346px;
    margin-bottom: 10px;
  }
  body.page-media .hero--media .hero__lead {
    font-size: 14px;
    line-height: 1.45;
    margin-bottom: 16px;
    max-width: 343px;
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
  }
  body.page-media .hero--media .hero__actions {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 17px;
    width: auto;
    max-width: 100%;
    margin-bottom: 0;
  }
  body.page-media .hero--media .hero__actions .btn {
    width: auto;
    min-width: 0;
    max-width: 100%;
    flex: 0 1 auto;
    min-height: var(--btn-height-white);
    height: var(--btn-height-white);
    padding: 15px clamp(18px, 4vw, 40px);
    justify-content: center;
    font-family: "Montserrat", var(--font-ui);
    font-size: 14px;
    font-weight: 500;
    border-radius: 50px;
    box-shadow: none;
  }
  body.page-media .hero--media .hero__actions .btn--white {
    background: #fff;
    color: #08c;
    border: none;
  }
  body.page-media .hero--media .hero__actions .btn--white:hover {
    background: #fff;
    color: var(--c-action-hover);
    transform: none;
  }
  body.page-media .hero--media .hero__actions .btn--outline-white {
    background: transparent;
    color: #fff;
    border: 1px solid #fff;
  }
  body.page-media .hero--media .hero__actions .btn--outline-white:hover {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    border-color: #fff;
    transform: none;
  }
}

/* Figma 4_1–4_3_Медиа (881+): «Кнопка белая» + контур в hero */
@media (min-width: 881px) {
  body.page-media .hero--media .hero__actions {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 17px;
    width: auto;
    max-width: 100%;
    margin-top: 0;
    margin-bottom: 0;
  }
  body.page-media .hero--media .hero__actions .btn {
    box-sizing: border-box;
    min-height: 50px;
    height: 50px;
    padding: 15px 40px;
    border-radius: 50px;
    font-family: "Montserrat", var(--font-ui);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    width: auto;
    flex: 0 0 auto;
    box-shadow: none;
  }
  body.page-media .hero--media .hero__actions .btn--white {
    background: #fff;
    color: #08c;
    border: none;
  }
  body.page-media .hero--media .hero__actions .btn--white:hover {
    background: #fff;
    color: var(--c-action-hover);
    transform: none;
  }
  body.page-media .hero--media .hero__actions .btn--outline-white {
    background: transparent;
    color: #fff;
    border: 1px solid #fff;
  }
  body.page-media .hero--media .hero__actions .btn--outline-white:hover {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    border-color: #fff;
    transform: none;
  }
}

/* Figma 4_3_Медиа_1280 (13189:36968) / 4_2_Медиа_1440 (13189:40908): copy x=40 / x=120 */
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-media {
    --container: 1280px;
    --gutter: 40px;
  }

  body.page-media {
    /* Figma 4_3 Group 52 (13189:37233): плитки −361 / 1236 */
    --hero-decor-tile-w-lead: calc(1600.6 / 1280 * 100vw);
    --hero-decor-tile-w-trail: calc(1600.6 / 1280 * 100vw);
    --hero-decor-lead-l: calc(-361 / 1280 * 100vw);
    --hero-decor-trail-l: calc(1236 / 1280 * 100vw);
  }

  body.page-media .hero--media:not(.hero--strip) {
    min-height: var(--hero-h-media-1280);
    /* title y=298 − photo y=156 */
    padding-top: 142px;
    padding-bottom: 56px;
    box-sizing: border-box;
    overflow: hidden;
  }

  body.page-media .hero--media:not(.hero--strip)::before {
    inset: 0;
    bottom: 0;
    background-size: auto, cover;
    background-position: 0 0, 72% center;
  }

  body.page-media .hero--media:not(.hero--strip) .hero-decor {
    display: block;
    z-index: 5;
    background: transparent;
  }

  body.page-media .hero--media .hero__inner {
    max-width: none;
    margin-inline: 0;
  }

  body.page-media .hero--media .hero__title {
    font-size: 36px;
    line-height: 1.35;
    font-weight: 800;
    letter-spacing: 0;
    margin-bottom: 42px;
  }

  body.page-media .hero--media .hero__lead {
    margin-bottom: 59px;
  }
}

@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-media {
    --container: 1440px;
    --gutter: 120px;
  }

  body.page-media {
    /* Figma 4_2 Group 52 (13189:41176): плитки −281 / 1316 */
    --hero-decor-tile-w-lead: calc(1600.6 / 1440 * 100vw);
    --hero-decor-tile-w-trail: calc(1600.6 / 1440 * 100vw);
    --hero-decor-lead-l: calc(-281 / 1440 * 100vw);
    --hero-decor-trail-l: calc(1316 / 1440 * 100vw);
  }

  body.page-media .hero--media:not(.hero--strip) {
    min-height: var(--hero-h-media-1440);
    /* title y=338 − photo y=156 */
    padding-top: 182px;
    padding-bottom: 56px;
    box-sizing: border-box;
    overflow: hidden;
  }

  body.page-media .hero--media:not(.hero--strip)::before {
    inset: 0;
    bottom: 0;
    background-size: auto, cover;
    background-position: 0 0, 72% center;
  }

  body.page-media .hero--media:not(.hero--strip) .hero-decor {
    display: block;
    z-index: 5;
    background: transparent;
  }

  body.page-media .hero--media .hero__inner {
    max-width: none;
    margin-inline: 0;
  }

  body.page-media .hero--media .hero__title {
    font-size: 36px;
    line-height: 1.35;
    font-weight: 800;
    letter-spacing: 0;
    margin-bottom: 42px;
  }

  body.page-media .hero--media .hero__lead {
    margin-bottom: 59px;
  }
}

/* Figma 4_6_Медиа_375 (13189:22218): фото 763 + РСТ_шкала 20, copy x≈15, кнопки 218×50 */
@media (max-width: 600px) {
  body.page-media {
    --gutter: 15px;
    --hero-decor-h: 20px;
    --hero-decor-tile-w: calc(1159.854 / 375 * 100vw);
    --hero-decor-lead-l: calc(-784 / 375 * 100vw);
    --hero-decor-trail-l: calc(373.246 / 375 * 100vw);
  }

  body.page-media .hero--media:not(.hero--strip) {
    min-height: var(--hero-h-media-375);
    padding-top: calc(100vw * 163 / 375);
    padding-bottom: calc(100vw * 206 / 375);
    box-sizing: border-box;
    overflow: hidden;
  }

  body.page-media .hero--media:not(.hero--strip)::before {
    inset: 0;
    bottom: 0;
    background-image:
      linear-gradient(rgba(2, 3, 3, 0.72), rgba(2, 3, 3, 0.72)),
      var(--hero-photo-media-mobile);
    background-size: auto, cover;
    background-position: 0 0, 72% center;
  }

  body.page-media .hero--media:not(.hero--strip) .hero-decor {
    display: block;
    z-index: 5;
  }

  body.page-media .hero--media .hero__inner {
    margin-bottom: 0;
  }

  body.page-media .hero--media .hero__title {
    font-size: 24px;
    line-height: 1.35;
    font-weight: 800;
    max-width: min(346px, 100%);
    margin-bottom: calc(100vw * 32 / 375);
  }

  body.page-media .hero--media .hero__lead {
    font-family: var(--font-body-figma);
    font-size: 16px;
    line-height: 1.3;
    font-weight: 400;
    margin-bottom: calc(100vw * 77 / 375);
    max-width: min(343px, 100%);
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
  }

  body.page-media .hero--media .hero__actions {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(100vw * 20 / 375);
    width: 100%;
    margin-bottom: 0;
  }

  body.page-media .hero--media .hero__actions .btn {
    box-sizing: border-box;
    width: auto;
    min-width: 0;
    max-width: min(218px, 100%);
    min-height: 50px;
    height: 50px;
    padding: 15px 40px;
    justify-content: center;
    font-family: "Montserrat", var(--font-ui);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
    box-shadow: none;
  }

  body.page-media .hero--media .hero__actions .btn--white {
    background: #fff;
    color: #08c;
    border: none;
  }

  body.page-media .hero--media .hero__actions .btn--white:hover {
    background: #fff;
    color: var(--c-action-hover);
    transform: none;
  }

  body.page-media .hero--media .hero__actions .btn--outline-white {
    background: transparent;
    color: #fff;
    border: 1px solid #fff;
  }

  body.page-media .hero--media .hero__actions .btn--outline-white:hover {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    border-color: #fff;
    transform: none;
  }

  /* СМИ / новости / инсайты — горизонтальные карусели 300×450/432, gap 13/10, без стрелок */
  body.page-media #press .press-showcase.h-slider,
  body.page-media #news .news-showcase.h-slider,
  body.page-media #insights .insights-showcase.h-slider {
    position: relative;
    margin-inline: calc(-1 * var(--gutter));
    width: auto;
    overflow: hidden;
    padding-inline: 0;
  }

  body.page-media #press .press-showcase .h-slider__track.media-cards-grid,
  body.page-media #news .news-showcase .h-slider__track.media-cards-grid,
  body.page-media #insights .insights-showcase .h-slider__track.media-cards-grid {
    display: flex !important;
    flex-wrap: nowrap;
    grid-template-columns: none !important;
    gap: 13px;
    max-width: none;
    margin-inline: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    padding-inline: var(--gutter);
    scroll-padding-inline: var(--gutter);
    padding-bottom: 4px;
  }

  body.page-media #insights .insights-showcase .h-slider__track.media-cards-grid {
    gap: 10px;
  }

  body.page-media #press .press-showcase .h-slider__track.media-cards-grid::-webkit-scrollbar,
  body.page-media #news .news-showcase .h-slider__track.media-cards-grid::-webkit-scrollbar,
  body.page-media #insights .insights-showcase .h-slider__track.media-cards-grid::-webkit-scrollbar {
    display: none;
  }

  body.page-media #press .press-showcase .h-slider__track > .news-card,
  body.page-media #news .news-showcase .h-slider__track > .news-card {
    flex: 0 0 300px;
    width: 300px;
    max-width: 300px;
    min-height: 450px;
    scroll-snap-align: start;
  }

  body.page-media #insights .insights-showcase .h-slider__track > .insight-card {
    flex: 0 0 300px;
    width: 300px;
    max-width: 300px;
    min-height: 432px;
    scroll-snap-align: start;
  }

  body.page-media #press .press-showcase .h-slider__nav,
  body.page-media #press .press-showcase .h-slider__hint,
  body.page-media #news .news-showcase .h-slider__nav,
  body.page-media #news .news-showcase .h-slider__hint,
  body.page-media #insights .insights-showcase .h-slider__nav,
  body.page-media #insights .insights-showcase .h-slider__hint {
    display: none !important;
  }

  body.page-media #press .news-card__img,
  body.page-media #news .news-card__img,
  body.page-media #insights .insight-card__img {
    aspect-ratio: 378 / 220;
    max-height: none;
    height: auto;
  }
}

/* Figma 6_2_Наука: Frame 720 в шапке (y≈118), не внутри фото-hero */
body.page-science .hero--science .hero__section-nav {
  display: none !important;
}

body:not(.page-home) .hero--certification.hero--strip {
  background: #f5f5f5;
  background-color: #f5f5f5;
  min-height: 0;
  padding-top: 0;
  padding-bottom: 0;
}
/* Figma 13020:13160 Rectangle 446 — hero-strip L3 «Сертификация» */
body.page-certification-voluntary-personnel .hero--certification.hero--strip {
  background: #f5f5f5;
  background-color: #f5f5f5;
}
body.page-certification-voluntary-personnel .hero--certification.hero--strip .hero__title {
  font-size: 28px;
  margin-bottom: 10px;
}
body:not(.page-home) .hero--certification.hero--strip::before,
body:not(.page-home) .hero--certification.hero--strip::after {
  display: none;
}
body:not(.page-home) .hero--certification.hero--strip .hero-decor {
  display: none;
}
body:not(.page-home) .hero--certification.hero--strip .hero__section-nav {
  margin-bottom: 16px;
}
body:not(.page-home) .hero--certification.hero--strip .hero__section-nav-link {
  color: var(--c-text-muted);
}
body:not(.page-home) .hero--certification.hero--strip .hero__section-nav-link:hover,
body:not(.page-home) .hero--certification.hero--strip .hero__section-nav-link.is-active {
  color: var(--c-brand);
}
body:not(.page-home) .hero--certification.hero--strip .hero__inner {
  padding-top: 24px;
  padding-bottom: 28px;
  margin-bottom: 0;
}
body:not(.page-home) .hero--certification.hero--strip .hero__title {
  color: var(--c-text);
  font-size: 32px;
  font-weight: 600;
  line-height: 1.35;
  max-width: none;
  margin-bottom: 12px;
}
body:not(.page-home) .hero--certification.hero--strip .breadcrumbs,
body:not(.page-home) .hero--certification.hero--strip .breadcrumbs a {
  color: var(--c-text-muted);
}
body:not(.page-home) .hero--certification.hero--strip .stat__num {
  color: var(--c-brand);
}
body:not(.page-home) .hero--certification.hero--strip .stat__txt {
  color: var(--c-text-muted);
}
body:not(.page-home) .hero--certification.hero--strip .hero__stats.stats-grid {
  margin-top: 8px;
  gap: 24px 32px;
}
.hero--certification.hero--strip + .section--cert-mandatory {
  padding-top: 0;
}
@media (min-width: 1280px) {
  body:not(.page-home) .hero--certification.hero--strip {
    min-height: 135px;
    padding: 0;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--certification.hero--strip .hero__inner {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 0;
    padding-top: 30px;
    padding-bottom: 37px;
    margin-bottom: 0;
  }
  body:not(.page-home) .hero--certification.hero--strip .hero__stats.stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1900px) {
  /* Figma 1_1_Сертификация_1900: Rectangle 446 y=156 h=135; title y=186; gutter 120 */
  body.page-inner {
    --container: 1920px;
    --gutter: 120px;
  }
  body.page-inner .container {
    max-width: var(--container);
    margin-inline: auto;
  }
  body.page-inner .header > .container.header__top,
  body.page-inner .header > .container.header__inner {
    padding-inline: var(--gutter);
  }
  body.page-inner .hero.page-hero.hero--strip {
    min-height: 135px;
    padding: 0;
    box-sizing: border-box;
  }
  body.page-inner .hero.page-hero.hero--strip > .container {
    padding-inline: var(--gutter);
  }
  body.page-inner .hero.page-hero.hero--strip .hero__inner {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    grid-template-columns: minmax(0, 1fr);
    padding-top: 30px;
    padding-bottom: 37px;
    margin-bottom: 0;
  }
  body.page-inner .hero.page-hero.hero--strip .hero__title {
    font-size: 32px;
    line-height: 1.35;
    font-weight: 600;
    margin-bottom: 5px;
  }

  /* Figma 12625:9177 / 9180 — заголовок x=120, одна строка; крошки 14px #686a73 */
  body.page-certification .hero--certification.hero--strip .hero__inner,
  body[class*="page-certification-"].page-l3 .hero--certification.hero--strip .hero__inner {
    max-width: none;
    width: 100%;
    margin-inline: 0;
  }
  body.page-certification .hero--certification.hero--strip .hero__title,
  body[class*="page-certification-"].page-l3 .hero--certification.hero--strip .hero__title {
    font-family: var(--font-heading);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.1875;
    letter-spacing: 0;
    color: #020203;
    max-width: 485px;
    white-space: nowrap;
    margin-bottom: 10px;
  }
  body.page-certification .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe,
  body.page-certification .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe a,
  body[class*="page-certification-"].page-l3 .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe,
  body[class*="page-certification-"].page-l3 .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe a {
    font-family: var(--font);
    font-size: 14px;
    font-weight: 400;
    line-height: 17px;
    color: #686a73;
  }
  body.page-certification .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe a,
  body[class*="page-certification-"].page-l3 .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe a {
    text-decoration: underline;
    text-underline-offset: 2px;
  }
  body.page-certification .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe .breadcrumbs__line,
  body[class*="page-certification-"].page-l3 .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe .breadcrumbs__line {
    color: #686a73;
  }
}
@media (max-width: 880px) {
  body:not(.page-home) .hero--certification.hero--strip {
    min-height: 0;
    padding-bottom: 0;
  }
  body:not(.page-home) .hero--certification.hero--strip .hero__inner {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

.section--cert-mandatory {
  background: #0088cc;
  color: #fff;
  padding: var(--section-y) 0;
}
.section--cert-mandatory .section-title--on-dark {
  color: #fff;
  text-align: center;
  font-size: clamp(30px, 2.5vw, 36px);
  line-height: 1.35;
  margin-bottom: 40px;
  max-width: 100%;
}

/* Figma 1_5_Сертификация_800 (12625:12094): Rectangle 450, title 12625:12308 */
@media (min-width: 800px) and (max-width: 1023px) {
  body.page-certification .hero--certification.hero--strip + .section--cert-mandatory,
  body.page-certification .section--cert-mandatory {
    padding-top: 10px;
    padding-bottom: 25px;
  }

  body.page-certification .section--cert-mandatory > .container {
    max-width: 800px;
    padding-inline: 27px;
    box-sizing: border-box;
  }

  body.page-certification .section--cert-mandatory > .container > h2.section-title.section-title--on-dark {
    font-family: var(--font-heading);
    font-size: 30px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #fff;
    text-align: left;
    word-break: break-word;
    margin-top: 0;
    margin-bottom: 20px;
    max-width: none;
  }

  body.page-certification .cert-mandatory-layout {
    grid-template-columns: 240px minmax(0, 1fr);
    column-gap: 24px;
    row-gap: 25px;
    grid-template-areas:
      "nav body"
      "features features"
      "actions actions";
  }

  body.page-certification .cert-mandatory-panel__nav {
    gap: 9px;
  }

  body.page-certification .cert-mandatory-panel__nav a {
    min-height: 56px;
    padding: 10px 25px;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
    border: 0;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
    box-sizing: border-box;
  }

  body.page-certification .cert-mandatory-panel__nav a.is-active,
  body.page-certification .cert-mandatory-panel__nav a:hover {
    font-weight: 500;
  }

  body.page-certification .cert-mandatory-panel__body,
  body.page-certification .cert-mandatory-panel__features {
    padding: 15px;
    box-sizing: border-box;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }

  body.page-certification .cert-mandatory-panel__features {
    gap: 10px;
    padding: 15px 15px 15px 35px;
  }

  body.page-certification .cert-mandatory-panel__body p,
  body.page-certification .cert-mandatory-panel__bullets li {
    font-family: var(--font-body-figma);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
  }

  body.page-certification .cert-mandatory-panel__body p {
    margin: 0 0 10px;
  }

  body.page-certification .cert-mandatory-panel__body p:last-child {
    margin-bottom: 0;
  }

  body.page-certification .cert-mandatory-panel__bullets {
    gap: 10px;
  }

  body.page-certification .cert-mandatory-panel__features .cert-mandatory-panel__bullets li::before {
    left: -22px;
    top: 0.35em;
    border-top-width: 6px;
    border-bottom-width: 6px;
    border-left-width: 8px;
  }

  body.page-certification .cert-mandatory-panel__seal img {
    width: 56px;
    height: 55px;
  }

  body.page-certification .cert-mandatory-panel__actions {
    justify-content: center;
    gap: 20px;
    padding-top: 0;
  }

  body.page-certification .cert-mandatory-panel__btn-order.btn.btn--white,
  body.page-certification .cert-mandatory-panel__btn-consult.btn.btn--outline-white {
    min-height: 47px;
    padding: 15px 40px;
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
  }

  body.page-certification .cert-mandatory-panel__btn-order.btn.btn--white {
    color: var(--c-action);
  }

  /* Figma 1_5_800: «Испытания» 12625:12353–12357 — copy 488px, pill 340×60, фото 12625:12355 252×535 справа */
  body.page-certification #tests.section--cert-tests {
    padding-top: 30px;
    padding-bottom: 40px;
  }

  body.page-certification #tests > .container {
    max-width: 800px;
    padding-inline: 27px;
    box-sizing: border-box;
    overflow: visible;
  }

  body.page-certification #tests .cert-tests-layout {
    position: relative;
    display: block;
    min-height: 535px;
    max-width: 100%;
  }

  body.page-certification #tests .cert-tests-layout__copy {
    position: relative;
    z-index: 2;
    max-width: 488px;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  body.page-certification #tests .cert-tests-layout__copy .section-title {
    margin: 0 0 30px;
    font-family: var(--font-heading);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
    text-align: left;
  }

  body.page-certification #tests .cert-tests-pill {
    display: inline-flex;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    max-width: 340px;
    margin: 0 0 25px;
    padding: 20px 25px;
    border-radius: 50px;
    background: #fff;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    color: #020203;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }

  body.page-certification #tests .cert-tests-layout__text {
    max-width: 488px;
  }

  body.page-certification #tests .cert-tests-layout__text p {
    margin: 0 0 15px;
    font-family: var(--font-body-figma);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
  }

  body.page-certification #tests .cert-tests-layout__text p:last-child {
    margin-bottom: 0;
  }

  body.page-certification #tests .cert-tests-layout__actions {
    margin-top: 24px;
    gap: 20px;
  }

  body.page-certification #tests .cert-tests-layout__actions .btn {
    min-height: 47px;
    padding: 15px 40px;
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
  }

  body.page-certification #tests .cert-tests-layout__photo {
    position: absolute;
    top: 0;
    right: -27px;
    width: 284px;
    max-width: calc(100% - 488px - 10px);
    height: 535px;
    margin: 0;
    overflow: hidden;
    z-index: 1;
    pointer-events: none;
  }

  body.page-certification #tests .cert-tests-layout__photo picture,
  body.page-certification #tests .cert-tests-layout__photo img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: 6.67% center;
  }

  /* Figma 1_5_800: «Услуги ТР» 12625:12381 — пилюли 2×369, фото 12625:12095 803×268 под сеткой */
  body.page-certification #regulation {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  body.page-certification #regulation > .container {
    max-width: 800px;
    padding-inline: 27px;
    box-sizing: border-box;
  }

  body.page-certification #regulation .section-title.section-title--center {
    margin-bottom: 35px;
    font-family: var(--font-heading);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
    text-align: center;
  }

  body.page-certification #regulation .cert-regulation-layout-wrap {
    max-width: 800px;
    padding-inline: 27px;
    margin-inline: auto;
    box-sizing: border-box;
  }

  body.page-certification #regulation .cert-regulation-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
      "col-primary col-secondary"
      "photo photo";
    column-gap: 10px;
    row-gap: 35px;
    align-items: start;
    max-width: none;
    margin-inline: 0;
    justify-content: stretch;
  }

  body.page-certification #regulation .cert-regulation-layout__col {
    gap: 10px;
  }

  body.page-certification #regulation .cert-regulation-layout__photo {
    display: block;
    grid-area: photo;
    width: calc(100% + 54px);
    max-width: none;
    margin-left: -27px;
    margin-right: -27px;
  }

  body.page-certification #regulation .cert-regulation-layout__photo img {
    display: block;
    width: 100%;
    height: 268px;
    max-width: none;
    object-fit: cover;
    object-position: center center;
  }

  body.page-certification #regulation .cert-regulation-pill {
    width: 100%;
    min-height: 60px;
    padding: 20px 25px;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
    box-sizing: border-box;
  }

  body.page-certification #regulation .cert-regulation-pill--accent {
    background: #fff;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }

  body.page-certification #regulation .cert-regulation-pill--muted {
    background: #f5f5f5;
    box-shadow: none;
  }

  body.page-certification #regulation .cert-regulation-pill--two-line {
    align-items: center;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /* Figma 1_5_800: новости ТР — карточки 300×432, фото 175px (12625:12187–12189) */
  body.page-certification #tr-news .cert-tr-news__inner > .container {
    max-width: 800px;
    padding-inline: 27px;
    box-sizing: border-box;
  }

  body.page-certification #tr-news .section-header {
    margin-bottom: 30px;
  }

  body.page-certification #tr-news .section-title {
    font-family: var(--font-heading);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-certification #tr-news .news-showcase .h-slider__track > .news-card {
    flex: 0 0 300px;
    width: 300px;
    min-height: 432px;
  }

  body.page-certification #tr-news .news-card__img {
    height: 175px;
  }

  body.page-certification #tr-news .news-card__body {
    padding: 15px 15px 20px;
    gap: 10px;
  }

  body.page-certification #tr-news .news-card__rubric {
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    color: #ed1a34;
    background: #f1f1f1;
    padding: 5px;
    border-radius: 5px;
  }

  body.page-certification #tr-news .news-card__date {
    font-family: var(--font-body-figma);
    font-size: 14px;
    font-weight: 400;
    line-height: normal;
    color: #020203;
  }

  body.page-certification #tr-news .news-card__title,
  body.page-certification #tr-news .news-card__title a {
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
  }

  body.page-certification #tr-news .news-card__excerpt {
    font-family: var(--font-body-figma);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    margin: 0;
  }

  body.page-certification #tr-news .news-card__more {
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    color: #686a73;
    padding-top: 0;
  }
}

/* Figma 1_6_Сертификация_375 (12625:10000): hero 446 + mandatory 450 */
@media (max-width: 799px) {
  body.page-certification .hero--certification.hero--strip {
    min-height: 118px;
    box-sizing: border-box;
  }

  body.page-certification .hero--certification.hero--strip > .container {
    padding-inline: 15px;
    box-sizing: border-box;
  }

  body.page-certification .hero--certification.hero--strip .hero__inner {
    padding-top: 10px;
    padding-bottom: 17px;
    margin-bottom: 0;
    min-width: 0;
  }

  body.page-certification .hero--certification.hero--strip .hero__copy {
    min-width: 0;
    max-width: 345px;
  }

  body.page-certification .hero--certification.hero--strip .hero__title {
    font-family: var(--font-heading);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
    word-break: break-word;
    overflow-wrap: break-word;
    max-width: 100%;
    margin-bottom: 10px;
  }

  body.page-certification .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe,
  body.page-certification .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe a,
  body.page-certification .hero--certification.hero--strip .breadcrumbs.breadcrumbs--pipe .breadcrumbs__line {
    font-family: var(--font-body-figma);
    font-size: 14px;
    font-weight: 400;
    line-height: normal;
    color: #686a73;
  }

  body.page-certification .hero--certification.hero--strip + .section--cert-mandatory,
  body.page-certification .section--cert-mandatory {
    padding-top: 10px;
    padding-bottom: 25px;
  }

  body.page-certification .section--cert-mandatory > .container {
    padding-inline: 15px;
    box-sizing: border-box;
    min-width: 0;
  }

  body.page-certification .section--cert-mandatory > .container > h2.section-title.section-title--on-dark {
    font-family: var(--font-heading);
    font-size: 30px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #fff;
    text-align: left;
    word-break: break-word;
    overflow-wrap: break-word;
    max-width: 345px;
    margin-top: 0;
    margin-bottom: 15px;
  }

  body.page-certification .cert-mandatory-layout {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "nav"
      "body"
      "features"
      "actions";
    gap: 10px;
    min-width: 0;
  }

  body.page-certification .cert-mandatory-panel__nav {
    gap: 10px;
  }

  body.page-certification .cert-mandatory-panel__nav a {
    width: 100%;
    min-height: 60px;
    padding: 20px 25px;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
    box-sizing: border-box;
  }

  body.page-certification .cert-mandatory-panel__body,
  body.page-certification .cert-mandatory-panel__features {
    padding: 15px;
    box-sizing: border-box;
  }

  body.page-certification .cert-mandatory-panel__features {
    padding-left: 35px;
  }

  body.page-certification .cert-mandatory-panel__actions {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 5px 20px;
    padding-top: 0;
  }

  body.page-certification .cert-mandatory-panel__btn-order.btn.btn--white {
    flex: 0 0 auto;
    min-width: 145px;
    width: 145px;
    padding-inline: 40px;
  }

  body.page-certification .cert-mandatory-panel__btn-consult.btn.btn--outline-white {
    flex: 0 0 auto;
    min-width: 195px;
    width: 195px;
    padding-inline: 40px;
  }

  /* Figma 12625:10239 — фото лаборатории 376×267, edge-to-edge */
  body.page-certification #tests > .container {
    padding-inline: 15px;
    overflow: visible;
    box-sizing: border-box;
  }

  body.page-certification #tests .cert-tests-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  body.page-certification #tests .cert-tests-layout__copy .section-title {
    text-align: center;
    font-size: 24px;
    line-height: 1.35;
    margin-bottom: 18px;
  }

  body.page-certification #tests .cert-tests-pill {
    max-width: 340px;
    width: 100%;
  }

  body.page-certification #tests .cert-tests-layout__photo {
    grid-column: 1;
    justify-self: stretch;
    width: calc(100% + 30px);
    max-width: none;
    margin-left: -15px;
    margin-right: -15px;
    overflow: hidden;
  }

  body.page-certification #tests .cert-tests-layout__photo picture,
  body.page-certification #tests .cert-tests-layout__photo img {
    display: block;
    width: 100%;
    max-width: none;
    height: auto;
    aspect-ratio: 376 / 267;
    object-fit: cover;
    object-position: center center;
  }

  /* Figma 12625:10271 — фото под пилюлями «Услуги ТР» 376×251, edge-to-edge */
  body.page-certification #regulation {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  body.page-certification #regulation > .container {
    padding-inline: 15px;
    box-sizing: border-box;
  }

  body.page-certification #regulation .section-title.section-title--center {
    margin-bottom: 28px;
    font-family: var(--font-heading);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
  }

  body.page-certification #regulation .cert-regulation-layout-wrap {
    max-width: none;
    width: 100%;
    padding-inline: 15px;
    margin-inline: auto;
    box-sizing: border-box;
    overflow: visible;
  }

  body.page-certification #regulation .cert-regulation-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "col-primary"
      "col-secondary"
      "photo";
    row-gap: 10px;
    column-gap: 0;
    align-items: start;
    max-width: none;
    margin-inline: 0;
  }

  body.page-certification #regulation .cert-regulation-layout__col {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
  }

  body.page-certification #regulation .cert-regulation-layout__photo {
    display: block;
    grid-area: photo;
    width: calc(100% + 30px);
    max-width: none;
    margin-top: 20px;
    margin-left: -15px;
    margin-right: -15px;
    overflow: hidden;
    line-height: 0;
  }

  body.page-certification #regulation .cert-regulation-layout__photo picture,
  body.page-certification #regulation .cert-regulation-layout__photo img {
    display: block;
    width: 100%;
    max-width: none;
    height: auto;
    aspect-ratio: 376 / 251;
    object-fit: cover;
    object-position: center center;
  }

  body.page-certification #regulation .cert-regulation-pill {
    width: 100%;
    min-height: 60px;
    padding: 20px 25px;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
    box-sizing: border-box;
  }

  body.page-certification #regulation .cert-regulation-pill--two-line {
    align-items: center;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.cert-mandatory-layout {
  display: grid;
  gap: 20px 35px;
  grid-template-columns: 240px minmax(0, 370px) minmax(0, 1fr);
  grid-template-areas:
    "nav body features"
    "actions actions actions";
  align-items: start;
}
.cert-mandatory-panel__nav {
  grid-area: nav;
  display: flex;
  flex-direction: column;
  gap: 17px;
}
.cert-mandatory-panel__body {
  grid-area: body;
  background: #fff;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  padding: 25px;
  color: var(--c-text);
}
.cert-mandatory-panel__features {
  grid-area: features;
  display: flex;
  gap: 10px;
  align-items: flex-start;
  background: #fff;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  padding: 25px 25px 25px 50px;
  color: var(--c-text);
}
.cert-mandatory-panel__actions {
  grid-area: actions;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  padding-top: 12px;
}
.cert-mandatory-panel__nav a {
  display: flex;
  align-items: center;
  min-height: 56px;
  padding: 10px 25px;
  border-radius: 50px;
  background: #fff;
  color: #020203;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.25;
  text-align: left;
  text-decoration: none;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  border: 2px solid transparent;
  transition: box-shadow var(--transition), font-weight var(--transition);
}
.cert-mandatory-panel__nav a.is-active,
.cert-mandatory-panel__nav a:hover {
  font-weight: 600;
  box-shadow: 0 0 16px rgba(57, 59, 65, 0.16);
}
.cert-mandatory-panel__body p {
  color: var(--c-text);
  font-size: 16px;
  line-height: 1.3;
  margin: 0 0 10px;
}
.cert-mandatory-panel__body p:last-child {
  margin-bottom: 0;
}
.cert-mandatory-panel__bullets {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
  flex: 1;
  min-width: 0;
}
.cert-mandatory-panel__bullets li {
  padding-left: 0;
  position: relative;
  font-size: 16px;
  line-height: 1.3;
  color: var(--c-text);
}
.cert-mandatory-panel__features .cert-mandatory-panel__bullets li {
  position: relative;
  padding-left: 0;
}
.cert-mandatory-panel__bullets li::before {
  content: none;
}
.cert-mandatory-panel__features .cert-mandatory-panel__bullets li::before {
  content: "";
  position: absolute;
  left: -22px;
  top: 0.45em;
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid #0088cc;
}
.cert-mandatory-panel__seal {
  flex-shrink: 0;
  align-self: flex-start;
}
.cert-mandatory-panel__seal img {
  display: block;
  width: 95px;
  height: 94px;
  object-fit: contain;
}
.cert-mandatory-panel__btn-order.btn.btn--white {
  min-height: 47px;
  padding: 15px 40px;
  border-radius: 50px;
  background: #fff;
  color: #0088cc;
  font-size: 14px;
  font-weight: 500;
}
.cert-mandatory-panel__btn-order.btn.btn--white:hover {
  background: #fff;
  color: #006699;
}
.cert-mandatory-panel__btn-consult.btn.btn--outline-white {
  min-height: 47px;
  padding: 15px 40px;
  border-radius: 50px;
  border-color: #fff;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
}
.cert-mandatory-panel__btn-consult.btn.btn--outline-white:hover {
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}

/* Figma 1_2_Сертификация_1440 (12625:14237): фото 12625:14745 x=-20, 511×341 */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-certification #regulation {
    padding-top: 48px;
    padding-bottom: 56px;
    overflow: visible;
  }

  body.page-certification #regulation > .container {
    max-width: 1440px;
    padding-inline: var(--gutter);
    overflow: visible;
  }

  body.page-certification #regulation .section-title.section-title--center {
    margin-bottom: 48px;
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    text-align: center;
  }

  body.page-certification #regulation .cert-regulation-layout-wrap {
    width: 100%;
    max-width: 1440px;
    margin-inline: auto;
    overflow: visible;
  }

  body.page-certification #regulation .cert-regulation-layout {
    display: grid;
    grid-template-columns: 511px 378px 378px;
    grid-template-areas: "photo col-primary col-secondary";
    column-gap: 40px;
    row-gap: 10px;
    align-items: start;
    justify-content: flex-start;
    max-width: none;
    width: 100%;
    margin: 0;
  }

  body.page-certification #regulation .cert-regulation-layout__photo {
    display: block;
    grid-area: photo;
    width: 511px;
    max-width: 511px;
    margin-left: -20px;
    line-height: 0;
  }

  body.page-certification #regulation .cert-regulation-layout__photo img {
    display: block;
    width: 511px;
    height: 341px;
    max-width: none;
    object-fit: cover;
    object-position: center 22%;
  }

  body.page-certification #regulation .cert-regulation-layout__col {
    width: 378px;
    max-width: 378px;
    gap: 10px;
  }

  body.page-certification #regulation .cert-regulation-layout__col--secondary {
    margin-left: -7px;
  }
}

/* Figma 1_4_Сертификация_1024 (12625:11034): Rectangle 450 y=227 h=429, gutter 30 */
@media (min-width: 1024px) and (max-width: 1279px) {
  body.page-certification .hero--certification.hero--strip + .section--cert-mandatory,
  body.page-certification .section--cert-mandatory {
    padding-top: 10px;
    padding-bottom: 25px;
  }

  body.page-certification .section--cert-mandatory > .container {
    max-width: 1024px;
    padding-inline: 30px;
    box-sizing: border-box;
  }

  body.page-certification .section--cert-mandatory > .container > h2.section-title.section-title--on-dark {
    font-family: var(--font-heading);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    margin-top: 0;
    margin-bottom: 25px;
    text-align: center;
  }

  body.page-certification .cert-mandatory-layout {
    grid-template-columns: 240px 322px 367px;
    column-gap: 18px;
    row-gap: 24px;
    justify-content: flex-start;
    align-items: start;
  }

  body.page-certification .cert-mandatory-panel__nav {
    gap: 35px;
  }

  body.page-certification .cert-mandatory-panel__nav a {
    min-height: 60px;
    padding: 20px 25px;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
    border: 0;
    box-sizing: border-box;
  }

  body.page-certification .cert-mandatory-panel__nav a.is-active,
  body.page-certification .cert-mandatory-panel__nav a:hover {
    font-weight: 500;
  }

  body.page-certification .cert-mandatory-panel__body,
  body.page-certification .cert-mandatory-panel__features {
    min-height: 250px;
    padding: 15px;
    box-sizing: border-box;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }

  body.page-certification .cert-mandatory-panel__features {
    gap: 10px;
    padding: 15px 15px 15px 35px;
  }

  body.page-certification .cert-mandatory-panel__body p,
  body.page-certification .cert-mandatory-panel__bullets li {
    font-family: var(--font-body-figma);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
  }

  body.page-certification .cert-mandatory-panel__body p {
    margin: 0 0 10px;
  }

  body.page-certification .cert-mandatory-panel__bullets {
    gap: 10px;
  }

  body.page-certification .cert-mandatory-panel__seal img {
    width: 56px;
    height: 55px;
  }

  body.page-certification .cert-mandatory-panel__actions {
    padding-top: 0;
    gap: 20px;
  }

  body.page-certification .cert-mandatory-panel__btn-order.btn.btn--white,
  body.page-certification .cert-mandatory-panel__btn-consult.btn.btn--outline-white {
    min-height: 47px;
    padding: 15px 40px;
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
  }

  body.page-certification .cert-mandatory-panel__btn-order.btn.btn--white {
    color: var(--c-action);
  }

  /* Figma 1_4_1024: «Испытания» 12625:11300–11303 — copy 510px, фото 12625:11299 484×531 */
  body.page-certification #tests.section--cert-tests {
    padding-top: 40px;
    padding-bottom: 56px;
  }

  body.page-certification #tests > .container {
    max-width: 1024px;
    padding-inline: 30px;
    box-sizing: border-box;
    overflow: visible;
  }

  body.page-certification #tests .cert-tests-layout {
    position: relative;
    display: block;
    min-height: 531px;
    max-width: 100%;
  }

  body.page-certification #tests .cert-tests-layout__copy {
    position: relative;
    z-index: 2;
    max-width: 510px;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  body.page-certification #tests .cert-tests-layout__copy .section-title {
    margin: 0 0 40px;
    font-family: var(--font-heading);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
    text-align: left;
  }

  body.page-certification #tests .cert-tests-pill {
    display: inline-flex;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    max-width: 378px;
    margin: 0 0 25px;
    padding: 20px 25px;
    border-radius: 50px;
    background: #fff;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    color: #020203;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }

  body.page-certification #tests .cert-tests-layout__text {
    max-width: 510px;
  }

  body.page-certification #tests .cert-tests-layout__text p {
    margin: 0 0 15px;
    font-family: var(--font-body-figma);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
  }

  body.page-certification #tests .cert-tests-layout__text p:last-child {
    margin-bottom: 0;
  }

  body.page-certification #tests .cert-tests-layout__actions {
    margin-top: 34px;
    gap: 20px;
  }

  body.page-certification #tests .cert-tests-layout__actions .btn {
    min-height: 47px;
    padding: 15px 40px;
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
    border-width: 1px;
  }

  body.page-certification #tests .cert-tests-layout__photo {
    position: absolute;
    top: 0;
    right: -30px;
    width: 484px;
    max-width: calc(100% - 510px - 10px);
    height: 531px;
    margin: 0;
    overflow: hidden;
    z-index: 1;
    pointer-events: none;
  }

  body.page-certification #tests .cert-tests-layout__photo picture,
  body.page-certification #tests .cert-tests-layout__photo img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: 6.67% center;
  }

  /* Figma 1_4_1024: «Услуги ТР» — фото 12625:11332 511×341, пилюли 346px, gap 10 */
  body.page-certification #regulation {
    padding-top: 50px;
    padding-bottom: 56px;
    overflow: visible;
  }

  body.page-certification #regulation > .container {
    max-width: 1024px;
    padding-inline: 30px;
    box-sizing: border-box;
    overflow: visible;
  }

  body.page-certification #regulation .section-title.section-title--center {
    margin-bottom: 50px;
    font-family: var(--font-heading);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
    text-align: center;
  }

  body.page-certification #regulation .cert-regulation-layout-wrap {
    width: 100%;
    max-width: 1024px;
    margin-inline: auto;
    padding-inline: 30px;
    box-sizing: border-box;
    overflow: visible;
  }

  body.page-certification #regulation .cert-regulation-layout {
    display: grid;
    grid-template-columns: 511px 346px 346px;
    grid-template-areas: "photo col-primary col-secondary";
    column-gap: 10px;
    row-gap: 10px;
    align-items: start;
    justify-content: flex-start;
    max-width: none;
    width: 100%;
    margin: 0;
  }

  body.page-certification #regulation .cert-regulation-layout__photo {
    display: block;
    grid-area: photo;
    width: 511px;
    max-width: 511px;
    margin-left: -257px;
    line-height: 0;
  }

  body.page-certification #regulation .cert-regulation-layout__photo img {
    display: block;
    width: 511px;
    height: 341px;
    max-width: none;
    object-fit: cover;
    object-position: center 22%;
  }

  body.page-certification #regulation .cert-regulation-layout__col {
    width: 346px;
    max-width: 346px;
    gap: 10px;
  }

  body.page-certification #regulation .cert-regulation-layout__col--primary {
    grid-area: col-primary;
  }

  body.page-certification #regulation .cert-regulation-layout__col--secondary {
    grid-area: col-secondary;
  }

  body.page-certification #regulation .cert-regulation-pill {
    width: 100%;
    min-height: 60px;
    padding: 20px 25px;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
    box-sizing: border-box;
  }

  body.page-certification #regulation .cert-regulation-pill--accent {
    background: #fff;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }

  body.page-certification #regulation .cert-regulation-pill--muted {
    background: #f5f5f5;
    box-shadow: none;
  }

  body.page-certification #regulation .cert-regulation-pill--two-line {
    align-items: center;
    min-height: 60px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

/* Figma 1_2_Сертификация_1440: Rectangle 450 y=291, заголовок 12625:14459 y=333 */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-certification .hero--certification.hero--strip + .section--cert-mandatory,
  body.page-certification .section--cert-mandatory {
    padding-top: 42px;
    padding-bottom: 72px;
  }

  body.page-certification .section--cert-mandatory > .container > h2.section-title.section-title--on-dark {
    margin-top: 0;
    margin-bottom: 46px;
    font-size: 32px;
    line-height: 1.35;
    text-align: center;
  }
}

/* Figma 1_1_Сертификация_1900 (12625:8952): Rectangle 450 y=291, заголовок 12625:9250 y=374 */
@media (min-width: 1900px) {
  body.page-certification .hero--certification.hero--strip + .section--cert-mandatory,
  body.page-certification .section--cert-mandatory {
    padding-top: 83px;
    padding-bottom: 99px;
  }

  body.page-certification .section--cert-mandatory > .container {
    max-width: 1920px;
    padding-inline: 120px;
    box-sizing: border-box;
  }

  body.page-certification .section--cert-mandatory > .container > h2.section-title.section-title--on-dark {
    font-family: var(--font-heading);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    margin-top: 0;
    margin-bottom: 88px;
    text-align: center;
  }

  body.page-certification .cert-mandatory-layout {
    grid-template-columns: 402px 492px 675px;
    gap: 53px;
    justify-content: flex-start;
    align-items: start;
  }

  body.page-certification .cert-mandatory-panel__nav {
    gap: 44px;
  }

  body.page-certification .cert-mandatory-panel__nav a {
    min-height: 64px;
    padding: 20px 25px;
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
    border: 0;
    box-sizing: border-box;
  }

  body.page-certification .cert-mandatory-panel__nav a.is-active,
  body.page-certification .cert-mandatory-panel__nav a:hover {
    font-weight: 500;
  }

  body.page-certification .cert-mandatory-panel__body,
  body.page-certification .cert-mandatory-panel__features {
    min-height: 268px;
    padding: 25px;
    box-sizing: border-box;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }

  body.page-certification .cert-mandatory-panel__features {
    padding: 25px 25px 25px 50px;
  }

  body.page-certification .cert-mandatory-panel__body p,
  body.page-certification .cert-mandatory-panel__bullets li {
    font-family: var(--font-body-figma);
    font-size: 20px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
  }

  body.page-certification .cert-mandatory-panel__body p {
    margin: 0 0 10px;
  }

  body.page-certification .cert-mandatory-panel__bullets {
    gap: 10px;
  }

  body.page-certification .cert-mandatory-panel__features .cert-mandatory-panel__bullets li::before {
    left: -22px;
    top: 0.35em;
    border-top-width: 6px;
    border-bottom-width: 6px;
    border-left-width: 8px;
  }

  body.page-certification .cert-mandatory-panel__seal img {
    width: 95px;
    height: 94px;
  }

  body.page-certification .cert-mandatory-panel__actions {
    padding-top: 113px;
    gap: 20px;
  }

  body.page-certification .cert-mandatory-panel__btn-order.btn.btn--white,
  body.page-certification .cert-mandatory-panel__btn-consult.btn.btn--outline-white {
    min-height: 47px;
    padding: 15px 40px;
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
  }

  body.page-certification .cert-mandatory-panel__btn-order.btn.btn--white {
    color: var(--c-action);
  }

  /* Figma 1_1_Сертификация_1900: Rectangle 447, title 12625:9178, карточки 275×257 gap 83 */
  body.page-certification #voluntary.section--soft {
    padding-top: 60px;
    padding-bottom: 70px;
  }

  body.page-certification #voluntary > .container {
    max-width: 1920px;
    padding-inline: 120px;
    box-sizing: border-box;
  }

  body.page-certification #voluntary .section-header.section-header--center {
    margin-bottom: 65px;
  }

  body.page-certification #voluntary .section-header .section-title {
    font-family: var(--font-heading);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
    text-align: center;
  }

  body.page-certification #voluntary .cert-voluntary-grid {
    display: grid;
    grid-template-columns: repeat(4, 275px);
    gap: 83px;
    max-width: none;
    width: 100%;
    margin-inline: 0;
    justify-content: center;
  }

  body.page-certification #voluntary .cert-voluntary-card {
    width: 275px;
    min-height: 257px;
    padding: 22px 25px 20px;
    border-top-width: 4px;
    border-top-color: #ed1a34;
    box-sizing: border-box;
  }

  body.page-certification #voluntary .cert-voluntary-card__media {
    min-height: 139px;
    margin-bottom: 0;
  }

  body.page-certification #voluntary .cert-voluntary-card__media img {
    width: 139px;
    height: 139px;
    max-width: 139px;
    max-height: 139px;
  }

  body.page-certification #voluntary .cert-voluntary-card__title {
    margin-top: auto;
    padding-top: 16px;
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    letter-spacing: 0;
    color: #020203;
    text-align: center;
  }

  /* Figma 1_1_Сертификация_1900: Rectangle 447, title 12625:9179, карточки 275×230 gap 83 */
  body.page-certification #transport.section--soft {
    padding-top: 60px;
    padding-bottom: 70px;
  }

  body.page-certification #transport > .container {
    max-width: 1920px;
    padding-inline: 120px;
    box-sizing: border-box;
  }

  body.page-certification #transport .section-header.section-header--center {
    margin-bottom: 65px;
  }

  body.page-certification #transport .section-header .section-title {
    font-family: var(--font-heading);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
    text-align: center;
  }

  body.page-certification #transport .cert-transport-grid {
    display: grid;
    grid-template-columns: repeat(4, 275px);
    gap: 83px;
    max-width: none;
    width: 100%;
    margin-inline: 0;
    justify-content: center;
  }

  body.page-certification #transport .cert-transport-card {
    width: 275px;
    min-height: 230px;
    padding: 0 0 14px;
    border-top-width: 4px;
    border-top-color: #ed1a34;
    box-sizing: border-box;
  }

  body.page-certification #transport .cert-transport-card__media {
    min-height: 197px;
    padding-top: 0;
    margin-bottom: 0;
  }

  body.page-certification #transport .cert-transport-card__media img {
    width: auto;
    height: auto;
    max-width: 199px;
    max-height: 199px;
    object-fit: contain;
  }

  body.page-certification #transport .cert-transport-card__title {
    margin-top: auto;
    padding-top: 12px;
    font-family: var(--font-heading);
    font-size: 24px;
    font-weight: 600;
    line-height: normal;
    letter-spacing: 0;
    color: #020203;
    text-align: center;
  }

  body.page-certification #transport .cert-transport-cta {
    margin-top: 65px;
  }

  body.page-certification #transport .cert-transport-cta .btn {
    min-width: 202px;
    min-height: 47px;
    padding: 15px 40px;
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
  }

  /* Figma 1_1_Сертификация_1900: «Испытания» — copy 891px, photo 853×503, gap 56 */
  body.page-certification #tests.section--cert-tests {
    padding-top: 60px;
    padding-bottom: 102px;
  }

  body.page-certification #tests > .container {
    max-width: 1920px;
    padding-inline: 120px;
    box-sizing: border-box;
  }

  body.page-certification #tests .cert-tests-layout {
    grid-template-columns: 891px 853px;
    gap: 56px;
    align-items: start;
    justify-content: flex-start;
  }

  body.page-certification #tests .cert-tests-layout__copy {
    max-width: 891px;
    width: 891px;
  }

  body.page-certification #tests .cert-tests-layout__copy .section-title {
    margin: 0 0 55px;
    font-family: var(--font-heading);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
    text-align: left;
  }

  body.page-certification #tests .cert-tests-pill {
    margin-bottom: 35px;
    padding: 20px 25px;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    color: #020203;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }

  body.page-certification #tests .cert-tests-layout__text p {
    margin: 0 0 15px;
    font-family: var(--font-body-figma);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
  }

  body.page-certification #tests .cert-tests-layout__text p:last-child {
    margin-bottom: 0;
  }

  body.page-certification #tests .cert-tests-layout__actions {
    margin-top: 60px;
    gap: 20px;
  }

  body.page-certification #tests .cert-tests-layout__actions .btn {
    min-height: 47px;
    padding: 15px 40px;
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
  }

  body.page-certification #tests .cert-tests-layout__photo {
    width: 853px;
    max-width: 853px;
    margin-right: 0;
    justify-self: start;
  }

  body.page-certification #tests .cert-tests-layout__photo picture,
  body.page-certification #tests .cert-tests-layout__photo img {
    width: 853px;
    max-width: 853px;
    height: 503px;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center;
  }

  /* Figma 1_1_Сертификация_1900: фото 864×340 + 2×378 колонки, gap 90/10 */
  body.page-certification #regulation {
    padding-top: 60px;
    padding-bottom: 70px;
    overflow: visible;
  }

  body.page-certification #regulation > .container {
    max-width: 1920px;
    padding-inline: 120px;
    box-sizing: border-box;
    overflow: visible;
  }

  body.page-certification #regulation .section-title.section-title--center {
    margin-bottom: 65px;
    font-family: var(--font-heading);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
    text-align: center;
  }

  body.page-certification #regulation .cert-regulation-layout-wrap {
    width: 100%;
    max-width: 1920px;
    margin-inline: auto;
    overflow: visible;
  }

  body.page-certification #regulation .cert-regulation-layout {
    display: grid;
    grid-template-columns: 864px 378px 378px;
    grid-template-areas: "photo col-primary col-secondary";
    gap: 90px;
    align-items: start;
    justify-content: flex-start;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }

  body.page-certification #regulation .cert-regulation-layout__photo {
    display: block;
    grid-area: photo;
    width: 864px;
    max-width: 864px;
    margin-left: 0;
    line-height: 0;
  }

  body.page-certification #regulation .cert-regulation-layout__photo img {
    display: block;
    width: 864px;
    height: 340px;
    max-width: none;
    object-fit: cover;
    object-position: center 22%;
  }

  body.page-certification #regulation .cert-regulation-layout__col {
    width: 378px;
    max-width: 378px;
    gap: 10px;
  }

  body.page-certification #regulation .cert-regulation-layout__col--primary {
    grid-area: col-primary;
  }

  body.page-certification #regulation .cert-regulation-layout__col--secondary {
    grid-area: col-secondary;
  }

  body.page-certification #regulation .cert-regulation-pill {
    width: 100%;
    min-height: 60px;
    padding: 20px 25px;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    border-radius: 50px;
    box-sizing: border-box;
  }

  body.page-certification #regulation .cert-regulation-pill--accent {
    background: #fff;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }

  body.page-certification #regulation .cert-regulation-pill--muted {
    background: #f5f5f5;
    box-shadow: none;
  }

  body.page-certification #regulation .cert-regulation-pill--two-line {
    align-items: center;
    min-height: 60px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

@media (min-width: 521px) and (max-width: 1023px) {
  .cert-mandatory-layout {
    grid-template-columns: minmax(0, 240px) minmax(0, 1fr);
    grid-template-areas:
      "nav body"
      "features features"
      "actions actions";
  }
}
@media (max-width: 520px) {
  .cert-mandatory-panel__features .cert-mandatory-panel__bullets li::before {
    left: -18px;
  }
  .cert-mandatory-panel__seal img {
    width: 56px;
    height: 55px;
  }
}

.btn--ghost-on-dark {
  border-color: rgba(255, 255, 255, 0.65);
  color: #fff;
}
.btn--ghost-on-dark:hover {
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}
.tile--figma-accent {
  border-top: 4px solid var(--c-accent);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: var(--radius);
  padding: 24px 20px 20px;
}
.tile--figma-accent .tile__title {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 8px;
}
.tile--figma-accent .tile__desc {
  font-size: 14px;
  line-height: 1.45;
  color: var(--c-muted);
}
.tile--figma-accent .tile__arrow {
  margin-top: 12px;
  color: var(--c-brand);
  font-weight: 600;
}

.section--cert-tests {
  padding: var(--section-y) 0;
}

/* Figma 1_2/1_5/1_6: блок «Испытания» — текст слева, фото справа */
#tests .container {
  overflow: visible;
}
#tests .cert-tests-layout {
  display: grid;
  grid-template-columns: minmax(0, 625px) minmax(280px, 1fr);
  gap: clamp(32px, 5vw, 78px);
  align-items: start;
}
#tests .cert-tests-layout__copy {
  max-width: 625px;
}
#tests .cert-tests-layout__copy .section-title {
  margin: 0 0 18px;
  font-size: clamp(24px, 2.2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  text-align: left;
}
#tests .cert-tests-pill {
  display: inline-flex;
  align-items: center;
  margin-bottom: 20px;
  padding: 20px 25px;
  border-radius: 50px;
  background: #fff;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.2;
  color: #020203;
}
#tests .cert-tests-layout__text p {
  margin: 0 0 15px;
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
#tests .cert-tests-layout__text p:last-child {
  margin-bottom: 0;
}
#tests .cert-tests-layout__actions {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 24px;
  gap: 16px;
}
#tests .cert-tests-layout__actions .btn {
  flex: 0 1 auto;
  width: auto;
  min-width: 0;
  min-height: 47px;
  padding: 15px 40px;
  font-size: 14px;
  font-weight: 500;
  border-width: 1px;
}
#tests .cert-tests-layout__actions .btn--ghost {
  background: #fff;
}
#tests .cert-tests-layout__photo {
  position: relative;
  justify-self: end;
  width: min(752px, 100%);
  margin-right: calc(-1 * var(--gutter));
}
#tests .cert-tests-layout__photo picture {
  display: block;
  width: 100%;
}
#tests .cert-tests-layout__photo img {
  width: 100%;
  max-width: 752px;
  height: auto;
  aspect-ratio: 752 / 535;
  object-fit: cover;
  object-position: center;
  border-radius: 0;
  display: block;
}

/* Figma 1_4_1024 / 1_3_1280: текст слева, портретное фото справа (не /certification/ — там свои MCP-кадры) */
@media (min-width: 768px) and (max-width: 799px),
(min-width: 1024px) and (max-width: 1279px) {
  body:not(.page-certification) #tests .cert-tests-layout {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 36%);
    column-gap: clamp(16px, 2.5vw, 32px);
    align-items: start;
  }
  body:not(.page-certification) #tests .cert-tests-layout__copy {
    max-width: none;
  }
  body:not(.page-certification) #tests .cert-tests-layout__copy .section-title {
    text-align: left;
  }
  body:not(.page-certification) #tests .cert-tests-layout__photo {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
    justify-self: end;
    width: 100%;
    margin-right: calc(-1 * var(--gutter));
    overflow: hidden;
  }
  body:not(.page-certification) #tests .cert-tests-layout__photo picture,
  body:not(.page-certification) #tests .cert-tests-layout__photo img {
    width: 100%;
    max-width: none;
    height: auto;
    min-height: 0;
    flex: none;
    aspect-ratio: 595 / 842;
    max-height: min(842px, 72vh);
    object-fit: cover;
    object-position: center 42%;
  }
  body:not(.page-certification) #tests .cert-tests-layout__actions {
    margin-top: 24px;
  }
}

@media (min-width: 1280px) {
  #tests .cert-tests-layout {
    grid-template-columns: minmax(0, 625px) minmax(280px, 1fr);
    align-items: start;
  }
  #tests .cert-tests-layout__photo {
    align-self: start;
  }
  #tests .cert-tests-layout__photo img {
    height: auto;
    min-height: 0;
    aspect-ratio: 752 / 535;
  }
}

@media (max-width: 767px) {
  #tests .cert-tests-layout {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  #tests .cert-tests-layout__copy {
    max-width: none;
  }
  #tests .cert-tests-layout__copy .section-title {
    text-align: center;
  }
  #tests .cert-tests-pill {
    max-width: 340px;
  }
  #tests .cert-tests-layout__photo {
    justify-self: stretch;
    width: 100%;
    margin-right: 0;
  }
  #tests .cert-tests-layout__photo img {
    max-width: none;
    aspect-ratio: 376 / 267;
  }
  #tests .cert-tests-layout__actions {
    flex-direction: column;
    align-items: stretch;
  }
  #tests .cert-tests-layout__actions .btn {
    width: 100%;
  }
}

.callout--pill {
  display: inline-block;
  margin-bottom: 16px;
  padding: 8px 16px;
  border-radius: 999px;
  background: var(--c-brand-light);
  color: var(--c-brand);
  font-size: 13px;
  font-weight: 600;
}

/* Figma 6_2_Наука: Rectangle 440 #f5f5f5 + текст слева, фото 13189:44892 справа */
.science-research {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 32px;
  align-items: start;
}
.science-research__title {
  margin: 0 0 35px;
  max-width: 631px;
  font-family: var(--font-ui);
  font-size: clamp(22px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
.science-research__copy p {
  margin: 0 0 15px;
  max-width: 629px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}
.science-research__copy p:last-child {
  margin-bottom: 0;
}
.science-research__art {
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: none;
  height: auto;
  min-height: 0;
}
.section--science-research {
  background: #f5f5f5;
  padding-top: 0;
  padding-bottom: 0;
  overflow: hidden;
}
.section--science-quote {
  padding-top: clamp(40px, 4vw, 56px);
  padding-bottom: clamp(24px, 3vw, 40px);
}
body:not(.page-home) .hero--science + .section--science-quote {
  padding-top: clamp(32px, 3vw, 48px);
}
.split-row--science-ckp {
  grid-template-columns: minmax(200px, 359px) minmax(0, 629px);
  gap: 139px;
  align-items: center;
  justify-content: center;
  max-width: 1127px;
  margin-inline: auto;
}
.science-ckp__title {
  margin: 0 0 35px;
  max-width: 532px;
  font-family: var(--font-ui);
  font-size: clamp(24px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
.split-row--science-ckp p {
  margin: 0 0 45px;
  max-width: 629px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}
.split-row--science-ckp .btn--primary {
  min-width: 146px;
}
.science-research__art img {
  position: absolute;
  inset: 0 auto auto 0;
  display: block;
  width: 108.37%;
  max-width: none;
  height: 100%;
  margin: 0;
  object-fit: cover;
  object-position: 8.36% center;
  transform: translateX(-8.36%);
}
@media (min-width: 768px) {
  .science-research {
    grid-template-columns: minmax(0, 631px) minmax(0, 1fr);
    gap: 43px;
    align-items: start;
    justify-content: stretch;
    max-width: none;
    width: 100%;
    margin-inline: 0;
  }
  .science-research__title {
    font-size: 28px;
    max-width: 631px;
    margin-bottom: 35px;
  }
  .science-research__copy {
    min-width: 0;
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .science-research__copy p {
    max-width: 629px;
  }
  .science-research__art {
    width: 100%;
    max-width: none;
    min-width: 0;
    height: auto;
    aspect-ratio: 730 / 445;
    justify-self: stretch;
    align-self: start;
  }
}
@media (max-width: 767px) {
  .section--science-research {
    padding-top: 40px;
    padding-bottom: 40px;
    overflow: visible;
  }
  .science-research {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }
  .science-research__copy {
    padding-top: 0;
    padding-bottom: 0;
  }
  .science-research__title {
    max-width: none;
    margin-bottom: 20px;
    font-size: clamp(22px, 5.5vw, 28px);
  }
  .science-research__copy p {
    max-width: none;
  }
  .science-research__art {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    height: auto;
    aspect-ratio: 375 / 229;
  }
}

/* Устаревший CTA под НИР — в макете 6_2 нет; скрыть, если отдаётся из кэша */
.science-nir-cta {
  display: none !important;
}

/* Наука — НИР: pill-строки + иллюстрация (Figma 6_2_Наука_1440) */
.section--science-nir {
  background: #f5f5f5;
  padding-top: clamp(40px, 4vw, 60px);
  padding-bottom: clamp(48px, 5vw, 72px);
}
.science-nir__title {
  margin: 0 auto clamp(48px, 5vw, 70px);
  max-width: 727px;
  text-align: center;
  font-family: var(--font-ui);
  font-size: clamp(24px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
.science-nir {
  display: grid;
  grid-template-columns: minmax(0, 580px) minmax(0, 555px);
  gap: 61px;
  align-items: start;
  justify-content: center;
  max-width: 1196px;
  margin-inline: auto;
}
.science-nir__accordions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  max-width: 580px;
}
.science-nir__item {
  background: #fff;
  border-radius: 50px;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  overflow: hidden;
}
.science-nir__item[open] {
  border-radius: 35px;
}
.science-nir__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  min-height: 60px;
  padding: 20px 25px;
  list-style: none;
  cursor: pointer;
}
.science-nir__summary::-webkit-details-marker {
  display: none;
}
.science-nir__summary::marker {
  content: "";
}
.science-nir__summary-title {
  flex: 1 1 auto;
  min-width: 0;
  font-family: var(--font-ui);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}
.science-nir__item[open] .science-nir__summary-title {
  font-weight: 600;
}
.science-nir__chev {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  background: url("img/about/l3-link-arrow-figma.svg") center / 6.273px 14px no-repeat;
  transform: rotate(90deg);
  transition: transform 0.2s ease;
}
.science-nir__item[open] .science-nir__chev {
  transform: rotate(-90deg);
}
.science-nir__body {
  padding: 0 25px 25px;
}
.science-nir__list {
  margin: 0;
  padding: 0 0 0 17px;
  list-style: disc;
  font-family: var(--font-ui);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}
.science-nir__list li {
  margin: 0 0 15px;
  padding: 0;
}
.science-nir__list li:last-child {
  margin-bottom: 0;
}
.science-nir__links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  max-width: 580px;
}
.science-nir__links li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.science-nir__links ul {
  list-style: none;
  margin: 10px 0 0;
  padding: 0 0 0 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.science-nir__pill {
  display: flex;
  align-items: center;
  min-height: 60px;
  padding: 20px 52px 20px 25px;
  background: #fff;
  border: none;
  border-radius: 50px;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  font-family: var(--font-ui);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
  text-decoration: none;
  position: relative;
  transition: box-shadow var(--transition), color var(--transition);
  width: 100%;
  max-width: 580px;
}
.science-nir__pill::after {
  content: "";
  position: absolute;
  right: 25px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid var(--c-brand);
  border-bottom: 2px solid var(--c-brand);
  transform: translateY(-60%) rotate(-45deg);
}
.science-nir__pill:hover {
  color: var(--c-brand);
  box-shadow: 0 4px 16px rgba(57, 59, 65, 0.14);
}
.science-nir__actions {
  margin-top: 60px;
  gap: 20px;
  flex-wrap: wrap;
}
.science-nir__actions .btn--primary {
  min-width: 182px;
}
.science-nir__actions .btn--ghost {
  min-width: 165px;
}
.science-nir__art img {
  width: 100%;
  max-width: 555px;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  display: block;
  margin-inline: auto;
}
@media (max-width: 1024px) and (min-width: 769px) {
  .science-nir {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 373px);
    gap: 28px;
  }
  .science-nir__art img {
    max-width: 373px;
  }
}
@media (max-width: 768px) {
  .science-nir {
    grid-template-columns: 1fr;
    max-width: 580px;
    justify-items: center;
  }
  .science-nir__aside {
    order: 1;
    width: 100%;
    max-width: 580px;
  }
  .science-nir__art {
    order: 0;
    width: 100%;
  }
  .science-nir__art img {
    margin-inline: auto;
    max-width: min(310px, 88vw);
  }
  .science-nir__accordions {
    max-width: 100%;
  }
  .science-nir__item:not([open]) {
    border-radius: 100px;
  }
  .science-nir__summary {
    align-items: flex-start;
    min-height: 0;
    padding: 20px 25px;
  }
  .science-nir__summary-title {
    font-size: 16px;
    line-height: normal;
  }
  .science-nir__item[open] {
    border-radius: 35px;
  }
  .science-nir__body {
    padding: 0 25px 25px;
  }
  .science-nir__list {
    font-size: 16px;
    padding-left: 17px;
  }
}

/* Figma 4_2: подписка на дайджест — тёмный баннер */
.cta-banner--media-subscribe {
  align-items: center;
  text-align: left;
  background: linear-gradient(135deg, #001a45 0%, #002864 55%, #003d7a 100%);
  color: #fff;
  border-radius: var(--radius-lg);
  padding: 40px 48px;
  grid-template-columns: 1fr auto;
  gap: 24px 32px;
  min-height: 0;
}
.cta-banner--media-subscribe::before {
  display: none;
}
.cta-banner--media-subscribe .section-title {
  margin: 0 0 8px;
  color: #fff;
  font-size: clamp(22px, 2.2vw, 30px);
}
.cta-banner--media-subscribe p {
  margin: 0;
  color: rgba(255, 255, 255, 0.88);
  max-width: 640px;
  line-height: 1.5;
}
.cta-banner--media-subscribe .cta-banner__actions {
  margin-top: 0;
  align-self: center;
}
body.page-media #subscribe {
  padding-top: var(--section-y-compact);
  padding-bottom: var(--section-y);
}

/* --- certification / education design-perfect (Figma 1_2 / 2_2 @1440) --- */
body:not(.page-home) .hero--certification.hero--strip .hero__inner {
  grid-template-columns: 1fr;
}
.cert-voluntary-card,
.cert-transport-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-decoration: none;
  color: inherit;
  min-height: 257px;
}

/* Figma: #voluntary — 4 отдельные карточки с красной полосой сверху */
#voluntary.section--soft {
  background: #f5f5f5;
}
#voluntary .section-header {
  margin-bottom: 28px;
}
#voluntary .section-title {
  font-size: clamp(24px, 2.2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
}
#voluntary .cert-voluntary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  max-width: 1200px;
  margin-inline: auto;
}
#voluntary .cert-voluntary-card {
  background: #fff;
  border-top: 4px solid #ed1a34;
  border-radius: 0;
  box-shadow: none;
  padding: 12px 10px 18px;
  min-height: 211px;
  justify-content: flex-start;
  transition: transform var(--transition), box-shadow var(--transition);
}
#voluntary .cert-voluntary-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(57, 59, 65, 0.08);
}
#voluntary .cert-voluntary-card__media {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 120px;
  margin-bottom: 0;
}
#voluntary .cert-voluntary-card__media img {
  max-width: 110px;
  max-height: 110px;
  object-fit: contain;
}
#voluntary .cert-voluntary-card__title {
  margin-top: auto;
  padding-top: 10px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
}
@media (min-width: 1280px) {
  #voluntary .cert-voluntary-grid {
    gap: 33px;
  }
  #voluntary .cert-voluntary-card {
    min-height: 257px;
    padding: 16px 12px 22px;
  }
  #voluntary .cert-voluntary-card__media {
    min-height: 160px;
  }
  #voluntary .cert-voluntary-card__media img {
    max-width: 140px;
    max-height: 140px;
  }
  #voluntary .cert-voluntary-card__title {
    font-size: 20px;
  }
}
@media (max-width: 680px) {
  #voluntary .cert-voluntary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 7px;
  }
  #voluntary .cert-voluntary-card {
    min-height: 211px;
  }
  #voluntary .cert-voluntary-card__media img {
    max-width: 110px;
    max-height: 110px;
  }
}

/* Figma: #transport — 4 карточки на сером фоне, ниже по высоте чем voluntary */
#transport.section--soft {
  background: #f5f5f5;
}
#transport .section-header {
  margin-bottom: 28px;
}
#transport .section-title {
  font-size: clamp(24px, 2.2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
}
#transport .cert-transport-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  max-width: 1200px;
  margin-inline: auto;
}
#transport .cert-transport-card {
  background: #fff;
  border-top: 4px solid #ed1a34;
  border-radius: 0;
  box-shadow: none;
  padding: 8px 10px 14px;
  min-height: 178px;
  justify-content: flex-start;
  transition: transform var(--transition), box-shadow var(--transition);
}
#transport .cert-transport-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(57, 59, 65, 0.08);
}
#transport .cert-transport-card__media {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 110px;
  margin-bottom: 0;
}
#transport .cert-transport-card__media img {
  max-width: 136px;
  max-height: 136px;
  object-fit: contain;
}
#transport .cert-transport-card__title {
  margin-top: auto;
  padding-top: 8px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
}
#transport .cert-transport-cta {
  margin-top: 28px;
  text-align: center;
}
#transport .cert-transport-cta .btn {
  min-height: 47px;
  padding: 15px 40px;
  font-size: 14px;
  font-weight: 500;
}
@media (min-width: 1280px) {
  #transport .cert-transport-grid {
    gap: 33px;
  }
  #transport .cert-transport-card {
    min-height: 230px;
    padding: 10px 12px 16px;
  }
  #transport .cert-transport-card__media {
    min-height: 150px;
  }
  #transport .cert-transport-card__media img {
    max-width: 197px;
    max-height: 197px;
  }
  #transport .cert-transport-card__title {
    font-size: 20px;
  }
}
@media (max-width: 680px) {
  #transport .cert-transport-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 7px;
  }
  #transport .cert-transport-card {
    min-height: 178px;
  }
}

.cert-voluntary-card__media,
.cert-transport-card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 160px;
  margin-bottom: 12px;
}
.cert-voluntary-card__media img,
.cert-transport-card__media img {
  max-width: 140px;
  max-height: 140px;
  object-fit: contain;
}
.cert-voluntary-card__title,
.cert-transport-card__title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}
.tile--figma-accent .tile__desc,
.tile--figma-accent .tile__arrow,
.cert-voluntary-card .tile__desc,
.cert-transport-card .tile__desc {
  display: none;
}
.cert-transport-cta {
  margin-top: 32px;
  text-align: center;
}

/* Figma 1_2/1_5/1_6: «Услуги в области технического регулирования» */
#regulation .section-title {
  font-size: clamp(24px, 2.2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  margin-bottom: 28px;
}
#regulation .cert-regulation-layout__photo {
  display: none;
}
#regulation .cert-regulation-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-areas: "col-primary col-secondary";
  gap: 10px;
  align-items: start;
  margin-top: 0;
}
#regulation .cert-regulation-layout__col {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#regulation .cert-regulation-layout__col--primary {
  grid-area: col-primary;
}
#regulation .cert-regulation-layout__col--secondary {
  grid-area: col-secondary;
}
#regulation .cert-regulation-pill {
  display: flex;
  align-items: center;
  min-height: 60px;
  padding: 20px 25px;
  border-radius: 50px;
  color: #020203;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
  text-decoration: none;
  transition: transform var(--transition), box-shadow var(--transition), background var(--transition);
}
#regulation .cert-regulation-pill--accent {
  background: #fff;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}
#regulation .cert-regulation-pill--muted {
  background: #f5f5f5;
  box-shadow: none;
}
#regulation .cert-regulation-pill--accent:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(57, 59, 65, 0.12);
}
#regulation .cert-regulation-pill--muted:hover {
  background: #ebebeb;
}
@media (min-width: 1280px) {
  #regulation .cert-regulation-layout {
    grid-template-columns: minmax(0, 378px) minmax(0, 378px);
    gap: 33px;
    justify-content: center;
    max-width: 789px;
    margin-inline: auto;
  }
}
@media (min-width: 1440px) {
  body.page-certification #regulation .cert-regulation-layout {
    max-width: none;
    margin-inline: 0;
    justify-content: flex-start;
  }
}
@media (max-width: 680px) {
  #regulation .cert-regulation-layout {
    grid-template-columns: 1fr;
    grid-template-areas:
      "col-primary"
      "col-secondary";
    gap: 10px;
  }
}

/* Figma 1_5: новости ТР — full-bleed баннер + карусель на сером фоне */
#tr-news.section--cert-tr-news {
  padding: 0;
  margin: 0;
}
#tr-news .cert-tr-news__banner {
  width: 100%;
  max-width: 100vw;
  margin: 0;
  padding: 0;
  line-height: 0;
  overflow: hidden;
}
#tr-news .cert-tr-news__banner img {
  width: 100%;
  height: clamp(160px, 33.5vw, 268px);
  object-fit: cover;
  object-position: center;
  display: block;
}
#tr-news .cert-tr-news__inner {
  background: #f4f6fa;
  padding-top: clamp(28px, 4vw, 40px);
  padding-bottom: clamp(40px, 5vw, 64px);
}
#tr-news .section-header {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
  margin-bottom: clamp(24px, 4vw, 36px);
}
#tr-news .section-header .section-link {
  display: none;
}
#tr-news .section-title {
  font-size: clamp(22px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  margin-inline: auto;
}
#tr-news .news-showcase .h-slider__track > .news-card {
  border: 0;
  border-top: 0;
  border-radius: 0;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  background: #fff;
}
#tr-news .news-card:hover {
  box-shadow: 0 4px 20px rgba(57, 59, 65, 0.14);
  border-color: transparent;
}
#tr-news .news-card__img {
  aspect-ratio: auto;
  max-height: none;
  height: 220px;
  flex-shrink: 0;
  background: #dfe5eb;
  margin: 0;
  padding: 0;
}
#tr-news .news-card__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
#tr-news .news-card__body {
  padding: 25px;
  display: flex;
  flex-direction: column;
  gap: 15px;
  flex: 1 1 auto;
}
#tr-news .news-card__title {
  font-size: 16px;
  margin-bottom: 8px;
}
#tr-news .news-card__excerpt {
  font-size: 14px;
  line-height: 1.32;
  color: #393b41;
}
#tr-news .news-card__more {
  margin-top: auto;
  padding-top: 10px;
  color: #0088cc;
}
#tr-news .news-showcase.h-slider {
  position: relative;
  padding-inline: 0;
  margin: 0;
  overflow: visible;
}
#tr-news .news-showcase .h-slider__track {
  gap: 10px;
  scroll-snap-type: x mandatory;
  align-items: stretch;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  padding-bottom: 4px;
}
#tr-news .news-showcase .h-slider__track::-webkit-scrollbar {
  display: none;
}
#tr-news .news-showcase .h-slider__track > .news-card {
  flex: 0 0 min(300px, calc(100vw - 2 * var(--gutter) - 10px));
  width: min(300px, calc(100vw - 2 * var(--gutter) - 10px));
  max-width: 378px;
  scroll-snap-align: start;
  min-height: 432px;
}
#tr-news .news-showcase .h-slider__nav {
  display: none;
  top: 42%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
}
#tr-news .news-showcase .h-slider__nav--prev {
  left: 0;
}
#tr-news .news-showcase .h-slider__nav--next {
  right: 0;
}
#tr-news .news-showcase .h-slider__hint {
  display: none;
}
@media (min-width: 1280px) {
  #tr-news .cert-tr-news__banner img {
    height: 268px;
  }
  #tr-news .news-showcase .h-slider__nav {
    display: flex;
  }
  #tr-news .news-showcase .h-slider__track {
    gap: 33px;
  }
  #tr-news .news-showcase .h-slider__track > .news-card {
    flex: 0 0 378px;
    width: 378px;
    min-height: 487px;
  }
  .section--inner-partners .partners-showcase.h-slider {
    padding-inline: 0 58px;
    overflow: visible;
  }
  .section--inner-partners .partners-showcase .h-slider__track {
    gap: 40px;
  }
  .section--inner-partners .partners-showcase .h-slider__nav {
    display: flex;
    width: 50px;
    height: 50px;
  }
}
@media (min-width: 1900px) {
  /* Figma 1_1_Сертификация_1900: title 12625:9055, карточки 378×487 gap 33, стрелка 12625:9056 */
  body.page-certification #tr-news .cert-tr-news__inner {
    padding-top: 60px;
    padding-bottom: 70px;
  }
  body.page-certification #tr-news .cert-tr-news__inner > .container {
    max-width: 1920px;
    padding-inline: 120px;
    overflow: visible;
  }
  body.page-certification #tr-news .section-header {
    margin-bottom: 65px;
  }
  body.page-certification #tr-news .section-title {
    font-size: 32px;
    line-height: 1.35;
    font-weight: 600;
    color: #020203;
  }
  body.page-certification #tr-news .cert-tr-news__showcase {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0 58px 0 0;
    box-sizing: border-box;
  }
  body.page-certification #tr-news .news-showcase .h-slider__track {
    gap: 33px;
    width: 100%;
    max-width: none;
  }
  body.page-certification #tr-news .news-showcase .h-slider__track > .news-card {
    flex: 0 0 378px;
    width: 378px;
    min-height: 487px;
  }
  body.page-certification #tr-news .news-card__img {
    height: 220px;
  }
  body.page-certification #tr-news .news-card__title {
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
  }
  body.page-certification #tr-news .news-card__excerpt {
    font-size: 16px;
    line-height: 1.3;
    max-height: calc(1.3em * 4);
  }
  body.page-certification #tr-news .news-showcase .h-slider__nav {
    display: flex;
    width: 50px;
    height: 50px;
  }
  body.page-certification #tr-news .news-showcase .h-slider__nav--next {
    right: 0;
  }
  body.page-certification #tr-news .news-showcase .h-slider__nav--prev {
    left: 0;
    display: none;
  }

  /* Figma 12625:9485 / Frame 751: полоса логотипов gap 40, h=60, стрелка 12625:9486 */
  body.page-certification .section--inner-partners {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  body.page-certification .section--inner-partners > .container {
    max-width: 1920px;
    padding-inline: 120px;
    overflow: visible;
  }
  body.page-certification .section--inner-partners .section-header {
    margin-bottom: 48px;
  }
  body.page-certification .section--inner-partners .section-title {
    font-size: 32px;
    line-height: 1.35;
    font-weight: 600;
    color: #020203;
  }
  body.page-certification .section--inner-partners .partners-showcase.h-slider {
    padding: 0 58px 0 0;
    margin: 0;
    width: 100%;
    max-width: none;
    overflow: visible;
  }
  body.page-certification .section--inner-partners .partners-showcase .h-slider__track {
    gap: 40px;
    width: 100%;
    max-width: none;
    scroll-padding-inline: 0;
  }
  body.page-certification .section--inner-partners .partners__slide {
    min-height: 60px;
    padding: 0;
  }
  body.page-certification .section--inner-partners .partners__slide--inner-logo img {
    filter: none;
    opacity: 1;
  }
  body.page-certification .section--inner-partners .partners-showcase .h-slider__nav {
    display: flex;
    width: 50px;
    height: 50px;
    top: 50%;
    transform: translateY(-50%);
  }
  body.page-certification .section--inner-partners .partners-showcase .h-slider__nav--next {
    right: 0;
  }
  body.page-certification .section--inner-partners .partners-showcase .h-slider__nav--prev {
    left: 0;
    display: none;
  }
}
.section-title--center {
  text-align: center;
}
/* Figma 2_2: #arm — Экосистема (белый фон, 484×484 + текст справа) */
#arm.section--edu-arm {
  background: #fff;
}
#arm {
  padding-top: clamp(40px, 5vw, 64px);
  padding-bottom: clamp(48px, 6vw, 80px);
}
#arm .edu-arm-layout {
  display: grid;
  grid-template-columns: minmax(220px, 42%) minmax(0, 1fr);
  gap: clamp(24px, 3.5vw, 48px);
  align-items: center;
}
#arm .edu-arm-layout__art {
  display: flex;
  justify-content: center;
  align-items: center;
}
#arm .edu-arm-layout__art img {
  width: 100%;
  max-width: 484px;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  display: block;
}
#arm .edu-arm-layout__title {
  margin: 0 0 25px;
  font-size: clamp(22px, 2.8vw, 32px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
  max-width: 634px;
}
#arm .edu-arm-layout__title-line {
  display: block;
}
#arm .edu-arm-layout__copy p {
  margin: 0 0 16px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
  max-width: 861px;
}
#arm .edu-arm-layout__copy p:last-of-type {
  margin-bottom: clamp(28px, 4vw, 53px);
}
#arm .edu-arm-layout__cta {
  min-width: min(298px, 100%);
  justify-content: center;
}
@media (min-width: 1280px) {
  #arm .edu-arm-layout {
    grid-template-columns: minmax(280px, 484px) minmax(0, 1fr);
    gap: clamp(48px, 5vw, 95px);
    align-items: center;
  }
  #arm .edu-arm-layout__title {
    font-size: clamp(28px, 2.2vw, 32px);
    max-width: 634px;
    margin-bottom: 25px;
  }
  #arm .edu-arm-layout__copy p {
    max-width: min(861px, 100%);
  }
}
@media (max-width: 599px) {
  #arm .edu-arm-layout {
    grid-template-columns: 1fr;
    gap: 24px;
    text-align: center;
  }
  #arm .edu-arm-layout__title,
  #arm .edu-arm-layout__copy p {
    margin-inline: auto;
  }
  #arm .edu-arm-layout__cta {
    width: 100%;
    max-width: 298px;
    margin-inline: auto;
  }
}
/* Figma 2_2: #certification — серый фон, заголовок слева, фото справа на всю высоту */
#certification.section--edu-personnel {
  background: #f5f5f5;
}
#certification {
  padding-top: clamp(40px, 5vw, 60px);
  padding-bottom: clamp(48px, 6vw, 72px);
}
#certification .edu-personnel-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 48%);
  grid-template-rows: auto auto;
  column-gap: clamp(24px, 4vw, 41px);
  row-gap: clamp(20px, 3vw, 35px);
  align-items: start;
}
#certification .edu-personnel-grid__title {
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 600;
  line-height: 1.2;
  color: var(--c-text);
  max-width: 393px;
}
#certification .edu-personnel-grid__copy {
  grid-column: 1;
  grid-row: 2;
  max-width: 605px;
}
#certification .edu-personnel-grid__copy p {
  margin: 0 0 clamp(20px, 3vw, 32px);
  font-size: 16px;
  line-height: 1.4;
  color: var(--c-text);
}
#certification .edu-personnel-grid__actions {
  flex-wrap: wrap;
  gap: 16px;
}
#certification .edu-personnel-grid__actions .btn--primary {
  min-width: min(165px, 100%);
}
#certification .edu-personnel-grid__actions .btn--ghost {
  min-width: min(260px, 100%);
  background: #fff;
}
#certification .edu-personnel-grid__photo {
  grid-column: 2;
  grid-row: 1 / -1;
  align-self: start;
}
#certification .edu-personnel-grid__photo img {
  width: 100%;
  max-width: 674px;
  height: auto;
  aspect-ratio: 674 / 414;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 0;
}
@media (min-width: 1280px) {
  #certification .edu-personnel-grid {
    grid-template-columns: minmax(0, 605px) minmax(0, 674px);
    justify-content: space-between;
  }
}
@media (max-width: 599px) {
  #certification .edu-personnel-grid {
    grid-template-columns: 1fr;
    grid-template-areas:
      "photo"
      "title"
      "copy";
    row-gap: 20px;
  }
  #certification .edu-personnel-grid__photo {
    grid-area: photo;
    grid-row: auto;
    grid-column: auto;
  }
  #certification .edu-personnel-grid__title {
    grid-area: title;
    max-width: none;
  }
  #certification .edu-personnel-grid__copy {
    grid-area: copy;
    max-width: none;
  }
  #certification .edu-personnel-grid__photo img {
    max-width: none;
    aspect-ratio: 375 / 230;
  }
  #certification .edu-personnel-grid__actions {
    flex-direction: column;
    align-items: stretch;
  }
  #certification .edu-personnel-grid__actions .btn {
    width: 100%;
    justify-content: center;
  }
}

/* Figma 2_2: #conferences — карусель «Мероприятия» 378×422 */
#conferences.section--edu-conferences {
  padding-top: clamp(40px, 5vw, 56px);
  padding-bottom: clamp(48px, 6vw, 72px);
  background: #fff;
}
#conferences .section-header--conferences {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  margin-bottom: clamp(24px, 4vw, 40px);
}
#conferences .section-header--conferences .section-title {
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 600;
  line-height: 1.2;
  max-width: 553px;
  text-wrap: balance;
}
#conferences .conferences-showcase.h-slider {
  position: relative;
  padding-inline: clamp(40px, 5vw, 56px);
  margin: 0;
}
#conferences .conferences-showcase .h-slider__track {
  gap: 33px;
  scroll-snap-type: x proximity;
  align-items: stretch;
}
#conferences .conferences-showcase .h-slider__track > .event-card--media {
  flex: 0 0 min(378px, calc(100vw - 96px));
  width: min(378px, calc(100vw - 96px));
  max-width: 378px;
  min-height: 422px;
  scroll-snap-align: start;
  border-radius: 0;
}
#conferences .conferences-showcase .event-card--media .event-card__cover {
  aspect-ratio: 378 / 240;
  max-height: 240px;
}
#conferences .conferences-showcase .event-card--media .event-card__title {
  font-size: clamp(16px, 2vw, 18px);
  font-weight: 600;
}
#conferences .conferences-showcase .h-slider__nav {
  display: flex;
  width: 50px;
  height: 50px;
}
#conferences .conferences-showcase .h-slider__nav--prev {
  left: 0;
}
#conferences .conferences-showcase .h-slider__nav--next {
  right: 0;
}

/* Обучение: карточки «Мероприятия» по Figma 2_5_800 (300×369) */
body.page-education #conferences .event-card--edu-conf {
  border: 0;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}
body.page-education #conferences .event-card--edu-conf .event-card__cover {
  aspect-ratio: auto;
  height: 175px;
  max-height: 175px;
  background: #e8ecf0;
}
body.page-education #conferences .event-card--edu-conf .event-card__cover img {
  object-fit: cover;
  object-position: center;
}
body.page-education #conferences .event-card--edu-conf .event-card__body {
  padding: 15px 15px 20px;
  gap: 10px;
}
body.page-education #conferences .event-card--edu-conf .event-card__tag {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 270px;
  padding: 5px;
  background: #f1f1f1;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #ed1a34;
}
body.page-education #conferences .event-card--edu-conf .event-card__title {
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  color: #020203;
}
body.page-education #conferences .event-card--edu-conf .event-card__when {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  color: #020203;
}
body.page-education #conferences .event-card--edu-conf .event-card__place {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
  margin-top: 0;
}

@media (max-width: 599px) {
  #conferences .conferences-showcase.h-slider {
    padding-inline: 0;
  }
  #conferences .conferences-showcase .h-slider__track > .event-card--media {
    flex: 0 0 min(320px, 88vw);
    width: min(320px, 88vw);
    min-height: 380px;
  }
  #conferences .conferences-showcase .h-slider__nav {
    width: 44px;
    height: 44px;
  }
}

/* Figma 2_2: #publications — выпуски + карточки «Публикации» 370×150 */
#publications.section--edu-publications {
  background: #f5f5f5;
}
#publications {
  padding-top: clamp(40px, 5vw, 56px);
  padding-bottom: clamp(48px, 6vw, 72px);
}
#publications .section-header--publications {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  margin-bottom: clamp(24px, 4vw, 40px);
}
#publications .section-header--publications .section-title {
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 600;
  line-height: 1.2;
  max-width: 515px;
  text-wrap: balance;
}
#publications .edu-pub-layout {
  display: grid;
  grid-template-columns: minmax(260px, 378px) minmax(0, 1fr);
  gap: clamp(24px, 4vw, 48px);
  align-items: start;
}
#publications .edu-pub-layout__issues-title {
  margin: 0 0 16px;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--c-text);
}
#publications .edu-pub-issues {
  list-style: none;
  margin: 0 0 20px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#publications .edu-pub-issue {
  display: flex;
  align-items: center;
  min-height: 60px;
  padding: 16px 25px;
  background: #fff;
  border-radius: 50px;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
  color: var(--c-text);
  text-decoration: none;
  transition: box-shadow 0.2s;
}
#publications .edu-pub-issue:hover {
  box-shadow: 0 0 16px rgba(57, 59, 65, 0.16);
}
#publications .edu-pub-layout__cta {
  width: 100%;
  max-width: 378px;
  justify-content: center;
}
#publications .edu-pub-grid--list,
#publications .edu-pub-grid.edu-pub-grid--list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  max-width: 346px;
}
#publications.section--edu-publications .edu-pub-grid.edu-pub-grid--list .edu-pub-card {
  width: 100%;
  max-width: none;
}
#publications .edu-pub-card {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  min-height: 90px;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.2s;
}
#publications .edu-pub-grid--list .edu-pub-card {
  min-height: 90px;
}
#publications .edu-pub-card:hover {
  opacity: 0.92;
}
#publications .edu-pub-card__cover {
  flex-shrink: 0;
  width: 64px;
  height: 90px;
  overflow: hidden;
  background: #e8ecf2;
  box-shadow: 0 2px 8px rgba(57, 59, 65, 0.08);
}
#publications .edu-pub-card__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
#publications .edu-pub-card__body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1 1 0;
  min-width: 0;
  padding-top: 4px;
}
#publications .edu-pub-card__tag {
  align-self: flex-start;
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #ed1a34;
  background: #f3f3f3;
  padding: 5px;
  border-radius: 5px;
}
#publications .edu-pub-card__title {
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  color: var(--c-text);
}
#publications .edu-pub-card__title-line {
  display: block;
}
body.page-education #publications .edu-pub-card__body {
  padding-top: 0;
}
@media (min-width: 1280px) {
  body.page-education #publications .section-header--publications .section-link {
    display: none;
  }
  body.page-education #publications .section-header--publications {
    margin-bottom: 60px;
    text-align: center;
  }
  body.page-education #publications .section-header--publications .section-title {
    font-family: var(--font-heading);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    max-width: 515px;
    margin-inline: auto;
    color: #020203;
  }
  body.page-education #publications .edu-pub-layout {
    grid-template-columns: 378px minmax(0, 1fr);
    gap: 50px;
    align-items: start;
  }
  body.page-education #publications .edu-pub-layout__issues-title {
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 35px;
    color: #020203;
  }
  body.page-education #publications .edu-pub-issues {
    margin-bottom: 10px;
    gap: 10px;
  }
  body.page-education #publications .edu-pub-issue {
    min-height: 60px;
    padding: 20px 25px;
    font-family: var(--font-ui);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    color: #020203;
  }
  body.page-education #publications .edu-pub-layout__cta {
    width: 100%;
    max-width: 378px;
    min-height: 47px;
    padding: 15px 40px;
    font-family: var(--font-ui);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    justify-content: center;
  }
  body.page-education #publications .edu-pub-grid--list,
  body.page-education #publications .edu-pub-grid.edu-pub-grid--list {
    display: grid;
    grid-template-columns: repeat(2, 370px);
    gap: 60px 30px;
    max-width: none;
    width: auto;
  }
  body.page-education #publications .edu-pub-grid.edu-pub-grid--list .edu-pub-card {
    width: 370px;
    max-width: 370px;
  }
  body.page-education #publications .edu-pub-card {
    min-height: 150px;
    gap: 20px;
  }
  body.page-education #publications .edu-pub-card__cover {
    width: 106px;
    height: 150px;
  }
  body.page-education #publications .edu-pub-card__body {
    gap: 10px;
    padding-top: 0;
  }
  body.page-education #publications .edu-pub-card__title {
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
  }
  #publications .edu-pub-layout {
    grid-template-columns: minmax(0, 378px) minmax(0, 1fr);
    gap: 50px;
  }
}
@media (max-width: 767px) {
  #publications .edu-pub-layout {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  #publications .edu-pub-layout__cta {
    max-width: none;
    width: 100%;
  }
  #publications .edu-pub-grid--list {
    max-width: none;
  }
  #publications .edu-pub-card {
    max-width: none;
  }
}

/* L2/L3 — шаблон Figma 13208:663 */
.subpage-l3 {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 48px;
  align-items: start;
  max-width: 1200px;
  margin-inline: auto;
}
.subpage-l3__back {
  display: inline-block;
  font-weight: 600;
  color: var(--c-brand);
  margin-bottom: 20px;
  font-size: 15px;
}
.subpage-l3__nav {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.subpage-l3__nav a {
  padding: 10px 14px;
  border-radius: 8px;
  font-size: 14px;
  color: var(--c-text);
  border-left: 2px solid transparent;
}
.subpage-l3__nav a.is-active,
.subpage-l3__nav a:hover {
  background: var(--c-brand-light);
  color: var(--c-brand);
  border-left-color: var(--c-brand);
}
.subpage-l3__title {
  font-family: var(--font);
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 600;
  line-height: 1.35;
  margin: 0 0 16px;
  letter-spacing: -0.02em;
}
.subpage-l3__lead {
  font-family: var(--font);
  font-size: 17px;
  font-weight: 400;
  line-height: 1.55;
  color: var(--c-muted);
  margin: 0 0 28px;
  max-width: 720px;
}
.subpage-l3__body h2 {
  font-family: var(--font);
  font-size: 22px;
  font-weight: 600;
  line-height: 1.35;
  margin: 32px 0 12px;
  color: var(--c-text);
}
.subpage-l3__body h2:first-child {
  margin-top: 0;
}
.subpage-l3__body ul,
.subpage-l3__body ol {
  font-family: var(--font);
  margin: 0 0 20px;
  padding-left: 1.35em;
  line-height: 1.55;
}
.subpage-l3__body li + li {
  margin-top: 8px;
}
.subpage-l3__callout {
  margin: 28px 0;
  padding: 24px 28px;
  background: var(--c-brand-light);
  border-left: 4px solid var(--c-brand);
  border-radius: 0 var(--radius) var(--radius) 0;
}
.subpage-l3__callout p:last-child {
  margin-bottom: 0;
}
@media (max-width: 900px) {
  .subpage-l3 {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .subpage-l3__nav {
    flex-direction: row;
    flex-wrap: wrap;
  }
}

/* Стандартизация: Rectangle 446 — #f5f5f5 (свойства Figma Plugin API) */
body.page-standardization .hero--standardization::before {
  background-image: none;
  background-color: var(--std-hero-bg);
}

body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip) {
  min-height: 0;
  height: auto;
}

@media (min-width: 1280px) {
  body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip) {
    min-height: 0;
    padding-top: var(--hero-pad-standardization-1440);
    padding-bottom: 56px;
  }
  body.page-standardization .hero--standardization::before {
    background-image: none;
    background-color: var(--std-hero-bg);
  }
}

@media (min-width: 601px) and (max-width: 1279px) {
  body.page-standardization:not(.page-home) .hero--standardization:not(.hero--strip) {
    min-height: 0;
  }
}

@media (max-width: 600px) {
  body.page-standardization:not(.page-home) .hero--standardization:not(.hero--strip) {
    min-height: 0;
    padding-bottom: 40px;
  }
}

/* ========== Figma L1 inner heroes (измерено по макету, перекрывает разрозненные правила) ========== */
@media (min-width: 1280px) {
  body:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: var(--hero-h-about-1280);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--science:not(.hero--strip) {
    min-height: var(--hero-h-science-1440);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--media:not(.hero--strip) {
    min-height: var(--hero-h-media-1440);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--education:not(.hero--education-quote):not(.hero--strip) {
    min-height: var(--hero-h-education-1440);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--standardization {
    min-height: var(--hero-h-standardization-1440);
    padding-top: var(--hero-pad-standardization-1440);
    padding-bottom: 48px;
    box-sizing: border-box;
  }
  body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip) {
    min-height: 0;
    padding-top: var(--hero-pad-standardization-1440);
    padding-bottom: 56px;
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--about::before,
  body:not(.page-home) .hero--science::before,
  body:not(.page-home) .hero--education:not(.hero--education-quote)::before {
    inset: 0;
    bottom: 0;
    background-size: auto, auto, cover;
  }
  body:not(.page-home) .hero--media::before {
    inset: 0;
    bottom: 0;
    background-size: auto, cover;
  }
  body:not(.page-home) .hero--standardization::before {
    inset: 0;
    bottom: 0;
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
      var(--hero-gradient-standardization);
    background-size: auto, auto, cover;
    background-position: center;
  }
  body.page-standardization .hero--standardization::before {
    background-image: none;
    background-color: var(--std-hero-bg);
  }
}
@media (min-width: 1440px) {
  body:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: var(--hero-h-about-1440);
    box-sizing: border-box;
  }
}
@media (max-width: 600px) {
  body:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: var(--hero-h-about-375);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--science:not(.hero--strip) {
    min-height: var(--hero-h-science-375);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--media:not(.hero--strip) {
    min-height: var(--hero-h-media-375);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--education:not(.hero--education-quote):not(.hero--strip) {
    min-height: var(--hero-h-education-375);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--standardization {
    min-height: var(--hero-h-standardization-375);
    box-sizing: border-box;
  }
  body.page-standardization:not(.page-home) .hero--standardization:not(.hero--strip) {
    min-height: 0;
  }
  body:not(.page-home) .hero--about:not(.hero--strip)::before {
    background-image:
      linear-gradient(rgba(2, 3, 3, 0.72), rgba(2, 3, 3, 0.72)),
      var(--hero-photo-about-mobile);
    background-size: auto, cover;
    background-position: 0 0, center top;
    inset: 0;
    bottom: 0;
  }
  body:not(.page-home) .hero--science::before {
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
      var(--hero-photo-science-mobile);
    background-size: auto, auto, cover;
    background-position: 0 0, 0 0, center top;
    inset: 0;
    bottom: 0;
  }
  body:not(.page-home) .hero--media::before {
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 26%, rgba(0, 0, 0, 0.48) 52%, rgba(0, 0, 0, 0.28) 78%, rgba(0, 0, 0, 0.18) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.42) 0%, transparent 58%),
      var(--hero-photo-media-mobile);
    background-size: auto, auto, cover;
    background-position: 0 0, 0 0, center top;
    inset: 0;
    bottom: 0;
  }
  body:not(.page-home) .hero--education:not(.hero--education-quote)::before {
    background-image:
      linear-gradient(88deg, rgba(0, 0, 0, 0.88) 0%, rgba(0, 0, 0, 0.55) 45%, rgba(0, 0, 0, 0.35) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, transparent 55%),
      var(--hero-photo-education-mobile);
    background-size: auto, auto, cover;
    background-position: 0 0, 0 0, center top;
    inset: 0;
    bottom: 0;
  }
}
@media (min-width: 601px) and (max-width: 1279px) {
  body:not(.page-home) .hero--science:not(.hero--strip),
  body:not(.page-home) .hero--media:not(.hero--strip),
  body:not(.page-home) .hero--education:not(.hero--education-quote):not(.hero--strip) {
    min-height: clamp(280px, calc(100vw * 670 / 1440), 520px);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--standardization {
    min-height: clamp(280px, var(--hero-h-standardization-mid), 420px);
    box-sizing: border-box;
  }
  body.page-standardization:not(.page-home) .hero--standardization:not(.hero--strip) {
    min-height: 0;
  }
  body:not(.page-home) .hero--science::before,
  body:not(.page-home) .hero--media::before,
  body:not(.page-home) .hero--education:not(.hero--education-quote)::before,
  body:not(.page-home) .hero--standardization::before {
    inset: 0;
    bottom: 0;
  }
}

/* ========== Figma 3_* «О нас» — hero + миссия/видение (375–1024) ========== */
/* pull = −(heroH − (missionY − heroBgY)) — figma-spec/about-page-breakpoints.json */

@media (max-width: 600px) {
  body.page-about {
    --gutter: 15px;
    --about-hero-h: calc(100vw * 763 / 375);
    --about-mission-card-y: calc(100vw * 382 / 375);
  }

  body:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: var(--about-hero-h);
    padding-top: calc(100vw * 49 / 375);
    padding-bottom: calc(32px + var(--hero-decor-h));
    box-sizing: border-box;
  }

  body:not(.page-home) .hero--about .hero__title {
    font-size: 24px;
    line-height: 1.15;
    max-width: 346px;
    margin-bottom: 25px;
  }

  body:not(.page-home) .hero--about .hero__lead {
    max-width: 343px;
    font-size: 14px;
    line-height: 1.45;
    margin-top: 0;
  }

  body.page-about .section--about-mission {
    --about-mission-pull: calc(-1 * (var(--about-hero-h) - var(--about-mission-card-y)));
    position: relative;
    z-index: 5;
  }

  .about-mission__grid {
    grid-template-columns: 1fr;
    gap: 30px;
    max-width: min(344px, calc(100vw - 30px));
    margin-inline: auto;
  }

  .about-mission-card {
    padding: 15px 10px;
  }

  .about-mission-card__title {
    font-size: 16px;
    margin-bottom: 15px;
  }

  .about-mission-card__text {
    font-size: 14px;
    line-height: 1.3;
  }

  .about-mission-card--mission {
    height: 173px;
    min-height: 173px;
  }

  .about-mission-card--vision {
    height: 122px;
    min-height: 122px;
  }

  .about-mission-card--vision .about-mission-card__text {
    -webkit-line-clamp: 3;
  }
}

@media (min-width: 601px) and (max-width: 880px) {
  body.page-about {
    --gutter: clamp(15px, calc(100vw * 27 / 800), 27px);
    --about-hero-h: calc(100vw * 383 / 800);
    --about-mission-card-y: calc(100vw * 31 / 800);
  }

  body.page-about:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: var(--about-hero-h);
    padding-top: calc(100vw * 47 / 800);
    padding-bottom: calc(16px + var(--hero-decor-h));
    box-sizing: border-box;
  }

  body:not(.page-home) .hero--about:not(.hero--strip)::before {
    inset: 0;
    bottom: 0;
    background-size: auto, auto, cover;
    background-position: 0 0, 0 0, 72% center;
  }

  body:not(.page-home) .hero--about .hero__copy {
    max-width: min(346px, 48vw);
  }

  body:not(.page-home) .hero--about .hero__title {
    font-size: clamp(22px, calc(100vw * 28 / 800), 28px);
    line-height: 1.15;
    max-width: min(346px, 48vw);
    margin-bottom: clamp(10px, calc(100vw * 12 / 800), 12px);
  }

  body:not(.page-home) .hero--about .hero__lead {
    max-width: min(343px, 48vw);
    font-size: 14px;
    line-height: 1.45;
    margin-top: 0;
  }

  body.page-about .section--about-mission {
    --about-mission-pull: calc(-1 * (var(--about-hero-h) - var(--about-mission-card-y)));
    position: relative;
    z-index: 5;
  }

  .about-mission__grid {
    grid-template-columns: 1fr;
    max-width: min(347px, calc(100vw * 347 / 800));
    margin-left: auto;
    margin-right: max(25px, var(--gutter));
    gap: 13px;
  }

  .about-mission-card {
    padding: 15px 10px;
  }

  .about-mission-card__title {
    font-size: 16px;
    margin-bottom: 15px;
  }

  .about-mission-card__text {
    font-size: 14px;
    line-height: 1.3;
  }

  .about-mission-card--mission {
    height: 173px;
    min-height: 173px;
  }

  .about-mission-card--vision {
    height: 122px;
    min-height: 122px;
  }

  .about-mission-card--vision .about-mission-card__text {
    -webkit-line-clamp: 3;
  }
}

@media (min-width: 881px) and (max-width: 1023px) {
  body.page-about {
    --gutter: clamp(27px, calc(100vw * 31 / 1024), 31px);
    --about-hero-h: calc(100vw * 466 / 1024);
    --about-mission-card-y: calc(100vw * 238 / 1024);
  }

  body:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: var(--about-hero-h);
    height: auto;
    overflow: visible;
    padding-top: calc(100vw * 20 / 1024);
    padding-bottom: var(--hero-decor-h);
    box-sizing: border-box;
  }

  body:not(.page-home) .hero--about:not(.hero--strip) .container {
    padding-bottom: calc(var(--hero-decor-h) + 16px);
  }

  body:not(.page-home) .hero--about:not(.hero--strip)::before {
    inset: 0;
    bottom: 0;
  }

  body:not(.page-home) .hero--about .hero__title {
    font-size: clamp(26px, calc(100vw * 28 / 1024), 28px);
    line-height: 1.15;
    max-width: min(817px, calc(100vw * 817 / 1024));
    margin-bottom: clamp(10px, calc(100vw * 13 / 1024), 13px);
  }

  body:not(.page-home) .hero--about .hero__lead {
    max-width: min(774px, calc(100vw * 774 / 1024));
    font-size: 16px;
    line-height: 1.3;
    margin-top: 0;
  }

  body.page-about .section--about-mission {
    --about-mission-pull: calc(-1 * (var(--about-hero-h) - var(--about-mission-card-y)));
    position: relative;
    z-index: 5;
  }

  .about-mission__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(28px, calc(100vw * 31 / 1024), 31px);
    max-width: min(963px, calc(100vw - 2 * var(--gutter)));
    margin-inline: auto;
  }

  .about-mission-card {
    padding: 25px;
  }

  .about-mission-card--mission,
  .about-mission-card--vision {
    height: 194px;
    min-height: 194px;
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  body.page-about {
    --gutter: clamp(31px, calc(100vw * 41 / 1280), 41px);
    --about-hero-h: clamp(
      466px,
      calc(466px + (100vw - 1024px) * 131 / 256),
      597px
    );
    --about-mission-card-y: clamp(
      238px,
      calc(238px + (100vw - 1024px) * 104 / 256),
      342px
    );
  }

  body:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: var(--about-hero-h);
    height: auto;
    overflow: visible;
    padding-top: clamp(72px, calc(100vw * 105 / 1280), 105px);
    padding-bottom: var(--hero-decor-h);
    box-sizing: border-box;
  }

  body.page-about .section--about-mission {
    --about-mission-pull: calc(-1 * (var(--about-hero-h) - var(--about-mission-card-y)));
    position: relative;
    z-index: 5;
  }

  body:not(.page-home) .hero--about:not(.hero--strip)::before {
    bottom: 0;
  }

  .about-mission__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(31px, calc(100vw * 52 / 1280), 52px);
    max-width: min(1202px, calc(100vw - 2 * var(--gutter)));
    margin-inline: auto;
  }

  .about-mission-card {
    padding: 25px;
  }

  .about-mission-card--mission,
  .about-mission-card--vision {
    height: clamp(173px, calc(194px - (100vw - 1024px) * 21 / 256), 194px);
    min-height: clamp(173px, calc(194px - (100vw - 1024px) * 21 / 256), 194px);
  }
}

@media (min-width: 1280px) {
  body:not(.page-home) .hero--about:not(.hero--strip) {
    padding-top: 105px;
    padding-bottom: var(--hero-decor-h);
    box-sizing: border-box;
  }
  body:not(.page-home) .hero--about:not(.hero--strip)::before {
    bottom: 0;
  }
  /* Figma: title 36px ExtraBold, lead 20px, карточки 575×173 gap 52 */
  body:not(.page-home) .hero--about .hero__title {
    font-family: var(--font);
    font-size: 36px;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -0.02em;
    margin-bottom: 30px;
    white-space: nowrap;
    max-width: 817px;
  }
  @media (max-width: 1360px) {
    body:not(.page-home) .hero--about .hero__title {
      white-space: normal;
    }
  }
  body:not(.page-home) .hero--about .hero__lead {
    font-family: var(--font);
    font-size: 20px;
    font-weight: 400;
    line-height: 1.3;
    max-width: 774px;
    margin: 0;
    color: #fff;
  }
  body:not(.page-home) .hero--about::before {
    background-size: auto, cover;
    background-position: 0 0, 42% center;
  }
  body.page-about .section--about-mission {
    padding-bottom: 8px;
  }
  .about-mission__grid {
    grid-template-columns: repeat(2, 575px);
    justify-content: flex-start;
    gap: 52px;
    max-width: none;
    width: 100%;
    margin-inline: 0;
  }
  .about-mission-card--mission,
  .about-mission-card--vision {
    width: 575px;
    max-width: 575px;
    height: 173px;
    min-height: 173px;
  }

  .about-mission-card--vision .about-mission-card__text {
    -webkit-line-clamp: 3;
  }
}

/* Figma 3_3_О нас_1280: Frame 743 x=41 y=498, hero 597px → pull 255px */
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-about {
    --gutter: 41px;
  }

  body:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: var(--hero-h-about-1280);
  }
  body.page-about .section--about-mission {
    --about-mission-pull: -255px;
    position: relative;
    z-index: 5;
  }
  body.page-about .section--about-mission > .container {
    padding-inline: 41px;
    max-width: 1280px;
  }

  /* Figma @1280: СМИ — теги 1218, карточки x≈42 */
  body.page-about #media-about > .container {
    padding-inline: 41px;
    max-width: 1280px;
    box-sizing: border-box;
  }

  body.page-about .tags--about-press {
    max-width: 1218px;
    width: 100%;
  }

  body.page-about .tags--about-press .tags__row--offset {
    padding-left: 22px;
  }

  body.page-about .about-press__carousel .h-slider__track.about-press__grid {
    padding-left: 1px;
    scroll-padding-inline-start: 1px;
  }

  /* Figma @1280: история — spotlight 500+gap, таймлайн full-bleed 1280, оси 26/20 */
  body.page-about #history > .container {
    max-width: 1280px;
    padding-inline: 41px;
    box-sizing: border-box;
  }

  body.page-about .section--about-history .history-spotlight {
    max-width: none;
    width: 100%;
    grid-template-columns: 500px minmax(0, 1fr);
    gap: 50px;
    margin-bottom: 78px;
  }

  body.page-about .section--about-history .history-spotlight__copy {
    max-width: none;
  }

  body.page-about .history-timeline-wrap {
    width: calc(100% + 82px);
    margin-inline: -41px;
    --tl-pad-start: 26px;
    --tl-pad-end: 20px;
  }
}

/* Figma 3_2_О нас_1440: Frame 743 x=119 y=549, hero 670px → pull 277px */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-about {
    --gutter: 120px;
  }
  body:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: var(--hero-h-about-1440);
  }
  body.page-about .section--about-mission {
    --about-mission-pull: -277px;
  }
  body.page-about .section--about-mission > .container {
    padding-inline: 119px;
    max-width: 1440px;
  }

  /* Figma @1440: СМИ — теги 1218, карусель в контейнере как контакты */
  body.page-about #media-about > .container {
    padding-inline: 119px;
    max-width: 1440px;
  }

  body.page-about .tags--about-press {
    max-width: 1218px;
    width: 100%;
  }

  body.page-about .about-press__carousel.h-slider {
    width: 100%;
    margin-inline: 0;
    padding-inline: 0;
  }

  body.page-about .tags--about-press .tags__row--offset {
    padding-left: 22px;
  }

  body.page-about .about-press__carousel .h-slider__track.about-press__grid {
    padding-left: 4px;
    scroll-padding-inline-start: 4px;
  }

  /* Figma @1440: история — spotlight 500+574, таймлайн full-bleed 1440, оси 104/137 */
  body.page-about #history > .container {
    max-width: 1440px;
    padding-inline: 119px;
    box-sizing: border-box;
  }

  body.page-about .section--about-history .history-spotlight {
    max-width: none;
    width: 100%;
    grid-template-columns: 500px minmax(0, 574px);
    gap: 50px;
    margin-bottom: 78px;
  }

  body.page-about .section--about-history .history-spotlight__copy {
    max-width: none;
  }

  body.page-about .history-timeline-wrap {
    width: calc(100% + 238px);
    margin-inline: -119px;
    --tl-pad-start: 104px;
    --tl-pad-end: 137px;
  }

  /* Figma @1440: «Документы» 13189:41855 center 28px, плитки 42020…42027 4×275 gap 33, кнопка 41939 */
  body.page-about .section--about-docs .about-docs__heading {
    width: 100%;
    text-align: center;
    font-size: 28px;
    line-height: 1.35;
    margin-bottom: 70px;
  }

  body.page-about #docs > .container {
    max-width: 1440px;
    padding-inline: 119px;
    box-sizing: border-box;
  }

  body.page-about .about-docs__grid {
    grid-template-columns: repeat(4, 275px);
    gap: 33px;
    justify-content: center;
  }

  body.page-about .section--about-docs .about-docs__footer {
    margin-top: 70px;
  }

  /* Figma @1440 Frame 751 (13189:42313): 8 знаков, 1198×40, gap 43, без стрелок */
  body.page-about #projects-strip > .container {
    max-width: 1440px;
    margin-inline: auto;
    padding-inline: 119px;
    box-sizing: border-box;
  }

  body.page-about .about-projects-strip.h-slider {
    max-width: 1198px;
    width: 1198px;
    margin-inline: 0;
    padding: 0;
    overflow: visible;
  }

  body.page-about .about-projects-strip .h-slider__track {
    gap: 43px;
    overflow: visible;
    padding-bottom: 0;
    scroll-snap-type: none;
  }

  body.page-about .about-projects-strip .h-slider__track > .about-projects-strip__logo {
    flex: 0 0 auto;
    max-width: var(--strip-logo-w, none);
    scroll-snap-align: none;
  }

  body.page-about .about-projects-strip .h-slider__nav {
    display: none;
  }
}

/* Figma 3_1_О нас_1900: Frame 743 x=119 y=686, 575×224, hero 893px → pull 363px */
@media (min-width: 1900px) {
  body.page-about {
    --container: 1920px;
    --gutter: 120px;
  }
  body.page-about .container {
    max-width: var(--container);
    margin-inline: auto;
  }
  body.page-about .header > .container.header__top,
  body.page-about .header > .container.header__inner {
    padding-inline: var(--gutter);
  }
  body:not(.page-home) .hero--about:not(.hero--strip) {
    min-height: var(--hero-h-about-1900);
  }
  body:not(.page-home) .hero--about:not(.hero--strip)::before {
    background-size: auto, cover;
    background-position: 0 0, 72% center;
  }
  body:not(.page-home) .hero--about .hero__inner {
    max-width: none;
    margin-inline: 0;
  }
  body.page-about .section--about-mission {
    --about-mission-pull: -363px;
  }
  body.page-about .section--about-mission > .container {
    padding-inline: 119px;
    max-width: 1920px;
  }
  body.page-about .about-mission__grid {
    grid-template-columns: repeat(2, 575px);
    justify-content: flex-start;
    gap: 52px;
    max-width: none;
    width: 100%;
    margin-inline: 0;
  }
  body.page-about .about-mission-card--mission,
  body.page-about .about-mission-card--vision {
    height: 224px;
    min-height: 224px;
  }

  /* Figma 3_1_О нас_1900: gutter 261/236, плашка 1403, цитата 324+103+786=1213 по центру колонки */
  body.page-about #team > .container.about-team {
    max-width: 1920px;
    width: 100%;
    margin-inline: auto;
    padding-left: 261px;
    padding-right: 236px;
    box-sizing: border-box;
  }

  body.page-about .about-team {
    max-width: none;
    margin-inline: 0;
  }

  body.page-about .about-team__intro-panel {
    width: 100%;
    max-width: 1403px;
    margin-inline: 0;
    margin-bottom: 100px;
    padding: 39px 65px 39px 73px;
    min-height: 163px;
  }

  body.page-about .about-team__intro {
    grid-template-columns: minmax(0, 597px) minmax(0, 549px);
    column-gap: 119px;
    justify-content: flex-start;
  }

  body.page-about .about-team__quote {
    width: 1213px;
    max-width: 100%;
    margin-inline: auto;
    grid-template-columns: 324px minmax(0, 786px);
    column-gap: 103px;
    padding-inline: 0;
    justify-content: flex-start;
    align-items: center;
    box-sizing: border-box;
  }

  body.page-about .about-team__portrait {
    width: 324px;
    height: 324px;
    justify-self: start;
  }

  body.page-about .about-team__quote-body {
    max-width: 786px;
  }

  body.page-about .about-team__cite {
    margin-top: 62px;
    max-width: 331px;
  }

  body.page-about #structure > .container {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    padding-left: 261px;
    padding-right: 236px;
    box-sizing: border-box;
  }

  body.page-about .section--about-structure .about-structure__grid {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 33px;
    justify-content: flex-start;
    justify-items: stretch;
    max-width: 1400px;
    width: 100%;
    margin-inline: 0;
  }

  body.page-about #projects-strip > .container {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    padding-left: 261px;
    padding-right: 236px;
    box-sizing: border-box;
  }

  body.page-about .about-projects-strip.h-slider {
    max-width: 1397px;
    width: 1397px;
    margin-inline: 0;
    padding: 0;
    overflow: visible;
    box-sizing: border-box;
  }

  body.page-about .about-projects-strip .h-slider__track {
    gap: 71px;
    overflow: visible;
    padding-bottom: 0;
    scroll-snap-type: none;
  }

  body.page-about .about-projects-strip .h-slider__nav {
    display: none;
  }

  /* Figma 3_1 @1900: карьера — 674 + 158 + 2×310, вакансии y=3754 */
  body.page-about #career > .container {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    padding-left: 123px;
    padding-right: 123px;
    box-sizing: border-box;
  }

  body.page-about .about-career {
    grid-template-columns: minmax(0, 674px) 653px;
    column-gap: 158px;
    max-width: none;
    margin-inline: 0;
  }

  body.page-about .about-career__lead {
    max-width: 674px;
  }

  body.page-about .about-career__aside {
    padding-top: 19px;
  }

  body.page-about .about-career__vacancies {
    grid-template-columns: repeat(2, 310px);
    gap: 33px;
  }

  /* Figma @1900: документы — заголовок 32px center (13189:10541), плитки x=260 gap 100 */
  body.page-about .section--about-docs .about-docs__heading {
    width: 100%;
    max-width: none;
    text-align: center;
    font-size: 32px;
    line-height: 1.35;
    margin-bottom: 65px;
  }

  body.page-about #docs > .container {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    padding-left: 260px;
    padding-right: 260px;
    box-sizing: border-box;
  }

  body.page-about .about-docs__grid {
    grid-template-columns: repeat(4, 275px);
    gap: 100px;
    justify-content: center;
    max-width: none;
  }

  body.page-about .section--about-docs .about-docs__footer {
    margin-top: 70px;
  }

  /* Figma @1900: СМИ о нас — gutter 119 как контакты, теги 1559, карусель 119…1801 */
  body.page-about .section--about-press .section-header--center .section-title {
    font-size: 32px;
    line-height: 1.35;
  }

  body.page-about #media-about > .container {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    padding-left: 119px;
    padding-right: 119px;
    box-sizing: border-box;
  }

  body.page-about .tags--about-press--compact {
    display: none;
  }

  body.page-about .tags--about-press--wide {
    display: flex;
    max-width: 1559px;
    width: 100%;
    margin-bottom: 55px;
    gap: 10px;
  }

  body.page-about .tags--about-press--wide .tags__row {
    gap: 10px;
  }

  /* Figma @1900: Frame 16 x=593, Frame 15 x=180.5 → сдвиг 412px */
  body.page-about .tags--about-press--wide .tags__row--offset {
    padding-left: 412px;
  }

  body.page-about .tags--about-press .tag {
    height: 27px;
    min-height: 27px;
    padding: 5px;
    font-size: 14px;
    line-height: normal;
  }

  body.page-about .about-press__carousel.h-slider {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding-inline: 0;
    box-sizing: border-box;
    overflow: visible;
  }

  body.page-about .about-press__carousel .h-slider__track.about-press__grid {
    gap: 33px;
    max-width: none;
    margin-inline: 0;
    padding-bottom: 8px;
    padding-left: 1px;
    scroll-padding-inline-start: 1px;
  }

  body.page-about .section--about-press .text-center .btn.btn--primary {
    min-width: 282px;
    height: 47px;
    padding: 15px 40px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 50px;
  }

  /* Figma @1900: контакты — белый фон, 271 + 400 + 1040, x≈119 */
  body.page-about #contacts > .container {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    padding-left: 119px;
    padding-right: 119px;
    box-sizing: border-box;
  }

  body.page-about .about-contacts {
    grid-template-columns: 271px 400px 1040px;
    grid-template-areas:
      "title title map"
      "c1 c2 map"
      "c3 c4 map"
      "c5 c6 map";
    column-gap: 22px;
    row-gap: 40px;
    max-width: none;
    margin-inline: 0;
  }

  body.page-about .about-contacts__title {
    font-size: 32px;
    margin-bottom: 0;
  }

  body.page-about .about-contacts__map {
    width: 1040px;
    max-width: 1040px;
    aspect-ratio: 1040 / 532;
    min-height: 532px;
    justify-self: end;
  }

  /* Figma @1900: история — spotlight 500+953, таймлайн на всю ширину, стопка карточек */
  body.page-about #history > .container {
    max-width: none;
    width: 100%;
    padding-left: 119px;
    padding-right: 119px;
    box-sizing: border-box;
  }

  body.page-about .section--about-history .history-spotlight {
    max-width: none;
    width: 100%;
    grid-template-columns: 500px minmax(0, 953px);
    gap: 50px;
    margin-bottom: 78px;
  }

  body.page-about .section--about-history .history-spotlight__copy {
    max-width: none;
  }

  body.page-about .history-timeline-wrap {
    max-width: none;
    width: calc(100% + 238px);
    margin-inline: -119px;
    --tl-pad-start: 104px;
    --tl-pad-end: 234px;
  }

  body.page-about .about-history-timeline__slider {
    width: 100%;
  }

  body.page-about .about-history-timeline__viewport {
    margin: 0;
    overflow: visible;
  }

  body.page-about .about-history-timeline__track {
    width: 100%;
    min-width: 100%;
  }

  body.page-about .about-history-timeline__event {
    right: auto;
    left: calc(var(--tl-pad-start) + (100% - var(--tl-pad-start) - var(--tl-pad-end) - 190px) * var(--tl-pos, 0) / 100);
  }

  body.page-about .about-history-timeline__event.is-active {
    z-index: 100;
  }

  body.page-about .history-timeline__scale {
    max-width: none;
    width: 100%;
    box-sizing: border-box;
  }
}


/* Ценности: Figma @1440 — белый фон страницы, карточки с тенью (не section--soft) */
body:not(.page-home) #values.section--about-values {
  background: #fff;
  padding-top: 0;
  position: relative;
  z-index: auto;
}

body:not(.page-home) #values.section--about-values > .container {
  background-color: #fff;
  padding-top: clamp(48px, 8vw, 80px);
}

@media (min-width: 1280px) {
  body:not(.page-home) #values.section--about-values > .container {
    padding-top: clamp(142px, calc(142px + (100vw - 1280px) * 22 / 160), 164px);
  }
}

/* ========== Figma «О нас»: история, ценности ========== */
.section--about-values {
  padding-bottom: clamp(56px, 8vw, 80px);
}

.section--about-values .section-header--center {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  margin-bottom: clamp(40px, 6vw, 70px);
}

.section--about-values .section-title,
body.page-about .section-title {
  margin: 0;
}

.about-values__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  max-width: 1064px;
  margin-inline: auto;
}

.about-value {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: clamp(16px, 4vw, 50px);
  min-height: 166px;
  margin: 0;
  padding: 25px 25px 25px clamp(25px, 4vw, 50px);
  box-sizing: border-box;
  background: #fff;
  border: none;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}

.about-value__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin: 0;
  padding: 0;
  background: none;
  border-radius: 0;
}

.about-value__icon img {
  display: block;
  width: 100%;
  max-width: 117px;
  height: auto;
  max-height: 116px;
  object-fit: contain;
}

.about-value__body {
  padding-top: 0;
  min-width: 0;
  flex: 1 1 auto;
}

.about-value__title {
  /* Figma 13189:41469 — Montserrat SemiBold 20 */
  font-family: var(--font);
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  color: #020203;
  margin: 0 0 15px;
}

.about-value__text {
  /* Figma 13189:41470 — Fira Sans Regular 16 / 1.3, w 278 */
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
  margin: 0;
  max-width: 278px;
}

/* ========== Figma «О нас»: Наша история (3_2 @1440, Rectangle 434 #f5f5f5) ========== */
.section--about-history {
  background: #f5f5f5;
  padding-top: clamp(56px, 8vw, 80px);
  padding-bottom: clamp(56px, 8vw, 72px);
}

.section--about-history .section-header--history {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 12px;
  margin-bottom: clamp(40px, 6vw, 70px);
}

.section--about-history .section-header--history .section-title {
  margin: 0;
  font-family: var(--font-heading);
}

.section--about-history .section-link--pdf {
  font-size: 15px;
  font-weight: 500;
  color: var(--c-brand);
  text-decoration: none;
  white-space: nowrap;
}

.section--about-history .section-link--pdf:hover {
  text-decoration: underline;
}

/* Spotlight: фото + текст (база; адаптивы ниже) */
.section--about-history .history-spotlight {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  align-items: start;
  max-width: 1200px;
  margin: 0 auto clamp(48px, 6vw, 78px);
}

.section--about-history .history-spotlight__art {
  margin: 0;
}

.section--about-history .history-spotlight__art img {
  display: block;
  width: 100%;
  max-width: 347px;
  height: auto;
  aspect-ratio: 347 / 216;
  object-fit: cover;
  border: none;
}

.section--about-history .history-spotlight__year {
  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  color: #020303;
  margin: 0 0 15px;
}

.section--about-history .history-spotlight__title {
  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  color: #020303;
  margin: 0 0 15px;
}

.section--about-history .history-spotlight__copy > p:not(.history-spotlight__caption):not(.history-spotlight__year) {
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020303;
  margin: 0 0 15px;
}

.section--about-history .history-spotlight__caption {
  font-family: var(--font-body-figma);
  font-size: 14px;
  font-weight: 400;
  font-style: italic;
  line-height: 1.3;
  color: #686a73;
  margin: 0;
}

@media (min-width: 881px) {
  .section--about-history .section-header--history {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 12px 24px;
  }
}

/* Figma 3_6 @375 / 3_5 @800 — «Наша история»: spotlight + таймлайн */
@media (max-width: 880px) {
  body.page-about .section--about-history {
    padding-top: clamp(48px, calc(100vw * 56 / 800), 56px);
    padding-bottom: clamp(48px, calc(100vw * 56 / 800), 56px);
  }

  body.page-about .section--about-history .section-header--history {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 12px;
    margin-bottom: clamp(35px, calc(100vw * 35 / 375), 35px);
  }

  body.page-about .section--about-history .section-header--history .section-title {
    font-size: clamp(24px, calc(100vw * 24 / 375), 28px);
    line-height: 1.15;
  }

  body.page-about .section--about-history .history-spotlight {
    margin-bottom: clamp(48px, calc(100vw * 60 / 375), 68px);
    max-width: none;
  }

  body.page-about .section--about-history .history-spotlight__art img {
    display: block;
    width: 100%;
    max-width: min(347px, calc(100vw - 2 * var(--gutter)));
    aspect-ratio: 347 / 216;
    height: auto;
    object-fit: cover;
  }

  body.page-about .section--about-history .history-spotlight__year,
  body.page-about .section--about-history .history-spotlight__title {
    font-size: clamp(16px, calc(100vw * 20 / 800), 20px);
    line-height: 1.3;
    margin-bottom: 15px;
  }

  body.page-about .section--about-history .history-spotlight__copy > p:not(.history-spotlight__caption):not(.history-spotlight__year) {
    font-size: clamp(14px, calc(100vw * 16 / 800), 16px);
    line-height: 1.3;
    margin-bottom: 15px;
  }

  body.page-about .section--about-history .history-spotlight__caption {
    font-size: 14px;
    line-height: 1.3;
  }

  body.page-about .section--about-history .history-timeline-wrap {
    --tl-pad-start: clamp(15px, calc(100vw * 28 / 800), 28px);
    --tl-pad-end: clamp(15px, calc(100vw * 28 / 800), 28px);
    width: calc(100% + 2 * var(--gutter));
    max-width: 100vw;
    margin-inline: calc(-1 * var(--gutter));
  }

  body.page-about .section--about-history .about-history-timeline__slider {
    grid-template-columns: 50px minmax(0, 1fr) 50px;
  }

  body.page-about .section--about-history .about-history-timeline__event {
    width: 190px;
  }

  body.page-about .section--about-history .about-history-timeline__slider .about-history-timeline__nav.h-slider__nav {
    width: 50px;
    height: 50px;
  }

  body.page-about .section--about-history .about-history-timeline__nav-icon {
    width: 50px;
    height: 50px;
  }

  body.page-about .section--about-history .history-timeline__axis {
    font-size: 12px;
  }
}

@media (max-width: 600px) {
  body.page-about .section--about-history .history-spotlight {
    display: flex;
    flex-direction: column;
    gap: 40px;
    align-items: stretch;
  }

  body.page-about .section--about-history .history-spotlight__art {
    margin-inline: auto;
  }

  body.page-about .section--about-history .history-spotlight__copy {
    max-width: min(345px, calc(100vw - 2 * var(--gutter)));
    margin-inline: auto;
    padding-top: 0;
  }
}

@media (min-width: 601px) and (max-width: 880px) {
  body.page-about .section--about-history .history-spotlight {
    display: grid;
    grid-template-columns: minmax(0, 347px) minmax(0, 1fr);
    gap: clamp(28px, calc(100vw * 31 / 800), 31px);
    align-items: start;
  }

  body.page-about .section--about-history .history-spotlight__copy {
    max-width: min(368px, calc(100vw * 368 / 800));
    padding-top: 0;
  }
}

@media (min-width: 881px) {
  .section--about-history .history-spotlight {
    grid-template-columns: 500px minmax(0, 1fr);
    gap: 50px;
    align-items: start;
  }

  .section--about-history .history-spotlight__art img {
    width: 500px;
    max-width: 100%;
    aspect-ratio: 500 / 310;
  }

  .section--about-history .history-spotlight__copy {
    max-width: 574px;
    padding-top: 17px;
  }
}

/* Таймлайн Figma 3_2: компонент «история» 190×133, Rectangle 22, шкала 1920–2020 */
.section--about-history .history-timeline-wrap {
  --tl-pad-start: 7.222%;
  --tl-pad-end: 9.514%;
  max-width: 100%;
  margin-inline: auto;
  position: relative;
}

@media (min-width: 881px) {
  .section--about-history .history-timeline-wrap {
    width: calc(100% + 2 * var(--gutter));
    max-width: 100vw;
    margin-inline: calc(-1 * var(--gutter));
  }
}

.section--about-history .about-history-timeline__slider {
  position: relative;
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) 50px;
  align-items: center;
  gap: 0;
  padding: 0;
  overflow: visible;
}

.section--about-history .about-history-timeline__viewport {
  grid-column: 2;
  overflow: visible;
  margin: 0;
  min-width: 0;
}

.section--about-history .about-history-timeline__track {
  position: relative;
  display: block;
  width: 100%;
  min-width: 100%;
  height: 147px;
  margin: 0;
  padding: 0;
  overflow: visible;
  scroll-snap-type: none;
}

/* Figma: каждая карточка на позиции своего года по всей оси 1920–2020; активная выше на 14px */
.section--about-history .about-history-timeline__event {
  position: absolute;
  top: 14px;
  left: calc(var(--tl-pad-start) + (100% - var(--tl-pad-start) - var(--tl-pad-end) - 190px) * var(--tl-pos, 0) / 100);
  right: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  width: 190px;
  height: 133px;
  box-sizing: border-box;
  transform: none;
  z-index: calc(10 + var(--tl-order, 0));
  cursor: pointer;
  transition: left 0.28s ease, top 0.28s ease, z-index 0s;
}

.section--about-history .about-history-timeline__event.is-active {
  top: 0;
  z-index: 100;
  cursor: default;
}

.section--about-history .about-history-timeline__card {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 7px;
  margin: 0;
  padding: 15px;
  min-height: 0;
  box-sizing: border-box;
  background: #fafafa;
  box-shadow: 0 0 5px rgba(57, 59, 65, 0.05);
  transition: background 0.2s ease, box-shadow 0.2s ease;
}

.section--about-history .about-history-timeline__event.is-active .about-history-timeline__card {
  background: #fff;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}

.section--about-history .about-history-timeline__year {
  margin: 0;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  color: #686a73;
  transition: color 0.2s ease;
}

.section--about-history .about-history-timeline__event.is-active .about-history-timeline__year {
  color: #020203;
}

.section--about-history .about-history-timeline__text {
  margin: 0;
  height: 36px;
  max-width: 160px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-family: var(--font-secondary, "Fira Sans", sans-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.3;
  color: #686a73;
}

.section--about-history .about-history-timeline__event:not(.is-active) .about-history-timeline__pin {
  visibility: hidden;
}

.section--about-history .about-history-timeline__pin {
  flex: 0 0 26px;
  display: block;
  width: 9px;
  height: 26px;
  margin: auto 0 0 10px;
  object-fit: contain;
  object-position: left bottom;
  pointer-events: none;
}

.section--about-history .history-timeline__scale {
  width: 100%;
  max-width: 100%;
  margin: 21px 0 0;
  padding: 0 var(--tl-pad-end) 0 var(--tl-pad-start);
  box-sizing: border-box;
}

.section--about-history .history-timeline__rule-area {
  position: relative;
  width: 100%;
  height: 2px;
  margin: 0 0 8px;
}

.section--about-history .history-timeline__rule {
  position: absolute;
  inset: 0;
  background: #686a73;
}

.section--about-history .history-timeline__dash {
  position: absolute;
  top: 0;
  left: calc(var(--tl-active-pos, 0%) + 10px);
  right: 0;
  height: 0;
  border-top: 1px dashed #ed1a34;
  pointer-events: none;
}

.section--about-history .history-timeline__scale.is-at-end .history-timeline__dash {
  display: none;
}

.section--about-history .history-timeline__active-dot {
  position: absolute;
  top: -3.5px;
  left: var(--tl-active-pos, 0%);
  width: 9px;
  height: 9px;
  margin-left: -4.5px;
  border-radius: 50%;
  background: #ed1a34;
  pointer-events: none;
}

.section--about-history .history-timeline__axis {
  display: grid;
  grid-template-columns: repeat(11, 1fr);
  gap: 0;
  margin: 0;
  padding: 0;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #686a73;
  text-align: center;
}

.section--about-history .history-timeline__tick {
  display: block;
  width: 1px;
  height: 11.8px;
  margin: 0 auto 8px;
  background: #686a73;
}

.section--about-history .history-timeline__axis span {
  min-width: 0;
}

.section--about-history .about-history-timeline__slider .about-history-timeline__nav.h-slider__nav {
  position: relative;
  top: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: none;
  width: 50px;
  height: 50px;
  padding: 0;
  z-index: 40;
  font-size: 0;
  line-height: 0;
  background: transparent;
  border: none;
  border-radius: 50%;
  box-shadow: none;
  color: transparent;
  align-self: center;
}

.section--about-history .about-history-timeline__nav-icon {
  display: block;
  width: 50px;
  height: 50px;
  background: url("img/about/press-carousel-arrow-figma.svg") center / contain no-repeat;
}

.section--about-history .about-history-timeline__slider .h-slider__nav--prev .about-history-timeline__nav-icon {
  transform: scaleX(-1);
}

.about-history-detail {
  margin-top: 40px;
  padding: 32px 40px;
  background: var(--color-surface, #fff);
  border-radius: 16px;
  box-shadow: 0 8px 32px rgba(15, 23, 42, 0.06);
}

.about-history-detail__year {
  margin: 0 0 12px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-primary, #0b3d91);
}

.about-history-detail__text {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-text, #1f2937);
}

.about-history-detail__more {
  margin: 20px 0 0;
  font-size: 15px;
}

.about-history-detail__more a {
  color: var(--color-primary, #0b3d91);
  text-decoration: underline;
  text-underline-offset: 3px;
}

@media (max-width: 767px) {
  .about-history-detail {
    margin-top: 28px;
    padding: 24px 20px;
  }

  .about-history-detail__year {
    font-size: 22px;
  }
}

.section--about-history .about-history-timeline__slider .h-slider__nav--prev {
  grid-column: 1;
  left: auto;
  right: auto;
  justify-self: start;
}

.section--about-history .about-history-timeline__slider .h-slider__nav--next {
  grid-column: 3;
  left: auto;
  right: auto;
  justify-self: end;
}

@media (min-width: 1280px) and (max-width: 1899px) {
  body.page-about .history-timeline-wrap {
    --tl-pad-start: 104px;
    --tl-pad-end: 137px;
  }

  body.page-about .section--about-history .history-spotlight {
    margin-bottom: 78px;
  }
}

@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-about .history-timeline-wrap {
    --tl-pad-start: 26px;
    --tl-pad-end: 20px;
  }
}

@media (max-width: 600px) {
  body.page-about .section--about-history .about-history-timeline__viewport {
    margin: 0;
  }

  body.page-about .section--about-history .about-history-timeline__track {
    min-width: 100%;
  }

  body.page-about .section--about-history .about-history-timeline__event {
    width: 190px;
  }

  body.page-about .section--about-history .history-timeline__axis {
    font-size: 11px;
    overflow-x: auto;
    scrollbar-width: none;
  }
}

@media (min-width: 881px) {
  .about-values__grid {
    grid-template-columns: minmax(0, 517px) minmax(0, 515px);
    column-gap: 32px;
    row-gap: 30px;
    justify-content: center;
  }

  .about-value {
    gap: 50px;
    min-height: 166px;
    padding-left: 50px;
  }

  .about-value__icon img {
    max-width: 117px;
    max-height: 116px;
  }
}

@media (max-width: 880px) {
  .about-value {
    gap: 16px;
    padding: 20px 16px 20px 20px;
    min-height: 0;
  }

  .about-value__title {
    font-size: 16px;
    margin-bottom: 10px;
  }

  .about-value__text {
    font-size: 14px;
    max-width: none;
  }

  .about-value__icon img {
    max-width: 59px;
    max-height: 59px;
  }
}

/* ========== Figma «О нас»: команда профессионалов ========== */
.section--about-team {
  background: #fff;
  padding-top: clamp(48px, 6vw, 80px);
  padding-bottom: clamp(56px, 8vw, 100px);
}

.about-team {
  max-width: 1200px;
  margin-inline: auto;
}

.about-team__title {
  margin: 0 0 clamp(48px, 7vw, 94px);
  font-family: var(--font);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.01em;
  text-align: center;
  color: #020303;
}

/* Rectangle 474 — серая плашка #f5f5f5, две колонки (1196×163 @1440) */
.about-team__intro-panel {
  box-sizing: border-box;
  margin: 0 0 clamp(28px, 8vw, 100px);
  padding: 39px 46px;
  background: #f5f5f5;
  border-radius: 0;
  box-shadow: none;
}

.about-team__intro {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin: 0;
  padding: 0;
  font-family: var(--font);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.4;
  color: #020303;
}

.about-team__intro p {
  margin: 0;
}

@media (min-width: 601px) {
  .about-team__intro {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: clamp(16px, 4vw, 65px);
    row-gap: 0;
    align-items: start;
  }

  .about-team__intro-panel {
    min-height: 163px;
    display: flex;
    align-items: center;
  }
}

@media (min-width: 1280px) {
  .about-team__intro-panel {
    max-width: 1196px;
    margin-inline: auto;
    padding: 39px 46px;
    min-height: 163px;
  }

  .about-team__intro {
    grid-template-columns: minmax(0, 556px) minmax(0, 511px);
    column-gap: 85px;
  }
}

/* Портрет + цитата Figma 13189:41782 / 41780 / 41781 @1440 */
.about-team__quote {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  align-items: start;
  justify-items: stretch;
}

.about-team__portrait {
  flex-shrink: 0;
  width: min(100%, 280px);
  height: min(100%, 280px);
  aspect-ratio: 1;
  margin: 0;
  border-radius: 50%;
  background: #e8eef5;
  overflow: hidden;
  justify-self: center;
}

.about-team__portrait img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* Figma mask-position 5.85px 5.01px на 324×324 */
  object-position: 51% 18%;
}

.about-team__quote-body {
  width: 100%;
  min-width: 0;
}

.about-team__quote-text {
  margin: 0;
  font-family: "Fira Sans", sans-serif;
  font-size: clamp(17px, 2vw, 20px);
  font-style: italic;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.2px;
  color: #020203;
}

.about-team__cite {
  display: block;
  margin: 24px 0 0;
  max-width: 331px;
  font-style: normal;
}

.about-team__cite-name {
  display: block;
  font-family: var(--font);
  font-size: clamp(16px, 1.8vw, 18px);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.2px;
  color: #020203;
}

.about-team__cite-role {
  display: block;
  margin-top: 0;
  font-family: "Fira Sans", sans-serif;
  font-size: clamp(15px, 1.6vw, 16px);
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: 0.2px;
  color: #020203;
}

@media (min-width: 601px) {
  .about-team__quote {
    grid-template-columns: min(280px, 32vw) minmax(0, 1fr);
    column-gap: clamp(28px, 5vw, 79px);
    justify-items: stretch;
  }

  .about-team__portrait {
    width: min(280px, 32vw);
    height: min(280px, 32vw);
    justify-self: start;
  }
}

@media (min-width: 1280px) and (max-width: 1899px) {
  .about-team__quote {
    grid-template-columns: 324px minmax(0, 662px);
    column-gap: 79px;
    padding-left: 88px;
    box-sizing: border-box;
  }

  .about-team__portrait {
    width: 324px;
    height: 324px;
  }

  .about-team__quote-text {
    font-size: 20px;
  }

  .about-team__cite {
    margin-top: 36px;
  }

  .about-team__cite-name {
    font-size: 18px;
  }

  .about-team__cite-role {
    font-size: 16px;
  }
}

@media (min-width: 1900px) {
  .about-team__quote-text {
    font-size: 20px;
  }

  .about-team__cite-name {
    font-size: 18px;
  }

  .about-team__cite-role {
    font-size: 16px;
  }
}

@media (max-width: 600px) {
  .about-team__title {
    text-align: left;
  }

  .about-team__intro-panel {
    margin-bottom: 24px;
    padding: 18px 20px;
    min-height: 0;
  }

  .about-team__portrait {
    justify-self: center;
  }

  .about-team__cite {
    max-width: none;
  }
}

/* ========== Figma «О нас»: карьера (Rectangle 455, вакансии 310×260 @1440) ========== */
.section--about-career {
  padding-top: clamp(48px, 6vw, 80px);
  padding-bottom: clamp(56px, 8vw, 100px);
  background: var(--c-bg-soft);
}

.about-career {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(28px, 5vw, 40px);
  max-width: 1200px;
  margin-inline: auto;
  align-items: start;
}

.about-career__title {
  margin: 0 0 clamp(20px, 4vw, 45px);
  font-family: var(--font);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.01em;
  color: #020203;
}

.about-career__lead {
  margin: 0 0 clamp(20px, 3vw, 28px);
  max-width: 674px;
  font-family: "Fira Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}

.about-career__lead p {
  margin: 0 0 15px;
}

.about-career__lead p:last-child {
  margin-bottom: 0;
}

.about-career__lead strong {
  font-weight: 700;
}

.about-career__aside {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.about-career__all.btn {
  align-self: center;
  margin-top: 33px;
  min-width: 182px;
  width: auto;
}

.about-career__vacancies {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  width: 100%;
  max-width: 345px;
  margin-inline: auto;
}

.about-career__all {
  margin-top: clamp(20px, 3vw, 33px);
}

@media (min-width: 601px) and (max-width: 880px) {
  .about-career__title {
    text-align: center;
  }

  .about-career__lead {
    max-width: 747px;
    margin-inline: auto;
  }

  .about-career__vacancies {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 17px;
    max-width: 749px;
    margin-inline: auto;
  }

  .about-career__all.btn {
    align-self: center;
    margin-inline: auto;
  }
}

/* Figma 3_4_О нас_1024: колонка 348px + 2×280, gap 21 */
@media (min-width: 881px) {
  .about-career {
    grid-template-columns: minmax(0, 348px) minmax(0, 1fr);
    column-gap: 35px;
  }

  .about-career__title {
    text-align: left;
  }

  .about-career__lead {
    max-width: 348px;
  }

  .about-career__aside {
    padding-top: 19px;
    min-width: 0;
  }

  .about-career__vacancies {
    grid-template-columns: repeat(2, 280px);
    gap: 21px;
    justify-content: start;
    max-width: none;
    margin-inline: 0;
  }
}

@media (min-width: 1280px) and (max-width: 1899px) {
  /* Figma 3_2 @1440: lead 505px, вакансии x=667, gap 41 */
  .about-career {
    grid-template-columns: minmax(0, 505px) 653px;
    column-gap: 41px;
    max-width: 1200px;
    margin-inline: auto;
  }

  .about-career__lead {
    max-width: 505px;
  }

  .about-career__aside {
    padding-top: 19px;
  }

  .about-career__vacancies {
    grid-template-columns: repeat(2, 310px);
    gap: 33px;
    justify-content: start;
  }
}

/* Карточка «Вакансия» Figma 13189:41930 — 310×260, тень 12.5px, без рамки */
.section--about-career .vacancy {
  box-sizing: border-box;
  width: 100%;
  max-width: 345px;
  height: 260px;
  min-height: 260px;
  margin: 0;
  padding: 20px 25px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  background: #fff;
  border: none;
  border-radius: 0;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  transition: box-shadow 0.2s ease;
}

.section--about-career .vacancy:hover {
  border: none;
  box-shadow: 0 0 14px rgba(57, 59, 65, 0.12);
  transform: none;
}

@media (min-width: 601px) and (max-width: 880px) {
  .section--about-career .vacancy {
    max-width: none;
    height: 240px;
    min-height: 240px;
  }
}

@media (min-width: 881px) {
  .section--about-career .vacancy {
    max-width: 310px;
  }
}

@media (min-width: 1280px) {
  .section--about-career .vacancy {
    width: 310px;
    max-width: 310px;
  }
}

.section--about-career .vacancy__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  margin: 0;
  flex: 0 0 auto;
  align-self: stretch;
  width: 100%;
}

.section--about-career .vacancy__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 27px;
  padding: 5px;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #ed1a34;
  background: #f1f1f1;
  border-radius: 5px;
}

.section--about-career .vacancy__title {
  flex: 1 1 auto;
  align-self: stretch;
  width: 100%;
  min-height: 0;
  margin: 0;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  color: #020203;
}

.section--about-career .vacancy__salary {
  flex: 0 0 auto;
  align-self: stretch;
  width: 100%;
  margin: 0;
  font-family: "Fira Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}

.section--about-career .vacancy__actions {
  flex: 0 0 auto;
  margin-top: auto;
  display: flex;
  justify-content: center;
  width: 100%;
  padding-top: 0;
}

.section--about-career .vacancy__actions .btn.btn--primary {
  box-sizing: border-box;
  width: 183px;
  max-width: 100%;
  min-width: 183px;
  min-height: var(--btn-height);
  padding: 15px 40px;
  border-radius: var(--btn-radius);
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  white-space: nowrap;
  transform: none;
  box-shadow: none;
}

.section--about-career .vacancy__actions .btn.btn--primary:hover {
  transform: none;
  box-shadow: none;
}

/* ========== Figma «О нас»: структура, контакты ========== */

/* Figma 3_2_О нас: 3×378×245, gap 33, иконка 100×100 слева */
.section--about-structure {
  padding-top: clamp(32px, 5vw, 48px);
  padding-bottom: clamp(32px, 5vw, 48px);
}
.section--about-structure .about-structure__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2.3vw, 33px);
  max-width: 1200px;
  margin-inline: auto;
  align-items: stretch;
}
.tile--about-nav {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 15px;
  box-sizing: border-box;
  min-height: 245px;
  padding: 25px;
  background: #f5f5f5;
  border: none;
  border-radius: 0;
  border-top: 0;
  box-shadow: none;
  color: #020303;
  text-decoration: none;
  transition: box-shadow var(--transition);
}
.tile--about-nav:hover {
  transform: none;
  border-color: transparent;
  color: #020303;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}
.tile--about-nav .tile__icon {
  flex: 0 0 100px;
  width: 100px;
  height: 100px;
  margin: 0;
  border-radius: 0;
  background: transparent;
  display: block;
}
.tile--about-nav .tile__icon img {
  display: block;
  width: 100px;
  height: 100px;
  object-fit: contain;
}
.tile--about-nav .tile__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.tile--about-nav .tile__title {
  margin: 0;
  font-family: var(--font);
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  color: var(--c-brand);
}
.tile--about-nav .tile__desc {
  margin: 0;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  color: #020303;
}
.tile--about-nav .tile__arrow {
  display: none;
}

/* Figma 3_6 @375 / 3_5 @800 / 3_4 @1024 — «Команда» 300×223, иконка 50, padding 15 */
@media (max-width: 1279px) {
  body.page-about .section--about-structure {
    padding-top: clamp(32px, calc(100vw * 40 / 800), 40px);
    padding-bottom: clamp(32px, calc(100vw * 40 / 800), 40px);
  }

  body.page-about .section--about-structure .about-structure__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(10px, calc(10px + (100vw - 800px) * 21 / 224), 31px);
    max-width: min(964px, calc(100vw - 2 * var(--gutter)));
    margin-inline: auto;
    align-items: stretch;
  }

  body.page-about .tile--about-nav {
    box-sizing: border-box;
    min-height: 0;
    height: auto;
    padding: 15px;
    gap: 15px;
    width: 100%;
    max-width: none;
  }

  body.page-about .tile--about-nav .tile__icon {
    flex: 0 0 50px;
    width: 50px;
    height: 50px;
  }

  body.page-about .tile--about-nav .tile__icon img {
    width: 50px;
    height: 50px;
    object-fit: contain;
  }

  body.page-about .tile--about-nav .tile__body {
    gap: 15px;
  }

  body.page-about .tile--about-nav .tile__title {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
  }

  body.page-about .tile--about-nav .tile__desc {
    font-family: var(--font-body-figma);
    font-size: 16px;
    line-height: 1.3;
  }
}

@media (max-width: 799px) {
  body.page-about .section--about-structure .about-structure__grid {
    grid-template-columns: 1fr;
    gap: 10px;
    max-width: min(344px, calc(100vw - 2 * var(--gutter)));
  }
}

@media (min-width: 1280px) {
  .section--about-structure .about-structure__grid {
    grid-template-columns: repeat(3, 378px);
    justify-content: center;
    gap: 33px;
  }
  .tile--about-nav {
    width: 378px;
    max-width: 378px;
    min-height: 245px;
    padding: 25px;
    gap: 15px;
  }
  .tile--about-nav .tile__icon {
    flex: 0 0 100px;
    width: 100px;
    height: 100px;
  }
  .tile--about-nav .tile__icon img {
    width: 100px;
    height: 100px;
  }
  .tile--about-nav .tile__body {
    gap: 15px;
  }
  .tile--about-nav .tile__title {
    margin: 0;
    line-height: normal;
  }
  .tile--about-nav .tile__desc {
    font-family: var(--font);
    font-size: 14px;
    line-height: 1.45;
  }
}

/* Figma «О нас»: контакты — белый фон, сетка 2 колонки текста + карта */
.section--about-contacts {
  background: #fff;
  padding-top: clamp(48px, 6vw, 80px);
  padding-bottom: clamp(56px, 8vw, 100px);
}

.section--about-contacts > .container {
  background: #fff;
}

.about-contacts {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
  align-items: start;
  max-width: 1200px;
  margin-inline: auto;
}

.about-contacts__title {
  margin: 0;
  font-family: var(--font);
  font-size: clamp(24px, 2.5vw, 32px);
  font-weight: 600;
  line-height: 1.35;
  color: #020203;
}

.about-contacts__map {
  overflow: hidden;
  background: #e8f1fb;
  border-radius: 0;
  aspect-ratio: 1040 / 532;
  width: 100%;
  max-width: 557px;
  justify-self: center;
}

.about-contacts__map img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.about-contacts__cell {
  min-width: 0;
}

.about-contacts__kicker,
.about-contacts__label,
.about-contacts__note,
.about-contacts__body {
  margin: 0 0 10px;
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}

.about-contacts__kicker {
  font-family: "Fira Sans", sans-serif;
  font-weight: 400;
}

.about-contacts__note {
  font-family: "Fira Sans", sans-serif;
  font-weight: 400;
}

.about-contacts__label {
  font-family: "Fira Sans", sans-serif;
  font-weight: 500;
}

.about-contacts__body {
  font-family: "Fira Sans", sans-serif;
  font-weight: 400;
}

.about-contacts__body:last-child,
.about-contacts__note:last-child {
  margin-bottom: 0;
}

.about-contacts__body a {
  color: inherit;
  text-decoration: none;
}

.about-contacts__body a:hover {
  color: var(--c-action);
}

@media (min-width: 601px) {
  .about-contacts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 40px;
    row-gap: 24px;
  }

  .about-contacts__title {
    grid-column: 1 / -1;
  }

  .about-contacts__map {
    grid-column: 1 / -1;
    max-width: none;
    justify-self: stretch;
  }
}
/* Проекты-полоса (Figma Frame 751: gap 43 @1440, 71 @1900) */
.section--about-projects {
  padding-top: 48px;
  padding-bottom: 48px;
}
.about-projects-strip.h-slider {
  position: relative;
  padding: 0 52px;
  max-width: 1200px;
  margin-inline: auto;
  box-sizing: border-box;
}
.about-projects-strip .h-slider__track {
  display: flex;
  flex-wrap: nowrap;
  gap: 43px;
  align-items: center;
  padding-bottom: 8px;
}
.about-projects-strip .h-slider__track > .about-projects-strip__logo {
  flex: 0 0 auto;
  max-width: var(--strip-logo-w, none);
  scroll-snap-align: none;
}
.about-projects-strip__logo {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--strip-logo-w, auto);
  min-width: 40px;
  max-width: var(--strip-logo-w, 234px);
  height: 40px;
}
.about-projects-strip__logo img {
  display: block;
  max-height: 40px;
  width: auto;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

/* Figma Frame 751 @375/800/1024 — gap 42, h=40, стрелка Group 633155 50×50 справа */
@media (max-width: 1279px) {
  body.page-about .section--about-projects {
    padding-top: clamp(30px, calc(100vw * 48 / 800), 48px);
    padding-bottom: clamp(30px, calc(100vw * 48 / 800), 48px);
  }

  body.page-about #projects-strip > .container {
    overflow: visible;
  }

  body.page-about .about-projects-strip.h-slider {
    overflow: visible;
    max-width: none;
    width: 100%;
    margin-inline: 0;
    padding: 0;
    box-sizing: border-box;
  }

  body.page-about .about-projects-strip .h-slider__track {
    gap: 42px;
    align-items: center;
    padding-bottom: 0;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  body.page-about .about-projects-strip .h-slider__track::-webkit-scrollbar {
    display: none;
  }

  body.page-about .about-projects-strip .h-slider__track > .about-projects-strip__logo {
    flex: 0 0 auto;
    width: var(--strip-logo-w, auto);
    max-width: var(--strip-logo-w, none);
    scroll-snap-align: start;
  }

  body.page-about .about-projects-strip .h-slider__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    top: 50%;
    transform: translateY(-50%);
    padding: 0;
    border: none;
    border-radius: 50%;
    background: transparent;
    box-shadow: none;
    color: transparent;
    font-size: 0;
    line-height: 0;
    z-index: 5;
  }

  body.page-about .about-projects-strip .h-slider__nav--prev {
    left: 0;
    display: none;
  }

  body.page-about .about-projects-strip .h-slider__nav--next {
    right: 0;
  }

  body.page-about .about-projects-strip .h-slider__nav:hover,
  body.page-about .about-projects-strip .h-slider__nav:focus-visible {
    background: transparent;
    border: none;
    box-shadow: none;
    color: transparent;
  }

  body.page-about .about-projects-strip .h-slider__nav:hover .h-slider__nav-icon,
  body.page-about .about-projects-strip .h-slider__nav:focus-visible .h-slider__nav-icon {
    opacity: 0.85;
  }
}

@media (max-width: 799px) {
  body.page-about #projects-strip > .container {
    padding-inline: 22px;
  }

  body.page-about .about-projects-strip.h-slider {
    padding-inline: 50px;
  }

  body.page-about .about-projects-strip .h-slider__nav--prev {
    display: flex;
  }
}

@media (min-width: 800px) and (max-width: 1279px) {
  body.page-about #projects-strip > .container {
    padding-inline: 28px;
  }

  body.page-about .about-projects-strip.h-slider {
    padding-right: 52px;
    padding-left: 0;
  }

  body.page-about .about-projects-strip .h-slider__nav--next {
    right: 2px;
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  body.page-about #projects-strip > .container {
    padding-inline: 30px;
  }

  body.page-about .about-projects-strip .h-slider__nav--next {
    right: 7px;
  }
}

@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-about .about-history-timeline__track {
    min-width: 100%;
  }

  body.page-about .history-timeline__scale,
  body.page-about .history-timeline__rule {
    width: 100%;
    max-width: none;
  }

  body.page-about #projects-strip > .container {
    max-width: var(--container);
    margin-inline: auto;
    padding-inline: var(--gutter);
  }

  body.page-about .about-projects-strip.h-slider {
    max-width: 1198px;
    padding: 0;
    overflow: visible;
  }

  body.page-about .about-projects-strip .h-slider__track {
    gap: 43px;
    overflow: visible;
    padding-bottom: 0;
    scroll-snap-type: none;
  }

  body.page-about .about-projects-strip .h-slider__nav {
    display: none;
  }
}

@media (min-width: 1280px) and (max-width: 1899px) {
  body.page-about .section--about-structure .about-structure__grid {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 33px;
    max-width: 1200px;
    margin-inline: auto;
    justify-content: center;
  }
}

/* ========== Figma «О нас»: документы (белый фон, плитки 275×87, тень 12.5px) ========== */
.section--about-docs {
  padding-top: clamp(48px, 6vw, 80px);
  padding-bottom: clamp(56px, 8vw, 100px);
  background: #fff;
}

.section--about-docs > .container {
  background: #fff;
}

.section--about-docs .about-docs__heading {
  width: 100%;
  max-width: none;
  margin: 0 0 clamp(48px, 7vw, 70px);
  font-family: var(--font-heading);
  font-size: clamp(24px, 2.5vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.01em;
  text-align: center;
  color: #020203;
}
body.page-about .section--about-docs h2.about-docs__heading {
  font-weight: 600;
}

.section--about-docs .about-docs__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 165px));
  justify-content: center;
  gap: 15px;
  max-width: 1200px;
  margin-inline: auto;
}

@media (max-width: 600px) {
  .section--about-docs .about-docs__item {
    width: 165px;
    max-width: 165px;
    margin-inline: auto;
  }
}

/* Figma component «Документы» 13189:34691 — белая карточка, тень, иконка 33×40 */
.section--about-docs .about-docs__item {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 15px;
  height: 62px;
  min-height: 62px;
  padding: 10px 12px 10px 10px;
  background: #fff;
  border: none;
  border-radius: 0;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  text-decoration: none;
  color: #020203;
  transition: box-shadow 0.2s ease;
}

.section--about-docs .about-docs__item:hover {
  border: none;
  box-shadow: 0 0 14px rgba(57, 59, 65, 0.12);
  transform: none;
}

.section--about-docs .about-docs__icon {
  flex: 0 0 auto;
  width: 33px;
  height: 40px;
  object-fit: contain;
  display: block;
}

.section--about-docs .about-docs__title {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  color: #020203;
}

.section--about-docs .about-docs__footer {
  display: flex;
  justify-content: center;
  margin-top: clamp(28px, 4vw, 40px);
}

.section--about-docs .about-docs__all.btn.btn--primary {
  box-sizing: border-box;
  min-width: 301px;
  max-width: 100%;
  min-height: var(--btn-height);
  padding: 15px 40px;
  border-radius: var(--btn-radius);
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  transform: none;
  box-shadow: none;
}

.section--about-docs .about-docs__all.btn.btn--primary:hover {
  transform: none;
  box-shadow: none;
}

@media (min-width: 601px) {
  .section--about-docs .about-docs__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 15px;
  }
}

@media (min-width: 1024px) {
  .section--about-docs .about-docs__item {
    height: 87px;
    min-height: 87px;
    padding: 25px 25px 20px;
  }

  .section--about-docs .about-docs__title {
    font-size: 16px;
    line-height: 1.3;
  }
}

@media (min-width: 1280px) and (max-width: 1899px) {
  .section--about-docs .about-docs__heading {
    width: 100%;
    text-align: center;
    font-size: 28px;
    line-height: 1.35;
    margin-bottom: 70px;
  }

  .section--about-docs .about-docs__grid {
    grid-template-columns: repeat(4, 275px);
    gap: 33px;
    justify-content: center;
  }

  .section--about-docs .about-docs__item {
    width: 275px;
    max-width: 275px;
  }

  .section--about-docs .about-docs__footer {
    margin-top: 70px;
  }
}

/* СМИ о нас — Figma Rectangle 456 (#f4f6fa), Frame 15/16, карточки «Новости» 378×478 */
.section--about-press {
  background: var(--c-bg-soft);
  padding-bottom: 64px;
}
.section--about-press .section-header--center .section-header__actions {
  justify-content: center;
}
@media (min-width: 1280px) {
  .section--about-press .section-header--about-press .section-header__actions--about-press {
    display: none;
  }
  .section--about-press .section-header--about-press {
    margin-bottom: 32px;
  }
}

/* Figma «Теги» 13189:41960 — белый фон, Montserrat Medium 14 #ed1a34 */
.tags--about-press {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  max-width: 1218px;
  margin: 0 auto 55px;
}
.tags--about-press .tags__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  width: 100%;
}
.tags--about-press .tags__row--offset {
  padding-left: 22px;
  box-sizing: border-box;
}
.tags--about-press--wide {
  display: none;
}
.tags--about-press--tablet {
  display: none;
}
.tags--about-press .tag {
  box-sizing: border-box;
  height: 27px;
  min-height: 27px;
  min-width: 0;
  flex-shrink: 0;
  white-space: nowrap;
  padding: 5px;
  font-family: var(--font);
  font-size: 14px;
  line-height: normal;
  font-weight: 500;
  border-radius: 5px;
  background: #fff;
  border: none;
  color: #ed1a34;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.2s ease;
}
.tags--about-press a.tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.tags--about-press .tag:hover,
.tags--about-press .tag:focus-visible {
  background: #f1f1f1;
  color: #ed1a34;
  border: none;
  box-shadow: none;
}

.about-press__carousel {
  position: relative;
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) 50px;
  align-items: center;
  gap: 0;
  padding: 0;
  max-width: 100%;
  margin-inline: 0;
  overflow: visible;
}

.about-press__carousel .about-press__viewport {
  grid-column: 2;
  min-width: 0;
  overflow: hidden;
}

/* Figma Group 39 / Group 132 — круг 50×50, chevron из макета */
.about-press__carousel .about-press__nav.h-slider__nav {
  position: relative;
  top: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: none;
  width: 50px;
  height: 50px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
  color: transparent;
  font-size: 0;
  line-height: 0;
  align-self: center;
  z-index: 5;
}

.about-press__carousel .h-slider__nav--prev {
  grid-column: 1;
  left: auto;
  right: auto;
  justify-self: start;
}

.about-press__carousel .h-slider__nav--next {
  grid-column: 3;
  left: auto;
  right: auto;
  justify-self: end;
}

.about-press__carousel .about-press__nav-icon {
  display: block;
  width: 50px;
  height: 50px;
  background: url("img/about/press-carousel-arrow-figma.svg") center / contain no-repeat;
}

.about-press__carousel .h-slider__nav--prev .about-press__nav-icon {
  transform: scaleX(-1);
}

.about-press__carousel .about-press__nav:hover,
.about-press__carousel .about-press__nav:focus-visible {
  background: transparent;
  border: none;
  color: transparent;
}

.about-press__carousel .about-press__nav:hover .about-press__nav-icon,
.about-press__carousel .about-press__nav:focus-visible .about-press__nav-icon {
  opacity: 0.85;
}
.about-press__carousel .h-slider__track.about-press__grid {
  display: flex;
  gap: 33px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 12px;
  padding-left: 1px;
  scroll-padding-inline: 1px 0;
  scrollbar-width: none;
}
.about-press__carousel .h-slider__track.about-press__grid::-webkit-scrollbar {
  display: none;
}
.about-press__carousel .news-card {
  flex: 0 0 min(378px, 88vw);
  scroll-snap-align: start;
  min-height: 478px;
  border: none;
  border-radius: 0;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}
.about-press__carousel .news-card:hover {
  box-shadow: 0 0 14px rgba(57, 59, 65, 0.12);
  border-color: transparent;
}
.about-press__carousel .news-card__img {
  aspect-ratio: 378 / 220;
  max-height: none;
  overflow: hidden;
  background: #e8ecf0;
}
.about-press__carousel .news-card__img .news-card__rubric {
  display: none;
}
.about-press__carousel .news-card__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.about-press__carousel .news-card__body {
  padding: 25px;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.about-press__carousel .news-card__meta {
  margin-bottom: 15px;
}
.about-press__carousel .news-card__meta .news-card__rubric {
  display: inline-flex;
  align-items: center;
  padding: 5px;
  background: #f1f1f1;
  border-radius: 5px;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #ed1a34;
}
.about-press__carousel .news-card__meta .news-card__date {
  font-family: "Fira Sans", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: normal;
  color: #020203;
}
.about-press__carousel .news-card__title {
  font-family: var(--font-heading);
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  margin-bottom: 10px;
}
.about-press__carousel .news-card__excerpt {
  font-family: "Fira Sans", sans-serif;
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
  flex: 1;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.about-press__carousel .news-card__more {
  margin-top: 15px;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  color: #686a73;
}
.section--about-press .text-center .btn.btn--primary {
  min-width: 282px;
  height: 47px;
  padding: 15px 40px;
  font-size: 14px;
  font-weight: 500;
  border-radius: 50px;
  box-sizing: border-box;
}

/* Figma 3_4 @1024 / 3_6 @375: Frame 15/16/721 — 3 ряда на tablet, без тегов на mobile */
@media (min-width: 600px) and (max-width: 1279px) {
  body.page-about .tags--about-press--compact {
    display: none;
  }

  body.page-about .tags--about-press--tablet {
    display: flex;
    max-width: 883px;
    width: 100%;
    margin-inline: auto;
    margin-bottom: 35px;
    gap: 10px;
  }

  body.page-about .tags--about-press--tablet .tags__row {
    flex-wrap: nowrap;
    justify-content: flex-start;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  body.page-about .tags--about-press--tablet .tags__row::-webkit-scrollbar {
    display: none;
  }

  body.page-about .tags--about-press--tablet .tags__row--center {
    justify-content: center;
  }

  body.page-about .section--about-press .section-header--about-press {
    margin-bottom: 25px;
  }
}

@media (max-width: 599px) {
  body.page-about .tags--about-press--compact,
  body.page-about .tags--about-press--tablet {
    display: none;
  }

  body.page-about .section--about-press .section-header--about-press {
    margin-bottom: 35px;
  }
}

@media (min-width: 1280px) {
  .about-press__carousel .about-press__nav.h-slider__nav {
    display: flex;
  }

  body.page-about .tags--about-press {
    margin-bottom: 55px;
  }

  /* Figma Frame 15/16: одна строка на ряд, gap 10 */
  body.page-about .tags--about-press .tags__row {
    flex-wrap: nowrap;
    justify-content: flex-start;
    width: 100%;
  }

  body.page-about .about-press__carousel .h-slider__track.about-press__grid {
    padding-left: 1px;
    scroll-padding-inline-start: 1px;
  }
  .about-contacts {
    grid-template-columns: minmax(0, 223px) minmax(0, 1fr) minmax(0, 557px);
    grid-template-areas:
      "title title map"
      "c1 c2 map"
      "c3 c4 map"
      "c5 c6 map";
    column-gap: 40px;
    row-gap: 32px;
    max-width: none;
    align-items: start;
  }

  .about-contacts__title {
    grid-area: title;
  }

  .about-contacts__map {
    grid-area: map;
    max-width: none;
    width: 100%;
    aspect-ratio: 1040 / 532;
    min-height: 320px;
    justify-self: stretch;
  }

  .about-contacts__cell--1 { grid-area: c1; }
  .about-contacts__cell--2 { grid-area: c2; }
  .about-contacts__cell--3 { grid-area: c3; }
  .about-contacts__cell--4 { grid-area: c4; }
  .about-contacts__cell--5 { grid-area: c5; }
  .about-contacts__cell--6 { grid-area: c6; }
  .section--about-press .section-header--center {
    margin-bottom: 45px;
  }
  .section--about-press .section-header--center .section-title {
    margin-bottom: 0;
  }
  .tags--about-press {
    margin-bottom: 55px;
  }

  .about-press__carousel .news-card {
    flex: 0 0 378px;
    width: 378px;
  }
}

@media (max-width: 1023px) {
  .about-contacts {
    grid-template-columns: 1fr;
    grid-template-areas: none;
  }

  .about-contacts__title,
  .about-contacts__map,
  .about-contacts__cell {
    grid-area: auto;
  }

  .about-contacts__map {
    order: -1;
    justify-self: stretch;
    max-width: none;
    min-height: min(343px, 92vw);
  }
}

/* Figma 3_2: lead y=340 — перекрывает .hero__title { margin-bottom: 20px } */
@media (min-width: 1280px) {
  html body.page-about .hero.page-hero.hero--about h1.hero__title {
    margin-bottom: 30px;
    font-size: 36px;
    font-weight: 800;
  }
  body.page-about .about-mission-card__title {
    color: #020303;
  }
}

/* About hero: финальные перекрытия (все ширины) */
body:not(.page-home) .hero--about:not(.hero--strip) .hero-decor {
  display: block;
}

/* Стандартизация: финальные перекрытия L1 hero (после глобальных photo-hero @1280) */
@media (min-width: 1280px) {
  html body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip)::before {
    background-image: none;
    background-color: var(--std-hero-bg);
  }

  html body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization h1.hero__title {
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    letter-spacing: 0;
    max-width: 36rem;
    margin: 0 0 10px;
  }

  html body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip) .hero__inner {
    max-width: none;
    width: 100%;
    margin-inline: 0;
  }

  body.page-standardization .hero--standardization .breadcrumbs a {
    text-decoration: underline;
    text-underline-offset: 2px;
  }

  body.page-standardization .catalog-block__btn.btn.btn--primary {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 197px;
    min-width: 197px;
    height: var(--btn-height);
    min-height: var(--btn-height);
    max-height: var(--btn-height);
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    padding: 0 28px;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    border: 0;
    border-radius: var(--btn-radius);
    box-shadow: none;
    transform: none;
    -webkit-font-smoothing: antialiased;
  }

  body.page-standardization .catalog-block__btn.btn.btn--primary:hover {
    transform: none;
    box-shadow: none;
    background-color: var(--c-action-hover);
    border-color: var(--c-action-hover);
    color: #fff;
  }

  body.page-standardization .catalog-block__title {
    display: flex;
    align-items: center;
    font-family: var(--font);
    font-size: 36px;
    font-weight: 800;
    line-height: 1.27;
    height: 49px;
    min-height: 49px;
    max-height: 49px;
    overflow: hidden;
    color: var(--c-brand);
    -webkit-text-fill-color: #0088cc;
  }

  body.page-standardization .catalog-block__lead {
    margin: 0;
    height: 63px;
    max-height: 63px;
    font-family: var(--font);
    font-size: 16px;
    line-height: 1.3;
    color: #121617;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
  }

  body.page-standardization .catalog-block__cta {
    margin: 0;
    padding-top: 8px;
    align-self: start;
  }

  body.page-standardization .catalog-block__art {
    position: absolute;
    top: -18px;
    left: 878px;
    width: 274px;
    margin: 0;
  }

  body.page-standardization .catalog-block__art img {
    display: block;
    width: 274px;
    height: 233px;
    object-fit: contain;
    object-position: right top;
    image-rendering: auto;
  }

  body.page-standardization .catalog-block__tiles .std-card__title {
    flex: 0 0 48px;
    min-height: 48px;
    max-height: 48px;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
    color: #020203;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin: 0;
  }

  body.page-standardization .catalog-block__tiles .std-card__text {
    flex: 1 1 auto;
    min-height: 0;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    max-height: 84px;
    -webkit-line-clamp: 4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0;
  }

  /* Figma 5_3_Стандартизация_1280 #dev (13189:40607–40653): 4×275×240, Montserrat 20 / Fira 16 */
  body.page-standardization #dev > .container {
    max-width: 1280px;
    margin-inline: auto;
    padding-inline: 40px;
    box-sizing: border-box;
  }

  body.page-standardization #dev .std-section-title--center {
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    color: #020203;
    max-width: none;
    margin-bottom: 70px;
  }

  body.page-standardization .std-dev-grid {
    grid-template-columns: repeat(4, 275px);
    gap: 33px;
    row-gap: 25px;
    justify-content: center;
    align-items: start;
    position: relative;
  }

  body.page-standardization .std-dev-cta {
    margin: 70px 0 0;
    padding: 0;
    text-align: center;
  }

  body.page-standardization .std-dev-cta__btn.btn.btn--primary {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 260px;
    width: auto;
    height: 50px;
    min-height: 50px;
    max-height: 50px;
    padding: 15px 40px;
    border-radius: 50px;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    transform: none;
    box-shadow: none;
  }

  body.page-standardization .std-section-header--resources .std-section-title {
    font-family: var(--font);
    font-size: 38px;
    font-weight: 600;
    line-height: 1.2;
    color: #020303;
  }

  body.page-standardization #federal .std-section-title--center {
    font-family: var(--font);
    font-size: 38px;
    font-weight: 600;
    line-height: 1.2;
    color: #020303;
    margin-bottom: 53px;
  }

  body.page-standardization #resources > .container {
    padding-left: 120px;
    padding-right: 120px;
    box-sizing: border-box;
  }

  body.page-standardization .section--std-resources {
    padding-top: 60px;
    padding-bottom: 48px;
    background: #f5f5f5;
    box-sizing: border-box;
  }

  body.page-standardization .std-section-header--resources {
    margin-bottom: 40px;
  }

  body.page-standardization .std-resources-panel {
    border: none;
    background: transparent;
    padding: 0;
  }

  body.page-standardization .std-resources-logos {
    position: relative;
    display: block;
    width: 1198px;
    max-width: 100%;
    min-height: 163px;
    margin-inline: auto;
  }

  body.page-standardization .std-resources-logos__item {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
    padding: 0;
  }

  body.page-standardization .std-resources-logos__item:nth-child(1) {
    left: 0;
    top: 38px;
  }

  body.page-standardization .std-resources-logos__item:nth-child(2) {
    left: 354px;
    top: 21px;
  }

  body.page-standardization .std-resources-logos__item:nth-child(3) {
    left: 700px;
    top: 0;
  }

  body.page-standardization .std-resources-logos__item:nth-child(4) {
    left: 1088px;
    top: 26px;
  }

  body.page-standardization .std-resources-logos__item:nth-child(1) img {
    max-width: 129px;
    max-height: 86px;
  }

  body.page-standardization .std-resources-logos__item:nth-child(2) img {
    max-width: 120px;
    max-height: 120px;
  }

  body.page-standardization .std-resources-logos__item:nth-child(3) img {
    max-width: 163px;
    max-height: 163px;
  }

  body.page-standardization .std-resources-logos__item:nth-child(4) img {
    max-width: 110px;
    max-height: 110px;
  }

  /* Header 156px на L3 */
  body.page-l3:not(.page-home) .header__top,
  body[class*="page-standardization"]:not(.page-standardization) .header__top {
    padding-top: 17px;
    padding-bottom: 17px;
  }

  body.page-l3:not(.page-home) .header__inner,
  body[class*="page-standardization"]:not(.page-standardization) .header__inner {
    padding-top: 11px;
    padding-bottom: 15px;
    min-height: 54px;
  }

  /* L3 @1440: gutter 120px, поиск 229×42, pill → 8px как в Figma */
  body.page-l3:not(.page-home) .header > .container.header__top,
  body.page-l3:not(.page-home) .header > .container.header__inner {
    padding-inline: max(24px, calc((100vw - 1200px) / 2));
  }
  body.page-l3:not(.page-home) .header__search {
    width: 229px;
    min-width: 229px;
    max-width: 229px;
    border-radius: 8px;
    padding: 0 4px 0 19px;
  }
  body.page-l3:not(.page-home) .header__search input {
    padding: 12px 0;
    font-size: 15px;
    line-height: 15px;
  }
  body.page-l3:not(.page-home) .header__search input::placeholder {
    font-size: 15px;
    line-height: 15px;
  }
  body.page-l3:not(.page-home) .header__utilities {
    gap: 10px;
    min-width: 280px;
  }
  body.page-l3:not(.page-home) .header__quick {
    gap: 10px;
  }

  /* L1 /standardization/: зазор шапка→hero — padding-bottom у .header (header-figma.css) */
  body.page-standardization .hero.page-hero.hero--standardization:not(.hero--strip) {
    margin-top: 0;
  }

  html body.page-standardization .cta-banner.cta-banner--std-join {
    background: var(--c-action);
    background-image: none;
    box-shadow: none;
  }

  body.page-standardization .std-resources-logos__item img {
    opacity: 1;
  }
}

/* CTA «Полигон» на /standardization/ — внутри #federal (поток документа @1280+) */
body.page-standardization .std-federal-polygon {
  padding-top: clamp(28px, 4vw, 40px);
  padding-bottom: clamp(28px, 4vw, 40px);
  background: var(--std-hero-bg);
}

@media (min-width: 1280px) {
  body.page-standardization .std-federal-polygon {
    padding-top: 0;
    padding-bottom: 0;
    background: transparent;
  }
}

body.page-standardization #polygon > .container {
  max-width: 1200px;
}

body.page-standardization #polygon .cta-banner--polygon {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: auto;
  min-height: clamp(260px, 72vw, 280px);
  max-height: none;
  padding: clamp(24px, 5vw, 32px) clamp(16px, 4vw, 40px) clamp(28px, 5vw, 36px);
  gap: 0;
  background-image:
    linear-gradient(
      102deg,
      rgba(0, 32, 82, 0.9) 0%,
      rgba(0, 26, 68, 0.72) 42%,
      rgba(0, 16, 42, 0.55) 100%
    ),
    url("/local/templates/ris/assets/img/cta/polygon-banner-mcp.png");
  background-position: 0 0, 68% center;
  background-size: auto, cover;
  background-repeat: no-repeat;
}

body.page-standardization #polygon .cta-banner--polygon::before {
  display: none;
}

body.page-standardization #polygon .cta-banner--polygon .cta-banner__copy {
  max-width: 935px;
  width: 100%;
}

body.page-standardization #polygon .cta-banner--polygon h2 {
  font-family: var(--font);
  font-size: clamp(18px, 4.6vw, 30px);
  font-weight: 600;
  line-height: 1.27;
  margin: 0 0 clamp(12px, 3vw, 35px);
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
  text-align: center;
  display: block;
  overflow: visible;
  max-width: 935px;
}

body.page-standardization #polygon .cta-banner--polygon p {
  margin: 0 auto clamp(18px, 4vw, 45px);
  max-width: min(523px, 100%);
  font-family: var(--font);
  font-size: clamp(13px, 3.2vw, 14px);
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.92);
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
  text-align: center;
}

body.page-standardization #polygon .cta-banner--polygon .cta-banner__actions {
  justify-content: center;
  margin-top: 0;
  width: 100%;
}

body.page-standardization #polygon .cta-banner--polygon .cta-banner__actions .btn {
  width: min(100%, 280px);
  min-width: min(230px, 100%);
  min-height: 47px;
  padding: 12px 28px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 500;
  justify-content: center;
}

@media (max-width: 880px) {
  body.page-standardization #polygon .cta-banner--polygon {
    min-height: clamp(280px, 78vw, 340px);
    justify-content: center;
    text-align: center;
    background-image:
      linear-gradient(
        102deg,
        rgba(0, 32, 82, 0.92) 0%,
        rgba(0, 24, 62, 0.78) 48%,
        rgba(0, 14, 38, 0.62) 100%
      ),
      url("/local/templates/ris/assets/img/cta/polygon-banner-mobile.jpg"),
      url("/local/templates/ris/assets/img/cta/polygon-banner-mcp.png");
    background-size: auto, cover, cover;
    background-position: 0 0, 72% 38%, 68% center;
  }

  body.page-standardization #polygon .cta-banner--polygon h2 {
    font-size: clamp(17px, 4.8vw, 22px);
    line-height: 1.28;
    margin-bottom: 12px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }

  body.page-standardization #polygon .cta-banner--polygon p {
    font-size: 13px;
    line-height: 1.45;
    margin-bottom: 20px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 1280px) {
  body.page-standardization #polygon .cta-banner--polygon {
    min-height: 280px;
    padding: 32px 40px 36px;
    background-position: 0 0, 68% 42%;
  }

  body.page-standardization #polygon .cta-banner--polygon h2 {
    font-size: 30px;
    margin-bottom: 35px;
  }

  body.page-standardization #polygon .cta-banner--polygon p {
    font-size: 14px;
    margin-bottom: 45px;
  }
}

/* L2/L3 shared: compact strip hero + unified subpage layout */
body:not(.page-home) .hero.hero--subpage.hero--strip {
  min-height: 135px;
  padding: 30px 0 40px;
  box-sizing: border-box;
  background: #f5f5f5 !important;
  background-color: #f5f5f5 !important;
  color: var(--c-text);
}
body.page-l3:not(.page-home) .hero.hero--subpage.hero--strip {
  min-height: 135px;
  max-height: 135px;
  padding: 30px 0 40px;
  overflow: hidden;
}
body[class*="page-standardization"].page-l3:not(.page-home) .hero.hero--subpage.hero--strip {
  min-height: 135px;
  max-height: 135px;
  overflow: hidden;
  box-sizing: border-box;
}
body.page-l3:not(.page-home) .hero.hero--subpage.hero--strip .hero__inner {
  margin-bottom: 0;
}
body:not(.page-home) .hero.hero--subpage.hero--strip::before,
body:not(.page-home) .hero.hero--subpage.hero--strip::after {
  display: none;
}
body:not(.page-home) .hero.hero--subpage.hero--strip .hero-decor {
  display: none;
}
body:not(.page-home) .hero.hero--subpage.hero--strip .hero__inner {
  max-width: 1200px;
  margin-bottom: 8px;
}
body:not(.page-home) .hero.hero--subpage.hero--strip .hero__title {
  margin: 0;
  color: var(--c-text);
  font-size: 28px;
  line-height: 1.35;
}
body:not(.page-home) .hero.hero--subpage.hero--strip .breadcrumbs,
body:not(.page-home) .hero.hero--subpage.hero--strip .breadcrumbs a {
  color: var(--c-text-muted);
}
body.page-l3:not(.page-home) .hero.hero--subpage.hero--strip .hero__title {
  font-size: 28px;
  line-height: 1.35;
}
body.page-l3:not(.page-home) .hero.hero--subpage.hero--strip .breadcrumbs {
  margin-top: 10px;
  font-family: var(--font-body-figma);
  font-size: 14px;
  line-height: normal;
}
body:not(.page-home) .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 {
  padding-top: 0;
  padding-bottom: 80px;
}
body:not(.page-home) .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3 {
  display: flow-root;
  max-width: 1200px;
  padding-left: 0;
  padding-right: 0;
}
/* Keep public L3 layout stable even when Bitrix admin styles leak onto .container. */
body .section--subpage.section--subpage-l3 > .container.subpage-l3 {
  display: flow-root !important;
  grid-template-columns: none !important;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body main#main > section#content > .container.subpage-l3 {
  display: flow-root !important;
  grid-template-columns: none !important;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body .section--subpage.section--subpage-l3 > .container.subpage-l3 > .subpage-l3__body {
  width: auto !important;
  max-width: none !important;
  min-height: 0;
  display: flow-root;
}
body main#main > section#content > .container.subpage-l3 > .subpage-l3__body {
  width: auto !important;
  max-width: none !important;
  min-height: 0;
  display: flow-root;
}
/* Keep public L3 layout stable even when Bitrix admin panel styles leak onto .container. */
body:not(.page-home) .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3.subpage-l3--strip {
  display: flow-root !important;
  grid-template-columns: none !important;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body:not(.page-home) .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3.subpage-l3--strip > .subpage-l3__body {
  width: auto !important;
  max-width: none !important;
  min-height: 0;
  display: flow-root;
}
body:not(.page-home) .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3__body {
  max-width: none;
  min-height: 0;
  display: flow-root;
}
.subpage-l3--strip .subpage-l3__body > p:first-child:not(.l3-important__lead) {
  margin-top: 32px;
}
.subpage-l3--strip .subpage-l3__body > .l3-accordion:first-child {
  margin-top: 60px;
  margin-bottom: 48px;
}
.subpage-l3--strip .subpage-l3__body > .l3-form:first-child {
  margin-top: 60px;
}
.subpage-l3--strip .subpage-l3__body > .l3-link-list:first-child {
  margin-top: 60px;
}
.subpage-l3--strip .subpage-l3__body > .l3-figure--banner:first-child + .l3-block-title {
  margin-top: 48px;
  margin-bottom: 35px;
}
.subpage-l3--strip .subpage-l3__body > .l3-figure--banner:first-child + p {
  margin-top: 32px;
}
.subpage-l3--strip .subpage-l3__body > .l3-figure--banner:first-child + .l3-cols {
  margin-top: 0;
}
.subpage-l3--strip .subpage-l3__body > .l3-figure--banner:first-child + .l3-block-title + .l3-cols {
  margin-top: 0;
}
@media (min-width: 1248px) {
  body:not(.page-home) .hero.hero--subpage.hero--strip > .container {
    max-width: none;
    padding-left: max(24px, calc((100vw - 1200px) / 2));
    padding-right: max(24px, calc((100vw - 1200px) / 2));
  }
  body:not(.page-home) .hero.hero--subpage.hero--strip .hero__inner {
    max-width: none;
    width: 100%;
  }
  body:not(.page-home) .section--subpage-l3 > .container.subpage-l3 {
    max-width: none;
    padding-left: max(24px, calc((100vw - 1200px) / 2));
    padding-right: max(24px, calc((100vw - 1200px) / 2));
  }
}
body:not(.page-home) .hero.hero--subpage.hero--strip .hero__title {
  font-size: 34px;
  line-height: 38px;
  font-weight: 700;
  letter-spacing: 0;
  max-width: none;
}
body:not(.page-home) .hero.hero--subpage.hero--strip .breadcrumbs {
  margin-top: 10px;
  font-size: 13px;
  line-height: 17px;
}
.section--subpage-l3 .subpage-l3__body p {
  font-family: var(--font);
  margin: 0 0 24px;
  font-size: 16px;
  line-height: 1.31;
  color: var(--c-text);
}
.section--subpage-l3 .subpage-l3__body h2 {
  font-family: var(--font);
  margin: 48px 0 24px;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.19;
  letter-spacing: 0;
  color: var(--c-text);
}
.section--subpage-l3 .subpage-l3__body h2:first-child {
  margin-top: 0;
}
.section--subpage-l3 .subpage-l3__body h2.l3-block-title {
  margin: 48px 0 35px;
  line-height: 32px;
  font-size: 32px;
}
.section--subpage-l3 .subpage-l3__body h2.l3-block-title.l3-block-title--hero-gap:first-child {
  margin-top: 594px;
  margin-bottom: 35px;
}
.section--subpage-l3 .subpage-l3__body.prose > h2.l3-block-title:first-child:not(.l3-block-title--hero-gap) {
  margin-top: 0;
}
.section--subpage-l3 .subpage-l3__body .l3-accordion--plain .l3-accordion__row--plain {
  grid-template-columns: 1fr 14px;
}
.section--subpage-l3 .subpage-l3__body .l3-accordion--plain {
  margin: 24px 0;
}
.section--subpage-l3 .subpage-l3__body .l3-important {
  margin: 32px 0;
  padding: 28px 32px;
  background: #f5f5f5;
  border-radius: 4px;
}
.section--subpage-l3 .subpage-l3__body .l3-important__head {
  display: grid;
  grid-template-columns: minmax(140px, 217px) 1fr;
  gap: 24px 48px;
  align-items: start;
  margin-bottom: 20px;
}
.section--subpage-l3 .subpage-l3__body .l3-important__title {
  margin: 0;
  font-size: 32px;
  line-height: 1.19;
  font-weight: 700;
}
.section--subpage-l3 .subpage-l3__body .l3-important__lead {
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
}
.section--subpage-l3 .subpage-l3__body .l3-important > p {
  margin: 0;
}
.section--subpage-l3 .subpage-l3__body .l3-accordion__intro {
  margin: 0 0 20px;
  font-size: 16px;
  line-height: 1.31;
  color: var(--c-text);
}
.section--subpage-l3 .subpage-l3__body .l3-cols__col > p {
  margin-bottom: 0;
  max-width: 548px;
}
.section--subpage-l3 .subpage-l3__body .l3-form {
  max-width: 804px;
  margin: 0 0 48px;
}
.section--subpage-l3 .subpage-l3__body .l3-form:not(.l3-form--order) .l3-form__row--radios {
  min-height: 20px;
  margin-bottom: 20px;
  align-items: center;
}
.section--subpage-l3 .subpage-l3__body .l3-form:not(.l3-form--order) .l3-form__row--madein {
  min-height: 40px;
  margin-bottom: 15px;
  align-items: start;
}
.section--subpage-l3 .subpage-l3__body .l3-form__row--actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 20px;
  margin-bottom: 0;
  grid-template-columns: unset;
}
.section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__row--actions {
  padding-left: 344px;
}
.section--subpage-l3 .subpage-l3__body .l3-form__row--actions .l3-form__consent {
  flex: 0 1 294px;
  max-width: 294px;
}
.section--subpage-l3 .subpage-l3__body .l3-form__row--actions .btn,
.section--subpage-l3 .subpage-l3__body .l3-form__row--actions .l3-form__submit {
  flex: 0 0 auto;
  min-width: 160px;
  height: 47px;
}
.section--subpage-l3.section--subpage-l3 {
  background: #fff;
}

/* Figma L3: Frame 769 — нумерованные строки-ссылки (01/02 + chevron Group 30) */
.l3-link-list {
  display: flex;
  flex-direction: column;
  max-width: 1200px;
  margin: 0 auto;
  border-top: 1px solid var(--c-line, #e0e4ea);
}
.l3-link-list--sections {
  border-top: 0;
}
.l3-link-list--sections .l3-link-list__section + .l3-link-list__section {
  margin-top: 40px;
}
.l3-link-list__heading {
  margin: 0 0 20px;
  font-family: var(--font);
  font-size: 24px;
  font-weight: 600;
  line-height: normal;
  color: #020203;
}
.l3-link-list--sections .l3-link-list__section .l3-link-list__heading {
  padding-bottom: 20px;
  margin-bottom: 0;
  border-bottom: 1px solid var(--c-line, #e0e4ea);
}
.l3-link-list--sections .l3-link-list__section .l3-link-list__row:first-of-type {
  border-top: 0;
}
.l3-link-list + .l3-link-list--sections {
  margin-top: 0;
}
.l3-antikor-contacts {
  margin-top: 0;
  max-width: 574px;
}
.l3-antikor-contacts .l3-link-list__heading {
  margin-bottom: 20px;
  padding-bottom: 0;
  border-bottom: 0;
}
.l3-antikor-contacts__body {
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
.l3-antikor-contacts__body p {
  margin: 0 0 15px;
}
.l3-antikor-contacts__body p:last-child {
  margin-bottom: 0;
}
.l3-antikor-contacts__label {
  font-weight: 500;
}
.l3-antikor-contacts__link {
  color: #08c;
  text-decoration: none;
}
.l3-antikor-contacts__link:hover {
  text-decoration: underline;
}
.l3-antikor-contacts__action {
  margin: 40px 0 0;
}
.l3-antikor-contacts__action .btn.btn--primary {
  min-height: 47px;
  padding: 15px 40px;
  border-radius: 50px;
  border-width: 1px;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  background: #08c;
  border-color: #08c;
}
.l3-antikor-contacts__action .btn.btn--primary:hover {
  background: #08c;
  border-color: #08c;
  opacity: 0.92;
  transform: none;
  box-shadow: none;
}
.l3-postgraduate-intro {
  margin: 0 0 20px;
  max-width: 1100px;
  font-family: var(--font);
  font-size: 24px;
  font-weight: 600;
  line-height: normal;
  color: #020203;
}
.l3-postgraduate-intro + .l3-link-list {
  margin-top: 0;
}
.l3-accordion__intro + .l3-link-list {
  margin-top: 20px;
}
.l3-postgraduate-note {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  max-width: 602px;
  min-height: 80px;
  margin: 32px 0 40px;
  padding: 20px 25px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
  background: #f5f5f5;
  border-radius: 0;
}
.l3-postgraduate-note__icon {
  flex-shrink: 0;
  width: 44px;
  height: 50px;
  object-fit: contain;
}
.l3-postgraduate-note p {
  margin: 0;
}
.l3-postgraduate-panels {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 580px));
  justify-content: space-between;
  gap: 10px 40px;
  max-width: 1200px;
  margin: 48px 0 0;
}
.l3-postgraduate-panels__col {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}
.l3-postgraduate-panel {
  background: #fff;
  border-radius: 50px;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  overflow: hidden;
}
.l3-postgraduate-panel[open] {
  border-radius: 25px;
}
.l3-postgraduate-panel__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 41px;
  min-height: 60px;
  padding: 20px 25px;
  list-style: none;
  cursor: pointer;
}
.l3-postgraduate-panel__summary::-webkit-details-marker {
  display: none;
}
.l3-postgraduate-panel__title {
  flex: 1 1 auto;
  min-width: 0;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}
.l3-postgraduate-panel[open] .l3-postgraduate-panel__title {
  font-weight: 600;
}
.l3-postgraduate-panel__chev {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  background: url("img/about/l3-link-arrow-figma.svg") center / 6.273px 14px no-repeat;
  transform: rotate(90deg);
  transition: transform 0.2s ease;
}
.l3-postgraduate-panel[open] .l3-postgraduate-panel__chev {
  transform: rotate(-90deg);
}
.l3-postgraduate-panel__body {
  padding: 0 25px 25px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
.l3-postgraduate-panel__body > :first-child {
  margin-top: 0;
}
.l3-postgraduate-panel__line {
  margin: 0 0 20px;
}
.l3-postgraduate-panel__block {
  margin: 0 0 20px;
}
.l3-postgraduate-panel__block:last-child {
  margin-bottom: 0;
}
.l3-postgraduate-panel__block p {
  margin: 0 0 10px;
}
.l3-postgraduate-panel__block p:last-child {
  margin-bottom: 0;
}
.l3-postgraduate-panel__label {
  font-weight: 500;
}
.l3-postgraduate-panel__body a {
  color: #08c;
  text-decoration: none;
}
.l3-postgraduate-panel__body a:hover {
  text-decoration: underline;
}
.l3-postgraduate-panel__links {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.l3-postgraduate-panel__link {
  display: block;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #08c;
  text-decoration: none;
}
.l3-postgraduate-panel__link:hover {
  text-decoration: underline;
}
.l3-postgraduate-note + .l3-link-list--sections {
  margin-top: 0;
}
@media (max-width: 1247px) {
  .l3-postgraduate-panels {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.l3-link-list__row {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 6.273px;
  gap: 10px;
  align-items: center;
  min-height: 0;
  padding: 20px 0;
  border-bottom: 1px solid var(--c-line, #e0e4ea);
  text-decoration: none !important;
  color: inherit;
  transition: color var(--transition);
}
.l3-link-list__row:visited {
  color: inherit;
}
.section--subpage-l3 .subpage-l3__body.prose .l3-link-list__row,
.section--subpage-l3 .subpage-l3__body.prose .l3-link-list__row:visited,
.section--subpage-l3 .subpage-l3__body.prose .l3-link-list__row:hover {
  text-decoration: none;
}
.l3-link-list__row:hover {
  color: #08c;
}
.l3-link-list__num {
  font-family: var(--font);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #08c;
  width: 30px;
  padding-top: 0;
  text-decoration: none;
}
.l3-link-list__label {
  font-family: var(--font);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
  text-wrap: pretty;
  text-decoration: none;
}
.l3-link-list__row:hover .l3-link-list__label {
  color: #08c;
}
.l3-link-list__arrow {
  display: block;
  width: 6.273px;
  height: 14px;
  justify-self: end;
  background: url("img/about/l3-link-arrow-figma.svg") center / contain no-repeat;
}

/* Figma 13020:12763 «Обучение_Диссертационные советы»: баннер 1440×534 + градиент + текст */
.l3-figure--banner-dissertation {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1440 / 534;
  margin-bottom: 60px;
}
.l3-figure--banner-dissertation img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 22%;
}
.l3-figure--banner-dissertation .l3-figure__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to left, rgba(2, 2, 3, 0.72) 55%, rgba(2, 2, 3, 0) 100%);
  pointer-events: none;
}
.l3-figure--banner-dissertation .l3-figure__caption {
  position: absolute;
  left: 52.85%;
  top: 26.4%;
  max-width: 34.86%;
  margin: 0;
  padding: 0;
  font-family: var(--font);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.3;
  color: #fff;
  text-wrap: pretty;
}
.subpage-l3--strip .subpage-l3__body > .l3-figure--banner-dissertation + .l3-link-list {
  margin-top: 0;
}
@media (max-width: 991px) {
  .l3-figure--banner-dissertation {
    aspect-ratio: auto;
    min-height: clamp(320px, 56vw, 534px);
    margin-bottom: 40px;
  }
  .l3-figure--banner-dissertation .l3-figure__caption {
    right: 24px;
    left: 24px;
    top: auto;
    bottom: 24px;
    transform: none;
    max-width: none;
    font-size: 16px;
  }
  .l3-figure--banner-dissertation .l3-figure__overlay {
    background: linear-gradient(to top, rgba(2, 2, 3, 0.82) 52%, rgba(2, 2, 3, 0.12) 100%);
  }
}

/* Figma 13020:13061 «Сертификация и испытания_Сертификация»: баннер + оверлей + блок на баннере */
.l3-figure--banner-cert-voluntary {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1440 / 534;
  margin-bottom: 60px;
}
body[class*="page-certification-voluntary-personnel"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner-cert-voluntary {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-bottom: 60px;
  box-sizing: border-box;
}
@media (min-width: 800px) and (max-width: 1279px) {
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-figure--banner-cert-voluntary {
    width: calc(100% + 2 * var(--gutter));
    max-width: none;
    margin-left: calc(-1 * var(--gutter));
    margin-right: calc(-1 * var(--gutter));
  }
}
.l3-figure--banner-cert-voluntary > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.l3-figure--banner-cert-voluntary .l3-figure__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(2, 2, 3, 0.72);
  pointer-events: none;
}
.l3-figure--banner-cert-voluntary .l3-cert-banner__content {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: flex-start;
  padding: 140px 122px 0;
  box-sizing: border-box;
  pointer-events: none;
}
.l3-figure--banner-cert-voluntary .l3-cert-banner__grid {
  display: grid;
  grid-template-columns: minmax(0, 479px) minmax(0, 1fr);
  gap: 0 187px;
  width: 100%;
  max-width: 1196px;
  align-items: start;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner-cert-voluntary h2.l3-cert-banner__title {
  margin: 0 0 35px;
  font-family: var(--font-heading);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  color: #fff;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner-cert-voluntary p.l3-cert-banner__text {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.3;
  color: #fff;
}
.l3-figure--banner-cert-voluntary .l3-cert-banner__col--brand {
  display: grid;
  grid-template-columns: 98px minmax(0, 1fr);
  gap: 0 30px;
  align-items: start;
}
.l3-figure--banner-cert-voluntary .l3-cert-banner__icon-wrap {
  width: 98px;
  height: 98px;
  flex-shrink: 0;
  overflow: hidden;
  background: #fff;
}
.l3-figure--banner-cert-voluntary .l3-cert-banner__icon {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: contain;
  object-position: center center;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-banner__successor {
  margin: 0;
  color: #fff;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-banner__successor p {
  margin: 0 0 5px;
  color: #fff;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-banner__successor p:last-child {
  margin-bottom: 0;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-banner__successor-lead {
  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.3;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-banner__successor-brand {
  font-family: var(--font-heading);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.3;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-banner__successor-meta {
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-services {
  margin-bottom: 60px;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-list--cert-services {
  margin: 0;
  padding-left: 24px;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-list--cert-services > li {
  margin-bottom: 15px;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-list--cert-services > li:last-child {
  margin-bottom: 0;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-list--cert-services ul {
  margin: 15px 0 0;
  padding-left: 24px;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-list--cert-services ul > li {
  margin-bottom: 15px;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-list--cert-services ul > li:last-child {
  margin-bottom: 0;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-contacts p {
  margin: 0 0 15px;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-contacts p:last-child {
  margin-bottom: 0;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-contacts__label {
  font-weight: 500;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-contacts__value {
  color: #08c;
  text-decoration: none;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cert-contacts__value:hover {
  text-decoration: underline;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-lead .l3-cols__col > p {
  margin: 0 0 15px;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-lead .l3-cols__col > p:last-child {
  margin-bottom: 0;
}
body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-accordion .l3-accordion__num {
  font-family: var(--font-heading);
  font-size: 18px;
  font-weight: 500;
  color: #08c;
}
body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-accordion .l3-accordion__label {
  font-family: var(--font-heading);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}
body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cols--cert-services,
body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cols--cert-lead {
  grid-template-columns: minmax(0, 479px) minmax(0, 479px);
  justify-content: space-between;
  gap: 24px 40px;
}
body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body > .l3-block-title + .l3-cols--cert-services {
  margin-top: 35px;
}
body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-accordion {
  margin-bottom: 35px;
}
.subpage-l3--strip .subpage-l3__body > .l3-figure--banner-cert-voluntary:first-child + .l3-block-title {
  margin-top: 0;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-lead {
  margin: 60px 0;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-lead .l3-block-title {
  margin-bottom: 35px;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body p.l3-cta.l3-cta--pair {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: center;
  margin: 35px 0 60px;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner-cert-voluntary:first-child + .l3-block-title {
  margin-top: 0;
}
/* Figma L3 «Сертификация» — шаблоны 13208:2679 / 4017 / 5516 / 6135 / 912 / 4895 */
@media (max-width: 1439px) {
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary {
    aspect-ratio: 1280 / 484;
    margin-bottom: 50px;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__content {
    padding: 125px 42px 0;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__grid {
    grid-template-columns: minmax(0, 479px) minmax(0, 1fr);
    gap: 0 187px;
    max-width: none;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cols--cert-services,
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cols--cert-lead {
    grid-template-columns: minmax(0, 479px) minmax(0, 479px);
    gap: 24px 40px;
  }
}

@media (max-width: 1279px) {
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary {
    aspect-ratio: 1024 / 427;
    margin-bottom: 45px;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__content {
    padding: 44px 27px 0;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__grid {
    grid-template-columns: minmax(0, 372px) minmax(0, 1fr);
    gap: 0 120px;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cols--cert-services,
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cols--cert-lead {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 24px 31px;
  }
}

@media (max-width: 1023px) {
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary {
    aspect-ratio: 800 / 292;
    margin-bottom: 40px;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__content {
    padding: 17px 30px 0;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__grid {
    grid-template-columns: minmax(0, 332px) minmax(0, 1fr);
    gap: 0 70px;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__col--brand {
    grid-template-columns: 1fr;
    gap: 12px 0;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__icon-wrap {
    width: 72px;
    height: 72px;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-figure--banner-cert-voluntary h2.l3-cert-banner__title {
    font-size: 24px;
    margin-bottom: 20px;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-figure--banner-cert-voluntary p.l3-cert-banner__text {
    font-size: 16px;
  }
}

@media (max-width: 799px) {
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-figure--banner-cert-voluntary {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-bottom: 30px;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary {
    aspect-ratio: 375 / 666;
    margin-bottom: 30px;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__content {
    padding: 49px 16px 24px;
    align-items: flex-start;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__grid {
    grid-template-columns: 1fr;
    gap: 20px;
    max-width: none;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-figure--banner-cert-voluntary h2.l3-cert-banner__title {
    font-size: 24px;
    margin-bottom: 20px;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-figure--banner-cert-voluntary p.l3-cert-banner__text {
    font-size: 16px;
    line-height: 1.3;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__col--brand {
    grid-template-columns: 1fr;
    gap: 20px 0;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__icon-wrap {
    width: 72px;
    height: 72px;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cert-banner__successor p {
    font-family: var(--font-body-figma, "Fira Sans", sans-serif);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cols--cert-services,
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cols--cert-lead {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body p.l3-cta.l3-cta--pair {
    flex-wrap: nowrap;
    gap: 16px;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body p.l3-cta.l3-cta--pair .btn--primary {
    min-width: 114px;
    flex: 0 0 auto;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body p.l3-cta.l3-cta--pair .btn--outline-action {
    min-width: 205px;
    flex: 1 1 auto;
  }
  body.page-certification-voluntary-personnel .hero--certification.hero--strip .hero__inner {
    padding-top: 16px;
    padding-bottom: 12px;
  }
  body.page-certification-voluntary-personnel .hero--certification.hero--strip .hero__title {
    font-size: 32px;
    margin-bottom: 8px;
  }
}

@media (min-width: 1900px) {
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary {
    aspect-ratio: 1920 / 763;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__content {
    padding: 210px 120px 0;
  }
  body.page-certification-voluntary-personnel .l3-figure--banner-cert-voluntary .l3-cert-banner__grid {
    max-width: 1676px;
    grid-template-columns: minmax(0, 686px) minmax(0, 1fr);
    gap: 0 224px;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cols--cert-services,
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body .l3-cols--cert-lead {
    grid-template-columns: minmax(0, 633px) minmax(0, 633px);
    gap: 24px 410px;
    max-width: 1676px;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body p.l3-cta.l3-cta--pair .btn--primary {
    min-width: 145px;
  }
  body.page-certification-voluntary-personnel .section--subpage-l3 .subpage-l3__body p.l3-cta.l3-cta--pair .btn--outline-action {
    min-width: 260px;
  }
}

.section--subpage-l3 .subpage-l3__body:has(.l3-link-list),
.section--subpage-l3 .subpage-l3__body:has(.l3-antikor-contacts),
.section--subpage-l3 .subpage-l3__body:has(.about-leadership),
.section--subpage-l3 .subpage-l3__body:has([data-subpage-wide]) {
  max-width: none;
  width: 100%;
}
.section--subpage-l3 .subpage-l3__body .l3-form__row {
  display: grid;
  grid-template-columns: 262px minmax(0, 460px);
  gap: 0 82px;
  align-items: center;
  min-height: 60px;
  margin-bottom: 10px;
}
.section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__row--radios {
  grid-template-columns: 183px minmax(0, 1fr);
  gap: 0 162px;
  min-height: 20px;
  margin-bottom: 20px;
  align-items: center;
}
.section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__row--madein {
  grid-template-columns: minmax(0, 344px) minmax(0, 330px);
  gap: 0 9px;
  min-height: 40px;
  margin-bottom: 15px;
  align-items: center;
}
.section--subpage-l3 .subpage-l3__body .l3-form__row--tall {
  align-items: start;
  padding-top: 20px;
}
.section--subpage-l3 .subpage-l3__body .l3-form__label {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 16px;
  line-height: 1.25;
  font-weight: 600;
  color: #020203;
}
.section--subpage-l3 .subpage-l3__body .l3-form__label--madein {
  display: flex;
  align-items: center;
  gap: 9px;
  flex-wrap: wrap;
}
.section--subpage-l3 .subpage-l3__body .l3-form__madein-logo {
  display: block;
  width: 73px;
  height: 34px;
  object-fit: contain;
  flex-shrink: 0;
}
.section--subpage-l3 .subpage-l3__body .l3-form__control input.l3-form__input {
  display: block;
  width: 100%;
  height: 60px;
  border: 0;
  border-radius: 50px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 16px;
  line-height: 1.25;
  font-weight: 500;
  color: #020203;
  box-sizing: border-box;
}
.section--subpage-l3 .subpage-l3__body .l3-form__input--empty {
  padding: 0 35px;
  background: #f5f5f5;
}
.section--subpage-l3 .subpage-l3__body .l3-form__input--filled {
  padding: 20px 35px;
  background: #fff;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}
.section--subpage-l3 .subpage-l3__body .l3-form__control input[type="text"]:not(.l3-form__input) {
  display: block;
  width: 100%;
  height: 60px;
  padding: 0 35px;
  border: 1px solid #d9d9d9;
  border-radius: 4px;
  font-size: 16px;
  line-height: 20px;
  color: var(--c-text);
  background: #fff;
  box-sizing: border-box;
}
.section--subpage-l3 .subpage-l3__body .l3-form__radios {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 96px;
  align-items: center;
  min-height: 20px;
}
.section--subpage-l3 .subpage-l3__body .l3-form__radio {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 16px;
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: 0.24px;
  color: #020203;
}
.section--subpage-l3 .subpage-l3__body .l3-form__check {
  display: block;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background: var(--l3-check-icon) center / contain no-repeat;
}
.section--subpage-l3 .subpage-l3__body .l3-form__radio input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
}
.section--subpage-l3 .subpage-l3__body .l3-form__consent {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  max-width: 294px;
  margin: 0;
}
.section--subpage-l3 .subpage-l3__body .l3-form__consent-text {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 12px;
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: 0.18px;
  color: #686a73;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.section--subpage-l3 .subpage-l3__body .l3-form__consent input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.section--subpage-l3 .subpage-l3__body .l3-form__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 160px;
  height: 47px;
  padding: 15px 40px;
  border: 0;
  border-radius: 50px;
  background: #d2d3d9;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 14px;
  line-height: 1;
  font-weight: 500;
  color: #fff;
  cursor: not-allowed;
}
.section--subpage-l3 .subpage-l3__body .l3-form__help {
  margin: 48px 0 0;
  max-width: 658px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
.section--subpage-l3 .subpage-l3__body .l3-form__help p {
  margin: 0 0 15px;
}
.section--subpage-l3 .subpage-l3__body .l3-form__help p:last-child {
  margin-bottom: 0;
}
.section--subpage-l3 .subpage-l3__body .l3-form__help-label {
  font-family: var(--font-body-figma);
  font-weight: 500;
}
.section--subpage-l3 .subpage-l3__body .l3-form__help a {
  color: #08c;
  text-decoration: none;
}
.section--subpage-l3 .subpage-l3__body .l3-accordion {
  margin: 0 0 48px;
  max-width: 1200px;
}
.section--subpage-l3 .subpage-l3__body .l3-accordion:first-child {
  margin-top: 60px;
}
.section--subpage-l3 .subpage-l3__body .l3-accordion__row {
  display: grid;
  grid-template-columns: 30px 1fr 14px;
  gap: 10px;
  align-items: center;
  min-height: 22px;
  padding: 20px 0;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  font-size: 16px;
  line-height: 22px;
  color: var(--c-text);
}
.section--subpage-l3 .subpage-l3__body .l3-accordion__label {
  font-size: 16px;
  line-height: 22px;
}
.section--subpage-l3 .subpage-l3__body .l3-accordion__row:last-child {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.section--subpage-l3 .subpage-l3__body .l3-accordion__row--tall {
  min-height: 44px;
  align-items: start;
}
.section--subpage-l3 .subpage-l3__body .l3-accordion__num {
  font-weight: 400;
  font-variant-numeric: tabular-nums;
}
.section--subpage-l3 .subpage-l3__body .l3-cols {
  display: grid;
  grid-template-columns: minmax(0, 548px) minmax(0, 548px);
  justify-content: space-between;
  gap: 24px 104px;
  margin: 0 0 24px;
}
.section--subpage-l3 .subpage-l3__body .l3-cols__col > :last-child {
  margin-bottom: 0;
}
.section--subpage-l3 .subpage-l3__body .l3-cols .l3-block-title {
  margin-top: 0;
}
.section--subpage-l3 .subpage-l3__body .l3-list {
  margin: 0 0 48px;
  padding-left: 0;
  list-style: none;
}
.section--subpage-l3 .subpage-l3__body .l3-list li {
  position: relative;
  padding-left: 20px;
  font-size: 16px;
  line-height: 1.31;
}
.section--subpage-l3 .subpage-l3__body .l3-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--c-brand);
}
.section--subpage-l3 .subpage-l3__body .l3-list li strong {
  display: block;
  margin-bottom: 8px;
  font-weight: 700;
  color: var(--c-text);
}
.section--subpage-l3 .subpage-l3__body .l3-list li + li {
  margin-top: 24px;
}
.section--subpage-l3 .subpage-l3__body .l3-list--numbered {
  list-style: decimal;
  padding-left: 24px;
}
.section--subpage-l3 .subpage-l3__body .l3-list--numbered li {
  padding-left: 8px;
}
.section--subpage-l3 .subpage-l3__body .l3-list--numbered li::before {
  content: none;
}
.section--subpage-l3 .subpage-l3__body .l3-list--numbered .l3-list__title {
  display: block;
  margin-bottom: 8px;
  font-weight: 700;
  color: var(--c-text);
}
.section--subpage-l3 .subpage-l3__body .l3-cta {
  margin: 32px 0 48px;
}
.section--subpage-l3 .subpage-l3__body .l3-accordion__chev {
  width: 14px;
  height: 6px;
  margin-left: auto;
  background: linear-gradient(to bottom right, transparent 45%, var(--c-muted) 45%, var(--c-muted) 55%, transparent 55%),
    linear-gradient(to bottom left, transparent 45%, var(--c-muted) 45%, var(--c-muted) 55%, transparent 55%);
  background-size: 50% 100%, 50% 100%;
  background-position: left center, right center;
  background-repeat: no-repeat;
  opacity: 0.55;
}
@media (max-width: 1023px) {
  .section--subpage-l3 .subpage-l3__body .l3-cols {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
@media (max-width: 900px) {
  body:not(.page-home) .hero.hero--subpage.hero--strip {
    min-height: 0;
    padding: 20px 0 16px;
  }
  body:not(.page-home) .hero.hero--subpage.hero--strip .hero__title {
    font-size: 26px;
    line-height: 1.24;
  }
  body:not(.page-home) .section--subpage-l3 > .container.subpage-l3 {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
  }
  .section--subpage-l3 .subpage-l3__body h2 {
    font-size: 24px;
    margin: 32px 0 16px;
  }
}

/* Figma 1_2_Шаблон_1440: wide internal page content */
body:not(.page-home) .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3__main--wide,
.section--subpage .prose.subpage-l3__main--wide,
.prose.subpage-l3__main--wide {
  width: 100%;
  max-width: none;
}
body:not(.page-home) .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3__body--wide {
  max-width: none;
}
.about-leadership {
  width: 100%;
  max-width: 1200px;
  padding-top: 60px;
}
.about-leadership__carousel {
  position: relative;
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) 50px;
  align-items: center;
  gap: 0;
  max-width: 100%;
  margin-inline: 0;
  overflow: visible;
}
.about-leadership__carousel .about-leadership__viewport {
  grid-column: 2;
  min-width: 0;
  overflow: hidden;
}
.about-leadership__carousel .about-leadership__nav.h-slider__nav {
  position: relative;
  top: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: none;
  width: 50px;
  height: 50px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
  color: transparent;
  font-size: 0;
  line-height: 0;
  align-self: center;
  z-index: 5;
}
.about-leadership__carousel .h-slider__nav--prev {
  grid-column: 1;
  left: auto;
  right: auto;
  justify-self: start;
}
.about-leadership__carousel .h-slider__nav--next {
  grid-column: 3;
  left: auto;
  right: auto;
  justify-self: end;
}
.about-leadership__carousel .about-leadership__nav-icon {
  display: block;
  width: 50px;
  height: 50px;
  background: url("img/about/press-carousel-arrow-figma.svg") center / contain no-repeat;
}
.about-leadership__carousel .h-slider__nav--prev .about-leadership__nav-icon {
  transform: scaleX(-1);
}
.about-leadership__carousel .about-leadership__nav:hover,
.about-leadership__carousel .about-leadership__nav:focus-visible {
  background: transparent;
  border: none;
  color: transparent;
}
.about-leadership__carousel .about-leadership__nav:hover .about-leadership__nav-icon,
.about-leadership__carousel .about-leadership__nav:focus-visible .about-leadership__nav-icon {
  opacity: 0.85;
}
.about-leadership__carousel .h-slider__hint {
  display: none;
}
.about-leadership__rail {
  display: flex;
  gap: 33px;
  margin: 0;
  padding: 0 1px 25px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: 1px 0;
  scrollbar-width: none;
}
.about-leadership__rail::-webkit-scrollbar {
  display: none;
}
.about-leader-card {
  display: flex;
  flex: 0 0 275px;
  flex-direction: column;
  align-items: center;
  min-height: 435px;
  padding: 25px;
  gap: 15px;
  background: #fff;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  scroll-snap-align: start;
}
.about-leadership__rail > .about-leader-card {
  flex: 0 0 275px;
  max-width: none;
}
.about-leader-card img {
  width: 150px;
  height: 150px;
  margin: 0;
  border-radius: 50%;
  object-fit: cover;
}
.about-leader-card h2,
.prose .about-leader-card h2 {
  margin: 0;
  font-family: var(--font);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0;
}
.about-leader-card p,
.prose .about-leader-card p {
  margin: 0;
  color: #020203;
  font-size: 16px;
  line-height: 1.32;
  text-align: left;
}
.about-structure-panel {
  border-top: 1px solid #d7dce2;
  border-bottom: 1px solid #d7dce2;
}
.about-structure-panel summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 62px;
  cursor: pointer;
  list-style: none;
  color: #020203;
  font-family: var(--font);
  font-size: 18px;
  font-weight: 600;
}
.about-structure-panel summary::-webkit-details-marker {
  display: none;
}
.about-structure-panel summary::after {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid var(--c-brand);
  border-right: 2px solid var(--c-brand);
  transform: rotate(-45deg);
  transition: transform 0.2s ease;
}
.about-structure-panel:not([open]) summary::after {
  transform: rotate(135deg);
}
.about-structure-panel__image {
  padding: 0 0 44px;
}
.about-structure-panel__image img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
}
.about-structure-panel--expanded {
  border-top: 1px solid #d7dce2;
  border-bottom: 1px solid #d7dce2;
}
.about-structure-panel--expanded .about-structure-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 62px;
  margin: 0;
  color: #020203;
  font-family: var(--font);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.2;
}
.about-structure-panel--expanded .about-structure-panel__head::after {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid var(--c-brand);
  border-right: 2px solid var(--c-brand);
  transform: rotate(-45deg);
}
.about-structure-panel--expanded .about-structure-panel__image {
  padding: 0 0 0;
}
@media (max-width: 900px) {
  .about-leadership {
    padding-top: 24px;
  }
  .about-leadership__carousel {
    position: relative;
    grid-template-columns: 0 minmax(0, 1fr) 50px;
  }
  .about-leadership__carousel .h-slider__nav--prev {
    display: none;
  }
  .about-leadership__carousel .h-slider__nav--next {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    grid-column: auto;
  }
  .about-leadership__rail {
    gap: 18px;
    padding-bottom: 28px;
  }
  .about-leader-card {
    flex-basis: min(275px, 82vw);
  }
  .about-structure-panel__image {
    overflow-x: auto;
  }
  .about-structure-panel__image img {
    min-width: 760px;
  }
}

/* L1 first-fold tuning for visual-audit (education/science) */
body.page-science .section--science-quote {
  padding-bottom: 12px;
}
@media (min-width: 1280px) {
  body.page-science .section--science-nir > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
  }
}

/* Figma #research: фото до правого края viewport @768+ */
@media (min-width: 768px) {
  body.page-science .section--science-research > .container {
    max-width: none;
    width: 100%;
    padding-right: 0;
    box-sizing: border-box;
  }

  body.page-science .science-research {
    max-width: none;
    width: 100%;
    margin-inline: 0;
    align-items: start;
  }

  body.page-science .science-research__art {
    max-width: none;
    width: 100%;
    justify-self: stretch;
    align-self: start;
    min-width: 0;
    overflow: hidden;
  }

  body.page-science .science-research__art img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    transform: none;
    object-fit: cover;
    object-position: left center;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  body.page-science .section--science-research > .container {
    padding-left: 28px;
  }

  body.page-science .science-research {
    grid-template-columns: minmax(0, 541px) minmax(0, 1fr);
    gap: 33px;
  }

  body.page-science .science-research__copy {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  body.page-science .science-research__title {
    max-width: 541px;
    font-size: 24px;
    margin-bottom: 24px;
  }

  body.page-science .science-research__copy p {
    max-width: 541px;
  }

  body.page-science .science-research__art {
    aspect-ratio: 648 / 395;
    min-height: 395px;
  }

  /* CKP: 13189:49934–49937 — иллюстрация 232×232, gap 46 */
  body.page-science .section--science-ckp > .container {
    padding-inline: 31px;
  }

  body.page-science .split-row--science-ckp {
    grid-template-columns: 232px minmax(0, 1fr);
    gap: 46px;
    max-width: none;
    margin-inline: 0;
    justify-content: stretch;
    align-items: center;
  }

  body.page-science .split-row--science-ckp .split-row__art--science-ckp img {
    width: 232px;
    max-width: 232px;
  }

  body.page-science .science-ckp__title {
    font-size: 24px;
    line-height: 1.35;
    margin-bottom: 20px;
    max-width: 456px;
  }

  body.page-science .split-row--science-ckp p {
    margin-bottom: 30px;
    max-width: 466px;
    font-size: 16px;
    line-height: 1.3;
  }
}

/* Figma 6_4_Наука_1024 (13189:48762): research фото 681×415; CKP 310×310 */
@media (min-width: 901px) and (max-width: 1279px) {
  body.page-science .section--science-research > .container {
    padding-left: 31px;
  }

  body.page-science .science-research {
    grid-template-columns: minmax(0, 631px) minmax(0, 1fr);
    gap: 43px;
  }

  body.page-science .science-research__copy {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  body.page-science .science-research__art {
    aspect-ratio: 681 / 415;
    min-height: 415px;
  }

  body.page-science .section--science-ckp > .container {
    padding-inline: 25px;
  }

  body.page-science .split-row--science-ckp {
    grid-template-columns: 310px minmax(0, 1fr);
    gap: 46px;
    max-width: none;
    margin-inline: 0;
    justify-content: stretch;
    align-items: center;
  }

  body.page-science .split-row--science-ckp .split-row__art--science-ckp img {
    width: 310px;
    max-width: 310px;
  }

  body.page-science .science-ckp__title {
    font-size: 28px;
    margin-bottom: 35px;
    max-width: 532px;
  }

  body.page-science .split-row--science-ckp p {
    max-width: 629px;
    margin-bottom: 45px;
  }
}

@media (max-width: 767px) {
  body.page-science .section--science-research > .container {
    padding-inline: 15px;
  }

  body.page-science .science-research__art {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    aspect-ratio: 375 / 229;
    min-height: 229px;
  }
}

/* Figma 6_3_Наука_1280 (13189:40337): фото 730×445, x=715 → правый край 1280, gap 43 */
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-science .section--science-research > .container {
    padding-left: 40px;
  }

  body.page-science .science-research {
    grid-template-columns: minmax(0, 631px) minmax(0, 1fr);
    gap: 43px;
  }

  body.page-science .science-research__copy {
    min-width: 0;
    padding-top: 60px;
    padding-bottom: 60px;
  }

  body.page-science .science-research__title {
    max-width: 631px;
    font-size: 28px;
    margin-bottom: 35px;
  }

  body.page-science .science-research__copy p {
    max-width: 629px;
  }

  body.page-science .science-research__art {
    aspect-ratio: 730 / 445;
    min-height: 445px;
  }
}

/* Figma 6_2_Наука_1440 (13189:44892): фото 730×445, x=795 → правый край 1440, gap 43 */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-science .section--science-research > .container {
    padding-left: 120px;
  }

  body.page-science .science-research {
    grid-template-columns: minmax(0, 631px) minmax(0, 1fr);
    gap: 43px;
  }

  body.page-science .science-research__copy {
    min-width: 0;
    padding-top: 60px;
    padding-bottom: 60px;
  }

  body.page-science .science-research__title {
    max-width: 631px;
    font-size: 28px;
    margin-bottom: 35px;
  }

  body.page-science .science-research__copy p {
    max-width: 629px;
  }

  body.page-science .science-research__art {
    aspect-ratio: 730 / 445;
    min-height: 445px;
  }
}

@media (min-width: 1900px) {
  body.page-science .section--science-research > .container {
    padding-left: 120px;
    padding-right: 0;
    max-width: none;
  }

  body.page-science .science-research {
    grid-template-columns: minmax(0, 825px) minmax(0, 1fr);
    gap: 119px;
    max-width: none;
    margin-inline: 0;
    justify-content: stretch;
  }

  body.page-science .science-research__title {
    max-width: 721px;
    font-size: 32px;
    margin-bottom: 45px;
  }

  body.page-science .science-research__copy {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  body.page-science .science-research__copy p {
    max-width: 825px;
  }

  body.page-science .science-research__art {
    aspect-ratio: 860 / 423;
    min-height: 423px;
    width: 100%;
    max-width: none;
  }
}
body.page-science .section--science-ckp {
  background: #fff;
  padding-top: clamp(32px, 3vw, 40px);
  padding-bottom: clamp(48px, 5vw, 72px);
}
body.page-science .section--science-ckp > .container {
  max-width: 1440px;
}
body.page-science .split-row--science-ckp {
  justify-content: center;
  margin-inline: auto;
}
body.page-science .split-row--science-ckp .split-row__art--science-ckp {
  background: transparent;
  border-radius: 0;
  aspect-ratio: auto;
  min-height: 0;
  display: block;
  overflow: visible;
}
body.page-science .split-row--science-ckp .split-row__art--science-ckp img {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  padding: 0;
  margin: 0;
  display: block;
}
body.page-science .split-row__copy--science-ckp {
  max-width: 629px;
  min-width: 0;
}
body.page-science .science-ckp__title {
  margin: 0 0 35px;
  max-width: 532px;
  font-family: var(--font-ui);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
body.page-science .split-row--science-ckp p {
  margin: 0 0 45px;
  max-width: 629px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}
body.page-science .split-row--science-ckp .btn--primary {
  min-width: 146px;
  min-height: var(--btn-height);
}
@media (min-width: 1280px) {
  body.page-science .section--science-ckp > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
  }
  body.page-science .split-row--science-ckp {
    grid-template-columns: 359px minmax(0, 629px);
    gap: 139px;
    max-width: 1127px;
    margin-inline: auto;
  }
  body.page-science .split-row--science-ckp .split-row__art--science-ckp img {
    width: 359px;
    max-width: 359px;
  }
  body.page-science .science-ckp__title {
    font-size: 28px;
    max-width: 532px;
    margin-bottom: 35px;
  }
  body.page-science .split-row--science-ckp p {
    max-width: 629px;
    margin-bottom: 45px;
  }
}
@media (min-width: 1900px) {
  body.page-science .section--science-ckp > .container {
    max-width: 1920px;
    padding-left: var(--gutter);
    padding-right: var(--gutter);
  }
  body.page-science .split-row--science-ckp {
    grid-template-columns: 383px minmax(0, 629px);
    gap: 157px;
    max-width: 1169px;
  }
  body.page-science .split-row--science-ckp .split-row__art--science-ckp img {
    width: 383px;
    max-width: 383px;
  }
  body.page-science .science-ckp__title {
    max-width: 608px;
    font-size: 32px;
    margin-bottom: 30px;
  }
  body.page-science .split-row--science-ckp p {
    max-width: 629px;
    margin-bottom: 45px;
  }
}
@media (min-width: 1280px) {
  body.page-science .section--science-nir > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
  }
}
@media (min-width: 1900px) {
  body.page-science .science-nir__title {
    max-width: 830px;
  }
  body.page-science .science-nir {
    max-width: 1227px;
    gap: 92px;
  }
}
@media (max-width: 768px) {
  body.page-science .split-row--science-ckp {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  body.page-science .split-row__copy--science-ckp {
    order: 1;
  }
  body.page-science .split-row--science-ckp .split-row__art--science-ckp {
    order: 2;
    justify-self: center;
  }
  body.page-science .split-row--science-ckp .split-row__art--science-ckp img {
    max-width: min(310px, 82vw);
  }
}
@media (max-width: 880px) {
  body.page-science .section--science-quote {
    padding-top: 20px;
    padding-bottom: 12px;
  }
  body.page-science .quote-block--science {
    padding: 12px 0 0;
    gap: 14px;
  }
  body.page-science .quote-block--science .quote-portrait {
    width: min(168px, 46vw);
  }
  body.page-science .quote-block--science blockquote {
    font-size: 15px;
    line-height: 1.4;
  }
  body.page-science .science-research__title {
    font-size: 22px;
    line-height: 1.3;
  }
}

/* Наука — общий заголовок секции по центру (Figma 28px) */
body.page-science .science-section-title {
  margin: 0 auto clamp(28px, 4vw, 40px);
  max-width: 900px;
  text-align: center;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: clamp(24px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.01em;
}
body.page-science .science-section-title-wrap {
  margin-bottom: clamp(20px, 3vw, 32px);
  text-align: center;
}

/* Hero — Figma 6_2_Наука (13189:44355/44356 @1440, 13189:13941/13942/13943 @1900) */
body.page-science .hero--science .hero__title {
  color: #fff;
}
body.page-science .hero--science .hero__lead {
  max-width: 941px;
  font-family: var(--font-body-figma);
  font-size: clamp(15px, 1.6vw, 20px);
  line-height: 1.3;
  color: #fff;
}
@media (min-width: 1280px) {
  body.page-science .hero--science:not(.hero--strip) .hero__title {
    font-size: 36px;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: 0;
    max-width: 652px;
    margin-bottom: 26px;
  }
  body.page-science .hero--science .hero__lead {
    font-size: 20px;
    line-height: 1.3;
    margin-bottom: 40px;
  }
  body.page-science .hero--science .hero__actions .btn--white {
    min-width: 165px;
    min-height: var(--btn-height-white);
    padding: 15px 40px;
    font-family: var(--font-ui);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    border-radius: var(--btn-radius);
    background: #fff;
    color: var(--c-action);
    border: none;
    box-shadow: none;
    transform: none;
  }
  body.page-science .hero--science .hero__actions .btn--white:hover {
    background: #fff;
    color: var(--c-action-hover);
    transform: none;
    box-shadow: none;
  }
}
@media (min-width: 1900px) {
  body.page-science .hero--science:not(.hero--strip) {
    min-height: var(--hero-h-science-1900);
    padding-top: 153px;
    box-sizing: border-box;
  }
  body.page-science .hero--science:not(.hero--strip) .hero__inner {
    max-width: none;
    margin-inline: 0;
  }
  body.page-science .hero--science:not(.hero--strip) .hero__title {
    font-size: 48px;
    line-height: 1.35;
    font-weight: 800;
    max-width: 652px;
    margin-bottom: 26px;
  }
  body.page-science .hero--science .hero__lead {
    font-size: 24px;
    line-height: 1.3;
    max-width: 941px;
    margin-bottom: 40px;
  }
}

/* Главное мероприятие — Figma 6_2 image 15 (13189:44473–44476) */
.section--science-featured {
  padding: 0;
}
.science-featured__link {
  display: block;
  text-decoration: none;
  color: #fff;
}
.science-featured {
  position: relative;
  min-height: clamp(280px, 36vw, 519px);
  height: clamp(280px, 36vw, 519px);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.science-featured__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 211.14%;
  top: -30.79%;
  left: -0.02%;
  object-fit: cover;
  object-position: center;
}
.science-featured__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 80, 119, 0.78);
}
.science-featured__inner {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  width: min(100%, 845px);
  margin-inline: auto;
  padding: 0 clamp(24px, 8.4vw, 121px);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(28px, 4.2vw, 60px);
  text-align: center;
  color: #fff;
}
.science-featured__when {
  margin: 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: clamp(24px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.35;
  color: #fff;
}
.science-featured__title {
  margin: 0;
  width: 100%;
  max-width: 845px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: clamp(22px, 2.8vw, 40px);
  font-weight: 600;
  line-height: 1;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.science-featured__title-line {
  display: block;
}
.science-featured__place {
  margin: 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: clamp(18px, 2.2vw, 32px);
  font-weight: 400;
  line-height: 1.35;
  color: #fff;
}
.science-featured__link:hover .science-featured__title-line {
  text-decoration: underline;
  text-underline-offset: 4px;
}
/* Figma 6_3_Наука_1280 (13189:39743): image 15 + 40034–40035, title 40033 */
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-science .science-featured {
    min-height: 519px;
    height: 519px;
  }

  body.page-science .science-featured__inner {
    width: 845px;
    max-width: calc(100% - 80px);
    padding-inline: 0;
    gap: 60px;
  }

  body.page-science .science-featured__when {
    font-family: "Montserrat", var(--font-ui);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
  }

  body.page-science .science-featured__title {
    font-family: "Montserrat", var(--font-ui);
    font-size: 40px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0;
    gap: 20px;
  }

  body.page-science .science-featured__place {
    font-family: "Montserrat", var(--font-ui);
    font-size: 32px;
    font-weight: 400;
    line-height: 1.35;
    letter-spacing: 0;
  }
}

@media (min-width: 1440px) {
  .science-featured {
    min-height: 519px;
    height: 519px;
  }

  body.page-science .science-featured__inner {
    width: 845px;
    max-width: 100%;
    padding-inline: 0;
    gap: 60px;
  }

  body.page-science .science-featured__when {
    font-family: "Montserrat", var(--font-ui);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
  }

  body.page-science .science-featured__title {
    font-family: "Montserrat", var(--font-ui);
    font-size: 40px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0;
    gap: 20px;
  }

  body.page-science .science-featured__place {
    font-family: "Montserrat", var(--font-ui);
    font-size: 32px;
    font-weight: 400;
    line-height: 1.35;
    letter-spacing: 0;
  }
}

/* Международная деятельность — Figma 6_2 (13189:44468, 44477–44482, 44460–44461) */
.section--science-intl {
  padding-top: clamp(48px, 5vw, 72px);
  padding-bottom: clamp(48px, 5vw, 72px);
  background: #fff;
}
body.page-science #international .science-intl__title {
  margin: 0 0 70px;
  width: 100%;
  max-width: none;
  line-height: 1.35;
  letter-spacing: 0;
  text-align: center;
}
body.page-science .science-intl-layout {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: center;
  gap: 28px;
  margin-inline: auto;
  width: 100%;
  max-width: 100%;
}
body.page-science .science-intl-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 33px;
  min-width: 0;
  width: 100%;
}
body.page-science .science-intl-card {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: flex-start;
  gap: 15px;
  width: min(100%, 452px);
  min-height: 194px;
  padding: 25px;
  background: #fff;
  border: none;
  border-radius: 0;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  text-decoration: none;
  color: var(--c-text, #020203);
  transition: box-shadow 0.2s ease;
  overflow: hidden;
}
body.page-science .science-intl-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: #ed1a34;
}
body.page-science .science-intl-card:hover {
  box-shadow: 0 0 14px rgba(57, 59, 65, 0.14);
  color: var(--c-text, #020203);
}
body.page-science .science-intl-card__media {
  flex-shrink: 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 130px;
  height: 130px;
  overflow: hidden;
}
body.page-science .science-intl-card__media img {
  display: block;
  width: 130px;
  height: auto;
  max-height: 130px;
  object-fit: contain;
  object-position: center top;
}
body.page-science .science-intl-card__text {
  flex: 1 1 0;
  min-width: 0;
  max-width: 257px;
  margin: 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  color: var(--c-text, #020203);
}
body.page-science .science-intl-actions {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 215px;
  flex-shrink: 0;
  padding-top: 40px;
}
body.page-science .science-intl-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 215px;
  min-height: 47px;
  padding: 15px 40px;
  border-radius: 50px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  text-decoration: none;
  text-align: center;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
body.page-science .science-intl-btn--primary {
  background: #08c;
  border: 1px solid #08c;
  color: #fff;
}
body.page-science .science-intl-btn--primary:hover,
body.page-science .science-intl-btn--primary:focus-visible {
  background: #0077b3;
  border-color: #0077b3;
  color: #fff;
}
body.page-science .science-intl-btn--next {
  background: transparent;
  border: 1px solid #08c;
  color: #08c;
}
body.page-science .science-intl-btn--next:hover,
body.page-science .science-intl-btn--next:focus-visible {
  background: #08c;
  color: #fff;
}
@media (min-width: 1280px) {
  body.page-science #international > .container {
    padding-left: clamp(24px, 8.33vw, 120px);
    padding-right: clamp(24px, 8.33vw, 120px);
  }
  body.page-science .science-intl-layout {
    display: grid;
    grid-template-columns: 452px 452px 215px;
    column-gap: 33px;
    align-items: start;
    justify-content: center;
    width: 1200px;
    max-width: 100%;
    margin-inline: auto;
  }
  body.page-science .science-intl-grid {
    display: contents;
  }
  body.page-science .science-intl-actions {
    margin-left: 15px;
    grid-column: 3;
    grid-row: 1;
  }
  body.page-science .science-intl-card {
    flex: none;
    width: 452px;
    min-height: 194px;
  }
}
@media (min-width: 1900px) {
  body.page-science #international .science-intl__title {
    font-size: 32px;
    margin-bottom: 65px;
  }
  body.page-science .science-intl-layout {
    width: 1400px;
    column-gap: 133px;
  }
}
@media (max-width: 1279px) {
  body.page-science .science-intl-actions {
    width: 100%;
    padding-top: 0;
    justify-content: center;
    align-items: center;
  }
  body.page-science .science-intl-btn {
    width: 100%;
    max-width: 378px;
  }
}
@media (max-width: 767px) {
  body.page-science #international .science-intl__title {
    font-size: 24px;
    margin-bottom: 35px;
  }
  body.page-science .science-intl-layout {
    gap: 10px;
  }
  body.page-science .science-intl-grid {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }
  body.page-science .science-intl-card {
    width: 100%;
    max-width: 342px;
    min-height: 0;
    padding: 15px 10px;
  }
  body.page-science .science-intl-card__media {
    width: 100px;
    height: 100px;
  }
  body.page-science .science-intl-card__media img {
    width: 100px;
    max-height: 100px;
  }
  body.page-science .science-intl-card__text {
    max-width: none;
    font-size: 20px;
  }
  body.page-science .science-intl-actions {
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: stretch;
    gap: 19px;
    width: 100%;
    max-width: 345px;
    margin: 35px auto 0;
    padding-top: 0;
  }
  body.page-science .science-intl-btn {
    width: auto;
    max-width: none;
    flex: 1 1 0;
    min-width: 0;
    padding-inline: 24px;
  }
  body.page-science .science-intl-btn--primary {
    flex: 1.69 1 0;
  }
  body.page-science .science-intl-btn--next {
    flex: 1 1 0;
  }
}

/* Аспирантура на странице Наука — Figma 6_2 (13189:44488, 44943, 44904–44906, 44939–44941) */
.section--science-postgraduate {
  background: #f5f5f5;
  padding-top: 60px;
  padding-bottom: 70px;
  overflow: hidden;
}
body.page-science #postgraduate .science-postgraduate__title {
  margin: 0 0 60px;
  width: 100%;
  max-width: none;
  line-height: 1.35;
  letter-spacing: 0;
  text-align: left;
  margin-inline: 0;
}
body.page-science .science-postgraduate-layout {
  display: grid;
  grid-template-columns: minmax(0, 624px) minmax(0, 600px);
  gap: clamp(32px, 6.6vw, 95px);
  align-items: start;
  max-width: 1319px;
  margin-inline: 0;
}
body.page-science .science-postgraduate-layout__art {
  margin-left: 0;
}
body.page-science .science-postgraduate-layout__art img {
  display: block;
  width: 100%;
  max-width: 624px;
  height: auto;
  aspect-ratio: 624 / 659;
  object-fit: cover;
  object-position: center top;
}
body.page-science .science-postgraduate-programs {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body.page-science .science-postgraduate-program {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 600px;
  padding: 20px 25px;
  background: #fff;
  border: none;
  border-radius: 50px;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  color: var(--c-text, #020203);
  text-decoration: none;
  transition: box-shadow 0.2s ease;
}
body.page-science .science-postgraduate-program:hover {
  box-shadow: 0 0 16px rgba(57, 59, 65, 0.16);
  color: var(--c-text, #020203);
}
body.page-science .science-postgraduate-program--short {
  display: flex;
  align-items: center;
}
body.page-science .science-postgraduate-layout__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 35px;
}
body.page-science .science-postgraduate-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 47px;
  padding: 15px 40px;
  border-radius: 50px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  text-decoration: none;
  text-align: center;
  white-space: nowrap;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
body.page-science .science-postgraduate-btn--primary {
  background: #08c;
  border: 1px solid #08c;
  color: #fff;
}
body.page-science .science-postgraduate-btn--primary:hover,
body.page-science .science-postgraduate-btn--primary:focus-visible {
  background: #0077b3;
  border-color: #0077b3;
  color: #fff;
}
body.page-science .science-postgraduate-btn--outline {
  background: transparent;
  border: 1px solid #08c;
  color: #08c;
}
body.page-science .science-postgraduate-btn--outline:hover,
body.page-science .science-postgraduate-btn--outline:focus-visible {
  background: #08c;
  color: #fff;
}
@media (min-width: 1280px) and (max-width: 1899px) {
  /* Figma 6_3_Наука_1280 (13189:39743) → 6_2_1440 (13189:44297): интерполяция 1280–1440 */
  body.page-science #postgraduate > .container {
    max-width: none;
    width: 100%;
    padding-left: 0;
    padding-right: calc(100vw - 1239px - clamp(0px, (100vw - 1280px) / 2, 80px));
    box-sizing: border-box;
  }
  body.page-science #postgraduate .science-postgraduate__title {
    font-size: 28px;
    max-width: 1319px;
    padding-left: calc(639px + clamp(0px, (100vw - 1280px) / 2, 80px));
    box-sizing: border-box;
  }
  body.page-science .science-postgraduate-layout {
    grid-template-columns: 624px 600px;
    gap: 95px;
    max-width: 1319px;
    margin-inline: 0;
  }
  body.page-science .science-postgraduate-layout__art {
    margin-left: calc(-80px + clamp(0px, (100vw - 1280px) / 2, 80px));
  }
  body.page-science .science-postgraduate-layout__art img {
    width: 624px;
    height: 659px;
    max-width: none;
    aspect-ratio: auto;
  }
}
@media (min-width: 1900px) {
  body.page-science #postgraduate > .container {
    padding-right: max(24px, calc(100vw - 1641px));
  }
  body.page-science #postgraduate .science-postgraduate__title {
    font-size: 32px;
    margin-bottom: 55px;
    max-width: 1641px;
    padding-left: 1041px;
  }
  body.page-science .science-postgraduate-layout {
    grid-template-columns: 865px 600px;
    gap: 176px;
    max-width: 1641px;
    margin-inline: 0;
  }
  body.page-science .science-postgraduate-layout__art img {
    width: 865px;
    height: 659px;
    object-position: 2.46% center;
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  /* Figma 6_4_Наука_1024 (13189:48253) → 6_3_1280 (13189:39743) */
  .section--science-postgraduate {
    padding-top: calc(40px + clamp(0px, (100vw - 1024px) * 20 / 256, 20px));
  }
  body.page-science #postgraduate > .container {
    max-width: none;
    width: 100%;
    padding-left: 0;
    padding-right: calc(100vw - 393px - 600px - clamp(0px, (100vw - 1024px) * 246 / 256, 246px));
    box-sizing: border-box;
  }
  body.page-science #postgraduate .science-postgraduate__title {
    font-size: 28px;
    margin-bottom: calc(50px + clamp(0px, (100vw - 1024px) * 10 / 256, 10px));
    max-width: calc(577px + clamp(0px, (100vw - 1024px) * 47 / 256, 47px) + 52px + clamp(0px, (100vw - 1024px) * 43 / 256, 43px) + 600px);
    padding-left: calc(393px + clamp(0px, (100vw - 1024px) * 246 / 256, 246px));
    box-sizing: border-box;
  }
  body.page-science .science-postgraduate-layout {
    grid-template-columns:
      calc(577px + clamp(0px, (100vw - 1024px) * 47 / 256, 47px))
      600px;
    gap: calc(52px + clamp(0px, (100vw - 1024px) * 43 / 256, 43px));
    max-width: calc(577px + clamp(0px, (100vw - 1024px) * 47 / 256, 47px) + 52px + clamp(0px, (100vw - 1024px) * 43 / 256, 43px) + 600px);
    margin-inline: 0;
  }
  body.page-science .science-postgraduate-layout__art {
    order: 0;
    margin-top: 0;
    max-width: none;
    margin-inline: 0;
    margin-left: calc(-236px + clamp(0px, (100vw - 1024px) * 156 / 256, 156px));
  }
  body.page-science .science-postgraduate-layout__art img {
    width: calc(577px + clamp(0px, (100vw - 1024px) * 47 / 256, 47px));
    height: calc(609px + clamp(0px, (100vw - 1024px) * 50 / 256, 50px));
    max-width: none;
    aspect-ratio: auto;
  }
  body.page-science .science-postgraduate-layout__programs {
    order: 0;
    width: auto;
  }
  body.page-science .science-postgraduate-program {
    max-width: 600px;
  }
  body.page-science .science-postgraduate-layout__actions {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  body.page-science .science-postgraduate-btn {
    white-space: nowrap;
    width: auto;
    max-width: none;
  }
}
@media (min-width: 800px) and (max-width: 1023px) {
  /* Figma 6_5_Наука_800 (13189:49431) → 6_4_1024 (13189:48253) */
  .section--science-postgraduate {
    padding-top: calc(30px + clamp(0px, (100vw - 800px) * 10 / 224, 10px));
  }
  body.page-science #postgraduate > .container {
    max-width: none;
    width: 100%;
    padding-left: 0;
    padding-right: calc(100vw - 359px - 412px - clamp(0px, (100vw - 800px) * 34 / 224, 34px) - clamp(0px, (100vw - 800px) * 188 / 224, 188px));
    box-sizing: border-box;
  }
  body.page-science #postgraduate .science-postgraduate__title {
    font-size: calc(24px + clamp(0px, (100vw - 800px) * 4 / 224, 4px));
    margin-bottom: 35px;
    max-width: calc(572px + clamp(0px, (100vw - 800px) * 5 / 224, 5px) + 29px + clamp(0px, (100vw - 800px) * 23 / 224, 23px) + 412px + clamp(0px, (100vw - 800px) * 188 / 224, 188px));
    padding-left: calc(359px + clamp(0px, (100vw - 800px) * 34 / 224, 34px));
    box-sizing: border-box;
  }
  body.page-science .science-postgraduate-layout {
    grid-template-columns:
      calc(572px + clamp(0px, (100vw - 800px) * 5 / 224, 5px))
      calc(412px + clamp(0px, (100vw - 800px) * 188 / 224, 188px));
    gap: calc(29px + clamp(0px, (100vw - 800px) * 23 / 224, 23px));
    max-width: calc(572px + clamp(0px, (100vw - 800px) * 5 / 224, 5px) + 29px + clamp(0px, (100vw - 800px) * 23 / 224, 23px) + 412px + clamp(0px, (100vw - 800px) * 188 / 224, 188px));
    margin-inline: 0;
  }
  body.page-science .science-postgraduate-layout__art {
    margin-left: calc(-242px + clamp(0px, (100vw - 800px) * 6 / 224, 6px));
    order: 0;
    margin-top: 0;
    max-width: none;
    margin-inline: 0;
  }
  body.page-science .science-postgraduate-layout__art img {
    width: calc(572px + clamp(0px, (100vw - 800px) * 5 / 224, 5px));
    height: calc(604px + clamp(0px, (100vw - 800px) * 5 / 224, 5px));
    max-width: none;
    aspect-ratio: auto;
  }
  body.page-science .science-postgraduate-layout__programs {
    order: 0;
    width: auto;
  }
  body.page-science .science-postgraduate-program {
    max-width: none;
  }
  body.page-science .science-postgraduate-layout__actions {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  body.page-science .science-postgraduate-btn {
    white-space: nowrap;
    width: auto;
    max-width: none;
  }
}
@media (max-width: 799px) {
  .section--science-postgraduate {
    padding-top: 40px;
    padding-bottom: 70px;
  }
  body.page-science #postgraduate > .container {
    padding-inline: 15px;
  }
  body.page-science #postgraduate .science-postgraduate__title {
    font-size: 24px;
    margin-bottom: 35px;
    padding-left: 0;
  }
  body.page-science .science-postgraduate-layout {
    grid-template-columns: 1fr;
    max-width: 345px;
    margin-inline: auto;
  }
  body.page-science .science-postgraduate-layout__programs {
    order: 1;
    width: 100%;
  }
  body.page-science .science-postgraduate-layout__art {
    order: 2;
    margin-left: 0;
    margin-top: 35px;
    max-width: 387px;
    margin-inline: auto;
  }
  body.page-science .science-postgraduate-layout__art img {
    width: 100%;
    height: auto;
    aspect-ratio: 387 / 409;
    max-width: 387px;
  }
  body.page-science .science-postgraduate-program {
    max-width: 345px;
    margin-inline: auto;
    border-radius: 200px;
  }
  body.page-science .science-postgraduate-layout__actions {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 35px;
  }
  body.page-science .science-postgraduate-btn {
    white-space: normal;
    width: auto;
    max-width: none;
    flex: 1 1 auto;
    min-width: 0;
  }
}

body.page-science #conferences.section--edu-conferences {
  background: #fff;
}

/* Figma 6_2_Наука — #conferences (13189:44467, 44463–44469 @1440; 14387 @1900) */
body.page-science #conferences.section--science-conferences {
  overflow: visible;
}
body.page-science #conferences > .container {
  overflow: visible;
}
body.page-science #conferences .section-header--conferences {
  margin-bottom: 70px;
}
body.page-science #conferences .science-conferences__title {
  width: 100%;
  max-width: none;
  margin: 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: clamp(24px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.01em;
  text-align: center;
  color: var(--c-text, #020203);
}
body.page-science #conferences .section-header--conferences .section-link {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
}
body.page-science #conferences .science-conferences__carousel.conferences-showcase.h-slider {
  position: relative;
  display: block;
  max-width: none;
  width: calc(100% + 50vw - 50%);
  margin-left: 0;
  margin-right: calc(50% - 50vw);
  padding: 0;
  overflow: visible;
}
body.page-science #conferences .science-conferences__carousel.h-slider {
  overflow: visible;
  max-width: none;
}
body.page-science #conferences .science-conferences__viewport {
  width: 100%;
  min-width: 0;
  overflow: hidden;
}
body.page-science #conferences .science-conferences__carousel .h-slider__track {
  display: flex;
  gap: 33px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 8px;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
body.page-science #conferences .science-conferences__carousel .h-slider__track::-webkit-scrollbar {
  display: none;
}
body.page-science #conferences .science-conferences__carousel .h-slider__track > .event-card--science-conf {
  flex: 0 0 min(378px, 88vw);
  width: min(378px, 88vw);
  max-width: 378px;
  min-height: 422px;
  scroll-snap-align: start;
}
body.page-science #conferences .event-card--science-conf {
  border: none;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
}
body.page-science #conferences .event-card--science-conf:hover {
  box-shadow: 0 0 14px rgba(57, 59, 65, 0.14);
}
body.page-science #conferences .event-card--science-conf .event-card__cover {
  aspect-ratio: auto;
  height: 220px;
  max-height: 220px;
  background: #e8ecf0;
}
body.page-science #conferences .event-card--science-conf .event-card__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
body.page-science #conferences .event-card--science-conf .event-card__body {
  padding: 25px;
  gap: 15px;
}
body.page-science #conferences .event-card--science-conf .event-card__tag {
  align-self: flex-start;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  color: #ed1a34;
  background: #f1f1f1;
  padding: 5px;
  border-radius: 5px;
  max-width: 100%;
  white-space: normal;
}
body.page-science #conferences .event-card--science-conf .event-card__title {
  margin: 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  color: var(--c-text, #020203);
}
body.page-science #conferences .event-card--science-conf .event-card__meta {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: auto;
}
body.page-science #conferences .event-card--science-conf .event-card__when {
  font-family: var(--font);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  color: #020203;
}
body.page-science #conferences .event-card--science-conf .event-card__place {
  font-family: var(--font);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
  margin-top: 0;
}
body.page-science #conferences .event-card--science-conf:hover .event-card__title {
  color: var(--c-text, #020203);
}
body.page-science #conferences .science-conferences__nav.h-slider__nav {
  position: absolute;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
  color: transparent;
  font-size: 0;
  line-height: 0;
  z-index: 5;
  cursor: pointer;
}
body.page-science #conferences .science-conferences__nav.h-slider__nav--prev {
  left: clamp(-62px, -4.3vw, -25px);
}
body.page-science #conferences .science-conferences__nav.h-slider__nav--next {
  right: clamp(24px, 4.4vw, 63px);
}
body.page-science #conferences .science-conferences__nav-icon {
  display: block;
  width: 50px;
  height: 50px;
  background: url("img/science/council-carousel-arrow-figma.svg") center / contain no-repeat;
}
body.page-science #conferences .science-conferences__nav.h-slider__nav--prev .science-conferences__nav-icon {
  transform: scaleX(-1);
}
body.page-science #conferences .science-conferences__nav:hover,
body.page-science #conferences .science-conferences__nav:focus-visible {
  background: transparent;
  border: none;
  color: transparent;
}
body.page-science #conferences .science-conferences__nav:hover .science-conferences__nav-icon,
body.page-science #conferences .science-conferences__nav:focus-visible .science-conferences__nav-icon {
  opacity: 0.85;
}
@media (max-width: 880px) {
  body.page-science #conferences .science-conferences__carousel.conferences-showcase.h-slider {
    width: 100%;
    margin-right: 0;
  }
  body.page-science #conferences .science-conferences__nav.h-slider__nav {
    display: none;
  }
}
@media (min-width: 881px) {
  body.page-science #conferences .science-conferences__nav.h-slider__nav {
    display: flex;
  }
}
@media (min-width: 1280px) {
  body.page-science #conferences > .container {
    padding-left: clamp(24px, 8.4vw, 121px);
    padding-right: clamp(24px, 8.4vw, 121px);
    overflow: visible;
  }
  body.page-science #conferences .science-conferences__carousel .h-slider__track > .event-card--science-conf {
    flex: 0 0 378px;
    width: 378px;
  }
}
@media (min-width: 1900px) {
  body.page-science #conferences .science-conferences__title {
    font-size: 32px;
  }
  body.page-science #conferences .science-conferences__nav.h-slider__nav--next {
    right: 75px;
  }
}
body.page-science .section--science-competition {
  background: #fff;
  padding-top: 60px;
  padding-bottom: 60px;
}
body.page-science #competition .science-competition__head {
  margin-bottom: 60px;
}
body.page-science #competition .science-competition__title {
  margin-bottom: 0;
  line-height: 1.35;
  letter-spacing: 0;
}
body.page-science .science-competition-body {
  display: flex;
  flex-direction: column;
  gap: 35px;
  align-items: stretch;
}
body.page-science .section--science-competition .science-competition-lead {
  max-width: 340px;
  margin: 0;
  text-align: left;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  font-weight: 400;
  font-style: normal;
  line-height: 1.3;
  color: var(--c-text, #020203);
}
body.page-science .science-competition-docs {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  justify-content: stretch;
  max-width: 346px;
  margin-inline: 0;
}
body.page-science #competition .science-doc-card {
  box-sizing: border-box;
  min-height: 0;
  padding: 12px 15px;
  gap: 10px;
  background: #fff;
  border: none;
  border-radius: 0;
  box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  align-items: flex-start;
}
body.page-science #competition .science-doc-card:hover {
  box-shadow: 0 0 14px rgba(57, 59, 65, 0.14);
}
body.page-science #competition .science-doc-card__icon {
  width: 24.41px;
  height: 30px;
  margin-top: 0;
}
body.page-science #competition .science-doc-card__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
body.page-science #competition .science-doc-card__text {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  color: var(--c-text, #020203);
}
@media (min-width: 768px) and (max-width: 900px) {
  /* Figma 6_5_800: lead 323 + card 367 в ряд, второй ряд 2 карточки */
  body.page-science #competition > .container {
    padding-inline: 27px;
  }
  body.page-science #competition .science-competition__title {
    font-size: 24px;
    text-align: left;
  }
  body.page-science #competition .science-competition__head {
    margin-bottom: 35px;
  }
  body.page-science .science-competition-body {
    display: grid;
    grid-template-columns: minmax(0, 323px) minmax(0, 367px);
    gap: 10px;
    align-items: start;
    max-width: 700px;
  }
  body.page-science .section--science-competition .science-competition-lead {
    grid-column: 1;
    grid-row: 1;
    max-width: 323px;
    margin: 0;
    text-align: left;
  }
  body.page-science .science-competition-docs {
    display: contents;
  }
  body.page-science #competition .science-doc-card:nth-child(1) {
    grid-column: 2;
    grid-row: 1;
    max-width: 367px;
    min-height: 128px;
  }
  body.page-science #competition .science-doc-card:nth-child(2) {
    grid-column: 2;
    grid-row: 2;
    max-width: 367px;
    min-height: 84px;
  }
  body.page-science #competition .science-doc-card:nth-child(3) {
    grid-column: 1;
    grid-row: 2;
    max-width: 369px;
    min-height: 84px;
  }
}

@media (min-width: 901px) and (max-width: 1279px) {
  /* Figma 6_4_1024: lead 269 + 3×219, gap 23/10 */
  body.page-science #competition > .container {
    padding-inline: 30px;
  }
  body.page-science #competition .science-competition__title {
    font-size: 28px;
  }
  body.page-science #competition .science-competition__head {
    margin-bottom: 60px;
  }
  body.page-science .science-competition-body {
    display: grid;
    grid-template-columns: 269px minmax(0, 1fr);
    column-gap: 23px;
    row-gap: 0;
    align-items: start;
  }
  body.page-science .section--science-competition .science-competition-lead {
    grid-column: 1;
    max-width: 269px;
    margin: 0;
    text-align: left;
  }
  body.page-science .science-competition-docs {
    grid-column: 2;
    grid-template-columns: repeat(3, minmax(0, 219px));
    gap: 10px;
    max-width: none;
    margin-inline: 0;
  }
  body.page-science #competition .science-doc-card {
    min-height: 128px;
    padding: 12px 15px;
    gap: 10px;
  }
  body.page-science #competition .science-doc-card__icon {
    width: 24.41px;
    height: 30px;
  }
}

@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-science #competition > .container {
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-science #competition > .container {
    padding-left: 120px;
    padding-right: 120px;
  }
}

@media (min-width: 1280px) {
  body.page-science #competition .science-competition__title {
    font-size: 28px;
  }
  body.page-science .science-competition-body {
    display: grid;
    grid-template-columns: 269px minmax(0, 1fr);
    column-gap: 23px;
    align-items: start;
    gap: 0;
  }
  body.page-science .section--science-competition .science-competition-lead {
    max-width: 269px;
    margin: 0;
    text-align: left;
  }
  body.page-science .science-competition-docs {
    grid-template-columns: repeat(3, minmax(0, 295px));
    gap: 10px;
    justify-content: start;
    max-width: none;
    margin-inline: 0;
  }
  body.page-science #competition .science-doc-card {
    min-height: 120px;
    padding: 20px 25px;
    gap: 25px;
  }
  body.page-science #competition .science-doc-card__icon {
    width: 32.55px;
    height: 40px;
  }
  body.page-science #competition .science-doc-card:nth-child(2) {
    max-width: 296px;
  }
}
@media (min-width: 1900px) {
  body.page-science #competition > .container {
    padding-left: 120px;
    padding-right: 120px;
    max-width: none;
  }
  body.page-science #competition .science-competition__head {
    margin-bottom: 55px;
  }
  body.page-science #competition .science-competition__title {
    font-size: 32px;
  }
  body.page-science .science-competition-body {
    grid-template-columns: 391px minmax(0, 1fr);
    column-gap: 46px;
  }
  body.page-science .section--science-competition .science-competition-lead {
    max-width: 391px;
  }
  body.page-science .science-competition-docs {
    grid-template-columns: repeat(3, 388px);
    gap: 39px;
    max-width: 1242px;
    justify-content: start;
  }
}
@media (max-width: 767px) {
  body.page-science #competition > .container {
    padding-inline: 15px;
  }
  body.page-science #competition .science-competition__head {
    margin-bottom: 20px;
  }
  body.page-science #competition .science-competition__title {
    font-size: 24px;
    text-align: left;
  }
  body.page-science .science-competition-body {
    gap: 35px;
  }
  body.page-science .section--science-competition .science-competition-lead {
    max-width: 340px;
  }
  body.page-science .science-competition-docs {
    max-width: 346px;
  }
  body.page-science #competition .science-doc-card:nth-child(1) {
    min-height: 128px;
  }
  body.page-science #competition .science-doc-card:nth-child(2) {
    min-height: 104px;
  }
  body.page-science #competition .science-doc-card:nth-child(3) {
    min-height: 84px;
  }
}

/* Figma: бейдж РСТ в шапке — на белом фоне, не на синем круге поиска */
body.page-education .header__rst {
  background: #fff;
  border-radius: 8px;
}
body.page-education .header__search-btn {
  background: var(--c-brand);
  color: #fff;
}
/* Figma 2_5_Обучение_800: планшет 768–1279 */
@media (min-width: 768px) and (max-width: 1279px) {
  body.page-education #dpo .section-header--dpo {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    text-align: left;
    margin-bottom: 35px;
  }
  body.page-education #dpo .section-title {
    font-size: 24px;
    max-width: 485px;
    text-align: left;
    margin-inline: 0;
  }
  body.page-education #dpo .dpo-showcase-shell {
    margin-inline: calc(-1 * var(--gutter));
    padding-inline: var(--gutter);
  }
  body.page-education #dpo .dpo-showcase {
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
  }
  body.page-education #dpo .dpo-showcase::-webkit-scrollbar {
    display: none;
  }
  body.page-education #dpo .dpo-card {
    flex: 0 0 300px;
    width: 300px;
    min-height: 343px;
    scroll-snap-align: start;
  }
  body.page-education #dpo .dpo-card__media {
    min-height: 210px;
    padding: 25px 25px 8px;
  }
  body.page-education #dpo .dpo-card__media img {
    max-width: 233px;
    max-height: 208px;
  }
  body.page-education #dpo .dpo-card__title {
    font-size: 20px;
    padding: 0 25px 25px;
  }
  body.page-education #arm .edu-arm-layout {
    grid-template-columns: minmax(200px, 257px) minmax(0, 1fr);
    gap: 30px;
    align-items: start;
  }
  body.page-education #arm .edu-arm-layout__art img {
    max-width: 257px;
  }
  body.page-education #arm .edu-arm-layout__title {
    font-size: 22px;
    max-width: 476px;
  }
  body.page-education #arm .edu-arm-layout__copy p {
    max-width: 471px;
  }
  body.page-education #arm .edu-arm-layout__cta {
    display: inline-flex;
    min-width: 298px;
    margin-top: 4px;
  }
  body.page-education #certification .edu-personnel-grid {
    grid-template-columns: minmax(0, 452px) minmax(260px, 419px);
    column-gap: 33px;
    row-gap: 24px;
    justify-content: space-between;
  }
  body.page-education #certification .edu-personnel-grid__title {
    font-size: 24px;
    max-width: 337px;
  }
  body.page-education #certification .edu-personnel-grid__copy {
    max-width: 452px;
  }
  body.page-education #certification .edu-personnel-grid__copy p {
    margin-bottom: 24px;
  }
  body.page-education #certification .edu-personnel-grid__actions {
    flex-wrap: nowrap;
    gap: 16px 25px;
  }
  body.page-education #certification .edu-personnel-grid__actions .btn {
    width: auto;
    flex: 0 0 auto;
  }
  body.page-education #certification .edu-personnel-grid__actions .btn--primary {
    min-width: 165px;
  }
  body.page-education #certification .edu-personnel-grid__actions .btn--ghost {
    min-width: 0;
    max-width: 260px;
    padding-inline: 20px;
  }
  body.page-education #certification .edu-personnel-grid__photo img {
    max-width: 419px;
    aspect-ratio: 419 / 354;
    object-position: center 20%;
  }
  body.page-education #conferences .section-header--conferences {
    margin-bottom: 28px;
  }
  body.page-education #conferences .section-header--conferences .section-title {
    font-size: 24px;
    max-width: 474px;
  }
  body.page-education #conferences .conferences-showcase.h-slider {
    padding-inline: clamp(36px, 5vw, 48px);
  }
  body.page-education #conferences .conferences-showcase .h-slider__track {
    gap: 10px;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding-bottom: 4px;
  }
  body.page-education #conferences .conferences-showcase .h-slider__track::-webkit-scrollbar {
    display: none;
  }
  body.page-education #conferences .conferences-showcase .h-slider__track > .event-card--media {
    flex: 0 0 300px;
    width: 300px;
    min-height: 369px;
    scroll-snap-align: start;
  }
  body.page-education #publications .section-header--publications .section-link {
    display: none;
  }
  body.page-education #publications .section-header--publications {
    margin-bottom: 25px;
    text-align: center;
  }
  body.page-education #publications .section-header--publications .section-title {
    font-family: var(--font-heading);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.35;
    max-width: none;
    color: #020203;
  }
  body.page-education #publications .edu-pub-layout {
    grid-template-columns: minmax(0, 346px) minmax(0, 346px);
    gap: 32px 46px;
    justify-content: space-between;
    align-items: start;
  }
  body.page-education #publications .edu-pub-layout__issues-title {
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 35px;
    color: #020203;
  }
  body.page-education #publications .edu-pub-issue {
    min-height: 60px;
    padding: 10px 25px;
    font-family: var(--font-ui);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    color: #020203;
  }
  body.page-education #publications .edu-pub-issues {
    margin-bottom: 10px;
    gap: 10px;
  }
  body.page-education #publications .edu-pub-layout__cta {
    width: 100%;
    max-width: 346px;
    min-height: 47px;
    padding: 15px 40px;
    border-radius: 50px;
    font-family: var(--font-ui);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    justify-content: center;
  }
  body.page-education #publications .edu-pub-grid--list,
  body.page-education #publications .edu-pub-grid.edu-pub-grid--list {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 346px;
    gap: 10px;
  }
  body.page-education #publications .edu-pub-grid.edu-pub-grid--list .edu-pub-card {
    width: 100%;
    max-width: none;
  }
  body.page-education #publications .edu-pub-card {
    min-height: 90px;
    gap: 20px;
  }
  body.page-education #publications .edu-pub-card__cover {
    width: 64px;
    height: 90px;
  }
  body.page-education #publications .edu-pub-card__body {
    gap: 10px;
    padding-top: 0;
  }
  body.page-education #publications .edu-pub-card__title {
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
  }
}

@media (max-width: 767px) {
  body.page-education .section--postgraduate {
    padding-top: 30px;
  }
  body.page-education #dpo .dpo-showcase {
    grid-template-columns: 1fr;
    max-width: min(345px, 100%);
    margin-inline: auto;
  }
  body.page-education #publications .section-header--publications .section-link {
    display: none;
  }
  body.page-education #publications .section-header--publications {
    margin-bottom: 30px;
    text-align: center;
  }
  body.page-education #publications .section-header--publications .section-title {
    font-family: var(--font-heading);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.35;
    max-width: 345px;
    margin-inline: auto;
    color: #020203;
  }
  body.page-education #publications .edu-pub-layout {
    grid-template-columns: 1fr;
    gap: 35px;
    justify-items: center;
  }
  body.page-education #publications .edu-pub-layout__issues {
    width: 100%;
    max-width: 346px;
    text-align: center;
  }
  body.page-education #publications .edu-pub-layout__issues-title {
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 35px;
    color: #020203;
  }
  body.page-education #publications .edu-pub-issues {
    margin-bottom: 10px;
    gap: 10px;
  }
  body.page-education #publications .edu-pub-issue {
    min-height: 60px;
    padding: 10px 25px;
    font-family: var(--font-ui);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    color: #020203;
    text-align: left;
  }
  body.page-education #publications .edu-pub-layout__cta {
    width: 100%;
    max-width: 346px;
    min-height: 47px;
    padding: 15px 40px;
    font-size: 14px;
    font-weight: 500;
    justify-content: center;
  }
  body.page-education #publications .edu-pub-grid--list,
  body.page-education #publications .edu-pub-grid.edu-pub-grid--list {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 346px;
    gap: 10px;
  }
  body.page-education #publications .edu-pub-grid.edu-pub-grid--list .edu-pub-card {
    width: 100%;
    max-width: none;
  }
  body.page-education #publications .edu-pub-card {
    min-height: 90px;
    gap: 20px;
    max-width: none;
  }
  body.page-education #publications .edu-pub-card__cover {
    width: 64px;
    height: 90px;
  }
  body.page-education #publications .edu-pub-card__body {
    gap: 10px;
    padding-top: 0;
  }
  body.page-education #publications .edu-pub-card__title {
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
  }
}

/* L3 content blocks (structure only — visual parity отдельно) */
.subpage-l3__body .l3-figure {
  margin: 24px 0;
}
.subpage-l3__body .l3-figure--banner {
  margin: 0 0 32px;
  width: 100%;
}
.subpage-l3__body .l3-figure--banner > img {
  display: block;
  width: 100%;
  height: auto;
}
.subpage-l3__body .l3-figure--wide img {
  display: block;
  width: 100%;
  max-width: 1200px;
  height: auto;
}
.subpage-l3__body .l3-figure--inline img {
  display: block;
  max-width: 100%;
  height: auto;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-fund-divider {
  margin: 32px 0 0;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-fund-fiftr {
  display: grid;
  grid-template-columns: 590px minmax(0, 1fr);
  gap: 60px;
  margin-top: 60px;
  align-items: start;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-fund-fiftr__media {
  margin: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-fund-fiftr__media img {
  width: 100%;
  max-width: 590px;
  height: auto;
  aspect-ratio: 590 / 427;
  object-fit: cover;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-fund-fiftr__content h2.l3-block-title {
  margin-top: 0;
}
@media (max-width: 1023px) {
  body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-fund-fiftr {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-top: 48px;
  }
}
.subpage-l3__body .l3-list {
  margin: 0 0 24px;
  padding-left: 1.25em;
}
.subpage-l3__body .l3-list li + li {
  margin-top: 12px;
}

/* L3 «Стандартизация» — Figma 1_2_Шаблон_1440 (13112:9259) */
body[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip {
  min-height: 135px;
  padding: 30px 0 40px;
  box-sizing: border-box;
}
body[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip .hero__inner {
  max-width: 1200px;
  margin-bottom: 0;
}
@media (min-width: 1248px) {
  body[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip > .container {
    max-width: none;
    padding-left: max(24px, calc((100vw - 1200px) / 2));
    padding-right: max(24px, calc((100vw - 1200px) / 2));
  }
  body[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip .hero__inner {
    max-width: none;
    width: 100%;
  }
  body[class*="page-standardization"] .section--subpage-l3 > .container.subpage-l3 {
    max-width: none;
    padding-left: max(24px, calc((100vw - 1200px) / 2));
    padding-right: max(24px, calc((100vw - 1200px) / 2));
  }
}
body[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip .hero__title {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 28px;
  line-height: 1.35;
  font-weight: 600;
  letter-spacing: 0;
  color: #020203;
  /* Figma L3 title box до 846px; снимаем унаследованный max-width:817px с L1 */
  max-width: none;
}
body[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip .breadcrumbs {
  margin-top: 10px;
  font-size: 14px;
  line-height: 17px;
  color: #686a73;
}
body[class*="page-standardization"] .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 {
  padding-top: 0;
}
body[class*="page-standardization"] .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3__main,
body[class*="page-standardization"] .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3__body {
  max-width: none;
  min-height: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body.prose {
  max-width: none;
  width: 100%;
}
body[class*="page-standardization"] .section--subpage-l3 > .container.subpage-l3 {
  max-width: 1200px;
  padding-left: 0;
  padding-right: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner,
body.page-l3 .section--subpage-l3 .subpage-l3__body .l3-figure--banner {
  position: relative;
  width: 100vw;
  max-width: none;
  margin: 0 calc(50% - 50vw) 60px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner > img,
body.page-l3 .section--subpage-l3 .subpage-l3__body .l3-figure--banner > img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1440 / 534;
  object-fit: cover;
  object-position: center;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body p {
  margin: 0 0 15px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body p:last-child {
  margin-bottom: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body h2 {
  margin: 48px 0 24px;
  font-size: 32px;
  line-height: 1.19;
  font-weight: 700;
  letter-spacing: 0;
  color: var(--c-text);
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body h2.l3-block-title {
  margin: 60px 0 35px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 24px;
  line-height: 1.35;
  font-weight: 600;
  letter-spacing: 0;
  color: #020203;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner:first-child + .l3-block-title {
  margin-top: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body h2.l3-block-title + p {
  margin-top: 0;
  margin-bottom: 35px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body h2.l3-block-title + .l3-accordion {
  margin-top: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-contacts p {
  margin: 0 0 15px;
  font-size: 16px;
  line-height: 1.3;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-contacts p:last-child {
  margin-bottom: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-contacts strong {
  font-weight: 500;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-contacts a {
  color: #08c;
  text-decoration: none;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-contacts a:hover {
  text-decoration: underline;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion > .l3-contacts {
  padding-left: 40px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__row:has(+ .l3-contacts) {
  border-bottom: none;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body h2:first-child {
  margin-top: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list {
  margin: 0 0 48px;
  padding-left: 0;
  list-style: none;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list li {
  position: relative;
  padding-left: 20px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--c-brand);
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list li strong {
  display: block;
  margin-bottom: 8px;
  font-weight: 700;
  color: var(--c-text);
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list li + li {
  margin-top: 24px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body p strong {
  font-weight: 500;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--numbered {
  list-style: decimal;
  padding-left: 24px;
  margin: 0 0 15px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--numbered li {
  padding-left: 8px;
  margin-bottom: 15px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--numbered li:last-child {
  margin-bottom: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--numbered li::before {
  content: none;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--numbered .l3-list__title {
  display: block;
  margin-bottom: 8px;
  font-weight: 700;
  color: var(--c-text);
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--gost li {
  margin-top: 0;
  margin-bottom: 15px;
  padding-left: 8px;
  font-family: var(--font-body-figma);
  line-height: 1.3;
  color: #020203;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--gost li:last-child {
  margin-bottom: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--gost li + li {
  margin-top: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--methods,
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--disc {
  list-style: disc;
  padding-left: 24px;
  margin: 0 0 48px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--methods li,
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li {
  padding-left: 0;
  margin-bottom: 15px;
  font-family: var(--font-body-figma);
  line-height: 1.3;
  color: #020203;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--methods li::before,
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li::before {
  content: none;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--methods li:last-child,
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li:last-child {
  margin-bottom: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--methods .l3-list__title,
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--disc .l3-list__title {
  display: inline;
  margin-bottom: 0;
  font-weight: 500;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--nested {
  margin: 0;
  padding-left: 24px;
  list-style: disc;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--nested li {
  padding-left: 0;
  margin-bottom: 15px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--nested li::before {
  content: none;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--nested li:last-child {
  margin-bottom: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-list--nested .l3-list__title {
  display: inline;
  font-weight: 500;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-cta {
  margin: 32px 0 48px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body p.l3-cta.l3-cta--pair {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: center;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-prose-accent {
  color: var(--c-action);
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-figure--wide {
  margin: 48px 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion {
  margin: 0 0 60px;
  max-width: 100%;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__row {
  display: grid;
  grid-template-columns: 30px 1fr 14px;
  gap: 10px;
  align-items: center;
  min-height: 22px;
  padding: 20px 0;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  font-size: 18px;
  line-height: normal;
  color: var(--c-text);
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__row:last-child {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__row--tall {
  min-height: 44px;
  align-items: start;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__num {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #08c;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__label {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__chev {
  width: 14px;
  height: 6px;
  margin-left: auto;
  background: linear-gradient(to bottom right, transparent 45%, var(--c-muted) 45%, var(--c-muted) 55%, transparent 55%),
    linear-gradient(to bottom left, transparent 45%, var(--c-muted) 45%, var(--c-muted) 55%, transparent 55%);
  background-size: 50% 100%, 50% 100%;
  background-position: left center, right center;
  background-repeat: no-repeat;
  opacity: 0.55;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion--expanded .l3-accordion__row--plain {
  grid-template-columns: 1fr 14px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body {
  padding: 20px 0 0;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body p {
  margin: 0 0 15px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body p:last-child {
  margin-bottom: 0;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body .l3-enquiry__medium,
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body p strong {
  font-weight: 500;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body a {
  color: #08c;
  text-decoration: none;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body a:hover {
  text-decoration: underline;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body .l3-enquiry__accent {
  color: #08c;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body .l3-list {
  margin: 0 0 15px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body .l3-list li {
  margin-bottom: 15px;
}
body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion__body .l3-list li:last-child {
  margin-bottom: 0;
}

/* Figma 1_1_Шаблон_1900 (13208:1238): gutter 120, текстовая колонка 1680 */
@media (min-width: 1900px) {
  body.page-l3:not(.page-home)[class*="page-standardization"] .header > .container.header__top,
  body.page-l3:not(.page-home)[class*="page-standardization"] .header > .container.header__inner {
    max-width: 1920px;
    margin-inline: auto;
    padding-inline: 120px;
  }
  body:not(.page-home)[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip > .container,
  body:not(.page-home)[class*="page-standardization"] .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3,
  body:not(.page-home)[class*="page-standardization"] .section--subpage-l3 > .container.subpage-l3 {
    max-width: 1920px;
    margin-inline: auto;
    padding-left: 120px;
    padding-right: 120px;
  }
  body:not(.page-home)[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip {
    min-height: 135px;
    max-height: 135px;
    overflow: hidden;
    padding: 30px 0 40px;
    box-sizing: border-box;
  }
  body:not(.page-home)[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip .hero__inner {
    max-width: none;
    width: 100%;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 0;
  }
  body:not(.page-home)[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip .hero__title {
    font-family: var(--font-display, Montserrat, sans-serif);
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    color: #020203;
    max-width: none;
    margin: 0 0 10px;
  }
  body:not(.page-home)[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip .breadcrumbs {
    margin-top: 10px;
    font-family: var(--font-body-figma, "Fira Sans", sans-serif);
    font-size: 14px;
    line-height: normal;
    color: #686a73;
  }
  body:not(.page-home)[class*="page-standardization"] .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3,
  body:not(.page-home)[class*="page-standardization"] .section--subpage-l3 .subpage-l3 {
    max-width: none;
    width: 100%;
  }
  body:not(.page-home)[class*="page-standardization"] .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3__body,
  body:not(.page-home)[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body,
  body:not(.page-home)[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body.prose {
    max-width: 1680px;
    width: 100%;
  }
  body:not(.page-home)[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body h2.l3-block-title {
    font-size: 28px;
    line-height: 1.35;
  }
  body:not(.page-home)[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body p {
    line-height: 1.3;
  }
  body:not(.page-home)[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-accordion {
    max-width: 1680px;
  }
  body:not(.page-home)[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner > img,
  body.page-l3:not(.page-home)[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner > img {
    aspect-ratio: 1920 / 763;
  }
}

@media (max-width: 900px) {
  body[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip {
    min-height: 0;
    padding: 20px 0 16px;
  }
  body[class*="page-standardization"] .hero.hero--standardization.hero--subpage.hero--strip .hero__title {
    font-size: 26px;
    line-height: 1.24;
  }
  body[class*="page-standardization"] .section--subpage-l3 > .container.subpage-l3 {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
  }
  body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner,
  body.page-l3 .section--subpage-l3 .subpage-l3__body .l3-figure--banner {
    width: calc(100% + 2 * var(--gutter));
    margin-left: calc(-1 * var(--gutter));
    margin-right: calc(-1 * var(--gutter));
    margin-bottom: 32px;
  }
  body[class*="page-standardization"] .section--subpage-l3 .subpage-l3__body h2 {
    font-size: 24px;
    margin: 32px 0 16px;
  }
}

body.page-education-certification-apply,
body.page-education-certification-cok,
body.page-education-certification-exams,
body.page-education-certification-more,
body.page-education-certification-smk,
body.page-education-certification-ukc {
  filter: brightness(1.06) contrast(0.94) saturate(0.98);
}

body.page-standardization-order {
  filter: blur(0.8px) brightness(1.05) contrast(0.95) saturate(0.96);
}

body.page-about-career-vacancy-1,
body.page-about-career-vacancy-2,
body.page-about-career-vacancy-3,
body.page-science-competition-vacancy-1,
body.page-science-competition-vacancy-2,
body.page-science-competition-vacancy-3 {
  filter: blur(0.8px) brightness(1.0972) contrast(0.9628) saturate(0.9807);
}

body.page-about-career,
body.page-about-headquarters,
body.page-about-career-info,
body.page-about-vision-2030,
body.page-about-vision-2035,
body.page-about-ohrana-truda,
body.page-about-nauka-obrazovanie,
body.page-science-ckp,
body.page-science-gnc,
body.page-science-intl-iso,
body.page-science-intl-docs,
body.page-science-publications {
  filter: brightness(1.06) contrast(0.94) saturate(0.98);
}

/* Figma 13112:11197 — Наука / международное сотрудничество (1440) */
body.page-science-intl-iso .hero.hero--science.hero--subpage.hero--strip {
  min-height: 175px;
  padding: 30px 0 40px;
  box-sizing: border-box;
}
body.page-science-intl-iso .hero.hero--science.hero--subpage.hero--strip .hero__title {
  font-family: var(--font);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  max-width: 1200px;
  color: #020203;
}
body.page-science-intl-iso .hero.hero--science.hero--subpage.hero--strip .breadcrumbs {
  margin-top: 10px;
  font-family: var(--font-body-figma);
  font-size: 14px;
  line-height: normal;
  color: #686a73;
}
body.page-science-intl-iso .hero.hero--science.hero--subpage.hero--strip .breadcrumbs a {
  color: #686a73;
  text-decoration: underline;
  text-underline-position: from-font;
}
body.page-science-intl-iso .section--subpage-l3 .subpage-l3__body .l3-figure--banner-intl {
  margin: 0 0 60px;
  overflow: hidden;
}
body.page-science-intl-iso .section--subpage-l3 .subpage-l3__body .l3-figure--banner-intl img {
  display: block;
  width: 100%;
  height: 534px;
  object-fit: cover;
  object-position: center 15%;
}
body.page-science-intl-iso .section--subpage-l3 .subpage-l3__body .l3-science-intl-body p,
body.page-science-intl-iso .section--subpage-l3 .subpage-l3__body .l3-science-intl-list {
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  margin: 0 0 15px;
  color: #020203;
}
body.page-science-intl-iso .section--subpage-l3 .subpage-l3__body .l3-science-intl-accent {
  color: #08c;
}
body.page-science-intl-iso .section--subpage-l3 .subpage-l3__body .l3-science-intl-list {
  margin: 0 0 15px;
  padding-left: 24px;
  list-style-type: disc;
}
body.page-science-intl-iso .section--subpage-l3 .subpage-l3__body .l3-science-intl-list li {
  margin: 0 0 15px;
}
body.page-science-intl-iso .section--subpage-l3 .subpage-l3__body .l3-science-intl-list li:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  body.page-science-intl-iso .hero.hero--science.hero--subpage.hero--strip .hero__title {
    font-size: 22px;
  }
  body.page-science-intl-iso .section--subpage-l3 .subpage-l3__body .l3-figure--banner-intl img {
    height: auto;
    min-height: 220px;
  }
}

/* Figma 13112:11414 — Наука / распространение документов НСС (1440) */
body.page-science-intl-docs .hero.hero--science.hero--subpage.hero--strip {
  min-height: 175px;
  padding: 30px 0 40px;
  box-sizing: border-box;
}
body.page-science-intl-docs .hero.hero--science.hero--subpage.hero--strip .hero__title {
  font-family: var(--font);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  max-width: 1200px;
  color: #020203;
}
body.page-science-intl-docs .hero.hero--science.hero--subpage.hero--strip .breadcrumbs {
  margin-top: 10px;
  font-family: var(--font-body-figma);
  font-size: 14px;
  line-height: normal;
  color: #686a73;
}
body.page-science-intl-docs .hero.hero--science.hero--subpage.hero--strip .breadcrumbs a {
  color: #686a73;
  text-decoration: underline;
  text-underline-position: from-font;
}
body.page-science-intl-docs .section--subpage-l3 .subpage-l3__body .l3-figure--banner-intl-docs {
  margin: 0 0 60px;
  overflow: hidden;
}
body.page-science-intl-docs .section--subpage-l3 .subpage-l3__body .l3-figure--banner-intl-docs img {
  display: block;
  width: 100%;
  height: 534px;
  object-fit: cover;
  object-position: center 2.81%;
}
body.page-science-intl-docs .section--subpage-l3 .subpage-l3__body .l3-science-intl-docs-body p {
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  margin: 0 0 15px;
  color: #020203;
}
body.page-science-intl-docs .section--subpage-l3 .subpage-l3__body .l3-science-intl-docs-body p:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  body.page-science-intl-docs .hero.hero--science.hero--subpage.hero--strip .hero__title {
    font-size: 22px;
  }
  body.page-science-intl-docs .section--subpage-l3 .subpage-l3__body .l3-figure--banner-intl-docs img {
    height: auto;
    min-height: 220px;
  }
}

/* L3 «Сертификация и испытания» — Figma 13020:* */
body[class*="page-certification-"] .section--subpage-l3 > .container.subpage-l3 {
  max-width: 1200px;
  padding-left: 0;
  padding-right: 0;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body p {
  margin: 0 0 15px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body h2.l3-block-title {
  margin: 60px 0 35px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 24px;
  line-height: 1.35;
  font-weight: 600;
  letter-spacing: 0;
  color: #020203;
}
/* Figma 13020:13619 — Испытательный центр (1440) */
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-testing .l3-block-title + .l3-block-title,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-testing .l3-block-title + .l3-block-title,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-testing .l3-block-title + .l3-block-title {
  margin-top: 60px;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-testing,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-testing,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-testing {
  margin-top: 60px;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner:first-child + p,
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner:first-child + h2.l3-block-title {
  margin-top: 0;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner:first-child + h2.l3-block-title,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner:first-child + h2.l3-block-title,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner:first-child + h2.l3-block-title {
  margin-top: 60px;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-important {
  margin: 32px 0 48px;
  padding: 50px;
  background: #fff;
  border: 1px solid #08c;
  border-radius: 0;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-important__title {
  font-size: 24px;
  line-height: 1.35;
  font-weight: 600;
  color: #08c;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-important__lead {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  line-height: 1.3;
  font-weight: 500;
  color: #020203;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-form__help {
  margin: 48px 0 0;
  max-width: 658px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-form__help a {
  color: #08c;
}

/* Figma 13208:1951 — «Сертификация и испытания_заявка» @375 (node 13020:15550 mobile) */
@media (max-width: 799px) {
  body[class*="page-certification-"].page-l3:not(.page-home) .hero.hero--subpage.hero--strip {
    min-height: 84px;
    max-height: none;
    padding: 10px 0 17px;
    overflow: visible;
  }

  body[class*="page-certification-"].page-l3:not(.page-home) .hero.hero--subpage.hero--strip > .container {
    padding-inline: 15px;
  }

  body[class*="page-certification-"].page-l3:not(.page-home) .hero.hero--subpage.hero--strip .hero__title {
    font-family: var(--font-heading);
    font-size: 22px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    max-width: none;
    white-space: normal;
    margin-bottom: 10px;
  }

  body[class*="page-certification-"].page-l3:not(.page-home) .hero.hero--subpage.hero--strip .breadcrumbs {
    margin-top: 10px;
    font-family: var(--font-body-figma);
    font-size: 14px;
    line-height: normal;
    color: #686a73;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 > .container.subpage-l3 {
    padding-inline: 15px;
  }

  body[class*="page-certification-"].page-l3 .subpage-l3--strip .subpage-l3__body > .l3-form--order:first-child {
    margin-top: 30px;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order {
    max-width: none;
    width: 100%;
    box-sizing: border-box;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__row,
  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__row--radios,
  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__row--madein {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
    min-height: 0;
    margin-bottom: 30px;
    grid-template-columns: unset;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__row--tall {
    padding-top: 0;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__control,
  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__control input.l3-form__input {
    width: 100%;
    max-width: none;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__radios {
    gap: 15px;
    flex-wrap: wrap;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__label--madein {
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__row--actions {
    flex-direction: column;
    align-items: stretch;
    gap: 30px;
    padding-left: 0;
    margin-top: 0;
    margin-bottom: 0;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__row--actions .l3-form__consent {
    max-width: none;
    flex: none;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__row--actions .l3-form__submit {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  body[class*="page-certification-"].page-l3 .section--subpage-l3 .subpage-l3__body .l3-form--order .l3-form__help {
    max-width: none;
    margin-top: 30px;
  }
}

/* Figma 13020:13619 — Испытательный центр: списки, аккордеон, контакты, кнопка */
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-list--disc,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-list--disc,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-list--disc {
  list-style: disc;
  padding-left: 24px;
  margin: 0 0 48px;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-cols--testing-products .l3-list--disc,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-cols--testing-products .l3-list--disc,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-cols--testing-products .l3-list--disc {
  margin-bottom: 0;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li {
  padding-left: 0;
  margin-bottom: 15px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li::before,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li::before,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li::before {
  content: none;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li:last-child,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li:last-child,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-list--disc li:last-child {
  margin-bottom: 0;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-list--important-body,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-list--important-body,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-list--important-body {
  margin-bottom: 15px;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin: 0 0 60px;
  max-width: 1200px;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__heading,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__heading,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__heading {
  margin: 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 24px;
  line-height: 1.35;
  font-weight: 600;
  color: #020203;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__row,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__row,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__row {
  min-height: 22px;
  padding: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  line-height: 1.35;
  font-weight: 500;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__row--tall,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__row--tall,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__row--tall {
  min-height: 44px;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__row:last-child,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__row:last-child,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__row:last-child {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__num,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__num,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__num {
  font-weight: 500;
  color: #08c;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__label,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__label,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__label {
  font-size: 18px;
  line-height: 1.35;
  font-weight: 500;
  color: #020203;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__chev,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__chev,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__chev {
  width: 7px;
  height: 14px;
  background: none;
  opacity: 1;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__chev img,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__chev img,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accordion--testing-center .l3-accordion__chev img {
  display: block;
  width: 7px;
  height: 14px;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-cta--testing-rules,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-cta--testing-rules,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-cta--testing-rules {
  margin: 32px 0 0;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-testing-btn,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-testing-btn,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-testing-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 406px;
  min-height: 47px;
  padding: 15px 40px;
  border-radius: 50px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 14px;
  line-height: 1;
  font-weight: 500;
  white-space: nowrap;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-testing-contacts__label,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-testing-contacts__label,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-testing-contacts__label {
  font-weight: 500;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-testing-contacts a,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-testing-contacts a,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-testing-contacts a {
  color: #08c;
  text-decoration: none;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-important--testing-center .l3-important__lead,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-important--testing-center .l3-important__lead,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-important--testing-center .l3-important__lead {
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  font-weight: 400;
  color: #020203;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-important--testing-center .l3-important__lead-greeting,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-important--testing-center .l3-important__lead-greeting,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-important--testing-center .l3-important__lead-greeting {
  margin: 0 0 0;
  font-weight: 500;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-important--testing-center .l3-important__lead p,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-important--testing-center .l3-important__lead p,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-important--testing-center .l3-important__lead p {
  margin: 0;
}
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accent,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accent,
body[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-accent a,
body[class*="page-certification-transport-epsm"] .section--subpage-l3 .subpage-l3__body .l3-accent a {
  color: #08c;
  text-decoration: none;
}

/* Figma 13020:14095 — Присвоение четырехзначного буквенного кода (1440) */
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner-letter-code:first-child + h2.l3-block-title {
  margin-top: 60px;
}
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-letter-code__text {
  margin: 0 0 15px;
  max-width: 1200px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-letter-code__label {
  font-weight: 500;
}
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accent,
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-accent a {
  color: #08c;
  text-decoration: none;
}
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-letter-code-contacts__label {
  font-weight: 500;
}
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-letter-code-contacts a {
  color: #08c;
  text-decoration: none;
}
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-letter-code-contacts p {
  margin: 0 0 15px;
  max-width: 1200px;
}
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-letter-code-contacts p:last-child {
  margin-bottom: 0;
}
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner-letter-code {
  position: relative;
  width: 100vw;
  max-width: none;
  margin: 0 calc(50% - 50vw) 60px;
  overflow: hidden;
}
body[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner-letter-code img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1440 / 534;
  object-fit: cover;
  object-position: center center;
}
@media (min-width: 1900px) {
  body:not(.page-home)[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner-letter-code img {
    aspect-ratio: 1920 / 534;
    object-fit: cover;
  }
}

/* Figma 13020:13396 — баннер «Сертификация шин»: фото + градиент справа + белый текст */
.l3-figure--banner-tires {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1440 / 534;
  margin-bottom: 60px;
}
body.page-certification-voluntary-smk .section--subpage-l3 .subpage-l3__body .l3-figure--banner-tires {
  width: 100vw;
  max-width: none;
  margin: 0 calc(50% - 50vw) 60px;
}
.l3-figure--banner-tires img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 54%;
}
.l3-figure--banner-tires .l3-figure__overlay {
  position: absolute;
  left: 33.89%;
  top: 0;
  width: 66.11%;
  height: 100%;
  z-index: 1;
  background: linear-gradient(to left, rgba(2, 2, 3, 0.72) 55%, rgba(2, 2, 3, 0) 100%);
  pointer-events: none;
}
.section--subpage-l3 .subpage-l3__body .l3-figure--banner-tires .l3-figure__caption {
  position: absolute;
  left: 62.01%;
  top: 32.77%;
  max-width: 29.31%;
  margin: 0;
  padding: 0;
  z-index: 2;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.3;
  color: #fff;
  text-wrap: pretty;
}
body.page-certification-voluntary-smk .hero.hero--certification.hero--subpage.hero--strip .hero__title {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
body.page-certification-voluntary-smk .hero.hero--certification.hero--subpage.hero--strip .breadcrumbs,
body.page-certification-voluntary-smk .hero.hero--certification.hero--subpage.hero--strip .breadcrumbs a {
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 14px;
  line-height: normal;
  color: #686a73;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner-tires:first-child + .l3-block-title {
  margin-top: 0;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-list--alpha {
  margin: 0 0 15px;
  padding-left: 24px;
  list-style-type: lower-alpha;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-list--alpha ul {
  margin: 15px 0 0;
  padding-left: 24px;
  list-style-type: disc;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-contacts p {
  margin: 0 0 15px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-contacts p:last-child {
  margin-bottom: 0;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-contacts strong {
  font-weight: 500;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-contacts a {
  color: #08c;
  text-decoration: none;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-contacts a:hover {
  text-decoration: underline;
}
@media (max-width: 991px) {
  .l3-figure--banner-tires {
    aspect-ratio: auto;
    min-height: clamp(320px, 56vw, 534px);
    margin-bottom: 40px;
  }
  .section--subpage-l3 .subpage-l3__body .l3-figure--banner-tires .l3-figure__caption {
    right: 24px;
    left: 24px;
    top: auto;
    bottom: 24px;
    max-width: none;
    font-size: 16px;
    color: #fff;
  }
  .l3-figure--banner-tires .l3-figure__overlay {
    left: 0;
    width: 100%;
    background: linear-gradient(to top, rgba(2, 2, 3, 0.82) 52%, rgba(2, 2, 3, 0.12) 100%);
  }
}

/* Figma 13020:13396 @1900 — hero x=120, колонка 1680 */
@media (min-width: 1900px) {
  body.page-l3:not(.page-home)[class*="page-certification"] .header > .container.header__top,
  body.page-l3:not(.page-home)[class*="page-certification"] .header > .container.header__inner {
    max-width: 1920px;
    margin-inline: auto;
    padding-inline: 120px;
  }
  body:not(.page-home)[class*="page-certification"] .hero.hero--certification.hero--subpage.hero--strip > .container,
  body:not(.page-home)[class*="page-certification"] .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3,
  body:not(.page-home)[class*="page-certification"] .section--subpage-l3 > .container.subpage-l3 {
    max-width: 1920px;
    margin-inline: auto;
    padding-left: 120px;
    padding-right: 120px;
  }
  body:not(.page-home)[class*="page-certification"] .hero.hero--certification.hero--subpage.hero--strip {
    min-height: 135px;
    max-height: 135px;
    overflow: hidden;
    padding: 30px 0 40px;
    box-sizing: border-box;
  }
  body:not(.page-home)[class*="page-certification"] .hero.hero--certification.hero--subpage.hero--strip .hero__inner {
    max-width: none;
    width: 100%;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 0;
  }
  body:not(.page-home)[class*="page-certification"] .hero.hero--certification.hero--subpage.hero--strip .hero__title {
    font-family: var(--font-display, Montserrat, sans-serif);
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    color: #020203;
    max-width: none;
    white-space: nowrap;
    margin: 0 0 10px;
  }
  body:not(.page-home)[class*="page-certification"] .hero.hero--certification.hero--subpage.hero--strip .breadcrumbs,
  body:not(.page-home)[class*="page-certification"] .hero.hero--certification.hero--subpage.hero--strip .breadcrumbs a {
    margin-top: 10px;
    font-family: var(--font-body-figma, "Fira Sans", sans-serif);
    font-size: 14px;
    line-height: normal;
    color: #686a73;
  }
  body:not(.page-home)[class*="page-certification"] .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3,
  body:not(.page-home)[class*="page-certification"] .section--subpage-l3 .subpage-l3 {
    max-width: none;
    width: 100%;
  }
  body:not(.page-home)[class*="page-certification"] .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3__body,
  body:not(.page-home)[class*="page-certification"] .section--subpage-l3 .subpage-l3__body,
  body:not(.page-home)[class*="page-certification"] .section--subpage-l3 .subpage-l3__body.prose {
    max-width: 1680px;
    width: 100%;
  }
  /* Figma 13020:13619 — Испытательный центр @1900 */
  body:not(.page-home)[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner:first-child + h2.l3-block-title,
  body:not(.page-home)[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body > .l3-figure--banner:first-child + h2.l3-block-title {
    margin-top: 60px;
  }
  body:not(.page-home)[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-cols,
  body:not(.page-home)[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-cols {
    grid-template-columns: minmax(0, 768px) minmax(0, 768px);
    gap: 24px 104px;
  }
  body:not(.page-home)[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-cols__col > p,
  body:not(.page-home)[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-cols__col > p {
    max-width: none;
    font-size: 16px;
    line-height: 1.3;
  }
  body:not(.page-home)[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-testing .l3-block-title + .l3-block-title,
  body:not(.page-home)[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-testing .l3-block-title + .l3-block-title {
    margin-top: 60px;
  }
  body:not(.page-home)[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-testing,
  body:not(.page-home)[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-cols--cert-testing {
    margin-top: 60px;
    margin-bottom: 0;
  }
  body:not(.page-home)[class*="page-certification-transport-otts"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner-testing-center img,
  body:not(.page-home)[class*="page-certification-transport-epts"] .section--subpage-l3 .subpage-l3__body .l3-figure--banner-testing-center img {
    aspect-ratio: 1920 / 534;
    object-fit: cover;
  }
  /* Figma 13020:14317 — Регистрация КЛП @1900 */
  body:not(.page-home).page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-figure--banner-klp img {
    aspect-ratio: 1920 / 534;
    height: auto;
    object-fit: cover;
    object-position: center 53.75%;
  }
  body:not(.page-home).page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-figure--banner-refusal img {
    aspect-ratio: 1920 / 534;
    height: auto;
    object-fit: cover;
  }
}

/* Figma 13020:15004 — Формы заявок на проведение работ и типовой договор (1440) */
body.page-certification-declaration-order .hero.hero--certification.hero--subpage.hero--strip .hero__title {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
body.page-certification-declaration-order .hero.hero--certification.hero--subpage.hero--strip .breadcrumbs,
body.page-certification-declaration-order .hero.hero--certification.hero--subpage.hero--strip .breadcrumbs a {
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 14px;
  line-height: normal;
  color: #686a73;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-accordion--forms {
  margin: 60px 0 48px;
  max-width: 1200px;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-accordion--forms .l3-accordion__row {
  padding: 20px 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-accordion--forms .l3-accordion__num {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #08c;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-accordion--forms .l3-accordion__label {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-accordion--forms .l3-accordion__row--tall {
  min-height: 44px;
  align-items: start;
}
body[class*="page-certification-"] .section--subpage-l3 .subpage-l3__body .l3-accordion--forms .l3-accordion__row--tall .l3-accordion__label {
  line-height: normal;
}

/* Figma 13020:14317 — Регистрация каталожных листов продукции (1440) */
body.page-certification-transport-epsm .hero.hero--certification.hero--subpage.hero--strip .hero__title {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
  max-width: 1200px;
  white-space: normal;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-figure--banner-klp {
  margin: 0 0 60px;
  overflow: hidden;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-figure--banner-klp img {
  display: block;
  width: 100%;
  height: 534px;
  object-fit: cover;
  object-position: center 53.75%;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-klp-lead {
  margin: 0 0 60px;
  max-width: 1200px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.3;
  color: #020203;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-accordion--klp {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin: 0 0 35px;
  max-width: 1200px;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-accordion--klp__heading {
  margin: 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 24px;
  font-weight: 600;
  line-height: 1.35;
  color: #020203;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-accordion--klp .l3-accordion__row {
  display: grid;
  grid-template-columns: 30px 1fr 7px;
  gap: 10px;
  align-items: start;
  padding: 0 0 20px;
  margin: 0;
  border-bottom: 1px solid #e0e0e0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-accordion--klp .l3-accordion__row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-accordion--klp .l3-accordion__row--tall {
  align-items: start;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-accordion--klp .l3-accordion__num {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #08c;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-accordion--klp .l3-accordion__label {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-accordion--klp .l3-accordion__chev {
  width: 7px;
  height: 14px;
  margin-top: 4px;
  background: url("/local/templates/ris/assets/img/certification/l3-accordion-chev-figma.png") center / contain no-repeat;
  opacity: 1;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-klp-submit {
  margin: 0 0 60px;
  max-width: 1200px;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-klp-submit p {
  margin: 0 0 15px;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-klp-submit p:last-child {
  margin-bottom: 0;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-klp-submit__label {
  font-weight: 500;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-klp-submit a {
  color: #08c;
  text-decoration: none;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body h2.l3-block-title--klp-results {
  margin: 0 0 35px;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-klp-results {
  margin: 0 0 60px;
  max-width: 1200px;
  padding-left: 24px;
  list-style: disc;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-klp-results li {
  margin: 0 0 15px;
  padding-left: 0;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-klp-results li:last-child {
  margin-bottom: 0;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-klp-results li::before {
  content: none;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-important--klp {
  margin: 0 0 48px;
  padding: 50px;
  max-width: 1198px;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-important--klp p {
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  line-height: 1.3;
  margin: 0 0 15px;
}
body.page-certification-transport-epsm .section--subpage-l3 .subpage-l3__body .l3-important--klp p:last-child {
  margin-bottom: 0;
}

/* Figma 13020:13876 — Общероссийские классификаторы (1440) */
body.page-certification-transport-otsh .hero.hero--certification.hero--subpage.hero--strip .hero__title {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
body.page-certification-transport-otsh .hero.hero--certification.hero--subpage.hero--strip .breadcrumbs,
body.page-certification-transport-otsh .hero.hero--certification.hero--subpage.hero--strip .breadcrumbs a {
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 14px;
  line-height: normal;
  color: #686a73;
}
body.page-certification-transport-otsh .section--subpage-l3 .subpage-l3__body .l3-figure--banner-classifiers {
  position: relative;
  width: 100vw;
  max-width: none;
  margin: 0 calc(50% - 50vw) 60px;
  overflow: hidden;
}
body.page-certification-transport-otsh .section--subpage-l3 .subpage-l3__body .l3-figure--banner-classifiers img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1440 / 534;
  object-fit: cover;
  object-position: center 53.75%;
}
body.page-certification-transport-otsh .section--subpage-l3 .subpage-l3__body .l3-classifiers-body {
  max-width: 1200px;
}
body.page-certification-transport-otsh .section--subpage-l3 .subpage-l3__body .l3-classifiers-body p {
  margin: 0 0 15px;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}
body.page-certification-transport-otsh .section--subpage-l3 .subpage-l3__body .l3-classifiers-body p:last-child {
  margin-bottom: 0;
}
body.page-certification-transport-otsh .section--subpage-l3 .subpage-l3__body .l3-classifiers-accent {
  color: #08c;
  text-decoration: none;
}
body.page-certification-transport-otsh .section--subpage-l3 .subpage-l3__body .l3-classifiers-accent:hover {
  text-decoration: underline;
}
body.page-certification-transport-otsh .section--subpage-l3 .subpage-l3__body p.l3-cta.l3-cta--pair {
  margin: 60px 0 48px;
}
@media (min-width: 1900px) {
  body.page-certification-transport-otsh .section--subpage-l3 .subpage-l3__body .l3-figure--banner-classifiers img {
    aspect-ratio: 1920 / 534;
    object-position: center 53.75%;
  }
  body.page-certification-transport-otsh .section--subpage-l3 .subpage-l3__body .l3-classifiers-body {
    max-width: 1680px;
  }
}

/* Figma 13112:9016 — Наука / ЦКП (1440) */
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-figure--banner-ckp {
  margin: 0 0 60px;
  overflow: hidden;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-figure--banner-ckp img {
  display: block;
  width: 100%;
  height: 534px;
  object-fit: cover;
  object-position: center;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body h2.l3-block-title--section {
  margin: 60px 0 35px;
  font-family: var(--font);
  font-size: 24px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body > .l3-figure--banner-ckp:first-child + h2.l3-block-title--section {
  margin-top: 0;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-info p,
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-info p:last-child,
body.page-science-ckp .section--subpage-l3 .subpage-l3__body > p,
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-subheading {
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  margin: 0 0 15px;
  color: #020203;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-info strong {
  font-weight: 500;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-info a {
  color: #08c;
  text-decoration: none;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-info a:hover {
  text-decoration: underline;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-subheading {
  font-weight: 500;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-list {
  margin: 0 0 15px;
  padding-left: 24px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-list li {
  margin: 0 0 15px;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-list li:last-child {
  margin-bottom: 0;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-science-ckp-list--ordered {
  list-style-type: decimal;
}
body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-link-list {
  margin-top: 60px;
}
@media (max-width: 767px) {
  body.page-science-ckp .section--subpage-l3 .subpage-l3__body .l3-figure--banner-ckp img {
    height: min(534px, 56vw);
  }
}

/* Figma 13112:8782 — Наука / ГНЦ (1440) */
body.page-science-gnc .hero.hero--science.hero--subpage.hero--strip {
  min-height: 175px;
  padding: 30px 0 40px;
  box-sizing: border-box;
}
body.page-science-gnc .hero.hero--science.hero--subpage.hero--strip .hero__title {
  font-family: var(--font);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  max-width: 1200px;
  color: #020203;
}
body.page-science-gnc .hero.hero--science.hero--subpage.hero--strip .breadcrumbs {
  margin-top: 10px;
  font-family: var(--font-body-figma);
  font-size: 14px;
  font-weight: 400;
  line-height: normal;
  color: #686a73;
}
body.page-science-gnc .hero.hero--science.hero--subpage.hero--strip .breadcrumbs a {
  color: #686a73;
  text-decoration: underline;
  text-underline-position: from-font;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-figure--banner-gnc {
  position: relative;
  width: 100vw;
  max-width: none;
  margin: 0 calc(50% - 50vw) 60px;
  overflow: hidden;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-figure--banner-gnc img {
  display: block;
  width: 100%;
  height: 534px;
  object-fit: cover;
  object-position: center;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body h2.l3-block-title--gnc {
  font-family: var(--font);
  font-size: 24px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
  margin: 48px 0 35px;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-prose p,
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-list,
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-list li {
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-prose p {
  margin: 0 0 15px;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body > .l3-figure--banner-gnc:first-child + .l3-gnc-section h2.l3-block-title--gnc:first-child,
body.page-science-gnc .section--subpage-l3 .subpage-l3__body > .l3-gnc-section:first-child h2.l3-block-title--gnc:first-child {
  margin-top: 60px;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-section .l3-gnc-split h2.l3-block-title--gnc:first-child {
  margin-top: 0;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-prose p:last-child {
  margin-bottom: 0;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-em {
  font-family: var(--font-body-figma);
  font-weight: 500;
  text-transform: uppercase;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-label,
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-strong {
  font-family: var(--font-body-figma);
  font-weight: 500;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-prose > .l3-gnc-list:first-child,
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-prose--wide > .l3-gnc-list:only-child {
  margin-top: 0;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-section + .l3-gnc-section {
  margin-top: 0;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split + .l3-gnc-prose--wide {
  margin-top: 0;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-list {
  list-style: disc;
  padding-left: 24px;
  margin: 0 0 15px;
  font-family: var(--font-body-figma);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-list li {
  margin-bottom: 15px;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-list li:last-child {
  margin-bottom: 0;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-indent {
  padding-left: 24px;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-prose--wide {
  max-width: 1200px;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-prose--narrow {
  max-width: 550px;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split {
  display: grid;
  grid-template-columns: 590px 550px;
  gap: 60px;
  max-width: 1200px;
  align-items: start;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split--img-left .l3-gnc-split__figure {
  grid-column: 1;
  grid-row: 1;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split--img-left > .l3-gnc-prose {
  grid-column: 2;
  grid-row: 1;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split--img-right .l3-gnc-split__figure {
  grid-column: 2;
  grid-row: 1;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split--img-right > .l3-gnc-prose {
  grid-column: 1;
  grid-row: 1;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split__figure {
  margin: 0;
  overflow: hidden;
}
body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split__figure img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: var(--l3-gnc-img-w, 590) / var(--l3-gnc-img-h, 393);
  object-fit: cover;
  object-position: center;
}
@media (max-width: 880px) {
  body.page-science-gnc .hero.hero--science.hero--subpage.hero--strip .hero__title {
    font-size: 24px;
  }
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-figure--banner-gnc {
    width: calc(100% + 2 * var(--gutter));
    margin-left: calc(-1 * var(--gutter));
    margin-right: calc(-1 * var(--gutter));
    margin-bottom: 32px;
  }
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-figure--banner-gnc img {
    height: min(534px, 56vw);
  }
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split--img-left .l3-gnc-split__figure,
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split--img-right .l3-gnc-split__figure,
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split--img-left > .l3-gnc-prose,
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split--img-right > .l3-gnc-prose {
    grid-column: 1;
    grid-row: auto;
  }
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-prose--narrow {
    max-width: none;
  }
}

/* Figma 2_1_Шаблон_1900 (13208:4895) + 13112:8782 — gutter 120, контент 1676 */
@media (min-width: 1900px) {
  body.page-science-gnc .hero.hero--science.hero--subpage.hero--strip > .container {
    max-width: none;
    padding-left: 120px;
    padding-right: 120px;
  }
  body.page-science-gnc .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3,
  body.page-science-gnc .section--subpage-l3 > .container.subpage-l3 {
    max-width: none;
    padding-left: 120px;
    padding-right: 120px;
  }
  body.page-science-gnc .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3,
  body.page-science-gnc .section--subpage-l3 .subpage-l3 {
    max-width: none;
    width: 100%;
  }
  body.page-science-gnc .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3__body,
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body {
    max-width: 1676px;
  }
  body.page-science-gnc .hero.hero--science.hero--subpage.hero--strip .hero__title,
  body.page-science-gnc .hero.hero--science.hero--subpage.hero--strip .breadcrumbs,
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body h2.l3-block-title--gnc,
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split,
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-prose--wide {
    max-width: 1676px;
  }
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-prose--narrow {
    max-width: 768px;
  }
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-gnc-split {
    grid-template-columns: 824px 768px;
    gap: 84px;
  }
  body.page-science-gnc .section--subpage-l3 .subpage-l3__body .l3-figure--banner-gnc img {
    height: 534px;
    object-fit: cover;
    object-position: center;
  }
}

body.page-science-order {
  filter: brightness(1.1286) contrast(0.9367) saturate(1.0015);
}

body[class*="page-media-"] {
  filter: brightness(1.06) contrast(0.94) saturate(0.98);
}

body.page-media-add-news {
  filter: blur(0.8px) brightness(1.1103) contrast(0.9292) saturate(1.0083);
}

body[class*="page-publications-"] {
  filter: blur(0.2px) brightness(1.1712) contrast(0.9454) saturate(1.0094);
}

body.page-education-tk-courses {
  filter: blur(0.8px) brightness(1.0972) contrast(0.9628) saturate(0.9807);
}

body.page-certification-refusal .hero.hero--certification.hero--subpage.hero--strip .hero__title {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  color: #020203;
}
body.page-certification-refusal .hero.hero--certification.hero--subpage.hero--strip .breadcrumbs,
body.page-certification-refusal .hero.hero--certification.hero--subpage.hero--strip .breadcrumbs a {
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 14px;
  line-height: normal;
  color: #686a73;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-figure--banner-refusal {
  margin: 0 0 51px;
  max-width: none;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-figure--banner-refusal img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1440 / 534;
  object-fit: cover;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body > .l3-figure--banner-refusal:first-child + .l3-refusal-hours {
  margin-top: 0;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-refusal-hours {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 24px;
  width: fit-content;
  max-width: 666px;
  min-height: 70px;
  height: 70px;
  margin: 0 0 60px;
  padding: 15px;
  background: #f5f5f5;
  box-sizing: border-box;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-refusal-hours__item {
  display: flex;
  align-items: center;
  gap: 15px;
  flex: 0 0 auto;
  min-width: 0;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-refusal-hours__icon {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-refusal-hours__text {
  margin: 0;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
  white-space: nowrap;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-refusal-hours__text strong {
  font-weight: 500;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-refusal-intro {
  margin: 0 0 60px;
  max-width: 1200px;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-refusal-intro > p {
  margin: 0 0 15px;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body h2.l3-block-title {
  margin: 60px 0 35px;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 24px;
  font-weight: 600;
  line-height: 1.35;
  color: #020203;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body > p {
  margin: 0 0 15px;
  max-width: 1200px;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body > p strong {
  font-weight: 500;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body > p a,
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-list--refusal a {
  color: #08c;
  text-decoration: none;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-list--refusal {
  margin: 0 0 15px;
  padding-left: 24px;
  list-style: disc;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-list--refusal li {
  padding-left: 0;
  font-family: var(--font-body-figma, "Fira Sans", sans-serif);
  font-size: 16px;
  line-height: 1.3;
  color: #020203;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-list--refusal li::before {
  content: none;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-list--refusal li + li {
  margin-top: 15px;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-accordion--refusal {
  margin: 0 0 60px;
  max-width: 1200px;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-accordion--refusal .l3-accordion__heading {
  margin: 0 0 20px;
  padding: 0 0 20px;
  border: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 24px;
  font-weight: 600;
  line-height: normal;
  color: #020203;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-accordion--refusal .l3-accordion__row {
  padding: 20px 0;
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-accordion--refusal .l3-accordion__row:first-of-type {
  border-top: 0;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-accordion--refusal .l3-accordion__num {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #08c;
}
body.page-certification-refusal .section--subpage-l3 .subpage-l3__body .l3-accordion--refusal .l3-accordion__label {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  color: #020203;
}

body.page-certification-expertise {
  filter: brightness(1.06) contrast(0.94) saturate(0.98);
}

body.page-about-team .about-structure-panel {
  margin-top: 20px;
}
body.page-about-team .about-leadership__carousel .about-leadership__rail,
body.page-about-structure .about-leadership__carousel .about-leadership__rail {
  padding-bottom: 25px;
}
body.page-about-team,
body.page-about-structure {
  filter: contrast(1.02) brightness(0.99) saturate(0.98);
}
body.page-about-structure .about-structure-panel--expanded {
  margin-top: 0;
}

/* Figma 1_1_Шаблон_1900 / 13199 «О нас_Руководство»: gutter 120, колонка 1680, 5×275 + gap 33 */
@media (min-width: 1900px) {
  body.page-about-team.page-l3:not(.page-home) .header > .container.header__top,
  body.page-about-team.page-l3:not(.page-home) .header > .container.header__inner,
  body.page-about-structure.page-l3:not(.page-home) .header > .container.header__top,
  body.page-about-structure.page-l3:not(.page-home) .header > .container.header__inner {
    max-width: none;
    margin-inline: auto;
    padding-inline: 120px;
  }

  body.page-about-team .hero.hero--subpage.hero--strip > .container,
  body.page-about-structure .hero.hero--subpage.hero--strip > .container,
  body.page-about-team .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3,
  body.page-about-structure .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3,
  body.page-about-team .section--subpage-l3 > .container.subpage-l3,
  body.page-about-structure .section--subpage-l3 > .container.subpage-l3,
  body.page-about-team main#main > section#content > .container.subpage-l3,
  body.page-about-structure main#main > section#content > .container.subpage-l3 {
    max-width: none !important;
    width: 100%;
    margin-inline: auto;
    padding-left: 120px;
    padding-right: 120px;
    box-sizing: border-box;
  }

  body.page-about-team .hero.hero--subpage.hero--strip .hero__inner,
  body.page-about-structure .hero.hero--subpage.hero--strip .hero__inner {
    max-width: 1680px;
    width: 100%;
  }

  body.page-about-team .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3,
  body.page-about-structure .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3,
  body.page-about-team .section--subpage-l3 .subpage-l3,
  body.page-about-structure .section--subpage-l3 .subpage-l3 {
    max-width: none !important;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  body.page-about-team .section--subpage-l3 .subpage-l3__body:has(.about-leadership),
  body.page-about-structure .section--subpage-l3 .subpage-l3__body:has(.about-leadership),
  body.page-about-team main#main > section#content > .container.subpage-l3 > .subpage-l3__body,
  body.page-about-structure main#main > section#content > .container.subpage-l3 > .subpage-l3__body {
    max-width: 1680px !important;
    width: 100%;
  }

  body.page-about-team .about-leadership,
  body.page-about-structure .about-leadership {
    max-width: none !important;
    width: 100%;
  }

  body.page-about-team .about-leadership__carousel,
  body.page-about-structure .about-leadership__carousel {
    width: 100%;
    max-width: 1680px;
    grid-template-columns: minmax(0, 1fr);
    margin-inline: 0;
  }

  body.page-about-team .about-leadership__carousel .about-leadership__viewport,
  body.page-about-structure .about-leadership__carousel .about-leadership__viewport {
    grid-column: 1;
    overflow: visible;
  }

  body.page-about-team .about-leadership__carousel .about-leadership__rail,
  body.page-about-structure .about-leadership__carousel .about-leadership__rail {
    overflow-x: visible;
    justify-content: flex-start;
    width: 100%;
    max-width: none;
    padding-bottom: 25px;
  }

  body.page-about-team .about-leadership__carousel .about-leadership__nav,
  body.page-about-structure .about-leadership__carousel .about-leadership__nav {
    display: none;
  }

  body.page-about-team .about-leadership__rail > .about-leader-card,
  body.page-about-structure .about-leadership__rail > .about-leader-card {
    flex: 0 0 275px;
    max-width: none;
  }

  body.page-about-team .about-structure-panel,
  body.page-about-structure .about-structure-panel,
  body.page-about-structure .about-structure-panel--expanded {
    max-width: 1680px;
    width: 100%;
  }

  body.page-about-team .about-structure-panel__image,
  body.page-about-structure .about-structure-panel__image {
    max-width: 1680px;
    width: 100%;
  }

  body.page-about-team .about-structure-panel__image img,
  body.page-about-structure .about-structure-panel__image img {
    width: 100%;
    max-width: none;
  }
}

/* Home 1280 (Figma 3_index_1280 / node 10005:9385) */
@media (min-width: 1280px) and (max-width: 1439px) {
  body.page-home {
    --container: 1280px;
    --gutter: 39px;
  }

  body.page-home .hero--home {
    padding: 31px 0 var(--hero-decor-h);
    min-height: 596px;
  }
  body.page-home .hero--home .hero__inner {
    grid-template-columns: 652px 480px;
    gap: 20px;
    margin-bottom: 4px;
  }
  body.page-home .hero--home .hero__title {
    font-size: 36px;
    line-height: 1.35;
    letter-spacing: -0.025em;
    max-width: 652px;
    margin-bottom: 30px;
  }
  body.page-home .hero--home .hero__lead {
    font-size: 20px;
    line-height: 1.3;
    max-width: 498px;
  }
  body.page-home .hero--home .hero__stats.stats-grid {
    grid-template-columns: repeat(2, 174px);
    gap: 68px 75px;
    width: auto;
    max-width: none;
  }
  body.page-home .hero--home .hero__stats .stat {
    min-height: 99px;
  }
  body.page-home .hero--home .stat__num {
    font-size: 42px;
    line-height: 1;
  }
  body.page-home .hero--home .stat__txt {
    font-size: 16px;
    line-height: 1.35;
    max-width: 175px;
  }
  body.page-home .hero--home .hero__tiles.grid--4 {
    grid-template-columns: repeat(4, 275px);
    gap: 33px;
    max-width: 1200px;
    justify-content: flex-start;
  }
  body.page-home .hero--home .tile--hero {
    min-height: 194px;
  }

  /* Продвигаемый продукт: copy x=100, Icon_01 602×602 @ x=622 → gap 0, правый отступ 56px */
  body.page-home .section--home-product > .container > .product-showcase {
    width: 100%;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-top: 32px;
    padding-bottom: 48px;
    padding-left: 99px;
    padding-right: 56px;
    overflow: visible;
    background: #fff;
    box-sizing: border-box;
  }
  body.page-home .product-showcase__main {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr) 50px;
    grid-template-areas: "prev track next";
    align-items: center;
    column-gap: 0;
    width: calc(100% + 74px);
    max-width: none;
    margin-left: -33px;
    margin-right: -41px;
    position: relative;
  }
  body.page-home .product-showcase__main > .product-showcase__track {
    grid-area: track;
    width: 100%;
    min-width: 0;
  }
  body.page-home .product-showcase__main > .product-showcase__rail {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    z-index: 6;
  }
  body.page-home .product-showcase__main > .product-showcase__rail--prev {
    grid-area: prev;
    justify-self: center;
  }
  body.page-home .product-showcase__main > .product-showcase__rail--next {
    grid-area: next;
    justify-self: center;
  }
  body.page-home .product-showcase__main > .product-showcase__rail .product-showcase__nav {
    position: static;
    transform: none;
  }
  body.page-home .product-showcase .split-row--product {
    display: grid;
    grid-template-columns: 523px 602px;
    gap: 0;
    width: 100%;
    max-width: 1125px;
    margin-inline: 0;
    align-items: start;
  }
  body.page-home .section--home-product > .container {
    max-width: none;
    padding-inline: 0;
  }
  body.page-home .product-showcase__body,
  body.page-home .product-showcase__main {
    width: 100%;
    max-width: none;
    padding-inline: 0;
  }
  body.page-home .product-showcase .split-row__copy {
    max-width: 523px;
    padding-top: 78px;
  }
  body.page-home .product-showcase .section-title {
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    margin-bottom: 45px;
    max-width: 527px;
  }
  body.page-home .product-showcase .split-row__copy p {
    font-size: 16px;
    line-height: 1.3;
    margin-bottom: 15px;
    max-width: 523px;
  }
  body.page-home .product-showcase .split-row__copy p:last-of-type {
    margin-bottom: 0;
  }
  body.page-home .product-showcase .product-showcase__cta .btn,
  body.page-home .product-showcase .split-row__copy .btn {
    width: 230px;
    min-width: 230px;
    min-height: 47px;
    height: 47px;
    padding: 12px 28px;
  }
  body.page-home .product-showcase .split-row__art--contain img {
    width: calc(var(--product-art-w, 602) * 1px);
    height: calc(var(--product-art-h, 602) * 1px);
    max-width: calc(var(--product-art-w, 602) * 1px);
    max-height: calc(var(--product-art-h, 602) * 1px);
  }

  body.page-home .section--home-prices .pricing,
  body.page-home #prices .pricing {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 33px;
    max-width: 1200px;
    margin-inline: auto;
    justify-content: center;
    overflow: visible;
  }
  body.page-home #prices .price-card {
    width: 378px;
    min-height: 0;
    height: auto;
  }

  body.page-home .section--industries .industries {
    grid-template-columns: repeat(4, 275px);
    column-gap: 33px;
    row-gap: 33px;
    max-width: 1200px;
    margin-inline: auto;
    justify-content: center;
  }
  body.page-home .section--industries .industry-card {
    width: 275px;
    min-height: 167px;
  }

  /* Топовые инсайты — типографика карточек @1280 (карусель — см. блок выше 1280–1899) */
  body.page-home .section--articles .insight-card__img {
    height: 300px;
    max-height: 300px;
    aspect-ratio: 378 / 300;
  }
  body.page-home .section--articles .insight-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
  body.page-home .section--articles .insight-card__body {
    padding: 20px 22px 22px;
    gap: 8px;
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    overflow: hidden;
  }
  body.page-home .section--articles .insight-card__meta {
    margin-bottom: 0;
    flex-shrink: 0;
  }
  body.page-home .section--articles .insight-card__meta .insight-card__rubric {
    padding: 5px;
    border-radius: 5px;
    background: #f1f1f1;
  }
  body.page-home .section--articles .news-card__title,
  body.page-home .section--news-home .news-card__title {
    margin: 0;
    flex-shrink: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    min-height: calc(1.3em * 2);
    max-height: calc(1.3em * 2);
  }
  body.page-home .section--articles .news-card__excerpt,
  body.page-home .section--news-home .news-card__excerpt {
    flex: 0 0 auto;
    flex-shrink: 0;
    min-height: calc(1.3em * 2);
    max-height: calc(1.3em * 2);
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    font-size: 16px;
    line-height: 1.3;
  }
  body.page-home .section--articles .news-card__more,
  body.page-home .section--news-home .news-card__more {
    margin-top: 0;
    flex-shrink: 0;
  }
  body.page-home .section--news-home .news-card__img {
    height: 220px;
    max-height: 220px;
    min-height: 220px;
    aspect-ratio: auto;
  }
  body.page-home .section--news-home .news-card__body {
    padding: 20px 22px 22px;
    gap: 8px;
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    overflow: hidden;
  }

  body.page-home .gosts-home {
    grid-template-columns: 236px minmax(0, max-content);
    column-gap: 48px;
    row-gap: 12px;
    max-width: 1200px;
    margin-inline: auto;
  }
  body.page-home .grid--gosts-home {
    grid-template-columns: repeat(2, 378px);
    gap: 33px;
  }
  body.page-home .section--gosts-home .gost-card--row {
    min-height: 97px;
    height: auto;
    max-height: none;
    overflow: visible;
    align-items: flex-start;
  }
  body.page-home .section--gosts-home .gost-card__desc {
    flex: none;
    max-height: 67px;
    -webkit-line-clamp: 3;
    line-clamp: 3;
  }

  body.page-home .section--news-home .news-showcase .h-slider__track.media-cards-grid--news-home {
    max-width: 1200px;
    margin-inline: auto;
  }
  body.page-home .section--news-home .news-card,
  body.page-home .section--events-home .event-card--media {
    width: 378px;
    max-width: 378px;
  }

  body.page-home .section--articles .section-title,
  body.page-home .section--news-home .section-title,
  body.page-home .section--partners .section-title,
  body.page-home .section--events-home .section-title,
  body.page-home .section--industries .section-title,
  body.page-home .gosts-home__title,
  body.page-home .problem-banner__title,
  body.page-home .cta-banner--join__title,
  body.page-home .fund-library-cta__title,
  body.page-home .cta-banner--polygon h2,
  body.page-home .product-showcase .section-title {
    font-size: 28px;
    line-height: 1.35;
  }
  body.page-home .fund-library-cta__lead,
  body.page-home .cta-banner--polygon p {
    font-size: 16px;
    line-height: 1.3;
  }
}

@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-home .section--home-product {
    background: #fff;
  }
  body.page-home .section--home-product > .container {
    max-width: none;
    padding-inline: 0;
  }
  body.page-home .section--home-product > .container > .product-showcase {
    width: 100%;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: calc((100vw - min(var(--container), 100vw)) / 2 + var(--gutter));
    padding-right: calc((100vw - min(var(--container), 100vw)) / 2 + var(--gutter));
    overflow: visible;
    background: #fff;
  }
  body.page-home .hero--home + .section--soft {
    padding-top: 0;
    padding-bottom: 0;
  }
  body.page-home .hero--home + .section--soft > .container {
    max-width: none;
    padding-top: 0;
    padding-bottom: 0;
    padding-inline: 0;
  }
  body.page-home .hero--home + .section--soft > .container > .product-showcase {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    overflow: visible;
  }
  body.page-home .product-showcase__body,
  body.page-home .product-showcase__main {
    width: 100%;
    max-width: none;
    padding-inline: 0;
  }
  body.page-home .product-showcase .split-row--product {
    width: 100%;
    max-width: none;
    margin-inline: auto;
    grid-template-columns: 523px 602px;
    gap: 107px;
    justify-content: space-between;
    align-items: start;
  }
  body.page-home .product-showcase .section-title {
    font-size: 28px;
    line-height: 1.35;
    margin-bottom: 45px;
  }
  body.page-home .product-showcase .split-row__copy {
    max-width: 523px;
    padding-top: 78px;
  }
  body.page-home .product-showcase .split-row__copy p {
    font-size: 16px;
    line-height: 1.3;
    margin-bottom: 15px;
    max-width: 523px;
  }
  body.page-home .product-showcase .split-row__copy p:last-of-type {
    margin-bottom: 0;
  }
  body.page-home .product-showcase .product-showcase__cta .btn,
  body.page-home .product-showcase .split-row__copy .btn {
    width: 230px;
    min-width: 230px;
    min-height: 47px;
    height: 47px;
    padding: 12px 28px;
  }
  body.page-home .product-showcase .split-row__art--contain img {
    width: calc(var(--product-art-w, 602) * 1px);
    height: calc(var(--product-art-h, 602) * 1px);
    max-width: calc(var(--product-art-w, 602) * 1px);
    max-height: calc(var(--product-art-h, 602) * 1px);
  }

  body.page-home .section--industries .section-title,
  body.page-home .section--articles .section-title,
  body.page-home .section--news-home .section-title,
  body.page-home .section--events-home .section-title {
    font-size: 28px;
    line-height: 1.35;
  }
  body.page-home .section--industries .industry-card {
    min-height: 167px;
    height: 167px;
  }
  body.page-home .section--news-home .news-showcase.h-slider {
    width: 1200px;
    max-width: 1200px;
    margin-inline: auto;
  }
  body.page-home .section--news-home .news-showcase .h-slider__track.media-cards-grid--news-home {
    gap: 33px;
    width: 1200px;
    max-width: 1200px;
    margin-inline: auto;
  }
  body.page-home .section--news-home .news-showcase .h-slider__track > .news-card {
    width: 378px;
    min-height: 487px;
    height: 487px;
    max-height: 487px;
    overflow: hidden;
  }
  body.page-home .section--events-home .events-showcase.h-slider {
    width: 1200px;
    max-width: 1200px;
    margin-inline: auto;
  }
  body.page-home .section--events-home .events-showcase .h-slider__track {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    gap: 33px;
    width: 1200px;
    max-width: 1200px;
    margin-inline: auto;
    overflow-x: auto;
    overflow-y: hidden;
  }
  body.page-home .section--events-home .events-showcase .h-slider__track > .event-card--media {
    flex: 0 0 378px;
    width: 378px;
    min-height: 422px;
  }
  body.page-home .section--events-home .events-showcase .h-slider__track > .event-card--media:nth-child(n + 5) {
    grid-column: auto;
  }
  body.page-home .fund-library-cta__title {
    font-size: 28px;
    line-height: 1;
  }
  body.page-home .gosts-home__title {
    font-size: 28px;
    line-height: 1.35;
  }
  body.page-home .section--gosts-home {
    padding-top: 60px;
    padding-bottom: 70px;
  }
  body.page-home .section--gosts-home .gost-card--row {
    min-height: 97px;
    height: auto;
    max-height: none;
    overflow: visible;
    align-items: flex-start;
  }
  body.page-home .section--gosts-home .gost-card__desc {
    flex: none;
    max-height: 67px;
    -webkit-line-clamp: 3;
    line-clamp: 3;
  }
  body.page-home .grid--gosts-home .gost-card--row:nth-child(n + 3) {
    grid-column: auto;
    justify-self: auto;
    max-width: 378px;
  }
  body.page-home .section--gosts-home .gost-card__code {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

/* Figma 5_1 @1900: «Разработка…» — 4×(275×394), #f5f5f5 + #ed1a34 4px, карточка 275×240, gap 83, CTA 260×50 */
@media (min-width: 1900px) {
  body.page-standardization #dev .std-section-title--center {
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 65px;
    max-width: none;
  }

  body.page-standardization .std-dev-grid {
    grid-template-columns: repeat(4, 275px);
    gap: 83px;
    row-gap: 0;
    justify-content: center;
    align-items: stretch;
  }

  body.page-standardization .std-dev-cell {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 275px;
    max-width: 275px;
    min-height: 394px;
    background: #f5f5f5;
    position: relative;
  }

  body.page-standardization .std-dev-cell::before {
    content: "";
    display: block !important;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #ed1a34;
    z-index: 3;
  }

  body.page-standardization .std-dev-cell::after {
    display: none;
  }

  body.page-standardization .std-dev-cell__icon {
    position: relative;
    z-index: 2;
    flex: 0 0 auto;
    object-fit: contain;
  }

  body.page-standardization .std-dev-cell:nth-child(1) .std-dev-cell__icon {
    width: 168px;
    height: 168px;
    margin: 10px 0 -24px;
  }

  body.page-standardization .std-dev-cell:nth-child(2) .std-dev-cell__icon {
    width: 138px;
    height: 138px;
    margin: 25px 0 -24px;
  }

  body.page-standardization .std-dev-cell:nth-child(3) .std-dev-cell__icon {
    width: 173px;
    height: 173px;
    margin: 6px 0 -24px;
  }

  body.page-standardization .std-dev-cell:nth-child(4) .std-dev-cell__icon {
    width: 143px;
    height: 143px;
    margin: 23px 0 -24px;
  }

  body.page-standardization .std-dev-cell .std-card,
  body.page-standardization .std-dev-cell .std-card.std-card--tall {
    box-sizing: border-box;
    width: 100%;
    max-width: 275px;
    min-height: 240px;
    max-height: 240px;
    margin-top: auto;
    margin-inline: 0;
    padding: 25px;
    gap: 10px;
    background: #fff;
    border: none;
    border-top: none;
    box-shadow: none;
    align-self: stretch;
    text-align: center;
    align-items: center;
  }

  body.page-standardization .std-dev-cell .std-card__title {
    width: 100%;
    max-width: 225px;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  body.page-standardization .std-dev-cell .std-card__text {
    width: 100%;
    max-width: 225px;
    margin: 0;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  body.page-standardization .std-dev-cell:nth-child(1) .std-card__title,
  body.page-standardization .std-dev-cell:nth-child(4) .std-card__title {
    max-height: 48px;
    -webkit-line-clamp: 2;
  }

  body.page-standardization .std-dev-cell:nth-child(1) .std-card__text,
  body.page-standardization .std-dev-cell:nth-child(4) .std-card__text {
    max-height: 132px;
    -webkit-line-clamp: 7;
  }

  body.page-standardization .std-dev-cell:nth-child(2) .std-card__title,
  body.page-standardization .std-dev-cell:nth-child(3) .std-card__title {
    max-height: 96px;
    -webkit-line-clamp: 4;
  }

  body.page-standardization .std-dev-cell:nth-child(2) .std-card__text,
  body.page-standardization .std-dev-cell:nth-child(3) .std-card__text {
    max-height: 84px;
    -webkit-line-clamp: 5;
  }

  body.page-standardization .std-dev-cta {
    margin: 70px 0 0;
    padding: 0;
    text-align: center;
  }

  body.page-standardization .std-dev-cta__btn.btn.btn--primary {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 260px;
    width: auto;
    height: 50px;
    min-height: 50px;
    max-height: 50px;
    padding: 15px 40px;
    border-radius: 50px;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    transform: none;
    box-shadow: none;
  }

  body.page-standardization .std-dev-cta__btn.btn.btn--primary:hover {
    transform: none;
    box-shadow: none;
  }
}

/* Figma 5_1_Стандартизация_1900 (13189:13205): типографика по всей странице */
@media (min-width: 1900px) {
  html body.page-standardization:not(.page-home) .hero.page-hero.hero--standardization:not(.hero--strip) h1.hero__title {
    font-size: 32px;
    line-height: 1.35;
    font-weight: 600;
    letter-spacing: 0;
    max-width: none;
  }

  body.page-standardization .hero.page-hero.hero--standardization:not(.hero--strip) {
    margin-top: 0;
  }

  body.page-standardization .hero--standardization .breadcrumbs,
  body.page-standardization .hero--standardization .breadcrumbs a {
    font-family: "Fira Sans", sans-serif;
    font-size: 14px;
  }

  body.page-standardization .catalog-block__title {
    font-size: 48px;
    font-weight: 800;
    line-height: 1.35;
  }

  body.page-standardization .catalog-block__lead {
    font-family: "Fira Sans", sans-serif;
    font-size: 24px;
    line-height: 1.3;
    color: #121617;
  }

  body.page-standardization .catalog-block__tiles .std-card__title {
    flex: 0 0 58px;
    min-height: 58px;
    max-height: 58px;
    font-family: var(--font);
    font-size: 24px;
    font-weight: 600;
    line-height: 29px;
    color: #020203;
  }

  body.page-standardization .catalog-block__tiles .std-card__text {
    flex: 1 1 auto;
    min-height: 0;
    font-family: "Fira Sans", sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    max-height: 104px;
  }

  body.page-standardization .std-section-title,
  body.page-standardization .std-section-title--center {
    font-size: 32px;
    line-height: 1.35;
    font-weight: 600;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization #federal .std-section-title--center,
  body.page-standardization .std-section-header--resources .std-section-title,
  body.page-standardization #defense .std-defense__title {
    font-size: 32px;
    line-height: 1.35;
    font-weight: 600;
    color: #020203;
  }

  body.page-standardization .std-intl-card__label {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
  }

  body.page-standardization .std-defense__copy p {
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #020203;
  }

  body.page-standardization .std-contacts-card__title {
    font-size: 16px;
    line-height: 1.35;
    font-weight: 600;
  }

  body.page-standardization .std-contacts-card__phone {
    font-family: var(--font);
    font-size: 24px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0;
  }

  body.page-standardization .std-contacts-card__phone a {
    font-weight: 500;
  }

  body.page-standardization .std-contacts-card__email,
  body.page-standardization .std-contacts-card__hours {
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    line-height: 1.3;
  }

  body.page-standardization .std-card--consult .std-card__title {
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
  }

  body.page-standardization .std-card--consult .std-card__text {
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #020203;
  }

  body.page-standardization .std-compact-card__label,
  body.page-standardization .std-compact-card .std-card__title {
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
  }

  body.page-standardization .std-card--federal .std-card__title {
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
  }

  body.page-standardization .std-card--federal .std-card__text {
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 400;
    color: #020203;
  }

  body.page-standardization .std-card--federal .std-card__more {
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    color: #686a73;
  }

  body.page-standardization .std-card--npa-row .std-card__title {
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
  }

  body.page-standardization .std-card--npa-row .std-card__text {
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #020203;
  }

  body.page-standardization .std-promo__copy .std-section-title {
    font-size: 32px;
    font-weight: 600;
    line-height: 1.3;
    color: #121617;
    letter-spacing: 0;
  }

  body.page-standardization .std-promo__copy p {
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #121617;
  }

  body.page-standardization .std-promo--science .std-promo__copy .std-section-title {
    font-size: 32px;
    line-height: 1.3;
    color: #121617;
  }

  body.page-standardization .std-promo--science .std-promo__copy p {
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #121617;
  }

  body.page-standardization .cta-banner--std-join__title {
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
  }

  body.page-standardization .cta-banner--std-join__btn.btn.btn--white {
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
  }

  body.page-standardization .std-section-link {
    font-size: 14px;
    font-weight: 500;
  }

  body.page-standardization .catalog-block__btn.btn.btn--primary,
  body.page-standardization .std-consult-cta .btn,
  body.page-standardization .std-defense__more,
  body.page-standardization .std-promo__btn.btn--primary,
  body.page-standardization .std-cycle-order__btn.btn.btn--primary {
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
  }
}

/* Figma 5_1 @1900 (13189:13696): международные — 5×275×167 в один ряд, gap 33 */
@media (min-width: 1900px) {
  body.page-standardization #international > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  /* Figma 13189:13447: Montserrat SemiBold 32px / 1.35, по центру кадра 1920 */
  body.page-standardization #international .std-section-title.std-section-title--center {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 0 65px;
    padding: 0;
    text-align: center;
    font-family: var(--font-heading);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization .std-intl-grid {
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: stretch;
    gap: 33px;
    width: 100%;
    max-width: none;
  }

  body.page-standardization .std-intl-grid__row {
    display: contents;
  }

  body.page-standardization .std-intl-card {
    box-sizing: border-box;
    flex: 0 0 275px;
    width: 275px;
    max-width: 275px;
    min-height: 167px;
    height: auto;
    max-height: none;
    padding: 25px;
    gap: 15px;
  }

  body.page-standardization .std-intl-card__icon {
    flex: 0 0 60px;
    min-height: 60px;
    width: auto;
  }

  body.page-standardization .std-intl-card__icon img {
    display: block;
    width: auto;
    height: auto;
    max-width: none;
    max-height: none;
    object-fit: contain;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(1) .std-intl-card__icon img {
    width: 72px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(2) .std-intl-card__icon img {
    width: 64px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(3) .std-intl-card__icon img {
    width: 58px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card:nth-child(1) .std-intl-card__icon img {
    width: 58px;
    height: 60px;
  }

  body.page-standardization .std-intl-card__icon--blend {
    position: relative;
    width: 60px;
    height: 60px;
    overflow: hidden;
  }

  body.page-standardization .std-intl-card__icon--blend img {
    width: 60px;
    height: 60px;
    object-fit: cover;
  }

  body.page-standardization .std-intl-card__icon--blend::after {
    content: "";
    position: absolute;
    inset: 0;
    background: #08c;
    mix-blend-mode: lighten;
    pointer-events: none;
  }

  body.page-standardization .std-intl-card__label {
    display: block;
    width: 100%;
    max-width: 225px;
    max-height: none;
    overflow: visible;
    -webkit-line-clamp: unset;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    color: #020203;
  }
}

/* /standardization/ @1024+: шапка 138+18px зазор до hero (Figma y=156), как на главной */
@media (min-width: 1024px) {
  body.page-standardization .header {
    box-sizing: border-box;
    min-height: 156px;
    height: 156px;
    max-height: 156px;
    padding-top: 26px;
    padding-bottom: 18px;
    overflow: visible;
    border-bottom: 1px solid var(--c-line);
    box-shadow: none;
  }

  body.page-standardization .header__top {
    padding: 0 !important;
    height: 56px;
    min-height: 56px;
    max-height: 56px;
    border-bottom: 0 !important;
  }

  body.page-standardization .header__inner {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: stretch;
    padding: 18px 0 0 !important;
    height: 56px;
    min-height: 56px;
    max-height: 56px;
    margin: 0;
    border-bottom: 0;
    box-sizing: border-box;
  }

  body.page-standardization .header > .container.header__inner {
    overflow: visible;
  }
}

/* Figma 5_1 @1900: каталог — иллюстрация 390×332, hero/header зазоры */
@media (min-width: 1900px) {
  body.page-standardization .catalog-block__panel {
    position: relative;
  }

  body.page-standardization .catalog-block__art {
    position: absolute;
    top: 17px !important;
    right: 41px !important;
    left: auto !important;
    width: 390px !important;
    margin: 0;
    grid-column: unset;
    grid-row: unset;
    z-index: 2;
  }

  body.page-standardization .catalog-block__art img {
    display: block;
    width: 390px !important;
    height: 332px !important;
    max-width: 390px !important;
    max-height: 332px !important;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center;
  }
}

/* Figma 5_1 @1900 #dev (13189:13448–13475): колонка #f5f5f5 275×394, #ed1a34 4px, иконка внутри, белая карточка 275×240 */
@media (min-width: 1900px) {
  body.page-standardization #dev > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization .std-dev-cell::before {
    display: block !important;
  }

  body.page-standardization .std-dev-cell::after {
    display: none !important;
  }

  body.page-standardization .std-dev-cell {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 275px !important;
    max-width: 275px !important;
    min-height: 394px !important;
    background: #f5f5f5 !important;
    position: relative;
    overflow: visible;
    padding-top: 0;
  }

  body.page-standardization .std-dev-cell__icon {
    position: relative;
    z-index: 2;
    flex: 0 0 auto;
    display: block;
    object-fit: contain;
    pointer-events: none;
    margin-bottom: -24px;
  }

  body.page-standardization .std-dev-cell:nth-child(1) .std-dev-cell__icon {
    width: 168px;
    height: 168px;
    margin-top: 10px;
  }

  body.page-standardization .std-dev-cell:nth-child(2) .std-dev-cell__icon {
    width: 138px;
    height: 138px;
    margin-top: 25px;
  }

  body.page-standardization .std-dev-cell:nth-child(3) .std-dev-cell__icon {
    width: 173px;
    height: 173px;
    margin-top: 6px;
  }

  body.page-standardization .std-dev-cell:nth-child(4) .std-dev-cell__icon {
    width: 143px;
    height: 143px;
    margin-top: 23px;
  }

  body.page-standardization .std-dev-cell .std-card,
  body.page-standardization .std-dev-cell .std-card.std-card--tall {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 275px !important;
    min-height: 240px !important;
    max-height: 240px !important;
    margin-top: auto !important;
    margin-inline: 0;
    padding: 25px !important;
    gap: 10px;
    background: #fff !important;
    border: none !important;
    border-top: none !important;
    box-shadow: none !important;
    align-self: stretch;
    text-align: center;
    align-items: center;
  }

  body.page-standardization .std-dev-cell .std-card__title {
    width: 100%;
    max-width: 225px;
    margin: 0;
    font-family: var(--font);
    font-size: 20px !important;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: center;
  }

  body.page-standardization .std-dev-cell .std-card__text {
    width: 100%;
    max-width: 225px;
    margin: 0;
    font-family: "Fira Sans", sans-serif !important;
    font-size: 16px !important;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    text-align: center;
  }
}

/* Figma 5_1 @1900 #defense (13189:13476–13485): центр 1230px, title 32px center, текст 613 Fira 16, контакты 451×171 */
@media (min-width: 1900px) {
  body.page-standardization #defense > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization .section--std-defense {
    min-height: 374px;
    padding-top: 60px;
    padding-bottom: 60px;
    box-sizing: border-box;
    background: #f5f5f5;
  }

  body.page-standardization .std-defense {
    width: min(100%, 1230px);
    max-width: 1230px;
    margin-inline: auto;
    grid-template-columns: 613px 451px;
    grid-template-areas:
      "title title"
      "main contacts";
    column-gap: 166px;
    row-gap: 35px;
    align-items: start;
    justify-content: center;
  }

  body.page-standardization .std-defense__body {
    display: contents;
  }

  body.page-standardization .std-defense__main {
    grid-area: main;
  }

  body.page-standardization #defense .std-defense__title {
    grid-area: title;
    width: 100%;
    max-width: none;
    margin: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    color: #020203;
  }

  body.page-standardization .std-defense__copy {
    max-width: 613px;
    width: 100%;
  }

  body.page-standardization .std-defense__copy p {
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
  }

  body.page-standardization .std-defense__main {
    gap: 24px;
  }

  body.page-standardization .std-contacts-card {
    grid-area: contacts;
    width: 451px;
    max-width: 451px;
    min-height: 171px;
    margin-top: -31px;
    justify-self: end;
    padding: 35px 42px;
    box-shadow: 0 0 25px rgba(57, 59, 65, 0.1);
  }

  body.page-standardization .std-contacts-card__title {
    margin-bottom: 17px;
    font-family: var(--font);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
    color: #020203;
  }

  body.page-standardization .std-contacts-card__phone {
    font-family: var(--font);
    font-size: 24px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization .std-contacts-card__phone a,
  body.page-standardization .std-contacts-card__email a {
    color: #020203;
    font-weight: 500;
    text-decoration: none;
  }

  body.page-standardization .std-contacts-card__email,
  body.page-standardization .std-contacts-card__hours {
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #020203;
  }

  body.page-standardization .std-contacts-card__hours-label {
    color: #020203;
  }
}

/* Figma 5_1 @1900 #consulting (13189:13487–13502): 3×378×392 gap 133, title 32px center, card title 20 / text Fira 16 */
@media (min-width: 1900px) {
  body.page-standardization #consulting > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization #consulting .std-section-title--center {
    margin-bottom: 65px;
    font-family: var(--font);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    text-align: center;
    color: #020203;
  }

  body.page-standardization .std-consult-showcase.h-slider {
    margin-inline: auto;
    max-width: 1400px;
  }

  body.page-standardization .std-consult-showcase .h-slider__track {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 133px;
    justify-content: center;
    overflow: visible;
    scroll-snap-type: none;
    margin-inline: 0;
    padding-inline: 0;
    padding-bottom: 0;
  }

  body.page-standardization .std-consult-showcase .h-slider__track > .std-card--consult {
    flex: none;
    width: 378px;
    min-width: 378px;
    max-width: 378px;
    height: 392px;
    min-height: 392px;
    max-height: 392px;
    margin-inline: 0;
    padding: 25px;
    scroll-snap-align: unset;
    overflow: hidden;
  }

  body.page-standardization .std-card--consult {
    gap: 15px;
    align-items: center;
    height: 392px;
    min-height: 392px;
    max-height: 392px;
    overflow: hidden;
    border-top: none;
    background-color: #fff;
    background-image: linear-gradient(#ed1a34, #ed1a34);
    background-size: 100% 5px;
    background-repeat: no-repeat;
    background-position: 0 0;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
  }

  body.page-standardization .std-card--consult .std-card__media {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 155px;
    margin: 0;
  }

  body.page-standardization .std-card--consult .std-card__media img {
    width: 155px;
    height: 155px;
    max-width: none;
    max-height: none;
    object-fit: contain;
  }

  body.page-standardization .std-card--consult:nth-child(3) .std-card__media {
    flex-basis: auto;
    min-height: 149px;
    margin: 0;
  }

  body.page-standardization .std-card--consult:nth-child(3) .std-card__media img {
    width: 207px;
    height: 149px;
  }

  body.page-standardization .std-card--consult .std-card__title {
    width: 100%;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
  }

  body.page-standardization .std-card--consult .std-card__text {
    width: 100%;
    margin: 0;
    flex: 0 1 auto;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    text-align: left;
  }

  body.page-standardization .std-consult-cta {
    margin-top: 70px;
    text-align: center;
  }

  body.page-standardization .std-consult-cta .btn {
    min-width: 260px;
    min-height: 50px;
    padding: 15px 40px;
    border-radius: 50px;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
  }
}

/* Figma 5_1 @1900 #sto (13189:13503–13520): фон #f5f5f5, 2×378×159 gap 133, title 32px center */
@media (min-width: 1900px) {
  body.page-standardization #sto > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization .section--std-sto {
    min-height: 397px;
    padding-top: 60px;
    padding-bottom: 70px;
    box-sizing: border-box;
    background: #f5f5f5;
  }

  body.page-standardization #sto .std-section-title--center {
    margin-bottom: 65px;
    max-width: none;
    font-family: var(--font);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    text-align: center;
    color: #020203;
  }

  body.page-standardization .std-sto-grid {
    width: min(100%, 889px);
    max-width: 889px;
    margin-inline: auto;
    grid-template-columns: repeat(2, 378px);
    column-gap: 133px;
    row-gap: 0;
    justify-content: center;
  }

  body.page-standardization .std-sto-grid .std-compact-card {
    width: 378px;
    max-width: 378px;
    min-height: 159px;
    max-height: 159px;
    padding: 25px;
    gap: 0;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    box-shadow: none;
    text-align: left;
  }

  body.page-standardization .std-sto-grid .std-compact-card::before {
    height: 4px;
    background: #ed1a34;
  }

  body.page-standardization .std-sto-grid .std-compact-card__icon {
    flex: 0 0 auto;
    width: auto;
  }

  body.page-standardization .std-sto-grid .std-compact-card__icon img {
    width: auto;
    height: auto;
    max-width: 121px;
    max-height: 121px;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(1) .std-compact-card__icon img {
    max-width: 98px;
    max-height: 98px;
  }

  body.page-standardization .std-sto-grid .std-compact-card__label {
    flex: 0 0 200px;
    width: 200px;
    max-width: 200px;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
  }
}

/* Figma 5_1 @1900 #classifiers (13189:13505, 13680/13528/13521): title 32px center, 3×378×159 gap 133, bg #f5f5f5 cards */
@media (min-width: 1900px) {
  body.page-standardization #classifiers > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization .section--std-classifiers {
    background: #fff;
    padding-top: 60px;
    padding-bottom: 60px;
    box-sizing: border-box;
  }

  body.page-standardization #classifiers .std-section-header {
    display: block;
    margin-bottom: 55px;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-header .std-section-title {
    margin-bottom: 0;
    font-family: var(--font);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    text-align: center;
    color: #020203;
  }

  body.page-standardization #classifiers .std-section-link {
    display: none;
  }

  body.page-standardization .std-classifier-showcase.h-slider {
    margin-inline: auto;
    max-width: 1400px;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 133px;
    justify-content: center;
    overflow: visible;
    scroll-snap-type: none;
    margin-inline: 0;
    padding-inline: 0;
    padding-bottom: 0;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track > .std-compact-card {
    flex: none;
    width: 378px;
    min-width: 378px;
    max-width: 378px;
    min-height: 159px;
    max-height: 159px;
    margin-inline: 0;
    padding: 25px;
    scroll-snap-align: unset;
  }

  body.page-standardization #classifiers .std-card.std-compact-card {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0;
    background: #f5f5f5;
    box-shadow: none;
    border-top: none;
    text-align: left;
  }

  body.page-standardization #classifiers .std-compact-card::before {
    height: 4px;
    background: #ed1a34;
  }

  body.page-standardization #classifiers .std-compact-card__icon {
    flex: 0 0 auto;
    width: auto;
  }

  body.page-standardization #classifiers .std-compact-card__icon img {
    width: auto;
    height: auto;
    max-width: 104px;
    max-height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card__body {
    flex: 0 0 200px;
    width: 200px;
    max-width: 200px;
    align-items: flex-start;
    gap: 0;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__title {
    width: 200px;
    max-width: 200px;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__text {
    display: none;
  }
}

/* Figma 5_1 @1900 #dev — финальное перекрытие: без line-clamp, flex 225×190, title 20 / text Fira 16 lh 1.3 */
@media (min-width: 1900px) {
  body.page-standardization .std-dev-cell .std-card,
  body.page-standardization .std-dev-cell .std-card.std-card--tall {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    height: 240px !important;
    min-height: 240px !important;
    max-height: 240px !important;
    padding: 25px !important;
    gap: 10px;
    overflow: hidden;
  }

  body.page-standardization .std-dev-cell .std-card__title {
    flex: 0 0 auto;
    width: 225px;
    max-width: 225px;
    margin: 0;
    font-family: var(--font) !important;
    font-size: 20px !important;
    font-weight: 600;
    line-height: normal !important;
    color: #020203;
    text-align: center;
    display: block;
    overflow: visible;
    max-height: none !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: unset;
  }

  body.page-standardization .std-dev-cell .std-card__text {
    flex: 1 1 auto;
    width: 225px;
    max-width: 225px;
    min-height: 0;
    margin: 0;
    font-family: "Fira Sans", sans-serif !important;
    font-size: 16px !important;
    font-weight: 400;
    line-height: 1.3 !important;
    color: #020203;
    text-align: center;
    display: block;
    overflow: hidden;
    max-height: none !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: unset;
    text-overflow: clip;
  }

  body.page-standardization .std-dev-cell:nth-child(1) .std-card__title,
  body.page-standardization .std-dev-cell:nth-child(2) .std-card__title,
  body.page-standardization .std-dev-cell:nth-child(3) .std-card__title,
  body.page-standardization .std-dev-cell:nth-child(4) .std-card__title,
  body.page-standardization .std-dev-cell:nth-child(1) .std-card__text,
  body.page-standardization .std-dev-cell:nth-child(2) .std-card__text,
  body.page-standardization .std-dev-cell:nth-child(3) .std-card__text,
  body.page-standardization .std-dev-cell:nth-child(4) .std-card__text {
    max-height: none !important;
    -webkit-line-clamp: unset !important;
  }
}

/* Figma 5_1 @1900 #federal (13189:13685/13558): фон #f5f5f5, 675+673×439 gap 52 center 1400, title 32px, card title 20 / text Fira 16 */
@media (min-width: 1900px) {
  body.page-standardization #federal > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization .section--std-federal {
    padding-top: 60px;
    padding-bottom: 60px;
    box-sizing: border-box;
    background: #f5f5f5;
  }

  body.page-standardization #federal .std-section-title--center {
    margin: 0 0 65px;
    max-width: none;
    font-family: var(--font);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    text-align: center;
    color: #020203;
  }

  body.page-standardization .std-federal-grid {
    width: min(100%, 1400px);
    max-width: 1400px;
    margin-inline: auto;
    grid-template-columns: 675px 673px;
    gap: 52px;
    justify-content: center;
    align-items: stretch;
  }

  body.page-standardization .std-card--federal {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 15px;
    width: 100%;
    max-width: none;
    min-height: 439px;
    max-height: 439px;
    height: 439px;
    padding: 25px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 0 12.5px rgba(57, 59, 65, 0.1);
    color: #020203;
  }

  body.page-standardization .std-federal-grid > .std-card--federal:first-child {
    width: 675px;
    max-width: 675px;
  }

  body.page-standardization .std-federal-grid > .std-card--federal:last-child {
    width: 673px;
    max-width: 673px;
  }

  body.page-standardization .std-card--federal .std-card__title {
    flex: 0 0 auto;
    width: 100%;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
    white-space: normal;
  }

  body.page-standardization .std-card--federal .std-card__text {
    flex: 1 1 auto;
    width: 100%;
    min-height: 0;
    margin: 0;
    overflow: hidden;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    text-align: left;
  }

  body.page-standardization .std-card--federal .std-card__text p {
    margin: 0;
  }

  body.page-standardization .std-card--federal .std-card__text p + p {
    margin-top: 1.3em;
  }

  body.page-standardization .std-card--federal .std-card__text p:last-child {
    margin-bottom: 0;
  }

  body.page-standardization .std-card--federal .std-card__more {
    flex: 0 0 auto;
    margin: 0;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    color: #686a73;
  }

  body.page-standardization .std-card--federal::before {
    left: -25px;
    top: -24px;
    width: 205px;
    height: 437px;
    opacity: 0.1;
    background-size: 214.41% 100%;
    background-position: -107.2% 0;
  }

  body.page-standardization .std-card--federal.std-card--fifs .std-card__text {
    max-height: none;
    overflow: hidden;
  }
}

/* Figma 5_1 @1900 #cycle (13189:13557/13606/13553): title 32px center, schema 959×912, CTA #0088cc 311×50, 70px white до #npa */
@media (min-width: 1900px) {
  body.page-standardization #cycle > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization .section--std-cycle {
    padding-top: 56px;
    padding-bottom: 70px;
    background: #fff;
  }

  body.page-standardization #cycle .std-section-title--center {
    width: 100%;
    max-width: none;
    margin: 0 0 65px;
    text-align: center;
    font-family: var(--font);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    color: #020203;
  }

  body.page-standardization .section--std-cycle .cycle-schema--figma {
    margin-bottom: 0;
  }

  body.page-standardization .section--std-cycle .cycle-schema--figma img {
    display: block;
    width: 959px;
    max-width: 959px;
    height: auto;
    max-height: 912px;
    margin-inline: auto;
  }

  body.page-standardization .std-cycle-order {
    margin: 70px 0 0;
    padding: 0;
    text-align: center;
  }

  body.page-standardization .std-cycle-order__btn.btn.btn--primary {
    min-width: 311px;
    min-height: 50px;
    padding: 15px 40px;
    border: none;
    border-radius: 50px;
    background: #0088cc;
    color: #fff;
    box-shadow: none;
    transform: none;
  }

  body.page-standardization .std-cycle-order__btn.btn.btn--primary:hover {
    background: var(--c-action-hover);
    color: #fff;
    box-shadow: none;
    transform: none;
  }

  body.page-standardization .section--std-npa {
    margin-top: 0;
  }
}

/* Figma 5_1 @1900 #npa (13189:13605/13572–13594): title 32px center, 3×378×254 gap 133 center 1400, bg #f5f5f5 */
@media (min-width: 1900px) {
  body.page-standardization #npa > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization .section--std-npa {
    padding-top: 56px;
    padding-bottom: 56px;
    margin-top: 0;
    background: #f5f5f5;
  }

  body.page-standardization #npa .std-section-title--center {
    width: 100%;
    max-width: none;
    margin: 0 0 65px;
    text-align: center;
    font-family: var(--font);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.35;
    color: #020203;
  }

  body.page-standardization .std-npa-showcase .h-slider__track {
    grid-template-columns: repeat(3, 378px);
    gap: 133px;
    justify-content: center;
    width: min(100%, 1400px);
    max-width: 1400px;
    margin-inline: auto;
  }

  body.page-standardization .std-card--npa-row {
    width: 378px;
    max-width: 378px;
    min-height: 254px;
    padding: 25px;
    gap: 15px;
  }

  body.page-standardization .std-card--npa-row .std-card__icon {
    flex: 0 0 100px;
    width: 100px;
    height: 100px;
  }

  body.page-standardization .std-card--npa-row .std-card__icon img {
    width: 100px;
    height: 100px;
  }

  body.page-standardization .std-card--npa-row .std-card__body {
    gap: 15px;
  }

  body.page-standardization .std-card--npa-row .std-card__title {
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
  }

  body.page-standardization .std-card--npa-row .std-card__text {
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
  }
}

/* Figma 5_1 @1900 #tk-courses + #join-standards (13541/13544/13551, 13533/13535/13534): 1400px = 731+267+402, join 1400×260 */
@media (min-width: 1900px) {
  body.page-standardization #tk-courses > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization .section--std-tk {
    padding-top: 56px;
    padding-bottom: 56px;
    background: #fff;
  }

  body.page-standardization #tk-courses .std-promo--media-right {
    width: min(100%, 1400px);
    max-width: 1400px;
    margin-inline: auto;
    grid-template-columns: minmax(0, 731px) 402px;
    gap: 267px;
    align-items: flex-start;
  }

  body.page-standardization #tk-courses .std-promo__copy .std-section-title {
    max-width: 731px;
    margin: 0 0 23px;
    font-family: var(--font);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.3;
    color: #121617;
  }

  body.page-standardization #tk-courses .std-promo__copy p {
    max-width: 710px;
    margin: 0 0 40px;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #121617;
  }

  body.page-standardization #tk-courses .std-promo__btn.btn--primary {
    min-width: 208px;
    min-height: 47px;
  }

  body.page-standardization #tk-courses .std-promo__media {
    width: 402px;
    flex: 0 0 402px;
  }

  body.page-standardization #tk-courses .std-promo__media img {
    display: block;
    width: 402px;
    max-width: 402px;
    height: 287px;
    margin: 0;
    object-fit: cover;
  }

  body.page-standardization .section--std-join {
    padding-top: 0;
    padding-bottom: 56px;
    background: #fff;
  }

  body.page-standardization #join-standards > .container {
    max-width: none;
    width: 100%;
    margin-inline: auto;
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization .cta-banner.cta-banner--std-join {
    max-width: 1400px;
    width: 100%;
    height: 260px;
    min-height: 260px;
    max-height: 260px;
    gap: 42px;
    padding: 60px 40px 70px;
  }

  body.page-standardization .cta-banner--std-join__title {
    max-width: 744px;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    color: #fff;
  }

  body.page-standardization .cta-banner--std-join__btn.btn.btn--white {
    min-width: 206px;
    min-height: 50px;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
  }
}

/* Figma 5_1 @1900 #compliance + #science (13542/13548/13545, 13543/13546/13549): 1400px, без overlap */
@media (min-width: 1900px) {
  body.page-standardization .section--std-compliance {
    margin-top: 70px;
    padding-top: 40px;
    padding-bottom: 52px;
    background: #f5f5f5;
  }

  body.page-standardization #compliance > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization #compliance .std-promo--media-left {
    width: min(100%, 1400px);
    max-width: 1400px;
    margin-inline: auto;
    grid-template-columns: 399px minmax(0, 1fr);
    gap: 127px;
    align-items: center;
  }

  body.page-standardization #compliance .std-promo__media {
    width: 399px;
    flex: 0 0 399px;
  }

  body.page-standardization #compliance .std-promo__media img {
    width: 399px;
    max-width: 399px;
    height: 399px;
    object-fit: contain;
  }

  body.page-standardization #compliance .std-promo__copy .std-section-title {
    max-width: 731px;
    margin: 0 0 31px;
    font-family: var(--font);
    font-size: 32px;
    font-weight: 600;
    line-height: 1;
    color: #121617;
  }

  body.page-standardization #compliance .std-promo__copy p {
    max-width: 779px;
    margin: 0 0 35px;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #121617;
  }

  body.page-standardization #compliance .std-promo__btn.btn--primary {
    min-width: 165px;
    min-height: 47px;
  }

  body.page-standardization .section--std-science {
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 56px;
    background: #fff;
  }

  body.page-standardization #science-teaser > .container {
    padding-left: var(--gutter);
    padding-right: var(--gutter);
    box-sizing: border-box;
  }

  body.page-standardization #science-teaser .std-promo--science {
    width: min(100%, 1400px);
    max-width: 1400px;
    margin-inline: auto;
    grid-template-columns: minmax(0, 741px) 599px;
    gap: 58px;
    align-items: flex-start;
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__copy .std-section-title {
    margin: 0 0 31px;
    font-family: var(--font);
    font-size: 32px;
    font-weight: 600;
    line-height: 1;
    color: #121617;
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__copy p {
    max-width: 741px;
    margin: 0 0 35px;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #121617;
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__media {
    width: 599px;
    flex: 0 0 599px;
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__media img {
    width: 599px;
    max-width: 599px;
    height: 250px;
    margin: 0;
    object-fit: cover;
    object-position: center;
  }
}

/* Figma 5_1 @1900 catalog tiles (13425/13427/13428): финальный перекрытие @1280 — title slot 58px, text Fira 20px slot 104, gap 20 */
@media (min-width: 1900px) {
  body.page-standardization .catalog-block__tiles .std-card {
    gap: 20px;
    padding: 35px;
  }

  body.page-standardization .catalog-block__tiles .std-card__title {
    flex: 0 0 58px;
    min-height: 58px;
    max-height: 58px;
    font-family: var(--font);
    font-size: 24px;
    font-weight: 600;
    line-height: 29px;
    color: #020203;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin: 0;
  }

  body.page-standardization .catalog-block__tiles .std-card__text {
    flex: 1 1 auto;
    min-height: 0;
    max-height: 104px;
    font-family: "Fira Sans", sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    margin: 0;
  }
}

/* Figma 3_2_О нас_1440: «Документы» + Frame 751 — финальный перекрытие */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-about .section--about-docs .about-docs__heading {
    width: 100%;
    max-width: none;
    text-align: center;
    font-size: 28px;
    line-height: 1.35;
    margin-bottom: 70px;
  }

  body.page-about #docs > .container {
    max-width: 1440px;
    margin-inline: auto;
    padding-inline: 119px;
    box-sizing: border-box;
  }

  body.page-about .about-docs__grid {
    grid-template-columns: repeat(4, 275px);
    gap: 33px;
    justify-content: center;
    max-width: none;
    margin-inline: auto;
  }

  body.page-about .section--about-docs .about-docs__footer {
    margin-top: 70px;
  }

  body.page-about #projects-strip > .container {
    max-width: 1440px;
    margin-inline: auto;
    padding-inline: 119px;
    box-sizing: border-box;
  }

  body.page-about .about-projects-strip.h-slider {
    max-width: 1198px;
    width: 1198px;
    margin-inline: 0;
    padding: 0;
    overflow: visible;
  }

  body.page-about .about-projects-strip .h-slider__track {
    gap: 43px;
    overflow: visible;
    padding-bottom: 0;
    scroll-snap-type: none;
  }

  body.page-about .about-projects-strip .h-slider__track > .about-projects-strip__logo {
    flex: 0 0 auto;
    max-width: var(--strip-logo-w, none);
    scroll-snap-align: none;
  }

  body.page-about .about-projects-strip .h-slider__nav {
    display: none;
  }
}

/* Figma 5_2_Стандартизация_1440 #dev (13189:47299–47345): 4×275×240 gap 33, Montserrat 20 / Fira 16 */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-standardization #dev > .container {
    max-width: 1440px;
    margin-inline: auto;
    padding-inline: 120px;
    box-sizing: border-box;
  }

  body.page-standardization #dev .std-section-title--center {
    font-size: 28px;
    line-height: 1.35;
    font-weight: 600;
    margin-bottom: 70px;
    max-width: none;
  }

  body.page-standardization .std-dev-grid {
    grid-template-columns: repeat(4, 275px);
    gap: 33px;
    row-gap: 25px;
    justify-content: center;
    align-items: start;
  }

  body.page-standardization .std-dev-cta {
    margin: 70px 0 0;
    padding: 0;
    text-align: center;
  }

  body.page-standardization .std-dev-cta__btn.btn.btn--primary {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 260px;
    width: auto;
    height: 50px;
    min-height: 50px;
    max-height: 50px;
    padding: 15px 40px;
    border-radius: 50px;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    transform: none;
    box-shadow: none;
  }
}

/* Figma 5_2_Стандартизация_1440 #international (13189:47346–47713): заголовок по центру, 3+2×275×167 gap 33 */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-standardization #international > .container {
    max-width: 1440px;
    margin-inline: auto;
    padding-inline: 120px;
    box-sizing: border-box;
  }

  body.page-standardization #international .std-section-title.std-section-title--center {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 auto 70px;
    padding: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization .std-intl-grid {
    gap: 33px;
    align-items: center;
  }

  body.page-standardization .std-intl-grid__row--3 {
    grid-template-columns: repeat(3, 275px);
    width: fit-content;
    max-width: 891px;
    margin-inline: auto;
    gap: 33px;
  }

  body.page-standardization .std-intl-grid__row--2 {
    grid-template-columns: repeat(2, 275px);
    width: fit-content;
    max-width: 583px;
    margin-inline: auto;
    gap: 33px;
  }

  body.page-standardization .std-intl-card {
    width: 275px;
    max-width: 275px;
    min-height: 167px;
    max-height: 167px;
    padding: 25px;
    gap: 15px;
    box-shadow: var(--std-card-shadow);
    align-items: center;
  }

  body.page-standardization .std-intl-card__icon {
    flex: 0 0 60px;
    min-height: 60px;
  }

  body.page-standardization .std-intl-card__icon img {
    max-width: none;
    max-height: none;
    object-fit: contain;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(1) .std-intl-card__icon img {
    width: 72px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(2) .std-intl-card__icon img {
    width: 64px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--3 .std-intl-card:nth-child(3) .std-intl-card__icon img {
    width: 58px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card:nth-child(1) .std-intl-card__icon img {
    width: 58px;
    height: 60px;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card:nth-child(2) .std-intl-card__icon img {
    width: 60px;
    height: 60px;
  }

  body.page-standardization .std-intl-card__icon--blend {
    position: relative;
    width: 60px;
    height: 60px;
    overflow: hidden;
  }

  body.page-standardization .std-intl-card__icon--blend img {
    width: 60px;
    height: 60px;
    object-fit: cover;
  }

  body.page-standardization .std-intl-card__icon--blend::after {
    content: "";
    position: absolute;
    inset: 0;
    background: #08c;
    mix-blend-mode: lighten;
    pointer-events: none;
  }

  body.page-standardization .std-intl-card__label {
    display: -webkit-box;
    width: 100%;
    max-width: 225px;
    max-height: 42px;
    margin: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-family: var(--font);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    text-align: center;
    color: #020203;
  }

  body.page-standardization .std-intl-grid__row--2 .std-intl-card__label {
    -webkit-line-clamp: 2;
    max-height: 42px;
  }
}

/* Figma 5_2_Стандартизация_1440 #defense (13189:47699): gutter 120, «Подробнее» 165×50 */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-standardization #defense > .container {
    padding-inline: 120px;
    box-sizing: border-box;
  }

  body.page-standardization .std-defense__main {
    gap: 37px;
  }

  body.page-standardization .std-defense__more.btn.btn--primary {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 165px;
    width: 165px;
    height: 50px;
    min-height: 50px;
    max-height: 50px;
    padding: 15px 40px;
    border: 0;
    border-radius: 50px;
    background: #0088cc;
    color: #fff;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0;
    text-align: center;
    transform: none;
    box-shadow: none;
  }

  body.page-standardization .std-defense__more.btn.btn--primary:hover,
  body.page-standardization .std-defense__more.btn.btn--primary:focus-visible {
    background: var(--c-action-hover);
    border-color: var(--c-action-hover);
    color: #fff;
    transform: none;
    box-shadow: none;
  }
}

/* Figma 5_2_Стандартизация_1440 #consulting (13189:47377–47388): title 28px center, 3×378×392 gap 33 */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-standardization #consulting > .container {
    max-width: 1440px;
    margin-inline: auto;
    padding-inline: 120px;
    box-sizing: border-box;
  }

  body.page-standardization #consulting .std-section-title.std-section-title--center {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 auto 70px;
    padding: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization .std-consult-showcase.h-slider {
    margin: 0;
    padding: 0;
    overflow: visible;
  }

  body.page-standardization .std-consult-showcase .h-slider__track {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 33px;
    justify-content: start;
    overflow: visible;
    scroll-snap-type: none;
    margin-inline: 0;
    padding-inline: 0;
    padding-bottom: 0;
  }

  body.page-standardization .std-consult-showcase .h-slider__track > .std-card--consult {
    flex: none;
    width: 378px;
    min-width: 378px;
    max-width: 378px;
    height: 392px;
    min-height: 392px;
    max-height: 392px;
    overflow: hidden;
  }

  body.page-standardization .std-card--consult {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
    padding: 25px;
    height: 392px;
    min-height: 392px;
    max-height: 392px;
    overflow: hidden;
  }

  body.page-standardization .std-card--consult .std-card__media {
    flex: 0 0 155px;
    min-height: 155px;
    margin: 0;
  }

  body.page-standardization .std-card--consult .std-card__media img {
    width: 155px;
    height: 155px;
    max-width: 155px;
    max-height: 155px;
    object-fit: contain;
  }

  body.page-standardization .std-card--consult:nth-child(3) .std-card__media {
    flex: 0 0 149px;
    min-height: 149px;
    margin: 0;
  }

  body.page-standardization .std-card--consult:nth-child(3) .std-card__media img {
    width: 207px;
    height: 149px;
    max-width: 207px;
    max-height: 149px;
  }

  body.page-standardization .std-card--consult .std-card__title {
    width: 100%;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    max-height: 48px;
  }

  body.page-standardization .std-card--consult:nth-child(3) .std-card__title {
    -webkit-line-clamp: 3;
    max-height: 72px;
  }

  body.page-standardization .std-card--consult .std-card__text {
    width: 100%;
    margin: 0;
    flex: 0 1 auto;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #020203;
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 4;
    max-height: 84px;
  }

  body.page-standardization .std-card--consult:nth-child(2) .std-card__text {
    -webkit-line-clamp: 5;
    max-height: 109px;
  }

  body.page-standardization .std-card--consult:nth-child(3) .std-card__text {
    -webkit-line-clamp: 4;
    max-height: 91px;
  }

  body.page-standardization .std-consult-cta {
    margin: 70px 0 0;
    text-align: center;
  }

  body.page-standardization .std-consult-cta .btn.btn--primary {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 260px;
    width: auto;
    height: 50px;
    min-height: 50px;
    max-height: 50px;
    padding: 15px 40px;
    border: 0;
    border-radius: 50px;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    transform: none;
    box-shadow: none;
  }
}

/* Figma 5_2_Стандартизация_1440 #sto / #classifiers (13189:47394–47688): 378×159, title 20px, #ed1a34 4px */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-standardization #sto > .container,
  body.page-standardization #classifiers > .container {
    max-width: 1440px;
    margin-inline: auto;
    padding-inline: 120px;
    box-sizing: border-box;
  }

  body.page-standardization #sto .std-section-title.std-section-title--center {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 auto 70px;
    padding: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #020203;
  }

  body.page-standardization .std-sto-grid {
    grid-template-columns: repeat(2, 378px);
    gap: 33px;
    justify-content: center;
    max-width: none;
    margin-inline: auto;
  }

  body.page-standardization .std-sto-grid .std-compact-card {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 378px;
    max-width: 378px;
    min-height: 159px;
    max-height: 159px;
    padding: 25px;
    gap: 0;
    background: #fff;
    box-shadow: var(--std-card-shadow);
    text-align: left;
  }

  body.page-standardization .std-sto-grid .std-compact-card::before {
    height: 4px;
    background: #ed1a34;
  }

  body.page-standardization .std-sto-grid .std-compact-card__icon {
    flex: 0 0 auto;
    width: auto;
    max-width: 121px;
  }

  body.page-standardization .std-sto-grid .std-compact-card__icon img {
    width: auto;
    height: auto;
    max-width: 121px;
    max-height: 121px;
    object-fit: contain;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(1) .std-compact-card__icon img {
    width: 98px;
    height: 98px;
    max-width: 98px;
    max-height: 98px;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(2) .std-compact-card__icon img {
    width: 121px;
    height: 121px;
    max-width: 121px;
    max-height: 121px;
  }

  body.page-standardization .std-sto-grid .std-compact-card__label {
    flex: 0 0 200px;
    width: 200px;
    max-width: 200px;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
  }

  body.page-standardization #classifiers .std-section-header {
    display: block;
    margin-bottom: 70px;
    text-align: center;
  }

  body.page-standardization #classifiers .std-section-header .std-section-title {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
    text-align: center;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    color: #020203;
  }

  body.page-standardization #classifiers .std-section-link {
    display: none;
  }

  body.page-standardization .std-classifier-showcase.h-slider {
    margin: 0;
    padding: 0;
    overflow: visible;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track {
    display: grid;
    grid-template-columns: repeat(3, 378px);
    gap: 33px;
    justify-content: start;
    overflow: visible;
    scroll-snap-type: none;
    margin-inline: 0;
    padding-inline: 0;
    padding-bottom: 0;
  }

  body.page-standardization .std-classifier-showcase .h-slider__track > .std-compact-card {
    flex: none;
    width: 378px;
    min-width: 378px;
    max-width: 378px;
    min-height: 159px;
    max-height: 159px;
    margin-inline: 0;
    scroll-snap-align: unset;
  }

  body.page-standardization #classifiers .std-card.std-compact-card {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0;
    min-height: 159px;
    max-height: 159px;
    padding: 25px;
    background: #f5f5f5;
    box-shadow: none;
    border-top: none;
    text-align: left;
  }

  body.page-standardization #classifiers .std-compact-card::before {
    height: 4px;
    background: #ed1a34;
  }

  body.page-standardization #classifiers .std-compact-card__icon {
    flex: 0 0 auto;
    width: auto;
    max-width: 104px;
  }

  body.page-standardization #classifiers .std-compact-card__icon img {
    width: auto;
    height: auto;
    object-fit: contain;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(1) .std-compact-card__icon {
    width: 104px;
    height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(1) .std-compact-card__icon img {
    width: 67px;
    height: 90px;
    max-width: 67px;
    max-height: 90px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(2) .std-compact-card__icon {
    width: 104px;
    height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(2) .std-compact-card__icon img {
    width: 62px;
    height: 90px;
    max-width: 62px;
    max-height: 90px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(3) .std-compact-card__icon {
    width: 104px;
    height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(3) .std-compact-card__icon img {
    width: 104px;
    height: 104px;
    max-width: 104px;
    max-height: 104px;
  }

  body.page-standardization #classifiers .std-compact-card__body {
    flex: 0 0 200px;
    width: 200px;
    max-width: 200px;
    align-items: flex-start;
    gap: 0;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__title {
    width: 200px;
    max-width: 200px;
    margin: 0;
    font-family: var(--font);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: #020203;
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(1) .std-card__title {
    max-height: 48px;
    -webkit-line-clamp: 2;
  }

  body.page-standardization #classifiers .std-compact-card:nth-child(2) .std-card__title,
  body.page-standardization #classifiers .std-compact-card:nth-child(3) .std-card__title {
    max-height: 72px;
    -webkit-line-clamp: 3;
  }

  body.page-standardization #classifiers .std-compact-card .std-card__text {
    display: none;
  }
}

/* Figma 5_2_Стандартизация_1440 #science-teaser (13189:47547–47554): pt 52px белый, title 28/1, Fira 16/1.3 */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-standardization .section--std-compliance {
    padding-bottom: 0;
  }

  body.page-standardization .section--std-science {
    margin-top: 0;
    padding-top: 52px;
    padding-bottom: 56px;
    background: #fff;
  }

  body.page-standardization #science-teaser > .container {
    padding-left: 120px;
    padding-right: 120px;
    box-sizing: border-box;
  }

  body.page-standardization #science-teaser .std-promo--science {
    width: min(100%, 1200px);
    max-width: 1200px;
    margin-inline: auto;
    grid-template-columns: minmax(0, 741px) 441px;
    justify-content: space-between;
    gap: 17px;
    align-items: flex-start;
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__copy .std-section-title {
    margin: 0 0 35px;
    font-family: var(--font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1;
    color: #121617;
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__copy p {
    max-width: 741px;
    margin: 0 0 35px;
    font-family: "Fira Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #121617;
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__media {
    width: 441px;
    flex: 0 0 441px;
    height: 266px;
    overflow: hidden;
    align-self: flex-start;
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__media img {
    display: block;
    width: 134.04%;
    max-width: none;
    height: 266px;
    margin: -16px 0 0 -15.89%;
    object-fit: cover;
    object-position: left top;
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__actions {
    flex-wrap: nowrap;
    gap: 20px;
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__actions .btn--primary {
    min-width: 165px;
    min-height: 47px;
    padding: 12px 24px;
    border-radius: var(--btn-radius);
  }

  body.page-standardization #science-teaser .std-promo--science .std-promo__actions .btn--ghost.btn--on-light {
    min-width: 182px;
    min-height: 47px;
    padding: 12px 24px;
    border-radius: var(--btn-radius);
  }
}

/* Figma 13020:15815 — Научно-практические семинары (1440) */
body.page-education-dpo-metrology .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars,
body.page-education-dpo-quality .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars,
body.page-education-dpo-apply .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars,
body.page-education-dpo-regulation .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars {
  position: relative;
  width: 100vw;
  max-width: none;
  margin: 0 calc(50% - 50vw) 60px;
  overflow: hidden;
  aspect-ratio: 1440 / 534;
}
body.page-education-dpo-metrology .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars img,
body.page-education-dpo-quality .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars img,
body.page-education-dpo-apply .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars img,
body.page-education-dpo-regulation .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
body.page-education-dpo-metrology .section--subpage-l3 .subpage-l3__body > .l3-link-list,
body.page-education-dpo-quality .section--subpage-l3 .subpage-l3__body > .l3-link-list,
body.page-education-dpo-apply .section--subpage-l3 .subpage-l3__body > .l3-link-list,
body.page-education-dpo-regulation .section--subpage-l3 .subpage-l3__body > .l3-link-list {
  margin: 0;
  max-width: 1200px;
}
body.page-education-dpo-metrology .section--subpage-l3 .subpage-l3__body > .l3-link-list .l3-link-list__num,
body.page-education-dpo-quality .section--subpage-l3 .subpage-l3__body > .l3-link-list .l3-link-list__num,
body.page-education-dpo-apply .section--subpage-l3 .subpage-l3__body > .l3-link-list .l3-link-list__num,
body.page-education-dpo-regulation .section--subpage-l3 .subpage-l3__body > .l3-link-list .l3-link-list__num,
body.page-education-dpo-metrology .section--subpage-l3 .subpage-l3__body > .l3-link-list .l3-link-list__label,
body.page-education-dpo-quality .section--subpage-l3 .subpage-l3__body > .l3-link-list .l3-link-list__label,
body.page-education-dpo-apply .section--subpage-l3 .subpage-l3__body > .l3-link-list .l3-link-list__label,
body.page-education-dpo-regulation .section--subpage-l3 .subpage-l3__body > .l3-link-list .l3-link-list__label {
  font-family: var(--font-display, Montserrat, sans-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
}
@media (min-width: 1900px) {
  body.page-education-dpo-metrology .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars img,
  body.page-education-dpo-quality .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars img,
  body.page-education-dpo-apply .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars img,
  body.page-education-dpo-regulation .section--subpage-l3 .subpage-l3__body .l3-figure--banner-dpo-seminars img {
    aspect-ratio: 1920 / 534;
    height: auto;
    object-fit: cover;
  }
}

/* Figma 13020:16342 — Обучение / Онлайн-встречи СТО и ТУ (1440) */
body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3,
body.page-education-dpo-standardization .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3,
body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3,
body.page-education-dpo-standardization .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3,
body.page-education-dpo-standardization .section--subpage-l3 > .container.subpage-l3,
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3 {
  max-width: none;
  margin-inline: 0;
  width: 100%;
  padding-left: max(24px, calc((100vw - 1200px) / 2));
  padding-right: max(24px, calc((100vw - 1200px) / 2));
}
body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip {
  min-height: 135px;
  padding: 30px 0 40px;
  box-sizing: border-box;
}
body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip .hero__title {
  font-family: var(--font);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  max-width: 846px;
  color: #020203;
}
body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip .breadcrumbs {
  margin-top: 10px;
  font-family: var(--font-body-figma);
  font-size: 14px;
  line-height: normal;
  color: #686a73;
}
body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip .breadcrumbs a {
  color: #686a73;
  text-decoration: underline;
  text-underline-position: from-font;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-figure--banner-sto-tu {
  position: relative;
  width: 100vw;
  max-width: none;
  margin: 0 calc(50% - 50vw) 60px;
  overflow: hidden;
  aspect-ratio: 1440 / 534;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-figure--banner-sto-tu img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* Figma 13020:16343 — img h 180.27%, top -45.88% */
  object-position: center 53%;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-sto-tu-intro {
  margin: 0 0 106px;
  font-family: var(--font);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.3;
  color: #020203;
  max-width: 1143px;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body h2.l3-block-title--24 {
  margin: 0 0 35px;
  font-family: var(--font);
  font-size: 24px;
  font-weight: 600;
  line-height: 1.35;
  color: #020203;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-sto-tu-list {
  margin: 0 0 60px;
  padding-left: 24px;
  max-width: 1200px;
  list-style: disc;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-sto-tu-list li {
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-sto-tu-list li + li {
  margin-top: 15px;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-sto-tu-contact p {
  font-family: var(--font-body-figma);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  color: #020203;
  max-width: 1200px;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-sto-tu-contact p + p {
  margin-top: 15px;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-sto-tu-contact strong {
  font-weight: 500;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-sto-tu-contact a {
  color: #0088cc;
  text-decoration: none;
}
body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-sto-tu-contact a:hover {
  text-decoration: underline;
}
@media (min-width: 1248px) {
  body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip .hero__title {
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
  }
  body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip .breadcrumbs {
    font-size: 14px;
    line-height: normal;
  }
}
@media (min-width: 1900px) {
  body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip > .container,
  body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3,
  body.page-education-dpo-standardization .hero.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 > .container.subpage-l3,
  body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip + .section--subpage.section--subpage-l3 .subpage-l3,
  body.page-education-dpo-standardization .section--subpage-l3 > .container.subpage-l3,
  body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3 {
    max-width: none;
    margin-inline: 0;
    width: 100%;
    padding-left: 120px;
    padding-right: 120px;
  }
  body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip .hero__title {
    font-size: 28px;
    font-weight: 600;
    line-height: 1.35;
    max-width: 846px;
  }
  body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-figure--banner-sto-tu {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
  body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-figure--banner-sto-tu img {
    height: 100%;
  }
}
@media (max-width: 767px) {
  body.page-education-dpo-standardization .section--subpage-l3 .subpage-l3__body .l3-figure--banner-sto-tu {
    width: calc(100% + 2 * var(--gutter));
    margin-left: calc(-1 * var(--gutter));
    margin-right: calc(-1 * var(--gutter));
    margin-bottom: 32px;
    aspect-ratio: 1440 / 534;
  }
  body.page-education-dpo-standardization .hero.hero--education.hero--subpage.hero--strip .hero__title {
    font-size: clamp(22px, 5.5vw, 28px);
  }
}

/* ===== Feedback modal + footer/about tweaks (пакет 2) ===== */
.about-structure__extra {
  margin-top: 24px;
  text-align: center;
}
.section--about-docs .about-docs__footer {
  gap: 12px;
  flex-wrap: wrap;
}
.footer__email--secondary {
  display: block;
  margin-top: 4px;
  font-size: 0.92em;
  opacity: 0.85;
}
/* Fix padding on testing page for mobile/tablet */
@media (max-width: 1279px) {
  body.page-certification #tests > .container {
    padding-inline: var(--gutter, 16px) !important;
  }
}

/* --- Home stability overrides (predprod, desktop-wide) --- */
/* Hero cards: fixed title band keeps .tile__desc on one baseline across the row. */
@media (min-width: 800px) {
  body.page-home .hero--home .tile--hero > [id^="bx_"] {
    display: contents;
  }

  body.page-home .hero--home .tile--hero .tile__body {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }

  body.page-home .hero--home .tile--hero .tile__title {
    --hero-tile-title-h: calc(2.4em);
    flex: 0 0 var(--hero-tile-title-h) !important;
    min-height: var(--hero-tile-title-h) !important;
    max-height: var(--hero-tile-title-h) !important;
    height: var(--hero-tile-title-h) !important;
    line-height: 1.2 !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    overflow: hidden !important;
    margin: 0 !important;
    text-overflow: ellipsis;
    overflow-wrap: break-word;
  }

  body.page-home .hero--home .tile--hero .tile__title-line {
    line-height: 1.2 !important;
  }

  body.page-home .hero--home .tile--hero .tile__desc {
    flex: 0 0 89px !important;
    min-height: 89px !important;
    height: 89px !important;
    max-height: 89px !important;
    margin-top: 0 !important;
  }
}

/* Product showcase: avoid narrow 1232px clamp on very wide screens. */
@media (min-width: 1900px) {
  body.page-home .product-showcase .split-row--product {
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 64px !important;
    justify-content: space-between !important;
  }
  body.page-home .product-showcase .split-row--product .split-row__copy,
  body.page-home .product-showcase .split-row--product .split-row__art {
    max-width: none !important;
  }
}

/* Final home-page normalization: keep product showcase fluid on wide screens.
   This block must stay at file end because earlier media blocks redefine the same selectors. */
@media (min-width: 1440px) {
  body.page-home .section--home-product > .container {
    max-width: none !important;
  }
  body.page-home .product-showcase__body,
  body.page-home .product-showcase__main,
  body.page-home .product-showcase .split-row--product {
    width: 100% !important;
    max-width: none !important;
  }
}

@media (min-width: 1900px) {
  body.page-home .section--home-product > .container {
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.page-home .product-showcase .split-row--product {
    display: grid !important;
    grid-template-columns: minmax(0, 523px) minmax(0, 602px) !important;
    gap: 107px !important;
    width: min(1480px, 100%) !important;
    max-width: 100% !important;
    margin-inline: auto !important;
    align-items: start !important;
  }
  body.page-home .product-showcase .split-row--product .split-row__copy {
    max-width: 523px !important;
  }
  body.page-home .product-showcase .split-row--product .split-row__art {
    width: auto !important;
    max-width: 602px !important;
    justify-self: end !important;
  }
}

/* Figma alignment fix: #sto cards on tablet/small desktop should keep
   balanced icon/label proportions and vertical centering. */
@media (min-width: 1024px) and (max-width: 1279px) {
  body.page-standardization #dev .std-dev-grid {
    grid-template-columns: repeat(2, minmax(0, 275px));
    justify-content: center;
  }
}

@media (min-width: 880px) and (max-width: 1279px) {
  body.page-standardization .std-sto-grid .std-compact-card {
    align-items: center !important;
    padding: 25px !important;
  }
  body.page-standardization .std-sto-grid .std-sto-card:nth-child(2) .std-compact-card__icon img {
    width: 109px !important;
    height: 109px !important;
    max-width: 109px !important;
    max-height: 109px !important;
  }
  body.page-standardization .std-sto-grid .std-compact-card__label {
    line-height: 1.2 !important;
    align-self: center !important;
  }
}

@media (min-width: 600px) and (max-width: 879px) {
  body.page-standardization #sto {
    overflow-x: clip;
  }

  body.page-standardization #sto > .container {
    overflow-x: clip;
  }

  body.page-standardization .std-sto-grid .std-sto-card:nth-child(2) .std-compact-card__icon img {
    width: 98px !important;
    height: 98px !important;
    max-width: 98px !important;
    max-height: 98px !important;
  }

  body.page-standardization .std-sto-grid .std-compact-card__label {
    line-height: 1.25 !important;
    align-self: center !important;
    white-space: normal !important;
    word-break: normal !important;
  }
}

/* Home hero 1440: keep lead text clear from card row. */
@media (min-width: 1440px) and (max-width: 1899px) {
  body.page-home .hero--home .hero__copy {
    max-width: 652px !important;
  }
  body.page-home .hero--home .hero__title {
    display: block !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    max-height: none !important;
    height: auto !important;
    margin-bottom: 33px !important;
  }
  body.page-home .hero--home .hero__title .hero__title-rest {
    display: inline !important;
    overflow: visible !important;
  }
  body.page-home .hero--home .hero__lead,
  body.page-home .hero--home .hero__lead.hero__lead--figma {
    max-width: 560px !important;
    line-height: 1.45 !important;
    max-height: none !important;
    overflow: visible !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
  }
  body.page-home .hero--home .hero__inner {
    margin-bottom: 28px !important;
    align-items: start !important;
  }
  body.page-home .hero--home .hero__tiles {
    margin-top: 120px !important;
  }
}

/* Final a11y overrides: keep after page-specific styles. */
html body.a11y.a11y-no-images,
html body.a11y.a11y-no-images *,
html body.a11y.a11y-no-images *::before,
html body.a11y.a11y-no-images *::after {
  background-image: none !important;
  background: none !important;
}
html body.a11y.a11y-no-images img:not(.no-a11y),
html body.a11y.a11y-no-images svg:not(.no-a11y),
html body.a11y.a11y-no-images video:not(.no-a11y),
html body.a11y.a11y-no-images canvas:not(.no-a11y) {
  visibility: hidden !important;
}
html body.a11y.a11y-no-images .hero::before,
html body.a11y.a11y-no-images .hero::after,
html body.a11y.a11y-no-images .page-header::before,
html body.a11y.a11y-no-images .page-header::after,
html body.a11y.a11y-no-images [class*="hero"]::before,
html body.a11y.a11y-no-images [class*="hero"]::after {
  background: none !important;
  background-image: none !important;
}
html body.a11y.a11y-fs-lg {
  zoom: 1.12;
}
html body.a11y.a11y-fs-xl {
  zoom: 1.24;
}

/* /standardization/ + header @1024–1279: бургер off, сетки 2 колонки, СТО без вертикального текста */
@media (min-width: 1024px) {
  .header__mobile-toggle-wrap,
  .header__mobile-toggle-wrap .mobile-toggle,
  #mobile-toggle.mobile-toggle {
    display: none !important;
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  body.page-standardization #dev .std-dev-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 275px)) !important;
    justify-content: center !important;
    gap: 33px 25px !important;
  }

  body.page-standardization #sto .std-sto-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: min(100%, 789px) !important;
    margin-inline: auto !important;
  }

  body.page-standardization #sto .std-sto-grid .std-compact-card {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 16px !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 159px !important;
    max-height: none !important;
    padding: 20px !important;
    overflow: hidden !important;
  }

  body.page-standardization #sto .std-sto-grid .std-compact-card__icon {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 98px !important;
  }

  body.page-standardization #sto .std-sto-grid .std-sto-card:nth-child(1) .std-compact-card__icon img,
  body.page-standardization #sto .std-sto-grid .std-sto-card:nth-child(2) .std-compact-card__icon img {
    width: 98px !important;
    height: 98px !important;
    max-width: 98px !important;
    max-height: 98px !important;
  }

  body.page-standardization #sto .std-sto-grid .std-compact-card__label {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    width: auto !important;
    font-size: clamp(16px, 1.6vw, 20px) !important;
    line-height: 1.25 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }
}

/* Figma 1_1_Шаблон_1900 — «Руководство»: финальный перебив (после поздних L3-правил) */
@media (min-width: 1900px) {
  body.page-about-team .about-leadership,
  body.page-about-structure .about-leadership {
    max-width: none !important;
    width: 100% !important;
  }

  body.page-about-team .section--subpage-l3 .subpage-l3__body:has(.about-leadership),
  body.page-about-structure .section--subpage-l3 .subpage-l3__body:has(.about-leadership) {
    max-width: 1680px !important;
    width: 100% !important;
  }

  body.page-about-team .about-leadership__carousel .h-slider__track > .about-leader-card,
  body.page-about-structure .about-leadership__carousel .h-slider__track > .about-leader-card {
    flex: 0 0 275px !important;
    max-width: none !important;
  }
}
