/* BENDES Academy — статья. Дизайн-система bendes.ru: ink #252525, золото #EACB7E на светлом, без скруглений и теней.
   Шрифты только сайта: Manrope (300/400/500) для текста, Bendes для заголовков. */

body:has(.acad-body) .article-add-info { display: none; }

.acad-body {
  --ac-ink: #252525;
  --ac-text: #252525;
  --ac-muted: #7a7a7a;
  --ac-gold: #eacb7e;
  --ac-gold-l: #f3e2b5;
  --ac-soft: #f6f6f6;
  --ac-line: #d3d3d3;
  --ac-line-s: #ececec;
  --ac-green: #397B6B;
  --ac-red: #ea0b0c;
  font-family: Manrope, sans-serif;
  font-weight: 400;
  color: var(--ac-text);
}
.acad-body > div[class^="acad-"] { max-width: none; margin: 0; padding: 0; font-family: Manrope, sans-serif; color: var(--ac-text); line-height: 1.65; }

/* ── нейтрализуем .formated / .information__content внутри статьи ── */
.acad-body p, .acad-body ul, .acad-body ol { margin: 0 0 14px; }
.acad-body ul { list-style: none; padding: 0; }
.acad-body ul li { margin: 0; padding: 0; }
.acad-body ul li::before { content: none; }
.acad-body a { color: inherit; }

/* ── типографика ── */
.acad-body p { font-size: 16px; line-height: 1.7; color: var(--ac-text); }
.acad-body strong { font-weight: 500; color: var(--ac-ink); }
.acad-body .lead { font-size: 17px; line-height: 1.7; color: var(--ac-muted); max-width: 820px; margin: 0 0 36px; }
.acad-body .lead em { font-style: normal; font-weight: 300; font-size: 21px; line-height: 1.45; color: var(--ac-ink); display: block; margin-bottom: 10px; }

.acad-body h2 {
  font-family: Bendes, serif; font-size: 30px; font-weight: 400; line-height: 1.1;
  letter-spacing: 0; text-transform: uppercase; color: var(--ac-ink);
  margin: 64px 0 24px; padding: 0; border: 0;
}
.acad-body h3 {
  font-family: Bendes, serif; font-weight: 400; font-size: 22px; line-height: 1.2;
  text-transform: uppercase; letter-spacing: .02em; color: var(--ac-ink); margin: 0 0 12px;
}
.acad-body h4 {
  font-family: Manrope, sans-serif; font-size: 12px; font-weight: 500; letter-spacing: .14em;
  text-transform: uppercase; color: var(--ac-ink); margin: 22px 0 10px;
}

/* общие «малые подписи» */
.acad-body .en, .acad-body .grade-en, .acad-body .full, .acad-body .pr, .acad-body .nm-sub,
.acad-body .gem, .acad-body .stage .num, .acad-body .related .lbl, .acad-body .compare-row .lbl {
  font-family: Manrope, sans-serif; font-size: 11px; font-weight: 500; letter-spacing: .14em;
  text-transform: uppercase; color: var(--ac-muted);
}
/* «акцентные» названия в карточках */
.acad-body .ru, .acad-body .ttl, .acad-body .nm, .acad-body .grade, .acad-body .faq-q,
.acad-body .name, .acad-body .ct, .acad-body .v {
  font-family: Manrope, sans-serif; font-weight: 500; color: var(--ac-ink); letter-spacing: 0;
}
/* крупные цифры и аббревиатуры — фирменный Bendes */
.acad-body .letter, .acad-body .priority .num, .acad-body .step .num, .acad-body .remote .n,
.acad-body .abbr {
  font-family: Bendes, serif; font-weight: 400; color: var(--ac-ink); line-height: 1;
}

/* ── панели и цитаты ── */
.acad-body .panel {
  background: var(--ac-soft); border-left: 2px solid var(--ac-gold); padding: 18px 22px; margin: 18px 0;
  font-size: 15px; line-height: 1.65; color: var(--ac-text);
}
.acad-body .panel strong { display: block; font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--ac-ink); margin-bottom: 6px; }
.acad-body .panel.warn { border-left-color: var(--ac-red); }
.acad-body .panel.warn strong { color: var(--ac-red); }

/* ── SVG-иллюстрации ── */
.acad-body svg { max-width: 100%; }
.acad-body .fc { fill: #fdfcf9; stroke: var(--ac-gold); }
.acad-body .fc-d { fill: #efe8d8; stroke: var(--ac-gold); }
.acad-body .fc-l { fill: #fffefb; stroke: var(--ac-gold); }
.acad-body .gr { stroke: var(--ac-gold); fill: none; }

/* ── сетки карточек (формы, стили, камни, металлы) ── */
.acad-body .shapes-grid, .acad-body .style-grid, .acad-body .gems-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--ac-line-s);
  border: 1px solid var(--ac-line-s); margin: 0 0 28px;
}
.acad-body .swatch-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 1px; background: var(--ac-line-s); border: 1px solid var(--ac-line-s); margin: 0 0 28px; }
.acad-body .shape-card, .acad-body .style-card, .acad-body .gem-card, .acad-body .swatch {
  background: #fff; text-align: center; padding: 22px 12px 20px; transition: background .2s;
}
.acad-body .shape-card:hover, .acad-body .style-card:hover, .acad-body .gem-card:hover { background: var(--ac-soft); }
.acad-body .shape-card svg, .acad-body .style-card svg { display: block; width: 96px; height: 96px; margin: 0 auto 14px; }
.acad-body .gem-card svg { display: block; width: 84px; height: 84px; margin: 0 auto 14px; }
.acad-body .swatch svg { display: block; width: 70px; height: 70px; margin: 0 auto 10px; }
.acad-body .shape-card .ru, .acad-body .style-card .ru, .acad-body .gem-card .ru, .acad-body .swatch .nm { font-size: 15px; margin: 0 0 4px; }
.acad-body .gem-card .meta { font-size: 12px; color: var(--ac-muted); margin-top: 4px; }

