/* Корзина HealthLife24. Цвета - токены страницы, запасные значения из brand.json */
/* Шапка магазина: логотип, меню, значок корзины */
.shopbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:12px;padding:6px max(16px,env(safe-area-inset-left));background:rgba(251,247,241,.94);backdrop-filter:saturate(1.2) blur(8px);-webkit-backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid rgba(31,43,41,.08);font-family:Inter,system-ui,sans-serif}
.sb-logo{font:400 21.3px/1 "DM Serif Display",Georgia,serif;color:var(--accent-deep,#164540);text-decoration:none;padding:10px 0}
.sb-nav{display:flex;gap:4px;margin-left:auto}
.sb-nav a{color:var(--ink,#1F2B29);text-decoration:none;font-size:14px;font-weight:600;padding:12px 10px;border-radius:10px}
.sb-nav a:hover,.sb-nav a[aria-current="page"]{background:var(--accent-soft,#E6EFEC)}
.sb-logo:focus-visible,.sb-nav a:focus-visible{outline:3px solid var(--accent,#1F5C55);outline-offset:2px}
.sb-cart{display:inline-flex}
/* У DM Serif Display только начертание 400: компоненты просят 800, браузер рисует грубый искусственный жирный */
h1,h2,h3,.pay-price b,.hero .lead,.pill-row,.verdict,.closing,.q,.big-line,.offer .keep,.deal .new,.sample blockquote,.stack .price b,
ol.rules li::before,.steps li::before,.flow li::before{font-weight:400!important}
/* Карточки в сетке: подпись главы прижата к низу, у соседних карточек на одной линии */
.steps li{display:flex;flex-direction:column}
.steps li .bk{margin-top:auto;padding-top:8px}
/* Цитаты из книги одной колонкой: при нечётном числе третья не висит одна в сетке на два столбца */
.samples{grid-template-columns:1fr!important}
/* Инструменты: заголовок не прилипает к картинке */
.tool .page{margin-bottom:20px}
/* Первый экран страниц книг: обложка целиком (без обрезки шаблона), по высоте вровень с текстом; фон тёплый, а не демо-голубой */
.hero{background:linear-gradient(180deg,var(--sand,#F3ECE2) 0%,var(--bg,#FBF7F1) 100%)}
.hero .cover{border-radius:0;overflow:visible;display:flex;justify-content:center;align-items:center}
.hero .cover img{width:100%;max-width:260px;height:auto;max-height:none;object-fit:contain;border-radius:8px;box-shadow:0 18px 44px rgba(31,43,41,.22)}
/* на компьютере верх книги на одной линии с верхом текста (первая строка над заголовком) */
@media (min-width:760px){.hero .cover img{max-width:400px}.hero .wrap{align-items:start!important}.hero .cover{align-items:flex-start;align-self:start}}

/* ===== Корзина: устройство и размеры как у корзины магазина-образца, цвета HealthLife24 ===== */
.sc-fab,.sc-scrim,.sc-drawer{
  --sc-bg:#fdfcf9;--sc-ink:#1d1b18;--sc-mute:#5f5a52;--sc-line:#e6e0d4;
  --sc-card:#fff;--sc-cta:#B4532A;--sc-cta-dark:#9A4521;
  --sc-ok:#7c4412;--sc-ok-soft:#f3ede8;--sc-hint:#f3ece2;--sc-err:#9a3b2c;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;box-sizing:border-box;
}
.sc-drawer *,.sc-drawer *::before,.sc-drawer *::after{box-sizing:border-box}
.sc-fab{position:fixed;top:12px;right:12px;z-index:9998;width:48px;height:48px;border-radius:50%;
  border:1px solid var(--sc-line);background:var(--sc-bg);color:var(--sc-ink);font-size:22px;line-height:1;
  display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.12)}
.sc-fab[hidden]{display:none}
.sc-fab.sc-in-slot{position:relative;top:auto;right:auto;box-shadow:none}
.sc-fab:focus-visible,.sc-drawer button:focus-visible,.sc-drawer a:focus-visible,.sc-drawer input:focus-visible{outline:3px solid #caae95;outline-offset:2px}
.sc-count{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;
  background:var(--sc-cta);color:#fff;font-size:12px;font-weight:700;line-height:20px;text-align:center}
.sc-count[hidden]{display:none}
.sc-scrim{position:fixed;inset:0;z-index:9999;background:rgba(20,18,15,.45);opacity:0;pointer-events:none;transition:opacity .2s}
.sc-scrim.on{opacity:1;pointer-events:auto}
.sc-drawer{position:fixed;top:0;right:0;bottom:0;z-index:10000;width:min(440px,100%);height:100%;
  background:var(--sc-bg);color:var(--sc-ink);display:flex;flex-direction:column;
  transform:translateX(100%);transition:transform .25s ease,box-shadow .25s ease}
.sc-drawer.on{transform:none;box-shadow:-8px 0 32px rgba(0,0,0,.15)}
@media (prefers-reduced-motion:reduce){.sc-drawer,.sc-scrim{transition:none}}
.sc-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--sc-line)}
.sc-head h2{margin:0;font-family:"DM Serif Display",Georgia,serif;font-size:24px;font-weight:400}
.sc-x{width:48px;height:48px;margin-right:-12px;border:0;background:none;font-size:28px;line-height:1;color:var(--sc-ink);cursor:pointer}
.sc-body{flex:1;overflow-y:auto;padding:16px 20px;-webkit-overflow-scrolling:touch}
.sc-empty{text-align:center;padding:48px 8px;color:var(--sc-mute);font-size:17px;line-height:1.5}
.sc-empty[hidden]{display:none}
.sc-empty .sc-empty-ic{font-size:44px;display:block;margin-bottom:12px}
.sc-empty a{color:var(--sc-cta);font-weight:600}
.sc-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.sc-line{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid var(--sc-line);border-radius:14px;background:var(--sc-card)}
.sc-line img{width:64px;height:88px;object-fit:contain;flex:none}
.sc-line .sc-covers{position:relative;flex:none;width:64px;height:88px}
.sc-line .sc-covers img{position:absolute;width:46px;height:64px}
.sc-line .sc-covers img:first-child{left:0;top:0}
.sc-line .sc-covers img:last-child{right:0;bottom:0}
.sc-line-t{flex:1;min-width:0}
.sc-line-t b{display:block;font-size:17px;line-height:1.3}
.sc-line-t span{display:block;color:var(--sc-mute);font-size:15px;margin-top:4px}
.sc-rm{width:48px;height:48px;flex:none;border:0;background:none;font-size:24px;color:var(--sc-mute);cursor:pointer}
.sc-lock{margin-top:16px;padding:12px 14px;border-radius:12px;background:var(--sc-ok-soft);color:var(--sc-ok);font-size:15px;line-height:1.45}
.sc-lock b{font-variant-numeric:tabular-nums}
.sc-lock[hidden],.sc-hints:empty{display:none}
.sc-hints{margin-top:12px;display:flex;flex-direction:column;gap:10px}
.sc-hint{padding:12px 14px;border:1px solid var(--sc-line);border-radius:12px;background:var(--sc-hint);font-size:15px;line-height:1.5}
.sc-hint button{border:0;background:none;padding:0;min-height:0;font:inherit;font-weight:700;color:var(--sc-cta);text-decoration:underline;cursor:pointer}
.sc-note{margin-top:12px;color:var(--sc-err);font-size:15px}
.sc-note:empty{display:none}
/* низ корзины - свой светлый фон: стили подвала страницы (footer{background:тёмный}) сюда не проходят */
.sc-drawer .sc-foot{border-top:1px solid var(--sc-line);padding:14px 20px calc(14px + env(safe-area-inset-bottom))!important;background:var(--sc-bg)!important;color:var(--sc-ink)!important;margin:0}
.sc-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:16px;color:var(--sc-mute);padding:3px 0}
.sc-row.sc-save{color:var(--sc-ok);font-weight:600}
.sc-row.sc-save[hidden]{display:none}
.sc-row.sc-total{color:var(--sc-ink);font-size:20px;font-weight:700;border-top:1px dashed var(--sc-line);margin-top:6px;padding-top:10px}
.sc-checkout{width:100%;min-height:56px;margin-top:12px;border:0;border-radius:999px;background:var(--sc-cta);color:#fff;
  font:700 18px/1.2 Inter,system-ui,sans-serif;cursor:pointer;box-shadow:0 6px 18px rgba(154,69,33,.25)}
.sc-checkout:hover{background:var(--sc-cta-dark)}
.sc-checkout:disabled{opacity:.5;cursor:default;box-shadow:none}
.sc-checkout[hidden]{display:none}
.sc-trust{margin:10px 0 0;text-align:center;color:var(--sc-mute);font-size:13px}
.sc-pay[hidden],.sc-cart[hidden]{display:none}
.sc-back{border:0;background:none;padding:0;min-height:44px;font:600 15px Inter,system-ui,sans-serif;color:var(--sc-cta);cursor:pointer}
.sc-pay label{display:block;margin:14px 0 6px;font-size:15px;font-weight:600}
.sc-pay input{width:100%;min-height:48px;padding:10px 14px;border:1px solid #cfc7b8;border-radius:10px;font:16px Inter,system-ui,sans-serif;background:#fff;color:var(--sc-ink)}
.sc-promo-toggle{margin-top:10px;border:0;background:none;padding:0;min-height:44px;font:15px Inter,system-ui,sans-serif;color:var(--sc-mute);text-decoration:underline;cursor:pointer}
.sc-promo-toggle[hidden],.sc-promo[hidden]{display:none}
.sc-methods{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.sc-methods button{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:12px 16px;border:1px solid #cfc7b8;border-radius:12px;
  background:#fff;color:var(--sc-ink);font:600 16px Inter,system-ui,sans-serif;cursor:pointer;text-align:left}
.sc-methods button:hover{border-color:var(--sc-cta)}
.sc-methods button:disabled{opacity:.6;cursor:default}
.sc-methods .sc-ic{width:24px;height:24px;flex:none;display:inline-flex}
.sc-methods .sc-ic svg{width:24px;height:24px}
.sc-err{margin-top:12px;color:var(--sc-err);font-size:15px;white-space:pre-line}
.sc-err:empty{display:none}
.sc-wait{margin-top:12px;padding:12px 14px;border-radius:12px;background:var(--sc-ok-soft);color:var(--sc-ok);font-size:15px;line-height:1.5}
.sc-wait[hidden]{display:none}
.sc-wait a{color:inherit;font-weight:700}
.sc-secure{margin-top:16px;color:var(--sc-mute);font-size:13px;line-height:1.5}
/* шаг оплаты: сумма, валюта, комиссия, имя для Bancontact */
.sc-due{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;margin:10px 0 4px}
.sc-amount{font-family:"DM Serif Display",Georgia,serif;font-size:34px;font-weight:400;line-height:1.1;color:var(--sc-ink);font-variant-numeric:tabular-nums}
.sc-cur{display:inline-flex;padding:3px;border-radius:999px;background:var(--sc-hint);border:1px solid var(--sc-line)}
.sc-cur[hidden]{display:none}
.sc-cur button{min-height:48px;min-width:80px;padding:8px 14px;border:0;border-radius:999px;background:none;cursor:pointer;
  font:600 15px Inter,system-ui,sans-serif;color:var(--sc-mute)}
.sc-cur button[aria-pressed="true"]{background:var(--sc-card);color:var(--sc-ink);box-shadow:0 1px 4px rgba(0,0,0,.14)}
.sc-pay label.sc-cover{display:flex;align-items:flex-start;gap:11px;margin:16px 0 0;padding:12px 13px;border:1.5px solid var(--sc-line);
  border-radius:12px;cursor:pointer;font-size:15px;font-weight:500;line-height:1.4}
.sc-pay label.sc-cover[hidden]{display:none}
.sc-pay .sc-cover input{flex:0 0 20px;width:20px;height:20px;min-height:0;margin:1px 0 0;padding:0;accent-color:var(--sc-cta);cursor:pointer}
.sc-cover > span{flex:1;min-width:0}
.sc-cover small{color:var(--sc-mute);font-size:13px;font-weight:400}
.sc-cover:has(input:checked){border-color:var(--sc-cta);background:var(--sc-ok-soft)}
.sc-name[hidden]{display:none}
.sc-methods small{display:block;margin-top:1px;color:var(--sc-mute);font-size:13px;font-weight:500}
.sc-row.sc-fee[hidden]{display:none}
/* лучшие способы оплаты (PayPal, Apple Pay): метка «Recommended» */
.sc-methods button.sc-m-best{border:2px solid #2e7d4f;background:#f3faf5}
.sc-methods button.sc-m-best:hover{border-color:#256a42}
.sc-best{margin-left:auto;flex:none;font-style:normal;font-size:12px;font-weight:700;line-height:1;color:#fff;background:#2e7d4f;border-radius:999px;padding:5px 9px}
/* ошибка почты - под полем */
.sc-email-err{margin:8px 0 0;color:#b3261e;font-size:15px;font-weight:600;line-height:1.35}
.sc-email-err[hidden]{display:none}
#sc-email.sc-bad{border-color:#b3261e;box-shadow:0 0 0 3px rgba(179,38,30,.15)}
/* способ оплаты = выбор, платит кнопка внизу. Выбранный: зелёная рамка и галочка */
.sc-methods button{position:relative}
.sc-methods button.sc-m-on{border:2px solid #2e7d4f;background:#f3faf5;box-shadow:0 0 0 3px rgba(46,125,79,.15)}
.sc-methods button.sc-m-on::after{content:"✓";position:absolute;right:14px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;
  background:#2e7d4f;color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}
.sc-methods button.sc-m-on .sc-best{margin-right:30px}
.sc-methods button:not(.sc-m-on).sc-m-best{border:1px solid #cfc7b8;background:#fff}
.sc-paynow[hidden]{display:none}
/* шаги оплаты: 1. способ 2. почта, кнопка Pay внизу */
.sc-pay .sc-step{display:block;margin:18px 0 8px;font:700 16px Inter,system-ui,sans-serif;color:var(--sc-ink)}
.sc-pay .sc-methods{margin-top:0}
.sc-mail[hidden]{display:none}
.sc-mail .sc-mail-note{margin:6px 0 0;color:var(--sc-mute);font-size:13px;line-height:1.4}

