/* Black Friday в фирменном стиле InnovTech (promo_theme='bf'): «купон» — градиент InnovTech + белая часть
   с перфорацией. Скидки только настоящие (old_price). Тёмная тема поддерживается. */
.bf{--bfc-card:#fff;--bfc-ink:#0F1550;--bfc-mut:#5E6593;--bfc-chip:#F1F2FD}
html[data-theme="dark"] .bf,[data-theme="dark"] body.bf{--bfc-card:#151a3a;--bfc-ink:#fff;--bfc-mut:#a9aed6;--bfc-chip:#20264d}
/* верхняя полоса */
.bfbar{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 14px;color:#fff;text-decoration:none;font:600 13px Inter,sans-serif;
  background:linear-gradient(110deg,#375BEB,#7678ED 45%,#C089F6 75%,#F0386B)}
.bfbar b{white-space:nowrap;flex:none;background:#fff;color:#0F1550;padding:2px 9px;border-radius:999px;font-weight:900;letter-spacing:.04em;font-size:12px}
.bfbar i{font-style:normal;font-weight:800}
.bfbar:hover span{text-decoration:underline}
/* баннер на главной: яркий и живой */
.bfx{position:relative;overflow:hidden;isolation:isolate;margin:18px 0;border-radius:30px;color:#fff;background:#0b0f3a;box-shadow:0 30px 80px -24px rgba(91,76,235,.65),inset 0 0 0 1px rgba(255,255,255,.08)}
.bfx-bg{position:absolute;inset:0;z-index:-2}
.bfx-bg i{position:absolute;border-radius:50%;filter:blur(60px);opacity:.75;will-change:transform}
.bfx-bg i:nth-child(1){width:60%;height:120%;left:-15%;top:-40%;background:#375BEB;animation:bfxA 14s ease-in-out infinite alternate}
.bfx-bg i:nth-child(2){width:50%;height:110%;right:-10%;top:-30%;background:#C089F6;animation:bfxB 17s ease-in-out infinite alternate}
.bfx-bg i:nth-child(3){width:40%;height:90%;left:35%;bottom:-55%;background:#F0386B;opacity:.6;animation:bfxA 12s ease-in-out -4s infinite alternate-reverse}
@keyframes bfxA{to{transform:translate(18%,12%) scale(1.15)}}@keyframes bfxB{to{transform:translate(-16%,14%) scale(1.1)}}
.bfx:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:38px 38px;-webkit-mask:radial-gradient(70% 90% at 70% 50%,#000,transparent 75%);mask:radial-gradient(70% 90% at 70% 50%,#000,transparent 75%)}
/* бегущие ленты */
.bfx-tape{position:absolute;left:-10%;width:120%;z-index:-1;overflow:hidden;white-space:nowrap;font:900 15px/1 'Unbounded','Inter',sans-serif;letter-spacing:.08em}
.bfx-tape div{display:inline-flex;gap:22px;padding:9px 0;animation:bfxM 26s linear infinite}
.bfx-tape b{color:#FFD43B}
.bfx-tape.t1{bottom:13%;transform:rotate(-4deg);background:linear-gradient(90deg,#F0386B,#C089F6);box-shadow:0 10px 30px rgba(240,56,107,.4)}
.bfx-tape.t2{bottom:3%;transform:rotate(3deg);background:#fff;color:#0F1550;opacity:.95}.bfx-tape.t2 div{animation-direction:reverse;animation-duration:32s}.bfx-tape.t2 b{color:#F0386B}
@keyframes bfxM{to{transform:translateX(-50%)}}
.bfx-in{display:grid;grid-template-columns:1.25fr 1fr;gap:24px;align-items:center;padding:36px 44px 128px}
.bfx-k{display:inline-flex;align-items:center;gap:8px;padding:6px 13px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);font:800 11px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;backdrop-filter:blur(6px)}
.bfx-k i{width:8px;height:8px;border-radius:50%;background:#FFD43B;box-shadow:0 0 0 0 rgba(255,212,59,.8);animation:bfxP 1.6s infinite}
@keyframes bfxP{70%{box-shadow:0 0 0 10px rgba(255,212,59,0)}100%{box-shadow:0 0 0 0 rgba(255,212,59,0)}}
.bfx-h{margin:14px 0 12px;font:900 clamp(44px,6.6vw,94px)/.9 'Unbounded','Inter',sans-serif;letter-spacing:-.03em;display:grid}
.bfx-h span:first-child{color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.9)}
.bfx-h span:last-child{background:linear-gradient(100deg,#FFD43B,#fff,#5ED3F3,#C089F6,#FFD43B);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:bfxG 6s linear infinite;filter:drop-shadow(0 8px 30px rgba(192,137,246,.5))}
@keyframes bfxG{to{background-position:300% 0}}
.bfx-l p{margin:0 0 20px;max-width:42ch;color:rgba(255,255,255,.85);font-size:16px;line-height:1.5}
.bfx-b{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:10px;padding:15px 26px;border-radius:16px;background:#FFD43B;color:#0F1550!important;font:900 16px Inter,sans-serif;text-decoration:none;box-shadow:0 14px 40px rgba(255,212,59,.45);transition:transform .3s}
.bfx-b em{font-style:normal;background:#0F1550;color:#FFD43B;border-radius:999px;padding:2px 9px;font-size:13px}
.bfx-b:after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.8),transparent);transform:skew(-20deg);animation:bfxS 2.8s 1s infinite}
@keyframes bfxS{60%,100%{left:130%}}
.bfx-b:hover{transform:translateY(-3px) scale(1.02)}
.bfx-r{display:grid;justify-items:center;gap:18px}
.bfx-ring{position:relative;width:clamp(170px,19vw,230px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;
  background:conic-gradient(from var(--bfx-a,0deg),#FFD43B,#F0386B,#C089F6,#5ED3F3,#FFD43B);animation:bfxR 5s linear infinite}
.bfx-ring:before{content:"";position:absolute;inset:7px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#2a2f7a,#0b0f3a 70%)}
.bfx-ring div{position:relative;text-align:center;line-height:1}
.bfx-ring small{display:block;font:800 12px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.7);margin-bottom:6px}
.bfx-ring b{font:900 clamp(40px,4.6vw,62px)/1 'Unbounded','Inter',sans-serif;letter-spacing:-.03em;color:#fff;text-shadow:0 0 30px rgba(240,56,107,.7)}
@property --bfx-a{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes bfxR{to{--bfx-a:360deg}}
.bfx-t small{display:block;text-align:center;color:rgba(255,255,255,.75);font-weight:700;font-size:12.5px;margin-bottom:7px}
.bfx-t>div{display:flex;gap:8px}
.bfx-t span{display:grid;justify-items:center;min-width:60px;padding:10px 6px;border-radius:14px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(6px)}
.bfx-t b{font:800 24px/1 'Unbounded','Inter',sans-serif;font-variant-numeric:tabular-nums}
.bfx-t span:last-child b{color:#FFD43B}
.bfx-t i{font-style:normal;font-size:11px;color:rgba(255,255,255,.65);margin-top:4px}
.bfover{margin:0;font-weight:800;color:#FFD43B;text-align:center}
.bfx-f{position:absolute;z-index:0;pointer-events:none;font:900 22px/1 'Unbounded','Inter',sans-serif;padding:8px 12px;border-radius:12px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(4px);animation:bfxF 6s ease-in-out infinite}
.bfx-f.f1{left:47%;top:12%;font-size:28px;color:#FFD43B}.bfx-f.f2{right:4%;top:8%;color:#fff;animation-delay:-2s}.bfx-f.f3{left:40%;bottom:34%;font-size:14px;letter-spacing:.12em;color:#5ED3F3;animation-delay:-4s}
@keyframes bfxF{50%{transform:translateY(-14px) rotate(-6deg)}}
.bfx.zz *,.bfx.zz *:before,.bfx.zz *:after,.bfx.zz:before{animation-play-state:paused!important}
@media(max-width:980px){
.bfx{border-radius:24px;margin:12px 0}.bfx-in{grid-template-columns:1fr;gap:18px;padding:24px 20px 104px}
.bfx-h{font-size:clamp(40px,12.5vw,60px);margin:10px 0 8px}.bfx-h span:first-child{-webkit-text-stroke:1.5px #fff}.bfx-l p{font-size:14px;margin-bottom:0}
.bfx-l{display:contents}.bfx-k,.bfx-h,.bfx-l p{order:1}.bfx-r{order:2;grid-template-columns:auto 1fr;align-items:center;gap:14px;justify-items:stretch}.bfx-b{order:3;justify-content:center;width:100%}
.bfx-ring{width:118px}.bfx-ring b{font-size:30px}.bfx-ring small{font-size:10px;margin-bottom:3px}.bfx-ring:before{inset:5px}
.bfx-t small{text-align:left}.bfx-t>div{gap:5px}.bfx-t span{min-width:0;flex:1;padding:8px 2px;border-radius:11px}.bfx-t b{font-size:17px}.bfx-t i{font-size:10px}
.bfx-tape{font-size:12px}.bfx-tape.t1{bottom:13%}.bfx-tape.t2{bottom:1%}
.bfx-f.f1{left:auto;right:6%;top:6%;font-size:20px}.bfx-f.f2,.bfx-f.f3{display:none}
.bfx-bg i{filter:blur(40px)}}
@media(prefers-reduced-motion:reduce){.bfx *,.bfx *:before,.bfx *:after{animation:none!important}}
/* карточки со скидкой */
.bf .prod:has(.prod-old){box-shadow:0 0 0 2px #7678ED,0 14px 34px -10px rgba(118,120,237,.45)}
.bf .prod:has(.prod-old) .prod-old{color:#F0386B}
.bf .prod{position:relative}
@media(max-width:980px){
.bfbar{font-size:12px;gap:8px;padding:7px 10px}.bfbar span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bfc{grid-template-columns:1fr;border-radius:24px;margin:12px 0}
.bfc-l{padding:22px 20px 24px}.bfc-h{font-size:clamp(36px,11vw,52px);margin:10px 0 8px}.bfc-l p{font-size:14px}
.bfc-r{grid-template-columns:auto 1fr;align-items:end;gap:12px 14px;padding:20px;border-left:0;border-top:2px dashed rgba(118,120,237,.35)}
.bfc-r:before,.bfc-r:after{left:auto;top:-15px;bottom:auto}.bfc-r:before{left:-14px}.bfc-r:after{right:-14px}
.bfc-p b{font-size:46px}.bfc-t span{padding:7px 2px;border-radius:11px}.bfc-t b{font-size:17px}.bfc-t i{font-size:10px}
.bfc-b{grid-column:1/-1}}
@media(max-width:360px){.bfc-p b{font-size:38px}.bfc-t b{font-size:15px}}
