/* case-restore.css – 11.11.2026.
   Стили кейсов 2.0 (case-row, case-media, case-dir, case-fonts, case-palette, case-finish, case-cta и др.)
   восстановлены после потери живого main.css?ver=7.7 при взломе Beget 02.11.2026.
   Источник размеров: замеры живых страниц 27.09.2026 (clients/vlad-trak/case-publish/qa/audit/metrics.json,
   полностраничные скриншоты РяДом.МЫ и ВЛАД-ТРАК) и эталон кейса (etalon-keysa-portfolio.md §5, §6, §8.1).
   1rem = 10px на 1920 (тема масштабирует от ширины окна), на телефоне 1rem = ширина / 57.6.
   Если найдётся оригинальный main.css – этот файл снимается целиком. */

/* 2026-11-11: шрифты кейсов локально (были fonts.googleapis.com). Подмножества cyrillic, latin, latin-ext. */
@font-face {
  font-family: 'Geologica';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/geologica-500-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Geologica';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/geologica-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Geologica';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/geologica-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/onest-300-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/onest-300-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/onest-300-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/onest-500-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/onest-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/onest-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/roboto-400-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/roboto-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/roboto-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/roboto-500-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/roboto-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/roboto-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Tenor Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/tenor-sans-400-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Tenor Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/tenor-sans-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Tenor Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/tenor-sans-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Ubuntu Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/ubuntu-sans-400-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Ubuntu Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/ubuntu-sans-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Ubuntu Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/ubuntu-sans-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Ubuntu Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/ubuntu-sans-500-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Ubuntu Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/ubuntu-sans-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Ubuntu Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/wp-content/themes/peremena/assets/fonts/case/ubuntu-sans-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- первый экран кейса: кадр 1800×730 во всю сетку ---------- */
.spec-hero_boxed { height: auto; max-height: none; margin-bottom: 3rem; }
.spec-hero_boxed .spec-hero__container--full {
  flex-grow: 0;
  height: 73rem;
  padding: 0;
  background: none;
  animation: none;
  border-radius: 4rem;
}
.spec-hero_boxed .spec-hero__container--full .spec-hero__img_pc {
  width: 100%;
  height: 100%;
  max-height: none;
  border-radius: 4rem;
}
.spec-hero_boxed .spec-hero__img img { object-fit: cover; }

/* ---------- общие: поля внутри ширины (в теме content-box) ---------- */
.spec-rich [class*="case-"],
.spec-rich [class*="case-"] > figure,
.spec-rich .text-content__container_fit > figure { box-sizing: border-box; }

/* ---------- общие: отступы между блоками ---------- */
.spec-rich .case-gap-30 { margin-bottom: 3rem; }
.spec-rich .case-gap-40 { margin-bottom: 4rem; }

/* ---------- типографика блоков кейса ---------- */
.spec-rich .case-row h1 {
  margin: 0;
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 6rem;
  line-height: 6rem;
  text-transform: none;
}
.spec-rich .case-row h2,
.spec-rich .case-cta__title h2 {
  margin: 0;
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 5rem;
  line-height: 5rem;
  text-transform: lowercase;
}
.spec-rich .case-row p,
.spec-rich .case-dir__text p,
.spec-rich .case-variant__text p,
.spec-rich .case-cta__box p,
.spec-rich .case-row__body li,
.spec-rich .case-dir__text li {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2rem;
  line-height: 3rem;
}
.spec-rich .case-row p,
.spec-rich .case-dir__text p,
.spec-rich .case-variant__text p,
.spec-rich .case-cta__box p { margin: 0 0 1rem; }
.spec-rich .case-row p:last-child,
.spec-rich .case-dir__text p:last-child,
.spec-rich .case-variant__text p:last-child,
.spec-rich .case-cta__box p:last-of-type { margin-bottom: 0; }
.spec-rich .case-row__body h4 { margin: 0 0 2rem; }

/* ---------- ряд: заголовок слева, текст справа ---------- */
.spec-rich .case-row {
  display: flex;
  align-items: stretch;
  gap: 3rem;
}
.spec-rich .case-row__side,
.spec-rich .case-row__body {
  position: relative;
  background-color: var(--white);
  border-radius: 4rem;
  padding: 5.2rem 6rem;
}
.spec-rich .case-row__side {
  flex: 0 0 52.6rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 4rem;
}
.spec-rich .case-row__body { flex: 1 1 0; min-width: 0; }
.spec-rich .case-row_lead .case-row__side { flex-basis: 56.7rem; }

/* заголовочный ряд без текста (CRM ВЛАД-ТРАК) – заголовок раздела прямо на фоне */
.spec-rich .case-row_plain .case-row__body:empty { display: none; }
.spec-rich .case-row_plain:not(.case-row_head) .case-row__side {
  flex: 1 1 auto;
  padding: 0;
  background: none;
  border-radius: 0;
}

/* теги услуг под H1 */
.spec-rich .case-tags {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.spec-rich .case-tags > span,
.spec-rich .case-tags > a {
  display: block;
  padding: 0.9rem 2rem;
  border-radius: 1rem;
  background-color: #f3f3f3;
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 2.2rem;
  text-align: center;
  text-transform: lowercase;
  text-decoration: none;
  color: var(--black);
}
.spec-rich .case-tags > a:hover { background-color: #e9e9e9; }

/* текстовые карточки в рядах text-content (CRM ВЛАД-ТРАК) */
.spec-rich .text-content__block.case-row__body { flex: 1 1 calc(25% - 1.5rem); }
.spec-rich .text-content__block_4.case-row__body { flex: 0 0 calc(33.333% - 1.5rem); min-width: 0; }
.spec-rich .text-content__block_6.case-row__body { flex: 1 1 calc(50% - 1rem); min-width: 0; }

/* ---------- кадр во всю ширину ---------- */
.spec-rich .case-media {
  height: var(--mh, auto);
  border-radius: 4rem;
  overflow: hidden;
}
.spec-rich .case-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.spec-rich .case-media_contain img { object-fit: contain; }

/* ---------- ряд кадров: ширина пропорциональна --k, высоты совпадают ---------- */
.spec-rich .text-content__container_fit {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  gap: 3rem;
}
.spec-rich .text-content__container_fit > figure {
  flex: var(--k, 1) 1 0;
  min-width: 0;
  margin: 0;
  border-radius: 4rem;
  overflow: hidden;
  padding: 0;
  background: none;
}
.spec-rich .text-content__container_fit > figure img {
  display: block;
  width: 100%;
  height: auto;
}

/* ---------- элементы фирменного стиля в ряд фиксированной высоты ---------- */
.spec-rich .case-elements {
  display: flex;
  gap: 3rem;
  height: var(--mh, auto);
}
.spec-rich .case-elements > figure {
  flex: var(--k, 1) 1 0;
  min-width: 0;
  margin: 0;
  border-radius: 4rem;
  overflow: hidden;
}
.spec-rich .case-elements > figure img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* ---------- направление / вариант: текст и кадр пополам ---------- */
.spec-rich .case-dir,
.spec-rich .case-variant {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  gap: 3rem;
}
.spec-rich .case-dir_flip > figure,
.spec-rich .case-variant_reverse > figure { order: -1; }
.spec-rich .case-dir__text,
.spec-rich .case-variant__text {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  background-color: var(--white);
  border-radius: 4rem;
  padding: 5.2rem 6rem;
}
.spec-rich .case-dir > figure,
.spec-rich .case-variant > figure {
  aspect-ratio: var(--k, auto);
  width: 100%;
  max-width: 100%;
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
  border-radius: 4rem;
  overflow: hidden;
  background-color: #e9e9e9;
}
.spec-rich .case-dir > figure img,
.spec-rich .case-variant > figure img { display: block; width: 100%; height: 100%; object-fit: cover; }
.spec-rich .case-dir__text h2,
.spec-rich .case-dir__text h3,
.spec-rich .case-variant__text h2,
.spec-rich .case-variant__text h3 {
  margin: 0 0 3rem;
  padding-right: 6rem;
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 3rem;
  line-height: 3.6rem;
  text-transform: lowercase;
}
.spec-rich .case-dir__num,
.spec-rich .case-variant__num {
  position: absolute;
  top: 5.2rem;
  right: 6rem;
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2rem;
  line-height: 3rem;
  color: var(--accent-cyan);
}
.spec-rich .case-dir__text ul { margin: 0 0 1rem; }

/* ---------- шрифты ---------- */
.spec-rich .case-fonts {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  gap: 2.25rem;
}
.spec-rich .case-fonts__item {
  flex: 1 1 0;
  min-width: 0;
  min-height: 49.7rem;
  padding: 5.2rem 4rem;
  border-radius: 4rem;
  background-color: var(--white);
  color: var(--black);
}
.spec-rich .case-fonts__item_accent { padding: 0; overflow: hidden; }
.spec-rich .case-fonts__item_accent img { display: block; width: 100%; height: 100%; object-fit: cover; }
.spec-rich .case-fonts__name {
  margin-bottom: 2.4rem;
  font-size: 3.6rem;
  line-height: 4.4rem;
}
.spec-rich .case-fonts__sample {
  font-size: 3.6rem;
  line-height: 4.6rem;
  overflow-wrap: anywhere;
}
.spec-rich .case-fonts__sample:not(:last-child) { margin-bottom: 0.4rem; }
.spec-rich .case-fonts_wide .case-fonts__item { min-height: 0; padding: 5.2rem 6rem; }
.spec-rich .case-fonts_wide .case-fonts__sample { font-family: "Ubuntu Sans", "Ubuntu", var(--font-family); font-weight: 400; }
.spec-rich .case-fonts_wide .case-fonts__sample:first-child { margin-bottom: 2.4rem; font-weight: 500; font-size: 6rem; line-height: 6.6rem; }
.spec-rich .case-fonts__item_tenor { font-family: "Tenor Sans", var(--font-family); font-weight: 400; }
.spec-rich .case-fonts__item_onest-light { font-family: "Onest", var(--font-family); font-weight: 300; }
.spec-rich .case-fonts__item_onest-medium { font-family: "Onest", var(--font-family); font-weight: 500; }
.spec-rich .case-fonts__item_roboto { font-family: "Roboto", var(--font-family); font-weight: 500; }

/* ---------- палитра ---------- */
.spec-rich .case-palette {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  gap: 3rem;
}
.spec-rich .case-palette__item {
  flex: 1 1 0;
  min-width: 0;
  height: var(--ph, 60.3rem);
  padding: 4rem;
  border-radius: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: #000;
  color: var(--white);
}
.spec-rich .case-palette__item_light {
  background-color: var(--white);
  color: var(--black);
  border: 1px solid #e3e3e3;
}
.spec-rich .case-palette__name {
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 5rem;
  line-height: 5.4rem;
}
.spec-rich .case-palette__codes {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 4.8rem;
}

/* ---------- завершающая плашка ---------- */
.spec-rich .case-finish {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3rem;
  min-height: 13.4rem;
  padding: 3rem 6rem;
  border-radius: 4rem;
  background-color: var(--white);
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2rem;
  line-height: 3rem;
}
.spec-rich .case-finish__tag {
  color: #8c8c8c;
  border-bottom: 1px solid #d6d6d6;
}
.spec-rich .case-finish a {
  color: var(--black);
  text-decoration: none;
  border-bottom: 1px solid var(--black);
}

/* ---------- блок предложения ---------- */
.spec-rich .case-cta {
  display: flex;
  align-items: stretch;
  gap: 3rem;
}
.spec-rich .case-cta__left {
  flex: 0 0 88.5rem;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.spec-rich .case-cta__title,
.spec-rich .case-cta__box {
  padding: 5.9rem 6rem;
  border-radius: 4rem;
  background-color: var(--white);
}
.spec-rich .case-cta__title h2 { font-size: 3.6rem; line-height: 3.6rem; }
.spec-rich .case-cta__box { padding: 6rem; }
.spec-rich .case-cta__terms {
  margin-top: 3rem;
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2rem;
  line-height: 3.5rem;
}
.spec-rich .case-cta__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 6rem;
  margin-top: 3.5rem;
  border-radius: 1rem;
  background-color: var(--accent-cyan);
  color: var(--white);
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  text-transform: lowercase;
  text-decoration: none;
  transition: opacity 0.2s;
}
.spec-rich .case-cta__btn:hover { opacity: 0.85; color: var(--white); }
.spec-rich .case-cta__media {
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
  border-radius: 4rem;
  overflow: hidden;
}
.spec-rich .case-cta__media img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* ================= телефон ================= */
@media (max-width: 600px) {
  .spec-hero_boxed .spec-hero__container--full { height: 60rem; border-radius: 3.5rem; }
  .spec-hero_boxed .spec-hero__container--full .spec-hero__img_pc { border-radius: 3.5rem; }

  /* заголовок кейса 46, заголовки разделов 30, текст 20/30 (макет 576) */

  .spec-rich .case-row h2,
  .spec-rich .case-cta__title h2,
  .spec-rich .case-dir__text h2,
  .spec-rich .case-dir__text h3,
  .spec-rich .case-variant__text h2,
  .spec-rich .case-variant__text h3 { font-size: 3rem; line-height: 3.6rem; }
  .spec-rich .case-row.case-row_head h1,
  .spec-rich .case-row.case-row_head h2 { font-size: 4.6rem; line-height: 5rem; }

  /* на телефоне панель – сам ряд: заголовок и текст в одной белой карточке */
  .spec-rich .case-row {
    display: block;
    padding: 4rem;
    border-radius: 3.5rem;
    background-color: var(--white);
  }
  .spec-rich .case-row__side,
  .spec-rich .case-row__body {
    padding: 0;
    border-radius: 0;
    background: none;
  }
  .spec-rich .case-row__side { display: block; }
  .spec-rich .case-row__side + .case-row__body:not(:empty) { margin-top: 3rem; }
  .spec-rich .case-row_plain .case-row__body:empty { display: none; }
  .spec-rich .case-tags { margin-top: 2.5rem; gap: 1.5rem; }
  .spec-rich .case-tags > span,
  .spec-rich .case-tags > a { font-size: 2rem; line-height: 2.4rem; padding: 1.2rem 2rem; }

  .spec-rich .text-content__block.case-row__body,
  .spec-rich .text-content__block_4.case-row__body,
  .spec-rich .text-content__block_6.case-row__body { flex: 1 1 100%; }

  .spec-rich .case-media { border-radius: 3.5rem; }

  .spec-rich .text-content__container_fit { gap: 2rem; flex-direction: row; }
  .spec-rich .text-content__container_fit > figure,
  .spec-rich .case-elements > figure { border-radius: 3.5rem; }
  .spec-rich .case-elements { height: auto; flex-wrap: wrap; gap: 2rem; }
  .spec-rich .case-elements > figure { flex: 1 1 100%; }
  .spec-rich .case-elements > figure img { height: auto; }

  .spec-rich .case-dir,
  .spec-rich .case-variant { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .spec-rich .case-dir_flip > figure,
  .spec-rich .case-variant_reverse > figure { order: 0; }
  .spec-rich .case-dir__text,
  .spec-rich .case-variant__text { padding: 4rem; border-radius: 3.5rem; }
  .spec-rich .case-dir > figure,
  .spec-rich .case-variant > figure { border-radius: 3.5rem; aspect-ratio: auto; }
  .spec-rich .case-dir > figure img,
  .spec-rich .case-variant > figure img { height: auto; }
  .spec-rich .case-dir__num,
  .spec-rich .case-variant__num { top: 4rem; right: 4rem; }

  .spec-rich .case-fonts,
  .spec-rich .case-palette { grid-auto-flow: row; gap: 2rem; }
  .spec-rich .case-fonts__item { min-height: 0; padding: 4rem; border-radius: 3.5rem; }
  .spec-rich .case-fonts__name,
  .spec-rich .case-fonts__sample { font-size: 3rem; line-height: 4rem; }
  .spec-rich .case-fonts_wide .case-fonts__sample:first-child { font-size: 4.6rem; line-height: 5rem; }
  .spec-rich .case-fonts__item_accent { padding: 0; }
  .spec-rich .case-palette__item { height: auto; min-height: 26rem; border-radius: 3.5rem; }
  .spec-rich .case-palette__name { font-size: 4rem; line-height: 4.4rem; margin-bottom: 4rem; }
  .spec-rich .case-palette__codes { font-size: 2rem; line-height: 3.4rem; }

  .spec-rich .case-finish {
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
    min-height: 0;
    padding: 4rem;
    border-radius: 3.5rem;
  }

  .spec-rich .case-cta { flex-direction: column; gap: 2rem; }
  .spec-rich .case-cta__left { flex-basis: auto; gap: 2rem; }
  .spec-rich .case-cta__title,
  .spec-rich .case-cta__box { padding: 4rem; border-radius: 3.5rem; }
  .spec-rich .case-cta__media { border-radius: 3.5rem; }
  .spec-rich .case-cta__media img { height: auto; }
}

/* ---------- Танцевальный Мир (макет Ефима): шрифты на фирменном синем, названия цветов гарнитурой Tenor по центру ---------- */
.spec-rich .case-fonts__item_tenor,
.spec-rich .case-fonts__item_onest-light,
.spec-rich .case-fonts__item_onest-medium { background-color: #0C2344; color: #F5F5F3; }
.spec-desctop:has(.case-fonts__item_tenor) .case-palette__item,
.spec-mobile:has(.case-fonts__item_tenor) .case-palette__item { align-items: center; text-align: center; }
.spec-desctop:has(.case-fonts__item_tenor) .case-palette__item { height: 54.5rem; }
.spec-desctop:has(.case-fonts__item_tenor) .case-palette__name,
.spec-mobile:has(.case-fonts__item_tenor) .case-palette__name {
  font-family: "Tenor Sans", var(--font-family);
  font-weight: 400;
  text-transform: uppercase;
  font-size: 4rem;
  line-height: 4.4rem;
}
.spec-desctop:has(.case-fonts__item_tenor) .case-palette__codes { font-size: 1.6rem; line-height: 2.4rem; }
