/* ===== Article Page (cleaned for provided PHP) ===== */

/* Section background */
.media_article {
  background-color: #f8f9fa;
  padding: 60px 0;
}

/* Article container */
.container_article {
  max-width: 920px;
  margin: 0 auto;
  padding: 40px;
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.04);
  font-family: 'Montserrat', sans-serif;
}



/* Headings (hero titles) */
.big_title {
  text-align: left;
  margin-top: 10px;
  margin-bottom: 10px;
}

.Article_general_title {
  font-size: 40px;
  font-weight: 600;
  line-height: 1;
  margin: 60px 0 0;
  color: #0d1a2d;
}

/* Added: used in PHP */
.Article_general_titleB {
  font-size: 40px;
  font-weight: 600;
  line-height: 1.1;
  margin: 0 0 0;
  color: #1F299C;
}

/* Added: used in PHP */
.Article_general_titleC {
  font-size: 28px;
  font-weight: 500;
  line-height: 1.1;
  margin: 8px 0 16px;
  margin-top:25px;
  color: #D89529;
}

/* Section h2 with arrow style */
.Article-h2-arrow2 {
  font-size: 28px;
  font-weight: 500;
  margin-top: 48px;
  margin-bottom: 20px;
  color: #1F299C;
  border-left: 4px solid #D89529;
  padding-left: 12px;
}

/* Subtitle */
.article_subtitle {
  font-size: 22px;
  font-weight: 500;
  color: #0F0842;
  line-height: 1.5;
  margin-top: 60px;
  margin-bottom: 16px;
}

/* Paragraphs */
.container_article p {
  font-size: 17px;
  line-height: 1.5;
  margin-bottom: 20px;
  color: #0F0842;
}

/* Lists */
.container_article ul {
  padding-left: 0;
  margin-bottom: 15px;
  margin-top:0px;
  list-style: none;
}

.container_article li {
  position: relative;
  padding-left: 36px;
  font-size: 17px;
  color: #0F0842;
  margin-bottom: 15px;
  margin-top:0px;
  line-height: 1.5;
}

.container_article li::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 10px;
  width: 20px;
  height: 20px;
  background: url('https://ink-advisory.com/styles/assets/square.svg') no-repeat center;
  filter: brightness(0) saturate(100%) invert(59%) sepia(81%) saturate(586%) hue-rotate(352deg) brightness(96%) contrast(94%);
  background-size: 5px 5px;
}

/* Callouts used as simple blockquotes in article (keep blockquote only) */
.container_article blockquote {
  border-left: 4px solid #0055a5;
  background: #f5f8fc;
  padding: 16px 20px;
  margin: 30px 0;
  color: #333;
  font-size: 17px;
}

/* Notification paragraph (present in PHP) */
.notification {
  background: #f8f9fa;     /* светло-серый фон */
  border-left: 4px solid #1F299C; /* цветной акцент слева */
  padding: 12px 16px;
  margin: 20px 0;
  font-size: 14px;
  line-height: 1.5;
  color: #333;
}

.notification a {
  color: #1F299C; /* синий акцент для ссылки */
  font-weight: 500;
}

.track_components_title{
  font-weight: 700;
  color: #1F299C;
  margin: 4px 0 8px;
}


/* Track components (контейнер над двумя колонками) */
.track_components{
  background: #E0EBF6;
  border: 1px solid #e7e9ee;
  border-radius: 12px;
  padding: 16px 16px 20px;
  margin: 24px 0;
  color: #0F0842;
  font-size: 17px;
  line-height: 1.5;
}

/* Текст-строка заголовка внутри блока (у тебя это простой текст перед колонками) */
.track_components{
  font-weight: 500;        /* подчёркиваем строку-заголовок */
  color: #1F299C;
  margin-top:0px;
  margin-bottom: 20px;
}

/* Сетка внутри (у тебя .left&right_blocks уже описан) — просто чуть увязал отступ */
.left\&right_blocks{ margin-top: 10px; }






/* Date under hero image */
.article-date2 {
  font-size: 14px;
  color: #1e1a1a;
  display: flex;
  align-items: center;
  gap: 8px;
  z-index: 2;
  position: relative;
  margin-bottom: 8px;
}


