/* ==========================================================================
   akroshecka.com — главная (верхняя точка воронки Google → Telegram).
   Визуальный стиль сохранён от лендинга kroshka.space: шрифт Unbounded, фон #f7f6f6,
   акцент #929226, сетка 1200px, брейкпоинты 1200 / 960 / 640 / 480.
   ========================================================================== */

/* ---------- Базовые правила ---------- */
*, *::before, *::after { box-sizing: content-box; }

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
  margin: 0;
  background: #f7f6f6;
  -webkit-font-smoothing: antialiased;
}
body.is-locked { overflow: hidden; }

div, span, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, code, img, b, u, i, center, address, table, tr, th, td, video {
  margin: 0; padding: 0; border: 0;
}
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }
address { font-style: normal; }
a { color: #343333; text-decoration: none; }
ul { padding-left: 20px; margin-top: 0; margin-bottom: 10px; }
strong { font-weight: 700; }
img { border: 0; }

/* фокус с клавиатуры (в оригинале был погашен) */
a:focus-visible, button:focus-visible, [role="button"]:focus-visible {
  outline: 2px solid #000; outline-offset: 3px;
}

.skip-link { position: absolute; left: -9999px; top: 0; background: #929226; color: #fff; padding: 10px 16px; z-index: 100000; }
.skip-link:focus { left: 12px; top: 12px; }

/* ---------- Сетка ---------- */
.t-container { margin-left: auto; margin-right: auto; width: 100%; max-width: 1200px; padding: 0; }
.t-container::before, .t-container::after { display: table; content: " "; width: 0; }
.t-container::after { clear: both; }
.t-container_flex { display: flex; }
.t-row { margin: 0; }
.t-col { display: inline; float: left; margin-left: 20px; margin-right: 20px; width: 100%; }
.t-col_4 { max-width: 360px; }
.t-col_8 { max-width: 760px; }
.t-col_10 { max-width: 960px; }
.t-col_12 { max-width: 1160px; }
.t-prefix_1 { padding-left: 100px; }
.t-prefix_4 { padding-left: 400px; }
.t-width { width: 100%; }
.t-width_6 { max-width: 560px; }
.t-cell { display: table-cell; vertical-align: middle; height: 100%; margin-left: 0; margin-right: 0; }
.t-valign_top { vertical-align: top; }
.t-align_center { text-align: center; }
.t-margin_auto { margin-left: auto; margin-right: auto; }

@media screen and (max-width: 1200px) {
  .t-container { max-width: 960px; }
  .t-col { margin-left: 10px; margin-right: 10px; }
  .t-col_4 { max-width: 300px; }
  .t-col_8 { max-width: 620px; }
  .t-col_10 { max-width: 780px; }
  .t-col_12 { max-width: 940px; }
  .t-prefix_1 { padding-left: 80px; }
  .t-prefix_4 { padding-left: 320px; }
  .t-width_6 { max-width: 460px; }
}
@media screen and (max-width: 960px) {
  .t-container { max-width: 640px; }
  .t-container_flex { display: block; }
  .t-col { display: block; float: none; padding-left: 20px; padding-right: 20px; margin: 0; width: 100%; max-width: 100%; box-sizing: border-box; }
  .t-col_4, .t-col_8, .t-col_10, .t-col_12 { width: 100%; max-width: 100%; }
}

/* ---------- Отступы записей ---------- */
.t-rec { position: relative; background-color: #f7f6f6; }
.t-rec_pt_45 { padding-top: 45px; }
.t-rec_pt_60 { padding-top: 60px; }
.t-rec_pb_15 { padding-bottom: 15px; }
.t-rec_pb_45 { padding-bottom: 45px; }
.t-rec_pb_60 { padding-bottom: 60px; }

/* ---------- Типографика ---------- */
.t-title { font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; color: #232222; }
.t-title_xs { font-size: 42px; line-height: 1.23; }
.t-name { font-family: 'Unbounded', Arial, sans-serif; font-weight: 400; color: #232222; }
.t-name_lg { font-size: 20px; line-height: 1.35; }
.t-descr { font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; color: #414c3c; }
.t-descr_xs { font-size: 14px; line-height: 1.55; }
.t-text { font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; color: #414c3c; }
.t-text_md { font-size: 18px; line-height: 1.55; }
.t-heading { font-family: 'Unbounded', Arial, sans-serif; font-weight: 400; color: #232222; }
.t-heading_md { font-size: 28px; line-height: 1.17; }
.t-text-impact { font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; color: #414c3c; }
.t-text-impact_lg { font-size: 42px; line-height: 1.23; }

@media screen and (max-width: 1200px) {
  .t-title_xs { font-size: 38px; }
  .t-name_lg { font-size: 18px; }
  .t-descr_xs { font-size: 12px; }
  .t-text_md { font-size: 16px; }
  .t-heading_md { font-size: 26px; }
}
@media screen and (max-width: 640px) {
  .t-title_xs { font-size: 30px; }
  .t-name_lg { font-size: 16px; }
  .t-descr_xs { font-size: 12px; line-height: 1.5; }
  .t-text_md { font-size: 14px; line-height: 1.45; }
  .t-heading_md { font-size: 22px; }
  .t-text-impact_lg { font-size: 28px; }
}

/* короткие абзацы и заголовки: без «висячих» слов в последней строке */
.hero__sub, .problem__text, .cta-block__lead, .final__text, .teaser__title, .sec-title, .method__title { text-wrap: balance; }

/* заголовок раздела (H2 в стиле сайта) */
.sec-title {
  margin: 0 auto; max-width: 900px; text-align: center; color: #232222;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; font-size: 30px; line-height: 1.3;
}
@media screen and (max-width: 640px) { .sec-title { font-size: 21px; } }

/* ==========================================================================
   Кнопка-призыв (единственный CTA сайта — переход в Telegram) и подпись доверия
   ========================================================================== */
.cta {
  display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box;
  width: min(500px, 100%); min-height: 55px; padding: 12px 24px; border: 0; cursor: pointer;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 600; font-size: 14px; line-height: 1.3; letter-spacing: 0.5px;
  text-transform: uppercase; text-align: center; color: #ffffff; background-color: #929226;
  transition: background-color .2s ease-in-out, color .2s ease-in-out;
}
@media (hover: hover) { .cta:hover { color: #929226; background-color: #120f0f; } }
.cta:active { color: #929226; background-color: #120f0f; }

.cta-trust {
  margin: 14px 0 0; text-align: center; color: #414c3c;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; font-size: 12px; line-height: 1.45;
}
.cta-trust strong { color: #000; font-weight: 600; }

/* блок «фраза + кнопка + подпись» между разделами */
.cta-block { padding: 10px 20px 0; text-align: center; }
.cta-block__lead {
  margin: 0 auto 24px; max-width: 640px; color: #000;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 400; font-size: 18px; line-height: 1.45;
}
.cta-block--results { padding: 60px 20px 90px; }
@media screen and (max-width: 640px) {
  .cta-block__lead { font-size: 15px; }
  .cta-block--results { padding: 50px 20px 60px; }
  .cta { min-height: 50px; font-size: 12px; }
}

/* ==========================================================================
   ШАПКА (T280) — логотип + бургер на всех ширинах
   ========================================================================== */
.t280 { transition: visibility 0.2s, opacity 0.2s; }
.t280__container { position: absolute; top: 0; right: 0; left: 0; width: 100%; z-index: 990; transform: translate3d(0, 0, 0); }
.t280__main_opened .t280__container { position: fixed; top: 0; right: 0; left: 0; z-index: 99999; }
.t280__menu__content { position: relative; margin: 0 auto; padding: 0 40px; display: flex; align-items: center; z-index: 15; }
.t280__logo__container { display: flex; align-items: center; min-height: 80px; margin-right: auto; }
.t280__logo__container::after { content: ''; display: block; min-height: inherit; font-size: 0; }
.t280__logo__content { height: 100%; }
.t280__logo__content .t-title {
  font-size: 18px; color: #000000; font-weight: 500; text-transform: uppercase; letter-spacing: 2px;
}

.t-menuburger {
  position: relative; flex-shrink: 0; width: 22px; height: 14px; padding: 0; border: none; background-color: transparent;
  transform: rotate(0deg); transition: transform .5s ease-in-out; cursor: pointer; z-index: 999;
}
.t-menuburger span {
  display: block; position: absolute; width: 100%; opacity: 1; left: 0; transform: rotate(0deg);
  transition: .25s ease-in-out; height: 2px; background-color: #000;
}
.t-menuburger span:nth-child(1) { top: 0; }
.t-menuburger span:nth-child(2), .t-menuburger span:nth-child(3) { top: 6px; }
.t-menuburger span:nth-child(4) { top: 12px; }
.t-menuburger-opened span:nth-child(1) { top: 6px; width: 0%; left: 50%; }
.t-menuburger-opened span:nth-child(2) { transform: rotate(45deg); }
.t-menuburger-opened span:nth-child(3) { transform: rotate(-45deg); }
.t-menuburger-opened span:nth-child(4) { top: 6px; width: 0%; left: 50%; }
@media (hover) {
  .t-menuburger:hover span:nth-child(1) { transform: translateY(1px); }
  .t-menuburger:hover span:nth-child(4) { transform: translateY(-1px); }
}

.t280__menu__wrapper {
  position: fixed; inset: 0; z-index: -100; opacity: 0; visibility: hidden; transition: opacity 0.3s ease-in-out, visibility 0.3s;
  overflow-y: auto; padding: 0 20px;
}
.t280__main_opened .t280__menu__wrapper { z-index: 9999; opacity: 1; visibility: visible; }
.t280__menu__bg { position: fixed; inset: 0; background-color: #ebebeb; opacity: 1; }
.t280__menu__container { position: relative; height: 100%; margin: 0 auto; }
.t280__menu {
  z-index: 1; text-align: center; position: absolute; top: 45%; right: 0; left: 0; margin: 0 auto; opacity: 0;
  transform: translateY(-30%) scale(.9); transition: 0.2s ease-in-out;
}
.t280__main_opened .t280__menu { transform: translateY(-50%); opacity: 1; }
.t280__list { margin: 0; padding: 0; list-style-type: none; }
.t280__menu__item { margin: 20px auto; }
.t280__menu__item:first-child { margin-top: 0 !important; }
.t280__menu__item:last-child { margin-bottom: 0 !important; }
.t280__menu__link {
  display: block; margin: 20px auto; font-family: 'Unbounded', Arial, sans-serif; font-size: 14px; line-height: 1.17;
  font-weight: 400; color: #000000;
}
.t280__menu__link_cta { color: #929226; font-weight: 600; }
@media screen and (max-width: 1200px) {
  .t280__menu__content { padding: 0 20px; }
}
@media screen and (max-width: 480px) {
  .t280__logo__content .t-title { font-size: 14px; }
}

/* ==========================================================================
   1. HERO — фото на весь экран, поверх колонка: заголовок → кнопка → подпись → фото
   ========================================================================== */
.hero {
  position: relative; width: 100%; height: 100vh; min-height: 1000px; overflow: hidden; background-color: #f7f6f6;
}
.hero-media, .hero-media img { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.hero-media img { object-fit: cover; object-position: center center; }

.hero__brand {
  position: absolute; left: 0; right: 0; top: calc(max(50vh, 500px) - 500px + 117px); z-index: 2; pointer-events: none;
  text-align: center; white-space: nowrap; color: #929226; opacity: 0.45;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 700; font-size: 75px; line-height: 116px; letter-spacing: 1px;
  animation: t-fadein 1.3s ease-out both;
}
@keyframes t-fadein { from { opacity: 0; } to { opacity: .45; } }
@media (prefers-reduced-motion: reduce) { .hero__brand { animation: none; } }

.hero__content {
  position: absolute; z-index: 3; left: 50%; transform: translateX(-50%); top: calc(max(50vh, 500px) - 500px + 262px);
  width: 100%; max-width: 720px; padding: 0 20px; box-sizing: border-box;
  display: flex; flex-direction: column; align-items: center; text-align: center;
  font-family: 'Unbounded', Arial, sans-serif;
}
.hero__eyebrow {
  margin: 0 0 12px; color: #929226; font-weight: 600; font-size: 13px; line-height: 1.4; letter-spacing: 2px; text-transform: uppercase;
}
.hero__title {
  margin: 0; color: #929226; font-weight: 700; font-size: 26px; line-height: 40px; letter-spacing: 1px;
  text-transform: uppercase; text-wrap: balance;
}
/* блок «подтекст + кнопка + подпись» лежит на светлой подложке: чёрный текст нечитаем на тёмных участках фото */
.hero__action {
  display: flex; flex-direction: column; align-items: center; width: 100%; max-width: 610px; margin-top: 26px; padding: 24px 30px 20px;
  box-sizing: border-box; background-color: rgba(247, 246, 246, .92);
}
.hero__sub { margin: 0 0 22px; max-width: 520px; color: #000; font-weight: 400; font-size: 18px; line-height: 23px; }
.cta--hero { width: min(550px, 100%); min-height: 50px; padding: 0 24px; font-size: 13px; }
.hero__action .cta-trust { margin-top: 12px; }
.hero__photo { display: block; width: 200px; height: auto; margin-top: 34px; }

@media screen and (max-width: 1199px) {
  .hero__brand { top: 65px; }
  .hero__content { top: 190px; }
  .hero__title { font-size: 24px; line-height: 36px; }
  .hero__photo { width: 190px; }
}
@media screen and (max-width: 959px) {
  .hero__brand { top: 44px; font-size: 52px; line-height: 81px; }
  .hero__content { top: 150px; max-width: 640px; }
  .hero__title { font-size: 20px; line-height: 30px; }
  .hero__sub { font-size: 14px; line-height: 19px; max-width: 400px; }
  .cta--hero { width: min(400px, 100%); font-size: 12px; }
  .hero__photo { width: 181px; }
}
/* телефоны: заголовок сверху, фото в середине, кнопка внизу — на светлой части кадра */
@media screen and (max-width: 639px) {
  .hero { min-height: 700px; height: 100vh; height: 100svh; }
  .hero__brand { top: 50px; font-size: 39px; line-height: 60px; }
  .hero__content { top: 0; bottom: 0; padding-top: 128px; padding-bottom: 34px; }
  .hero__head { order: 1; }
  .hero__photo { order: 2; width: 130px; margin-top: 22px; }
  .hero__action { order: 3; margin-top: auto; padding: 18px 18px 16px; }
  .hero__eyebrow { font-size: 11px; margin-bottom: 8px; }
  .hero__title { font-size: 17px; line-height: 26px; }
  .hero__sub { font-size: 13px; line-height: 18px; max-width: 340px; margin-bottom: 16px; }
  .cta--hero { width: 100%; min-height: 48px; }
}
@media screen and (max-width: 479px) {
  .hero__brand { top: 45px; font-size: 26px; line-height: 40px; }
  .hero__content { padding-top: 100px; padding-left: 12px; padding-right: 12px; }
  .hero__eyebrow { font-size: 10px; letter-spacing: 1.5px; }
  .hero__title { font-size: 15px; line-height: 23px; letter-spacing: .5px; }
  .hero__photo { width: 118px; }
  .hero__action { padding: 16px 14px 14px; }
}

/* ==========================================================================
   2. Боль читателя (образовательный вход)
   ========================================================================== */
/* Раздел лежит на фактуре из фото (обивка из главного снимка, осветлённая до цвета страницы);
   сверху и снизу фактура растворяется в фоне страницы, чтобы не было резких краёв. */
.problem {
  position: relative; padding: 130px 20px 120px; overflow: hidden;
  background: #f7f6f6 url("../images/problem-bg.webp") center / cover no-repeat;
}
.problem::before, .problem::after { content: ""; position: absolute; left: 0; right: 0; height: 110px; pointer-events: none; }
.problem::before { top: 0; background: linear-gradient(#f7f6f6, rgba(247, 246, 246, 0)); }
.problem::after { bottom: 0; background: linear-gradient(rgba(247, 246, 246, 0), #f7f6f6); }
.problem__inner { position: relative; z-index: 1; max-width: 1000px; margin: 0 auto; text-align: center; }
.problem__title {
  margin: 0 auto; max-width: 1000px; color: #232222; text-wrap: balance;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; font-size: 44px; line-height: 1.22;
}
.problem__title strong { font-weight: 600; white-space: nowrap; }
.problem__rule { display: block; width: 64px; height: 3px; margin: 38px auto 42px; background-color: #929226; }
.problem__cols {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 64px; max-width: 900px; margin: 0 auto; text-align: left;
}
.problem__text {
  margin: 0; color: #232222;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; font-size: 16px; line-height: 1.7;
}
.problem__text + .problem__text { padding-left: 64px; border-left: 1px solid rgba(35, 34, 34, .28); }
@media screen and (max-width: 959px) {
  .problem { padding: 100px 20px 90px; }
  .problem__title { font-size: 32px; }
  .problem__cols { grid-template-columns: minmax(0, 1fr); row-gap: 22px; max-width: 560px; }
  .problem__text + .problem__text { padding-left: 0; border-left: 0; }
}
@media screen and (max-width: 640px) {
  .problem { padding: 80px 20px 70px; background-image: url("../images/problem-bg-m.webp"); background-position: 20% center; }
  .problem::before, .problem::after { height: 70px; }
  .problem__title { font-size: 24px; }
  .problem__rule { margin: 28px auto 30px; }
  .problem__text { font-size: 14px; }
}

/* ==========================================================================
   3. «Это про тебя, если» (T1008)
   ========================================================================== */
.t-section__title { overflow-wrap: break-word; }
#for-you .t-section__title { padding-bottom: 100px; }
@media screen and (min-width: 480px) { #for-you .t-section__title { font-size: 30px; } }

.t1008__cell_25 { width: 25%; }
.t1008__cell_50 { width: 50%; }
.t1008__item:not(:last-child) { margin-bottom: 45px; }
.t1008__img { display: block; box-sizing: content-box; width: calc(100% - 60px); height: auto; padding: 0 30px; aspect-ratio: 600 / 1066; object-fit: fill; }
.t1008__bgimg { width: 45px; height: 45px; max-width: 100%; background-size: cover; background-repeat: no-repeat; background-position: center; }
.t1008__cell-left { padding-left: 20px; }
.t1008__cell-left .t1008__textwrapper { padding-right: 20px; text-align: right; }
.t1008__cell-left .t1008__item { float: right; }
.t1008__cell-right { padding-right: 20px; }
.t1008__cell-right .t1008__textwrapper { padding-left: 20px; text-align: left; }
.t1008__cell-right .t1008__item { float: left; }
.t1008 .t-name { padding-bottom: 10px; }
.t1008__iconwrapper_mobile { display: none; }
@media screen and (max-width: 960px) {
  .t1008 .t-container > .t-cell, .t1008__cell_25, .t1008__cell_50 { padding: 0 20px; box-sizing: border-box; width: 100%; display: block; }
  .t1008__cell-left { margin-bottom: 45px; }
  .t1008__cell-right { margin-top: 45px; }
  .t1008__cell-left .t1008__textwrapper { padding-right: 0; padding-left: 20px; text-align: left; }
  .t1008__img { max-width: calc(90% - 60px); margin: 0 auto; }
  .t1008__bgimg { max-width: 50px !important; max-height: 50px !important; }
  .t1008__iconwrapper { display: none; }
  .t1008__iconwrapper_mobile { display: table-cell; }
  .t1008__item { float: none !important; }
}
/* CTA под сеткой: сетка «плавает» (float), поэтому сбрасываем обтекание */
#for-you .t1008 { padding-bottom: 60px; }
#for-you .t1008 .t-container::after { clear: both; }

/* ==========================================================================
   Бегущая строка (T1003)
   ========================================================================== */
.ticker { display: flex; align-items: center; justify-content: center; min-height: 20px; background-color: #f7f6f6; }
.t1003__outer { position: relative; max-width: 100vw; width: 100%; display: flex; align-items: center; justify-content: center; overflow: hidden; z-index: 0; pointer-events: none; }
.t1003__wrapper { overflow: hidden; position: relative; flex-grow: 1; flex-shrink: 0; }
.t1003__content-wrapper { background-color: rgb(146, 146, 38); height: 20px; }
.t1003__content { list-style: none; height: 100%; display: flex; animation: t1003-scroll 1.66s linear infinite; }
.t1003__item { display: flex; justify-content: center; align-items: center; flex-shrink: 0; max-height: 100%; white-space: nowrap; transform: translateZ(0); }
.t1003__item-txt {
  padding: 0 10px; font-family: 'Unbounded', Arial, sans-serif; font-weight: 500; font-size: 8px; line-height: 1.55;
  letter-spacing: 0.5px; color: #ffffff;
}
@keyframes t1003-scroll { from { transform: translateX(0); } to { transform: translateX(-83px); } }
@media (prefers-reduced-motion: reduce) { .t1003__content { animation: none; } }

/* ==========================================================================
   4. Обо мне — коротко: текст + маркеры доверия, коллаж из двух фото
   ========================================================================== */
.about { padding: 70px 20px 60px; background-color: #f7f6f6; }
.about__inner {
  max-width: 1160px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 520px) minmax(0, 1fr);
  column-gap: 60px; align-items: start;
}
.about__text { padding: 40px 0 0 27px; font-family: 'Unbounded', Arial, sans-serif; color: #000; }
.about__title { margin: 0 0 40px; font-weight: 600; font-size: 40px; line-height: 62px; }
.about__text p { margin: 0; font-weight: 400; font-size: 15px; line-height: 23px; }
.about__markers { list-style: none; margin: 28px 0 34px; padding: 0; border-top: 1px solid #d8d6d6; }
.about__markers li { padding: 14px 0; border-bottom: 1px solid #d8d6d6; font-weight: 300; font-size: 14px; line-height: 1.5; color: #414c3c; }
.about__markers strong { color: #000; font-weight: 600; }
.pill {
  display: inline-flex; align-items: center; justify-content: center; width: 250px; height: 30px; padding: 0; border: 0; border-radius: 18px;
  background-color: #000; color: #fff; cursor: pointer;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 600; font-size: 13px; line-height: 1.55;
  transition: background-color .2s ease-in-out;
}
.pill:hover { background-color: #b9b154; }

.about__photos { position: relative; height: 560px; }
.about__photo-1 { position: absolute; left: 0; top: 0; width: 431px; height: auto; }
.about__photo-2 { position: absolute; left: 212px; top: 292px; width: 368px; height: auto; }
@media screen and (max-width: 1199px) {
  .about__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 30px; }
  .about__photos { height: 520px; }
  .about__photo-1 { width: 336px; }
  .about__photo-2 { width: 266px; left: 144px; top: 238px; }
}
@media screen and (max-width: 959px) {
  .about { padding: 50px 20px 50px; }
  .about__inner { grid-template-columns: minmax(0, 1fr); row-gap: 30px; }
  .about__photos { order: -1; height: auto; text-align: center; }
  .about__photo-1 { position: static; width: 100%; max-width: 340px; }
  .about__photo-2 { display: none; }
  .about__text { padding: 0 8px; }
  .about__title { font-size: 28px; line-height: 44px; margin-bottom: 24px; }
  .about__text p { font-size: 14px; line-height: 21px; }
}

/* ==========================================================================
   Разделитель (T029)
   ========================================================================== */
.t029__container { text-align: center; padding-bottom: 8px; }
.t029__col { float: none; display: inline-block; }
.t029__linewrapper { position: relative; }
.t029__line { position: relative; width: 100%; height: 1px; display: table-cell; }
.t029__opacity { display: table-cell; min-width: 200px; height: 1px; }
@media screen and (max-width: 600px) { .t029__opacity { min-width: 120px; } }

/* ==========================================================================
   5. Результаты учениц: заголовок (T058) и слайдер
   ========================================================================== */
.t058 { padding-bottom: 6px; }
.t058__text-impact { padding-top: 0; text-align: center; font-size: 10px; }

.results { position: relative; width: 100%; height: 480px; overflow: hidden; background-color: #f7f6f6; }
.gallery {
  position: absolute; top: 25px; left: calc(50% - 160px); width: 320px; height: 400px; z-index: 3; text-align: center;
  font-family: 'Unbounded', Arial, sans-serif; font-size: 14px; font-weight: 400;
}
/* телефоны: слайдер по ширине экрана минус поля, стрелки помещаются в поля */
@media screen and (max-width: 479px) {
  .gallery { left: 44px; right: 44px; width: auto; }
  .gallery .t-slds__arrow-right { left: 6px; }
  .gallery .t-slds__arrow-left { right: 6px; }
}
.gallery .t-slds__container { position: relative; overflow: hidden; width: 100%; height: 100%; touch-action: pan-y; }
.gallery .t-slds__items-wrapper { display: flex; height: 100%; transition: transform .3s ease-in-out; will-change: transform; }
.gallery .t-slds__item { flex: 0 0 100%; height: 100%; -webkit-user-drag: none; user-select: none; }
.gallery .t-slds__item img { display: block; width: 100%; height: 100%; object-fit: contain; -webkit-user-drag: none; }
.t-slds__arrow_container { position: absolute; left: 0; top: 0; width: 100%; margin: 0 auto; }
.t-slds__arrow_wrapper { position: absolute; top: 0; height: 400px; width: 0; cursor: pointer; z-index: 9; }
.t-slds__arrow_wrapper-left { left: 0; }
.t-slds__arrow_wrapper-right { right: 0; }
.t-slds__arrow_wrapper.is-hidden { display: none; }
.t-slds__arrow {
  position: absolute; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; padding: 0; border: 0; border-radius: 100%;
  background-color: rgb(232, 232, 232); cursor: pointer; text-align: center;
}
.t-slds__arrow-right { left: 20px; right: auto; }
.t-slds__arrow-left { right: 20px; left: auto; }
.t-slds__arrow_body { display: inline-block; width: 30px; height: 30px; }
.t-slds__arrow_body-left { transform: rotate(180deg); }
.t-slds__arrow_body svg { display: block; width: 100%; height: 100%; overflow: visible; }
.t-slds__bullet_wrapper {
  position: absolute; left: 0; right: 0; bottom: -25px; margin-bottom: -10px; padding: 0; font-size: 0; text-align: center;
  width: 100%; z-index: 10; list-style: none; letter-spacing: 0;
}
.t-slds__bullet { display: inline-block; padding: 10px 7.5px; margin: 0; border-radius: 100%; cursor: pointer; }
.t-slds__bullet_body { width: 5px; height: 5px; border: none; border-radius: 100px; background-color: #999; transition: background-color .2s ease-in-out; }
.t-slds__bullet_active .t-slds__bullet_body { background-color: #222; }

/* ==========================================================================
   6. Как это работает: список + видео + тизеры статей
   ========================================================================== */
.method { padding: 60px 20px 30px; background-color: #f7f6f6; }
.method__inner { max-width: 1160px; margin: 0 auto; }
.method__title {
  margin: 0 auto 60px; max-width: 880px; text-align: center; color: #000;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 400; font-size: 30px; line-height: 47px;
}
.method__top {
  display: grid; grid-template-columns: minmax(0, 480px) 405px; column-gap: 150px; justify-content: center; align-items: center;
}
.method__list {
  list-style: none; margin: 0; padding: 0; color: #000;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 400; font-size: 15px; line-height: 23px;
}
.method__list li { margin: 0 0 23px; padding-left: 26px; position: relative; }
.method__list li:last-child { margin-bottom: 0; }
.method__list li::before { content: "—"; position: absolute; left: 0; top: 0; }

.method__video {
  position: relative; width: 405px; aspect-ratio: 405 / 233; overflow: hidden; border-radius: 20px; background-color: #000;
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, .4); cursor: pointer;
}
.method__poster { display: block; width: 100%; height: 100%; object-fit: cover; }
.method__play {
  display: flex; align-items: center; justify-content: center; position: absolute; left: 0; right: 0; top: 50%;
  transform: translateY(-50%); z-index: 1; transition: transform .2s ease-in-out;
}
.method__video:hover .method__play { transform: translateY(-50%) scale(1.2); }
.method__video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; z-index: 2; }
.method__video.is-playing .method__play { display: none; }
.method__figure { margin: 0; padding: 0; }
.method__caption {
  margin-top: 14px; text-align: center; color: #414c3c;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; font-size: 12px; line-height: 1.4;
}

.teasers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 90px; border-top: 1px solid #e0e6ed; }
.teaser { padding: 44px 30px 20px; border-right: 1px solid #e0e6ed; }
.teaser:last-child { border-right: 0; }
.teaser__title { margin: 0 0 18px; color: #232222; font-family: 'Unbounded', Arial, sans-serif; font-weight: 400; font-size: 20px; line-height: 1.35; }
.teaser__text { margin: 0; color: #414c3c; font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; font-size: 14px; line-height: 1.6; }

@media screen and (max-width: 1199px) {
  .method__top { grid-template-columns: minmax(0, 1fr) 360px; column-gap: 60px; }
  .method__video { width: 360px; }
  .method__title { font-size: 27px; line-height: 42px; }
}
@media screen and (max-width: 959px) {
  .method { padding: 50px 20px 20px; }
  .method__title { font-size: 20px; line-height: 31px; margin-bottom: 40px; }
  .method__top { grid-template-columns: minmax(0, 1fr); row-gap: 40px; max-width: 560px; margin: 0 auto; }
  .method__list { font-size: 13px; line-height: 20px; }
  .method__video { width: 100%; max-width: 405px; margin: 0 auto; }
  .teasers { grid-template-columns: minmax(0, 1fr); margin-top: 60px; }
  .teaser { border-right: 0; border-bottom: 1px solid #e0e6ed; padding: 34px 8px 30px; }
  .teaser:last-child { border-bottom: 0; }
  .teaser__title { font-size: 17px; }
  .teaser__text { font-size: 13px; }
}

/* ==========================================================================
   7. Финальный CTA
   ========================================================================== */
.final { padding: 80px 20px 90px; text-align: center; background-color: #f7f6f6; }
.final__title { margin: 0; color: #232222; font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; font-size: 38px; line-height: 1.23; }
.final__text {
  margin: 22px auto 38px; max-width: 620px; color: #414c3c;
  font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; font-size: 17px; line-height: 1.6;
}
.final__markers {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 44px; list-style: none; margin: 34px 0 0; padding: 0;
  color: #414c3c; font-family: 'Unbounded', Arial, sans-serif; font-weight: 300; font-size: 13px; line-height: 1.4;
}
.final__markers strong { color: #000; font-weight: 600; }
@media screen and (max-width: 640px) {
  .final { padding: 60px 20px 70px; }
  .final__title { font-size: 26px; }
  .final__text { font-size: 14px; margin-bottom: 28px; }
  .final__markers { gap: 10px 26px; font-size: 12px; }
}

/* ==========================================================================
   Подвал (T564)
   ========================================================================== */
.t564__logo { margin-bottom: 60px; color: #333333; font-family: 'Unbounded', Arial, sans-serif; }
.t564__text { padding-bottom: 0; }
/* ссылки в реквизитах (документы, почта, телефон): область нажатия повыше, чтобы попадать пальцем */
.t564__contact { display: inline-block; padding: 4px 0; }
.t564 .t-sociallinks { margin-top: 60px; }
.t564 .t-sociallinks__item { display: inline-block; margin: 4px 1px 0; }
.t564 .t-sociallinks a { display: inline-block; }
.t564 ul.t-sociallinks__wrapper { margin-bottom: 0; padding-left: 0; list-style: none; }
.t564 .t-sociallinks__svg { display: block; }

/* ==========================================================================
   Плавающая кнопка (только телефоны и планшеты)
   ========================================================================== */
.sticky-cta { display: none; }
@media screen and (max-width: 959px) {
  .sticky-cta {
    display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 980;
    padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background-color: rgba(247, 246, 246, .96);
    box-shadow: 0 -6px 24px rgba(0, 0, 0, .08); text-align: center;
    transform: translateY(110%); visibility: hidden; transition: transform .25s ease-in-out, visibility 0s linear .25s;
  }
  .sticky-cta.is-visible { transform: none; visibility: visible; transition: transform .25s ease-in-out, visibility 0s; }
  .sticky-cta .cta { width: min(420px, 100%); min-height: 48px; }
}

/* ==========================================================================
   Окно «Образование»
   ========================================================================== */
.t-popup {
  position: fixed; inset: 0; z-index: 10000001; background-color: rgba(0, 0, 0, .6); overflow-y: auto; cursor: pointer;
  opacity: 0; transition: opacity .3s ease-in-out; padding: 0;
}
.t-popup[hidden] { display: none; }
.t-popup.t-popup_show { opacity: 1; }
.t-popup__container {
  background: transparent; cursor: default; margin: 0 auto; position: relative; width: 100%; max-width: 860px;
  padding: 65px 0; transform: translateY(30px) scale(.9); transition: transform .3s ease-in-out;
}
.t-popup_show .t-popup__container { transform: none; }
.t-popup__img { display: block; width: 100%; height: auto; border-radius: 10px; }
.t-popup__block-close { position: fixed; top: 10px; right: 10px; width: 43px; height: 43px; z-index: 999; padding: 0; }
.t-popup__close-wrapper { background-color: transparent; border: none; cursor: pointer; font-size: 0; padding: 10px; width: 43px; height: 43px; box-sizing: border-box; }
.t-popup__close-wrapper:hover { opacity: .7; }
.t-popup__close-icon { width: 23px; height: 23px; }
@media screen and (max-width: 1200px) { .t-popup__container { max-width: 700px; } }
