/* Focused hero delivery fix. Accepted artwork and all story content are preserved. */
.hero-candidate .hero{min-height:0;overflow:visible}
.hero-candidate .hero-inner{display:grid;grid-template-columns:minmax(0,512px) minmax(0,1fr);gap:72px;align-items:center;max-width:1240px;padding:44px 34px 56px}
.hero-candidate .hero-figure{margin:0;min-width:0;width:100%;max-width:512px;border:1px solid #d6c4a342;border-radius:26px;background:#10242d;box-shadow:0 24px 65px #0003;overflow:hidden}
.hero-candidate .hero-scene-frame{height:400px;overflow:hidden;position:relative;background:#09151d}
.hero-candidate .hero-scene-frame picture{display:block;width:100%;height:100%}
.hero-candidate .hero-scene-image{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 64%;transform:none;max-height:none}
.hero-candidate .hero-book-identity{position:relative;padding:20px 24px 20px 126px;min-height:88px;display:flex;align-items:center;gap:14px;background:#10242d;text-align:left}
.hero-candidate .hero-cover-thumb{position:absolute;left:23px;bottom:14px;width:88px;height:132px;object-fit:contain;border-radius:2px 4px 4px 2px;box-shadow:4px 8px 18px #0007;transform:rotate(-3deg)}
.hero-candidate .hero-identity-line{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:10px;line-height:1.6;letter-spacing:.15em;color:#d4c29f}
.hero-candidate .hero-sales-status{font-size:11px;letter-spacing:0;color:#c8d2ce;border-left:1px solid #c8d2ce55;padding-left:14px}
.hero-candidate .hero-book-name{font-family:var(--serif);font-size:22px;line-height:1.3;letter-spacing:-.02em;margin-top:5px;color:#f2efe6}
.hero-candidate .hero-copy{min-width:0;max-width:none}
.hero-candidate .hero-author{font-size:11px;line-height:1.6;color:#bdc9c4;letter-spacing:.04em;margin:0 0 14px}
.hero-candidate .hero h1{font-size:clamp(40px,4vw,57px);line-height:1.06;margin:0 0 22px;letter-spacing:-.045em}
.hero-candidate .hero h1 em{color:#d7bd96}
.hero-candidate .hero-description{font-size:17px;line-height:1.65;color:#ccd6d1;margin:0 0 26px;max-width:none}
.hero-candidate .hero .store-actions{display:block}
.hero-candidate .hero .button{min-height:56px;gap:45px}
.hero-candidate .hero-price-note{font-size:12px;line-height:1.65;margin:15px 0 0;color:#b9c9c2}
.hero-candidate .hero-chapter-links{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:3px}
.hero-candidate .hero-chapter-links a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;line-height:1.5;padding:8px 0;color:#f2efe6;text-decoration:underline;text-underline-offset:4px}
@media(min-width:741px) and (max-width:1050px){
 .hero-candidate .hero-inner{gap:32px;padding-left:30px;padding-right:30px;grid-template-columns:1.12fr 1fr}
 .hero-candidate .hero-scene-frame{height:340px}
 .hero-candidate .hero h1{font-size:41px}
 .hero-candidate .hero-book-identity{padding:18px 18px 18px 98px}
 .hero-candidate .hero-cover-thumb{left:18px;width:66px;height:99px}
 .hero-candidate .hero-book-name{font-size:19px}
 .hero-candidate .hero-identity-line{gap:5px 8px}
 .hero-candidate .hero-sales-status{padding-left:8px}
}
@media(max-width:740px){
 .hero-candidate .hero-inner{display:flex;flex-direction:column;gap:0;align-items:stretch;padding:14px 16px 24px}
 .hero-candidate .hero-figure{border-radius:20px;box-shadow:0 12px 35px #0002}
 .hero-candidate .hero-figure{align-self:center}
 .hero-candidate .hero-scene-frame{height:clamp(170px,30svh,220px)}
 .hero-candidate .hero-book-identity{padding:9px 12px 10px 84px;min-height:56px}
 .hero-candidate .hero-cover-thumb{left:14px;bottom:10px;width:58px;height:87px}
 .hero-candidate .hero-identity-line{font-size:9px;letter-spacing:.12em;gap:6px 9px;line-height:1.5}
 .hero-candidate .hero-sales-status{font-size:11px;padding-left:9px}
 .hero-candidate .hero-book-name{font-size:16px;line-height:1.25;margin-top:4px}
 .hero-candidate .hero-copy{padding:16px 8px 0}
 .hero-candidate .hero h1{font-size:clamp(30px,8.55vw,38px);line-height:1.06;margin:0 0 10px}
 .hero-candidate .hero-description{font-size:15px;line-height:1.5;margin:0 0 16px}
 .hero-candidate .hero .button{min-height:54px;width:100%;font-size:14px;padding:15px 22px}
 .hero-candidate .hero-price-note{font-size:12px;line-height:1.6;margin-top:10px}
}
@media(max-width:359px){
 .hero-candidate .hero-book-identity{padding-left:76px;padding-right:10px}
 .hero-candidate .hero-cover-thumb{left:12px;width:52px;height:78px}
 .hero-candidate .hero-book-name{font-size:15px}
 .hero-candidate .hero-identity-line{font-size:8px;gap:5px 7px}
 .hero-candidate .hero-sales-status{font-size:10px;padding-left:7px}
 .hero-candidate .hero-copy{padding-left:4px;padding-right:4px}
 .hero-candidate .hero h1{font-size:30px}
 .hero-candidate .hero-description{font-size:14px}
}
@media(max-width:740px) and (max-height:520px){
 .hero-candidate .hero-inner{padding-top:12px}
 .hero-candidate .hero-scene-frame{height:clamp(118px,28svh,146px)}
 .hero-candidate .hero-book-identity{min-height:48px;padding-top:6px;padding-bottom:7px}
 .hero-candidate .hero-cover-thumb{height:72px;width:48px;bottom:7px}
 .hero-candidate .hero-copy{padding-top:12px}
 .hero-candidate .hero h1{font-size:28px;margin-bottom:8px}
 .hero-candidate .hero-description{font-size:14px;margin-bottom:12px}
 .hero-candidate .hero-price-note{margin-top:8px}
}
@media(prefers-reduced-motion:reduce){.hero-candidate .hero-scene-image{transform:none}}

/* Frame the approved Dark conversation without clipping the mugs or cover text. */
@media(min-width:741px) and (max-width:1050px){.hero-candidate .hero-scene-image{object-position:50% 75%}}
@media(min-width:431px) and (max-width:740px){.hero-candidate .hero-scene-frame{height:clamp(240px,50vw,360px)}}
@media(max-width:430px) and (max-height:520px){
 .hero-candidate .hero-inner{padding-top:8px}
 .hero-candidate .hero-scene-frame{height:clamp(145px,45vw,180px)}
 .hero-candidate .hero-scene-image{object-position:50% 64%}
 .hero-candidate .hero-book-identity{padding-top:4px;padding-bottom:5px}
 .hero-candidate .hero-copy{padding-top:10px}
 .hero-candidate .hero h1{margin-bottom:6px}
 .hero-candidate .hero-description{margin-bottom:8px}
 .hero-candidate .hero .button{min-height:48px;padding:12px 18px}
}
