/* Book Pulse catalogue — 5-across tiles, Atelier palette, centered stars + footer price/cta */
.bp-page{
  --bp-bg:#06080D;
  --bp-card:#0b111a;
  --bp-text:#F2EDE4;
  --bp-muted:#8b95a8;
  --bp-gold:#C6A75E;
  --bp-cyan:#3ec9f0;
  --bp-line:rgba(139,149,168,.28);
  --bp-link:#3ec9f0;
  --bp-live:#3dd68c;
  --bp-review:#8b95a8;
  /* Meta rhythm: larger centered stars; footer = big price left + More Details right */
  --bp-rating-h:1.85rem;
  --bp-price-h:2.35rem;
  width:100%;
  max-width:1600px;
  margin:0 auto;
  padding:1.5rem 1rem 3rem;
  color:var(--bp-text);
  font-family:"Libre Franklin",system-ui,-apple-system,sans-serif;
  box-sizing:border-box;
  background:var(--bp-bg);
}
.bp-page *,.bp-page *::before,.bp-page *::after{box-sizing:border-box}

/* —— Header —— */
.bp-page-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1.5rem;
  margin-bottom:1.5rem;
  flex-wrap:wrap;
}
.bp-page-head-left{
  display:flex;
  align-items:flex-start;
  gap:.85rem;
  min-width:0;
}
.bp-icon{
  flex:0 0 auto;
  width:2.6rem;
  height:2.6rem;
  color:var(--bp-cyan);
  margin-top:.15rem;
}
.bp-icon svg{display:block;width:100%;height:100%}
.bp-page-titles{min-width:0}
.bp-page-head h1{
  font-family:"Libre Franklin",system-ui,sans-serif;
  font-size:clamp(1.65rem,2.8vw,2.15rem);
  font-weight:800;
  margin:0;
  color:#fff;
  letter-spacing:.22em;
  text-transform:uppercase;
  line-height:1.1;
}
.bp-page-head .bp-subtitle{
  margin:.45rem 0 0;
  color:var(--bp-muted);
  font-size:.78rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  line-height:1.4;
}
.bp-page-tagline{
  margin:0;
  color:var(--bp-muted);
  font-size:.68rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  text-align:right;
  max-width:14rem;
  line-height:1.45;
  align-self:center;
}

/*
 * Grid: ~5 tiles across on widescreen (~1280–1600+ content).
 * Explicit 5-col from 1100px up so tiles stay large (not Amazon-tiny).
 */
.bp-list{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:1.5rem 1.15rem;
  align-items:stretch;
}

.bp-card{
  background:var(--bp-card);
  border:1px solid rgba(139,149,168,.18);
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(0,0,0,.3);
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
  transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
.bp-card:hover{
  border-color:rgba(198,167,94,.4);
  box-shadow:0 12px 32px rgba(0,0,0,.42);
  transform:translateY(-2px);
}

/* Full portrait cover — entire cover visible */
.bp-cover{
  position:relative;
  aspect-ratio:2 / 3;
  background:#05070c;
  overflow:hidden;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
}
.bp-cover img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center top;
  display:block;
}
.bp-cover-fallback{
  display:flex;align-items:center;justify-content:center;
  height:100%;width:100%;padding:.75rem;color:var(--bp-muted);text-align:center;font-size:.8rem;
}
.bp-live-dot{
  position:absolute;
  top:.5rem;
  right:.5rem;
  width:.5rem;
  height:.5rem;
  border-radius:50%;
  background:var(--bp-live);
  box-shadow:0 0 0 2px rgba(11,17,26,.85);
  pointer-events:none;
}

/*
 * Meta block: rating + price under cover (no on-tile title/series).
 * Title lives in cover alt + visually hidden heading.
 */
