/* ТЗ-51 (08.11.2026, рішення власника): «Чорний листопад» лише АКЦЕНТАМИ на звичайному світлому сайті — темну тему (theme-bf.css, body.theme-bf) знято.
   Підключається у layouts/app замість theme-bf.css, коли BlackNovember::themeActive() (live або превʼю власника) → body.bf-accents.
   Тут — лише компоненти акції: смуга над шапкою (§1), стрічка SALE/мітки плитки (§2), бейдж картки товару (§3), чипи/рядки сторінки акції (§4),
   пункт меню «Чорна карта дня» (§5), блок .bf-hero на головній + мобільна картка .bf-hm (§6), сторінка /sale/chornyi-lystopad: hero .bf-ph,
   ряд хвиль .bf-pw у СВІТЛИХ плитках, плашка «Далі» (§7), плитки товарів акції (§8), /cart на мобі — компактний рядок (§9).
   Темні блоки (смуга, hero, hero сторінки) лишаються чорно-золотими всередині себе; усе, що стоїть на БІЛОМУ, — темне золото #6F5519/#8A6D2B,
   зелений #1E7A3C, сірий #5F5F5A (контраст ≥ 4.5). Драбина подарунків/блок подарунків — bf-gifts-light.css (постійна механіка, ТЗ-50 A4). */
