/* === Denmark Guide — guidebook (product) cards === */
/* Affiliate-style cards that link out to third-party shops (eBay). */

.book-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px;
}
.book-card{
  display:flex;flex-direction:column;
  background:var(--ivory);
  border:1px solid var(--line);
  overflow:hidden;
  transition:transform .3s, box-shadow .3s, border-color .3s;
}
.book-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold)}
.book-card .shot{
  position:relative;aspect-ratio:4/3;background:var(--paper-2);overflow:hidden;
}
.book-card .shot img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.book-card:hover .shot img{transform:scale(1.04)}
.book-card .tag{
  position:absolute;top:14px;left:14px;
  background:var(--brick);color:var(--ivory);
  font-size:.64rem;letter-spacing:2px;text-transform:uppercase;font-weight:600;
  padding:5px 12px;
}
.book-card .body{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1}
.book-card .kicker{font-size:.66rem;letter-spacing:4px;text-transform:uppercase;color:var(--gold-deep);font-weight:600;margin-bottom:10px}
.book-card h3{font-size:1.3rem;line-height:1.25;margin-bottom:10px}
.book-card .facts{
  display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;
  font-family:var(--sans);font-size:.72rem;
}
.book-card .facts span{
  background:var(--paper);border:1px solid var(--line);
  padding:3px 10px;color:var(--muted);letter-spacing:.4px;
}
.book-card p{font-size:.94rem;color:var(--ink-soft);margin-bottom:20px;flex:1}
.book-card .buy{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  background:var(--brick);color:var(--ivory);
  font-family:var(--sans);font-size:.72rem;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;
  padding:13px 18px;border:1.5px solid var(--brick);align-self:stretch;text-align:center;
  transition:background .25s, color .25s;
}
.book-card .buy:hover{background:var(--brick-deep);color:var(--gold-light)}
.book-card .more{
  margin-top:12px;align-self:flex-start;
  font-size:.7rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--ink-soft);font-weight:600;
  border-bottom:1px solid var(--gold-light);padding-bottom:2px;
}
.book-card .more:hover{color:var(--brick)}

/* affiliate disclosure strip */
.aff-note{
  max-width:880px;margin:0 auto 36px;
  background:var(--paper-2);border-left:3px solid var(--gold);
  padding:16px 22px;font-size:.86rem;color:var(--ink-soft);
}
.aff-note strong{color:var(--ink)}

/* === Product detail (book) page === */
.book-detail{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:start}
.book-gallery .main{
  background:var(--ivory);border:1px solid var(--ink);overflow:hidden;aspect-ratio:4/3;
}
.book-gallery .main img{width:100%;height:100%;object-fit:cover}
.book-gallery .thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.book-gallery .thumbs img{
  width:78px;height:78px;object-fit:cover;border:2px solid var(--line);
  cursor:pointer;opacity:.85;transition:opacity .2s, border-color .2s;
}
.book-gallery .thumbs img:hover,.book-gallery .thumbs img.active{opacity:1;border-color:var(--gold)}
.book-info .badge{
  display:inline-block;background:var(--brick);color:var(--ivory);
  font-size:.66rem;letter-spacing:2px;text-transform:uppercase;font-weight:600;
  padding:5px 12px;margin-bottom:16px;
}
.book-info h1{font-size:clamp(1.8rem,3.4vw,2.6rem);margin-bottom:14px}
.book-info .lead{font-size:1.06rem;color:var(--ink);margin-bottom:12px}
.spec{width:100%;border-collapse:collapse;margin:22px 0;font-family:var(--sans);font-size:.92rem}
.spec th,.spec td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.spec th{color:var(--gold-deep);font-weight:600;letter-spacing:1px;width:38%;text-transform:uppercase;font-size:.74rem}
.buy-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}
.buy-row .btn{flex:0 0 auto}

@media (max-width:820px){
  .book-detail{grid-template-columns:1fr;gap:34px}
}