/* ── подробный разбор: картинка + текст ── */
.acad-body .detail, .acad-body .stage {
  display: grid; grid-template-columns: 160px 1fr; gap: 32px; align-items: start;
  padding: 28px 0; border-top: 1px solid var(--ac-line-s);
}
.acad-body .detail svg, .acad-body .stage svg { width: 150px; height: 150px; display: block; background: var(--ac-soft); padding: 14px; box-sizing: border-box; }
.acad-body .detail .pct {
  display: inline-block; margin-top: 6px; padding: 5px 12px; font-size: 11px; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase; color: var(--ac-ink); border: 1px solid var(--ac-gold);
}
.acad-body .props { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--ac-line-s); border: 1px solid var(--ac-line-s); margin: 14px 0 0; }
.acad-body .props div { background: #fff; padding: 10px 12px; font-size: 13px; }
.acad-body .props b { display: block; font-size: 10px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--ac-muted); margin-bottom: 3px; }
.acad-body .props span { font-size: 16px; font-weight: 500; color: var(--ac-ink); }
.acad-body .pros-cons { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 14px; }
.acad-body .pros-cons div, .acad-body .stage .you { background: var(--ac-soft); padding: 12px 16px; font-size: 14px; line-height: 1.55; border-left: 2px solid var(--ac-gold); }
.acad-body .pros-cons b, .acad-body .stage .you b { display: block; font-size: 10.5px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--ac-muted); margin-bottom: 4px; }
.acad-body .stage .num { margin-bottom: 6px; }
.acad-body .stage .you { margin-top: 12px; }

/* ── строки сравнения «подпись — значение» ── */
.acad-body .compare { margin: 18px 0 32px; border-top: 1px solid var(--ac-line); }
.acad-body .compare-row { display: grid; grid-template-columns: 200px 1fr; gap: 24px; padding: 14px 0; border-bottom: 1px solid var(--ac-line-s); align-items: baseline; }
.acad-body .compare-row .lbl { color: var(--ac-ink); }
.acad-body .compare-row .val { font-size: 15px; color: var(--ac-text); }

/* металлы: таблица на 6 колонок */
.acad-mt .compare { border-top: 0; overflow-x: auto; }
.acad-mt .compare-table { display: grid; grid-template-columns: 140px repeat(5, 1fr); min-width: 680px; }
.acad-mt .compare-table .compare-row { display: contents; }
.acad-mt .compare-table .compare-row > div { padding: 12px 10px; border-bottom: 1px solid var(--ac-line-s); font-size: 14px; }
.acad-mt .compare-table .compare-row.head > div { font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--ac-muted); border-bottom: 1px solid var(--ac-gold); }
.acad-mt .compare-table .compare-row.head .name { font-size: 14px; letter-spacing: 0; text-transform: none; color: var(--ac-ink); }

/* сертификаты: одна камень — четыре лаборатории */
.acad-cert .compare-table { margin: 18px 0 28px; border-top: 1px solid var(--ac-line); }
.acad-cert .compare-table .row { display: grid; grid-template-columns: 110px repeat(4, 1fr); gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--ac-line-s); align-items: center; }
.acad-cert .compare-table .row.head { font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--ac-muted); }
.acad-cert .compare-table .row.head b { font-family: Bendes, serif; font-weight: 400; font-size: 18px; letter-spacing: .02em; color: var(--ac-ink); }
.acad-cert .compare-table .lbl { font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--ac-ink); }
.acad-cert .compare-table .v { font-size: 16px; }

