/* Podstrona „Kampanie offline”. Wymaga site.css, strony.css (.types,.scope), sklepy.css (.nums,.flow__list), meta.css (.terms,.creatives-notes). */
.off-hero .film img{transform-origin:58% 45%;animation:kb 26s linear infinite alternate}
@keyframes kb{from{scale:1.06}to{scale:1.16}}
/* --- mapa planu dystrybucji --- */
.plan{margin-top:clamp(3rem,5vw,4.5rem);display:grid;gap:clamp(2rem,4vw,4rem);grid-template-columns:1fr;align-items:start}
@media (min-width:1024px){.plan{grid-template-columns:minmax(0,7fr) minmax(0,4fr)}}
.map{position:relative;border:1px solid var(--hairline);border-radius:var(--r-md);background:#0a0b10;overflow:hidden;box-shadow:0 40px 80px -40px rgb(0 0 0 / .85)}
.map svg{display:block;width:100%;height:auto}
.map__st{stroke:rgb(255 255 255 / .09);stroke-width:1}
.map__cell{fill:rgb(255 255 255 / .025);stroke:rgb(255 255 255 / .07);transition:fill 700ms var(--ease-out),stroke 700ms var(--ease-out);transition-delay:calc(400ms + var(--i,0)*520ms)}
.map.is-in .map__cell.z{fill:rgb(115 96 223 / .16);stroke:rgb(115 96 223 / .55)}
.map__dot{fill:var(--fg);opacity:0;transform:scale(0);transform-box:fill-box;transform-origin:center;transition:opacity 300ms var(--ease-out),transform 420ms var(--ease-out);transition-delay:calc(760ms + var(--i,0)*520ms + var(--k,0)*40ms)}
.map.is-in .map__dot{opacity:.9;transform:scale(1)}
.map__pin{fill:var(--accent)}
.map__pulse{fill:none;stroke:var(--accent);stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:pulse 3.2s var(--ease-out) infinite}
@keyframes pulse{0%{transform:scale(.5);opacity:.9}100%{transform:scale(3);opacity:0}}
.map__r{fill:none;stroke:rgb(115 96 223 / .5);stroke-dasharray:4 5;stroke-width:1}
.map__lbl{position:absolute;translate:-50% -50%;padding:3px 9px;border-radius:999px;background:#0d0e12;border:1px solid rgb(115 96 223 / .6);font-size:.75rem;color:var(--fg);white-space:nowrap;opacity:0;scale:.9;transition:opacity 400ms var(--ease-out),scale 400ms var(--ease-out);transition-delay:calc(520ms + var(--i,0)*520ms)}
.map.is-in .map__lbl{opacity:1;scale:1}
.map__lbl--pin{border-color:rgb(255 255 255 / .28);transition-delay:150ms}
.map__lbl--r{border:0;background:transparent;color:var(--fg-faint);transition-delay:300ms}
.map__note{position:absolute;left:.9rem;bottom:.7rem;font-size:.7rem;color:var(--fg-faint)}
@media (max-width:639px){.map__lbl{font-size:.62rem;padding:2px 6px}.map__note{font-size:.6rem}}
/* --- ulotka do odwrócenia --- */
.leafrow{margin-top:clamp(3rem,5vw,4.5rem);display:grid;gap:clamp(2rem,4vw,4rem);grid-template-columns:1fr;align-items:center}
@media (min-width:900px){.leafrow{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}}
.leafwrap{perspective:1500px;width:min(100%,300px);margin-inline:auto}
.leaf{position:relative;aspect-ratio:1/1.42;transform-style:preserve-3d;transition:transform 900ms var(--ease-out);cursor:pointer;-webkit-tap-highlight-color:transparent}
.leaf.is-flip{transform:rotateY(180deg)}
@media (hover:hover) and (pointer:fine){.leafwrap:hover .leaf{transform:rotateY(180deg)}}
.leaf__face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:8px;border:1px solid rgb(255 255 255 / .18);background:#f4f1ea;color:#16171c;padding:1.15rem;display:flex;flex-direction:column;box-shadow:0 30px 60px -30px rgb(0 0 0 / .9);font-size:.8125rem;line-height:1.35}
.leaf__face--b{transform:rotateY(180deg)}
.leaf__eyebrow{font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:#6b6e7a}
.leaf__h{font-size:1.35rem;line-height:1.08;letter-spacing:-.02em;font-weight:500;margin-top:.5rem}
.leaf__line{margin-top:.6rem;color:#4a4d58}
.leaf__foot{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end;gap:.5rem}
.leaf__tel{font-weight:500;font-size:.9375rem}
.leaf__tel small{display:block;font-weight:400;font-size:.65rem;color:#6b6e7a}
.leaf__qr{width:52px;height:52px;background:conic-gradient(#16171c 25%,transparent 0 50%,#16171c 0 75%,transparent 0) 0 0/16px 16px,#fff;border:3px solid #fff;outline:1px solid #16171c;flex:none}
.leaf__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;margin-top:.75rem}
.leaf__grid i{aspect-ratio:1;border:1px solid #16171c;background:#fff;display:block}
.leaf__grid i.x{background:#e9e4d6;border-color:#e9e4d6}
.leaf__grid i.a{background:var(--accent);border-color:var(--accent)}
.leaf__blank{margin-top:auto;font-size:.75rem;color:#4a4d58;letter-spacing:.12em}
.leaf__hint{text-align:center;font-size:.75rem;color:var(--fg-faint);margin-top:1rem}
/* --- dzień otwarty minuta po minucie --- */
.day{margin-top:clamp(3rem,5vw,4.5rem);position:relative;display:grid;gap:0;grid-template-columns:1fr}
.day__line,.day__fill{position:absolute;pointer-events:none}
.day__line{background:var(--hairline)}
.day__fill{background:var(--accent);transform:scale(var(--px,1),var(--py,1));transform-origin:left top}
.day__item{position:relative;opacity:.42;transition:opacity 500ms var(--ease-out)}
.day__item::before{content:"";position:absolute;left:0;top:0;width:.9rem;height:.9rem;border-radius:50%;border:1px solid rgb(255 255 255 / .3);background:var(--bg);transition:background 400ms var(--ease-out),border-color 400ms var(--ease-out),scale 400ms var(--ease-out)}
.day__item.is-on{opacity:1}
.day__item.is-on::before{background:var(--accent);border-color:var(--accent);scale:1.15}
.day__t{display:block;font-size:.75rem;color:var(--fg-faint);letter-spacing:.04em;font-variant-numeric:tabular-nums}
.day__item b{display:block;font-weight:500;margin-top:.25rem;letter-spacing:-.01em}
.day__item p{font-size:.875rem;max-width:none;margin-top:.3rem}
.day{padding-left:0}
.day__line{left:.45rem;top:.5rem;bottom:.5rem;width:1px}
.day__fill{left:.45rem;top:.5rem;bottom:.5rem;width:1px;--px:1;--py:var(--p,0)}
.day__item{padding:0 0 1.6rem 2rem}
.day__item:last-child{padding-bottom:0}
@media (min-width:900px){
  .day{grid-template-columns:repeat(8,1fr);padding-top:0}
  .day__line{left:0;right:0;top:.45rem;bottom:auto;height:1px;width:auto}
  .day__fill{left:0;top:.45rem;bottom:auto;height:1px;width:100%;--px:var(--p,0);--py:1}
  .day__item{padding:1.7rem .9rem 0 0}
}
/* --- tydzień --- */
.week{margin-top:clamp(3rem,5vw,4.5rem);display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--hairline);border:1px solid var(--hairline);border-radius:var(--r-md);overflow:hidden}
@media (min-width:900px){.week{grid-template-columns:repeat(8,1fr)}}
.week div{background:var(--bg);padding:1rem .9rem 1.1rem;min-height:9rem;display:flex;flex-direction:column;gap:.5rem}
.week span{font-size:.75rem;color:var(--fg-faint);letter-spacing:.04em}
.week i{width:.7rem;height:.7rem;border-radius:50%;border:1px solid rgb(255 255 255 / .25);display:block;font-style:normal;transition:background 400ms var(--ease-out),border-color 400ms var(--ease-out);transition-delay:calc(300ms + var(--i,0)*110ms)}
.week div.on i{border-color:var(--accent)}
.week.is-in div.on i{background:var(--accent)}
.week b{font-weight:500;font-size:.9rem;letter-spacing:-.01em}
.week p{font-size:.8125rem;max-width:none;color:var(--fg-muted)}
.week div:not(.on) b,.week div:not(.on) p{display:none}
/* --- materiały --- */
.mats{margin-top:clamp(3rem,5vw,4.5rem)}