.footnotes_strtr {
  font-size: 14px;
  color: #555;
  margin-top: 15px;
    margin-bottom: 25px;
  padding-left: 35px;
  border-left: 1px solid #ccc;
}


/* “bold list” ul used in PHP */
.bald {
  list-style: none;
  padding-left: 0;
}
.bald li {
  font-weight: 600;
  margin-top:0px;
  margin-bottom: 15px;
}

/* Нумерованный список для <ul class="bald"> */
.container_article ul.bald{
  list-style: none;
  padding-left: 0;
  margin-left: 0;
  
  counter-reset: item;           /* старт счётчика */
}

.container_article ul.bald li{
  counter-increment: item;       /* +1 на каждый li */
  position: relative;
  padding-left: 2.2em;    
  margin:0px;       /* место под номер */
  margin-bottom: 15px;
  margin-top:0px;
  line-height: 1.5;
  color:#171F75;
}

/* заменяем квадратный маркер на число */
.container_article ul.bald li::before{
  content: counters(item, ".") ".";
  position: absolute;
  left: 0;
  top: 0;
  width: 2em;
  text-align: right;
  font-weight: 700;
  color: #171F75;
  background: none;              /* убираем фон из общего правила */
  filter: none;                  /* убираем фильтр иконки */
}


/* “bold list” ul used in PHP */
.bald2 {
  list-style: none;
  padding-left: 0;
}
.bald2 li {
  font-weight: 300;
  Margin-top:0px;
  margin-bottom: 15px;
}

/* Нумерованный список для <ul class="bald"> */
.container_article ul.bald2{
  list-style: none;
  padding-left: 0;
  margin-left: 0;
  margin-bottom: 15px;
  margin-top:0px;
  counter-reset: item;           /* старт счётчика */
}

.container_article ul.bald2 li{
  counter-increment: item;       /* +1 на каждый li */
  position: relative;
  padding-left: 25px; 
  margin-top:0px;          /* место под номер */
  margin-bottom: 15px;
}

/* заменяем квадратный маркер на число */
.container_article ul.bald2 li::before{
  content: counters(item, ".") ".";
  position: absolute;
  left: 0;
  top: 0;
  text-align: right;
  font-weight: 600;
  color: #D89529;
  background: none;              /* убираем фон из общего правила */
  filter: none;                  /* убираем фильтр иконки */
}




/* “bold list” ul used in PHP */
.sub_sub_li {
  list-style: none;
  padding-left: 35px;
}
.sub_sub_li li {
  font-weight: 300;
  margin-bottom: 15px;
   margin-top:0px;
}


.container_article ul.sub_sub_li{
  list-style: none;
  padding-left: 15px;
  margin-left: 0px;
  margin-bottom: 15px;
  margin-top:0px;

}

.container_article ul.sub_sub_li li{
  position: relative;
  padding-left: 36px;           /* место под номер */
  margin-bottom: 15px;
  margin-top:0px;
}




/* Alphabet list (a., b., etc.) */
.alphabet {
  list-style: none;
  padding-left: 0;
  margin-bottom:15px;
  margin-top:0px;
}
.alphabet li {
  padding-left: 0;
  margin-bottom: 15px;
  margin-top:0px;
}

/* Список с буквенной нумерацией: a, b, c, ... */
.container_article ul.alphabet{
  list-style: none;
  padding-left: 10px;
  margin: 0px 0 0px;
  counter-reset: alpha;             /* старт счётчика */
}

.container_article ul.alphabet li{
  counter-increment: alpha;
  position: relative;
  padding-left: 2.2em;              /* место под букву */
  margin-bottom: 15px;
   Margin-top:0px;

  line-height: 1.5;
}

/* Перебиваем квадратный маркер и рисуем букву */
.container_article ul.alphabet li::before{
  content: counter(alpha, lower-alpha) ".";
  position: absolute;
  left: 0; top: 0;
  width: 2em; text-align: right;
  font-weight: 600;
  color: #D89529;
  background: none;                 /* убрать фон иконки */
  filter: none;                     /* убрать фильтр иконки */
}









/* Sub-paragraph text block */
.sub_litext {
     padding: 0px 16px 15px 25px; /* top right bottom left */
  padding-left:25px;
  color: #0F0842;
  font-size: 17px;
  line-height: 1.5;

}


