/* Review-only layer. No changes to media, copy, density or motion. */
.covers-head h2.display { letter-spacing:.065em; line-height:1.24; text-wrap:balance; }
.covers-head .eyebrow { margin-bottom:.65rem; }
.covers-lead { margin-top:.7rem; line-height:1.5; }
.covers-head { padding-bottom:.75rem; }
.covers-nav { gap:.5rem; padding-bottom:.65rem; }
.covers-block > .hint { padding-bottom:.65rem; font-size:.82rem; line-height:1.45; max-width:none; }
.cwin-head { padding:.65rem .85rem; gap:.6rem; }
.cwin-name { min-width:0; line-height:1.3; text-wrap:balance; }
.cwin-hint { padding:.55rem .85rem 0; font-size:.8rem; line-height:1.45; max-width:none; }
.cwin-lane { padding:.75rem .85rem; }
/* A sticky overlay stays inside its photograph AND the scrolling viewport.
   The image retains its original dimensions and the existing S/M/L sizing. */
.cwin-lane figure { display:grid; }
.cwin-lane figure > img { grid-area:1 / 1; }
.cwin-lane figure > .wish-heart {
  grid-area:1 / 1; position:sticky; justify-self:end; align-self:start;
  top:.6rem; right:.6rem; margin:.6rem;
}
@media (max-width:820px) {
  .cwin-lane figure > .wish-heart { width:44px; height:44px; opacity:.9; }
}
@media (max-width:700px) {
  .covers-head h2.display { font-size:1.3rem; letter-spacing:.05em; }
  .covers-lead { font-size:.96rem; }
  .covers-head .eyebrow { margin-bottom:.55rem; }
  .covers-search { min-height:40px; }
}
@media (max-width:430px) {
  .cwin-head { flex-wrap:wrap; }
  .cwin-name { flex:1 1 calc(100% - 56px); font-size:1rem; }
  .cwin-x { order:1; flex:0 0 40px; width:40px; height:40px; }
  #cdensity { order:2; margin-left:0 !important; }
  #cdensity button { min-width:40px; min-height:40px; }
}
