.hb-featured-book-split {
  background: var(--hb-paper-2);
  padding: 96px 0;
}
.hb-featured-book-split__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}
.hb-featured-book-split__visual {
  display: flex;
  justify-content: center;
}
.hb-featured-book-split__book {
  position: relative;
  aspect-ratio: 2 / 3;
  width: 100%;
  max-width: 420px;
  box-shadow: var(--hb-shadow-book);
}
.hb-featured-book-split__book img,
.hb-featured-book-split__book-placeholder {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.hb-featured-book-split__book-placeholder {
  background: linear-gradient(135deg, var(--hb-paper-3), #ddd1bb);
}
.hb-featured-book-split__book::before {
  content: ""; position: absolute; inset: 0 auto 0 0; width: 10px;
  background: linear-gradient(90deg, rgba(255,255,255,.18), rgba(0,0,0,.22));
  z-index: 2; pointer-events: none;
}
.hb-featured-book-split__tag {
  position: absolute;
  top: -20px; right: -20px;
  background: var(--hb-orange-500);
  color: #fff;
  padding: 10px 20px;
  font-family: var(--hb-font-display);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: .14em;
  text-transform: uppercase;
  transform: rotate(4deg);
  z-index: 3;
}
.hb-featured-book-split__heading {
  font-family: var(--hb-font-display);
  font-weight: 700;
  font-size: clamp(32px, 3.5vw, 48px);
  line-height: 1.05;
  letter-spacing: -.02em;
  margin: 20px 0 0;
}
.hb-featured-book-split__heading em {
  font-family: var(--hb-font-serif);
  font-style: italic;
  font-weight: 400;
  color: var(--hb-orange-600);
}
.hb-featured-book-split__quote {
  font-family: var(--hb-font-serif);
  font-size: 24px;
  line-height: 1.4;
  font-style: italic;
  color: var(--hb-ink-700);
  border-left: 3px solid var(--hb-orange-500);
  padding-left: 20px;
  margin: 28px 0;
}
.hb-featured-book-split__source {
  font-size: 14px; color: var(--hb-ink-500);
  letter-spacing: .02em; margin: 0;
}
.hb-featured-book-split__actions {
  display: flex; gap: 12px; margin-top: 32px;
  flex-wrap: wrap;
}

@media (max-width: 1024px) {
  .hb-featured-book-split { padding: 64px 0; }
  .hb-featured-book-split__grid { grid-template-columns: 1fr; gap: 48px; }
}
