/*
 * ETS v2 — Экспертно-технологический совет РАВВ
 * Self-contained stylesheet for the ETS v2 templates ("ETS v2 — *").
 * Not loaded by any other raww.ru template; every class is prefixed .ets-v2-*.
 * Tokens follow the RAWW palette (#278BC0) and the Академия РАВВ design system
 * (ink #173851, sky surfaces, cold shadows, 3px focus ring).
 */

@font-face { font-family: "ETS Avenir"; src: local("Avenir Next Cyr"), url("/assets/fonts/avenirnextcyr-regular.woff2") format("woff2"), url("/assets/fonts/avenirnextcyr-regular.woff") format("woff"); font-weight: 400; font-display: swap; }
@font-face { font-family: "ETS Avenir"; src: local("Avenir Next Cyr Medium"), url("/assets/fonts/avenirnextcyr-medium.woff2") format("woff2"), url("/assets/fonts/avenirnextcyr-medium.woff") format("woff"); font-weight: 500; font-display: swap; }
@font-face { font-family: "ETS Avenir"; src: local("Avenir Next Cyr Bold"), url("/assets/fonts/avenirnextcyr-bold.woff2") format("woff2"), url("/assets/fonts/avenirnextcyr-bold.woff") format("woff"); font-weight: 700; font-display: swap; }

.ets-v2 {
  --ets-blue: #278bc0;          /* RAWW brand blue: accents, bars, focus */
  --ets-blue-ink: #1c6f9c;      /* text-safe blue (5.5:1 on white) */
  --ets-blue-deep: #175d84;
  --ets-navy: #173851;          /* headings */
  --ets-navy-900: #011b35;      /* footer, topbar */
  --ets-text: #2b3b4c;
  --ets-muted: #587189;
  --ets-line: #d7e5f0;
  --ets-line-strong: #a9cce5;
  --ets-surface: #ffffff;
  --ets-surface-alt: #f4f8fb;
  --ets-sky: #eaf4fb;
  --ets-shadow-card: 0 10px 26px rgba(23, 56, 81, .08);
  --ets-shadow-hover: 0 14px 30px rgba(23, 56, 81, .14);
  --ets-radius: 8px;
  --ets-radius-lg: 12px;
  --ets-ease: cubic-bezier(.2, 0, 0, 1);
  --ets-font: "ETS Avenir", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
  --ets-gutter: 20px;
  --ets-header-h: 72px;

  margin: 0;
  background: var(--ets-surface);
  color: var(--ets-text);
  font-family: var(--ets-font);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}
@media (min-width: 768px) { .ets-v2 { --ets-gutter: 32px; --ets-header-h: 84px; } }

.ets-v2 *, .ets-v2 *::before, .ets-v2 *::after { box-sizing: border-box; }
.ets-v2 img { max-width: 100%; height: auto; }
.ets-v2 a { color: var(--ets-blue-ink); text-underline-offset: 4px; text-decoration-thickness: 1px; }
.ets-v2 a:hover { color: var(--ets-blue-deep); }
.ets-v2 :focus-visible { outline: 3px solid var(--ets-blue); outline-offset: 3px; border-radius: 2px; }
.ets-v2 h1, .ets-v2 h2, .ets-v2 h3, .ets-v2 h4 { color: var(--ets-navy); font-weight: 700; line-height: 1.2; margin: 0; letter-spacing: -.01em; }

.ets-v2-container { width: 100%; max-width: calc(1200px + 2 * var(--ets-gutter)); margin: 0 auto; padding: 0 var(--ets-gutter); }
.ets-v2-container--narrow { max-width: calc(820px + 2 * var(--ets-gutter)); }
.ets-v2-visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

