/* Product-page layout only; typography and other RAPID pages remain shared. */
.cv-home-v2[data-rapid-book] .cv-company-section:has([data-company-inline-module="book-publisher"]) .cv-v1-heading-icon { background:#1b1b1b url("profile-brands/forbes.png") center / contain no-repeat; border-color:#1b1b1b; box-shadow:none; }
.cv-home-v2[data-rapid-book] .cv-company-section:has([data-company-inline-module="book-publisher"]) .cv-v1-heading-icon > svg { display:none; }
.cv-reader-track { display:grid; grid-auto-flow:column; grid-auto-columns:100%; gap:24px; overflow-x:auto; scroll-snap-type:x mandatory; padding-block:16px; }
.cv-reader-item { min-width:0; display:flex; flex-direction:column; gap:12px; scroll-snap-align:start; scroll-margin-top:120px; }
.cv-reader-item header { display:flex; align-items:center; gap:10px; }
.cv-reader-item h3, .cv-reader-item p { margin:0; }
.cv-reader-avatar { display:grid; place-items:center; flex:0 0 32px; height:32px; border-radius:50%; color:var(--cv-section-icon-color); background:var(--cv-section-icon-bg); border:1px solid var(--cv-section-icon-border); font-size:14px; line-height:1; font-weight:700; }
.cv-reader-item small, .cv-reader-item time { font-size:12px; line-height:1.5; }
.cv-home-v2 .cv-reader-item > .cv-reader-source { margin:0; display:inline-flex; gap:8px; align-items:center; align-self:flex-start; width:fit-content; min-height:44px; padding:0; font-size:14px; font-weight:600; line-height:1.5; }
.cv-home-v2 .cv-reader-source img { display:block; flex:0 0 20px; width:20px; height:20px; object-fit:contain; border-radius:0; filter:none; transform:none; }
.cv-reader-quote em { font-style:italic; }
.cv-reader-item > a svg { width:18px; height:18px; }
.cv-reader-rating { display:flex; align-items:center; gap:8px; }
.cv-reader-stars { display:inline-grid; position:relative; font-size:20px; line-height:1; color:#c8952c; }
.cv-reader-stars > span:last-child { position:absolute; inset:0 auto 0 0; overflow:hidden; white-space:nowrap; }
.cv-reader-pages { display:flex; flex-wrap:wrap; justify-content:center; }
.cv-reader-pages a { display:grid; place-items:center; width:44px; height:44px; }
.cv-reader-pages a span { width:8px; height:8px; border-radius:50%; background:var(--cv-section-icon-color); }
@media (min-width:701px) {
    .cv-reader-track { grid-auto-columns:calc((100% - 24px) / 2); }
    .cv-reader-item { scroll-snap-align:none; }
    .cv-reader-item:nth-child(2n+1) { scroll-snap-align:start; }
    .cv-reader-pages a:not(:nth-child(2n+1)) { display:none; }
}
@media (min-width: 1201px) {
    .cv-reader-track { grid-auto-columns:calc((100% - 72px) / 4); }
    .cv-reader-item:nth-child(2n+1) { scroll-snap-align:none; }
    .cv-reader-item:nth-child(4n+1) { scroll-snap-align:start; }
    .cv-reader-pages a:not(:nth-child(4n+1)) { display:none; }
}
.cv-home-v2[data-rapid-book] .cv-book-hero-layout { align-items:stretch; }
.cv-home-v2[data-rapid-book] .cv-book-hero-copy > .cv-company-eyebrow { display:inline-flex; flex:none; width:fit-content; max-width:100%; justify-self:start; align-self:flex-start; }
.cv-home-v2[data-rapid-book] .cv-book-hero-copy { display:flex; flex-direction:column; gap:16px; }
.cv-home-v2[data-rapid-book] .cv-book-hero-copy > :is(h1,p,ul) { margin:0; }
.cv-home-v2[data-rapid-book] .cv-book-hero-copy .cv-v1-text-link { margin:0; }
.cv-home-v2[data-rapid-book] .cv-book-hero-copy > .cv-company-eyebrow > span { flex:0 1 auto; min-width:0; max-width:100%; white-space:normal; }
.cv-home-v2[data-rapid-book] .cv-book-hero-cover { display:block; align-self:start; margin:0; padding:0; border:0; width:100%; min-width:0; overflow:hidden; }
.cv-home-v2[data-rapid-book] .cv-book-hero-cover img { display:block; width:100%; max-width:none; height:auto; aspect-ratio:330 / 482; object-fit:contain; border-radius:inherit; }
.cv-home-v2[data-rapid-book] .cv-book-hero-cover img,
.cv-home-v2[data-rapid-book] .cv-v1-book-visual .cv-book-art img { filter:none; }
.cv-home-v2[data-rapid-book] .cv-book-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 20px; margin:24px 0 0; padding:0; list-style:none; }
.cv-home-v2[data-rapid-book] .cv-book-facts > li { display:flex; align-items:flex-start; gap:8px; min-width:0; font-size:var(--cv-content-copy); line-height:1.6; overflow-wrap:anywhere; }
.cv-home-v2[data-rapid-book] .cv-book-facts svg { display:block; width:18px; height:18px; margin-top:2px; color:var(--cv-section-icon-color); }
.cv-home-v2[data-rapid-book] .cv-book-facts > li > span:first-child { flex:0 0 18px; }
.cv-home-v2[data-rapid-book] .cv-book-retailers,
.cv-home-v2[data-rapid-book] .cv-book-retailer-group { display:flex; flex-wrap:wrap; align-items:center; gap:16px 24px; }
.cv-home-v2[data-rapid-book] .cv-book-retailers { margin-top:24px; }
.cv-home-v2[data-rapid-book] .cv-book-retailer-logo { display:grid; place-items:center; flex:0 0 130px; width:130px; height:56px; padding:8px 10px; }
.cv-home-v2[data-rapid-book] .cv-book-retailer-logo img { display:block; width:110px; height:40px; object-fit:contain; filter:none; transform:none; }
.cv-home-v2[data-rapid-book] .cv-book-retailer-logo-inverse { background:#0071ce; border-radius:4px; }
.cv-home-v2[data-rapid-book] .cv-book-retailer-logo:focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.cv-home-v2[data-rapid-book] .cv-book-author { display:grid; grid-template-columns:minmax(140px,180px) minmax(0,1fr); gap:24px; align-items:start; margin-top:var(--cv-content-gap); }
.cv-home-v2[data-rapid-book] .cv-book-author img { width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:50%; }
.cv-home-v2[data-rapid-book] .cv-book-author-copy { display:grid; gap:12px; min-width:0; }
.cv-home-v2[data-rapid-book] .cv-book-author-copy .cv-v1-text-link { margin-top:0; }
.cv-home-v2[data-rapid-book] .cv-book-author-copy > p { margin:0; overflow-wrap:break-word; }
.cv-home-v2[data-rapid-book] .cv-company-section:has(> #company-section-book-explore) > .cv-company-grid { grid-template-columns:minmax(0,1fr); }
.cv-home-v2[data-rapid-book] .cv-company-section:has(> #company-section-book-explore) > .cv-company-grid > .cv-company-card { grid-column:auto; }
@media (min-width:701px) {
    .cv-home-v2[data-rapid-book] .cv-book-hero-cover { position:relative; align-self:stretch; aspect-ratio:330 / 482; }
    .cv-home-v2[data-rapid-book] .cv-book-hero-cover img { position:absolute; inset:0; height:100%; object-fit:cover; }
}
@media (min-width: 981px) {
    /* Match the square case-study cover height while preserving the book ratio. */
    .cv-home-v2[data-rapid-book] .cv-book-hero-layout { grid-template-columns:min(21.91%, 246.47px) minmax(0,1fr); }
    .cv-home-v2[data-rapid-book] .cv-company-section:has(> #company-section-book-explore) > .cv-company-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 700px) {
    .cv-home-v2[data-rapid-book] .cv-book-author { grid-template-columns:minmax(0,1fr); }
    .cv-home-v2[data-rapid-book] .cv-book-author img { max-width:180px; justify-self:center; }
}
@media (max-width: 480px) {
    .cv-home-v2[data-rapid-book] .cv-book-facts { grid-template-columns:minmax(0,1fr); }
}

/* Book facts read as supporting metadata (Kevin 2026-11-02): a step smaller than the hero paragraph, bold labels. */
.cv-home-v2[data-rapid-book] .cv-book-facts > li { font-size:calc(var(--cv-content-copy) - 2px); line-height:1.55; }
.cv-home-v2[data-rapid-book] .cv-book-facts > li strong { font-weight:700; color:var(--cv-content-title-color); }
.cv-home-v2[data-rapid-book] .cv-book-facts svg { width:16px; height:16px; margin-top:2px; }
.cv-home-v2[data-rapid-book] .cv-book-facts > li > span:first-child { flex-basis:16px; }
/* The cover takes the RAPID section's image treatment and the same slow depth as the book cover on case pages. */
.cv-home-v2[data-rapid-book] .cv-book-hero-cover img { filter:var(--cv-hub-image-filter, none); }
.cv-home-v2[data-rapid-book] .cv-book-hero-cover:has(> .cv-image-depth) { position:relative; aspect-ratio:330 / 482; }
.cv-home-v2[data-rapid-book] .cv-book-hero-cover > img.cv-image-depth { position:absolute; inset:auto 0; top:-9px; height:calc(100% + 18px); object-fit:cover; }