/* ── 4C ── */
.acad-body .stat-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--ac-line-s); border: 1px solid var(--ac-line-s); margin: 0 0 32px; }
.acad-body .stat { background: #fff; padding: 20px 18px; }
.acad-body .stat .letter { display: block; font-size: 34px; margin-bottom: 8px; }
.acad-body .stat .name { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 6px; }
.acad-body .stat .desc { font-size: 13px; line-height: 1.5; color: var(--ac-muted); }
.acad-body .topic { padding: 30px 0; border-top: 1px solid var(--ac-line-s); }
.acad-body .topic-grid { display: grid; grid-template-columns: 220px 1fr; gap: 36px; align-items: start; }
.acad-body .topic-grid svg { width: 100%; height: auto; display: block; background: var(--ac-soft); padding: 16px; box-sizing: border-box; }
.acad-body .color-scale { margin: 16px 0 20px; }
.acad-body .color-row { display: grid; grid-template-columns: repeat(23, 1fr); gap: 1px; height: 56px; border: 1px solid var(--ac-line); }
.acad-body .color-cell { display: flex; align-items: flex-end; justify-content: center; padding-bottom: 6px; font-size: 11px; font-weight: 500; color: var(--ac-ink); }
.acad-body .color-labels { display: grid; grid-template-columns: 3fr 4fr 3fr 4fr 9fr; gap: 1px; margin-top: 8px; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--ac-muted); }
.acad-body .color-labels span { text-align: center; line-height: 1.4; }
.acad-body .clarity-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--ac-line-s); border: 1px solid var(--ac-line-s); margin: 16px 0 22px; }
.acad-body .clarity-card { background: #fff; padding: 18px 12px; text-align: center; }
.acad-body .clarity-card svg { width: 72px; height: 72px; display: block; margin: 0 auto 10px; }
.acad-body .clarity-card .grade { font-size: 15px; }
.acad-body .clarity-card .grade-en { margin: 3px 0 6px; font-size: 10px; }
.acad-body .clarity-card .note { font-size: 12.5px; line-height: 1.45; color: var(--ac-muted); }
.acad-body .carat-row { display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 14px; margin: 16px 0 22px; padding: 22px; background: var(--ac-soft); }
.acad-body .carat-item { flex: 1; min-width: 72px; text-align: center; }
.acad-body .carat-item svg { display: block; margin: 0 auto 8px; }
.acad-body .carat-item .ct { font-size: 15px; }
.acad-body .carat-item .mm { font-size: 12px; color: var(--ac-muted); }
.acad-body .priority { display: grid; grid-template-columns: 56px 1fr; gap: 16px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--ac-line-s); }
.acad-body .priority .num { font-size: 36px; }
.acad-body .priority .body strong, .acad-body .step .body strong { display: block; font-size: 12px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; color: var(--ac-ink); margin-bottom: 4px; }
.acad-body .priority .body p, .acad-body .step .body p { font-size: 15px; color: var(--ac-text); margin: 0; }

/* ── сертификаты ── */
.acad-body .cert-grid { display: grid; grid-template-columns: 250px 1fr; gap: 34px; align-items: start; margin: 16px 0 22px; }
.acad-body .cert-grid svg { width: 100%; height: auto; display: block; background: var(--ac-soft); padding: 16px; box-sizing: border-box; }
.acad-body .lab-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--ac-line-s); border: 1px solid var(--ac-line-s); margin: 16px 0 22px; }
.acad-body .lab-card { background: #fff; padding: 24px 24px 22px; border-top: 2px solid var(--ac-gold); }
.acad-body .lab-card.warn { border-top-color: var(--ac-red); }
.acad-body .lab-card .abbr { font-size: 32px; color: var(--ac-ink); margin-bottom: 6px; }
.acad-body .lab-card .full { margin-bottom: 12px; }
.acad-body .lab-card .meta { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 12.5px; color: var(--ac-muted); margin-bottom: 12px; }
.acad-body .lab-card .meta b { font-weight: 500; color: var(--ac-ink); }
.acad-body .lab-card p { font-size: 14.5px; margin: 0 0 10px; }
.acad-body .lab-card .verdict { display: inline-block; padding: 5px 12px; font-size: 10.5px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--ac-ink); border: 1px solid var(--ac-gold); }
.acad-body .lab-card.gold .verdict { background: var(--ac-gold); border-color: var(--ac-gold); color: var(--ac-ink); }
.acad-body .lab-card.warn .verdict { color: var(--ac-red); border-color: var(--ac-red); }
.acad-body .ru-system { margin: 16px 0 22px; border-top: 1px solid var(--ac-line); }
.acad-body .ru-system .row { display: grid; grid-template-columns: 180px 1fr; gap: 20px; padding: 12px 0; border-bottom: 1px solid var(--ac-line-s); font-size: 15px; }
.acad-body .ru-system .l { font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--ac-muted); padding-top: 3px; }

/* ── списки с тонким маркером (как в политике) ── */
.acad-body .checklist, .acad-body .never-list ul, .acad-body .brief ul { margin: 14px 0 22px; padding: 0; }
.acad-body .checklist li, .acad-body .never-list li, .acad-body .brief li {
  position: relative; padding: 10px 0 10px 22px; font-size: 15px; line-height: 1.6; border-bottom: 1px solid var(--ac-line-s);
}
.acad-body .checklist li:last-child, .acad-body .never-list li:last-child, .acad-body .brief li:last-child { border-bottom: 0; }
.acad-body .checklist li::before, .acad-body .never-list li::before, .acad-body .brief li::before {
  content: ''; position: absolute; left: 0; top: 22px; width: 8px; height: 1px; background: var(--ac-gold);
}
.acad-body .never-list { margin: 16px 0 24px; padding: 20px 24px 8px; background: var(--ac-soft); border-left: 2px solid var(--ac-red); }
.acad-body .never-list h4 { margin-top: 0; color: var(--ac-red); }
.acad-body .never-list li::before { background: var(--ac-red); }
.acad-body .brief { margin: 16px 0 24px; }