.bp-sr-only{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
.bp-card-body{
  position:relative;
  padding:.6rem .7rem .75rem;
  display:flex;
  flex-direction:column;
  gap:0;
  flex:1 1 auto;
  min-height:0;
}

/* Rating row — larger, centered under cover */
.bp-rating-row{
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:center;
  gap:.3rem .4rem;
  line-height:1.2;
  height:var(--bp-rating-h);
  min-height:var(--bp-rating-h);
  margin:0 0 .4rem;
  overflow:hidden;
}
.bp-rating-num{
  font-weight:800;
  font-size:1.1rem;
  color:var(--bp-text);
  flex:0 0 auto;
}
.bp-stars{
  display:inline-flex;
  gap:0;
  color:var(--bp-gold);
  font-size:1.2rem;
  line-height:1;
  letter-spacing:-.03em;
  flex:0 0 auto;
}
.bp-star-empty{opacity:.35}
.bp-star-half{opacity:.85}
.bp-review-count{
  font-size:.95rem;
  color:var(--bp-muted);
  font-weight:600;
  flex:0 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Footer: very large price bottom-left + More Details button bottom-right */
.bp-card-footer{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:.45rem;
  margin-top:auto;
  min-height:var(--bp-price-h);
}
.bp-price{
  display:inline-flex;
  align-items:flex-start;
  color:#fff;
  font-weight:700;
  line-height:1;
  margin:0;
  flex:0 1 auto;
  min-width:0;
}
.bp-price-sym{
  font-size:.95rem;
  margin-top:.18em;
  margin-right:.05em;
  font-weight:700;
}
.bp-price-dollars{
  font-size:2.15rem;
  font-weight:800;
  letter-spacing:-.03em;
  line-height:1;
}
.bp-price-cents{
  font-size:.95rem;
  margin-top:.18em;
  margin-left:.02em;
  font-weight:700;
}
.bp-price-na{
  font-size:1.35rem;
  font-weight:700;
  color:var(--bp-muted);
  align-items:center;
  height:var(--bp-price-h);
}

.bp-details{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  margin:0;
  padding:.42rem .7rem;
  color:var(--bp-text);
  background:rgba(62,201,240,.12);
  border:1px solid rgba(62,201,240,.45);
  border-radius:6px;
  text-decoration:none;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  white-space:nowrap;
  line-height:1.2;
  transition:background .15s ease,border-color .15s ease,color .15s ease;
}
.bp-page a.bp-details:hover,.bp-details:hover{
  text-decoration:none;
  color:#fff;
  background:rgba(62,201,240,.22);
  border-color:var(--bp-cyan);
}
.bp-empty{color:var(--bp-muted);padding:2rem;text-align:center}


/* ——— Sort control (top-right, opposite BOOKS) ——— */
.bp-page-head-right{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:.55rem;
  margin-left:auto;
  min-width:0;
}
.bp-page-head-right .bp-page-tagline{
  align-self:flex-end;
}
.bp-sort{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  margin:0;
  color:var(--bp-muted);
  font-size:.68rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.bp-sort-label{
  color:var(--bp-muted);
  font-weight:600;
}
.bp-sort-select{
  appearance:none;
  -webkit-appearance:none;
  background:var(--bp-card);
  color:var(--bp-text);
  border:1px solid rgba(198,167,94,.4);
  border-radius:6px;
  padding:.35rem 1.7rem .35rem .65rem;
  font:inherit;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.04em;
  text-transform:none;
  cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--bp-gold) 50%),linear-gradient(135deg,var(--bp-gold) 50%,transparent 50%);
  background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
  min-width:9.5rem;
}
.bp-sort-select:hover,
.bp-sort-select:focus{
  outline:none;
  border-color:var(--bp-cyan);
  box-shadow:0 0 0 1px rgba(62,201,240,.25);
}

/* ——— Slim series band separators ——— */
.bp-band{
  margin:0 0 1.75rem;
}
.bp-band:last-child{margin-bottom:0}
.bp-band-head{
  display:flex;
  align-items:center;
  gap:.85rem;
  margin:0 0 .95rem;
  min-width:0;
}
.bp-band-label{
  flex:0 0 auto;
  margin:0;
  padding:0;
  font-family:"Libre Franklin",system-ui,sans-serif;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--bp-muted);
  line-height:1.2;
  white-space:nowrap;
}
.bp-band-rule{
  flex:1 1 auto;
  height:1px;
  min-width:2rem;
  border:0;
  background:linear-gradient(90deg, rgba(198,167,94,.7), rgba(62,201,240,.45), rgba(139,149,168,.12));
  opacity:.95;
}


/* —— On-site book details (mockup) —— */
.bp-details-page{
  max-width:1180px;
  width:100%;
  margin-inline:auto;
  padding:1rem 1.15rem 3rem;
  background:transparent;
}
.bp-crumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.4rem .55rem;
  margin:0 0 1.25rem;
  font-size:.78rem;
  color:var(--bp-muted);
  letter-spacing:.04em;
}
.bp-crumbs a{
  color:var(--bp-muted);
  text-decoration:none;
}
.bp-crumbs a:hover{color:var(--bp-cyan)}
.bp-crumb-sep{opacity:.55}
.bp-crumb-current{color:var(--bp-text);font-weight:600}

