.product-detail-hero {
  grid-template-columns:minmax(0,1.35fr) minmax(220px,270px);
  align-items:start;
  gap:34px;
  padding-bottom:24px;
}
.product-detail-hero > div:first-child { min-width:0; }
.product-cover-card {
  min-height:0;
  width:100%;
  max-width:270px;
  padding:12px;
  justify-self:end;
  align-self:start;
  justify-content:center;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025));
}
.product-cover-large {
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:2 / 3;
  border-radius:14px;
  overflow:hidden;
  background:radial-gradient(circle at top,#334155,#0f172a 70%);
}
.product-cover-large img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:8px;
  box-shadow:0 16px 34px rgba(0,0,0,.36);
}
.product-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:20px 0; max-width:700px; }
.product-meta div { border:1px solid var(--line); border-radius:16px; padding:13px 14px; background:rgba(255,255,255,.035); }
.product-meta span { display:block; color:var(--muted); font-size:12px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:5px; }
.product-meta strong { display:block; color:var(--text); font-size:15px; }
.product-info-grid { display:grid; grid-template-columns:1.4fr .8fr; gap:18px; margin:8px 0 30px; position:relative; z-index:1; }
.product-info-panel,.product-access-panel { height:100%; }
.product-section-kicker { color:#fde68a; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.product-info-panel h2,.product-access-panel h3 { margin:8px 0 16px; }
.product-highlights { list-style:none; margin:0; padding:0; display:grid; gap:12px; }
.product-highlights li { position:relative; padding-left:28px; color:var(--muted); line-height:1.5; }
.product-highlights li::before { content:'✓'; position:absolute; left:0; top:0; color:var(--ok); font-weight:900; }
.product-access-panel p { color:var(--muted); line-height:1.6; margin-bottom:20px; }
.product-access-panel .primary,.product-access-panel .ghost { display:inline-flex; align-items:center; justify-content:center; }

/* Loja/biblioteca: card compacto com cruz, título completo e subtítulo visíveis */
.grid { align-items:start; }
.ebook { min-height:0; }
.ebook .cover {
  height:235px;
  flex:0 0 235px;
  padding:0;
  overflow:hidden;
  background:#111827;
}
.ebook .cover img {
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:center 28%;
  border-radius:0;
  box-shadow:none;
}
.ebook-body { padding:16px; gap:10px; }
.ebook h3 { font-size:18px; }
.ebook p { font-size:14px; line-height:1.45; }

/* Depois da compra: cabeçalho simples + leitor. Nada de página comercial. */
.owned-reader-hero {
  grid-template-columns:minmax(0,1fr) 120px;
  gap:24px;
  padding:30px 0 16px;
  align-items:center;
}
.owned-reader-hero h1 {
  font-size:clamp(28px,4vw,44px);
  margin-bottom:14px;
  line-height:1.05;
}
.owned-reader-cover-card {
  min-height:0;
  padding:8px;
  width:120px;
  justify-self:end;
  background:rgba(255,255,255,.04);
}
.owned-reader-cover {
  height:150px;
  min-height:0;
  border-radius:10px;
  overflow:hidden;
}
.owned-reader-cover img {
  width:100%;
  height:100%;
  object-fit:contain;
}
.owned-reader-hero + .product-info-grid { display:none !important; }
.embedded-pdf-reader, iframe.reader { position:relative; z-index:0; clear:both; margin-top:14px; }

@media (max-width:860px) {
  .product-detail-hero { grid-template-columns:1fr; gap:22px; }
  .product-cover-card { max-width:240px; justify-self:center; }
  .product-info-grid { grid-template-columns:1fr; }
  .product-meta { grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); }
  .ebook .cover { height:225px; flex-basis:225px; }
  .ebook .cover img { object-position:center 32%; }
  .owned-reader-hero { grid-template-columns:1fr 90px; padding-top:24px; }
  .owned-reader-cover-card { width:90px; }
  .owned-reader-cover { height:118px; }
}

@media (max-width:520px) {
  .product-meta { grid-template-columns:1fr; }
  .product-cover-card { max-width:210px; }
  .ebook .cover { height:220px; flex-basis:220px; }
  .ebook .cover img { object-position:center 38%; }
  .owned-reader-hero { grid-template-columns:1fr; }
  .owned-reader-cover-card { justify-self:start; width:82px; order:-1; }
  .owned-reader-cover { height:108px; }
}
