/* Страницы книги и комплекта: только то, чего нет в course-page.css */

/* --- hero --- */
.course-hero--book .course-hero__image {
  height: 690px; background: #fff !important; border: 0; box-shadow: none;
}
/* у курса поверх картинки лежит полупрозрачный оверлей (в макете книги его нет) */
.course-hero--book .course-hero__image::before,
.course-hero--book .course-hero__image::after { content: none !important; display: none !important; }
.course-hero--book .course-hero__image img {
  width: 100%; height: 100%; object-fit: contain; object-position: center;
  background: transparent; filter: none; opacity: 1;
}

.hero-price-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.hero-price-row__saving { color: #4f467c; font-weight: 500; font-size: 16px; }

/* --- блок автора в hero книги --- */
.hero-author {
  display: flex; align-items: center; gap: 12px; padding: 12px;
  background: #f5f5f9; border-radius: 8px; color: inherit; text-decoration: none;
}
.hero-author__photo { width: 74px; height: 74px; border-radius: 50%; overflow: hidden; flex: 0 0 74px; }
.hero-author__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hero-author__name { font-size: 20px; font-weight: 500; line-height: 1.3; color: #100f27; }

/* --- таблица «название — значение» (характеристики книги, состав комплекта) --- */
.spec-list { display: flex; flex-direction: column; gap: 12px; font-size: 16px; }
.spec-list__title { font-size: 22px; font-weight: 500; line-height: 1.3; color: #100f27; margin: 0 0 12px; }
.spec-list__row { display: flex; align-items: flex-start; gap: 20px; }
.spec-list__label { flex: 0 0 197px; color: rgba(16, 15, 39, .6); }
.spec-list__value { flex: 1; color: #100f27; }

/* --- сайдбар «Выгода комплекта» --- */
.bundle-sidebar { gap: 24px; }
.bundle-sidebar__eyebrow { margin: 0 0 12px; color: #4f467c; font-weight: 500; font-size: 16px; }
.bundle-sidebar__lines { display: flex; flex-direction: column; gap: 8px; font-size: 16px; }
.bundle-sidebar__row { display: flex; justify-content: space-between; gap: 12px; color: rgba(16, 15, 39, .6); }
.bundle-sidebar__row s { color: rgba(16, 15, 39, .8); white-space: nowrap; }
.bundle-sidebar__row--total { padding-top: 8px; color: #100f27; }
.bundle-sidebar__price { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.bundle-sidebar__price-value { font-size: 30px; font-weight: 600; color: #100f27; }
.bundle-sidebar__saving { color: #4f467c; font-weight: 500; }

/* --- состав комплекта (вкладка): горизонтальные карточки --- */
.bundle-items { display: flex; flex-direction: column; gap: 12px; }
.bundle-item {
  display: flex; align-items: center; gap: 20px;
  padding-right: 20px; overflow: hidden;
  background: #f5f5f9; border-radius: 10px;
}
.bundle-item__image {
  position: relative; display: block; flex: 0 0 227px; width: 227px; height: 251px;
  background: #fff; border-radius: 8px 0 0 8px; overflow: hidden;
}
.bundle-item__image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.bundle-item--course .bundle-item__image::after { content: ""; position: absolute; inset: 0; background: rgba(19, 6, 45, .2); }
.bundle-item__body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.bundle-item__top { display: flex; flex-direction: column; gap: 12px; }
.bundle-item__chip {
  align-self: flex-start; display: inline-flex; align-items: center; gap: 4px;
  padding: 6px 8px; border-radius: 4px; background: #e9e5f6; color: #4f467c; font-size: 12px; line-height: 14px;
}
.bundle-item__chip svg { width: 16px; height: 16px; flex: 0 0 16px; }
.bundle-item__title { display: block; margin-bottom: 6px; font-size: 22px; font-weight: 500; line-height: 1.3; color: #100f27; text-decoration: none; }
.bundle-item__text { margin: 0; font-size: 16px; color: rgba(16, 15, 39, .8); }
.bundle-item__author { margin: 0; font-size: 16px; line-height: 1.5; color: rgba(16, 15, 39, .8); }
.bundle-item__footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.bundle-item__prices { display: flex; align-items: center; gap: 6px; white-space: nowrap; }
.bundle-item__price-old { font-size: 16px; color: rgba(16, 15, 39, .8); }
.bundle-item__price-now { font-size: 24px; font-weight: 600; line-height: 1.3; color: #100f27; }
.bundle-item__price-now.is-sale { color: #da2d30; }
.bundle-item__price-note { font-size: 14px; font-weight: 500; color: #da2d30; }

@media (max-width: 768px) {
  .bundle-item { flex-direction: column; align-items: stretch; padding: 0 0 20px; }
  .bundle-item__image { width: 100%; flex-basis: auto; height: 220px; border-radius: 8px 8px 0 0; }
  .bundle-item__body { padding: 0 20px; }
  .bundle-item__footer { flex-wrap: wrap; }
}

/* --- сопутствующие книги: горизонтальные карточки --- */
.related-books { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; width: 100%; }
.book-card--row {
  display: flex; flex-direction: row; align-items: center; gap: 12px;
  padding-right: 12px; overflow: hidden; border-radius: 10px;
  background: #fff; box-shadow: 0 4px 8px rgba(23, 19, 38, .05);
}
.book-card--row .book-card__cover { flex: 0 0 156px; width: 156px; height: 200px; background: #d3d3d3; }
.book-card--row .book-card__cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.book-card--row .book-card__body {
  flex: 1; min-width: 0; height: 178px;
  display: flex; flex-direction: column; justify-content: space-between;
}
.book-card--row .book-card__footer { gap: 8px; }
.book-card--row .btn { white-space: nowrap; }

@media (max-width: 1024px) {
  .related-books { grid-template-columns: 1fr; }
  .course-hero--book .course-hero__image { height: auto; }
  .spec-list__label { flex-basis: 140px; }
}