.bp-hero{
  position:relative;
  border:1px solid rgba(139,149,168,.22);
  border-radius:14px;
  overflow:hidden;
  background:#05070c;
  margin-bottom:1.15rem;
  isolation:isolate;
}
.bp-hero-bg{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
}
.bp-hero-bg-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:right center;
  z-index:0;
  pointer-events:none;
  display:block;
}
.bp-hero-bg-space{
  background-image:url("../images/hero-space.jpg?v=1.9.9");
  background-size:cover;
  background-position:right center;
  opacity:1;
  filter:none;
  transform:none;
}
.bp-hero-bg-cover{display:none!important;opacity:0!important;}
.bp-hero-vignette{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(5,7,12,.68) 0%, rgba(5,7,12,.28) 40%, rgba(5,7,12,.12) 58%, rgba(5,7,12,.40) 100%),
    linear-gradient(to top, rgba(5,7,12,.70) 0%, transparent 42%);
}
.bp-hero-inner{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(200px,300px) 1fr;
  gap:1.75rem 2rem;
  padding:1.65rem 1.65rem 1.75rem;
  align-items:start;
}
.bp-hero-cover{min-width:0}
.bp-hero-cover-img{
  width:100%;
  height:auto;
  aspect-ratio:2 / 3;
  object-fit:cover;
  border-radius:8px;
  box-shadow:0 16px 40px rgba(0,0,0,.55);
  display:block;
  background:#05070c;
}
.bp-view-larger{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  margin-top:.7rem;
  color:var(--bp-cyan);
  font-size:.78rem;
  text-decoration:none;
  font-weight:600;
}
.bp-page a.bp-view-larger{color:var(--bp-cyan)}
.bp-view-larger:hover,.bp-page a.bp-view-larger:hover{color:#7adef5}
.bp-view-larger-icon{font-size:.85rem;display:inline-flex;align-items:center}
.bp-view-larger-icon svg{display:block;width:.9rem;height:.9rem}

.bp-series-label{
  margin:0 0 .55rem;
  color:var(--bp-gold);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.bp-hero-title{
  margin:0 0 .35rem;
  font-size:clamp(1.55rem, 3.2vw, 2.35rem);
  font-weight:800;
  letter-spacing:.06em;
  line-height:1.12;
  color:#fff;
  text-transform:uppercase;
}
.bp-hero-author{
  margin:0 0 .85rem;
  color:rgba(242,237,228,.92);
  font-size:.95rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.bp-hero-tagline{
  margin:0 0 1rem;
  color:var(--bp-cyan);
  font-size:1.05rem;
  font-weight:600;
  line-height:1.35;
}
.bp-hero-teaser{
  color:rgba(242,237,228,.88);
  font-size:.95rem;
  line-height:1.55;
  max-width:40rem;
}
.bp-hero-teaser p{margin:0 0 .75rem}
.bp-hero-teaser p:last-child{margin-bottom:0}

.bp-cta-row{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  gap:.85rem;
  margin-top:1.35rem;
  max-width:36rem;
}
.bp-cta{
  display:inline-flex;
  align-items:center;
  gap:.75rem;
  flex:1 1 15rem;
  max-width:17.5rem;
  padding:.95rem 1.2rem;
  border-radius:10px;
  text-decoration:none;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease;
}
.bp-cta:hover{text-decoration:none;transform:translateY(-1px)}
.bp-cta-icon{font-size:1.25rem;line-height:1;display:inline-flex;align-items:center;flex-shrink:0}
.bp-cta-icon svg{display:block;width:1.25rem;height:1.25rem}
.bp-cta-text{display:flex;flex-direction:column;gap:.15rem;line-height:1.15}
.bp-cta-text strong{
  font-size:.82rem;
  letter-spacing:.08em;
  font-weight:800;
}
.bp-cta-text small{
  font-size:.68rem;
  font-weight:600;
  letter-spacing:.02em;
  opacity:.85;
}
.bp-cta-primary{
  background:linear-gradient(165deg, #e2c882 0%, #C6A75E 42%, #a78c42 100%);
  color:#12100a;
  border:1px solid #d4b66e;
  box-shadow:0 10px 24px rgba(198,167,94,.3);
}
.bp-cta-primary:hover{
  color:#0a0906;
  background:linear-gradient(165deg, #ebd598 0%, #d4b66e 48%, #C6A75E 100%);
  box-shadow:0 12px 28px rgba(198,167,94,.4);
}
.bp-cta-secondary{
  background:rgba(6,8,13,.62);
  color:#fff;
  border:1.5px solid rgba(198,167,94,.72);
  box-shadow:0 8px 18px rgba(0,0,0,.28);
}
.bp-cta-secondary:hover{
  border-color:var(--bp-gold);
  color:#fff;
  background:rgba(12,16,24,.78);
  box-shadow:0 10px 22px rgba(198,167,94,.18);
}
/* Beat Atelier .atelier-component a { color: gold } — primary = dark, secondary = white */
.bp-page a.bp-cta-primary,
.bp-page a.bp-cta-primary:visited,
.bp-page a.bp-cta-primary strong,
.bp-page a.bp-cta-primary small,
.bp-page a.bp-cta-primary .bp-cta-icon,
.bp-page a.bp-cta-primary .bp-cta-icon svg{
  color:#12100a !important;
  fill:none;
  stroke:currentColor;
}
.bp-page a.bp-cta-primary:hover,
.bp-page a.bp-cta-primary:hover strong,
.bp-page a.bp-cta-primary:hover small,
.bp-page a.bp-cta-primary:hover .bp-cta-icon,
.bp-page a.bp-cta-primary:hover .bp-cta-icon svg{
  color:#0a0906 !important;
}
.bp-page a.bp-cta-secondary,
.bp-page a.bp-cta-secondary:visited,
.bp-page a.bp-cta-secondary strong,
.bp-page a.bp-cta-secondary small,
.bp-page a.bp-cta-secondary .bp-cta-icon,
.bp-page a.bp-cta-secondary .bp-cta-icon svg{
  color:#fff !important;
  fill:none;
  stroke:currentColor;
}
.bp-page a.bp-cta-secondary:hover,
.bp-page a.bp-cta-secondary:hover strong,
.bp-page a.bp-cta-secondary:hover small,
.bp-page a.bp-cta-secondary:hover .bp-cta-icon,
.bp-page a.bp-cta-secondary:hover .bp-cta-icon svg{
  color:#fff !important;
}
.bp-page a.bp-cta-secondary .bp-cta-icon svg{
  color:#e8d5a3 !important;
  stroke:currentColor;
}
.bp-cta[aria-disabled="true"]{cursor:default;opacity:.92}
.bp-cta-note{
  margin:.75rem 0 0;
  color:var(--bp-muted);
  font-size:.72rem;
  line-height:1.4;
}

.bp-infobar{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:.75rem;
  margin:0 0 1.15rem;
}
.bp-infobox{
  background:rgba(11,17,26,.92);
  border:1px solid rgba(139,149,168,.24);
  border-radius:10px;
  padding:1.05rem .95rem;
  text-align:center;
  min-width:0;
  box-shadow:0 6px 18px rgba(0,0,0,.18);
}
.bp-infobox-value{
  font-size:clamp(1.15rem, 2vw, 1.45rem);
  font-weight:800;
  color:#fff;
  line-height:1.2;
  letter-spacing:.02em;
}
.bp-infobox-star{color:var(--bp-gold);margin-left:.1rem}
.bp-infobox-stars{
  margin:.35rem 0 .2rem;
  color:var(--bp-gold);
  font-size:.95rem;
  letter-spacing:-.02em;
}
.bp-infobox-label{
  margin-top:.4rem;
  color:var(--bp-muted);
  font-size:.68rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  line-height:1.35;
}
.bp-format-icons{
  display:flex;
  justify-content:center;
  gap:.85rem;
  margin-bottom:.35rem;
}
.bp-format{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.25rem;
  min-width:3.2rem;
}
.bp-format-glyph{font-size:1.35rem;line-height:1}
.bp-format-label{
  font-size:.65rem;
  color:var(--bp-muted);
  letter-spacing:.04em;
  text-transform:uppercase;
  font-weight:600;
}

.bp-midrow{
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:.85rem;
  margin:0 0 1.15rem;
}
.bp-panel{
  background:rgba(11,17,26,.92);
  border:1px solid rgba(139,149,168,.24);
  border-radius:10px;
  padding:1.05rem 1.15rem 1.2rem;
  min-width:0;
  box-shadow:0 8px 22px rgba(0,0,0,.22);
}
.bp-panel-title{
  margin:0 0 .75rem;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--bp-gold);
}
.bp-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  margin-bottom:.15rem;
}
.bp-genre-pills{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
}
.bp-pill{
  display:inline-flex;
  align-items:center;
  padding:.35rem .7rem;
  border-radius:999px;
  background:rgba(90,110,140,.22);
  border:1px solid rgba(139,149,168,.32);
  color:rgba(242,237,228,.9);
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.02em;
}
.bp-series-nav{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
}
.bp-series-thumb{
  position:relative;
  display:block;
  width:4.5rem;
  border-radius:6px;
  overflow:hidden;
  border:2px solid transparent;
  text-decoration:none;
  background:#05070c;
  transition:border-color .15s ease, transform .15s ease;
}
.bp-series-thumb img{
  display:block;
  width:100%;
  aspect-ratio:2 / 3;
  object-fit:cover;
}
.bp-series-thumb:hover{border-color:rgba(198,167,94,.45);transform:translateY(-1px)}
.bp-series-thumb.is-current{
  border-color:var(--bp-gold);
  box-shadow:0 0 0 1px rgba(198,167,94,.35);
}
.bp-series-num{
  position:absolute;
  left:.3rem;
  bottom:.3rem;
  min-width:1.15rem;
  height:1.15rem;
  padding:0 .25rem;
  border-radius:4px;
  background:rgba(6,8,13,.82);
  color:#fff;
  font-size:.65rem;
  font-weight:800;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.bp-series-thumb.is-current .bp-series-num{
  background:var(--bp-gold);
  color:#12100a;
}
.bp-series-fallback{
  display:flex;
  align-items:center;
  justify-content:center;
  aspect-ratio:2 / 3;
  padding:.35rem;
  font-size:.55rem;
  color:var(--bp-muted);
  text-align:center;
}

.bp-cols{
  display:grid;
  grid-template-columns:1.25fr .9fr;
  gap:.85rem;
  margin:0 0 1.5rem;
}
.bp-prose{
  color:rgba(242,237,228,.9);
  font-size:.95rem;
  line-height:1.65;
}
.bp-prose p{margin:0 0 .9rem}
.bp-prose p:last-child{margin-bottom:0}
.bp-muted{color:var(--bp-muted)}

.bp-review-summary{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.45rem .65rem;
  margin:0 0 .85rem;
}
.bp-review-score{
  font-size:1.85rem;
  font-weight:800;
  color:#fff;
  line-height:1;
}
.bp-review-stars{color:var(--bp-gold);font-size:1.05rem}
.bp-review-n{color:var(--bp-muted);font-size:.8rem;font-weight:600}
.bp-dist{display:flex;flex-direction:column;gap:.35rem}
.bp-dist-row{
  display:grid;
  grid-template-columns:2.2rem 1fr 2.4rem;
  gap:.45rem;
  align-items:center;
  font-size:.72rem;
  color:var(--bp-muted);
}
.bp-dist-bar{
  display:block;
  height:.45rem;
  border-radius:999px;
  background:rgba(139,149,168,.18);
  overflow:hidden;
}
.bp-dist-bar > span{
  display:block;
  height:100%;
  background:linear-gradient(90deg, var(--bp-gold), #e0c788);
  border-radius:inherit;
}
.bp-dist-pct{text-align:right;font-variant-numeric:tabular-nums}
.bp-dist-note{
  margin:.65rem 0 0;
  font-size:.68rem;
  color:var(--bp-muted);
  line-height:1.4;
}

.bp-more{margin:0 0 .5rem}
.bp-more-head{
  display:flex;
  align-items:center;
  gap:.85rem;
  margin:0 0 1rem;
  min-width:0;
}
.bp-more-title{
  margin:0;
  flex:0 0 auto;
  font-size:.95rem;
  font-weight:700;
  color:var(--bp-gold);
  letter-spacing:.02em;
  white-space:nowrap;
}
.bp-more-rule{
  flex:1 1 auto;
  height:1px;
  min-width:1.5rem;
  background:linear-gradient(90deg, rgba(198,167,94,.75), rgba(139,149,168,.12));
}
.bp-more-link{
  flex:0 0 auto;
  color:var(--bp-gold);
  text-decoration:none;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.04em;
}
.bp-more-link:hover{color:#e0c788;text-decoration:underline}
.bp-more-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));
  gap:.85rem;
}
.bp-more-card{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:.75rem;
  align-items:center;
  background:rgba(11,17,26,.9);
  border:1px solid rgba(139,149,168,.2);
  border-radius:10px;
  padding:.7rem;
}
.bp-more-cover{
  display:block;
  border-radius:5px;
  overflow:hidden;
  background:#05070c;
}
.bp-more-cover img{
  display:block;
  width:100%;
  aspect-ratio:2 / 3;
  object-fit:cover;
}
.bp-more-book-title{
  margin:0 0 .15rem;
  font-size:.85rem;
  font-weight:700;
  color:#fff;
  line-height:1.25;
}
.bp-more-book-num{
  margin:0 0 .2rem;
  color:var(--bp-muted);
  font-size:.72rem;
}
.bp-more-price{
  margin:0 0 .45rem;
  color:#fff;
  font-weight:800;
  font-size:.95rem;
}
.bp-more-details{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.28rem .55rem;
  border:1px solid rgba(198,167,94,.55);
  border-radius:5px;
  background:rgba(6,8,13,.72);
  color:#fff;
  text-decoration:none;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.bp-page a.bp-more-details,
.bp-page a.bp-more-details:visited{
  color:#fff !important;
}
.bp-more-details:hover,
.bp-page a.bp-more-details:hover{
  background:rgba(198,167,94,.14);
  color:#fff !important;
  border-color:rgba(198,167,94,.85);
  text-decoration:none;
}

.bp-cover-modal[hidden]{display:none !important}
.bp-cover-modal{
  position:fixed;
  inset:0;
  z-index:10050;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1.25rem;
}
.bp-cover-modal-backdrop{
  position:absolute;
  inset:0;
  border:0;
  background:rgba(0,0,0,.78);
  cursor:pointer;
}
.bp-cover-modal-dialog{
  position:relative;
  z-index:1;
  max-width:min(92vw, 420px);
  max-height:92vh;
}
.bp-cover-modal-dialog img{
  display:block;
  width:100%;
  height:auto;
  max-height:88vh;
  object-fit:contain;
  border-radius:8px;
  box-shadow:0 20px 60px rgba(0,0,0,.6);
}
.bp-cover-modal-close{
  position:absolute;
  top:-.4rem;
  right:-.4rem;
  width:2rem;
  height:2rem;
  border-radius:50%;
  border:1px solid rgba(139,149,168,.35);
  background:#0b111a;
  color:#fff;
  font-size:1.25rem;
  line-height:1;
  cursor:pointer;
}
body.bp-modal-open{overflow:hidden}

@media (max-width:900px){
  .bp-hero-inner{grid-template-columns:minmax(150px,200px) 1fr;gap:1.25rem}
  .bp-infobar{grid-template-columns:repeat(2, minmax(0,1fr))}
  .bp-midrow,.bp-cols{grid-template-columns:1fr}
}
@media (max-width:560px){
  .bp-hero-inner{grid-template-columns:1fr;justify-items:center;text-align:center}
  .bp-hero-cover{max-width:220px;width:100%}
  .bp-hero-teaser{margin-left:auto;margin-right:auto}
  .bp-cta-row{justify-content:center}
  .bp-cta{width:100%;max-width:22rem;justify-content:center}
  .bp-series-nav{justify-content:center}
  .bp-genre-pills{justify-content:center}
  .bp-infobar{grid-template-columns:1fr 1fr}
  .bp-more-head{flex-wrap:wrap}
  .bp-more-title{white-space:normal}
}


/* Breakpoints */
@media (max-width:420px){
  .bp-page{padding:1rem .65rem 2.5rem}
  .bp-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem .65rem}
  .bp-page-head-right{align-items:flex-start;width:100%}
  .bp-page-tagline{text-align:left;max-width:none;width:100%}
  .bp-sort{width:100%}
  .bp-sort-select{flex:1 1 auto;width:100%}
}
@media (min-width:421px) and (max-width:699px){
  .bp-list{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.25rem .85rem}
}
@media (min-width:700px) and (max-width:1099px){
  /* ~3–4 on tablet / small laptop */
  .bp-list{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:1.35rem 1rem}
}
@media (min-width:1100px){
  /* Exactly 5 across on widescreen content (~1280–1600+) */
  .bp-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.55rem 1.2rem}
}
@media (min-width:1600px){
  .bp-page{max-width:1720px}
  .bp-list{gap:1.65rem 1.35rem}
}

/* —— Widen past Atelier 48rem literary column —— */
.atelier-component:has(.bp-page){
  max-width:none;
  width:100%;
}
.atelier-main.atelier-shell:has(.bp-page){
  width:min(100% - 2rem, 1600px);
}
@media (min-width:1700px){
  .atelier-main.atelier-shell:has(.bp-page){
    width:min(100% - 2.5rem, 1720px);
  }
}

/* Details: readable centered column (~1180), not catalogue full-bleed */
.atelier-component:has(.bp-details-page){
  max-width:none;
  width:100%;
}
.atelier-main.atelier-shell:has(.bp-details-page){
  width:min(100% - 2rem, 1200px);
}
@media (min-width:1700px){
  .atelier-main.atelier-shell:has(.bp-details-page){
    width:min(100% - 2.5rem, 1200px);
  }
}
.bp-page.bp-details-page{
  max-width:1180px;
  background:transparent;
  padding-left:0;
  padding-right:0;
}
@media (max-width:640px){
  .bp-page.bp-details-page{padding-left:.25rem;padding-right:.25rem}
  .atelier-main.atelier-shell:has(.bp-details-page){width:min(100% - 1rem, 1200px)}
}

/* --- Mockup polish: review cards + 5-across More tiles (1.9.2) --- */
.bp-panel-link{
  color:var(--bp-gold);
  text-decoration:none;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.04em;
  white-space:nowrap;
}
.bp-panel-link:hover,
.bp-page a.bp-panel-link:hover{color:#e0c788;text-decoration:underline}
.bp-page a.bp-panel-link{color:var(--bp-gold)}

.bp-review-cards{
  display:flex;
  flex-direction:column;
  gap:.75rem;
  margin-top:1rem;
}
.bp-review-card{
  background:rgba(6,8,13,.55);
  border:1px solid rgba(139,149,168,.22);
  border-radius:8px;
  padding:.85rem .9rem .9rem;
}
.bp-review-card-stars{
  color:var(--bp-gold);
  font-size:.85rem;
  letter-spacing:-.02em;
  margin:0 0 .35rem;
}
.bp-review-card-title{
  margin:0 0 .35rem;
  font-size:.88rem;
  font-weight:700;
  color:#fff;
  line-height:1.3;
}
.bp-review-card-body{
  margin:0 0 .45rem;
  color:rgba(242,237,228,.88);
  font-size:.82rem;
  line-height:1.5;
}
.bp-review-card-by{
  margin:0;
  color:var(--bp-muted);
  font-size:.72rem;
  font-style:italic;
}

.bp-more-grid{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:.75rem;
}
@media (max-width:900px){
  .bp-more-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
}
@media (max-width:560px){
  .bp-more-grid{grid-template-columns:1fr}
}

/* === details-polish 1.9.9 === */
/* Vertical breathing room ? hero + lower description/reviews */
.bp-details-page{
  padding:1.15rem 1.15rem 3.5rem;
}
.bp-hero{
  margin-bottom:1.55rem;
}
.bp-hero-inner{
  gap:2rem 2.15rem;
  padding:2.1rem 2rem 2.25rem;
}
.bp-hero-title{
  margin:0 0 .45rem;
}
.bp-hero-tagline{
  margin:0 0 1.25rem;
}
.bp-hero-teaser{
  line-height:1.65;
}
.bp-cta-row{
  margin-top:1.65rem;
  gap:1rem;
}
.bp-cta-note{
  margin:1rem 0 0;
}
.bp-infobar{
  margin:0 0 1.45rem;
  gap:.9rem;
}
.bp-midrow{
  margin:0 0 1.55rem;
  gap:1rem;
}
.bp-cols{
  gap:1.35rem !important;
  margin-bottom:1.75rem !important;
}

/* Secondary CTA lighter ? Buy Direct stays primary */
.bp-cta-secondary{
  background:transparent;
  color:rgba(242,237,228,.92);
  border:1px solid rgba(198,167,94,.42);
  box-shadow:none;
}
.bp-cta-secondary:hover,
.bp-cta-secondary:focus{
  background:rgba(198,167,94,.08);
  border-color:rgba(198,167,94,.65);
  color:#fff;
  box-shadow:none;
  transform:translateY(-1px);
}
.bp-cta-secondary .bp-cta-text,
.bp-cta-secondary .bp-cta-icon{
  color:inherit;
}
.bp-cta-primary{
  box-shadow:0 12px 28px rgba(198,167,94,.36);
}

/* Series thumbs a little larger */
.bp-series-thumb{
  width:5.35rem;
}
.bp-series-nav{
  gap:.7rem;
}

/* Description / Reader Reviews ? stronger section type + spacing */
.bp-panel{
  padding:1.45rem 1.4rem 1.55rem;
}
.bp-panel-head{
  margin-bottom:.55rem;
  padding-bottom:.55rem;
  border-bottom:1px solid rgba(198,167,94,.22);
}
.bp-panel-title{
  margin:0;
  font-size:.88rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--bp-gold);
}
.bp-panel > .bp-panel-title{
  margin:0 0 1.05rem;
  padding-bottom:.55rem;
  border-bottom:1px solid rgba(198,167,94,.22);
  font-size:.88rem;
  letter-spacing:.14em;
}
.bp-prose{
  font-size:1.02rem;
  line-height:1.78;
  color:rgba(242,237,228,.92);
}
.bp-prose p{
  margin:0 0 1.05rem;
}
.bp-prose p:last-child{
  margin-bottom:0;
}
.bp-review-summary{
  margin:0 0 1.15rem;
  gap:.55rem .75rem;
}
.bp-review-cards{
  gap:1rem;
  margin-top:1.25rem;
}
.bp-review-card{
  padding:1.05rem 1.05rem 1.1rem;
  border-radius:10px;
}
.bp-review-card-title{
  font-size:1rem;
  font-weight:700;
  letter-spacing:.01em;
  margin:0 0 .45rem;
}
.bp-dist{
  margin-top:.35rem;
}
.bp-dist-row{
  margin:.35rem 0;
}

/* More in series cards ~12% larger */
.bp-more{
  margin:0 0 .85rem;
}
.bp-more-head{
  margin:0 0 1.25rem;
}
.bp-more-title{
  font-size:1.05rem;
}
.bp-more-grid{
  grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));
  gap:1rem;
}
.bp-more-card{
  grid-template-columns:86px 1fr;
  gap:.9rem;
  padding:.85rem;
}
.bp-more-cover img,
.bp-more-cover{
  width:86px;
}
.bp-more-book-title{
  font-size:1rem;
}
.bp-more-book-num{
  font-size:.78rem;
}
.bp-more-price{
  font-size:.95rem;
}