:root{--bf-ink:#F2EEE6;--bf-sub:#A8A29A;--bf-gold:#D4AF5A;--bf-gold-hi:#F1D488;--bf-btn-ink:#1A1206;--bf-card:#131315;--bf-green:#4CC46A;--bf-red:#FF6B63;--bf-glow:0 6px 22px rgba(212,175,90,.28);--bf-grad:linear-gradient(180deg,#F1D488 0%,#D4AF5A 55%,#B8902F 100%);
  --bfa-gold:#C9A24B;--bfa-gold-dk:#8A6D2B;--bfa-gold-tx:#6F5519;--bfa-ink:#1A1A1A;--bfa-mut:#5F5F5A;--bfa-green:#1E7A3C;--bfa-red:#C62828;--bfa-line:rgba(201,162,75,.45);--bfa-bg:rgba(212,175,90,.10)}
/* Manrope 700 (latin, цифри таймера) — self-host, як Cormorant */
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/Manrope-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ===== 1. Смуга над шапкою — ТЗ-51e «Іскри знизу» (деск + моб): 40px, #0A0907 + золоте сяйво знизу, лінія 1px; іскри — CSS-анімація (transform/opacity),
   26 деск / 10 моб, pointer-events:none, prefers-reduced-motion → вимкнено; зміст: бренд Cormorant 16 (градієнт) · текст 13.5 · пігулка «Дивитись». ===== */
.bf-top{display:block;position:relative;z-index:11;height:40px;box-sizing:border-box;overflow:hidden;background:radial-gradient(200px 60px at 50% 120%,rgba(212,175,90,.35),transparent 70%),#0A0907;border-bottom:1px solid rgba(212,175,90,.55);color:#EDE6D6;font-size:13.5px;line-height:39px;white-space:nowrap}
.bf-top-sparks{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.bf-spark{position:absolute;left:var(--x,50%);bottom:-4px;width:var(--s,3px);height:var(--s,3px);border-radius:50%;background:#F1C96A;box-shadow:0 0 6px rgba(241,201,106,.9);opacity:0;animation:bfSpark 4s linear infinite;animation-delay:var(--d,0s);will-change:transform,opacity}
@keyframes bfSpark{0%{transform:translate(0,0);opacity:0}12%{opacity:1}70%{opacity:.55}100%{transform:translate(var(--dx,0px),-46px);opacity:0}}
.bf-top-in{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:12px;height:100%;padding:0 12px;max-width:1600px;margin:0 auto;overflow:hidden}
.bf-top-brand{font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:16px;letter-spacing:.14em;text-transform:uppercase;line-height:1;background:linear-gradient(90deg,#b8862d 0%,#fff1c2 50%,#d6ad55 100%);-webkit-background-clip:text;background-clip:text;color:#F1D488;-webkit-text-fill-color:transparent}
.bf-top-sep{color:rgba(212,175,90,.6)}
.bf-top-txt{color:#EDE6D6;overflow:hidden;text-overflow:ellipsis}
.bf-top-btn,.bf-top-btn:link,.bf-top-btn:visited,.bf-top-btn:hover,.bf-top-btn:focus,.bf-top-btn:active{display:inline-flex;align-items:center;height:26px;padding:0 14px;margin-left:6px;border-radius:999px;background:var(--bf-grad);color:#160f03;font-family:"MazzardM Bold",system-ui,sans-serif;font-size:12.5px;font-weight:800;line-height:1;text-decoration:none;white-space:nowrap;box-shadow:0 2px 8px rgba(212,175,90,.3)}
.bf-top-btn:hover{filter:brightness(1.06)}
@media (max-width:960px){.bf-spark--d{display:none}}   /* моб: 10 іскор */
@media (max-width:520px){
  .bf-top-in{gap:8px;padding:0 10px}
  .bf-top-brand{font-size:14px;letter-spacing:.12em}
  .bf-top-sep,.bf-top-txt{display:none}   /* лише бренд + «Дивитись» */
  .bf-top-btn{height:24px;padding:0 12px;font-size:12px}
}
@media (prefers-reduced-motion:reduce){.bf-spark{animation:none;display:none}}

/* ===== 2. Плитка: золота рамка, стрічка-фольга «SALE −N%», мітка «хіт хвилі» / «ще N дн.», рядок «−X ₴» ===== */
.pcard.is-bf{border:1px solid rgba(201,162,75,.6);box-shadow:0 0 0 1px rgba(201,162,75,.12)}
.pcard.is-bf:hover{border-color:var(--bfa-gold)}
.bf-ribbon{position:absolute;top:0;left:0;z-index:3;width:108px;height:108px;overflow:hidden;pointer-events:none;border-top-left-radius:var(--hw-r,12px)}
.bf-ribbon-in{position:absolute;left:-36px;top:22px;width:168px;transform:rotate(-45deg);text-align:center;padding:5px 0 4px;background:linear-gradient(100deg,#B8902F 0%,#F1D488 38%,#D4AF5A 60%,#8F6E1F 100%);color:#1A1206;box-shadow:0 3px 10px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.45);line-height:1}
.bf-ribbon-in b{display:block;font-size:9px;letter-spacing:.26em;font-weight:700}
.bf-ribbon-in strong{display:block;font-size:16px;font-weight:800;letter-spacing:.02em;margin-top:1px}
.bf-ribbon-in::after{content:"";position:absolute;top:0;bottom:0;left:-40%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:bfShine 3s ease-in-out infinite}
.pg-frame .bf-ribbon{width:150px;height:150px;border-top-left-radius:16px}
.pg-frame .bf-ribbon-in{left:-44px;top:32px;width:220px;padding:7px 0 6px}
.pg-frame .bf-ribbon-in b{font-size:11px}.pg-frame .bf-ribbon-in strong{font-size:22px}
.bf-tag{position:absolute;top:10px;right:10px;z-index:3;display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;background:rgba(10,10,11,.86);border:1px solid rgba(212,175,90,.45);color:#F2EEE6;font-size:10.5px;line-height:1;font-family:"MazzardM SemiBold",system-ui,sans-serif;pointer-events:none;white-space:nowrap}
.bf-tag i{width:6px;height:6px;border-radius:50%;background:#FF4D4D;box-shadow:0 0 8px rgba(255,77,77,.9)}
.bf-tag--days i{background:#FF8A7A}
.pcard .pc-bf-save{display:inline-block;margin-left:6px;color:var(--bfa-green);font-family:"MazzardM SemiBold",system-ui,sans-serif;font-size:12px}
@media (max-width:960px){
  .bf-ribbon{width:84px;height:84px}
  .bf-ribbon-in{left:-30px;top:16px;width:132px;padding:4px 0 3px}
  .bf-ribbon-in b{font-size:8px}.bf-ribbon-in strong{font-size:13px}
  .pg-frame .bf-ribbon{width:110px;height:110px;border-top-left-radius:10px}
  .pg-frame .bf-ribbon-in{left:-34px;top:22px;width:170px;padding:5px 0 4px}
  .pg-frame .bf-ribbon-in b{font-size:9px}.pg-frame .bf-ribbon-in strong{font-size:16px}
  .bf-tag{top:8px;right:8px;font-size:10px;padding:3px 7px}
  .pcard .pc-bf-save{display:block;margin:2px 0 0}
}
@keyframes bfShine{0%,70%{left:-40%}100%{left:130%}}
@media (prefers-reduced-motion:reduce){.bf-ribbon-in::after{animation:none!important;display:none}}

/* ===== 3. Картка товару: бейдж «BLACK NOVEMBER −N%» + таймер над ціною ===== */
.bf-pbadge{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0 0 8px}
.bf-pbadge-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:7px;background:#0A0A0B;border:1px solid rgba(212,175,90,.55);color:#F1D488;font-size:11px;letter-spacing:.14em;font-family:"MazzardM SemiBold",system-ui,sans-serif;line-height:1;white-space:nowrap}
.bf-pbadge-pill b,main.pm .bf-pbadge-pill b{color:#1A1206!important;background:linear-gradient(100deg,#F1D488,#D4AF5A);padding:2px 6px;border-radius:4px;font-size:12px;letter-spacing:0;white-space:nowrap}
.bf-pbadge-timer{font-size:12.5px;color:var(--bfa-mut)}
.bf-pbadge-timer b{font-variant-numeric:tabular-nums;color:#1a1a1a}
.pi-mbuy .bf-pbadge{margin:0 0 6px}
.pi-mbuy .bf-pbadge-pill{font-size:10px;padding:4px 8px}
.pi-mbuy .bf-pbadge-timer{font-size:11.5px}

/* ===== 4. Сторінка акції / каталог: префікс заголовка, рядок дії цін, чипи, порожні стани ===== */
.bf-cat-prefix{color:var(--bfa-gold-dk);font-family:"Cormorant Garamond",Georgia,serif;font-weight:700}
.bf-page-row{margin:8px 0 14px;font-size:13px;color:var(--bfa-mut)}
.bf-page-row a{color:var(--bfa-gold-dk);text-decoration:underline;text-underline-offset:3px}
.bf-now{color:var(--bfa-green);font-family:"MazzardM SemiBold",system-ui,sans-serif}
.bf-chips{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 10px}
.bf-chip{display:inline-flex;align-items:center;gap:4px;padding:8px 14px;border-radius:999px;border:1px solid var(--bfa-gold);color:var(--bfa-gold-tx);font-size:13.5px;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s;font-family:"MazzardM SemiBold",system-ui,sans-serif;background:#fff}
.bf-chip:hover{background:rgba(201,162,75,.14);color:var(--bfa-gold-tx)}
.bf-chip.is-active{background:#1A1A1A;color:#F1D488;border-color:#1A1A1A}
.bf-chip--cat{border-color:rgba(0,0,0,.18);color:var(--bfa-ink)}
.bf-page-count{font-size:12.5px;color:var(--bfa-mut);margin:0 0 10px}
.bf-page-empty,.bf-page-quiet{padding:28px 20px;border-radius:14px;border:1px dashed var(--bfa-line);text-align:center;color:var(--bfa-mut);margin:10px 0 20px;background:#fff}
.bf-page-quiet-arc{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--bfa-gold-dk)}
.bf-page-quiet-t{margin:6px 0 8px;font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:34px;line-height:1;color:#1a1a1a}
.bf-page-quiet-p{margin:4px 0;font-size:14px}
@media (max-width:960px){
  .bf-chips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:10px -16px 10px;padding:0 16px}
  .bf-chips::-webkit-scrollbar{display:none}
  .bf-chip{padding:7px 12px;font-size:12.5px}
}

/* ===== 5. Пункт меню «Чорна карта дня» (десктоп .h-pages, мобільне меню) — на світлому: темне золото ===== */
.h-pages a.bfcard-glow,.h-pages a.bfcard-glow:hover,#mobile-menu .mm-item--lm.bfcard-glow{color:var(--bfa-gold-tx);background:rgba(201,162,75,.12);border-color:rgba(201,162,75,.6)}

/* ===== 6. Блок «Чорний листопад» на головній (.bf-hero, чорно-золотий; під банерами на всю ширину) + мобільна картка .bf-hm ===== */
.bf-hero{position:relative;display:grid;grid-template-columns:.95fr 1.5fr 128px;gap:16px 26px;align-items:center;margin-top:14px;padding:18px 30px;border-radius:18px;border:1px solid rgba(212,175,90,.38);background:radial-gradient(520px 260px at 92% 30%,rgba(212,175,90,.22),transparent 70%),linear-gradient(180deg,#12100c 0%,#080706 100%);color:var(--bf-ink);box-shadow:0 10px 30px rgba(0,0,0,.18);box-sizing:border-box}
.bf-hero::before{content:"";position:absolute;inset:7px;border:1px solid rgba(212,175,90,.22);border-radius:13px;pointer-events:none}
.bf-hero-kicker{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:#C9A24B;font-family:"MazzardM SemiBold",system-ui,sans-serif}
.bf-hero-title{margin:5px 0 5px;font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:34px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:linear-gradient(180deg,#fff4c8 0%,#f1d488 45%,#c99a3c 100%);-webkit-background-clip:text;background-clip:text;color:#F1D488;-webkit-text-fill-color:transparent}
.bf-hero-sub{margin:0;font-size:13px;line-height:1.35;color:#C9C1B3;max-width:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bf-hero-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:nowrap;margin-top:8px}
.bf-hero .bf-timer,.bf-ph .bf-timer{display:grid;grid-template-columns:repeat(3,auto);gap:3px 5px;flex:0 0 auto}
.bf-timer-l{grid-column:1 / -1;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:#A8A29A;line-height:1.1}
.bf-timer-c{display:inline-flex;flex-direction:column;align-items:center;min-width:38px;padding:3px 5px 3px;border-radius:9px;background:rgba(212,175,90,.10);border:1px solid rgba(212,175,90,.35)}
.bf-timer-c b,main.pm .bf-timer-c b{font-family:"Manrope","MazzardM SemiBold",system-ui,sans-serif;font-weight:700;font-size:18px;line-height:1;color:var(--bf-gold-hi)!important;font-variant-numeric:lining-nums tabular-nums}
.bf-timer-c i{font-style:normal;font-size:10px;line-height:1.2;color:#A8A29A;margin-top:2px}
.bf-hero-cta{display:inline-flex;align-items:center;height:38px;padding:0 14px;flex:0 0 auto;border-radius:12px;background:var(--bf-grad);color:var(--bf-btn-ink);font-family:"MazzardM SemiBold",system-ui,sans-serif;font-size:14px;text-decoration:none;box-shadow:var(--bf-glow);white-space:nowrap}
.bf-hero-cta:hover{filter:brightness(1.06)}
/* плитки хвиль усередині темного блока (кількість — --n з розмітки, ТЗ-50: 4 етапи) */
.bf-hero-waves{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:8px}
.bf-hero .bf-wv{position:relative;display:flex;flex-direction:column;gap:3px;min-width:0;padding:12px 6px 10px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);text-align:center;overflow:hidden}
.bf-hero .bf-wv::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:rgba(255,255,255,.12)}
.bf-hero .bf-wv-date{font-size:11px;color:#A8A29A;font-variant-numeric:tabular-nums;white-space:nowrap}
.bf-hero .bf-wv-name{font-family:"MazzardM SemiBold",system-ui,sans-serif;font-size:12px;line-height:1.2;color:#FFFFFF}
.bf-hero-waves--art .bf-wv-pct{margin-top:2px;font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:19px;line-height:1;color:var(--bf-gold-hi)}
.bf-hero-waves--art .bf-wv-pct.is-txt{font-family:"MazzardM Regular",system-ui,sans-serif;font-size:11px;font-weight:400;color:#C9C1B3;line-height:1.2}
.bf-hero .bf-wv.is-now{border-color:var(--bf-gold);background:rgba(212,175,90,.10);box-shadow:0 0 18px rgba(241,212,136,.25)}
.bf-hero .bf-wv.is-now::before{background:linear-gradient(90deg,#B8902F,#F1D488)}
.bf-hero .bf-wv.is-next{border-color:rgba(212,175,90,.5)}
.bf-hero .bf-wv.is-next::before{background:linear-gradient(90deg,#B8902F 0%,#F1D488 50%,rgba(255,255,255,.12) 50%)}
.bf-hero .bf-wv.is-past{opacity:.45}
.bf-hero .bf-wv.is-bf::before{background:#d8392b}
.bf-hero .bf-wv.is-bf.is-now{border-color:#d8392b;box-shadow:0 0 18px rgba(216,57,43,.35)}
.bf-wv-badge{position:static;display:inline-block;margin-left:4px;vertical-align:1px;padding:1px 4px;border-radius:6px;background:#b8281b;border:1px solid #d8392b;color:#fff;font-size:9px;font-weight:800;letter-spacing:.06em;line-height:1.1}
.bf-hero-art{position:relative;width:128px;height:150px}
.bf-hero-art img{position:absolute;width:84px;height:134px;object-fit:cover;border-radius:7px;box-shadow:0 10px 22px rgba(0,0,0,.6)}
.bf-hero-art-back{left:0;top:10px;transform:rotate(-9deg)}
.bf-hero-art-front{right:0;top:0;transform:rotate(8deg);filter:drop-shadow(0 0 14px rgba(241,212,136,.45))}
.bf-hm{display:none}
@media (max-width:960px){
  .bf-hero{grid-template-columns:1fr;gap:14px;padding:18px 16px 16px;margin-top:10px;border-radius:14px}
  .bf-hero-title{font-size:28px;white-space:normal}
  .bf-hero-row{gap:10px;flex-wrap:nowrap}
  .bf-timer-c{min-width:40px}
  .bf-hero-cta{height:38px;padding:0 14px;font-size:13px}
  .bf-hero-art{display:none}
}
@media (max-width:820px){
  .bf-hero{display:block;padding:14px 14px 14px;gap:0}
  .bf-hero-txt,.bf-hero .bf-hero-waves,.bf-hero-art{display:none}
  .bf-hm{display:block}
  .bf-hm-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
  .bf-hm-kicker{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#C9A24B;font-family:"MazzardM SemiBold",system-ui,sans-serif;white-space:nowrap}
  .bf-hm-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;border:1px solid rgba(212,175,90,.45);background:rgba(212,175,90,.08);font-size:12px;color:#C9C1B3;white-space:nowrap;line-height:1.2}
  .bf-hm-pill b,main.pm .bf-hm-pill b{font-family:"Manrope","MazzardM SemiBold",system-ui,sans-serif;font-weight:700;color:var(--bf-gold-hi)!important;font-variant-numeric:lining-nums tabular-nums;font-size:13px}
  .bf-hm-title{margin:9px 0 4px;font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:30px;line-height:1.05;background:linear-gradient(180deg,#fff4c8 0%,#f1d488 45%,#c99a3c 100%);-webkit-background-clip:text;background-clip:text;color:#F1D488;-webkit-text-fill-color:transparent}
  .bf-hm-sub{margin:0;font-size:14px;line-height:1.35;color:#C9C1B3}
  .bf-hm-scale{list-style:none;margin:12px 0 6px;padding:0;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:4px}
  .bf-hm-seg{height:5px;border-radius:3px;background:rgba(255,255,255,.14)}
  .bf-hm-seg.is-past{background:rgba(212,175,90,.35)}
  .bf-hm-seg.is-now{background:linear-gradient(90deg,#B8902F,#F1D488);box-shadow:0 0 10px rgba(241,212,136,.45)}
  .bf-hm-seg.is-next{background:rgba(212,175,90,.55)}
  .bf-hm-seg.is-bf{background:#d8392b}
  .bf-hm-seg.is-bf.is-past{background:rgba(216,57,43,.45)}
  .bf-hm-labels{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:4px;text-align:center}
  .bf-hm-labels li{display:flex;flex-direction:column;align-items:center;min-width:0;line-height:1.15}
  .bf-hm-labels b,main.pm .bf-hm-labels b{font-family:"MazzardM SemiBold",system-ui,sans-serif;font-weight:700;font-size:13px;color:var(--bf-gold-hi)!important;white-space:nowrap}
  .bf-hm-labels small{font-size:11px;color:#A8A29A;white-space:nowrap;margin-top:1px}
  .bf-hm-labels li.is-bf small{color:#FF8A7A}
  .bf-hm-labels li.is-past{opacity:.75}
  .bf-hm-cta{display:flex;align-items:center;justify-content:center;width:100%;height:44px;margin-top:12px;border-radius:12px;background:var(--bf-grad);color:var(--bf-btn-ink);font-family:"MazzardM SemiBold",system-ui,sans-serif;font-size:15px;text-decoration:none;box-shadow:var(--bf-glow)}
}

/* ===== 7. Сторінка акції: hero .bf-ph (темний), подарунки, ряд хвиль .bf-pw у СВІТЛИХ плитках, плашка «Далі» ===== */
.bf-ph{position:relative;display:grid;grid-template-columns:1.25fr 1fr;gap:20px 28px;align-items:stretch;margin-top:12px;padding:26px 30px;border-radius:18px;border:1px solid rgba(212,175,90,.38);background:radial-gradient(520px 260px at 92% 30%,rgba(212,175,90,.18),transparent 70%),linear-gradient(180deg,#12100c 0%,#080706 100%);color:var(--bf-ink);box-shadow:0 10px 30px rgba(0,0,0,.18);box-sizing:border-box}
.bf-ph::before{content:"";position:absolute;inset:7px;border:1px solid rgba(212,175,90,.22);border-radius:13px;pointer-events:none}
.bf-ph-main{display:flex;flex-direction:column;min-width:0}
.bf-ph-title{margin:8px 0 8px;font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:44px;line-height:1;background:linear-gradient(180deg,#fff4c8 0%,#f1d488 45%,#c99a3c 100%);-webkit-background-clip:text;background-clip:text;color:#F1D488;-webkit-text-fill-color:transparent}
.bf-ph-sub{margin:0 0 16px;font-size:15px;line-height:1.4;color:#C9C1B3;max-width:52ch}
.bf-ph-timer{margin-top:auto;align-self:flex-start;grid-template-columns:repeat(3,54px)}
.bf-ph-timer .bf-timer-c{width:54px;min-width:54px;box-sizing:border-box}
.bf-ph-gifts{position:relative;border:1px solid rgba(212,175,90,.3);border-radius:14px;padding:14px 16px;background:rgba(255,255,255,.03)}
.bf-ph-gifts-h{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#C9A24B;font-family:"MazzardM SemiBold",system-ui,sans-serif;margin:0 0 10px}
.bf-ph-gl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.bf-ph-g{display:flex;align-items:center;gap:10px;min-width:0}
.bf-ph-gimg{flex:0 0 52px;width:52px;height:52px;border-radius:12px;overflow:hidden;background:#131315;border:1px solid rgba(212,175,90,.35);display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1}
.bf-ph-gimg img{width:100%;height:100%;object-fit:cover;display:block}
.bf-ph-gt{display:flex;flex-direction:column;min-width:0;font-size:12.5px;line-height:1.25;color:#C9C1B3}
.bf-ph-gt b,main.pm .bf-ph-gt b{color:var(--bf-gold-hi)!important;font-size:14px;font-family:"MazzardM SemiBold",system-ui,sans-serif;white-space:nowrap}
.bf-ph-gsep{display:none}
/* ряд хвиль на білому: світлі плитки, темний текст, золото/червоний як акценти */
.bf-pw{margin:14px 0 4px}
.bf-pw .bf-wv{position:relative;display:flex;flex-direction:column;gap:3px;min-width:0;padding:12px 6px 10px;border-radius:12px;border:1px solid rgba(0,0,0,.12);background:#fff;text-align:center;overflow:hidden}
.bf-pw .bf-wv::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:rgba(0,0,0,.1)}
.bf-pw .bf-wv-date{font-size:11px;color:var(--bfa-mut);font-variant-numeric:tabular-nums;white-space:nowrap}
.bf-pw .bf-wv-name{font-family:"MazzardM SemiBold",system-ui,sans-serif;font-size:12px;line-height:1.2;color:var(--bfa-ink)}
.bf-pw .bf-wv-pct{margin-top:2px;font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:19px;line-height:1;color:var(--bfa-gold-tx)}
.bf-pw .bf-wv-pct.is-txt{font-family:"MazzardM Regular",system-ui,sans-serif;font-size:11px;font-weight:400;color:var(--bfa-mut);line-height:1.2}
.bf-pw .bf-wv.is-now{border-color:var(--bfa-gold);background:rgba(212,175,90,.10);box-shadow:0 4px 14px rgba(201,162,75,.18)}
.bf-pw .bf-wv.is-now::before{background:linear-gradient(90deg,#B8902F,#D4AF5A)}
.bf-pw .bf-wv.is-next{border-color:rgba(201,162,75,.6)}
.bf-pw .bf-wv.is-next::before{background:linear-gradient(90deg,#B8902F 0%,#D4AF5A 50%,rgba(0,0,0,.1) 50%)}
.bf-pw .bf-wv.is-past{opacity:.55}
.bf-pw .bf-wv.is-bf::before{background:#d8392b}
.bf-pw .bf-wv.is-bf.is-now{border-color:#d8392b;box-shadow:0 4px 14px rgba(216,57,43,.2)}
.bf-wv-now{order:9;display:block;width:max-content;margin:5px auto 0;padding:2px 7px;border-radius:6px;background:#1A1A1A;color:#F1D488;font-style:normal;font-size:9.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:1.2}
.bf-page .bf-chips{margin-top:16px}
.bf-plate{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:22px 0 10px;padding:16px 20px;border-radius:14px;border:1px dashed var(--bfa-line);background:#fff}
.bf-plate-t{font-size:15px;line-height:1.35;color:var(--bfa-ink)}
.bf-plate .bf-hero-cta{box-shadow:0 4px 14px rgba(201,162,75,.25)}
@media (max-width:960px){
  .bf-ph{grid-template-columns:1fr;gap:14px;padding:18px 16px 16px;border-radius:14px}
  .bf-ph-title{font-size:32px}
  .bf-ph-sub{font-size:14px;margin-bottom:12px}
  .bf-ph-timer{grid-template-columns:repeat(3,54px);gap:3px 5px;margin-top:0}   /* підпис над комірками — ряд не переноситься на 390px */
  .bf-ph-gl{grid-template-columns:1fr;gap:8px}
  .bf-ph-gimg{flex:0 0 44px;width:44px;height:44px;border-radius:10px;font-size:20px}
  .bf-ph-gt{display:block;font-size:13px;line-height:1.3}
  .bf-ph-gsep{display:inline;color:#8E8A80}
  .bf-ph-gt b{display:inline;font-size:13px;white-space:nowrap}
  .bf-pw .bf-hero-waves--scroll{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -16px;padding:0 16px 4px;scroll-snap-type:x mandatory}
  .bf-pw .bf-hero-waves--scroll::-webkit-scrollbar{display:none}
  .bf-pw .bf-wv{flex:0 0 38%;scroll-snap-align:start}
  .bf-plate{flex-direction:column;align-items:stretch;text-align:center;padding:14px 16px}
  .bf-plate-cta{justify-content:center}
}

/* ===== 8. Плитки товарів на сторінці акції / до старту хвилі ===== */
.bf-grid .pcard .pc-old .pc-disc{display:none}   /* −N% уже на стрічці SALE */
/* плитки сторінки акції на світлому (#f3f3f3 підкладка картки): стара ціна, «В наявності», лічильник відгуків, ціна зі знижкою — ≥ 4.5:1 (лише у .bf-grid; каталог як був) */
.bf-grid .pcard .pc-old s,.bf-grid .pcard .pc-old sup,.bf-grid .pcard .pc-old .discounted-price{color:#5F5F5A}
.bf-grid .pcard .pc-stock.in,.bf-grid .pcard .pc-stock.in span{color:#1E7A3C}
.bf-grid .pcard .pc-rate-count{color:#5F5F5A}
.bf-grid .pcard .pc-price.is-sale,.bf-grid .pcard .pc-price.is-sale sup{color:#B3261E}
.bf-grid .pcard .pc-old .pc-bf-save{display:inline-block;margin-left:8px;color:var(--bfa-green);font-family:"MazzardM SemiBold",system-ui,sans-serif;font-size:12.5px;white-space:nowrap;vertical-align:baseline}
@media (max-width:960px){
  .bf-grid .pcard .pc-old{display:flex;flex-wrap:wrap;align-items:baseline;row-gap:2px}
  .bf-grid .pcard .pc-old s{overflow:visible;text-overflow:clip}
  .bf-grid .pcard .pc-old .pc-bf-save{flex:0 0 100%;margin-left:0;font-size:11px;max-width:calc(100% - 58px);white-space:normal}   /* не під кнопкою кошика */
}

/* ===== 9. /cart на мобі — рядок товару компактно, як у дровері (було лише в темі ТЗ-47/49; на світлому сайті потрібно так само) ===== */
@media (max-width:960px){
  .pcrt-list .mcpc{position:relative;display:flex;flex-direction:row;align-items:flex-start;gap:12px;padding:12px 40px 12px 12px!important;border-radius:12px}
  .pcrt-list .mcpc .mcpc-thumb{flex:none;width:72px!important;height:72px!important;border-radius:8px;overflow:hidden;background:#f4f4f2!important}
  .pcrt-list .mcpc .mcpc-thumb .mcpc-thumb-pic{width:100%;height:100%;object-fit:contain}
  .pcrt-list .mcpc .mcpc-badge-list{display:none}
  .pcrt-list .mcpc .mcpc-col{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:6px;align-items:stretch}
  .pcrt-list .mcpc .mcpc-stock{font-size:12px;line-height:1;padding-right:0}
  .pcrt-list .mcpc .mcpc-btn-like,.pcrt-list .mcpc .mcpc-btn-delete{display:none!important}
  .pcrt-list .mcpc .mcpc-btn-trash{display:flex!important;position:absolute;top:12px;right:12px;width:20px;height:20px;color:#6b6b6b}
  .pcrt-list .mcpc .mcpc-general{width:100%;padding-right:0;min-width:0;text-align:left}
  .pcrt-list .mcpc .mcpc-general .mcpc-title{font-size:15px!important;line-height:1.25;text-align:left!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .pcrt-list .mcpc .mcpc-general .mt-2{display:none}
  .pcrt-list .mcpc .mcpc-row3{width:100%;margin-top:auto;display:flex;flex-direction:row!important;align-items:center;justify-content:space-between;gap:8px;background:transparent!important}
  .pcrt-list .mcpc .mcpc-row3 .mcpc-counter{order:0;flex:none;padding:0!important;justify-content:flex-start}
  .pcrt-list .mcpc .mcpc-row3 .mcpc-sum{order:1;flex:1 1 auto;min-width:0;text-align:right;white-space:nowrap;background:transparent!important}
  .pcrt-list .mcpc .mcpc-sum .mcpc-sum__old{display:inline-block;font-size:11px;color:#6b6b6b}
  .pcrt-list .mcpc .mcpc-sum .mcpc-sum-value{display:block;font-size:17px!important;line-height:1.15;white-space:nowrap}
  .pcrt-list .mcpc .mcpc-counter .cnt{display:inline-flex;width:auto;height:auto;gap:8px;padding:5px 8px}
  .pcrt-list .mcpc .mcpc-counter .cnt-input{width:20px;height:auto;font-size:15px;border-radius:0}
  .pcrt-list .mcpc .mcpc-counter .cnt-btn{width:15px;height:15px}
  .pcrt-list .mcpc--gift{gap:10px;padding:10px 12px!important}
  .pcrt-list .bfg-box{padding:10px 12px 4px}
}
.mcpc-promo-line{margin-top:3px;font-size:12px;line-height:1.2;color:var(--bfa-gold-tx)}
@media (min-width:992px){.pcrt-list .mcpc-promo-line{display:none!important}}

/* ===== 10. ТЗ-51c (власник): майбутні хвилі — загадкою; CTA темним на золоті; :visited для посилань акції ===== */
/* деск (темний блок): ✦ 22px золото + «скоро відкриється» 12/700, смугаста текстура; BF — лише червона смужка зверху */
.bf-wv.is-secret{justify-content:center;align-items:center;gap:4px;padding:12px 6px 10px}
.bf-hero .bf-wv.is-secret{background:repeating-linear-gradient(135deg,rgba(255,255,255,.055) 0 5px,transparent 5px 11px),rgba(255,255,255,.02);border-color:rgba(255,255,255,.12);opacity:1}
.bf-wv-star{font-size:22px;line-height:1;color:#D4AF5A}
.bf-wv-soon{font-size:12px;font-weight:700;line-height:1.2;color:#C9A24B;font-family:"MazzardM SemiBold",system-ui,sans-serif;text-align:center}
.bf-hero .bf-wv.is-secret.is-bf::before{background:#d8392b}
/* сторінка акції (світлі плитки): текст темнішим золотом, щоб ≥4.5 на білому */
.bf-pw .bf-wv.is-secret{background:repeating-linear-gradient(135deg,rgba(201,162,75,.12) 0 5px,transparent 5px 11px),#fff;opacity:1}
.bf-pw .bf-wv.is-secret .bf-wv-star{color:#C9A24B}
.bf-pw .bf-wv.is-secret .bf-wv-soon{color:#73591F}   /* на смугастій підкладці (≈#f9f4e9) ≥ 4.5 */
/* моб: «?» 20/800 золотом замість %, дата лишається */
@media (max-width:820px){
  .bf-hm-labels li.is-secret b,main.pm .bf-hm-labels li.is-secret b{font-size:20px;font-weight:800;line-height:1;color:var(--bf-gold-hi)!important}
  .bf-hm-labels li.is-secret.is-bf small{color:#A8A29A}
}
/* кнопки «Що буде у знижці →» / «Усі знижки →» / «Обрати заздалегідь →»: темний текст #160f03, 800 на золоті — у всіх станах (main.css a:visited{color:inherit;font-weight:normal}) */
.bf-hero-cta,.bf-hero-cta:link,.bf-hero-cta:visited,.bf-hero-cta:hover,.bf-hero-cta:focus,.bf-hero-cta:active,.bf-hm-cta,.bf-hm-cta:link,.bf-hm-cta:visited,.bf-hm-cta:hover,.bf-hm-cta:focus,.bf-hm-cta:active{color:#160f03;font-family:"MazzardM Bold",system-ui,sans-serif;font-weight:800}
/* інші посилання акції: колір не успадковувати після відвідання */
.bf-top:visited,.bf-top:focus{color:var(--bf-ink)}
.bf-chip:visited,.bf-chip:focus{color:var(--bfa-gold-tx);font-weight:inherit}
.bf-chip--cat:visited,.bf-chip--cat:focus{color:var(--bfa-ink)}
.bf-chip.is-active:visited,.bf-chip.is-active:focus{color:#F1D488}
.bf-page-row a:visited{color:var(--bfa-gold-dk)}

/* ===== 11. ТЗ-51e (власник, варіант C; ЛИШЕ десктопний блок на головній .bf-hero, моб і сторінка акції без змін): плитки хвиль 170px;
   відкриті (поточна/наступна) — золота рамка 1.5px, золотий градієнт, пігулка «ЗАРАЗ»/«СКОРО», дата 13, назва 17/800, % Cormorant 40 #F7E3A1;
   майбутні — розмите фото першого товару хвилі (blur 14 / brightness .55, з запасом), коло 46px із замком, дата 15/800 білим, «ВІДКРИЄТЬСЯ» 11/700 золотом;
   Black Friday — червона рамка #e0533f, червоний замок, підпис «BLACK FRIDAY». ===== */
.bf-hero-waves--art{gap:10px;align-self:center}
.bf-hero-waves--art .bf-wv{height:170px;box-sizing:border-box;justify-content:center;gap:4px;padding:16px 8px 12px;border-radius:14px;opacity:1}
.bf-hero-waves--art .bf-wv.is-now,.bf-hero-waves--art .bf-wv.is-next{border:1.5px solid #D4AF5A;background:linear-gradient(180deg,rgba(212,175,90,.30) 0%,rgba(212,175,90,.06) 100%),#15120c;box-shadow:none;color:var(--bf-ink)}
.bf-hero-waves--art .bf-wv.is-now::before,.bf-hero-waves--art .bf-wv.is-next::before{display:none}
.bf-hero-waves--art .bf-wv.is-bf.is-now{border-color:#e0533f}
.bf-hero-waves--art .bf-wv-pill{position:absolute;top:9px;left:50%;transform:translateX(-50%);padding:3px 9px;border-radius:999px;background:#D4AF5A;color:#1A1206;font-style:normal;font-family:"MazzardM Bold",system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:.14em;line-height:1.2;white-space:nowrap}
.bf-hero-waves--art .bf-wv-date{font-size:13px;color:#C9C1B3}
.bf-hero-waves--art .bf-wv-name{font-family:"MazzardM Bold",system-ui,sans-serif;font-size:17px;font-weight:800;line-height:1.15;color:#fff}
.bf-hero-waves--art .bf-wv-pct{margin-top:2px;font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:40px;line-height:.95;color:#F7E3A1}
.bf-hero-waves--art .bf-wv-pct.is-txt{font-size:12px;line-height:1.25}
.bf-hero-waves--art .bf-wv.is-past{opacity:.5;background:#15120c;border-color:rgba(212,175,90,.25)}
/* майбутні — «за завісою» */
.bf-hero-waves--art .bf-wv.is-art{padding:12px 8px;border:1.5px solid rgba(212,175,90,.55);background:#0e0d0b;opacity:1;isolation:isolate}
.bf-hero-waves--art .bf-wv.is-art::before{display:none}
.bf-hero-waves--art .bf-wv-artbg{position:absolute;inset:-22%;z-index:0;background:var(--art) center/cover no-repeat;filter:blur(14px) brightness(.55);transform:scale(1.15);pointer-events:none}
.bf-hero-waves--art .bf-wv.is-art>:not(.bf-wv-artbg){position:relative;z-index:1}
.bf-hero-waves--art .bf-wv-lock{width:46px;height:46px;border-radius:50%;border:1.5px solid #D4AF5A;display:flex;align-items:center;justify-content:center;color:#F1D488;background:rgba(10,10,11,.42);box-shadow:0 4px 14px rgba(0,0,0,.4)}
.bf-hero-waves--art .bf-wv-sdate{margin-top:8px;font-family:"MazzardM Bold",system-ui,sans-serif;font-size:15px;font-weight:800;line-height:1.1;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.bf-hero-waves--art .bf-wv-open{margin-top:4px;font-family:"MazzardM SemiBold",system-ui,sans-serif;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#F1D488;text-shadow:0 1px 6px rgba(0,0,0,.6);white-space:nowrap}
.bf-hero-waves--art .bf-wv.is-art.is-bf{border-color:#e0533f}
.bf-hero-waves--art .bf-wv.is-art.is-bf .bf-wv-lock{border-color:#e0533f;color:#FF7A66}
.bf-hero-waves--art .bf-wv.is-art.is-bf .bf-wv-open{color:#FFB4A8}
/* ліва колонка без змін; кнопка «Що буде у знижці →» — завжди в один рядок (на вузьких — під таймером) */
.bf-hero-txt{min-width:0}
@media (max-width:1399px){.bf-hero-row{flex-wrap:wrap}}
/* сторінка акції (світла): ті самі плитки «за завісою»; моб (скрол) — 150px */
.bf-pw .bf-hero-waves--art .bf-wv.is-now,.bf-pw .bf-hero-waves--art .bf-wv.is-next{color:#F2EEE6}
.bf-pw .bf-hero-waves--art .bf-wv-date{color:#C9C1B3}
.bf-pw .bf-hero-waves--art .bf-wv-name{color:#fff}
.bf-pw .bf-hero-waves--art .bf-wv-pct{color:#F7E3A1}
.bf-pw .bf-hero-waves--art .bf-wv.is-past{background:#15120c;color:#C9C1B3;opacity:.6}
@media (max-width:960px){.bf-pw .bf-hero-waves--art .bf-wv{height:150px}}
/* ТЗ-51e: заголовок блока без обрізання «…» — переноситься на 2 рядки */
.bf-hero-title{white-space:normal;overflow:visible;text-overflow:clip;font-size:30px;line-height:1.05}
/* ТЗ-51h: моб ≤520 — заголовок блока у 2 рядки (примусовий перенос), Cormorant 28/1.1 + balance; підзаголовок 13.5 до 2 рядків */
.bf-br-m{display:none}
@media (max-width:520px){
  .bf-br-m{display:inline}
  .bf-hm-title{font-size:28px;line-height:1.1;text-wrap:balance}
  .bf-hm-sub{font-size:13.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
}

/* ===== §12 ТЗ-51k: картки на /sales (лише поки акція активна для користувача) ===== */
.sp--bf .sp-thumb--bf{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center;background:#0A0907;color:#F3E3B5;border:1px solid rgba(201,162,75,.45)}
.sp--bf .sp-thumb--bf .sp-bf-glow{position:absolute;inset:auto -20% -40% -20%;height:70%;background:radial-gradient(ellipse at 50% 100%,rgba(201,162,75,.55),rgba(201,162,75,0) 70%);pointer-events:none}
.sp--bf .sp-bf-brand{position:relative;font-family:'Cormorant Garamond','Cormorant',Georgia,serif;font-weight:700;font-size:30px;line-height:1.05;letter-spacing:.14em;background:linear-gradient(180deg,#F7E3A1 0%,#C9A24B 55%,#8E6A1E 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.sp--bf .sp-bf-sub{position:relative;font-size:14px;line-height:1.3;color:#E9D7A6;opacity:.9}
.sp--bf .sp-sub{color:#6b6b6b}
.sp--bf-fd .sp-thumb--fd{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px;text-align:center;background:linear-gradient(180deg,#FBF6EA,#F3E9D2);border:1px solid rgba(201,162,75,.45);color:#5a4a1f}
.sp--bf-fd .sp-fd-ico{font-size:40px;line-height:1}
.sp--bf-fd .sp-fd-sum{font-family:'Cormorant Garamond','Cormorant',Georgia,serif;font-weight:700;font-size:34px;line-height:1;color:#73591F}
.sp--bf-fd .sp-fd-txt{font-size:13.5px;line-height:1.3;color:#6b6b6b}
@media (max-width:520px){.sp--bf .sp-bf-brand{font-size:24px}}

