/* =========================================
   BOOKS
========================================== */
.book-grid{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 24px;
}
.book-card{
  display:flex; flex-direction:column;
  opacity:0; transform: translateY(10px);
}
.book-card.in-view{ opacity:1; transform:none; transition: opacity .5s ease, transform .5s ease; }
.book-cover{
  position:relative;
  aspect-ratio: 3 / 4;
  background: linear-gradient(160deg, var(--parchment-deep), var(--parchment-card));
  border: 1px solid rgba(36,24,19,0.16);
  border-radius: 8px;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding: 20px 16px;
  margin-bottom: 16px;
  overflow:hidden;
  transition: transform .18s ease, box-shadow .18s ease;
}
.book-cover::before{
  content:""; position:absolute; left:10px; top:0; bottom:0; width:2px;
  background: rgba(184,134,46,0.4);
}
.book-cover::after{
  content:""; position:absolute; inset:0;
  background-image: repeating-linear-gradient(180deg, rgba(107,30,30,0.03) 0px, rgba(107,30,30,0.03) 1px, transparent 1px, transparent 7px);
  pointer-events:none;
}
.book-card:hover .book-cover{ transform: translateY(-4px); box-shadow: 0 16px 30px -16px rgba(36,24,19,0.4); }
.book-cover .cover-glyph{
  font-family: var(--font-kn-display);
  font-size: 1.7rem; font-weight:600;
  color: var(--maroon-deep);
  text-align:center; line-height:1.3;
  position:relative; z-index:1;
}
.book-cover .cover-en{
  font-family: var(--font-en-display);
  font-style: italic; font-size:0.78rem;
  color: var(--ink-soft);
  text-align:center; margin-top:10px;
  position:relative; z-index:1;
}
.book-card .book-meta{ display:flex; align-items:center; gap:8px; margin-bottom:10px; flex-wrap:wrap; }
.book-card h3{
  font-family: var(--font-en-display);
  font-size: 1.05rem; font-weight:600; color: var(--ink);
  margin-bottom:4px;
}
.book-card .book-author{ font-size:0.82rem; color: var(--ink-soft); margin-bottom:10px; }
.book-stats{ display:flex; gap:14px; margin-bottom:12px; }
.book-stats .cs-item{ display:flex; align-items:center; gap:5px; font-size:0.76rem; color: var(--ink-soft); }
.book-stats svg{ width:13px; height:13px; flex-shrink:0; }
.book-card .progress-track{ margin-bottom:6px; }
.book-card .progress-caption{ font-size:0.75rem; color: var(--ink-soft); margin-bottom:12px; }
.book-card .btn{ width:100%; justify-content:center; margin-top:auto; }

.featured-book{
  display:flex; align-items:center; gap:44px;
  background: var(--leaf-deep);
  color: var(--cream-white);
  border-radius: 14px;
  padding: 48px 52px;
  margin: 32px 0 48px;
  position:relative; overflow:hidden;
}
.featured-book::after{
  content:"ಪು"; position:absolute; right:-20px; bottom:-90px;
  font-family: var(--font-kn-display); font-size:20rem; line-height:1;
  color: rgba(251,248,239,0.045);
}
.featured-book .book-cover{
  width: 140px; flex-shrink:0; margin-bottom:0;
  background: rgba(251,248,239,0.07);
  border-color: rgba(251,248,239,0.2);
}
.featured-book .book-cover .cover-glyph{ color: var(--gold-light); }
.featured-book .book-cover .cover-en{ color: rgba(251,248,239,0.7); }
.featured-book .book-cover::before{ background: rgba(217,174,95,0.5); }
.featured-book-body{ flex:1; min-width:0; position:relative; }
.featured-book .eyebrow{
  color: var(--gold-light);
  border-color: rgba(217,174,95,0.35);
  background: rgba(251,248,239,0.05);
}
.featured-book .eyebrow::before{ background: var(--gold-light); box-shadow: 0 0 0 3px rgba(217,174,95,0.2); }
.featured-book h2{
  font-family: var(--font-en-display);
  font-size: clamp(1.5rem, 2.4vw, 1.9rem);
  font-weight:600; margin-bottom: 10px;
}
.featured-book p.dek{ color: rgba(251,248,239,0.78); max-width: 58ch; margin-bottom: 18px; }
.featured-book .progress-track{ max-width:320px; margin-bottom:8px; }
.featured-book .progress-caption{ color: rgba(251,248,239,0.7); margin-bottom:20px; }
.featured-book .btn-solid{ background: var(--gold); color: var(--leaf-deep); }
.featured-book .btn-solid:hover{ background: var(--gold-light); }

/* =========================================
   RESPONSIVE
========================================== */
@media (max-width: 900px){
  .featured-book{ flex-direction:column; text-align:center; padding: 40px 28px; }
  .featured-book .progress-track{ margin-left:auto; margin-right:auto; }
}
