/* Каталог и страница наборов HealthLife24 (поверх base.css) */
.wrap.wide{max-width:1120px}
.shop-hero{padding:40px 0 24px}
.shop-hero h1{max-width:20ch;margin-bottom:14px}
.shop-hero .lead{max-width:60ch;color:var(--muted);font-size:var(--s1);margin-bottom:10px}
.ship{font-size:var(--cap);color:var(--muted)}
.ship a{color:var(--accent);font-weight:600}
.shop-list{padding:16px 0 56px}
.grid{display:grid;gap:20px}
.pcard,.kcard{background:var(--paper);border:1px solid var(--line);border-radius:20px;overflow:hidden;display:grid}
/* Обложки разных пропорций (A4 и Letter): одна высота рамки, обложка целиком, текст под ними с одного уровня */
/* одинаковая ширина книг, стоят «на полке» по нижнему краю; рамка одной высоты - текст под ними с одного уровня */
.pcover{display:flex;align-items:flex-end;justify-content:center;height:340px;background:var(--sand);padding:24px 24px 28px}
.pcover img{width:200px;height:auto;max-width:100%;border-radius:6px;box-shadow:0 8px 24px rgba(0,0,0,.16)}
@media (min-width:760px){.pcover{height:400px}.pcover img{width:240px}}
.pbody,.kbody{padding:22px 20px 24px}
.pbody h2,.kbody h2{font-size:var(--s2);line-height:1.2;margin-bottom:6px}
.pbody h2 a{color:var(--ink);text-decoration:none}
.pbody h2 a:hover{color:var(--accent)}
.psub{color:var(--accent);font-weight:600;font-size:var(--cap);line-height:1.5;margin-bottom:12px}
.pget{font:700 var(--cap)/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:16px 0 8px}
.pl{list-style:none;margin:0 0 16px;padding:0}
.pl li{position:relative;padding-left:24px;margin-bottom:8px;line-height:1.5}
.pl li::before{content:"";position:absolute;left:4px;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.pprice{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin:0 0 14px}
.pprice b{font:400 var(--s3)/1 var(--serif);color:var(--ink);font-variant-numeric:tabular-nums}
.pprice s{color:var(--muted);font-weight:600}
.pprice small{color:var(--muted);font-size:var(--cap)}
.pact{display:grid;gap:10px}
.pact .more{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 6px;color:var(--accent);font-weight:600;text-decoration:none;border:0;background:none;box-shadow:none;border-radius:8px}
/* Цена и кнопки прижаты к низу карточки: у соседних карточек они всегда на одной линии */
.pcard{display:flex;flex-direction:column}
.pcard .pbody{flex:1;display:flex;flex-direction:column}
.pcard .pprice{margin-top:auto;padding-top:8px}
.pcard .pact .btn{margin:0}
.pact .more:hover{text-decoration:underline}
.kcard{margin-top:20px;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}
.kcover{background:var(--accent-soft);padding:20px}
.kcover img{width:min(420px,100%);margin:0 auto}
.badge{display:inline-block;margin:0 0 10px;padding:6px 12px;border-radius:999px;background:var(--cta);color:#fff;font:700 var(--cap)/1 var(--sans);letter-spacing:.02em}
.shop-note{background:var(--sand);padding:48px 0}
.shop-note h2{font-size:var(--s2);margin-bottom:14px}
.shop-note p{color:var(--ink);max-width:65ch}
.fnav a{color:#d5dbe2}
footer a{color:#fff}
.bnd-hero{padding:40px 0 8px}
.bnd-hero h1{margin-bottom:10px}
.bnd-hero .lead{color:var(--muted);max-width:60ch}
.bnd-covers{display:flex;justify-content:center;gap:12px;margin:18px 0 0;flex-wrap:wrap}
.bnd-covers img{width:96px;border-radius:4px;box-shadow:0 4px 14px rgba(0,0,0,.14)}
.kfull{margin-top:24px}
.kfull .kbody ul{margin-bottom:16px}
@media (min-width:760px){
  .grid{grid-template-columns:1fr 1fr}
  .pbody,.kbody{padding:26px 28px 28px}
  .kcard{grid-template-columns:1fr 1fr;align-items:center}
  .kcover{height:100%;display:flex;align-items:center}
  .pact{grid-template-columns:1fr auto;align-items:center}
  .shop-hero{padding:64px 0 32px}
}