/* ── стили, тренды, уход: карточки-тексты ── */
.acad-body .trends, .acad-body .care-grid, .acad-body .origin-grid, .acad-body .types, .acad-body .signs {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--ac-line-s); border: 1px solid var(--ac-line-s); margin: 16px 0 26px;
}
.acad-body .signs { grid-template-columns: repeat(2, 1fr); }
.acad-body .trend-card, .acad-body .care-card, .acad-body .origin-card, .acad-body .type-card, .acad-body .sign-card { background: #fff; padding: 20px 20px 18px; }
.acad-body .type-card { border-top: 2px solid var(--ac-gold); }
.acad-body .trend-card .ttl, .acad-body .care-card .ttl, .acad-body .origin-card .ttl, .acad-body .type-card .ttl, .acad-body .sign-card .ttl { font-size: 15px; margin-bottom: 8px; }
.acad-body .trend-card p, .acad-body .care-card p, .acad-body .origin-card p, .acad-body .type-card p, .acad-body .sign-card p { font-size: 14px; line-height: 1.6; color: var(--ac-text); margin: 0; }
.acad-body .origin-card .gem { margin-bottom: 6px; font-size: 10.5px; }

/* ── шкалы с полосой (Моос, твёрдость) ── */
.acad-body .mohs, .acad-body .hardness { margin: 16px 0 24px; }
.acad-body .mohs-row, .acad-body .hardness-row { display: grid; grid-template-columns: 190px 1fr 64px; gap: 16px; align-items: center; padding: 9px 0; border-bottom: 1px solid var(--ac-line-s); font-size: 14.5px; }
.acad-body .mohs-bar, .acad-body .hardness-bar { height: 6px; background: linear-gradient(90deg, var(--ac-gold) var(--w), #eee8dc var(--w)); }
.acad-body .mohs-val, .acad-body .hardness-val { font-size: 15px; font-weight: 500; color: var(--ac-ink); text-align: right; }

/* ── таблица ухода за камнями ── */
.acad-body .care-table { margin: 16px 0 24px; border-top: 1px solid var(--ac-line); }
.acad-body .care-row { display: grid; grid-template-columns: 170px repeat(3, 1fr); gap: 14px; padding: 11px 0; border-bottom: 1px solid var(--ac-line-s); font-size: 14px; align-items: center; }
.acad-body .care-row.head { font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--ac-muted); border-bottom-color: var(--ac-gold); }
.acad-body .care-row .gem { font-size: 14px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--ac-ink); }
.acad-body .care-row .yes { color: var(--ac-ink); font-weight: 500; }
.acad-body .care-row .no { color: var(--ac-red); font-weight: 500; }

/* ── уход: набор, шаги, камни, расписание ── */
.acad-body .kit-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--ac-line-s); border: 1px solid var(--ac-line-s); margin: 16px 0 24px; }
.acad-body .kit-card { background: #fff; padding: 20px 14px; text-align: center; }
.acad-body .kit-card svg { width: 44px; height: 44px; display: block; margin: 0 auto 12px; }
.acad-body .kit-card .ttl { font-size: 15px; margin-bottom: 6px; }
.acad-body .kit-card p { font-size: 13px; line-height: 1.5; color: var(--ac-muted); margin: 0; }
.acad-body .step-block { margin: 16px 0 24px; }
.acad-body .step { display: grid; grid-template-columns: 56px 1fr; gap: 18px; padding: 16px 0; border-bottom: 1px solid var(--ac-line-s); }
.acad-body .step .num { font-size: 34px; }
.acad-body .care-by-stone { margin: 16px 0 24px; border-top: 1px solid var(--ac-line); }
.acad-body .stone-row { display: grid; grid-template-columns: 180px 1fr; gap: 26px; padding: 16px 0; border-bottom: 1px solid var(--ac-line-s); }
.acad-body .stone-row .nm { font-size: 16px; }
.acad-body .stone-row .nm-sub { margin-top: 3px; font-size: 10.5px; }
.acad-body .stone-row p { font-size: 15px; margin: 0; }
.acad-body .schedule { margin: 16px 0 24px; border-top: 1px solid var(--ac-line); }
.acad-body .schedule-row { display: grid; grid-template-columns: 200px 1fr 100px; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--ac-line-s); font-size: 14.5px; align-items: center; }
.acad-body .schedule-row.head { font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--ac-muted); border-bottom-color: var(--ac-gold); }
.acad-body .schedule-row .freq { font-weight: 500; color: var(--ac-ink); text-align: right; }

