/* Book showcase */
.book-feature { display:grid; grid-template-columns:0.95fr 1.05fr; column-gap:clamp(40px,7vw,100px); row-gap:48px; align-items:center; padding-block:88px 100px; scroll-margin-top:110px; }
.book-feature__heading { grid-column:1 / -1; display:flex; align-items:center; gap:24px; color:var(--color-navy); font-size:14px; font-weight:700; }
.book-feature__heading-line { flex:1; height:1px; background:var(--color-line); position:relative; }
.book-feature__heading-line::before { content:''; position:absolute; right:0; top:-1px; width:48px; height:3px; background:var(--color-accent); }
.book-feature__heading-note { color:var(--color-muted); font-size:11px; font-weight:400; }
.book-feature__stage { position:relative; min-width:0; display:flex; flex-direction:column; align-items:center; padding:30px 30px 25px; perspective:1200px; }
.book-feature__edition { align-self:flex-start; font-size:11px; color:var(--color-muted); margin-bottom:30px; }
.book-feature__cover { position:relative; width:min(82%,310px); margin:12px 0 42px; transform:perspective(1100px) rotateY(-10deg) rotateZ(-3deg); box-shadow:18px 28px 36px -20px #102a4355; transition:transform 450ms cubic-bezier(.23,1,.32,1); }
.book-feature__cover::after { content:''; position:absolute; inset:0; pointer-events:none; border-radius:inherit; background:linear-gradient(90deg,transparent 0%,#ffffff12 3%,#00000035 5%,transparent 8%,transparent 95%,#ffffff12); }
.book-feature__cover::before { content:''; position:absolute; top:1%; bottom:0; left:-9px; width:10px; background:repeating-linear-gradient(to bottom,#d4d0c4 0 1px,#f1eee5 1px 3px); transform:skewY(-35deg); transform-origin:right; border-left:2px solid #171a18; z-index:-1; }
.book-feature__cover img { display:block; width:100%; height:auto; border-radius:1px 3px 3px 1px; }
.book-feature__caption { color:var(--color-ink); font-size:12px; }
.book-feature__copy { min-width:0; }
.book-feature__copy h2 { color:var(--color-navy); font-size:clamp(38px,4.2vw,58px); line-height:1.45; margin:12px 0 22px; letter-spacing:-1.5px; }
.book-feature__copy h2 span { display:block; font-size:0.62em; font-weight:500; letter-spacing:-0.5px; color:var(--color-accent-dark); margin-top:6px; }
.book-feature__subtitle { color:var(--color-ink); font-size:14px; line-height:1.9; margin:0 0 18px; padding-inline-start:14px; border-inline-start:2px solid var(--color-accent); }
.book-feature__description { color:var(--color-muted); font-size:15px; line-height:2.1; margin:0; }
.book-feature__author { display:flex; align-items:center; gap:12px; margin:24px 0; }
.book-feature__author img { width:44px; height:44px; object-fit:cover; object-position:center 20%; border-radius:50%; filter:grayscale(1); }
.book-feature__facts { display:grid; grid-template-columns:1fr 1.4fr 1fr; margin:26px 0; padding-block:18px; border-block:1px solid var(--color-line); }
.book-feature__facts > div + div { border-inline-start:1px solid var(--color-line); padding-inline-start:16px; }
.book-feature__facts dt { color:var(--color-muted); font-size:11px; margin-bottom:9px; }
.book-feature__facts dd { color:var(--color-navy); font-size:12px; font-weight:500; margin:0; }
.book-feature__author > span { width:26px; height:2px; background:var(--color-accent); }
.book-feature__author strong,.book-feature__author small { display:block; }
.book-feature__author strong { font-size:14px; color:var(--color-navy); }
.book-feature__author small { font-size:11px; color:var(--color-muted); margin-top:5px; }
.book-feature__topics { display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding:0; margin:0 0 26px; }
.book-feature__topics li { padding:4px 0; font-size:12px; color:var(--color-ink); }
.book-feature__topics li + li::before { content:'/'; margin-inline:8px 16px; color:#b7c2c7; }
.book-feature__release { padding-top:0; }
.book-feature__status { display:flex; align-items:center; gap:8px; color:var(--color-navy); font-size:13px; font-weight:700; }
.book-feature__status i { width:6px; height:6px; border-radius:50%; background:var(--color-accent-dark); }
.book-feature__release > p { color:var(--color-muted); font-size:12px; line-height:1.9; margin:10px 0 18px; }
.book-feature__details summary { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:13px 18px; background:var(--color-navy); color:white; font-size:13px; cursor:pointer; list-style:none; min-height:22px; }
.book-feature__details summary::-webkit-details-marker { display:none; }
.book-feature__details summary span { font-size:22px; font-weight:300; }
.book-feature__details summary { border-inline-start:3px solid var(--color-accent); transition:background-color 180ms ease; }
@media(hover:hover) { .book-feature__details summary:hover { background:var(--color-deep); } }
.book-feature__details[open] summary span { transform:rotate(45deg); }
.book-feature__details p { font-size:13px; line-height:2; color:var(--color-muted); padding-inline:16px; }
@media(max-width:760px) {
 .book-feature { grid-template-columns:1fr; gap:35px; padding-block:56px; }
 .book-feature__stage { padding:24px; }
 .book-feature__cover { width:min(75%,270px); }
 .book-feature__copy h2 { font-size:36px; }
 .book-feature__heading { gap:16px; }
 .book-feature__heading-note { display:none; }
 .book-feature__facts > div + div { padding-inline-start:10px; }
}
@media (prefers-reduced-motion:no-preference) {
 .book-feature.is-visible .book-feature__stage { animation:book-arrive 1000ms cubic-bezier(.23,1,.32,1) both; }
 .book-feature.is-visible .book-feature__copy > * { animation:book-copy-arrive 700ms cubic-bezier(.23,1,.32,1) both; }
 .book-feature.is-visible .book-feature__copy > :nth-child(2) { animation-delay:60ms; }
 .book-feature.is-visible .book-feature__copy > :nth-child(3) { animation-delay:120ms; }
 .book-feature.is-visible .book-feature__copy > :nth-child(n+4) { animation-delay:180ms; }
}
@keyframes book-arrive {
 from { opacity:0; transform:translateY(35px) rotateY(12deg); }
 to { opacity:1; transform:translateY(0) rotateY(0); }
}
@keyframes book-copy-arrive {
 from { opacity:0; transform:translateY(16px); }
 to { opacity:1; transform:translateY(0); }
}
@media (prefers-reduced-motion:reduce) {
 .book-feature__cover { transition:none; transform:none !important; }
}
