/* Approved Book feature launch bar. Full content and purchase link work without JavaScript. */
.promo-bar { position:sticky; top:0; z-index:10; font-size:14px; line-height:1.35; }
.promo-inner { width:min(1240px,calc(100% - 96px)); margin:auto; display:flex; align-items:center; gap:32px; }
.promo-message { display:grid; gap:4px; flex:1; }
.promo-message strong { font-weight:600; }
.promo-detail { font-size:12px; }
.promo-meta { display:flex; align-items:center; gap:24px; }
.promo-bar .live-readers { display:inline-flex; align-items:center; gap:8px; font-size:12px; white-space:nowrap; }
.promo-bar .reader-dot { width:6px; height:6px; border-radius:50%; background:currentColor; box-shadow:none; animation:none; }
.promo-bar #launch-countdown { font-size:17px; font-weight:600; font-variant-numeric:tabular-nums; letter-spacing:.04em; white-space:nowrap; padding:7px 10px; border:1px solid #d8b8bf; border-radius:4px; color:var(--red); }
.promo-action { display:flex; align-items:center; gap:20px; }
.promo-buy { display:inline-flex; align-items:center; justify-content:center; gap:15px; min-height:44px; padding:12px 18px; border-radius:4px; text-decoration:none; font-size:14px; font-weight:600; white-space:nowrap; transition:background .15s; }
.promo-buy svg { width:18px; height:18px; }
.promo-buy:focus-visible { outline:3px solid var(--red); outline-offset:3px; }
.promo-bar .cta-price { white-space:nowrap; }
.promo-bar .cta-price del { opacity:1; font-weight:400; margin-right:4px; text-decoration-thickness:1px; }
.promo-4 { background:var(--tint); color:var(--ink); border-bottom:1px solid #f1cbd2; }
.promo-4 .promo-inner { min-height:88px; }
.promo-4 .promo-message { grid-template-columns:36px auto; column-gap:14px; align-items:center; }
.promo-cover { grid-row:1/3; width:36px; height:51px; object-fit:cover; box-shadow:2px 3px 0 #c9beb1; }
.promo-4 .promo-message strong { font-family:var(--serif); font-size:23px; line-height:1.15; }
.promo-4 .promo-detail { color:var(--muted); }
.promo-4 .promo-buy { background:var(--red); color:white; }
.promo-4 .promo-buy:hover { background:var(--red-hover); }
@media (max-width:1100px) {
  .promo-inner { width:calc(100% - 48px); gap:20px; }
  .promo-meta { flex-direction:column; gap:4px; }
}
@media (max-width:700px) {
  html { scroll-padding-top:145px; }
  .promo-inner { width:calc(100% - 32px); padding:12px 0; display:grid; grid-template-columns:1fr auto; gap:9px 12px; }
  .promo-message { min-width:0; }
  .promo-meta { grid-column:1/-1; grid-row:2; flex-direction:row; justify-content:space-between; gap:10px; }
  .promo-bar .live-readers { font-size:11px; }
  .promo-bar #launch-countdown { font-size:14px; padding:0; border:0; }
  .promo-action { grid-column:2; grid-row:1; gap:8px; }
  .promo-buy { padding:10px 12px; font-size:12px; gap:0; }
  .promo-buy svg { display:none; }
  .promo-4 .promo-inner { min-height:116px; }
  .promo-4 .promo-message { grid-template-columns:29px auto; column-gap:9px; }
  .promo-4 .promo-cover { width:29px; height:42px; }
  .promo-4 .promo-message strong { font-size:17px; }
  .promo-4 .promo-buy>span { max-width:95px; white-space:normal; }
  .promo-4 .promo-detail { font-size:10px; }
}
@media (prefers-reduced-motion:reduce) { .promo-buy { transition:none; } }