/* ── индивидуальный заказ ── */
.acad-body .journey { margin: 16px 0 28px; padding: 22px 14px; background: var(--ac-soft); overflow-x: auto; }
.acad-body .journey svg { display: block; width: 100%; min-width: 640px; height: auto; }
.acad-co .price { margin: 16px 0 24px; border-top: 1px solid var(--ac-line); }
.acad-co .price-row { display: grid; grid-template-columns: 200px 1fr; gap: 24px; padding: 16px 0; border-bottom: 1px solid var(--ac-line-s); }
.acad-co .price-row .lbl { font-size: 15px; font-weight: 500; color: var(--ac-ink); }
.acad-co .price-row p { font-size: 15px; margin: 0; }
.acad-body .remote { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--ac-line-s); border: 1px solid var(--ac-line-s); margin: 16px 0 24px; }
.acad-body .remote > div { background: #fff; padding: 20px 16px; }
.acad-body .remote .n { font-size: 30px; margin-bottom: 10px; }
.acad-body .remote p { font-size: 14px; line-height: 1.55; margin: 0; }

/* ── FAQ ── */
.acad-body .faq-block { margin: 16px 0 24px; border-top: 1px solid var(--ac-line); }
.acad-body .faq-item { padding: 18px 0; border-bottom: 1px solid var(--ac-line-s); }
.acad-body .faq-q { font-size: 16px; line-height: 1.4; margin: 0 0 8px; }
.acad-body .faq-a { font-size: 15px; line-height: 1.65; color: var(--ac-text); margin: 0; }

/* ── дальше в академии ── */
.acad-body .related { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--ac-line-s); border: 1px solid var(--ac-line-s); margin: 16px 0 28px; }
.acad-body .related a { display: block; background: #fff; padding: 22px 20px; text-decoration: none; color: var(--ac-ink); transition: background .2s; }
.acad-body .related a:hover { background: var(--ac-soft); }
.acad-body .related .lbl { margin-bottom: 8px; }
.acad-body .related .ttl { font-size: 15px; }

/* ── финальный призыв: светлый ── */
.acad-body .cta { margin: 40px 0 24px; padding: 40px 32px; background: var(--ac-soft); border-top: 1px solid var(--ac-gold); text-align: center; }
.acad-body .cta h3 { color: var(--ac-ink); margin-bottom: 12px; }
.acad-body .cta p { max-width: 640px; margin: 0 auto 22px; color: var(--ac-text); font-size: 15px; }
.acad-body .cta a {
  display: inline-block; padding: 14px 32px; border: 1px solid var(--ac-ink); color: var(--ac-ink); text-decoration: none;
  font-size: 11px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; transition: background .2s, color .2s, border-color .2s;
}
.acad-body .cta a:hover { background: transparent; border-color: var(--ac-gold); color: var(--ac-ink); }

/* ── адаптив ── */
@media (max-width: 900px) {
  .acad-body .shapes-grid, .acad-body .style-grid, .acad-body .gems-grid, .acad-body .clarity-grid,
  .acad-body .kit-grid, .acad-body .remote, .acad-body .stat-row { grid-template-columns: repeat(2, 1fr); }
  .acad-body .swatch-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 780px) {
  .acad-body .detail, .acad-body .stage, .acad-body .topic-grid, .acad-body .cert-grid { grid-template-columns: 1fr; gap: 16px; }
  .acad-body .trends, .acad-body .care-grid, .acad-body .origin-grid, .acad-body .types,
  .acad-body .signs, .acad-body .related, .acad-body .lab-grid { grid-template-columns: 1fr; }
  .acad-body .compare-row, .acad-body .ru-system .row, .acad-body .stone-row, .acad-co .price-row { grid-template-columns: 1fr; gap: 4px; }
  .acad-body .mohs-row, .acad-body .hardness-row { grid-template-columns: 120px 1fr 56px; gap: 10px; font-size: 13.5px; }
  .acad-body .schedule-row { grid-template-columns: 1fr 80px; }
  .acad-body .schedule-row > div:nth-child(2) { grid-column: 1 / -1; grid-row: 2; font-size: 13.5px; color: var(--ac-muted); }
  .acad-body .care-row { grid-template-columns: 110px repeat(3, 1fr); font-size: 12.5px; gap: 8px; }
  .acad-cert .compare-table .row { grid-template-columns: 80px repeat(4, 1fr); gap: 6px; }
  .acad-body .pros-cons { grid-template-columns: 1fr; }
  .acad-body .cta { padding: 30px 20px; }
}
@media (max-width: 520px) {
  .acad-body .props { grid-template-columns: 1fr 1fr; }
  .acad-body .swatch-grid { grid-template-columns: repeat(2, 1fr); }
  .acad-body h3 { font-size: 19px; }
}

/* ── каркас статьи (шаблон academy_article) ── */
.aa { max-width: 1030px; margin: 0 auto; padding: 0 15px 80px; }
.aa .simple-page-head-center { margin-bottom: 40px; }
.acad-body a:not([class]) { border-bottom: 1px solid var(--ac-gold); transition: color .3s ease-in-out; }
.acad-body a:not([class]):hover { color: var(--ac-gold); }
.acad-body .aa-hero { margin: 0 0 40px; }
.acad-body .aa-hero img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.acad-body .aa-fig { margin: 36px auto; max-width: 620px; }
.acad-body .aa-fig img { display: block; width: 100%; height: auto; }
.acad-body .aa-fig figcaption, .acad-body .aa-hero figcaption { margin-top: 10px; font-size: 13px; line-height: 1.5; color: var(--ac-muted); }
.acad-body .aa-toc { margin: 0 0 48px; padding: 18px 0; border-top: 1px solid var(--ac-line); border-bottom: 1px solid var(--ac-line); }
.acad-body .aa-toc b { display: block; margin-bottom: 12px; font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--ac-muted); }
.acad-body .aa-toc nav { display: flex; flex-wrap: wrap; gap: 10px 28px; }
.acad-body .aa-toc a { font-size: 14px; letter-spacing: .1em; text-transform: uppercase; color: var(--ac-ink); border-bottom: 1px solid currentColor; padding-bottom: 3px; text-decoration: none; }
.acad-body .aa-toc a:hover { color: var(--ac-gold); }
.acad-body h2 { scroll-margin-top: 90px; }
@media (max-width: 1199px) { .acad-body h2 { font-size: 26px; } }
@media (max-width: 767px) { .acad-body h2 { font-size: 22px; margin-top: 48px; } .acad-body .aa-hero { margin-bottom: 28px; } }

