/* Book details page — redesigned layout: gallery panel | title & about | sticky buy box.
   Every rule is scoped under `.books-details-grid-wrap` and loaded after the page's older stylesheets, with
   !important only where those older rules (several in the page's own <style> blocks) would otherwise win.
   Markup, ids and scripts are unchanged — format radios, quantity, Add to Cart / Buy Now, Notify Me,
   changePrice(), the sticky mobile bar and the membership pop-up all keep working as before. */

html body .books-details-grid-wrap {
  --bd-ink: #1d1d1f; --bd-muted: #6e6e73; --bd-line: rgba(29, 29, 31, 0.12);
  --bd-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", Geist, "Helvetica Neue", sans-serif;
  text-align: left; align-items: flex-start;
}

/* ───────────── Gallery ───────────── */
html body .books-details-grid-wrap .book-main .book-img {
  position: relative; width: 100%; aspect-ratio: 4 / 5; height: auto !important; border-radius: 26px;
  background: radial-gradient(80% 70% at 50% 40%, #fff, #eef1f2); box-shadow: inset 0 0 0 1px rgba(29, 29, 31, .06);
  display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 0 !important;
}
html body .books-details-grid-wrap .book-main-btn { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 0; border: 0; background: none; cursor: zoom-in; }
html body .books-details-grid-wrap .product-main-img {
  width: auto !important; height: auto !important; max-width: 66% !important; max-height: 86% !important; object-fit: contain;
  border-radius: 2px; box-shadow: 0 22px 34px -18px rgba(0, 30, 36, .45); transform: none !important;
  transition: transform .9s cubic-bezier(.22, .61, .36, 1), opacity .2s;
}
html body .books-details-grid-wrap .book-expand-hint { display: none !important; }
html body .books-details-grid-wrap .book-main-nav {
  position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border-radius: 50%;
  font-size: 18px; line-height: 1; color: #00474f; background: rgba(255, 255, 255, .7);
  border: 1px solid rgba(255, 255, 255, .9); backdrop-filter: blur(12px); box-shadow: 0 6px 16px -8px rgba(0, 60, 70, .45);
  display: flex; align-items: center; justify-content: center; z-index: 2;
}
html body .books-details-grid-wrap .book-main-nav--prev { left: 12px; right: auto; }
html body .books-details-grid-wrap .book-main-nav--next { right: 12px; left: auto; }
html body .books-details-grid-wrap .rn-bd-counter {
  position: absolute; left: 50%; bottom: 14px; transform: translateX(-50%); font-size: 12px; font-weight: 600; color: #424245;
  background: rgba(255, 255, 255, .75); backdrop-filter: blur(10px); border-radius: 100px; padding: 5px 12px; z-index: 2;
}
html body .books-details-grid-wrap .book-thumbs { margin-top: 12px; }
/* Four equal square tiles per row (more images scroll sideways); the cover sits small inside each tile. */
html body .books-details-grid-wrap .book-thumbs-track {
  display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 30px) / 4); gap: 10px;
  overflow-x: auto; scrollbar-width: none; scroll-snap-type: x proximity;
}
html body .books-details-grid-wrap .book-thumbs-track::-webkit-scrollbar { display: none; }
html body .books-details-grid-wrap .book-thumb {
  width: 100%; min-width: 0; max-width: none; aspect-ratio: 1 / 1; border-radius: 14px; padding: 0; overflow: hidden;
  background: #f5f5f7; border: 1px solid rgba(29, 29, 31, .1); cursor: pointer; scroll-snap-align: start;
  display: flex; align-items: center; justify-content: center; transition: box-shadow .25s, transform .25s;
}
html body .books-details-grid-wrap .book-thumb img {
  width: 72%; height: 72%; max-width: none; max-height: none; object-fit: contain; transform: none;
  border-radius: 2px;
}
html body .books-details-grid-wrap .book-thumb.is-active {
  border: 2px solid var(--rx-a, #005c67); background: #f5f5f7; box-shadow: 0 8px 18px -10px rgba(0, 60, 70, .5);
}
html body .books-details-grid-wrap .book-thumb-nav { display: none !important; }

/* ───────────── Centre column ───────────── */
html body .books-details-grid-wrap .rn-bd-centre { display: flex; flex-direction: column; }
html body .books-details-grid-wrap .rn-bd-centre > .product-book-title { order: 1; }
html body .books-details-grid-wrap .rn-bd-centre > .books-linguistic-details { order: 2; }
html body .books-details-grid-wrap .rn-bd-centre > .star-rating-wrap { order: 3; }
html body .books-details-grid-wrap .rn-bd-centre > .rn-bd-actions { order: 4; }
html body .books-details-grid-wrap .rn-bd-centre > .book-infor-wrapper { order: 5; }
html body .books-details-grid-wrap .rn-bd-centre > hr,
html body .books-details-grid-wrap .rn-bd-centre > .shipping-info-wrap { display: none !important; }

html body .books-details-grid-wrap .product-book-title { display: block !important; margin: 0 0 14px; }
html body .books-details-grid-wrap .product-book-title h1 {
  font-family: var(--bd-font); font-size: clamp(34px, 3.8vw, 58px); line-height: 1.04; letter-spacing: -0.035em;
  font-weight: 600; color: var(--bd-ink); margin: 0; text-wrap: balance;
}
html body .books-details-grid-wrap .books-linguistic-details { display: flex; flex-direction: column; gap: 4px; margin: 0 0 14px; }
html body .books-details-grid-wrap .author-wrap-details { display: flex; align-items: baseline; gap: 6px; margin: 0; }
html body .books-details-grid-wrap .author-wrap-details p { margin: 0; font-size: 18px; color: #424245; font-weight: 400; }
html body .books-details-grid-wrap .author-wrap-details .owner-name,
html body .books-details-grid-wrap .author-wrap-details .owner-name a { font-size: 18px; font-weight: 600; color: var(--rx-a, #005c67); text-decoration: none; }
html body .books-details-grid-wrap .author-wrap-details .owner-name a:hover { text-decoration: underline; }
html body .books-details-grid-wrap .star-rating-wrap { display: flex; align-items: center; gap: 12px; margin: 0 0 18px; }
html body .books-details-grid-wrap .star-rating-wrap p { margin: 0; font-size: 15px; color: var(--bd-muted); }
html body .books-details-grid-wrap .rn-bd-first-review { font-size: 16px; font-weight: 600; color: var(--rx-a, #005c67); text-decoration: none; }
html body .books-details-grid-wrap .rn-bd-first-review:hover { text-decoration: underline; }

/* Add to list + Share pills */
html body .books-details-grid-wrap .rn-bd-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0 0 4px; }
html body .books-details-grid-wrap .wl-heart.wl-heart-detail {
  width: auto !important; height: 48px !important; padding: 0 20px !important; border-radius: 100px !important; gap: 8px;
  display: inline-flex; align-items: center; justify-content: center; background: #fff !important; color: var(--bd-ink) !important;
  border: 1px solid var(--bd-line) !important; font-family: inherit; font-size: 15px; font-weight: 600; cursor: pointer;
}
html body .books-details-grid-wrap .wl-heart.wl-heart-detail::after { content: "Add to list"; }
html body .books-details-grid-wrap .wl-heart.wl-heart-detail.wl-on::after { content: "Saved"; }
html body .books-details-grid-wrap .wl-heart.wl-heart-detail.wl-on { background: #fff !important; color: #e8352e !important; }
html body .books-details-grid-wrap .rn-bd-actions .rachnaye-share-pill { height: 48px; padding: 0 20px; border-radius: 100px; font-size: 15px; font-weight: 600; }

/* About the book */
html body .books-details-grid-wrap .book-infor-wrapper { margin: 26px 0 0 !important; padding-top: 26px; border-top: 1px solid var(--bd-line); }
html body .books-details-grid-wrap .book-infor-hr { display: none !important; }
html body .books-details-grid-wrap .rn-bd-about-title { font-family: var(--bd-font); font-size: 28px; font-weight: 600; letter-spacing: -0.03em; color: var(--bd-ink); margin: 0 0 12px; }
html body .books-details-grid-wrap .book-short-desc { font-size: 18px; line-height: 1.7; color: var(--bd-ink); margin: 0 0 8px; }
html body .books-details-grid-wrap .book-infor-wrapper { width: 100% !important; padding-right: 0 !important; }
/* "Read more" sits under the clamped text instead of floating over its last line. */
html body .books-details-grid-wrap .book-readmore-link {
  position: static !important; display: inline-block !important; right: auto !important; bottom: auto !important;
  margin-top: 4px; padding: 0 !important; background: none !important;
  font-size: 15px; font-weight: 600; color: var(--rx-a, #005c67); text-decoration: none;
}
html body .books-details-grid-wrap .book-readmore-link:hover { text-decoration: underline; }

/* ───────────── Buy box ───────────── */
html body .books-details-grid-wrap .rn-bd-buybox {
  position: sticky; top: 110px; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--bd-line);
  border-radius: 14px; padding: 18px; box-shadow: 0 22px 44px -30px rgba(29, 29, 31, .4);
}
html body .books-details-grid-wrap .rn-bd-buybox > * { order: 9; }
html body .books-details-grid-wrap .rn-bd-buybox > .book-price-wrap { order: 1; }
html body .books-details-grid-wrap .rn-bd-buybox > .stock-manage { order: 2; display: none !important; }
html body .books-details-grid-wrap .rn-bd-buybox > .rn-bd-urgency { order: 3; }
html body .books-details-grid-wrap .rn-bd-buybox > .format-wrapper-book-details { order: 4; }
html body .books-details-grid-wrap .rn-bd-buybox > #atc-normal { order: 5; }
html body .books-details-grid-wrap .rn-bd-buybox > .rn-fbt-section { order: 6; }
html body .books-details-grid-wrap .rn-bd-buybox > .prime-plus-sidebar,
html body .books-details-grid-wrap .rn-bd-buybox > .prime-member-active-card { order: 7; }
html body .books-details-grid-wrap .rn-bd-buybox .secure-data-payment-wrapper-icon { display: none !important; }
@media (max-width: 991px) { html body .books-details-grid-wrap .rn-bd-buybox { position: static; margin-top: 24px; } }

/* Price header: ₹299  ₹399  [25% off] */
html body .books-details-grid-wrap .book-price-wrap { margin: 0 !important; padding: 0 !important; }
html body .books-details-grid-wrap .sale-price { display: flex !important; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; margin: 0 !important; }
html body .books-details-grid-wrap .sale-price p { margin: 0 !important; }
html body .books-details-grid-wrap .sale-price .updated-price {
  display: contents; font-family: var(--bd-font); font-size: 30px; font-weight: 600; letter-spacing: -0.02em; color: var(--bd-ink);
}
html body .books-details-grid-wrap .sale-price .regular-price { order: 2; font-size: 15px; color: var(--bd-muted); font-weight: 400; }
html body .books-details-grid-wrap .sale-price .regular-price s { color: var(--bd-muted); }
html body .books-details-grid-wrap .rn-bd-pct {
  order: 3; font-family: inherit; font-size: 13px !important; font-weight: 700 !important; color: #fff !important;
  background: var(--rx-a, #005c67); padding: 3px 8px; border-radius: 6px; letter-spacing: 0;
}
html body .books-details-grid-wrap .rn-bd-urgency { margin: 8px 0 0; font-size: 13.5px; font-weight: 700; color: var(--rx-a, #005c67); }
html body .books-details-grid-wrap .rn-bd-urgency[hidden] { display: none; }

/* Format cards */
html body .books-details-grid-wrap .format-wrapper-book-details { margin: 14px 0 0 !important; padding: 0 !important; }
html body .books-details-grid-wrap .format-wrapper-book-details > p {
  margin: 0 0 8px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--bd-muted); font-weight: 700;
}
html body .books-details-grid-wrap .format-wrapper-book-details > p::after { content: ""; }
/* Only the formats a book actually has are rendered (Paperback → Hardbound → Digital → Audio). They sit in one
   left-aligned row of compact fixed-width cards — a single format stays small at the left instead of stretching
   across the whole box; four fit on a line and extra ones wrap. */
html body .books-details-grid-wrap .box-price-books-wrap { display: flex !important; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; gap: 6px; }
html body .books-details-grid-wrap .box-price-books-wrap input[name="book-type"] { position: absolute; opacity: 0; pointer-events: none; width: 0; height: 0; }
html body .books-details-grid-wrap .box-price-books-wrap label.book-price {
  display: flex !important; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 2px; flex: 0 0 104px; width: 104px !important;
  min-width: 0; min-height: 52px; margin: 0 !important; padding: 7px 10px !important; text-align: left; cursor: pointer;
  background: #fff !important; border: 1.5px solid rgba(29, 29, 31, .16) !important; border-radius: 10px !important; color: var(--bd-ink);
  transition: border-color .16s, background .16s, box-shadow .16s; box-shadow: none;
}
html body .books-details-grid-wrap .box-price-books-wrap label.book-price p { margin: 0 !important; line-height: 1.2; }
html body .books-details-grid-wrap .box-price-books-wrap label.book-price p:first-child { font-size: 13.5px; font-weight: 600; color: var(--bd-ink) !important; white-space: nowrap; }
html body .books-details-grid-wrap .box-price-books-wrap label.book-price p:last-child { font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
html body .books-details-grid-wrap .box-price-books-wrap input[name="book-type"]:checked + label.book-price {
  border-color: var(--rx-a, #005c67) !important; background: color-mix(in srgb, var(--rx-a, #005c67) 6%, #fff) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--rx-a, #005c67) 14%, transparent);
}

/* Quantity + Add to cart, then Buy now */
html body .books-details-grid-wrap #atc-normal { margin-top: 20px; }
html body .books-details-grid-wrap #atc-normal .quantity-item { display: none !important; }
html body .books-details-grid-wrap #atc-normal .quantity-item-add-to-cart { display: flex !important; align-items: stretch; gap: 10px; width: 100%; }
html body .books-details-grid-wrap #atc-normal .quantity-increase-decrease {
  flex: 0 0 auto; display: flex !important; align-items: center; border: 1px solid rgba(29, 29, 31, .22); border-radius: 10px; overflow: hidden; background: #fff; height: 50px;
}
html body .books-details-grid-wrap #atc-normal .btn-qty-minus,
html body .books-details-grid-wrap #atc-normal .btn-qty-add { width: 40px; height: 50px; display: flex; align-items: center; justify-content: center; background: none; }
html body .books-details-grid-wrap #atc-normal .qty-counter { width: 30px; margin: 0; text-align: center; font-size: 15px; font-weight: 700; }
html body .books-details-grid-wrap #atc-normal .add-to-cart-item { flex: 1 1 0; min-width: 0; }
html body .books-details-grid-wrap #atc-normal .add-to-cart-item a { display: block; }
html body .books-details-grid-wrap #atc-normal .btn-add-cart {
  width: 100%; min-height: 50px; padding: 0 16px; border: 0; border-radius: 10px; background: var(--rx-a, #005c67); color: #fff;
  font-size: 15.5px; font-weight: 700; cursor: pointer; transition: background .2s;
}
html body .books-details-grid-wrap #atc-normal .btn-add-cart:hover { background: #00474f; }
html body .books-details-grid-wrap #atc-normal .cart-btns { margin-top: 10px; }
html body .books-details-grid-wrap #atc-normal .buy-now-button a { display: block; }
html body .books-details-grid-wrap #atc-normal .btn-buy-now {
  width: 100%; min-height: 50px; padding: 0 15px; border: 0; border-radius: 10px; background: var(--rx-b, #ffd500); color: var(--bd-ink);
  font-size: 15.5px; font-weight: 800; cursor: pointer; transition: filter .2s;
}
html body .books-details-grid-wrap #atc-normal .btn-buy-now:hover { filter: brightness(.96); }

/* ───────────── Frequently bought together ───────────── */
html body .books-details-grid-wrap .rn-fbt-section { margin: 14px 0 0 !important; padding: 12px !important; border: 1px solid var(--bd-line); border-radius: 14px; background: #fff; text-align: left; }
html body .books-details-grid-wrap .rn-fbt-heading { font-family: inherit; font-size: 13.5px; font-weight: 700; color: var(--bd-ink); margin: 0 0 6px; }
html body .books-details-grid-wrap .rn-fbt-row { display: flex; align-items: center; gap: 10px; min-height: 56px; padding: 0 !important; border-top: 1px solid rgba(29, 29, 31, .07); }
html body .books-details-grid-wrap .rn-fbt-checkbox {
  appearance: none; -webkit-appearance: none; flex: 0 0 auto; width: 20px; height: 20px; margin: 0 2px 0 0; border-radius: 6px;
  border: 1.5px solid var(--rx-a, #005c67); background: #fff; display: inline-grid; place-content: center; cursor: pointer;
}
html body .books-details-grid-wrap .rn-fbt-checkbox:checked { background: var(--rx-a, #005c67); }
html body .books-details-grid-wrap .rn-fbt-checkbox:checked::after { content: "\2713"; color: #fff; font-size: 13px; font-weight: 700; line-height: 1; }
html body .books-details-grid-wrap .rn-fbt-checkbox:disabled { background: #86868b; border-color: #86868b; cursor: default; }
html body .books-details-grid-wrap .rn-fbt-thumb { flex: 0 0 auto; width: 32px; height: 46px; border-radius: 4px; box-shadow: 0 2px 6px rgba(0, 0, 0, .14); background-size: cover; background-position: center; background-color: #e8e8ed; }
html body .books-details-grid-wrap .rn-fbt-info { min-width: 0; flex: 1 1 0; display: flex; flex-direction: column; }
html body .books-details-grid-wrap .rn-fbt-title { font-size: 13px; font-weight: 600; line-height: 1.3; color: var(--bd-ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html body .books-details-grid-wrap .rn-fbt-sub { font-size: 12px; color: var(--bd-muted); margin-top: 1px; }
html body .books-details-grid-wrap .rn-fbt-item-price { flex: 0 0 auto; }
html body .books-details-grid-wrap .rn-fbt-price { font-size: 13.5px; font-weight: 700; color: var(--bd-ink); font-variant-numeric: tabular-nums; }
html body .books-details-grid-wrap .rn-fbt-total-row { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; border-top: 1px solid rgba(29, 29, 31, .07); padding-top: 10px; margin-top: 2px; }
html body .books-details-grid-wrap .rn-fbt-total-row > span:first-child { font-size: 12.5px; color: var(--bd-muted); }
html body .books-details-grid-wrap .rn-fbt-total-amounts { display: flex; align-items: baseline; gap: 8px; }
html body .books-details-grid-wrap .rn-fbt-total-amounts s { font-size: 12px; color: #86868b; }
html body .books-details-grid-wrap .rn-fbt-total-amounts b { font-size: 17px; font-weight: 700; letter-spacing: -0.02em; color: var(--bd-ink); }
html body .books-details-grid-wrap .rn-fbt-total-amounts [hidden] { display: none; }
/* The free-delivery hook — a clear callout, not a footnote. */
html body .books-details-grid-wrap .rn-fbt-shipping-note {
  margin-top: 10px; padding: 9px 12px; border-radius: 10px; font-size: 13px; font-weight: 700; line-height: 1.35;
  color: var(--rx-a, #005c67); background: color-mix(in srgb, var(--rx-a, #005c67) 9%, #fff);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rx-a, #005c67) 22%, transparent);
}
html body .books-details-grid-wrap .rn-fbt-shipping-note.is-met { color: #1a7f4b; background: #eaf7ef; box-shadow: inset 0 0 0 1px #bfe8cf; }
html body .books-details-grid-wrap .rn-fbt-add-all-btn {
  margin-top: 10px; width: 100%; min-height: 44px; border: 1px solid var(--bd-ink); border-radius: 10px; background: transparent;
  color: var(--bd-ink); font-family: inherit; font-size: 14px; font-weight: 700; cursor: pointer; transition: background .2s, color .2s;
  display: flex; align-items: center; justify-content: center; text-align: center; padding: 0 14px;
}
html body .books-details-grid-wrap .rn-fbt-add-all-btn:hover { background: var(--bd-ink); color: #fff; }

/* ───────────── Membership (bottom of the buy box) ───────────── */
html body .books-details-grid-wrap .prime-plus-sidebar { margin: 14px 0 0 !important; padding: 14px 0 0 !important; border-top: 1px solid rgba(29, 29, 31, .1); background: none !important; box-shadow: none !important; }
html body .books-details-grid-wrap .prime-plus-offer { display: block !important; padding: 0 !important; background: none !important; border: 0 !important; }
html body .books-details-grid-wrap .prime-plus-art { display: none !important; }
html body .books-details-grid-wrap .prime-plus-content { width: 100% !important; padding: 0 !important; }
html body .books-details-grid-wrap .prime-plus-content h2 { font-size: 11.5px !important; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #7a5c00; margin: 0 0 8px !important; }
html body .books-details-grid-wrap .prime-plus-subhead { display: none !important; }
html body .books-details-grid-wrap .prime-plan-swatches {
  display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; padding: 4px; border-radius: 16px; background: #f5f5f7; margin: 0 0 10px !important;
}
html body .books-details-grid-wrap .prime-plan-swatch {
  display: flex; flex-direction: column; align-items: center; gap: 2px; border: 0 !important; border-radius: 12px !important; padding: 9px 4px 8px !important;
  background: transparent !important; font-size: 13px; font-weight: 700; color: var(--bd-ink); cursor: pointer; box-shadow: none !important;
}
html body .books-details-grid-wrap .prime-plan-swatch img { width: 22px; height: 22px; }
html body .books-details-grid-wrap .prime-plan-swatch.is-active { background: #fff !important; box-shadow: 0 4px 12px -6px rgba(29, 29, 31, .4) !important; }
html body .books-details-grid-wrap .prime-plus-benefit-list {
  list-style: none; margin: 0 0 10px !important; padding: 12px !important; border-radius: 14px;
  background: color-mix(in srgb, var(--rx-b, #ffd500) 16%, #fff); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rx-b, #ffd500) 50%, transparent);
  display: flex; flex-direction: column; gap: 6px;
}
html body .books-details-grid-wrap .prime-plus-benefit-list li { display: flex; align-items: flex-start; gap: 8px; font-size: 13px; line-height: 1.4; color: var(--bd-ink); margin: 0 !important; padding: 0 !important; }
html body .books-details-grid-wrap .prime-benefit-icon { flex: 0 0 auto; width: 5px; height: 5px; border-radius: 50%; background: var(--rx-a, #005c67); margin-top: 7px; overflow: hidden; }
html body .books-details-grid-wrap .prime-benefit-icon svg { display: none; }
html body .books-details-grid-wrap .prime-plus-btn {
  width: 100%; min-height: 42px; border: 0; border-radius: 100px; background: var(--bd-ink); color: #fff; font-family: inherit;
  font-size: 14px; font-weight: 700; cursor: pointer; transition: background .25s, transform .25s;
}
html body .books-details-grid-wrap .prime-plus-btn:hover { background: #000; }
html body .books-details-grid-wrap .prime-plus-login { margin-top: 10px; }

/* ───────────── Clean-ups found in a local render (desktop 1360 / tablet 820 / phone 390) ───────────── */
/* The older stylesheets draw boxes around the format and cart areas; the design has none. */
html body .books-details-grid-wrap .format-wrapper-book-details,
html body .books-details-grid-wrap .add-to-cart-buy-now-wrapper#atc-normal {
  border: 0 !important; box-shadow: none !important; background: none !important; border-radius: 0 !important;
}
html body .books-details-grid-wrap .format-wrapper-book-details { display: block !important; padding: 0 !important; }
html body .books-details-grid-wrap .add-to-cart-buy-now-wrapper#atc-normal { padding: 0 !important; }
html body .books-details-grid-wrap .format-wrapper-book-details > p { font-size: 12px !important; font-weight: 700 !important; color: var(--bd-muted) !important; letter-spacing: .12em; text-transform: uppercase; margin: 0 0 8px !important; }
html body .books-details-grid-wrap #atc-normal .cart-items-btn { padding: 0 !important; border: 0 !important; }
/* Author / publisher text sizes were being overridden by older rules. */
html body .books-details-grid-wrap .author-wrap-details p { font-size: 18px !important; }
html body .books-details-grid-wrap .author-wrap-details .owner-name,
html body .books-details-grid-wrap .author-wrap-details .owner-name a { font-size: 18px !important; font-weight: 600 !important; }
html body .books-details-grid-wrap .book-readmore-link { background: none !important; padding: 0 !important; }
/* Counter pill stays hidden until the gallery script has written "n / total" into it. */
html body .books-details-grid-wrap .rn-bd-counter:empty { display: none; }

/* ───────────── Tablet and phone ───────────── */
@media (max-width: 991px) {
  /* Three columns are too tight below desktop: gallery, details and buy box stack, each full width. */
  html body .books-details-grid-wrap .book-image-wrapper,
  html body .books-details-grid-wrap .rn-bd-centre,
  html body .books-details-grid-wrap .rn-bd-buycol { flex: 0 0 100% !important; max-width: 100% !important; width: 100% !important; }
  html body .books-details-grid-wrap .book-image-wrapper { max-width: 520px !important; margin-left: auto; margin-right: auto; }
  html body .books-details-grid-wrap .rn-bd-centre { margin-top: 22px; }
}
@media (max-width: 575px) {
  html body .books-details-grid-wrap .rn-bd-centre { margin-top: 18px; }
  html body .books-details-grid-wrap .product-book-title h1 { font-size: 32px; }
  html body .books-details-grid-wrap .author-wrap-details p,
  html body .books-details-grid-wrap .author-wrap-details .owner-name,
  html body .books-details-grid-wrap .author-wrap-details .owner-name a { font-size: 16px !important; }
  html body .books-details-grid-wrap .rn-bd-about-title { font-size: 24px; }
  html body .books-details-grid-wrap .book-short-desc { font-size: 16px; }
  html body .books-details-grid-wrap .rn-bd-buybox { padding: 14px; }
  html body .books-details-grid-wrap .sale-price .updated-price { font-size: 28px; }
  html body .books-details-grid-wrap .box-price-books-wrap label.book-price { flex: 0 0 calc(50% - 3px); width: calc(50% - 3px) !important; }
  html body .books-details-grid-wrap .book-thumb { min-width: 56px; }
  html body .books-details-grid-wrap .rn-fbt-row { gap: 8px; }
}

html body .books-details-grid-wrap .box-price-books-wrap { padding: 0 !important; margin: 0 !important; }


/* ───────────── Zoom pop-up (click the main image) ───────────── */
html body .book-lightbox .book-lightbox__dialog { display: flex; align-items: center; justify-content: center; }
html body .book-lightbox .rn-zoom-stage {
  position: relative; width: min(92vw, 1100px); height: min(82vh, 820px); overflow: hidden; border-radius: 16px;
  background: #fff; display: flex; align-items: center; justify-content: center; cursor: zoom-in; touch-action: none;
}
html body .book-lightbox .rn-zoom-stage.is-zoomed { cursor: grab; }
html body .book-lightbox .rn-zoom-stage.is-dragging { cursor: grabbing; }
html body .book-lightbox .rn-zoom-stage .book-lightbox__img {
  max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; user-select: none; -webkit-user-drag: none;
  transform-origin: center center; transition: transform .22s cubic-bezier(.22, .61, .36, 1), opacity .12s;
}
html body .book-lightbox .rn-zoom-stage.is-dragging .book-lightbox__img { transition: none; }
html body .book-lightbox .rn-zoom-tools {
  position: absolute; left: 50%; bottom: 18px; transform: translateX(-50%); z-index: 3; display: flex; gap: 4px; padding: 4px;
  border-radius: 100px; background: rgba(255, 255, 255, .92); box-shadow: 0 8px 24px -10px rgba(0, 0, 0, .45);
}
html body .book-lightbox .rn-zoom-tools button {
  min-width: 40px; height: 40px; padding: 0 14px; border: 0; border-radius: 100px; background: transparent; color: #1d1d1f;
  font-size: 18px; font-weight: 600; line-height: 1; cursor: pointer;
}
html body .book-lightbox .rn-zoom-tools button:hover:not([disabled]) { background: #eef1f2; }
html body .book-lightbox .rn-zoom-tools button[disabled] { opacity: .35; cursor: default; }
html body .book-lightbox .rn-zoom-tools button:focus-visible { outline: 3px solid var(--rx-a, #005c67); outline-offset: 1px; }
html body .book-lightbox .book-lightbox__count { bottom: auto; top: 18px; }
@media (max-width: 575px) {
  html body .book-lightbox .rn-zoom-stage { width: 96vw; height: 74vh; border-radius: 12px; }
}


/* ───────────── Recommended for you (carousel under the book) ───────────── */
html body .rn-rec { text-align: left; margin-top: 56px !important; }
html body .rn-rec .slider-title-wrap { text-align: left; margin: 0 0 22px; }
html body .rn-rec .section-title {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", Geist, "Helvetica Neue", sans-serif;
  font-size: clamp(26px, 2.8vw, 36px); letter-spacing: -0.03em; line-height: 1.15; font-weight: 600; color: #1d1d1f; margin: 0;
}
html body .rn-rec .featured-book-slider { padding: 0 !important; max-width: 100% !important; width: 100% !important; }
html body .rn-rec .slick-slide { padding: 0 10px; }
html body .rn-rec .slick-list { margin: 0 -10px; padding: 6px 0 10px; }
html body .rn-rec .hover-box, html body .rn-rec .hot-deal-box { display: none !important; }
html body .rn-rec .book-main-item { width: 100%; }
html body .rn-rec .book-slide-item {
  min-height: 0 !important; height: 100%; display: flex; flex-direction: column; gap: 0; padding: 0; background: none; border: 0; box-shadow: none; text-align: left;
}
html body .rn-rec .rn-rec-cover {
  display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 5; border-radius: 18px;
  background: radial-gradient(80% 70% at 50% 40%, #fff, #eef1f2); box-shadow: inset 0 0 0 1px rgba(29, 29, 31, .06); overflow: hidden;
  transition: transform .4s cubic-bezier(.22, .61, .36, 1);
}
html body .rn-rec .book-main-item:hover .rn-rec-cover { transform: translateY(-4px); }
html body .rn-rec .rn-rec-cover img {
  width: auto !important; height: auto !important; max-width: 62% !important; max-height: 82% !important; object-fit: contain;
  border-radius: 2px; box-shadow: 0 18px 28px -16px rgba(0, 30, 36, .5); transform: none;
}
html body .rn-rec .rn-rec-meta { display: flex; flex-direction: column; gap: 3px; margin-top: 14px; text-decoration: none; }
html body .rn-rec .rn-rec-title {
  font-size: 16px; line-height: 1.3; font-weight: 600; color: #1d1d1f; letter-spacing: -0.01em;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.6em;
}
html body .rn-rec .rn-rec-author { font-size: 13px; color: #6e6e73; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html body .rn-rec .rn-rec-price-row { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 8px; margin-top: 10px; }
html body .rn-rec .rn-rec-price { font-size: 18px; font-weight: 700; color: #1d1d1f; }
html body .rn-rec .rn-rec-mrp { font-size: 13px; color: #6e6e73; text-decoration: line-through; }
html body .rn-rec .rn-rec-off { font-size: 13px; font-weight: 700; color: #ff5c3e; }
html body .rn-rec .rn-rec-stars { margin-top: 4px; font-size: 14px; letter-spacing: 2px; color: #d2d2d7; line-height: 1; }
html body .rn-rec .rn-rec-stars .on { color: #e0a91f; }
html body .rn-rec .rn-rec-action { margin-top: auto !important; padding-top: 14px; display: flex; flex-direction: column; gap: 6px; }
html body .rn-rec .rn-rec-oos { font-size: 12.5px; font-weight: 600; color: #b42318; }
html body .rn-rec .rn-rec-action .add-to-cart {
  width: 100%; min-height: 44px; margin: 0; padding: 0 12px; border-radius: 10px; border: 1px solid #1d1d1f; background: transparent;
  color: #1d1d1f; font-size: 14px; font-weight: 700; cursor: pointer; transition: background .2s, color .2s;
}
html body .rn-rec .rn-rec-action .add-to-cart:hover { background: #1d1d1f; color: #fff; }
html body .rn-rec .rn-rec-action .add-to-cart:focus-visible { outline: 3px solid var(--rx-a, #005c67); outline-offset: 2px; }
/* slick arrows → round glass buttons like the gallery */
html body .rn-rec .slick-arrow {
  position: absolute; top: 38%; z-index: 3; width: 40px; height: 40px; padding: 0; border-radius: 50%; font-size: 0 !important; line-height: 0;
  color: #00474f; background: rgba(255, 255, 255, .9); border: 1px solid rgba(29, 29, 31, .1); box-shadow: 0 6px 16px -8px rgba(0, 60, 70, .45);
  display: flex !important; align-items: center; justify-content: center; cursor: pointer;
}
html body .rn-rec .slick-prev { left: -14px; right: auto; }
html body .rn-rec .slick-next { right: -14px; left: auto; }
html body .rn-rec .slick-arrow::before { font-size: 20px; line-height: 1; color: #00474f; opacity: 1; font-family: inherit; }
html body .rn-rec .slick-prev::before { content: "\2039"; }
html body .rn-rec .slick-next::before { content: "\203A"; }
html body .rn-rec .slick-arrow::after { display: none; }
@media (max-width: 575px) {
  html body .rn-rec .slick-arrow { display: none !important; }
  html body .rn-rec .rn-rec-title { font-size: 15px; }
}
/* equal-height cards so every button lines up along the bottom */
html body .rn-rec .slick-track { display: flex !important; }
html body .rn-rec .slick-slide { height: auto !important; float: none !important; }
html body .rn-rec .slick-slide > div, html body .rn-rec .book-main-item { height: 100%; }
html body .rn-rec .book-main-item { display: flex !important; }
html body .rn-rec .book-main-item .book-slide-item { flex: 1 1 auto; width: 100%; }


/* ───────────── Modern arrows & close (gallery + zoom pop-up) ───────────── */
html body .book-lightbox { z-index: 100000 !important; }
html body .books-details-grid-wrap .book-main-nav,
html body .book-lightbox .book-lightbox__nav,
html body .book-lightbox .book-lightbox__close {
  width: 46px !important; height: 46px !important; padding: 0 !important; border-radius: 50% !important; font-size: 0 !important; line-height: 0;
  color: #1d1d1f; background: rgba(255, 255, 255, .82) !important; border: 1px solid rgba(255, 255, 255, .9) !important;
  -webkit-backdrop-filter: blur(14px) saturate(160%); backdrop-filter: blur(14px) saturate(160%);
  box-shadow: 0 8px 22px -10px rgba(0, 30, 36, .5), 0 0 0 1px rgba(29, 29, 31, .06);
  display: flex !important; align-items: center; justify-content: center; cursor: pointer;
  transition: transform .2s cubic-bezier(.22, .61, .36, 1), background .2s, box-shadow .2s;
}
html body .books-details-grid-wrap .book-main-nav::before,
html body .book-lightbox .book-lightbox__nav::before,
html body .book-lightbox .book-lightbox__close::before {
  content: ""; width: 20px; height: 20px; background: currentColor; display: block;
  -webkit-mask: var(--rn-ic) center / contain no-repeat; mask: var(--rn-ic) center / contain no-repeat;
}
html body .books-details-grid-wrap .book-main-nav--prev, html body .book-lightbox .book-lightbox__nav--prev {
  --rn-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 5l-7 7 7 7'/%3E%3C/svg%3E");
}
html body .books-details-grid-wrap .book-main-nav--next, html body .book-lightbox .book-lightbox__nav--next {
  --rn-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E");
}
html body .book-lightbox .book-lightbox__close {
  --rn-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E");
}
html body .books-details-grid-wrap .book-main-nav:hover,
html body .book-lightbox .book-lightbox__nav:hover,
html body .book-lightbox .book-lightbox__close:hover { background: #fff !important; transform: translateY(-50%) scale(1.07); box-shadow: 0 12px 26px -10px rgba(0, 30, 36, .55), 0 0 0 1px rgba(29, 29, 31, .08); }
html body .book-lightbox .book-lightbox__close:hover { transform: scale(1.07); }
html body .books-details-grid-wrap .book-main-nav:focus-visible,
html body .book-lightbox .book-lightbox__nav:focus-visible,
html body .book-lightbox .book-lightbox__close:focus-visible { outline: 3px solid var(--rx-a, #005c67); outline-offset: 2px; }
/* pop-up controls float over the dimmed page, clear of the picture */
html body .book-lightbox .book-lightbox__nav { position: fixed !important; top: 50%; transform: translateY(-50%); z-index: 4; }
html body .book-lightbox .book-lightbox__nav--prev { left: max(14px, 2vw) !important; right: auto !important; }
html body .book-lightbox .book-lightbox__nav--next { right: max(14px, 2vw) !important; left: auto !important; }
html body .book-lightbox .book-lightbox__close { position: fixed !important; top: 18px; right: max(14px, 2vw); left: auto !important; bottom: auto !important; z-index: 4; }
html body .book-lightbox .rn-zoom-stage { width: min(86vw, 1100px); height: min(84vh, 840px); }
html body .book-lightbox .book-lightbox__count {
  position: fixed !important; top: 26px; left: 50%; transform: translateX(-50%); bottom: auto !important; z-index: 4; padding: 6px 14px;
  border-radius: 100px; font-size: 13px; font-weight: 600; color: #1d1d1f; background: rgba(255, 255, 255, .85); backdrop-filter: blur(12px);
}
html body .book-lightbox .rn-zoom-tools { position: fixed; bottom: 22px; }
@media (max-width: 575px) {
  html body .books-details-grid-wrap .book-main-nav, html body .book-lightbox .book-lightbox__nav, html body .book-lightbox .book-lightbox__close { width: 40px !important; height: 40px !important; }
  html body .book-lightbox .rn-zoom-stage { width: 96vw; height: 72vh; }
}