.ets-v2-skip { position: absolute; left: 12px; top: -60px; z-index: 100; padding: 10px 16px; background: var(--ets-navy-900); color: #fff !important; border-radius: var(--ets-radius); font-weight: 500; text-decoration: none; }
.ets-v2-skip:focus { top: 12px; }

/* ---------- Top bar: link back to RAWW ---------- */
.ets-v2-topbar { background: var(--ets-navy-900); color: #c9d8e6; font-size: 13px; line-height: 1.4; }
.ets-v2-topbar__inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 40px; }
.ets-v2-topbar__org { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.ets-v2-topbar__org-short { display: none; }
.ets-v2 .ets-v2-topbar__link { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; color: #fff; text-decoration: none; font-weight: 500; white-space: nowrap; }
.ets-v2 .ets-v2-topbar__link:hover { color: #7cc4ea; }
.ets-v2-topbar__mark { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--ets-blue); }
@media (max-width: 479px) {
  .ets-v2-topbar__org-full { display: none; }
  .ets-v2-topbar__org-short { display: inline; }
}

/* ---------- Header ---------- */
.ets-v2-header { position: sticky; top: 0; z-index: 50; background: rgba(255, 255, 255, .97); border-bottom: 1px solid var(--ets-line); }
.ets-v2-header__inner { display: flex; align-items: center; gap: 24px; min-height: var(--ets-header-h); }
.ets-v2-brand { display: inline-flex; align-items: center; flex: 0 0 auto; margin-right: auto; padding: 6px 0; }
.ets-v2-brand img { display: block; width: auto; height: 38px; }
@media (min-width: 768px) { .ets-v2-brand img { height: 46px; } }

.ets-v2-burger { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 14px; margin-right: -6px; border: 1px solid var(--ets-line); border-radius: var(--ets-radius); background: #fff; color: var(--ets-navy); font: 500 15px/1 var(--ets-font); cursor: pointer; }
.ets-v2-burger:hover { border-color: var(--ets-line-strong); }
.ets-v2-burger__icon { position: relative; width: 18px; height: 12px; }
.ets-v2-burger__icon::before, .ets-v2-burger__icon::after, .ets-v2-burger__icon span { content: ""; position: absolute; left: 0; width: 18px; height: 2px; border-radius: 2px; background: currentColor; transition: transform .16s var(--ets-ease), opacity .16s var(--ets-ease); }
.ets-v2-burger__icon::before { top: 0; }
.ets-v2-burger__icon span { top: 5px; }
.ets-v2-burger__icon::after { top: 10px; }
.ets-v2-header.is-open .ets-v2-burger__icon::before { transform: translateY(5px) rotate(45deg); }
.ets-v2-header.is-open .ets-v2-burger__icon span { opacity: 0; }
.ets-v2-header.is-open .ets-v2-burger__icon::after { transform: translateY(-5px) rotate(-45deg); }

.ets-v2-nav__list { list-style: none; margin: 0; padding: 0; }
.ets-v2 .ets-v2-nav__link { display: flex; align-items: center; color: var(--ets-navy); font-weight: 500; text-decoration: none; }
.ets-v2 .ets-v2-nav__link:hover { color: var(--ets-blue-ink); }
.ets-v2 .ets-v2-nav__link[aria-current="page"], .ets-v2 .ets-v2-nav__link.is-active { color: var(--ets-blue-ink); }

/* Mobile / tablet drawer (< 1296px, same switch point as raww.ru header) */
@media (max-width: 1295px) {
  .ets-v2-nav { position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-bottom: 1px solid var(--ets-line); box-shadow: 0 18px 30px rgba(23, 56, 81, .12); max-height: calc(100vh - var(--ets-header-h)); max-height: calc(100dvh - var(--ets-header-h)); overflow-y: auto; overscroll-behavior: contain; }
  .ets-v2-js .ets-v2-nav { display: none; }
  .ets-v2-js .ets-v2-header.is-open .ets-v2-nav { display: block; }
  .ets-v2-nav__list { max-width: calc(1200px + 2 * var(--ets-gutter)); margin: 0 auto; padding: 8px var(--ets-gutter) 20px; }
  .ets-v2-nav__item + .ets-v2-nav__item { border-top: 1px solid var(--ets-line); }
  .ets-v2 .ets-v2-nav__link { min-height: 52px; font-size: 17px; }
  .ets-v2 .ets-v2-nav__link[aria-current="page"]::before, .ets-v2 .ets-v2-nav__link.is-active::before { content: ""; width: 4px; height: 20px; margin-right: 12px; border-radius: 2px; background: var(--ets-blue); }
  html:not(.ets-v2-js) .ets-v2-nav { position: static; box-shadow: none; border: 0; }
  html:not(.ets-v2-js) .ets-v2-header__inner { flex-wrap: wrap; }
  html:not(.ets-v2-js) .ets-v2-burger { display: none; }
}
@media (min-width: 1296px) {
  .ets-v2-burger { display: none; }
  .ets-v2-nav__list { display: flex; align-items: center; gap: 4px; }
  .ets-v2 .ets-v2-nav__link { position: relative; min-height: var(--ets-header-h); padding: 0 12px; font-size: 15px; white-space: nowrap; }
  .ets-v2 .ets-v2-nav__link::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: -1px; height: 3px; border-radius: 3px 3px 0 0; background: var(--ets-blue); transform: scaleX(0); transition: transform .16s var(--ets-ease); }
  .ets-v2 .ets-v2-nav__link:hover::after, .ets-v2 .ets-v2-nav__link[aria-current="page"]::after, .ets-v2 .ets-v2-nav__link.is-active::after { transform: scaleX(1); }
}

/* ---------- Buttons, eyebrows, section scaffolding ---------- */
.ets-v2 .ets-v2-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 0 22px; border: 1px solid transparent; border-radius: var(--ets-radius); font: 500 16px/1.2 var(--ets-font); text-decoration: none; transition: background-color .16s var(--ets-ease), border-color .16s var(--ets-ease), color .16s var(--ets-ease), transform .16s var(--ets-ease); }
.ets-v2 .ets-v2-btn:active { transform: translateY(1px); }
.ets-v2 .ets-v2-btn--primary { background: var(--ets-blue-ink); color: #fff; }
.ets-v2 .ets-v2-btn--primary:hover { background: var(--ets-blue-deep); color: #fff; }
.ets-v2 .ets-v2-btn--ghost { background: #fff; border-color: var(--ets-line-strong); color: var(--ets-navy); }
.ets-v2 .ets-v2-btn--ghost:hover { border-color: var(--ets-blue); color: var(--ets-blue-ink); }
.ets-v2-arrow { display: inline-block; transition: transform .16s var(--ets-ease); }
.ets-v2 a:hover .ets-v2-arrow { transform: translateX(4px); }

.ets-v2-eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 16px; color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .1em; line-height: 1.4; text-transform: uppercase; }
.ets-v2-eyebrow::before { content: ""; flex: 0 0 28px; height: 2px; background: var(--ets-blue); }

.ets-v2-section { padding: 56px 0; }
.ets-v2-section--alt { background: var(--ets-surface-alt); border-top: 1px solid var(--ets-line); border-bottom: 1px solid var(--ets-line); }
@media (min-width: 1024px) { .ets-v2-section { padding: 88px 0; } }
.ets-v2-section__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 32px; margin-bottom: 32px; }
.ets-v2-section__title { font-size: 28px; }
@media (min-width: 768px) { .ets-v2-section__title { font-size: 36px; } }
.ets-v2-section__intro { max-width: 640px; margin: 12px 0 0; color: var(--ets-muted); font-size: 17px; }
.ets-v2 .ets-v2-more { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-weight: 500; text-decoration: none; }

/* ---------- Hero ---------- */
.ets-v2-hero { position: relative; padding: 40px 0 56px; background: linear-gradient(180deg, var(--ets-sky) 0%, #fff 100%); overflow: hidden; }
@media (min-width: 1024px) { .ets-v2-hero { padding: 72px 0 96px; } }
.ets-v2-hero__grid { display: grid; gap: 40px; align-items: center; }
@media (min-width: 1024px) { .ets-v2-hero__grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 64px; } }
.ets-v2-hero__title { font-size: 34px; line-height: 1.12; letter-spacing: -.02em; }
@media (min-width: 480px) { .ets-v2-hero__title { font-size: 40px; } }
@media (min-width: 1296px) { .ets-v2-hero__title { font-size: 54px; } }
.ets-v2-hero__title-accent { color: var(--ets-blue); }
.ets-v2-hero__lead { margin: 20px 0 0; max-width: 560px; color: var(--ets-text); font-size: 18px; line-height: 1.6; }
.ets-v2-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.ets-v2-hero__media { position: relative; margin: 0; }
.ets-v2-hero__media img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: 30% 50%; border-radius: var(--ets-radius-lg); box-shadow: 18px 22px 0 rgba(39, 139, 192, .16); }
@media (max-width: 767px) { .ets-v2-hero__media img { aspect-ratio: 16 / 9; box-shadow: 10px 12px 0 rgba(39, 139, 192, .16); } }
.ets-v2-hero__badge { position: absolute; left: 16px; bottom: 16px; display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; background: rgba(255, 255, 255, .92); color: var(--ets-navy); font-size: 13px; font-weight: 500; }
.ets-v2-hero__badge::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--ets-blue); }

/* ---------- About ---------- */
.ets-v2-about { display: grid; gap: 32px; }
@media (min-width: 1024px) { .ets-v2-about { grid-template-columns: 360px minmax(0, 1fr); gap: 72px; } }
.ets-v2-about__aside .ets-v2-section__title { margin-bottom: 20px; }

/* ---------- Prose (editor content from TinyMCE / legacy HTML) ---------- */
.ets-v2-prose { color: var(--ets-text); font-size: 17px; line-height: 1.7; overflow-wrap: break-word; }
.ets-v2-prose > :first-child { margin-top: 0; }
.ets-v2-prose > :last-child { margin-bottom: 0; }
.ets-v2-prose p, .ets-v2-prose ul, .ets-v2-prose ol, .ets-v2-prose blockquote, .ets-v2-prose figure { margin: 0 0 1.1em; }
.ets-v2-prose h2 { margin: 1.8em 0 .6em; font-size: 26px; }
.ets-v2-prose h3 { margin: 1.6em 0 .5em; font-size: 21px; }
.ets-v2-prose h4 { margin: 1.4em 0 .5em; font-size: 18px; }
.ets-v2-prose ul, .ets-v2-prose ol { padding-left: 1.4em; }
.ets-v2-prose li { margin: .35em 0; }
.ets-v2-prose li::marker { color: var(--ets-blue); }
.ets-v2-prose strong, .ets-v2-prose b { color: var(--ets-navy); font-weight: 700; }
.ets-v2-prose img { height: auto !important; max-width: 100% !important; border-radius: var(--ets-radius); }
.ets-v2-prose blockquote { padding: 4px 0 4px 20px; border-left: 3px solid var(--ets-blue); color: var(--ets-navy); }
.ets-v2-prose hr { margin: 2em 0; border: 0; border-top: 1px solid var(--ets-line); }
/* Legacy tables (fixed 980px widths, inline borders) become scroll boxes instead of overflowing the page */
.ets-v2-prose table { display: block; width: auto !important; max-width: 100%; overflow-x: auto; margin: 0 0 1.4em; border-collapse: collapse; font-size: 15px; line-height: 1.5; -webkit-overflow-scrolling: touch; }
.ets-v2-prose th, .ets-v2-prose td { padding: 10px 12px; border: 1px solid var(--ets-line); vertical-align: top; text-align: left; }
.ets-v2-prose th, .ets-v2-prose thead td { background: var(--ets-sky); color: var(--ets-navy); font-weight: 700; }
.ets-v2-prose td p { margin: 0 0 .4em; }
.ets-v2-prose iframe, .ets-v2-prose video { max-width: 100%; }
.ets-v2-prose--lead { font-size: 18px; }
/* Inner pages: comfortable line length for text, full container width left for legacy tables */
.ets-v2-prose--page > p, .ets-v2-prose--page > ul, .ets-v2-prose--page > ol, .ets-v2-prose--page > h2, .ets-v2-prose--page > h3, .ets-v2-prose--page > h4, .ets-v2-prose--page > blockquote, .ets-v2-page__docs { max-width: 820px; }

/* ---------- Directions (council sections) ---------- */
.ets-v2-directions { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .ets-v2-directions { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .ets-v2-directions { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } }
.ets-v2-direction { display: flex; flex-direction: column; gap: 12px; padding: 24px; background: #fff; border: 1px solid var(--ets-line); border-radius: var(--ets-radius); }
.ets-v2-direction__num { color: var(--ets-blue-ink); font-size: 13px; font-weight: 700; letter-spacing: .08em; font-variant-numeric: tabular-nums; }
.ets-v2-direction__title { font-size: 18px; line-height: 1.35; }
.ets-v2-direction__lead { margin: auto 0 0; padding-top: 12px; border-top: 1px solid var(--ets-line); color: var(--ets-muted); font-size: 14px; line-height: 1.5; }

/* ---------- News cards ---------- */
.ets-v2-news-grid { display: grid; gap: 20px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .ets-v2-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .ets-v2-news-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; } }
.ets-v2-card { position: relative; display: flex; flex-direction: column; height: 100%; background: #fff; border: 1px solid var(--ets-line); border-radius: var(--ets-radius); box-shadow: var(--ets-shadow-card); overflow: hidden; transition: transform .16s var(--ets-ease), box-shadow .16s var(--ets-ease), border-color .16s var(--ets-ease); }
.ets-v2-card:hover { transform: translateY(-2px); box-shadow: var(--ets-shadow-hover); border-color: var(--ets-line-strong); }
.ets-v2-card:focus-within { border-color: var(--ets-blue); }
.ets-v2-card__media { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--ets-sky); }
.ets-v2 .ets-v2-card__media img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
/* Branded placeholder for news without a picture: light field, technical grid, publication year. */
.ets-v2-card__media--empty { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; padding: 16px 20px; background-color: #e6f1f9; background-image: linear-gradient(rgba(39, 139, 192, .10) 1px, transparent 1px), linear-gradient(90deg, rgba(39, 139, 192, .10) 1px, transparent 1px), radial-gradient(110% 90% at 100% 0%, rgba(39, 139, 192, .28) 0%, rgba(39, 139, 192, 0) 60%), linear-gradient(160deg, #f1f7fc 0%, #d4e7f4 100%); background-size: 24px 24px, 24px 24px, auto, auto; }
.ets-v2-card__media--empty::before { content: ""; position: absolute; left: 20px; top: 16px; width: 28px; height: 3px; border-radius: 2px; background: var(--ets-blue); }
.ets-v2-ph__mark { color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .12em; line-height: 1.35; text-transform: uppercase; }
.ets-v2-ph__year { color: var(--ets-navy); opacity: .85; font-size: 44px; font-weight: 700; letter-spacing: -.03em; line-height: .9; font-variant-numeric: tabular-nums; }
.ets-v2-card__body { display: flex; flex-direction: column; flex: 1 1 auto; gap: 10px; padding: 20px 22px 24px; }
.ets-v2-card__date { color: var(--ets-muted); font-size: 14px; font-weight: 500; }
.ets-v2-card__title { font-size: 19px; line-height: 1.35; }
.ets-v2 .ets-v2-card__link { color: var(--ets-navy); text-decoration: none; }
.ets-v2 .ets-v2-card__link::after { content: ""; position: absolute; inset: 0; }
.ets-v2 .ets-v2-card__link:hover { color: var(--ets-blue-ink); }
.ets-v2 .ets-v2-card__link:focus-visible { outline: 0; }
.ets-v2 .ets-v2-card__link:focus-visible::after { outline: 3px solid var(--ets-blue); outline-offset: -3px; border-radius: var(--ets-radius); }
.ets-v2-card__lead { margin: 0; color: var(--ets-muted); font-size: 15px; line-height: 1.55; }

.ets-v2-empty { padding: 32px; border: 1px dashed var(--ets-line-strong); border-radius: var(--ets-radius); color: var(--ets-muted); text-align: center; }

/* ---------- Plan + documents ---------- */
.ets-v2-split { display: grid; gap: 40px; }
@media (min-width: 1024px) { .ets-v2-split { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px; } }
.ets-v2-split .ets-v2-section__title { font-size: 26px; }
@media (min-width: 768px) { .ets-v2-split .ets-v2-section__title { font-size: 30px; } }
.ets-v2-docs { margin: 24px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--ets-line); }
.ets-v2-doc { position: relative; display: flex; align-items: center; gap: 16px; padding: 16px 4px; border-bottom: 1px solid var(--ets-line); }
.ets-v2-doc__type { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; min-width: 48px; height: 28px; padding: 0 8px; border-radius: 999px; background: var(--ets-sky); color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.ets-v2 .ets-v2-doc__link { flex: 1 1 auto; color: var(--ets-navy); font-weight: 500; text-decoration: none; }
.ets-v2 .ets-v2-doc__link::after { content: ""; position: absolute; inset: 0; }
.ets-v2 .ets-v2-doc__link:hover { color: var(--ets-blue-ink); }
.ets-v2-doc__arrow { flex: 0 0 auto; color: var(--ets-blue-ink); }
.ets-v2-doc:hover { background: var(--ets-surface-alt); }
.ets-v2-plan-card { margin-top: 24px; padding: 24px; border-radius: var(--ets-radius); background: var(--ets-navy-900); color: #c9d8e6; }
.ets-v2-plan-card h3 { color: #fff; font-size: 20px; }
.ets-v2-plan-card p { margin: 10px 0 20px; }
.ets-v2 .ets-v2-plan-card .ets-v2-btn--ghost { background: transparent; border-color: rgba(255, 255, 255, .35); color: #fff; }
.ets-v2 .ets-v2-plan-card .ets-v2-btn--ghost:hover { border-color: #7cc4ea; color: #7cc4ea; }

/* ---------- Partner ---------- */
.ets-v2-partner { display: grid; gap: 24px; align-items: center; padding: 28px; border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); background: #fff; }
@media (min-width: 768px) { .ets-v2-partner { grid-template-columns: 240px minmax(0, 1fr) auto; gap: 40px; padding: 32px 40px; } }
.ets-v2-partner__logo img { display: block; width: 200px; height: auto; }
.ets-v2-partner__label { margin: 0 0 6px; color: var(--ets-muted); font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.ets-v2-partner__text { margin: 0; color: var(--ets-navy); font-size: 17px; }

/* ---------- Inner pages ---------- */
.ets-v2-pagehead { padding: 28px 0 36px; background: linear-gradient(180deg, var(--ets-sky) 0%, var(--ets-surface-alt) 100%); border-bottom: 1px solid var(--ets-line); }
@media (min-width: 1024px) { .ets-v2-pagehead { padding: 40px 0 56px; } }
.ets-v2-crumbs { margin: 0 0 20px; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 4px 0; font-size: 14px; color: var(--ets-muted); }
.ets-v2-crumbs li { display: inline-flex; align-items: center; }
.ets-v2-crumbs li + li::before { content: "/"; margin: 0 10px; color: var(--ets-line-strong); }
.ets-v2 .ets-v2-crumbs a { display: inline-flex; align-items: center; min-height: 32px; color: var(--ets-muted); text-decoration: none; }
.ets-v2 .ets-v2-crumbs a:hover { color: var(--ets-blue-ink); text-decoration: underline; }
.ets-v2-pagehead__title { font-size: 32px; line-height: 1.15; letter-spacing: -.015em; max-width: 900px; overflow-wrap: break-word; -webkit-hyphens: auto; hyphens: auto; }
@media (max-width: 479px) { .ets-v2-pagehead__title { font-size: 28px; } }
@media (min-width: 768px) { .ets-v2-pagehead__title { font-size: 44px; } }
.ets-v2-pagehead__lead { margin: 16px 0 0; max-width: 720px; color: var(--ets-text); font-size: 18px; }
.ets-v2-page { padding: 40px 0 72px; }
@media (min-width: 1024px) { .ets-v2-page { padding: 56px 0 96px; } }
.ets-v2-page__docs { margin-top: 40px; }
.ets-v2-page__docs:empty { display: none; }
.ets-v2-page__docs h2 { font-size: 22px; }

/* ---------- News detail ---------- */
.ets-v2-article__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin: 0 0 16px; color: var(--ets-muted); font-size: 15px; font-weight: 500; }
.ets-v2-tag { display: inline-flex; align-items: center; height: 26px; padding: 0 10px; border-radius: 999px; background: #fff; border: 1px solid var(--ets-line); color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.ets-v2-article__foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--ets-line); }

/* ---------- News archive: filters (ETS-V2-02) ---------- */
.ets-v2-filters { display: grid; gap: 16px; margin: 0 0 24px; padding: 20px; background: var(--ets-surface-alt); border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); }
@media (min-width: 768px) { .ets-v2-filters { padding: 24px 28px; } }
.ets-v2-filters__row { display: grid; gap: 16px; align-items: end; }
@media (min-width: 768px) {
  .ets-v2-filters__row { grid-template-columns: minmax(0, 1fr) 220px; }
  .ets-v2-filters__row--secondary { grid-template-columns: 220px auto 1fr; }
}
.ets-v2-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; margin: 0; padding: 0; border: 0; }
.ets-v2-field label, .ets-v2-field legend { padding: 0; color: var(--ets-navy); font-size: 14px; font-weight: 500; }
.ets-v2-field legend { margin-bottom: 6px; }
.ets-v2-field input[type="search"], .ets-v2-field select { width: 100%; min-height: 48px; padding: 0 14px; border: 1px solid var(--ets-line-strong); border-radius: var(--ets-radius); background: #fff; color: var(--ets-text); font: 400 16px/1.3 var(--ets-font); }
.ets-v2-field select { padding-right: 40px; appearance: none; -webkit-appearance: none; background-image: linear-gradient(45deg, transparent 50%, var(--ets-navy) 50%), linear-gradient(135deg, var(--ets-navy) 50%, transparent 50%); background-position: calc(100% - 20px) 21px, calc(100% - 15px) 21px; background-size: 5px 5px; background-repeat: no-repeat; cursor: pointer; }
.ets-v2-field input[type="search"]::placeholder { color: #7a8ea2; }
.ets-v2-field input:hover, .ets-v2-field select:hover { border-color: var(--ets-blue); }
.ets-v2-seg__items { display: inline-flex; border: 1px solid var(--ets-line-strong); border-radius: var(--ets-radius); background: #fff; overflow: hidden; }
.ets-v2-seg__item { position: relative; display: block; }
.ets-v2-seg__item + .ets-v2-seg__item { border-left: 1px solid var(--ets-line-strong); }
.ets-v2-seg__item input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.ets-v2-seg__item span { display: flex; align-items: center; justify-content: center; min-width: 56px; min-height: 46px; padding: 0 14px; color: var(--ets-navy); font-weight: 500; }
.ets-v2-seg__item input:checked + span { background: var(--ets-blue-ink); color: #fff; }
.ets-v2-seg__item input:focus-visible + span { outline: 3px solid var(--ets-blue); outline-offset: -3px; }
.ets-v2-filters__actions { display: flex; flex-wrap: wrap; gap: 12px; }
@media (min-width: 768px) { .ets-v2-filters__actions { justify-content: flex-end; } }
.ets-v2-archive__count { margin: 0 0 20px; color: var(--ets-navy); font-size: 17px; font-weight: 500; }
.ets-v2-archive__note { color: var(--ets-muted); font-weight: 400; }
.ets-v2-archive__range { margin: 28px 0 0; color: var(--ets-muted); font-size: 15px; text-align: center; }
.ets-v2-empty p { margin: 0 0 16px; color: var(--ets-text); }

/* ---------- Pagination comb (ETS-V2-02) ---------- */
.ets-v2-pager { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 16px; margin: 20px 0 0; }
.ets-v2-pager ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
.ets-v2-pager li { margin: 0; }
.ets-v2 .ets-v2-pager a, .ets-v2-pager li > span { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 10px; border: 1px solid var(--ets-line); border-radius: var(--ets-radius); background: #fff; color: var(--ets-navy); font-weight: 500; text-decoration: none; font-variant-numeric: tabular-nums; }
.ets-v2 .ets-v2-pager a:hover { border-color: var(--ets-blue); color: var(--ets-blue-ink); }
.ets-v2-pager .is-current { background: var(--ets-blue-ink); border-color: var(--ets-blue-ink); color: #fff; }
.ets-v2-pager .is-disabled { color: #b4c6d6; background: var(--ets-surface-alt); }
.ets-v2-pager__gap > span { border-color: transparent !important; background: transparent !important; min-width: 24px !important; padding: 0 !important; }
.ets-v2 .ets-v2-pager__jump a { color: var(--ets-blue-ink); background: var(--ets-surface-alt); }
@media (max-width: 639px) {
  .ets-v2-pager { gap: 8px 12px; }
  .ets-v2-pager__main { order: -1; flex-basis: 100%; }
  .ets-v2-pager .is-far { display: none; }
  .ets-v2-pager ul { gap: 6px; }
  .ets-v2 .ets-v2-pager a, .ets-v2-pager li > span { min-width: 40px; padding: 0 6px; }
}

/* ---------- Migrated photo galleries ---------- */

/* ---------- Footer ---------- */
.ets-v2-footer { background: var(--ets-navy-900); color: #b7c9da; font-size: 15px; }
.ets-v2-footer__grid { display: grid; gap: 36px; padding: 56px 0 40px; }
@media (min-width: 768px) { .ets-v2-footer__grid { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr); gap: 48px; } }
.ets-v2-footer__name { margin: 0 0 12px; color: #fff; font-size: 20px; font-weight: 700; line-height: 1.3; }
.ets-v2-footer__text { margin: 0; max-width: 380px; }
.ets-v2 .ets-v2-footer__title { margin: 0 0 14px; color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.ets-v2-footer__nav { margin: 0; padding: 0; list-style: none; }
.ets-v2 .ets-v2-footer a { color: #e3edf6; text-decoration: none; }
.ets-v2 .ets-v2-footer a:hover { color: #7cc4ea; text-decoration: underline; }
.ets-v2 .ets-v2-footer__nav a { display: inline-flex; align-items: center; min-height: 36px; }
.ets-v2-footer__contacts p { margin: 0 0 10px; }
.ets-v2 .ets-v2-footer__contacts a, .ets-v2 .ets-v2-footer__bottom a { display: inline-flex; align-items: center; min-height: 32px; }
.ets-v2-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding: 20px 0 28px; border-top: 1px solid rgba(255, 255, 255, .14); font-size: 14px; color: #93a9be; }

/* =====================================================================
   ETS-V2-03 — homepage visual design (templates "ETS v2 — Главная A/B"),
   light composition after the Owner's reference layout.
   ===================================================================== */

/* ---------- Header search shortcut (to the news archive search) ---------- */
.ets-v2 .ets-v2-searchlink { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: var(--ets-radius); color: var(--ets-navy); }
.ets-v2 .ets-v2-searchlink:hover { background: var(--ets-sky); color: var(--ets-blue-ink); }
.ets-v2-searchlink svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; }
@media (min-width: 1296px) { .ets-v2-nav { order: 2; } .ets-v2-searchlink { order: 3; margin-left: 8px; } }
@media (max-width: 1295px) { .ets-v2-header__inner { gap: 8px; } }
@media (max-width: 439px) {
  .ets-v2-burger { padding: 0 12px; }
  .ets-v2-burger [data-ets-v2-burger-label] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}

/* ---------- Hero (shared) ---------- */
.ets-v2-hero2 { position: relative; overflow: hidden; padding: 36px 0 44px; background: linear-gradient(180deg, #e3f0f9 0%, #f3f8fc 55%, #ffffff 100%); isolation: isolate; }
.ets-v2-hero2::before { content: ""; position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(rgba(39, 139, 192, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(39, 139, 192, .08) 1px, transparent 1px); background-size: 56px 56px; -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, .2) 35%, #000 100%); mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, .2) 35%, #000 100%); }
.ets-v2-hero2::after { content: ""; position: absolute; z-index: -1; right: -10%; top: -30%; width: 60%; height: 130%; background: radial-gradient(closest-side, rgba(39, 139, 192, .18), rgba(39, 139, 192, 0)); }
@media (min-width: 768px) { .ets-v2-hero2 { padding: 56px 0 64px; } }
@media (min-width: 1296px) { .ets-v2-hero2 { padding: 72px 0 80px; } }
.ets-v2-hero2__split { display: grid; gap: 28px; align-items: center; }
@media (min-width: 1024px) { .ets-v2-hero2__split { grid-template-columns: minmax(0, 1.35fr) minmax(0, .85fr); gap: 56px; } }
.ets-v2-hero2__eyebrow { margin: 0 0 14px; color: var(--ets-blue-ink); font-size: 13px; font-weight: 700; letter-spacing: .1em; line-height: 1.4; text-transform: uppercase; }
.ets-v2 .ets-v2-hero2__title { margin: 0; color: var(--ets-navy); }
.ets-v2-wordmark { display: block; font-size: 56px; font-weight: 700; line-height: .95; letter-spacing: -.035em; color: var(--ets-navy); }
.ets-v2-wordmark__accent { color: var(--ets-blue-ink); }
@media (min-width: 480px) { .ets-v2-wordmark { font-size: 68px; } }
@media (min-width: 1024px) { .ets-v2-wordmark { font-size: 96px; } }
@media (min-width: 1296px) { .ets-v2-wordmark { font-size: 112px; } }
.ets-v2-wordmark--md { font-size: 52px; }
@media (min-width: 480px) { .ets-v2-wordmark--md { font-size: 60px; } }
@media (min-width: 1296px) { .ets-v2-wordmark--md { font-size: 84px; } }
.ets-v2-hero2__subtitle { display: block; margin-top: 14px; max-width: 640px; color: var(--ets-navy); font-size: 22px; font-weight: 700; line-height: 1.25; letter-spacing: -.01em; }
@media (min-width: 768px) { .ets-v2-hero2__subtitle { margin-top: 18px; font-size: 28px; } }
.ets-v2-hero2__lead { margin: 16px 0 0; max-width: 600px; color: var(--ets-text); font-size: 17px; line-height: 1.6; }
@media (min-width: 768px) { .ets-v2-hero2__lead { font-size: 18px; } }
.ets-v2-hero2__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }

/* Facts: council in numbers (all from the published 2026 composition news; sections counted by MODX) */
.ets-v2-facts { margin: 0; }
.ets-v2-facts__item { display: flex; flex-direction: column; gap: 4px; }
.ets-v2-facts dt { color: var(--ets-navy); font-size: 40px; font-weight: 700; line-height: 1; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.ets-v2-facts dd { margin: 0; color: var(--ets-muted); font-size: 14px; line-height: 1.4; }
.ets-v2-facts__short { display: none; }
@media (max-width: 1023px) {
  .ets-v2-facts__long { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .ets-v2-facts__short { display: inline; }
}
.ets-v2-facts__item { min-width: 0; }
.ets-v2 .ets-v2-facts__source { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 8px; color: var(--ets-blue-ink); font-weight: 500; text-decoration: none; }
.ets-v2 .ets-v2-facts__source:hover { color: var(--ets-blue-deep); }
.ets-v2-facts__source:hover .ets-v2-arrow { transform: translateX(4px); }

/* White panel (hero A, hero B without featured news) */
.ets-v2-statpanel { padding: 22px 24px 14px; background: #fff; border: 1px solid var(--ets-line); border-radius: 16px; box-shadow: 0 24px 48px rgba(23, 56, 81, .12); }
.ets-v2-statpanel .ets-v2-facts__item { padding: 14px 0; }
.ets-v2-statpanel .ets-v2-facts__item + .ets-v2-facts__item { border-top: 1px solid var(--ets-line); }
@media (max-width: 1023px) {
  .ets-v2-statpanel { padding: 16px 18px 8px; }
  .ets-v2-statpanel .ets-v2-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 12px; }
  .ets-v2-statpanel .ets-v2-facts__item { padding: 8px 0; }
  .ets-v2-statpanel .ets-v2-facts__item + .ets-v2-facts__item { border-top: 0; padding-left: 12px; border-left: 1px solid var(--ets-line); }
  .ets-v2-statpanel .ets-v2-facts dt { font-size: 30px; }
  .ets-v2-statpanel .ets-v2-facts dd { font-size: 12.5px; }
}
@media (min-width: 1296px) { .ets-v2-statpanel { padding: 28px 32px 18px; } .ets-v2-statpanel .ets-v2-facts dt { font-size: 48px; } }

/* Inline row of facts (hero B with featured news) */
.ets-v2-statrow { margin-top: 30px; padding-top: 18px; border-top: 1px solid var(--ets-line-strong); }
.ets-v2-statrow .ets-v2-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 16px; }
.ets-v2-statrow .ets-v2-facts__item + .ets-v2-facts__item { padding-left: 16px; border-left: 1px solid var(--ets-line); }
.ets-v2-statrow .ets-v2-facts dt { font-size: 32px; }
.ets-v2-statrow .ets-v2-facts dd { font-size: 13px; }
@media (max-width: 479px) { .ets-v2-statrow .ets-v2-facts dt { font-size: 26px; } .ets-v2-statrow .ets-v2-facts dd { font-size: 12px; } .ets-v2-statrow .ets-v2-facts__item + .ets-v2-facts__item { padding-left: 10px; } .ets-v2-statrow .ets-v2-facts { gap: 0 10px; } }

/* ---------- Hero B: featured news card ---------- */
.ets-v2-feature { position: relative; padding: 24px; border: 1px solid var(--ets-line); border-radius: 16px; background: #fff; color: var(--ets-text); box-shadow: 0 24px 48px rgba(23, 56, 81, .12); transition: transform .16s var(--ets-ease), box-shadow .16s var(--ets-ease); }
@media (min-width: 768px) { .ets-v2-feature { padding: 30px; } }
.ets-v2-feature::before { content: ""; position: absolute; left: 30px; right: 30px; top: -1px; height: 4px; border-radius: 0 0 4px 4px; background: var(--ets-blue); }
.ets-v2-feature:hover { transform: translateY(-2px); box-shadow: 0 28px 56px rgba(23, 56, 81, .16); }
.ets-v2-feature:focus-within { outline: 3px solid var(--ets-blue); outline-offset: 4px; }
.ets-v2-feature__label { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 14px; padding: 5px 12px; border-radius: 999px; background: var(--ets-sky); color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.ets-v2-feature__label::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--ets-blue); }
.ets-v2-feature__media { margin: 0 0 18px; aspect-ratio: 16 / 9; overflow: hidden; border-radius: var(--ets-radius); }
.ets-v2-feature__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ets-v2-feature__date { margin: 0 0 8px; color: var(--ets-muted); font-size: 14px; font-weight: 500; }
.ets-v2 .ets-v2-feature__title { font-size: 21px; line-height: 1.3; }
@media (min-width: 1296px) { .ets-v2 .ets-v2-feature__title { font-size: 24px; } }
.ets-v2 .ets-v2-feature__link { color: var(--ets-navy); text-decoration: none; }
.ets-v2 .ets-v2-feature__link::after { content: ""; position: absolute; inset: 0; border-radius: 16px; }
.ets-v2 .ets-v2-feature__link:focus-visible { outline: 0; }
.ets-v2-feature__lead { margin: 12px 0 0; color: var(--ets-muted); font-size: 16px; line-height: 1.6; }
.ets-v2-feature__more { margin: 18px 0 0; color: var(--ets-blue-ink); font-weight: 500; }
.ets-v2-feature:hover .ets-v2-arrow { transform: translateX(4px); }
@media (max-width: 767px) { .ets-v2-feature__lead { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; } }

/* ---------- Section heads on the home page ---------- */
.ets-v2--home2 .ets-v2-section { padding: 48px 0; }
@media (min-width: 1024px) { .ets-v2--home2 .ets-v2-section { padding: 72px 0; } }
.ets-v2--home2 .ets-v2-section__head { align-items: center; margin-bottom: 28px; }

/* ---------- News cards: date and "Подробнее" ---------- */
.ets-v2-card__more { margin: auto 0 0; padding-top: 6px; color: var(--ets-blue-ink); font-size: 15px; font-weight: 500; }
.ets-v2-card:hover .ets-v2-card__more .ets-v2-arrow { transform: translateX(4px); }

/* ---------- Directions (columns with dividers, round icon badges) ---------- */
.ets-v2-home-areas { background: linear-gradient(180deg, #f1f7fc 0%, #f8fbfd 100%); }
.ets-v2 .ets-v2-section__intro a { color: var(--ets-blue-ink); }
.ets-v2-areas { display: grid; margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .ets-v2-areas { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1296px) { .ets-v2-areas { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ets-v2-area { position: relative; display: flex; flex-direction: column; padding: 24px 0; }
.ets-v2-area + .ets-v2-area { border-top: 1px solid var(--ets-line); }
@media (min-width: 640px) {
  .ets-v2-area { padding: 8px 28px 8px; }
  .ets-v2-area + .ets-v2-area { border-top: 0; }
  .ets-v2-area:nth-child(even) { border-left: 1px solid var(--ets-line); }
  .ets-v2-area:nth-child(n+3) { margin-top: 28px; }
}
@media (min-width: 1296px) {
  .ets-v2-area:nth-child(n+2) { border-left: 1px solid var(--ets-line); }
  .ets-v2-area:nth-child(n+3) { margin-top: 0; }
  .ets-v2-area:first-child { padding-left: 0; }
}
.ets-v2-area__icon { display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 50%; background: #fff; color: var(--ets-blue-ink); box-shadow: 0 8px 20px rgba(23, 56, 81, .08), inset 0 0 0 1px var(--ets-line); }
.ets-v2-area__icon svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ets-v2-area__num { display: none; }
.ets-v2 .ets-v2-area__title { margin: 20px 0 10px; font-size: 19px; line-height: 1.3; }
.ets-v2-area__text { margin: 0 0 16px; color: var(--ets-muted); font-size: 15px; line-height: 1.6; }
.ets-v2 .ets-v2-area__example { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: auto; color: var(--ets-blue-ink); font-weight: 500; text-decoration: none; }
.ets-v2 .ets-v2-area__example:hover .ets-v2-arrow { transform: translateX(4px); }

/* ---------- Council sections ---------- */
.ets-v2-sections { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .ets-v2-sections { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .ets-v2-sections { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } }
@media (min-width: 1296px) { .ets-v2-sections { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ets-v2-scard { position: relative; display: flex; flex-direction: column; min-height: 100%; background: #fff; border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); box-shadow: var(--ets-shadow-card); overflow: hidden; transition: border-color .16s var(--ets-ease), box-shadow .16s var(--ets-ease), transform .16s var(--ets-ease); }
.ets-v2-scard:hover { border-color: var(--ets-line-strong); box-shadow: var(--ets-shadow-hover); transform: translateY(-2px); }
.ets-v2-scard:focus-within { border-color: var(--ets-blue); outline: 3px solid var(--ets-blue); outline-offset: 2px; }
.ets-v2-scard__band { display: flex; align-items: flex-end; height: 76px; padding: 0 20px 10px; background-color: #e6f1f9; background-image: linear-gradient(rgba(39, 139, 192, .10) 1px, transparent 1px), linear-gradient(90deg, rgba(39, 139, 192, .10) 1px, transparent 1px), linear-gradient(135deg, #eef6fb 0%, #d7e9f5 100%); background-size: 22px 22px, 22px 22px, auto; }
.ets-v2-scard__num { color: var(--ets-blue-ink); font-size: 34px; font-weight: 700; line-height: 1; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.ets-v2-scard > :not(.ets-v2-scard__band) { margin-left: 20px; margin-right: 20px; }
.ets-v2 .ets-v2-scard__title { margin-top: 16px; font-size: 17px; line-height: 1.35; }
.ets-v2 .ets-v2-scard__link { color: var(--ets-navy); text-decoration: none; }
.ets-v2 .ets-v2-scard__link::after { content: ""; position: absolute; inset: 0; border-radius: var(--ets-radius-lg); }
.ets-v2 .ets-v2-scard__link:focus-visible { outline: 0; }
.ets-v2-scard__lead { margin: 8px 0 0; color: var(--ets-muted); font-size: 14px; line-height: 1.5; }
.ets-v2-scard__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin-top: auto !important; padding: 14px 0 18px; color: var(--ets-text); font-size: 13px; font-weight: 500; }
.ets-v2-scard__meta span:not(.ets-v2-scard__go) { display: inline-flex; align-items: center; gap: 6px; }
.ets-v2-scard__meta span:not(.ets-v2-scard__go)::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--ets-blue); }
.ets-v2-scard__go { flex-basis: 100%; color: var(--ets-blue-ink); font-size: 15px; }
.ets-v2-home-sections:focus { outline: 0; }

/* ---------- Plan, reports, partner ---------- */

/* ---------- Closing call to action: rounded navy card ---------- */
.ets-v2-cta { padding: 8px 0 56px; }
@media (min-width: 1024px) { .ets-v2-cta { padding: 8px 0 80px; } }
.ets-v2-cta__inner { position: relative; display: grid; gap: 24px; align-items: center; overflow: hidden; padding: 32px 24px; border-radius: 16px; background: linear-gradient(120deg, #011b35 0%, #0f3558 60%, #1c6f9c 140%); color: #c9d8e6; isolation: isolate; }
.ets-v2-cta__inner::before { content: ""; position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px); background-size: 44px 44px; -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 70%); mask-image: linear-gradient(90deg, transparent 0%, #000 70%); }
@media (min-width: 1024px) { .ets-v2-cta__inner { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 48px; padding: 44px 48px; } }
.ets-v2-cta__eyebrow { margin: 0 0 10px; color: #7cc4ea; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.ets-v2 .ets-v2-cta__title { color: #fff; font-size: 26px; line-height: 1.15; }
@media (min-width: 768px) { .ets-v2 .ets-v2-cta__title { font-size: 34px; } }
.ets-v2-cta__text { margin: 14px 0 0; max-width: 640px; font-size: 16px; line-height: 1.6; }
.ets-v2-cta__actions { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
@media (min-width: 1024px) { .ets-v2-cta__actions { align-items: flex-end; text-align: right; } }
.ets-v2 .ets-v2-btn--light { background: #fff; color: var(--ets-navy-900); }
.ets-v2 .ets-v2-btn--light:hover { background: #dff0fa; color: var(--ets-navy-900); }
.ets-v2-cta :focus-visible { outline-color: #7cc4ea; }
/* ETS-V2-HOME-06D (accepted as part of HOME-06E) —
   the NDT ribbon mirrored about the horizontal axis at the top of the dark CTA card: same drawing (HOME-06B generator and
   parameters), pale-blue strokes, the same height and horizontal box as the NDT card. */
.ets-v2-cta__wave { display: none; }
@media (min-width: 1024px) {
  .ets-v2-cta--mirror .ets-v2-cta__wave { display: block; position: absolute; z-index: -1; top: 0; left: 0; right: 0; height: 167px; background: url("/assets/images/ets-v2-cta-wave.svg?v=1") no-repeat 0 0 / 100% 100%; transform: scaleY(-1); opacity: .8; -webkit-mask-image: linear-gradient(90deg, transparent 0, transparent 19%, #000 34%); mask-image: linear-gradient(90deg, transparent 0, transparent 19%, #000 34%); pointer-events: none; }
}
/* NDT ribbon runs 16 % lower on 768-1263: the reflection runs as much higher */
@media (min-width: 1024px) and (max-width: 1263px) { .ets-v2-cta--mirror .ets-v2-cta__wave { top: -27px; } }
/* ETS-V2-HOME-06E (accepted; /ets-lab since HOME-06F) — documents, NDT and the CTA card share one light-blue
   section: the CTA card follows the NDT card 28 px below it inside the same container; the section ends 44 px (phones
   36 px) after the CTA, right before the footer. */
.ets-v2-section.ets-v2-home-docs--unified { padding-bottom: 36px; }
@media (min-width: 1024px) { .ets-v2--home2 .ets-v2-home-docs--unified { padding-bottom: 44px; } }
.ets-v2-cta.ets-v2-cta--unified { margin-top: 28px; padding: 0; }

/* =====================================================================
   ETS-V2-04 — inner pages: news article and council section pages
   ===================================================================== */

/* ---------- News article ---------- */
.ets-v2-article__head { padding: 20px 0 26px; }
@media (min-width: 1024px) { .ets-v2-article__head { padding: 26px 0 32px; } }
/* ETS-V2-NEWS-02: crumbs on the left, publication date on the right, in one row above the title */
.ets-v2-article__bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 2px 16px; margin: 0 0 8px; }
.ets-v2-article__bar .ets-v2-crumbs { margin: 0; }
.ets-v2-article .ets-v2-article__meta { margin: 0; font-size: 15px; white-space: nowrap; }
.ets-v2 .ets-v2-article__title { max-width: 820px; letter-spacing: -.012em; -webkit-hyphens: none; hyphens: none; overflow-wrap: break-word; }
.ets-v2-article .ets-v2-pagehead__lead { max-width: 780px; font-size: 18px; }
.ets-v2-article__page { padding-top: 28px; }
@media (min-width: 1024px) { .ets-v2-article__page { padding-top: 36px; } }
/* ETS-V2-NEWS-02: the photos of the publication, right under the title (one: natural size; several: a grid of frames, never cropped) */
.ets-v2-photos { display: grid; gap: 12px; margin: 0 0 28px; }
.ets-v2-photos__item { margin: 0; overflow: hidden; border-radius: var(--ets-radius-lg); background: var(--ets-surface-alt); }
.ets-v2-photos__item a { display: block; height: 100%; }
.ets-v2 .ets-v2-photos__item img { display: block; width: 100%; height: auto; max-height: 420px; object-fit: contain; }
.ets-v2-photos--one .ets-v2-photos__item { justify-self: center; max-width: 100%; background: none; }
.ets-v2 .ets-v2-photos--one img { width: auto; max-width: 100%; max-height: 520px; border-radius: var(--ets-radius-lg); }
@media (min-width: 640px) {
  .ets-v2-photos--two, .ets-v2-photos--many { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ets-v2-photos--two .ets-v2-photos__item, .ets-v2-photos--many .ets-v2-photos__item { height: 260px; }
  .ets-v2 .ets-v2-photos--two img, .ets-v2 .ets-v2-photos--many img { height: 100%; max-height: none; }
}
@media (min-width: 900px) { .ets-v2-photos--many { grid-template-columns: repeat(3, minmax(0, 1fr)); } .ets-v2-photos--many .ets-v2-photos__item { height: 220px; } }

.ets-v2-article__body { max-width: 780px; font-size: 17px; line-height: 1.65; }
@media (min-width: 768px) { .ets-v2-article__body { font-size: 18px; } }
.ets-v2-article__body p, .ets-v2-article__body li { -webkit-hyphens: none; hyphens: none; }
/* Editor content often carries inline "text-align: justify"; the article reads left-aligned. */
.ets-v2-article__body [style*="justify"] { text-align: left !important; }
.ets-v2-article__body .ets-v2-prose__dup { display: none; }
.ets-v2-article__body a { overflow-wrap: anywhere; }
.ets-v2-article__body h2, .ets-v2-article__body h3 { -webkit-hyphens: none; hyphens: none; }

/* Photos keep their own proportions: nothing is cropped, portraits are limited in height. */
.ets-v2 .ets-v2-article__body img { display: block; width: auto !important; max-width: 100% !important; height: auto !important; max-height: 720px; margin: 0 auto; border-radius: var(--ets-radius); }
.ets-v2-article__body p:has(> img), .ets-v2-article__body p:has(> a > img), .ets-v2-article__body p[style]:has(> img), .ets-v2-article__body p[style]:has(> a > img) { margin: 1.6em 0; padding: 12px; border-radius: var(--ets-radius-lg); background: var(--ets-surface-alt); text-align: center !important; }
.ets-v2-article__body p:has(> a > img) a { display: inline-block; }
.ets-v2-article__body figure { margin: 1.6em 0; }
.ets-v2-article__body figcaption { margin-top: 8px; color: var(--ets-muted); font-size: 14px; line-height: 1.5; text-align: center; }

/* Documents linked in the text */
.ets-v2-article__body a[href$=".pdf" i]::before, .ets-v2-article__body a[href$=".doc" i]::before, .ets-v2-article__body a[href$=".docx" i]::before, .ets-v2-article__body a[href$=".zip" i]::before, .ets-v2-article__body a[href$=".rar" i]::before { display: inline-block; margin-right: 8px; padding: 1px 7px; border-radius: 999px; background: var(--ets-sky); color: var(--ets-blue-ink); font-size: 11px; font-weight: 700; letter-spacing: .06em; line-height: 1.6; vertical-align: 2px; text-decoration: none; }
.ets-v2-article__body a[href$=".pdf" i]::before { content: "PDF"; }
.ets-v2-article__body a[href$=".doc" i]::before, .ets-v2-article__body a[href$=".docx" i]::before { content: "DOC"; }
.ets-v2-article__body a[href$=".zip" i]::before, .ets-v2-article__body a[href$=".rar" i]::before { content: "ZIP"; }
.ets-v2-article__body blockquote { margin-left: 0; padding: 14px 20px; border-left: 3px solid var(--ets-blue); border-radius: 0 var(--ets-radius) var(--ets-radius) 0; background: var(--ets-surface-alt); }

/* Migrated photo galleries: natural proportions in rows, no cropping */
.ets-v2-prose .ets-v2-gallery { display: flex; flex-wrap: wrap; gap: 10px; margin: 1.6em 0; }
.ets-v2-prose .ets-v2-gallery figure { flex: 1 1 auto; margin: 0; height: 180px; padding: 0; background: var(--ets-surface-alt); border-radius: var(--ets-radius); }
@media (min-width: 768px) { .ets-v2-prose .ets-v2-gallery figure { height: 220px; } }
.ets-v2-prose .ets-v2-gallery a { display: block; height: 100%; }
.ets-v2 .ets-v2-prose .ets-v2-gallery img { width: 100% !important; height: 100% !important; max-height: none; aspect-ratio: auto; object-fit: contain; margin: 0; }

/* ---------- Council section page ---------- */
.ets-v2-sechead { padding: 24px 0 32px; }
@media (min-width: 1024px) { .ets-v2-sechead { padding: 36px 0 48px; } }
.ets-v2-sechead__grid { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 16px 20px; align-items: start; }
@media (min-width: 768px) { .ets-v2-sechead__grid { gap: 24px 32px; } }
.ets-v2-sechead__num { display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 14px; background-color: #fff; background-image: linear-gradient(rgba(39, 139, 192, .10) 1px, transparent 1px), linear-gradient(90deg, rgba(39, 139, 192, .10) 1px, transparent 1px); background-size: 12px 12px; border: 1px solid var(--ets-line-strong); color: var(--ets-blue-ink); font-size: 28px; font-weight: 700; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
@media (min-width: 768px) { .ets-v2-sechead__num { width: 96px; height: 96px; font-size: 40px; border-radius: 18px; } }
.ets-v2-sechead__label { margin: 0 0 8px; color: var(--ets-blue-ink); font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.ets-v2 .ets-v2-sechead__title { max-width: 900px; font-size: 24px; line-height: 1.22; -webkit-hyphens: none; hyphens: none; overflow-wrap: break-word; }
@media (min-width: 480px) { .ets-v2 .ets-v2-sechead__title { font-size: 28px; } }
@media (min-width: 1024px) { .ets-v2 .ets-v2-sechead__title { font-size: 36px; } }
.ets-v2-sechead__leader { margin: 14px 0 0; color: var(--ets-text); font-size: 17px; }
.ets-v2-sechead__leader span { color: var(--ets-muted); }
.ets-v2-sechead__stats { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
.ets-v2-sechead__stats li { display: inline-flex; align-items: baseline; gap: 6px; padding: 6px 14px; border-radius: 999px; background: #fff; border: 1px solid var(--ets-line); color: var(--ets-text); font-size: 14px; }
.ets-v2-sechead__stats strong { color: var(--ets-navy); font-size: 16px; }
@media (max-width: 479px) { .ets-v2-sechead__grid { grid-template-columns: 1fr; } }

.ets-v2-secpage { padding-top: 32px; }
.ets-v2-secpage__body { max-width: calc(1040px + 2 * var(--ets-gutter)); }
.ets-v2-secblock + .ets-v2-secblock { margin-top: 40px; }
.ets-v2 .ets-v2-secblock__title { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; font-size: 22px; }
@media (min-width: 768px) { .ets-v2 .ets-v2-secblock__title { font-size: 26px; } }
.ets-v2-secblock__count { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; height: 28px; padding: 0 10px; border-radius: 999px; background: var(--ets-sky); color: var(--ets-blue-ink); font-size: 14px; font-weight: 700; }

.ets-v2-leader { display: flex; gap: 18px; padding: 22px 24px; background: #fff; border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); box-shadow: var(--ets-shadow-card); }
.ets-v2-leader__mark { flex: 0 0 4px; border-radius: 4px; background: var(--ets-blue); }
.ets-v2-leader p { margin: 0; }
.ets-v2-leaders { display: grid; gap: 16px; }
@media (min-width: 1024px) { .ets-v2-leaders:has(> .ets-v2-leader + .ets-v2-leader) { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.ets-v2-leader__role { margin-bottom: 6px !important; color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.ets-v2-leader__name { color: var(--ets-navy); font-size: 20px; font-weight: 700; line-height: 1.3; }
.ets-v2-leader .ets-v2-people__degree { margin-top: 6px; }
.ets-v2-leader__details { margin-top: 6px !important; color: var(--ets-text); font-size: 16px; line-height: 1.55; }

.ets-v2-people { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--ets-line); counter-reset: ets-person; }
@media (min-width: 1024px) { .ets-v2-people { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 40px; } }
.ets-v2-people__item { position: relative; display: flex; flex-direction: column; gap: 4px; padding: 14px 0 14px 40px; border-bottom: 1px solid var(--ets-line); counter-increment: ets-person; }
.ets-v2-people__item::before { content: counter(ets-person); position: absolute; left: 0; top: 14px; width: 28px; color: var(--ets-blue-ink); font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
.ets-v2-people__name { color: var(--ets-navy); font-size: 17px; font-weight: 700; line-height: 1.35; }
.ets-v2-people__degree { align-self: flex-start; display: inline-block; padding: 1px 9px; border-radius: 999px; background: var(--ets-sky); color: var(--ets-blue-ink); font-size: 13px; font-weight: 500; line-height: 1.6; }
.ets-v2-people__details { color: var(--ets-text); font-size: 15px; line-height: 1.5; overflow-wrap: break-word; }

.ets-v2-secnav { display: grid; gap: 12px; margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--ets-line); }
@media (min-width: 768px) { .ets-v2-secnav { grid-template-columns: 1fr auto 1fr; align-items: center; } }
.ets-v2 .ets-v2-secnav__link { display: flex; flex-direction: column; gap: 2px; padding: 12px 16px; border: 1px solid var(--ets-line); border-radius: var(--ets-radius); color: var(--ets-navy); text-decoration: none; }
.ets-v2 .ets-v2-secnav__link:hover { border-color: var(--ets-blue); color: var(--ets-blue-ink); }
.ets-v2-secnav__link--next { text-align: right; }
.ets-v2-secnav__dir { color: var(--ets-blue-ink); font-size: 13px; font-weight: 700; }
.ets-v2-secnav__title { font-weight: 500; line-height: 1.35; }
.ets-v2 .ets-v2-secnav__all { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 16px; color: var(--ets-blue-ink); font-weight: 500; text-decoration: none; }

/* =====================================================================
   ETS-V2-05 — section catalog (/ets-lab/sekczii/)
   ===================================================================== */
.ets-v2-catalog__source { margin: 12px 0 0; color: var(--ets-muted); font-size: 15px; }
.ets-v2 .ets-v2-catalog__source a { color: var(--ets-blue-ink); }
.ets-v2-pagehead__links { margin: 20px 0 0; }
.ets-v2-catalog__page { padding-top: 40px; }
.ets-v2-catalog { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 768px) { .ets-v2-catalog { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }
@media (min-width: 1296px) { .ets-v2-catalog { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; } }
.ets-v2-ccard { position: relative; display: flex; flex-direction: column; min-width: 0; background: #fff; border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); box-shadow: var(--ets-shadow-card); overflow: hidden; transition: border-color .16s var(--ets-ease), box-shadow .16s var(--ets-ease), transform .16s var(--ets-ease); }
.ets-v2-ccard:hover { border-color: var(--ets-line-strong); box-shadow: var(--ets-shadow-hover); transform: translateY(-2px); }
.ets-v2-ccard:focus-within { border-color: var(--ets-blue); outline: 3px solid var(--ets-blue); outline-offset: 2px; }
.ets-v2-ccard__band { display: flex; align-items: flex-end; height: 72px; padding: 0 22px 10px; background-color: #e6f1f9; background-image: linear-gradient(rgba(39, 139, 192, .10) 1px, transparent 1px), linear-gradient(90deg, rgba(39, 139, 192, .10) 1px, transparent 1px), linear-gradient(135deg, #eef6fb 0%, #d7e9f5 100%); background-size: 22px 22px, 22px 22px, auto; }
.ets-v2-ccard__num { color: var(--ets-blue-ink); font-size: 34px; font-weight: 700; line-height: 1; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.ets-v2-ccard__body { display: flex; flex-direction: column; flex: 1 1 auto; padding: 18px 22px 20px; }
.ets-v2-ccard__label { margin: 0 0 6px; color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.ets-v2 .ets-v2-ccard__title { font-size: 19px; line-height: 1.3; -webkit-hyphens: none; hyphens: none; overflow-wrap: break-word; }
.ets-v2 .ets-v2-ccard__link { color: var(--ets-navy); text-decoration: none; }
.ets-v2 .ets-v2-ccard__link::after { content: ""; position: absolute; inset: 0; border-radius: var(--ets-radius-lg); }
.ets-v2 .ets-v2-ccard__link:focus-visible { outline: 0; }
.ets-v2-ccard__leader { display: flex; flex-direction: column; gap: 2px; margin: 14px 0 0; padding-top: 12px; border-top: 1px solid var(--ets-line); color: var(--ets-text); font-size: 15px; font-weight: 500; line-height: 1.4; }
.ets-v2-ccard__leader span { color: var(--ets-muted); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ets-v2-ccard__meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 0; padding: 0; list-style: none; }
.ets-v2-ccard__meta li { display: inline-flex; align-items: baseline; gap: 5px; padding: 4px 12px; border-radius: 999px; background: var(--ets-surface-alt); border: 1px solid var(--ets-line); font-size: 13px; color: var(--ets-text); }
.ets-v2-ccard__meta strong { color: var(--ets-navy); font-size: 15px; }
.ets-v2-ccard__more { margin: auto 0 0; padding-top: 16px; color: var(--ets-blue-ink); font-size: 15px; font-weight: 500; }
.ets-v2-ccard:hover .ets-v2-ccard__more .ets-v2-arrow { transform: translateX(4px); }

/* ETS-V2-05F — footer «Разделы» in two columns of three (spacing and type unchanged) */
.ets-v2-footer__nav { display: grid; grid-template-rows: repeat(3, auto); grid-auto-flow: column; grid-auto-columns: max-content; column-gap: 32px; row-gap: 0; }

/* ETS-V2-06 — «Структура совета»: council leadership panel and section cards */
.ets-v2-leadpanel { margin-top: 24px; background: var(--ets-surface); border: 1px solid var(--ets-line); border-top: 3px solid var(--ets-blue); border-radius: var(--ets-radius-lg); box-shadow: var(--ets-shadow-card); }
.ets-v2-leadpanel__list { display: grid; margin: 0; padding: 0; list-style: none; }
.ets-v2-leadpanel__item { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; padding: 20px 22px; }
.ets-v2-leadpanel__item + .ets-v2-leadpanel__item { border-top: 1px solid var(--ets-line); }
.ets-v2-leadpanel p { margin: 0; }
.ets-v2-leadpanel__role { color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .1em; line-height: 1.4; text-transform: uppercase; }
.ets-v2-leadpanel__name { color: var(--ets-navy); font-size: 19px; font-weight: 700; line-height: 1.3; overflow-wrap: anywhere; }
.ets-v2-leadpanel__details { color: var(--ets-text); font-size: 15px; line-height: 1.5; }
@media (min-width: 900px) {
  .ets-v2-leadpanel__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ets-v2-leadpanel__item { padding: 24px 26px; }
  .ets-v2-leadpanel__item + .ets-v2-leadpanel__item { border-top: 0; border-left: 1px solid var(--ets-line); }
}
.ets-v2 .ets-v2-structure__title { margin: 0 0 20px; font-size: 24px; }
@media (min-width: 768px) { .ets-v2 .ets-v2-structure__title { font-size: 28px; } }

/* HERO-WAVE-01 — hero B: static wireframe wave from the middle of the hero to the top-right corner (decorative) */
.ets-v2-hero2__wave { position: absolute; z-index: -1; top: 0; right: 0; width: min(1000px, 70%); aspect-ratio: 10 / 7; background: url("/assets/images/ets-v2-hero-wave.svg?v=1") no-repeat right top / 100% 100%; pointer-events: none; -webkit-mask-image: linear-gradient(90deg, transparent 36%, #000 58%); mask-image: linear-gradient(90deg, transparent 36%, #000 58%); }
@media (max-width: 1023px) {
  .ets-v2-hero2__wave { right: 0; width: min(560px, 100%); opacity: .45; -webkit-mask-image: radial-gradient(110% 80% at 100% 0, #000 15%, transparent 55%); mask-image: radial-gradient(110% 80% at 100% 0, #000 15%, transparent 55%); }
}
@media (max-width: 767px) { .ets-v2-hero2__wave { opacity: .25; -webkit-mask-image: radial-gradient(90% 60% at 100% 0, #000 20%, transparent 70%); mask-image: radial-gradient(90% 60% at 100% 0, #000 20%, transparent 70%); } }
@media print { .ets-v2-hero2__wave { display: none; } }

/* HERO-WAVE-02 (accepted 2026-10-18; active on /ets-lab and the previews via body.ets-v2--wave2) — calm line-wave in a 1920x690 frame centred on the page */
.ets-v2--wave2 .ets-v2-hero2__wave { left: 50%; right: auto; bottom: 0; width: 1920px; height: auto; margin-left: -960px; aspect-ratio: auto; opacity: 1; background: url("/assets/images/ets-v2-hero-wave2.svg?v=5") no-repeat 0 0 / 1920px 690px; -webkit-mask-image: linear-gradient(180deg, #000 72%, transparent 99%); mask-image: linear-gradient(180deg, #000 72%, transparent 99%); transform-origin: 50% 0; }
/* the 1200 px container narrows below 1264 px: scale the frame with it so the ribbon keeps its place around the card */
@media (min-width: 1024px) and (max-width: 1151px) { .ets-v2--wave2 .ets-v2-hero2__wave { transform: scale(.8); } }
@media (min-width: 1152px) and (max-width: 1263px) { .ets-v2--wave2 .ets-v2-hero2__wave { transform: scale(.9); } }
/* below 1024 the card moves under the text: only the twist of the ribbon remains, small and quiet, in the top-right corner */
@media (max-width: 1023px) {
  .ets-v2--wave2 .ets-v2-hero2__wave { left: auto; right: -88px; bottom: auto; height: 690px; margin-left: 0; transform: scale(.55); transform-origin: 100% 0; opacity: .6; -webkit-mask-image: radial-gradient(70% 60% at 92% 12%, #000 30%, transparent 75%); mask-image: radial-gradient(70% 60% at 92% 12%, #000 30%, transparent 75%); }
}
@media (max-width: 767px) { .ets-v2--wave2 .ets-v2-hero2__wave { right: -64px; transform: scale(.4); opacity: .4; } }

/* ETS-V2-07 — calmer heading scale (sizes and heading line-height only; spacing, body text, hero B and the
   «Главное» card are unchanged). Wrapping: by words, no automatic hyphenation, balanced lines where supported. */
.ets-v2-pagehead__title { font-size: 27px; line-height: 1.18; -webkit-hyphens: none; hyphens: none; text-wrap: balance; }
@media (min-width: 480px) { .ets-v2-pagehead__title { font-size: 30px; } }
@media (min-width: 768px) { .ets-v2-pagehead__title { font-size: 34px; } }
@media (min-width: 1024px) { .ets-v2-pagehead__title { font-size: 38px; } }
.ets-v2 .ets-v2-sechead__title { font-size: 22px; line-height: 1.25; text-wrap: balance; }
@media (min-width: 480px) { .ets-v2 .ets-v2-sechead__title { font-size: 25px; } }
@media (min-width: 1024px) { .ets-v2 .ets-v2-sechead__title { font-size: 31px; } }
.ets-v2 .ets-v2-article__title { font-size: 22px; line-height: 1.25; text-wrap: pretty; }
@media (min-width: 480px) { .ets-v2 .ets-v2-article__title { font-size: 24px; } }
@media (min-width: 768px) { .ets-v2 .ets-v2-article__title { font-size: 27px; } }
@media (min-width: 1296px) { .ets-v2 .ets-v2-article__title { font-size: 31px; } }
.ets-v2-section__title { font-size: 24px; text-wrap: balance; }
@media (min-width: 768px) { .ets-v2-section__title { font-size: 30px; } }
.ets-v2-split .ets-v2-section__title { font-size: 23px; }
@media (min-width: 768px) { .ets-v2-split .ets-v2-section__title { font-size: 27px; } }
.ets-v2 .ets-v2-cta__title { font-size: 23px; line-height: 1.2; text-wrap: balance; }
@media (min-width: 768px) { .ets-v2 .ets-v2-cta__title { font-size: 28px; } }
.ets-v2 .ets-v2-structure__title { font-size: 22px; }
@media (min-width: 768px) { .ets-v2 .ets-v2-structure__title { font-size: 26px; } }
.ets-v2 .ets-v2-secblock__title { font-size: 20px; }
@media (min-width: 768px) { .ets-v2 .ets-v2-secblock__title { font-size: 24px; } }
@media (max-width: 479px) { .ets-v2 .ets-v2-ccard__title { font-size: 18px; } }
.ets-v2-nowrap { white-space: nowrap; }

/* ETS-V2-08 — site search: header search bar and the results page /ets-lab/poisk/ */
.ets-v2-searchbar { border-top: 1px solid var(--ets-line); background: #fff; }
.ets-v2-searchbar[hidden] { display: none; }
.ets-v2-searchbar__form { display: flex; align-items: center; gap: 8px; padding: 12px 0; }
.ets-v2 .ets-v2-searchbar__input, .ets-v2 .ets-v2-sitesearch__input { flex: 1 1 auto; width: 100%; min-width: 0; min-height: 48px; padding: 0 14px; border: 1px solid var(--ets-line-strong); border-radius: var(--ets-radius); background: #fff; color: var(--ets-text); font: 400 16px/1.3 var(--ets-font); }
.ets-v2-searchbar__input::placeholder, .ets-v2-sitesearch__input::placeholder { color: #7a8ea2; }
.ets-v2-searchbar__input:hover, .ets-v2-sitesearch__input:hover { border-color: var(--ets-blue); }
.ets-v2 .ets-v2-searchbar__submit, .ets-v2 .ets-v2-sitesearch__submit { flex: 0 0 auto; padding: 0 20px; }
.ets-v2-searchbar__close { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: var(--ets-radius); background: transparent; color: var(--ets-navy); cursor: pointer; }
.ets-v2-searchbar__close:hover { background: var(--ets-sky); color: var(--ets-blue-ink); }
.ets-v2-searchbar__close svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.ets-v2 .ets-v2-searchlink[aria-expanded="true"] { background: var(--ets-sky); color: var(--ets-blue-ink); }
.ets-v2-search__page { padding-top: 32px; }
.ets-v2-sitesearch__form { display: flex; gap: 8px; }
.ets-v2-sitesearch__hint { margin: 10px 0 0; color: var(--ets-muted); font-size: 14px; line-height: 1.5; }
.ets-v2-sitesearch__status { margin: 24px 0 0; color: var(--ets-navy); font-size: 17px; font-weight: 500; overflow-wrap: anywhere; }
.ets-v2-sitesearch__empty p + p { margin: 8px 0 0; color: var(--ets-text); font-size: 16px; line-height: 1.6; }
.ets-v2-results { margin: 16px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--ets-line); }
.ets-v2-result { padding: 20px 0; border-bottom: 1px solid var(--ets-line); }
.ets-v2-result p { margin: 0; }
.ets-v2-result__type { display: flex; flex-wrap: wrap; gap: 4px 12px; color: var(--ets-muted); font-size: 13px; line-height: 1.4; }
.ets-v2-result__label { color: var(--ets-blue-ink); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ets-v2 .ets-v2-result__title { margin: 6px 0 0; font-size: 19px; line-height: 1.35; -webkit-hyphens: none; hyphens: none; overflow-wrap: break-word; }
.ets-v2 .ets-v2-result__title a { color: var(--ets-navy); text-decoration: none; }
.ets-v2 .ets-v2-result__title a:hover { color: var(--ets-blue-ink); text-decoration: underline; text-underline-offset: 3px; }
.ets-v2-result__text { margin-top: 6px !important; color: var(--ets-text); font-size: 15px; line-height: 1.6; overflow-wrap: break-word; }
.ets-v2-result mark { padding: 0 1px; border-radius: 2px; background: var(--ets-sky); color: inherit; box-shadow: inset 0 -2px 0 var(--ets-line-strong); }
.ets-v2-search__page .ets-v2-pager { margin-top: 28px; }

/* ETS-V2-08 polish — compact header search group (the /ets-lab/poisk/ page is not affected).
   The field's focus ring is drawn inside its border, so it can never cover the gap to «Найти». */
.ets-v2-searchbar__form { justify-content: flex-end; gap: 12px; max-width: 660px; margin-left: auto; padding: 8px 0; }
.ets-v2 .ets-v2-searchbar__input { min-height: 42px; height: 42px; padding: 0 12px; font-size: 16px; }
.ets-v2 .ets-v2-searchbar__input:focus { border-color: var(--ets-blue); }
.ets-v2 .ets-v2-searchbar__input:focus-visible { outline: 2px solid var(--ets-blue); outline-offset: -2px; border-radius: var(--ets-radius); }
.ets-v2 .ets-v2-searchbar__submit { min-height: 42px; height: 42px; padding: 0 18px; font-size: 15px; }
.ets-v2-searchbar__close { width: 40px; height: 40px; }
.ets-v2 .ets-v2-searchbar__submit:focus-visible, .ets-v2 .ets-v2-searchbar__close:focus-visible { outline-offset: 2px; }
@media (max-width: 767px) { .ets-v2-searchbar__form { max-width: none; gap: 10px; } }
@media (max-width: 479px) { .ets-v2 .ets-v2-searchbar__input { padding: 0 10px; } .ets-v2 .ets-v2-searchbar__submit { padding: 0 14px; } }

/* ETS-V2-08 toggle — the header magnifier is a two-state tactile button: raised with a magnifier while the search is
   closed, pressed (inset shadow, deeper sky) with a cross while it is open. The clear button sits inside the field. */
.ets-v2 .ets-v2-searchlink { background: var(--ets-surface-alt); box-shadow: inset 0 0 0 1px var(--ets-line), 0 1px 2px rgba(23, 56, 81, .08); transition: background-color .2s var(--ets-ease), box-shadow .2s var(--ets-ease), color .2s var(--ets-ease); }
.ets-v2 .ets-v2-searchlink:hover { background: var(--ets-sky); color: var(--ets-blue-ink); box-shadow: inset 0 0 0 1px var(--ets-line-strong), 0 2px 4px rgba(23, 56, 81, .1); }
.ets-v2 .ets-v2-searchlink[aria-expanded="true"] { background: #d4e8f5; color: var(--ets-blue-deep); box-shadow: inset 0 2px 5px rgba(23, 56, 81, .24), inset 0 0 0 1px rgba(39, 139, 192, .4), 0 1px 0 rgba(255, 255, 255, .9); }
.ets-v2-searchlink svg { overflow: visible; transition: transform .2s var(--ets-ease); }
.ets-v2-searchlink[aria-expanded="true"] svg { transform: translateY(1px); }
.ets-v2-searchlink__glass, .ets-v2-searchlink__cross path { transform-box: view-box; transform-origin: 12px 12px; transition: opacity .2s var(--ets-ease), transform .2s var(--ets-ease), stroke-dashoffset .2s var(--ets-ease); }
.ets-v2-searchlink__cross path { stroke-dasharray: 16; stroke-dashoffset: 16; opacity: 0; }
.ets-v2-searchlink[aria-expanded="true"] .ets-v2-searchlink__glass { opacity: 0; transform: scale(.55); }
.ets-v2-searchlink[aria-expanded="true"] .ets-v2-searchlink__cross path { stroke-dashoffset: 0; opacity: 1; }
.ets-v2-searchlink[aria-expanded="true"] .ets-v2-searchlink__cross path + path { transition-delay: .04s; }
.ets-v2-searchbar__field { position: relative; display: flex; flex: 1 1 auto; min-width: 0; }
.ets-v2 .ets-v2-searchbar__field .ets-v2-searchbar__input { padding-right: 42px; }
.ets-v2-searchbar__input::-webkit-search-cancel-button, .ets-v2-searchbar__input::-webkit-search-decoration { -webkit-appearance: none; appearance: none; display: none; }
.ets-v2-searchbar__clear { position: absolute; top: 50%; right: 5px; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 6px; background: transparent; color: var(--ets-muted); transform: translateY(-50%); cursor: pointer; }
.ets-v2-searchbar__clear[hidden] { display: none; }
.ets-v2-searchbar__clear:hover { background: var(--ets-sky); color: var(--ets-blue-ink); }
.ets-v2 .ets-v2-searchbar__clear:focus-visible { outline: 2px solid var(--ets-blue); outline-offset: -2px; }
.ets-v2-searchbar__clear svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
@media (max-width: 479px) { .ets-v2 .ets-v2-searchbar__field .ets-v2-searchbar__input { padding-right: 40px; } .ets-v2-searchbar__clear { right: 4px; } }
@media (prefers-reduced-motion: reduce) { .ets-v2-searchlink svg, .ets-v2-searchlink__glass, .ets-v2-searchlink__cross path { transition: none !important; } }

/* ETS-V2-HDR-01 D — ACCEPTED 2026-10-18: desktop header (≥1296 px) on every ETS v2 page: compact logo 44 px, then the
   dark and the light slash. Identical to the D preview. */
@media (min-width: 1296px) {
  body.ets-v2 .ets-v2-brand { margin-right: 0; }
  body.ets-v2 .ets-v2-brand img { height: 44px; }
  body.ets-v2 .ets-v2-header__inner::after { content: ""; order: 1; flex: 0 0 auto; width: 24px; height: 30px; margin: 0 auto 0 6px; pointer-events: none; background: no-repeat center / contain; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 30'%3E%3Cpolygon points='1.00,30 3.40,30 16.00,0 13.60,0' fill='%231c6f9c'/%3E%3Cpolygon points='7.60,30 9.30,30 21.90,0 20.20,0' fill='%238cc6e6'/%3E%3C/svg%3E"); }
}

/* ETS-V2-HOME-01 — featured news card: badge «Главное» left and the date right in one top row (date no longer takes
   its own line). Badge and date keep their look; the row keeps the badge's former 14 px distance to what follows. */
.ets-v2-feature__meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 12px; margin: 0 0 14px; }
.ets-v2-feature__meta .ets-v2-feature__label { margin: 0; }
.ets-v2-feature__meta .ets-v2-feature__date { margin: 0 0 0 auto; text-align: right; white-space: nowrap; }

/* ETS-V2-HOME-03 — compact text news cards on the home page (variant A): no images, a slim header row with the real
   date and an optional photo indicator, then title, short teaser and «Подробнее». Archive and news pages keep .ets-v2-card. */
.ets-v2-news-compact { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 900px) { .ets-v2-news-compact { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; } }
.ets-v2-ncard { position: relative; display: flex; flex-direction: column; height: 100%; background: #fff; border: 1px solid var(--ets-line); border-radius: var(--ets-radius); box-shadow: 0 6px 18px rgba(23, 56, 81, .06); overflow: hidden; transition: transform .16s var(--ets-ease), box-shadow .16s var(--ets-ease), border-color .16s var(--ets-ease); }
.ets-v2-ncard:hover { transform: translateY(-2px); box-shadow: var(--ets-shadow-card); border-color: var(--ets-line-strong); }
.ets-v2-ncard:focus-within { border-color: var(--ets-blue); }
.ets-v2-ncard__head { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; height: 48px; padding: 0 16px 0 22px; background-color: var(--ets-surface-alt); background-image: linear-gradient(rgba(39, 139, 192, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(39, 139, 192, .06) 1px, transparent 1px); background-size: 16px 16px; border-bottom: 1px solid var(--ets-line); }
.ets-v2-ncard__head::before { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 0 2px 2px 0; background: var(--ets-blue); }
.ets-v2-ncard__date { color: var(--ets-navy); font-size: 14px; font-weight: 500; white-space: nowrap; font-variant-numeric: tabular-nums; }
.ets-v2-ncard__photo { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border: 1px solid var(--ets-line-strong); border-radius: 6px; background: #fff; color: var(--ets-blue-ink); }
.ets-v2-ncard__photo svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linejoin: round; }
.ets-v2-ncard__body { display: flex; flex-direction: column; flex: 1 1 auto; gap: 10px; padding: 18px 22px 20px; }
.ets-v2 .ets-v2-ncard__title { font-size: 18px; line-height: 1.38; -webkit-hyphens: none; hyphens: none; overflow-wrap: break-word; }
.ets-v2 .ets-v2-ncard__link { color: var(--ets-navy); text-decoration: none; }
.ets-v2 .ets-v2-ncard__link::after { content: ""; position: absolute; inset: 0; }
.ets-v2 .ets-v2-ncard__link:hover { color: var(--ets-blue-ink); }
.ets-v2 .ets-v2-ncard__link:focus-visible { outline: 0; }
.ets-v2 .ets-v2-ncard__link:focus-visible::after { outline: 3px solid var(--ets-blue); outline-offset: -3px; border-radius: var(--ets-radius); }
.ets-v2-ncard__lead { margin: 0; color: var(--ets-muted); font-size: 15px; line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ets-v2-ncard__more { margin: auto 0 0; padding-top: 4px; color: var(--ets-blue-ink); font-size: 15px; font-weight: 500; }
.ets-v2-ncard:hover .ets-v2-ncard__more .ets-v2-arrow { transform: translateX(4px); }

/* ETS-V2-HOME-03A — the brand grid of the compact news card header fades in from left (almost white, behind the date)
   to right (the former texture at full strength). Only the background layer is masked; the date, the photo indicator and
   the blue mark stay fully opaque. */
.ets-v2-ncard__head { background: #fff; isolation: isolate; }
.ets-v2-ncard__head::after { content: ""; position: absolute; inset: 0; z-index: -1; background-color: var(--ets-surface-alt); background-image: linear-gradient(rgba(39, 139, 192, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(39, 139, 192, .06) 1px, transparent 1px); background-size: 16px 16px; -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, .04) 0%, rgba(0, 0, 0, .12) 22%, rgba(0, 0, 0, .38) 48%, rgba(0, 0, 0, .72) 74%, #000 100%); mask-image: linear-gradient(90deg, rgba(0, 0, 0, .04) 0%, rgba(0, 0, 0, .12) 22%, rgba(0, 0, 0, .38) 48%, rgba(0, 0, 0, .72) 74%, #000 100%); pointer-events: none; }

/* ETS-V2-HOME-03B — home news section starts 24 px closer to the hero on desktop (top padding 72 → 48 px from 1024 px;
   mobile and tablet keep their 48 px). Bottom padding and everything inside the section are unchanged. */
@media (min-width: 1024px) { .ets-v2--home2 .ets-v2-home-news { padding-top: 48px; } }

/* ETS-V2-HOME-05 — home sections navigator: compact horizontal items (number in a circle, title, chevron), two columns
   from 768 px, and the section information dialog (native <dialog>). */
.ets-v2-snav { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 768px) { .ets-v2-snav { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 20px; } }
.ets-v2-snav li { display: flex; min-width: 0; }
.ets-v2 .ets-v2-snav__item { display: flex; align-items: center; gap: 14px; width: 100%; min-height: 64px; padding: 12px 16px 12px 14px; border: 1px solid var(--ets-line); border-radius: 10px; background: #fff; color: var(--ets-navy); text-decoration: none; cursor: pointer; transition: background-color .16s var(--ets-ease), border-color .16s var(--ets-ease), color .16s var(--ets-ease); }
.ets-v2 .ets-v2-snav__item:hover { background: #f2f8fd; border-color: var(--ets-line-strong); }
.ets-v2-snum { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 1.5px solid var(--ets-line-strong); border-radius: 50%; background: #fff; color: var(--ets-blue-ink); font-size: 13px; font-weight: 700; letter-spacing: .02em; font-variant-numeric: tabular-nums; transition: border-color .16s var(--ets-ease), background-color .16s var(--ets-ease), color .16s var(--ets-ease); }
.ets-v2 .ets-v2-snav__item:hover .ets-v2-snum { border-color: var(--ets-blue); background: var(--ets-blue-ink); color: #fff; }
.ets-v2-snav__title { flex: 1 1 auto; min-width: 0; font-size: 16px; font-weight: 600; line-height: 1.35; -webkit-hyphens: none; hyphens: none; overflow-wrap: break-word; }
.ets-v2-snav__chevron { flex: 0 0 auto; width: 20px; height: 20px; fill: none; stroke: var(--ets-line-strong); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: stroke .16s var(--ets-ease), transform .16s var(--ets-ease); }
.ets-v2 .ets-v2-snav__item:hover .ets-v2-snav__chevron { stroke: var(--ets-blue-ink); transform: translateX(3px); }
@media (max-width: 479px) { .ets-v2 .ets-v2-snav__item { gap: 12px; padding: 12px 12px 12px 12px; } .ets-v2-snav__title { font-size: 15px; } }

.ets-v2-sdialog { width: min(640px, calc(100vw - 32px)); max-width: none; max-height: calc(100vh - 48px); max-height: calc(100dvh - 48px); margin: auto; padding: 0; border: 0; border-radius: 14px; background: #fff; color: var(--ets-text); box-shadow: 0 30px 80px rgba(1, 27, 53, .28); overflow: hidden; }
.ets-v2-sdialog::backdrop { background: rgba(1, 27, 53, .48); }
.ets-v2-sdialog[open] { display: flex; flex-direction: column; animation: ets-v2-sdialog-in .18s var(--ets-ease); }
@keyframes ets-v2-sdialog-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.ets-v2-sdialog__inner { position: relative; overflow-y: auto; overscroll-behavior: contain; padding: 28px 32px 26px; border-top: 4px solid var(--ets-blue); }
.ets-v2-sdialog__inner p { margin: 0; }
.ets-v2-sdialog__head { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.ets-v2-snum--lg { width: 42px; height: 42px; font-size: 14px; border-color: var(--ets-blue); }
.ets-v2-sdialog__eyebrow { flex: 1 1 auto; color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.ets-v2-sdialog__close { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin: -6px -10px 0 0; padding: 0; border: 0; border-radius: 8px; background: transparent; color: var(--ets-navy); cursor: pointer; }
.ets-v2-sdialog__close:hover { background: var(--ets-sky); color: var(--ets-blue-ink); }
.ets-v2-sdialog__close svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.ets-v2 .ets-v2-sdialog__title { font-size: 24px; line-height: 1.25; -webkit-hyphens: none; hyphens: none; overflow-wrap: break-word; text-wrap: balance; }
.ets-v2-sdialog__people { display: grid; gap: 12px; margin-top: 22px; }
.ets-v2-sdialog__person { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 16px 18px; border-left: 3px solid var(--ets-blue); border-radius: 0 10px 10px 0; background: var(--ets-surface-alt); }
.ets-v2-sdialog__label { color: var(--ets-muted); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ets-v2-sdialog__name { color: var(--ets-navy); font-size: 18px; font-weight: 700; line-height: 1.3; }
.ets-v2-sdialog__details { color: var(--ets-text); font-size: 15px; line-height: 1.5; }
.ets-v2-sdialog__stats { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; padding: 0; list-style: none; }
.ets-v2-sdialog__stats li { display: inline-flex; align-items: baseline; gap: 6px; padding: 6px 14px; border: 1px solid var(--ets-line); border-radius: 999px; background: #fff; color: var(--ets-text); font-size: 14px; }
.ets-v2-sdialog__stats strong { color: var(--ets-navy); font-size: 17px; }
.ets-v2-sdialog__foot { display: flex; justify-content: flex-end; margin-top: 24px !important; padding-top: 18px; border-top: 1px solid var(--ets-line); }
.ets-v2 .ets-v2-sdialog__more { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border: 1px solid transparent; border-radius: 8px; color: var(--ets-blue-ink); font-weight: 600; text-decoration: none; transition: border-color .16s var(--ets-ease), background-color .16s var(--ets-ease); }
.ets-v2 .ets-v2-sdialog__more:hover { border-color: var(--ets-line-strong); background: #f2f8fd; }
.ets-v2 .ets-v2-sdialog__more:hover .ets-v2-arrow { transform: translateX(3px); }
@media (hover: none) { .ets-v2 .ets-v2-sdialog__more { border-color: var(--ets-line-strong); background: #f2f8fd; } }
@media (max-width: 479px) {
  .ets-v2-sdialog { width: calc(100vw - 24px); max-height: calc(100dvh - 24px); }
  .ets-v2-sdialog__inner { padding: 22px 20px 20px; }
  .ets-v2 .ets-v2-sdialog__title { font-size: 21px; }
  .ets-v2-sdialog__person { padding: 14px 16px; }
  .ets-v2-sdialog__foot { justify-content: stretch; }
  .ets-v2 .ets-v2-sdialog__more { flex: 1 1 auto; justify-content: center; border-color: var(--ets-line-strong); background: #f2f8fd; }
}
html.ets-v2-modal-open { overflow: hidden; }

/* ETS-V2-HOME-06 — «План работы и отчёты»: two document navigation cards (whole card is the link) and, below them, the
   information partner as a separate light horizontal block. The partner styles are self-contained (.ets-v2-infopartner*),
   so its design can change without touching the cards. */
.ets-v2-docnav { display: grid; grid-auto-rows: 1fr; gap: 16px; }
@media (min-width: 768px) { .ets-v2-docnav { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }
.ets-v2 .ets-v2-docnav__card { display: flex; align-items: center; gap: 20px; min-height: 112px; padding: 24px 24px 24px 22px; border: 1px solid var(--ets-line-strong); border-radius: var(--ets-radius-lg); background: #fff; color: var(--ets-navy); text-decoration: none; transition: background-color .18s var(--ets-ease), border-color .18s var(--ets-ease), box-shadow .18s var(--ets-ease); }
.ets-v2 .ets-v2-docnav__card:hover { background: #f2f8fd; border-color: var(--ets-blue); box-shadow: inset 0 0 0 1px var(--ets-blue); }
.ets-v2-docnav__icon { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; background: var(--ets-sky); color: var(--ets-blue-ink); transition: background-color .18s var(--ets-ease), color .18s var(--ets-ease); }
.ets-v2-docnav__icon svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.ets-v2 .ets-v2-docnav__card:hover .ets-v2-docnav__icon { background: var(--ets-blue-ink); color: #fff; }
.ets-v2-docnav__body { flex: 1 1 auto; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ets-v2-docnav__title { color: var(--ets-navy); font-size: 22px; font-weight: 700; line-height: 1.25; }
.ets-v2-docnav__note { color: var(--ets-muted); font-size: 15px; line-height: 1.45; }
.ets-v2-docnav__arrow { flex: 0 0 auto; width: 24px; height: 24px; fill: none; stroke: var(--ets-blue-ink); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .18s var(--ets-ease); }
.ets-v2 .ets-v2-docnav__card:hover .ets-v2-docnav__arrow { transform: translateX(4px); }
.ets-v2 .ets-v2-docnav__card:focus-visible { outline-offset: 2px; border-radius: var(--ets-radius-lg); }
@media (max-width: 479px) {
  .ets-v2 .ets-v2-docnav__card { gap: 14px; min-height: 96px; padding: 18px 16px; }
  .ets-v2-docnav__icon { width: 44px; height: 44px; }
  .ets-v2-docnav__icon svg { width: 22px; height: 22px; }
  .ets-v2-docnav__title { font-size: 19px; }
  .ets-v2-docnav__note { font-size: 14px; }
}

/* Information partner — HOME-06A/06B brand card: light gradient, the same thin blue outline as the document cards, and a
   HERO-WAVE-02 line ribbon (same generator and colours; /assets/images/ets-v2-ndt-wave.svg) that rises from under the
   text and flows right to the button. Phones: no ribbon, everything centred. Only the button is a link. */
.ets-v2-infopartner { position: relative; isolation: isolate; overflow: hidden; display: grid; gap: 16px; justify-items: start; margin-top: 24px; padding: 24px 20px; border: 1px solid var(--ets-line-strong); border-radius: var(--ets-radius-lg); background: linear-gradient(100deg, #fff 0%, #fbfdfe 40%, #edf5fb 100%); transition: border-color .18s var(--ets-ease); }
.ets-v2-infopartner::before { content: ""; position: absolute; inset: 0; z-index: -2; background: linear-gradient(100deg, rgba(234, 244, 251, 0) 25%, #e2eff9 100%); opacity: 0; transition: opacity .18s var(--ets-ease); pointer-events: none; }
.ets-v2-infopartner__wave { position: absolute; z-index: -1; inset: 0; background: url("/assets/images/ets-v2-ndt-wave.svg?v=2") no-repeat 0 0 / 100% 100%; opacity: .85; -webkit-mask-image: linear-gradient(90deg, transparent 0, transparent 19%, #000 34%); mask-image: linear-gradient(90deg, transparent 0, transparent 19%, #000 34%); pointer-events: none; transition: opacity .18s var(--ets-ease); }
.ets-v2-infopartner:hover { border-color: var(--ets-blue); }
.ets-v2-infopartner:hover::before { opacity: 1; }
.ets-v2-infopartner:hover .ets-v2-infopartner__wave { opacity: 1; }
.ets-v2-infopartner__mark { display: block; padding: 8px 12px; border: 1px solid var(--ets-line); border-radius: var(--ets-radius); background: #fff; }
.ets-v2-infopartner__logo { display: block; width: 168px; height: auto; }
.ets-v2-infopartner__body { min-width: 0; }
.ets-v2 .ets-v2-infopartner__title { margin: 0 0 6px; color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .1em; line-height: 1.4; text-transform: uppercase; }
.ets-v2-infopartner__text { margin: 0; color: var(--ets-text); font-size: 16px; line-height: 1.5; }
.ets-v2 .ets-v2-infopartner__link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px; border: 1px solid var(--ets-line-strong); border-radius: var(--ets-radius); background: #fff; color: var(--ets-blue-ink); font-weight: 600; text-decoration: none; white-space: nowrap; transition: border-color .18s var(--ets-ease), background-color .18s var(--ets-ease); }
.ets-v2-infopartner__ext { display: inline-block; transition: transform .18s var(--ets-ease); }
.ets-v2 .ets-v2-infopartner:hover .ets-v2-infopartner__link { border-color: var(--ets-blue); }
.ets-v2 .ets-v2-infopartner__link:hover { border-color: var(--ets-blue); background: #f2f8fd; }
.ets-v2 .ets-v2-infopartner__link:hover .ets-v2-infopartner__ext { transform: translate(2px, -2px); }
@media (max-width: 767px) {
  /* phones: no ribbon, a calm centred card */
  .ets-v2-infopartner { justify-items: center; padding: 28px 20px; text-align: center; }
  .ets-v2-infopartner__wave { display: none; }
}
@media (min-width: 768px) {
  .ets-v2-infopartner { grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 32px; justify-items: stretch; padding: 42px 44px; }
  .ets-v2-infopartner__logo { width: 150px; }
  .ets-v2-infopartner__body { max-width: 440px; }
}
@media (min-width: 1024px) { .ets-v2 .ets-v2-infopartner__text { font-size: 17px; } }
/* tablets and small desktops: the text column is relatively wider, so the ribbon runs a little lower, under the text */
@media (min-width: 768px) and (max-width: 1263px) { .ets-v2-infopartner__wave { top: 16%; bottom: -16%; } }
@media (min-width: 768px) and (max-width: 1023px) { .ets-v2-infopartner { gap: 24px; padding: 32px; } .ets-v2-infopartner__logo { width: 128px; } }

/* ETS-V2-REPORTS-01 — «Ежегодные отчёты о работе совета»: one card per report (whole card is the link to the existing
   document resource), newest first; two columns from 768 px inside the 820 px document column, one column on phones.
   Same language as the home document cards (HOME-06): thin blue outline, icon in a sky circle, arrow. */
.ets-v2-prose--page:empty + .ets-v2-page__reports { margin-top: 0; }
.ets-v2-reports { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 768px) { .ets-v2-reports { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } }
.ets-v2-reports__item { display: flex; min-width: 0; }
.ets-v2 .ets-v2-report { display: flex; align-items: center; gap: 16px; width: 100%; min-height: 88px; padding: 18px 20px 18px 18px; border: 1px solid var(--ets-line-strong); border-radius: var(--ets-radius-lg); background: #fff; color: var(--ets-navy); text-decoration: none; transition: background-color .18s var(--ets-ease), border-color .18s var(--ets-ease), box-shadow .18s var(--ets-ease); }
.ets-v2 .ets-v2-report:hover { background: #f2f8fd; border-color: var(--ets-blue); box-shadow: inset 0 0 0 1px var(--ets-blue); }
.ets-v2 .ets-v2-report:focus-visible { outline-offset: 2px; border-radius: var(--ets-radius-lg); }
.ets-v2-report__icon { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background: var(--ets-sky); color: var(--ets-blue-ink); transition: background-color .18s var(--ets-ease), color .18s var(--ets-ease); }
.ets-v2-report__icon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.ets-v2 .ets-v2-report:hover .ets-v2-report__icon { background: var(--ets-blue-ink); color: #fff; }
.ets-v2-report__body { flex: 1 1 auto; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ets-v2-report__head { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 10px; }
.ets-v2-report__year { color: var(--ets-navy); font-size: 24px; font-weight: 700; line-height: 1.2; font-variant-numeric: tabular-nums; }
.ets-v2-report__year--text { font-size: 18px; }
.ets-v2-report__label { color: var(--ets-muted); font-size: 15px; line-height: 1.4; }
.ets-v2-report__type { flex: 0 0 auto; display: inline-flex; align-items: center; height: 24px; padding: 0 8px; border: 1px solid var(--ets-line); border-radius: 999px; color: var(--ets-blue-ink); font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.ets-v2-report__arrow { flex: 0 0 auto; width: 22px; height: 22px; fill: none; stroke: var(--ets-blue-ink); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .18s var(--ets-ease); }
.ets-v2 .ets-v2-report:hover .ets-v2-report__arrow { transform: translateX(4px); }
@media (max-width: 479px) {
  .ets-v2 .ets-v2-report { gap: 14px; min-height: 80px; padding: 16px; }
  .ets-v2-report__icon { width: 44px; height: 44px; }
  .ets-v2-report__year { font-size: 22px; }
}

/* ETS-V2-NEWS-01 — the news archive uses the home compact cards (.ets-v2-ncard, .ets-v2-news-compact); between 640 and
   899 px the archive shows them in two columns (the home block keeps its own layout). */
@media (min-width: 640px) and (max-width: 899px) { .ets-v2-page--archive .ets-v2-news-compact { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }

/* ETS-V2-NEWS-02A — photo viewer of the news articles (native <dialog>, ets-v2.js): the photo whole and centred on a dark
   backdrop, a large × in the top-right corner kept clear of the photo and of the screen notches. */
.ets-v2 .ets-v2-photos__item a, .ets-v2 .ets-v2-photos__item img[role="button"] { cursor: zoom-in; }
.ets-v2-photos__item img[role="button"]:focus-visible { outline: 3px solid var(--ets-blue); outline-offset: -3px; }
.ets-v2-lightbox { width: 100vw; height: 100vh; height: 100dvh; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background: transparent; overflow: hidden; }
.ets-v2-lightbox[open] { display: flex; align-items: center; justify-content: center; animation: ets-v2-sdialog-in .18s var(--ets-ease); }
.ets-v2-lightbox::backdrop { background: rgba(1, 15, 30, .88); }
.ets-v2 .ets-v2-lightbox__img { display: block; width: auto; height: auto; max-width: calc(100vw - 32px); max-height: calc(100vh - 136px); max-height: calc(100dvh - 136px); object-fit: contain; border-radius: var(--ets-radius); cursor: zoom-out; }
.ets-v2-lightbox__close { position: fixed; top: max(12px, env(safe-area-inset-top)); right: max(12px, env(safe-area-inset-right)); display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; padding: 0; border: 0; border-radius: 50%; background: #fff; color: var(--ets-navy); box-shadow: 0 6px 20px rgba(0, 0, 0, .35); cursor: pointer; }
.ets-v2-lightbox__close svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }
.ets-v2-lightbox__close:hover { background: var(--ets-sky); color: var(--ets-blue-ink); }
.ets-v2-lightbox__close:focus-visible { outline: 3px solid #7cc4ea; outline-offset: 3px; }
@media (min-width: 1024px) { .ets-v2 .ets-v2-lightbox__img { max-width: calc(100vw - 160px); } .ets-v2-lightbox__close { top: 20px; right: 24px; } }

@media (prefers-reduced-motion: reduce) {
  .ets-v2 *, .ets-v2 *::before, .ets-v2 *::after { transition: none !important; animation: none !important; }
}
@media print {
  .ets-v2-topbar, .ets-v2-header, .ets-v2-footer, .ets-v2-skip { display: none !important; }
}

/* ETS-V2-PLAN-01 — «План работы совета» (3353): the 2026 plan from the council document, one table per section.
   Desktop: a 4-column table (№ / мероприятие / сроки / результат), sub-rows of a numbered item indented.
   Below 768 px every row becomes a card: number + name, then «Сроки» and «Ожидаемый результат» with labels. */
.ets-v2-plan__lead { max-width: 820px; margin: 0 0 .5em; font-size: 18px; }
.ets-v2-plan__src { max-width: 820px; margin: 0 0 1.6em; color: var(--ets-muted); font-size: 16px; }
.ets-v2-plan__src a { color: var(--ets-blue-ink); font-weight: 600; text-underline-offset: 3px; }
.ets-v2-plan__toc { max-width: 820px; margin: 0 0 2.4em; padding: 20px 24px; background: var(--ets-surface-alt); border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); }
.ets-v2-prose .ets-v2-plan__toc-title { margin: 0 0 .5em; font-size: 18px; }
.ets-v2-plan__toc ol { margin: 0; padding-left: 1.6em; font-size: 16px; line-height: 1.5; }
.ets-v2-plan__toc li { margin: .3em 0; }
.ets-v2-plan__toc a { color: var(--ets-blue-ink); text-decoration: none; }
.ets-v2-plan__toc a:hover { text-decoration: underline; text-underline-offset: 3px; }
.ets-v2-plan__sec { margin: 0 0 2.6em; scroll-margin-top: calc(var(--ets-header-h) + 16px); }
.ets-v2-prose .ets-v2-plan__title { max-width: 900px; margin: 0 0 .8em; font-size: 22px; line-height: 1.3; text-wrap: balance; }
.ets-v2-plan__kicker { display: block; margin-bottom: 4px; color: var(--ets-blue-ink); font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.ets-v2-plan__empty { margin: 0; padding: 14px 18px; background: var(--ets-surface-alt); border-left: 3px solid var(--ets-line-strong); border-radius: 0 var(--ets-radius) var(--ets-radius) 0; color: var(--ets-muted); }
.ets-v2-prose .ets-v2-plan__table { display: table; width: 100% !important; max-width: 100%; margin: 0; overflow: visible; table-layout: fixed; font-size: 15px; line-height: 1.5; }
.ets-v2-plan__table th:nth-child(1) { width: 56px; }
.ets-v2-plan__table th:nth-child(3) { width: 17%; }
.ets-v2-plan__table th:nth-child(4) { width: 36%; }
.ets-v2-plan__table td p, .ets-v2-plan__table td ul { margin: 0 0 .45em; }
.ets-v2-plan__table td > :last-child { margin-bottom: 0; }
.ets-v2-plan__table td ul { padding-left: 1.15em; }
.ets-v2-plan__table td li { margin: .2em 0; }
.ets-v2-plan__num { color: var(--ets-navy); font-weight: 700; white-space: nowrap; }
.ets-v2-plan__row:not(.ets-v2-plan__row--sub) .ets-v2-plan__name { color: var(--ets-navy); font-weight: 500; }
.ets-v2-plan__row--sub td { background: var(--ets-surface-alt); }
.ets-v2-plan__row--sub .ets-v2-plan__num { background: var(--ets-surface); border-top-color: transparent; }
.ets-v2-plan__row--sub .ets-v2-plan__name { padding-left: 24px; }
.ets-v2-plan__dates { color: var(--ets-navy); }
@media (min-width: 1280px) { .ets-v2-prose .ets-v2-plan__table { font-size: 16px; } .ets-v2-prose .ets-v2-plan__title { font-size: 24px; } }
@media (max-width: 767.98px) {
  .ets-v2-plan__toc { padding: 16px 18px; }
  .ets-v2-prose .ets-v2-plan__title { font-size: 20px; }
  .ets-v2-prose .ets-v2-plan__table, .ets-v2-plan__table tbody, .ets-v2-plan__table tr, .ets-v2-plan__table td { display: block; width: auto !important; }
  .ets-v2-plan__table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
  .ets-v2-plan__table tr { position: relative; margin: 0 0 10px; padding: 14px 16px; background: var(--ets-surface); border: 1px solid var(--ets-line); border-radius: var(--ets-radius); }
  .ets-v2-plan__row--sub { margin-left: 16px !important; background: var(--ets-surface-alt) !important; }
  .ets-v2-plan__table td, .ets-v2-plan__row--sub td { padding: 0; border: 0; background: none; }
  .ets-v2-plan__table td:empty { display: none; }
  .ets-v2-plan__num { position: absolute; top: 14px; left: 16px; }
  .ets-v2-plan__num:not(:empty) + .ets-v2-plan__name { padding-left: 30px; }
  .ets-v2-plan__row--sub .ets-v2-plan__name { padding-left: 0; }
  .ets-v2-plan__dates, .ets-v2-plan__result { margin-top: 10px; }
  .ets-v2-plan__dates::before, .ets-v2-plan__result::before { display: block; margin-bottom: 2px; color: var(--ets-muted); font-size: 12px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
  .ets-v2-plan__dates::before { content: "Сроки"; }
  .ets-v2-plan__result::before { content: "Ожидаемый результат"; }
}

/* ---------- ETS-V2-NEWS-HEAD-01: compact news archive head — title centred in the crumbs row, filters inside the blue band ---------- */
.ets-v2-pagehead--archive { padding: 20px 0 20px; border-bottom: 0; }
.ets-v2-pagehead--archive .ets-v2-container { display: grid; gap: 8px; justify-items: center; }
.ets-v2-pagehead--archive .ets-v2-container > nav { justify-self: start; }
.ets-v2-pagehead--archive .ets-v2-crumbs { margin: 0; }
.ets-v2-pagehead--archive .ets-v2-pagehead__title { margin: 0; text-align: center; }
@media (min-width: 768px) {
  .ets-v2-pagehead--archive { padding: 24px 0 24px; }
  .ets-v2-pagehead--archive .ets-v2-container { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 24px; }
  .ets-v2-pagehead--archive .ets-v2-container > nav { grid-column: 1; grid-row: 1; }
  .ets-v2-pagehead--archive .ets-v2-pagehead__title { grid-column: 2; grid-row: 1; }
}
.ets-v2-pagehead--archive + .ets-v2-page--archive { padding-top: 0; }
.ets-v2-pagehead--archive + .ets-v2-page--archive .ets-v2-filters { position: relative; margin-bottom: 40px; background: #fff; box-shadow: 0 0 0 100vmax var(--ets-surface-alt); clip-path: inset(0 -100vmax -16px -100vmax); }
.ets-v2-pagehead--archive + .ets-v2-page--archive .ets-v2-filters::after { content: ""; position: absolute; left: 50%; bottom: -17px; width: 100vw; height: 1px; margin-left: -50vw; background: var(--ets-line); pointer-events: none; }

/* ---------- ETS-V2-ACTIVITY-01: «Деятельность совета» — direction cards + wide dark block (data: TV etsActivityAreas) ---------- */
.ets-v2-acts { display: grid; gap: 20px; margin: 0; padding: 0; list-style: none; counter-reset: none; }
@media (min-width: 768px) { .ets-v2-acts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; } }
.ets-v2-act { position: relative; display: flex; flex-direction: column; gap: 14px; padding: 24px 22px 22px; background: #fff; border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); box-shadow: var(--ets-shadow-card); }
@media (min-width: 1024px) { .ets-v2-act { padding: 28px 30px 26px; } }
.ets-v2-act::before { content: ""; position: absolute; left: -1px; top: 26px; width: 4px; height: 28px; border-radius: 0 2px 2px 0; background: var(--ets-blue); }
@media (min-width: 1024px) { .ets-v2-act::before { top: 30px; } }
.ets-v2-act__num { color: var(--ets-blue-ink); font-size: 13px; font-weight: 700; letter-spacing: .12em; line-height: 1; font-variant-numeric: tabular-nums; }
.ets-v2 .ets-v2-act__title { margin: 0; color: var(--ets-navy); font-size: 19px; line-height: 1.35; }
@media (min-width: 1024px) { .ets-v2 .ets-v2-act__title { font-size: 20px; } }
.ets-v2-act__list, .ets-v2-actwide__list { margin: 0; padding: 0; list-style: none; }
.ets-v2-act__list li, .ets-v2-actwide__list li { position: relative; margin: 0; padding: 0 0 0 20px; line-height: 1.55; }
.ets-v2-act__list li + li, .ets-v2-actwide__list li + li { margin-top: 8px; }
.ets-v2-act__list li { color: var(--ets-text); font-size: 15.5px; }
.ets-v2-act__list li::before, .ets-v2-actwide__list li::before { content: ""; position: absolute; left: 2px; top: .62em; width: 7px; height: 7px; border-radius: 50%; background: var(--ets-blue); }
.ets-v2-actwide { margin-top: 28px; }
@media (min-width: 1024px) { .ets-v2-actwide { margin-top: 32px; } }
.ets-v2-actwide__inner { position: relative; display: grid; gap: 24px; align-items: end; overflow: hidden; padding: 32px 24px; border-radius: 16px; background: linear-gradient(120deg, #011b35 0%, #0f3558 60%, #1c6f9c 140%); color: #c9d8e6; isolation: isolate; }
.ets-v2-actwide__inner::before { content: ""; position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px); background-size: 44px 44px; -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 70%); mask-image: linear-gradient(90deg, transparent 0%, #000 70%); }
@media (min-width: 1024px) { .ets-v2-actwide__inner { grid-template-columns: minmax(0, 1fr) auto; gap: 48px; padding: 44px 48px; } }
.ets-v2 .ets-v2-actwide__title { margin: 0 0 18px; max-width: 760px; color: #fff; font-size: 23px; line-height: 1.25; }
@media (min-width: 768px) { .ets-v2 .ets-v2-actwide__title { font-size: 28px; } }
.ets-v2-actwide__list { max-width: 820px; }
.ets-v2-actwide__list li { color: #c9d8e6; font-size: 16px; }
.ets-v2-actwide__list li::before { background: #7cc4ea; }
.ets-v2-actwide__actions { display: flex; }
.ets-v2-actwide :focus-visible { outline-color: #7cc4ea; }
/* ETS-V2-ACTIVITY-01A: light hover on the direction cards — lift 3 px, deeper shadow, accent bar grows (same easing as news cards) */
.ets-v2-act { transition: transform .2s var(--ets-ease), box-shadow .2s var(--ets-ease), border-color .2s var(--ets-ease); }
.ets-v2-act::before { transition: height .2s var(--ets-ease); }
@media (hover: hover) {
  .ets-v2-act:hover { transform: translateY(-3px); box-shadow: var(--ets-shadow-hover); border-color: var(--ets-line-strong); }
  .ets-v2-act:hover::before { height: 44px; }
}
@media (prefers-reduced-motion: reduce) { .ets-v2-act, .ets-v2-act::before { transition: none; } .ets-v2-act:hover { transform: none; } }

/* ---------- ETS-V2-ABOUT-01: «О совете» — goal accent, task tiles, how the council works, next-step cards (data: TVs etsAbout*) ---------- */
.ets-v2-aboutgoal { position: relative; margin: 0; padding: 28px 24px 30px 28px; border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); background: linear-gradient(135deg, var(--ets-sky) 0%, #fff 75%); overflow: hidden; }
.ets-v2-aboutgoal::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; background: var(--ets-blue); }
@media (min-width: 1024px) { .ets-v2-aboutgoal { padding: 40px 48px 42px 52px; } }
.ets-v2-aboutgoal__label { margin: 0 0 12px; color: var(--ets-blue-ink); font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.ets-v2-aboutgoal__text { margin: 0; max-width: 980px; color: var(--ets-navy); font-size: 21px; font-weight: 600; line-height: 1.45; }
@media (min-width: 768px) { .ets-v2-aboutgoal__text { font-size: 26px; line-height: 1.4; } }
.ets-v2-aboutsec { margin-top: 48px; }
@media (min-width: 1024px) { .ets-v2-aboutsec { margin-top: 64px; } }
.ets-v2 .ets-v2-aboutsec__title { margin: 0 0 20px; color: var(--ets-navy); font-size: 26px; line-height: 1.2; }
@media (min-width: 768px) { .ets-v2 .ets-v2-aboutsec__title { margin-bottom: 24px; font-size: 32px; } }
.ets-v2-aboutsec__lead { margin: -8px 0 20px; color: var(--ets-muted); font-size: 17px; }
.ets-v2-tasks { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .ets-v2-tasks { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }
@media (min-width: 1024px) { .ets-v2-tasks { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; } }
.ets-v2-task { position: relative; display: flex; flex-direction: column; gap: 12px; padding: 22px 22px 24px; background: #fff; border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); box-shadow: var(--ets-shadow-card); transition: transform .2s var(--ets-ease), box-shadow .2s var(--ets-ease), border-color .2s var(--ets-ease); }
.ets-v2-task::before { content: ""; position: absolute; left: -1px; top: 22px; width: 4px; height: 24px; border-radius: 0 2px 2px 0; background: var(--ets-blue); transition: height .2s var(--ets-ease); }
@media (hover: hover) { .ets-v2-task:hover { transform: translateY(-3px); box-shadow: var(--ets-shadow-hover); border-color: var(--ets-line-strong); } .ets-v2-task:hover::before { height: 40px; } }
.ets-v2-task__num { color: var(--ets-blue-ink); font-size: 13px; font-weight: 700; letter-spacing: .12em; line-height: 24px; font-variant-numeric: tabular-nums; }
.ets-v2-task__text { margin: 0; color: var(--ets-navy); font-size: 16.5px; font-weight: 500; line-height: 1.5; }
.ets-v2-ways { display: grid; gap: 0 48px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 1024px) { .ets-v2-ways { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.ets-v2-ways li { position: relative; margin: 0; padding: 16px 0 16px 36px; border-top: 1px solid var(--ets-line); color: var(--ets-text); line-height: 1.6; }
.ets-v2-ways li::before { content: ""; position: absolute; left: 0; top: 19px; width: 20px; height: 20px; border-radius: 50%; background: var(--ets-sky); box-shadow: inset 0 0 0 1px rgba(39, 139, 192, .35); }
.ets-v2-ways li::after { content: ""; position: absolute; left: 6px; top: 24px; width: 8px; height: 5px; border-left: 2px solid var(--ets-blue-ink); border-bottom: 2px solid var(--ets-blue-ink); transform: rotate(-45deg); }
.ets-v2-aboutlinks { margin-top: 56px; }
@media (min-width: 1024px) { .ets-v2-aboutlinks { margin-top: 72px; } }
.ets-v2-aboutlinks ul { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 768px) { .ets-v2-aboutlinks ul { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; } }
.ets-v2 .ets-v2-aboutlink__a { display: flex; flex-direction: column; gap: 8px; height: 100%; padding: 22px 24px 24px; border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); background: var(--ets-surface-alt); color: var(--ets-text); text-decoration: none; transition: transform .2s var(--ets-ease), box-shadow .2s var(--ets-ease), border-color .2s var(--ets-ease), background-color .2s var(--ets-ease); }
@media (hover: hover) { .ets-v2 .ets-v2-aboutlink__a:hover { transform: translateY(-3px); background: #fff; box-shadow: var(--ets-shadow-hover); border-color: var(--ets-line-strong); } }
.ets-v2-aboutlink__title { color: var(--ets-navy); font-size: 19px; font-weight: 700; line-height: 1.3; }
.ets-v2 .ets-v2-aboutlink__a:hover .ets-v2-aboutlink__title { color: var(--ets-blue-ink); }
.ets-v2-aboutlink__text { color: var(--ets-muted); font-size: 15px; line-height: 1.5; }
@media (prefers-reduced-motion: reduce) { .ets-v2-task, .ets-v2-task::before, .ets-v2 .ets-v2-aboutlink__a { transition: none; } .ets-v2-task:hover, .ets-v2 .ets-v2-aboutlink__a:hover { transform: none; } }

/* ---------- ETS-V2-GOAL-01: «Основная цель ЭТС РАВВ» opens the «Основные направления работы» section on the home page ---------- */
.ets-v2-goal { max-width: 1000px; margin: 0 0 44px; }
@media (min-width: 1024px) { .ets-v2-goal { margin-bottom: 64px; } }
.ets-v2-goal__label { display: flex; align-items: center; gap: 12px; margin: 0 0 14px; color: var(--ets-blue-ink); font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.ets-v2-goal__label::before { content: ""; flex: none; width: 28px; height: 3px; border-radius: 2px; background: var(--ets-blue); }
.ets-v2-goal__text { margin: 0; color: var(--ets-navy); font-size: 24px; font-weight: 600; line-height: 1.35; letter-spacing: -.01em; text-wrap: balance; }
@media (min-width: 768px) { .ets-v2-goal__text { font-size: 30px; } }
@media (min-width: 1024px) { .ets-v2-goal__text { font-size: 34px; line-height: 1.3; } }
.ets-v2-aboutsec:first-child { margin-top: 0; }
/* ETS-V2-GOAL-01A (Owner 2026-10-19): «О совете» lead across the whole container, section titles a step smaller;
   home goal = full-width card with a thin rounded border and the tile hover, smaller text. */
.ets-v2--about .ets-v2-pagehead__lead { max-width: none; }
.ets-v2 .ets-v2-aboutsec__title { font-size: 22px; }
@media (min-width: 768px) { .ets-v2 .ets-v2-aboutsec__title { font-size: 28px; } }
.ets-v2-goal { position: relative; max-width: none; margin: 0 0 40px; padding: 26px 24px 28px; background: #fff; border: 1px solid var(--ets-line); border-radius: var(--ets-radius-lg); box-shadow: var(--ets-shadow-card); transition: transform .2s var(--ets-ease), box-shadow .2s var(--ets-ease), border-color .2s var(--ets-ease); }
@media (min-width: 1024px) { .ets-v2-goal { margin-bottom: 56px; padding: 32px 40px 34px; } }
@media (hover: hover) { .ets-v2-goal:hover { transform: translateY(-3px); box-shadow: var(--ets-shadow-hover); border-color: var(--ets-line-strong); } }
.ets-v2-goal__text { font-size: 20px; line-height: 1.45; text-wrap: pretty; }
@media (min-width: 768px) { .ets-v2-goal__text { font-size: 23px; } }
@media (min-width: 1024px) { .ets-v2-goal__text { font-size: 25px; line-height: 1.4; } }
@media (prefers-reduced-motion: reduce) { .ets-v2-goal { transition: none; } .ets-v2-goal:hover { transform: none; } }
/* ETS-V2-HOME-07 (Owner 2026-10-19): on desktop everything below the top block moves up 56 px — the news heading starts at the
   lower edge of the top block. The top block and its background drawing keep their size and position: the news section only
   overlaps the empty bottom padding of the hero (transparent, above the drawing). */
@media (min-width: 1024px) { .ets-v2--home2 .ets-v2-home-news { position: relative; z-index: 1; margin-top: -56px; } }