/* ── v3: единая шкала шрифтов — 16 текст, 14 второстепенный, 12–13 подписи ── */
.acad-body h4 { font-size: 13px; letter-spacing: .16em; }
.acad-body .en, .acad-body .grade-en, .acad-body .full, .acad-body .pr, .acad-body .nm-sub,
.acad-body .gem, .acad-body .stage .num, .acad-body .related .lbl, .acad-body .compare-row .lbl,
.acad-body .stat .name, .acad-body .color-labels, .acad-body .panel strong, .acad-body .props b,
.acad-body .pros-cons b, .acad-body .stage .you b, .acad-body .care-row.head, .acad-body .schedule-row.head { font-size: 12px; }
.acad-body .clarity-card .grade-en { font-size: 12px; }
.acad-body .stat .desc, .acad-body .clarity-card .note, .acad-body .gem-card .meta, .acad-body .kit-card p,
.acad-body .lab-card .meta, .acad-body .carat-item .mm, .acad-body .aa-fig figcaption { font-size: 14px; }
.acad-body .panel, .acad-body .compare-row .val, .acad-body .faq-a, .acad-body .priority .body p,
.acad-body .step .body p, .acad-body .stone-row p, .acad-body .trend-card p, .acad-body .care-card p,
.acad-body .origin-card p, .acad-body .type-card p, .acad-body .sign-card p, .acad-body .lab-card p,
.acad-body .remote p, .acad-body .pros-cons div { font-size: 16px; }
.acad-body .lead { font-size: 16px; }
.acad-body .priority .body strong, .acad-body .step .body strong { font-size: 13px; }
.acad-body .clarity-card .grade, .acad-body .carat-item .ct, .acad-body .faq-q { font-size: 16px; }
/* карточки «Дальше в Академии» — как плитки хаба */
.acad-body .related a { padding: 28px 24px; }
.acad-body .related .ttl { font-family: Bendes, serif; font-weight: 400; font-size: 18px; line-height: 1.15; letter-spacing: .1em; text-transform: uppercase; }
/* схема огранки — крупно, над текстом */
.acad-body .topic-grid { grid-template-columns: 1fr; gap: 28px; }
.acad-body .topic-grid > svg { max-width: 760px; width: 100%; margin: 0 auto; padding: 28px; }