/* 1.9.10 ? clickable catalogue cover ? same details as More Details */
.bp-cover-link{
  display:block;
  width:100%;
  height:100%;
  color:inherit;
  text-decoration:none;
  cursor:pointer;
}
.bp-cover-link img,
.bp-cover-link .bp-cover-fallback{
  width:100%;
  height:100%;
}

/* Format offer boxes (audiobook / print) */
.bp-infobox-link{
  display:inline-block;
  margin-top:.35rem;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--bp-cyan);
  text-decoration:none;
}
.bp-page a.bp-infobox-link{color:var(--bp-cyan)}
.bp-infobox-link:hover,.bp-page a.bp-infobox-link:hover{color:#7adef5;text-decoration:underline}


/* === details-mods pass2 1.9.12 === */
/* === details-pricelabels 1.9.16 === */
/* Website / Audiobook / Print price prominence (same gold treatment) */
.bp-infobox-website,
.bp-infobox-audiobook,
.bp-infobox-print{
  border-color:rgba(198,167,94,.5);
  background:linear-gradient(180deg, rgba(198,167,94,.12), rgba(11,17,26,.94));
  box-shadow:0 8px 22px rgba(0,0,0,.28), inset 0 0 0 1px rgba(198,167,94,.12);
}
.bp-infobox-website .bp-infobox-value,
.bp-infobox-audiobook .bp-infobox-value,
.bp-infobox-print .bp-infobox-value{
  font-size:clamp(1.55rem, 2.8vw, 2.1rem);
  font-weight:800;
  color:#e8d19a;
  letter-spacing:.01em;
  text-shadow:0 1px 0 rgba(0,0,0,.35);
}
.bp-infobox-website .bp-infobox-label,
.bp-infobox-audiobook .bp-infobox-label,
.bp-infobox-print .bp-infobox-label{
  margin-top:.5rem;
  color:var(--bp-gold);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.12em;
}

/* Empty audiobook / print placeholders stay visible */
.bp-infobox.is-empty .bp-infobox-value{
  color:rgba(139,149,168,.55);
  font-weight:700;
}
.bp-infobox.is-empty{
  border-style:dashed;
  border-color:rgba(139,149,168,.28);
  opacity:.92;
}

/* Infobar now 2 format slots (ebook / audiobook) */
.bp-infobar{
  grid-template-columns:repeat(2, minmax(0,1fr));
}
@media (max-width:900px){
  .bp-infobar{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width:560px){
  .bp-infobar{grid-template-columns:1fr 1fr}
}

/* === details-reviewrank 1.9.24 — rank field centered/balanced === */
.bp-review-rank{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.65rem;
  margin:0 0 1.1rem;
  padding:.75rem 1rem;
  border:1px solid rgba(198,167,94,.28);
  border-radius:8px;
  background:rgba(198,167,94,.055);
  color:var(--bp-muted);
  text-align:center;
}
.bp-amazon-logo{display:none !important;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.55rem;
  height:1rem;
  color:var(--bp-gold);
  opacity:.7;
}
.bp-amazon-logo svg{
  display:block;
  width:100%;
  height:100%;
}
.bp-review-rank-text{
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:.55rem;
  min-width:0;
  flex-wrap:wrap;
  text-align:center;
}
.bp-review-rank-label{
  color:var(--bp-muted);
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.25;
  text-transform:uppercase;
}
.bp-review-rank-num{
  color:var(--bp-text);
  font-size:clamp(1.35rem,2.2vw,1.6rem);
  font-weight:800;
  letter-spacing:.01em;
  line-height:1;
}

/* Other Books horizontal slider */
.bp-more-slider{
  position:relative;
  display:flex;
  align-items:center;
  gap:.35rem;
  min-width:0;
}
.bp-more-track{
  display:flex;
  flex:1 1 auto;
  gap:1rem;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:.2rem .1rem .55rem;
  min-width:0;
  scrollbar-width:thin;
  scrollbar-color:rgba(198,167,94,.45) rgba(11,17,26,.6);
  outline:none;
}
.bp-more-track:focus-visible{
  box-shadow:0 0 0 2px rgba(198,167,94,.45);
  border-radius:8px;
}
.bp-more-track::-webkit-scrollbar{height:6px}
.bp-more-track::-webkit-scrollbar-thumb{
  background:rgba(198,167,94,.45);
  border-radius:999px;
}
.bp-more-slider .bp-more-card{
  flex:0 0 min(270px, 78vw);
  width:min(270px, 78vw);
  scroll-snap-align:start;
  display:grid;
  grid-template-columns:86px 1fr;
  gap:.9rem;
  align-items:center;
}
.bp-more-arrow{
  flex:0 0 auto;
  width:2.55rem;
  height:2.55rem;
  border-radius:999px;
  border:1px solid rgba(198,167,94,.55);
  background:rgba(11,17,26,.96);
  color:var(--bp-gold);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 6px 16px rgba(0,0,0,.28);
  transition:background .15s ease, border-color .15s ease, color .15s ease, opacity .15s ease;
}
.bp-more-arrow span{
  font-size:1.55rem;
  line-height:1;
  font-weight:700;
  margin-top:-.1rem;
}
.bp-more-arrow:hover{
  background:rgba(198,167,94,.16);
  border-color:rgba(224,199,136,.8);
  color:#e0c788;
}
.bp-more-arrow:focus-visible{
  outline:2px solid rgba(198,167,94,.7);
  outline-offset:2px;
}
.bp-more-arrow[hidden]{display:none !important}
.bp-more-arrow:disabled,
.bp-more-arrow.is-disabled{
  opacity:.32;
  cursor:default;
  pointer-events:none;
}
@media (max-width:560px){
  .bp-more-arrow{width:2.2rem;height:2.2rem}
  .bp-more-slider .bp-more-card{flex-basis:min(240px, 82vw);width:min(240px, 82vw)}
}


/* === details-pricelabels 1.9.16 (labels + gold prominence for all 3 price boxes) === */
/* === details-priceicons 1.9.17 / iconsize 1.9.18 / formatlabels 1.9.27 === */
/* Series order badges removed from UI (order kept in data/sort only) */
.bp-series-num{display:none !important}


/* === details-iconcenter 1.9.24 — tighter icon/price gap === */
/* Media identifier icons in price boxes — homepage pathway stroke style */
.bp-infobox{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:flex-start;
  gap:0;
  text-align:center;
  padding:.95rem 1.05rem;
  box-sizing:border-box;
  min-height:5.85rem;
}
.bp-price-media{
  flex:0 0 auto;
  width:4.6rem;
  margin:0 .4rem 0 .1rem;
  color:var(--bp-gold, #C6A75E);
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.18rem;
}
.bp-price-media-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:3.4rem;
  height:3.4rem;
  flex:0 0 auto;
}
.bp-price-media-icon svg,
.bp-price-media svg{
  display:block;
  width:100%;
  height:100%;
}
.bp-price-media-label{
  display:block;
  font-size:.68rem;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  line-height:1.15;
  text-align:center;
  color:var(--bp-gold, #C6A75E);
  opacity:.92;
  max-width:4.4rem;
  white-space:normal;
}
.bp-infobox-body{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.2rem;
  min-width:0;
  flex:1 1 auto;
  text-align:center;
}
.bp-infobox .bp-infobox-value,
.bp-infobox .bp-infobox-label{
  width:100%;
  text-align:center;
}
.bp-infobox .bp-infobox-value{
  line-height:1.1;
}
.bp-infobox.is-empty .bp-price-media{
  opacity:.45;
}

/* === details-moremeta 1.9.24 — consistent field positions in bottom carousel tiles === */
.bp-more-slider .bp-more-card{
  align-items:stretch;
}
.bp-more-meta{
  display:grid;
  grid-template-rows:minmax(2.4rem, auto) 1.15rem 1.35rem auto;
  align-content:start;
  row-gap:.2rem;
  min-width:0;
  height:100%;
}
.bp-more-book-title{
  margin:0;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  min-height:2.4rem;
}
.bp-more-book-num{
  margin:0;
  min-height:1.15rem;
  line-height:1.15rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.bp-more-price{
  margin:0;
  min-height:1.35rem;
  line-height:1.35rem;
}
.bp-more-book-num.is-empty,
.bp-more-price.is-empty{
  visibility:hidden;
}
.bp-more-meta .bp-more-details{
  margin-top:auto;
  justify-self:start;
}

/* === details-contentfmt 1.9.25 — prose/teaser respect italics & bold === */
.bp-prose em,
.bp-prose i,
.bp-hero-teaser em,
.bp-hero-teaser i {
  font-style: italic;
}
.bp-prose strong,
.bp-prose b,
.bp-hero-teaser strong,
.bp-hero-teaser b {
  font-weight: 700;
}
.bp-prose u,
.bp-hero-teaser u {
  text-decoration: underline;
}

/* === details-subscribe 1.9.26 — GET THIS BOOK FREE subscribe strip === */
.bp-subscribe-banner{
  display:flex;
  align-items:center;
  gap:1rem;
  width:100%;
  max-width:36rem;
  margin-top:1.1rem;
  padding:.85rem 1rem;
  border:1.5px solid #C6A75E;
  border-radius:10px;
  background:rgba(6,8,13,.72);
  box-shadow:0 8px 20px rgba(0,0,0,.28);
  box-sizing:border-box;
}
.bp-subscribe-icon{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#C6A75E;
  line-height:0;
}
.bp-subscribe-icon svg{
  display:block;
  width:1.65rem;
  height:1.65rem;
  stroke:currentColor;
  fill:none;
}
.bp-subscribe-copy{
  flex:1 1 auto;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:.25rem;
}
.bp-subscribe-heading{
  display:block;
  color:#C6A75E;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  line-height:1.2;
}
.bp-subscribe-body{
  margin:0;
  color:#fff;
  font-size:.78rem;
  font-weight:500;
  line-height:1.4;
}
.bp-subscribe-join{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.7rem 1.05rem;
  border-radius:8px;
  background:#C6A75E;
  color:#12100a !important;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none !important;
  white-space:nowrap;
  transition:background .12s ease, transform .12s ease, box-shadow .12s ease;
  box-shadow:0 6px 14px rgba(198,167,94,.28);
}
.bp-page a.bp-subscribe-join,
.bp-page a.bp-subscribe-join:visited,
.bp-page a.bp-subscribe-join:hover{
  color:#12100a !important;
  text-decoration:none !important;
}
.bp-subscribe-join:hover{
  background:#d4b66e;
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(198,167,94,.38);
}
.bp-hero-offer{
  width:100%;
  max-width:36rem;
  margin-top:1.1rem;
}
@media (max-width:640px){
  .bp-subscribe-banner{
    flex-wrap:wrap;
    align-items:flex-start;
  }
  .bp-subscribe-join{
    width:100%;
    margin-top:.15rem;
  }
}

/* === details-addtocart 1.9.29 - price boxes under hero teaser, 2 formats === */
.bp-infobar-hero{
  margin-top:1.25rem;
  margin-bottom:0;
  max-width:36rem;
  width:100%;
  grid-template-columns:repeat(2, minmax(0,1fr));
}
a.bp-infobox-cart{
  text-decoration:none !important;
  color:inherit;
  cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
a.bp-infobox-cart:hover,
a.bp-infobox-cart:focus-visible{
  text-decoration:none !important;
  transform:translateY(-1px);
  border-color:rgba(198,167,94,.85);
  box-shadow:0 10px 26px rgba(0,0,0,.32), inset 0 0 0 1px rgba(198,167,94,.22);
}
a.bp-infobox-cart[aria-disabled="true"]{
  cursor:default;
  pointer-events:none;
  opacity:.92;
}
.bp-page a.bp-infobox-cart,
.bp-page a.bp-infobox-cart:visited{
  color:inherit;
  text-decoration:none !important;
}
@media (max-width:560px){
  .bp-infobar-hero{
    max-width:22rem;
    margin-left:auto;
    margin-right:auto;
  }
}