.sub_litext2 {
     padding: 0px 16px 15px 25px; /* top right bottom left */
  padding-left:45px;
  color: #0F0842;
  font-size: 17px;
  line-height: 1.5;
}

/* Illustration block used in PHP */
.illustration {
  width: fit-content;         /* сужается до ширины содержимого */
  max-width: 50%;            /* но не шире контейнера статьи */
  display: block;             /* чтобы можно было центрировать через margin: auto */
  margin: 24px 0;             /* если нужно по центру: 24px auto */
  text-align: left;
  background: #E0EBF6;
  border-radius: 0px;
  padding: 12px;
}

.illustration img {
  display: block;
  max-width: 100%;
  height: auto;               /* не перетягиваем контейнер по высоте */
}


.illustration_title {
  font-size: 17px;
  font-weight: 600;
  color: #1F299C;
  margin: 6px 0 10px;
  text-align:left;
    border-bottom: 0.25px solid #0F0842; /* чуть мягче цвет */
  padding-bottom: 6px;              /* ← отступ между текстом и линией */
}

/* Back to media link */
.back-to-media {
  text-align: right;
  margin: 0 0 18px;
}
.media-link {
  font-size: 15px;
  color: #0055a5;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 500;
  transition: color 0.2s;
}
.media-link:hover { color: #D89529; }
.arrow-icon {
  width: 14px; height: 14px;
  transition: transform 0.2s, fill 0.2s;
}
.media-link:hover .arrow-icon { transform: translateX(3px); fill: #ff6600; }

/* Two-column blocks inside the “track_components” section */
.left\&right_blocks {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 12px;
}
.left\&right_blocks .column { background: #F0EDF7; padding-left:0px;}
@media (min-width: 768px) {
  .left\&right_blocks {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
}

.track_components_text {
  padding-left: 20px; /* отступ для цифр */
  margin: 10px;
  list-style-type: decimal;
}

.track_components_text li::before {
  content: none !important;
}

.track_components_text li::marker {
  font-weight: 500; /* жирные цифры */
}

.container_article .track_components_text li.text-block {
  padding-left: 5px;
}

.track_components_text li {
  padding-left: 10px; /* ← этим регулируешь отступ текста от цифры */
}
/* Colored header box */
.coloredbox {
  background-color: #1F299C;
  color: #fff;
  padding: 10px;
  border-radius: 0px;
  text-align:center;
  font-weight: 600;
  margin-bottom: 15px;
}

/* Section credit blocks used in PHP */
.SP-credit {
  background-color:#F2F2F2;
  margin-top: 0px;
  padding: 20px 12px;
  border-radius: 8px;
}

.title-medium{
font-size:20px;
margin-top:40px;
text-align:left;
color:#513DE7;
}


.head_SP {
  background-color:#F2F2F2;
  margin-top: 0;
  color: #0F0842;
  font-weight: 600; /* fixed */
  padding-left: 0px;
  margin-bottom: 15px;
  font-size:17px;
}

/* Wrapper around tables in article (present in PHP) */
.table-article-wrapper2 {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 10px 0 16px;
}

/* Financing comparison table (used in PHP) */
.financing-comparison2 {
  width: 100%;
  border-collapse: collapse;
  font-size: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.financing-comparison2 thead th {
  background-color: #3f2c93;
  color: #fff;
  padding: 8px;
  text-align: center;
  font-weight: 500;
}
.financing-comparison2 td {
  background-color: #ffffff;
  padding: 8px;
  text-align: left;
  vertical-align: middle;
  border-bottom: 0.5px solid #B4A7D6; /* row separators */
}
.financing-comparison2 tbody td:first-child {
  font-weight: 600;
  color:#1F299C;
  text-align: left;
  background-color: #E0EBF6;
}
.financing-comparison2 td:last-child { text-align: left; }
.financing-comparison2 sup { font-size: 0.7em; }

@media (max-width: 767px) {
  .financing-comparison2 {
    display: block;
    width: 100%;
    overflow-x: auto;
    border-radius: 8px;
  }
  .financing-comparison2 thead th,
  .financing-comparison2 td {
    white-space: nowrap;
    font-size: 13px;
    padding: 6px 10px;
  }
  .financing-comparison2 td:first-child { min-width: 140px; }
  .financing-comparison2 td:last-child { min-width: 200px; }
}

/* Authors */
.authors-block { margin-top: 60px; }
.authors-title {
  font-size: 28px;
  font-weight: 700;
  color: #1F299C;
  text-align: center;
  margin: 0 0 24px;
  font-family: 'Montserrat', sans-serif;
  position: relative;
}
.authors-title::before {
  content: "";
  display: block;
  width: 120px; height: 4px;
  background-color: #D89529;
  border-radius: 2px;
  margin: 0 auto 16px auto;
}
.authors-list-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px;
  margin-top: 30px;
}
.author {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 240px;
}
.author-photo {
  width: 64px; height: 64px;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  margin-bottom: 12px;
}
.author-info { display: flex; flex-direction: column; }
.author-name {
  font-weight: 600;
  font-size: 17px;
  color: #0F0842;
  margin-bottom: 4px;
}
.author-position { font-size: 15px; color: #555; margin-bottom: 4px; }
.author-email {
  font-size: 14px;
  color: #1F299C;
  text-decoration: none;
  transition: color 0.2s;
}
.author-email:hover { text-decoration: underline; color: #D89529; }

@media (max-width: 768px) {
  .authors-list-row { flex-direction: column; align-items: center; }
  .author { max-width: 100%; }
}

/* Disclaimer */
.disclaimer {
  background-color: #f2f2f2;
  padding: 10px 20px;
  font-size: 13px;
  color: #444;
  border-top: 1px solid #ddd;
}
.disclaimer-container {
  max-width: 920px;
  margin: 0 auto;
  font-family: 'Montserrat', sans-serif;
  line-height: 5;
}
.disclaimer p { margin-bottom: 16px; }
.disclaimer a { color: #1F299C; text-decoration: underline; }
.disclaimer a:hover { color: #D89529; }

/* Related articles */
.related-articles {
  background-color: #f8f9fb;
  padding: 80px 0;
  border-top: 1px solid #e0e6ed;
}
.related-articles .container {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 24px;
}
.related-heading {
  font-size: 24px;
  font-weight: 700;
  color: #1a1a1a;
  text-align: center;
  margin-bottom: 48px;
  letter-spacing: 0.3px;
}
.related-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
@media (min-width: 768px) {
  .related-list { grid-template-columns: repeat(3, 1fr); }
}
.related-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 24px;
  background: #ffffff;
  border-radius: 12px;
  border: 1px solid #e1e4e8;
  text-decoration: none;
  color: #212529;
  transition: all 0.3s ease;
  box-shadow: 0 4px 10px rgba(0,0,0,0.025);
}
.related-item:hover {
  border-color: #0055a5;
  box-shadow: 0 6px 20px rgba(0,0,0,0.05);
  transform: translateY(-4px);
  color: #0055a5;
}
.related-emoji { font-size: 22px; margin-top: 2px; flex-shrink: 0; }
.related-emoji i.material-icons-outlined { font-size: 32px; color: #1F299C; }
.related-title { font-size: 16px; font-weight: 500; line-height: 1.5; }

/* Scroll to top */
.scroll-up-centered { text-align: center; margin: 60px 0 40px; }
.scroll-arrow {
  display: inline-block;
  width: 40px; height: 40px;
  border-bottom: 5px solid #0055a5;
  border-right: 5px solid #0055a5;
  transform: rotate(-135deg);
  animation: bounce 2s infinite;
  margin: 0;
  opacity: 0.8;
  transition: opacity 0.3s;
}
.scroll-arrow:hover { opacity: 1; }
.scroll-label {
  margin-top: 0;
  font-size: 17px;
  font-weight: 600;
  color: #0055a5;
  opacity: 0.85;
}
@keyframes bounce {
  0%,20%,50%,80%,100% { transform: rotate(-135deg) translateY(0); }
  40% { transform: rotate(-135deg) translateY(-8px); }
  60% { transform: rotate(-135deg) translateY(-4px); }
}

/* Nonstandard element selectors used in markup (kept) */
strong {
  font-weight: 500;
  font-size: 17px;
  color: #0F0842;
  display: block;
  line-height: 1.5;
}
/* <strong22> … </strong22> present in content */
strong22 {
  font-weight: 700;
  font-size: 17px;
  color: #1F299C;
  line-height: 1;
}
strong3 {
  font-weight: 500;
  color: #513DE7;
  line-height: 1.5;
}
strong9 {
  font-weight: 600;
  font-size: 17px;
  color: #0e1451;
  line-height: 1;
}







/* Настраиваемые переменные темы */
:root {
  --conclusion-bg: #f8fafc;         /* светлый фон */
  --conclusion-text: #0f172a;       /* базовый текст */
  --conclusion-muted: #475569;      /* вторичный текст */
  --conclusion-accent: #2563eb;     /* акцент (синий) */
  --conclusion-radius: 16px;
  --conclusion-shadow: 0 6px 18px rgba(15, 23, 42, 0.08);
}



/* Контейнер */
.conclusion {
  color: var(--conclusion-text);
  background: linear-gradient(180deg, rgba(37, 99, 235, 0.06), transparent 60%), var(--conclusion-bg);
  border-left: 6px solid var(--conclusion-accent);
  border-radius: var(--conclusion-radius);
  padding: clamp(16px, 2.5vw, 28px) clamp(16px, 3vw, 32px);
  box-shadow: var(--conclusion-shadow);
  max-width: 100%;
  line-height: 1.6;
}

/* Абзацы */
.conclusion p {
  margin: 0 0 0.75em 0;
  font-size: clamp(15px, 1.6vw, 17px);
}

.conclusion p:first-child {
  font-weight: 600;
}

/* Заголовок-сигнал перед списком (второй абзац) */
.conclusion p + p {
  color: var(--conclusion-muted);
  margin-top: 0.25em;
  font-weight: 500;
}

/* Список преимуществ */
.conclusion ul {
  margin: 0.75em 0 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

/* Пункт списка с кастомной галочкой */
.conclusion li {
  position: relative;
  padding-left: 32px;
  font-size: clamp(15px, 1.6vw, 17px);
}

.conclusion li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.3em;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  background:
    /* иконка-галочка в центре кружка (inline SVG) */
    url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 6L9 17l-5-5' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px 12px no-repeat,
    var(--conclusion-accent);
  box-shadow: 0 2px 6px rgba(37, 99, 235, 0.25);
}

/* Мелкие улучшения читаемости на узких экранах */
@media (max-width: 640px) {
  .conclusion {
    border-left-width: 5px;
  }
  .conclusion li {
    padding-left: 30px;
  }
  .conclusion li::before {
    width: 18px;
    height: 18px;
    top: 0.35em;
    background-size: 10px 10px;
  }
}

/* Уважение настроек пользователя по анимациям */
@media (prefers-reduced-motion: no-preference) {
  .conclusion {
    transition: box-shadow 200ms ease, transform 200ms ease;
  }
  .conclusion:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
  }
}






.strategy {
  width: 100%;
  border-collapse: collapse;
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  line-height: 1.4;
  color: #0F0842;
  margin-bottom:40px;
  margin-left:20px;
  background: #F0F4FA;
}

.strategy .head {
  background: #D89221; /* оранжевый */
  color: #fff;
  font-weight: 600;
  padding: 10px 14px;
  text-align: left;
}

.strategy .title {
  width: 30%;
  background: #F0F4FA; /* светлый фон для левой колонки */
  color: #0F0842;      /* синий текст */
  font-weight: 800;
  padding: 10px 14px;
  vertical-align: top;
}

.strategy .text {
  padding: 10px 14px;
  vertical-align: top;
  border-left: 1px solid #ccc;
}

.strategy tr + tr {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

/* =========================
   Mobile-first enhancements
   ========================= */

/* Большие планшеты и ниже */
@media (max-width: 991px) {
  .media_article {
    padding: 40px 0;
  }

  .container_article {
    padding: 28px;
    border-radius: 10px;
  }

  .Article_general_title,
  .Article_general_titleB {
    font-size: 32px;
    line-height: 1.1;
    margin-top: 32px;
  }

  .Article_general_titleC,
  .Article-h2-arrow2 {
    font-size: 24px;
  }

  .article_subtitle {
    font-size: 20px;
    margin-top: 36px;
  }

  .container_article p,
  .container_article li,
  strong,
  strong22,
  strong9 {
    font-size: 16px;
  }

  .container_article blockquote {
    padding: 14px 16px;
    margin: 20px 0;
  }

  .related-articles {
    padding: 56px 0;
  }
}

/* Телефоны ≤ 767px */
@media (max-width: 767px) {
  /* Общая типографика и отступы */
  .media_article {
    padding: 28px 0;
  }

  .container_article {
    padding: 18px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.04);
  }

  .Article_general_title,
  .Article_general_titleB {
    font-size: 26px;
    margin: 20px 0 6px;
  }

  .Article_general_titleC { font-size: 22px; }
  .Article-h2-arrow2     { font-size: 22px; padding-left: 10px; border-left-width: 3px; }

  .article_subtitle {
    font-size: 18px;
    margin-top: 24px;
    margin-bottom: 10px;
  }

  .container_article p { font-size: 15.5px; margin-bottom: 14px; }
  .container_article ul { margin-bottom: 12px; }
  .container_article li {
    padding-left: 30px;
    margin-bottom: 12px;
  }
  .container_article li::before {
    left: 10px;
    top: 9px;
    width: 16px; height: 16px;
    background-size: 4px 4px;
  }

  /* Нумерованные "жирные" списки */
  .container_article ul.bald li { padding-left: 2em; }
  .container_article ul.bald li::before { width: 2em; }

  .container_article ul.bald2 li { padding-left: 22px; }

  /* Вложенные списки */
  .sub_sub_li { padding-left: 18px; }
  .container_article ul.sub_sub_li { padding-left: 10px; }
  .container_article ul.sub_sub_li li { padding-left: 28px; }

  /* Буквенные списки */
  .container_article ul.alphabet { padding-left: 4px; }
  .container_article ul.alphabet li { padding-left: 2em; }
  .container_article ul.alphabet li::before { width: 2em; }

  /* Подабзацные блоки */
  .sub_litext  { padding: 0 12px 12px 45px; }
  .sub_litext2 { padding: 0 12px 12px 24px; }

  /* Иллюстрации */
  .illustration {
    margin: 18px 0;
    padding: 10px;
  }
  .illustration_title {
    font-size: 16px;
    margin: 4px 0 8px;
    padding-bottom: 4px;
  }

  /* Ссылка "назад к медиа" — по центру на мобилках */
  .back-to-media { text-align: center; }
  .media-link { font-size: 14px; }

  /* Авторы — уже есть mobile, добавим чуть меньше зазор */
  .authors-list-row { gap: 20px; }
  .author-name   { font-size: 16px; }
  .author-email  { font-size: 13px; }

  /* Related items — уплотняем карточки */
  .related-item { padding: 18px; gap: 12px; }
  .related-title { font-size: 15px; }

  /* Стрелка скролла — чуть меньше */
  .scroll-arrow { width: 34px; height: 34px; border-bottom-width: 4px; border-right-width: 4px; }
  .scroll-label { font-size: 15px; }

  /* Футноты */
  .footnotes_strtr {
    font-size: 13px;
    margin-top: 12px;
    margin-bottom: 18px;
    padding-left: 18px;
  }

  /* Notification */
  .notification {
    font-size: 13px;
    padding: 10px 12px;
    margin: 16px 0;
  }

  /* Блок .track_components */
  .track_components {
    padding: 12px;
    margin: 18px 0;
    font-size: 15.5px;
  }
  .left\&right_blocks { gap: 12px; }
  .left\&right_blocks .column { padding-left: 0; }
  .track_components_text { margin: 8px; padding-left: 16px; }
  .track_components_text li { padding-left: 6px; }

  /* Таблица .strategy — стэк карточками */
  .strategy {
    width: 100%;
    margin-left: 0;
    font-size: 14px;
    border-radius: 8px;
    overflow: hidden;
  }
  .strategy thead { display: none; }
  .strategy, .strategy tbody, .strategy tr, .strategy td {
    display: block;
    width: 100%;
  }
  .strategy tr {
    background: #fff;
    margin: 0 0 12px 0;
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    overflow: hidden;
  }
  .strategy .title,
  .strategy .text,
  .strategy .head {
    padding: 10px 12px;
    border: 0;
  }
  .strategy .title {
    width: 100%;
    background: #F0F4FA;
    font-weight: 700;
    border-bottom: 1px solid #e6e6e6;
  }
  .strategy .text { background: #fff; }
  .strategy tr + tr {
    border: 0; /* убираем двойные линии между карточками */
  }
}

/* Очень маленькие экраны ≤ 360px */
@media (max-width: 360px) {
  .Article_general_title,
  .Article_general_titleB { font-size: 24px; }

  .Article_general_titleC,
  .Article-h2-arrow2 { font-size: 20px; }

  .container_article { padding: 14px; }
  .container_article p,
  .container_article li,
  strong,
  strong22,
  strong9 { font-size: 15px; }

  .related-item { padding: 14px; }
}

/* Доп. полифиll: плавные тени и hover по возможности, но без анимаций для reduced-motion */
@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}


/* Illustration: mobile refinements */
@media (max-width: 767px) {
  .illustration {
    width: 100%;
    max-width: 100%;
    margin: 16px 0;
    padding: 10px;
    border-radius: 8px;
    overflow: hidden;          /* на всякий случай против горизонтального скролла */
  }

  .illustration img {
    display: block;
    width: 100%;               /* растянуть по ширине контейнера */
    height: auto;
  }

  .illustration_title {
    font-size: 15px;
    line-height: 1.35;
    margin: 4px 0 8px;
    padding-bottom: 4px;
  }
}

/* Очень узкие экраны */
@media (max-width: 480px) {
  .illustration {
    padding: 8px;
    margin: 12px 0;
    border-radius: 6px;
  }
  .illustration_title {
    font-size: 14px;
  }
}

@media (max-width: 767px) {
  .illustration[style*="float"],
  .illustration.float-left,
  .illustration.float-right {
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}


/* Anti-distortion fix for images in .illustration */
.illustration img {
  width: 100% !important;     /* растягиваем только по ширине контейнера */
  height: auto !important;    /* сохраняем пропорции */
  max-width: 100% !important;
  max-height: none !important;
  object-fit: contain;        /* если где-то выставят высоту — не обрезать */
}

/* Если в HTML есть атрибуты width/height — игнорируем высоту */
.illustration img[width],
.illustration img[height] {
  height: auto !important;
}

/* Частые классы CMS, которые задают фикс-высоту */
.illustration img[class*="wp-image"],
.illustration img[class*="size-"] {
  height: auto !important;
}

/* На мобилках дополнительно страхуемся */
@media (max-width: 767px) {
  .illustration {
    width: 100%;
    max-width: 100%;
    margin: 16px 0;
    padding: 10px;
    border-radius: 8px;
    overflow: hidden;
  }
  .illustration img {
    display: block;
    width: 100% !important;
    height: auto !important;
    object-fit: contain;
  }

  /* Если где-то задали фиксированную высоту контейнеру — убираем */
  .illustration[style*="height"] {
    height: auto !important;
  }
}


/* financing-comparison2 — мобильная версия с переносами строк */
@media (max-width: 767px) {
  .financing-comparison2 {
    display: table;           /* обратно как таблица */
    width: 100%;
    table-layout: fixed;      /* чтобы колонки равномерно ужимались и переносили текст */
    border-radius: 8px;
    overflow: hidden;
  }

  .financing-comparison2 thead th,
  .financing-comparison2 td {
    white-space: normal !important;  /* разрешаем переносы */
    overflow-wrap: anywhere;         /* ломаем даже длинные слова/ссылки */
    word-break: break-word;          /* совместимость */
    hyphens: auto;                   /* мягкие переносы где возможно */
    font-size: 13px;
    line-height: 1.4;
    padding: 8px 10px;
    vertical-align: top;
  }

  /* убираем навязанные минимальные ширины из ранних стилей */
  .financing-comparison2 td:first-child,
  .financing-comparison2 td:last-child {
    min-width: 0 !important;
  }

  /* заголовки таблицы — по левому краю и переносимые */
  .financing-comparison2 thead th {
    text-align: left;
  }
}

/* ещё компактнее на очень узких экранах */
@media (max-width: 480px) {
  .financing-comparison2 thead th,
  .financing-comparison2 td {
    font-size: 12.5px;
    padding: 6px 8px;
  }
}
/* financing-comparison2 — горизонтальная прокрутка + умеренные переносы */
@media (max-width: 767px) {
  /* сам контейнер со скроллом */
  .table-article-wrapper2 {
    position: relative;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* не даём таблице ужиматься уже минимума — появится горизонтальный скролл */
  .financing-comparison2 {
    display: table !important;
    width: 100%;
    table-layout: auto;           /* естественные ширины колонок */
    min-width: 760px;             /* базовая ширина таблицы на мобилке */
    border-radius: 8px;
  }

  /* переносим текст при необходимости, но не жмём слишком сильно */
  .financing-comparison2 thead th,
  .financing-comparison2 td {
    white-space: normal !important;   /* перебиваем старое nowrap */
    overflow-wrap: anywhere;
    word-break: break-word;
    hyphens: auto;
    vertical-align: top;
    font-size: 13px;
    line-height: 1.4;
    padding: 8px 12px;
  }

  /* разумные минимальные ширины колонок (правь при нужном количестве столбцов) */
  .financing-comparison2 th,
  .financing-comparison2 td { min-width: 180px; }

  .financing-comparison2 th:first-child,
  .financing-comparison2 td:first-child { min-width: 200px; }   /* названия строк */
  .financing-comparison2 th:nth-child(2),
  .financing-comparison2 td:nth-child(2) { min-width: 220px; }
  .financing-comparison2 th:nth-child(3),
  .financing-comparison2 td:nth-child(3) { min-width: 220px; }
  .financing-comparison2 th:nth-child(4),
  .financing-comparison2 td:nth-child(4) { min-width: 240px; }

  /* опционально: фиксируем первую колонку при горизонтальном скролле */
  .financing-comparison2 thead th:first-child {
    background: #3f2c93;
  }
  .financing-comparison2 tbody td:first-child {
    position: sticky;
    left: 0;
    z-index: 2;
    background: #E0EBF6;  /* совпадает с твоим стилем первой колонки */
  }
}

/* очень узкие экраны */
@media (max-width: 480px) {
  .financing-comparison2 { min-width: 640px; }
  .financing-comparison2 thead th,
  .financing-comparison2 td { font-size: 12.5px; padding: 6px 8px; }
}



/* ===== Lists: increase marker → text gap on mobile ===== */
@media (max-width: 767px) {
  /* Базовые буллиты внутри статьи (с твоим кастомным ::before) */
  .container_article li {
    padding-left: 38px;              /* было 30px */
  }
  .container_article li::before {
    left: 12px;                      /* было 10px — чуть вправо, больше зазор */
  }

  /* Нумерованный жирный список (.bald) */
  .container_article ul.bald li {
    padding-left: 2.8em;             /* было ~2em */
  }
  .container_article ul.bald li::before {
    width: 2.4em;                    /* расширяем «поле» для цифры */
  }

  /* Нумерованный лёгкий список (.bald2) */
  .container_article ul.bald2 li {
    padding-left: 2.6em;             /* было 22px */
  }
  .container_article ul.bald2 li::before {
    width: 2.2em;
  }

  /* Буквенный список (.alphabet) */
  .container_article ul.alphabet li {
    padding-left: 2.8em;             /* было 2em */
  }
  .container_article ul.alphabet li::before {
    width: 2.4em;
  }

  /* Вложенные элементы */
  .container_article ul.sub_sub_li li {
    padding-left: 34px;              /* было 28px */
  }

  /* Списки внутри карточки .conclusion */
  .conclusion li {
    padding-left: 38px;              /* было 30px */
  }
  .conclusion li::before {
    left: 12px;
  }

  /* Нумерованный список с нативными маркерами внутри track_components */
  .track_components_text { padding-left: 18px; }
  .track_components_text li { padding-left: 14px; }
  .track_components_text li::marker {
    font-variant-numeric: tabular-nums;
    content: counter(list-item) ".\2003"; /* точка + em-space для запаса */
  }
}