/* ── блок «фото + главное» ── */
.acad-body .aa-key { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin: 36px 0; background: var(--ac-soft); }
.acad-body .aa-key img { display: block; width: 100%; height: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.acad-body .aa-key__box { display: flex; flex-direction: column; justify-content: center; padding: 40px 44px; }
.acad-body .aa-key__box b { display: block; margin-bottom: 18px; font-size: 13px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; color: var(--ac-muted); }
.acad-body .aa-key__box ul { margin: 0; padding: 0; list-style: none; }
.acad-body .aa-key__box li { position: relative; padding: 12px 0 12px 24px; font-size: 16px; line-height: 1.5; color: var(--ac-ink); border-bottom: 1px solid var(--ac-line); }
.acad-body .aa-key__box li:last-child { border-bottom: 0; }
.acad-body .aa-key__box li::before { content: ''; position: absolute; left: 0; top: 23px; width: 12px; height: 1px; background: var(--ac-gold); }

/* ── единый блок связи (CTA) ── */
.acad-body .cta { padding: 56px 40px; border-top: 0; }
.acad-body .cta h3 { font-size: 30px; margin-bottom: 16px; }
.acad-body .cta p { font-size: 16px; }
.aa-actions { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 16px 20px; margin-top: 8px; }
.acad-body .aa-actions a, .ah .aa-actions a { display: inline-flex; align-items: center; justify-content: center; height: 50px; min-width: 220px; padding: 0 24px; box-sizing: border-box; border: 1px solid #252525; background: transparent; color: #252525; font-family: Manrope, sans-serif; font-size: 14px; font-weight: 400; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; transition: border-color .3s ease-in-out, color .3s ease-in-out; }
.acad-body .aa-actions a:hover, .ah .aa-actions a:hover { border-color: #eacb7e; color: #252525; background: transparent; }
.aa-addr { margin: 22px 0 0 !important; font-size: 14px !important; color: #7a7a7a !important; }
.aa-addr a { color: #252525 !important; border-bottom: 1px solid #eacb7e; text-decoration: none; }
@media (max-width: 767px) {
  .acad-body .aa-key { grid-template-columns: 1fr; }
  .acad-body .aa-key__box { padding: 28px 22px; }
  .acad-body .cta { padding: 40px 20px; }
  .acad-body .cta h3 { font-size: 22px; }
  .acad-body .aa-actions a, .ah .aa-actions a { width: 100%; min-width: 0; }
}
.acad-body .cta .aa-addr a { display: inline; height: auto; min-width: 0; padding: 0 0 2px; border: 0; border-bottom: 1px solid #eacb7e; font-size: 14px; letter-spacing: 0; text-transform: none; }
.acad-body .cta .aa-addr a:hover { background: transparent; color: #252525; }
.acad-body .topic-grid > svg { background: var(--ac-soft); }

/* ── чертёж огранки в трёх проекциях ── */
.acad-body .detail.aa-detail { grid-template-columns: 1fr; gap: 22px; padding: 36px 0; }
.acad-body .aa-draw { margin: 0 auto; width: 100%; max-width: 784px; }
.acad-body .aa-draw--s { max-width: 470px; }
.acad-body .aa-draw img { display: block; width: 100%; height: auto; }
.acad-body .aa-draw figcaption { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 12px; font-size: 12px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--ac-muted); text-align: center; }
.acad-body .aa-draw figcaption { grid-template-columns: 25% 50% 25%; }

/* ── блок связи на изумрудной подложке (#397B6B) ── */
.acad-body .cta { background: #397b6b; color: #fff; }
.acad-body .cta h3 { color: #fff; }
.acad-body .cta p { color: rgba(255,255,255,.85); }
.acad-body .cta .aa-actions a { color: #fff; border-color: #fff; }
.acad-body .cta .aa-actions a:hover { color: #fff; border-color: #d4c9ae; }
.acad-body .cta .aa-addr { color: rgba(255,255,255,.75) !important; }
.acad-body .cta .aa-addr a { color: #fff !important; border-bottom-color: #d4c9ae; }
.acad-body .cta .aa-addr { margin: 22px auto 0 !important; text-align: center; }

/* ── блок связи v3: формат каталога (.seo-cta) — тёмная плашка, зелёные кнопки ── */
.aa-cta-dark { background: #252525 !important; color: #fff; display: grid; grid-template-columns: 1fr auto; grid-template-areas: "t b" "d b" "a b"; column-gap: 48px; row-gap: 10px; align-items: center; text-align: left !important; }
.aa-cta-dark > h2, .aa-cta-dark > h3 { grid-area: t; margin: 0 !important; color: #fff !important; font-size: 26px !important; text-align: left; }
.aa-cta-dark > p:not(.aa-addr) { grid-area: d; margin: 0 !important; max-width: 620px !important; color: rgba(255,255,255,.75) !important; text-align: left; }
.aa-cta-dark > .aa-addr { grid-area: a; margin: 6px 0 0 !important; text-align: left !important; color: rgba(255,255,255,.6) !important; }
.aa-cta-dark > .aa-addr a { color: #fff !important; border-bottom: 1px solid rgba(255,255,255,.4) !important; }
.aa-cta-dark > .aa-actions { grid-area: b; margin: 0 !important; justify-content: flex-end; gap: 12px; }
.aa-cta-dark .aa-actions a { min-width: 0 !important; height: 50px; padding: 0 28px !important; font-size: 14px; font-weight: 500 !important; letter-spacing: .1em; transition: background .3s, color .3s, border-color .3s !important; }
.aa-cta-dark .aa-actions a.aa-btn-primary { background: #397b6b !important; border: 1px solid #397b6b !important; color: #fff !important; }
.aa-cta-dark .aa-actions a.aa-btn-primary:hover { background: #eacb7e !important; border-color: #eacb7e !important; color: #252525 !important; }
.aa-cta-dark .aa-actions a.aa-btn-secondary { background: transparent !important; border: 1px solid #fff !important; color: #fff !important; }
.aa-cta-dark .aa-actions a.aa-btn-secondary:hover { background: #fff !important; color: #252525 !important; }
.ah .ah-cta.aa-cta-dark { max-width: 1670px; margin: 0 auto 100px; padding: 48px 56px; }
.acad-body .cta.aa-cta-dark { padding: 44px 48px; }
@media (max-width: 991px) {
  .aa-cta-dark { grid-template-columns: 1fr; grid-template-areas: "t" "d" "b" "a"; row-gap: 16px; }
  .aa-cta-dark > .aa-actions { justify-content: flex-start; }
}
@media (max-width: 767px) {
  .ah .ah-cta.aa-cta-dark { margin: 0 15px 60px; padding: 32px 22px; }
  .acad-body .cta.aa-cta-dark { padding: 32px 22px; }
  .aa-cta-dark > h2, .aa-cta-dark > h3 { font-size: 20px !important; }
  .aa-cta-dark .aa-actions a { width: 100%; }
}

/* ── блок связи v4: заголовок во всю ширину, кнопки на линии адреса ── */
.aa-cta-dark { grid-template-columns: 1fr auto !important; grid-template-areas: "t t" "d d" "a b" !important; row-gap: 14px !important; column-gap: 40px !important; align-items: end !important; }
.aa-cta-dark > h2, .aa-cta-dark > h3 { font-size: 32px !important; line-height: 1.1 !important; }
.aa-cta-dark > p:not(.aa-addr) { max-width: 760px !important; }
.aa-cta-dark > .aa-addr { margin: 18px 0 0 !important; align-self: center; }
.aa-cta-dark > .aa-actions { margin: 18px 0 0 !important; align-self: center; }
@media (max-width: 1199px) { .aa-cta-dark > h2, .aa-cta-dark > h3 { font-size: 26px !important; } }
@media (max-width: 991px) {
  .aa-cta-dark { grid-template-columns: 1fr !important; grid-template-areas: "t" "d" "b" "a" !important; }
  .aa-cta-dark > .aa-actions { justify-content: flex-start; }
}
@media (max-width: 767px) { .aa-cta-dark > h2, .aa-cta-dark > h3 { font-size: 22px !important; } }
@media (min-width: 992px) { .aa-cta-dark > .aa-addr { white-space: nowrap; } }

/* v5: кнопки всегда в одну строку на десктопе */
@media (min-width: 992px) {
  .aa-cta-dark { grid-template-columns: minmax(0, 1fr) auto !important; }
  .aa-cta-dark > .aa-actions { flex-wrap: nowrap !important; gap: 10px !important; }
  .aa-cta-dark .aa-actions a { padding: 0 22px !important; white-space: nowrap; }
}
/* «Дальше в Академии» из шаблона; CTA вынесен из .acad-body, сохраняем стиль */
.aa .aa-next { margin-top: 16px; }
.aa > .cta { margin: 40px 0 24px; padding: 44px 48px; text-align: center; }
.aa > .cta h3 { font-family: Bendes, serif; font-weight: 400; text-transform: uppercase; letter-spacing: .02em; }
.aa > .cta p { font-size: 16px; line-height: 1.6; }
.aa > .cta.aa-cta-dark .aa-actions a { display: inline-flex; align-items: center; justify-content: center; height: 50px; box-sizing: border-box; font-family: Manrope, sans-serif; text-transform: uppercase; text-decoration: none; }
@media (max-width: 767px) { .aa > .cta { padding: 32px 22px; } }
.aa-cta-dark > .aa-addr, .acad-body .cta.aa-cta-dark .aa-addr, .aa > .cta.aa-cta-dark .aa-addr { justify-self: start !important; margin-left: 0 !important; margin-right: 0 !important; max-width: none !important; text-align: left !important; }

/* CTA: чат и Telegram одинаковой ширины */
@media (min-width: 768px) {
  .aa-cta-dark .aa-actions a.aa-btn-primary { width: 172px; padding: 0 !important; justify-content: center; }
}

/* ── «Изделия по теме»: карточки каталога внутри статьи ── */
.acad-body .aa-prod { margin: 56px 0 16px; }
.acad-body .aa-prod__head { display: flex; justify-content: space-between; align-items: baseline; gap: 20px; margin-bottom: 24px; }
.acad-body .aa-prod__title { font-family: Bendes, serif; font-weight: 400; font-size: 30px; line-height: 1.1; text-transform: uppercase; color: var(--ac-ink); }
.acad-body .aa-prod__more { flex: none; font-size: 14px; letter-spacing: .1em; text-transform: uppercase; color: var(--ac-ink); border-bottom: 1px solid currentColor; padding-bottom: 3px; white-space: nowrap; text-decoration: none; transition: color .3s ease-in-out; }
.acad-body .aa-prod__more:hover { color: var(--ac-gold); }
.acad-body .aa-prod__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0 24px; }
.acad-body .aa-prod__grid .unit__item { width: 100%; margin: 0; padding: 0; }
.acad-body .aa-prod__grid img { max-width: 100%; height: auto; }
@media (max-width: 1199px) { .acad-body .aa-prod__title { font-size: 26px; } }
@media (max-width: 991px) { .acad-body .aa-prod__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; } }
@media (max-width: 767px) { .acad-body .aa-prod__title { font-size: 22px; } .acad-body .aa-prod__head { flex-wrap: wrap; } }

/* «Изделия по теме» v2: три карточки, без названия и «Подробнее» — цена при наведении */
.acad-body .aa-prod__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 24px; }
.acad-body .aa-prod__grid .unit__name, .acad-body .aa-prod__grid .unit__btn-more { display: none !important; }
.acad-body .aa-prod__grid .unit__item { margin-bottom: 0; }
@media (max-width: 991px) { .acad-body .aa-prod__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 12px; } }
@media (max-width: 767px) {
  .acad-body .aa-prod__grid { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 72%; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; padding-bottom: 6px; }
  .acad-body .aa-prod__grid .unit__item { scroll-snap-align: start; }
}

/* таблица сравнения металлов: прокрутка вбок внутри экрана */
.acad-mt .compare { max-width: calc(100vw - 30px); -webkit-overflow-scrolling: touch; }
.acad-cr .schedule-row > div { min-width: 0; }
.acad-cr .schedule-row .freq { white-space: normal; }
.acad-body .journey { max-width: calc(100vw - 30px); box-sizing: border-box; }
.acad-body .kit-card svg { width: 72px; height: 72px; }
.acad-body .swatch svg { width: 84px; height: 84px; }
@media (min-width: 768px) { .aa-next .related { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 1fr; } }

/* Гравировка: галерея вариантов */
.engr-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--ac-line-s); border: 1px solid var(--ac-line-s); margin: 16px 0 28px; }
.engr-card { background: #fff; padding: 16px 14px 18px; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.engr-card svg { display: block; width: 100%; height: auto; margin: 0 0 6px; }
.engr-card b { font-size: 15px; font-weight: 500; color: #252525; }
.engr-card span { font-size: 13px; line-height: 1.5; color: var(--ac-muted); }
@media (max-width: 767px) { .engr-grid { grid-template-columns: repeat(2, 1fr); } .engr-card { padding: 12px 10px 14px; } }

.engr-grid--photo { grid-template-columns: repeat(3, 1fr); }
.engr-grid--photo .engr-card { padding: 0 0 18px; gap: 6px; }
.engr-grid--photo .engr-card img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; margin: 0 0 8px; }
.engr-grid--photo .engr-card b, .engr-grid--photo .engr-card span { padding: 0 16px; }
@media (max-width: 767px) { .engr-grid--photo { grid-template-columns: repeat(2, 1fr); } .engr-grid--photo .engr-card { padding: 0 0 14px; } .engr-grid--photo .engr-card b, .engr-grid--photo .engr-card span { padding: 0 10px; } }
