/* ZostanDJ – KURS WODZIREJ 2.0. Wszystko w obrębie .zwr, żeby nie kolidować z motywem. */
.zwr{
  --zwr-bg:#0E1117; --zwr-panel:#161A22; --zwr-panel2:#1D222C; --zwr-line:#2A303C;
  --zwr-ink:#F4F6F9; --zwr-soft:#A8B0BF; --zwr-blue:#B794FF; --zwr-blue-dark:#8E62F0; --zwr-blue-soft:rgba(183,148,255,.14);
  --zwr-ok:#3FBF74; --zwr-warn:#F0913F; --zwr-off:#6B7382;
  --zwr-display:"ZS Montserrat","Montserrat","Helvetica Neue",Arial,sans-serif;
  --zwr-body:"ZS Source Sans","Source Sans 3",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --zwr-mono:"ZS Plex Mono","IBM Plex Mono",ui-monospace,Menlo,monospace;
  background:var(--zwr-bg); color:var(--zwr-ink); font:17px/1.6 var(--zwr-body);
  /* Pełna szerokość niezależnie od kontenera motywu (JS dokłada pomiar co do piksela). */
  width:auto !important; max-width:none !important;
  margin-left:0 !important; margin-right:0 !important;
  box-shadow:0 0 0 100vmax var(--zwr-bg); clip-path:inset(0 -100vmax);
}
.zwr *,.zwr *::before,.zwr *::after{box-sizing:border-box}
.zwr p{margin:0}
.zwr a{color:inherit}
.zwr img{max-width:100%;height:auto}
.zwr-wrap{max-width:1120px;margin:0 auto;padding-inline:20px}
.zwr h1,.zwr h2,.zwr h3{font-family:var(--zwr-display);line-height:1.1;margin:0;color:var(--zwr-ink);letter-spacing:-.02em;text-transform:none}
.zwr .zwr-h1{font-size:clamp(2rem,4.4vw,3.1rem);font-weight:800}
.zwr .zwr-h1 span{display:block;color:var(--zwr-blue);font-size:.42em;font-weight:700;letter-spacing:.02em;margin-top:14px}
.zwr .zwr-h2{font-size:clamp(1.5rem,3.2vw,2.2rem);font-weight:800;margin-top:10px}
.zwr .zwr-h2 + *{margin-top:18px}
.zwr-eyebrow{font:600 .8rem/1 var(--zwr-body);letter-spacing:.16em;text-transform:uppercase;color:var(--zwr-blue)}
.zwr-lead{color:var(--zwr-soft);font-size:1.12rem;max-width:62ch}
.zwr-note{color:var(--zwr-soft);font-size:.95rem;margin-top:18px !important}
.zwr-sec{padding-block:56px}
.zwr-sec:last-of-type{padding-bottom:72px}

/* Przyciski */
.zwr .zwr-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 1rem/1.2 var(--zwr-display);letter-spacing:-.01em;padding:16px 28px;border-radius:12px;border:2px solid transparent;text-decoration:none;cursor:pointer;transition:transform .15s,background-color .15s}
.zwr .zwr-btn--main{background:var(--zwr-blue);color:#08111A}
.zwr .zwr-btn--main:hover{background:#CBB2FF;transform:translateY(-1px)}
.zwr .zwr-btn--ghost{border-color:var(--zwr-line);color:var(--zwr-ink)}
.zwr .zwr-btn--ghost:hover{border-color:var(--zwr-blue);color:var(--zwr-blue)}
.zwr .zwr-btn--off{background:var(--zwr-panel2);color:var(--zwr-off);cursor:default}
.zwr :focus-visible{outline:3px solid var(--zwr-blue);outline-offset:3px}
.zwr-cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}

/* Hero */
.zwr-hero{position:relative;overflow:hidden;padding-block:56px 60px}
.zwr-hero-bg{position:absolute;inset:0;background:url(img/hero.webp) 52% 42%/cover no-repeat;opacity:.55}
.zwr-hero::after{content:"";position:absolute;inset:0;background:
  radial-gradient(70% 80% at 78% 30%,rgba(183,148,255,.22),transparent 65%),
  linear-gradient(100deg,var(--zwr-bg) 34%,rgba(14,17,23,.78) 58%,rgba(14,17,23,.55) 100%),
  linear-gradient(180deg,rgba(14,17,23,.5),rgba(14,17,23,.2) 40%,var(--zwr-bg))}
.zwr-hero-top{position:relative;z-index:1;margin-bottom:clamp(44px,6vw,80px)}
.zwr-hero-in{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:start}
.zwr-logo{width:min(560px,82vw);height:auto;display:block;margin:0 auto;filter:drop-shadow(0 10px 30px rgba(0,0,0,.55))}
.zwr-perks{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:12px}
.zwr-perks li{display:grid;grid-template-columns:24px 1fr;gap:10px;color:var(--zwr-ink);font-size:1rem}
.zwr-perks li::before{content:"";width:11px;height:11px;border-radius:50%;background:var(--zwr-blue);margin-top:8px;box-shadow:0 0 0 5px var(--zwr-blue-soft)}

/* Karta najbliższego terminu w hero */
.zwr-next{background:rgba(22,26,34,.92);border:1px solid var(--zwr-line);border-radius:20px;padding:28px;backdrop-filter:blur(6px);box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
.zwr-next-head{font:600 .8rem/1 var(--zwr-body);letter-spacing:.16em;text-transform:uppercase;color:var(--zwr-blue);margin-bottom:18px}
.zwr-next-date{display:flex;align-items:center;gap:14px}
.zwr-next .zwr-d,.zwr-term .zwr-d{font:800 3.4rem/1 var(--zwr-display);color:var(--zwr-ink)}
.zwr-next .zwr-m,.zwr-term .zwr-m{font:600 .9rem/1.25 var(--zwr-body);color:var(--zwr-soft);text-transform:uppercase;letter-spacing:.06em}
.zwr-next-info{margin-top:16px;display:grid;gap:8px}
.zwr-next-info p{font-size:1rem;color:var(--zwr-soft)}
.zwr-next-info strong{color:var(--zwr-ink)}
.zwr-next .zwr-bar{margin-top:6px}
.zwr-next .zwr-btn{margin-top:20px;width:100%}
.zwr-seats-line{color:var(--zwr-soft)}

/* Dwie kolumny + listy */
.zwr-two{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.zwr-checks{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:14px}
.zwr-checks li{display:grid;grid-template-columns:30px 1fr;gap:12px;color:var(--zwr-soft)}
.zwr-checks li::before{content:"✓";color:var(--zwr-blue);font-weight:800;font-family:var(--zwr-display)}

/* Plan dnia */
.zwr-timeline{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:2px;background:var(--zwr-line);border:1px solid var(--zwr-line);border-radius:16px;overflow:hidden}
.zwr-timeline li{background:var(--zwr-panel);display:grid;grid-template-columns:130px 1fr;gap:20px;padding:18px 24px;align-items:baseline}
.zwr-time{font:500 1rem var(--zwr-mono);color:var(--zwr-blue)}
.zwr-timeline li.is-break{background:linear-gradient(90deg,var(--zwr-blue-soft),rgba(183,148,255,.05));box-shadow:inset 3px 0 0 var(--zwr-blue)}
.zwr-timeline li.is-break span:last-child{color:var(--zwr-blue);font-weight:600}

/* Pasek zajętości */
.zwr-bar{height:10px;border-radius:999px;background:#232833;overflow:hidden}
.zwr-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--zwr-blue),var(--zwr-blue-dark));border-radius:999px}

/* Aftermovie */
.zwr-yt{position:relative;margin-top:26px;border-radius:18px;overflow:hidden;background:#000;aspect-ratio:16/9}
.zwr-yt iframe,.zwr-yt img{width:100%;height:100%;display:block;border:0;object-fit:cover}
.zwr-yt-btn{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:none;cursor:pointer}
.zwr-play{position:absolute;left:50%;top:50%;width:92px;height:92px;margin:-46px 0 0 -46px;border-radius:50%;background:var(--zwr-blue);box-shadow:0 12px 40px rgba(0,0,0,.45)}
.zwr-play::after{content:"";position:absolute;left:37px;top:28px;border-style:solid;border-width:18px 0 18px 28px;border-color:transparent transparent transparent #08111A}
.zwr-yt-btn:hover .zwr-play{background:#CBB2FF}

/* Opinie */
.zwr-reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px}
.zwr-review{background:var(--zwr-panel);border:1px solid var(--zwr-line);border-radius:18px;padding:24px;margin:0;display:flex;flex-direction:column;gap:16px}
.zwr-stars{color:var(--zwr-blue);letter-spacing:.12em}
.zwr-review blockquote{margin:0;color:var(--zwr-ink);font-size:1.02rem}
.zwr-review figcaption{display:flex;align-items:center;gap:14px;color:var(--zwr-soft);font-size:.95rem;margin-top:auto}
.zwr-review figcaption img{width:56px;height:56px;border-radius:50%;object-fit:cover}
.zwr-avatar{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--zwr-blue-soft);color:var(--zwr-blue);font:800 1.4rem var(--zwr-display)}
.zwr-review figcaption strong{color:var(--zwr-ink)}

/* FAQ */
.zwr-faq{margin-top:22px;border-top:1px solid var(--zwr-line)}
.zwr-faq details{border-bottom:1px solid var(--zwr-line);padding:18px 0;margin:0}
.zwr-faq summary{cursor:pointer;font-weight:700;font-size:1.05rem;list-style:none;display:flex;justify-content:space-between;gap:16px;font-family:var(--zwr-display)}
.zwr-faq summary::-webkit-details-marker{display:none}
.zwr-faq summary::after{content:"+";color:var(--zwr-blue);font-family:var(--zwr-mono)}
.zwr-faq details[open] summary::after{content:"–"}
.zwr-faq details p{color:var(--zwr-soft);margin-top:12px !important;max-width:70ch}

/* Finał */
.zwr-final{background:linear-gradient(180deg,var(--zwr-bg),#0E0B18)}
.zwr-final .zwr-lead{margin-top:16px}
.zwr-contact{color:var(--zwr-soft);font-size:.95rem;margin-top:26px !important}
.zwr-contact a{color:var(--zwr-blue);text-decoration:none}

@media (max-width:980px){
  .zwr-hero-in{grid-template-columns:1fr;gap:32px}
  .zwr-logo{margin-inline:auto}
}
@media (max-width:860px){
  .zwr-two{grid-template-columns:1fr}
  .zwr-reviews{grid-template-columns:1fr}
  .zwr-term header{grid-template-columns:auto 1fr;row-gap:14px}
  .zwr-term header .zwr-badge{grid-column:1/-1;justify-self:start}
  .zwr-timeline li{grid-template-columns:90px 1fr;gap:12px;padding:16px 18px}
  .zwr-play{width:68px;height:68px;margin:-34px 0 0 -34px}
  .zwr-play::after{left:27px;top:20px;border-width:14px 0 14px 22px}
}
@media (prefers-reduced-motion:reduce){ .zwr .zwr-btn{transition:none} }

/* Galeria z poprzednich edycji */
.zwr-gal{margin-top:26px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.zwr-gal-item{display:block;border-radius:14px;overflow:hidden;background:var(--zwr-panel);border:1px solid var(--zwr-line);aspect-ratio:4/3}
.zwr-gal-item.is-big{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.zwr-gal-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}
.zwr-gal-item:hover img{transform:scale(1.04)}
.zwr-lb{position:fixed;inset:0;z-index:99999;background:rgba(6,9,14,.94);display:flex;align-items:center;justify-content:center;padding:24px}
.zwr-lb img{max-width:min(1200px,94vw);max-height:90vh;width:auto;height:auto;border-radius:12px}
.zwr-lb-close{position:absolute;top:16px;right:20px;background:none;border:0;color:#fff;font-size:34px;line-height:1;cursor:pointer}
@media (max-width:760px){
  .zwr-gal{grid-template-columns:repeat(2,1fr)}
  .zwr-gal-item.is-big{grid-column:span 2;grid-row:auto;aspect-ratio:4/3}
}

/* Opinie: źródło + zrzut ekranu */
.zwr-rev-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.zwr-src{font:600 .78rem/1 var(--zwr-body);letter-spacing:.04em;padding:7px 12px;border-radius:999px;background:var(--zwr-panel2);color:var(--zwr-soft);border:1px solid var(--zwr-line);text-decoration:none;white-space:nowrap}
a.zwr-src:hover{border-color:var(--zwr-blue);color:var(--zwr-blue)}
.zwr-src--google{color:#8AB4F8;border-color:rgba(138,180,248,.35)}
.zwr-src--facebook{color:#8FB6FF;border-color:rgba(143,182,255,.35)}
.zwr-src--instagram{color:#F09BC8;border-color:rgba(240,155,200,.35)}
.zwr-rev-shot{position:relative;display:block;border-radius:12px;overflow:hidden;border:1px solid var(--zwr-line);background:#fff}
.zwr-rev-shot img{width:100%;height:auto;display:block}
.zwr-rev-shot span{position:absolute;right:10px;bottom:10px;background:rgba(14,17,23,.86);color:#fff;font:600 .78rem/1 var(--zwr-body);padding:8px 12px;border-radius:999px}
.zwr-rev-shot:hover span{background:var(--zwr-blue);color:#08111A}

/* ---------- Wodzirej 2.0 ---------- */
.zwr-hero-in{padding-top:clamp(20px,4vw,48px)}
.zwr .zwr-hero .zwr-eyebrow{margin-bottom:14px}
.zwr .zwr-hero .zwr-lead{margin-top:18px}
.zwr-next-date .zwr-d{font:800 3rem/1 var(--zwr-display);color:var(--zwr-ink);white-space:nowrap}
.zwr-next-date .zwr-m{font:600 .9rem/1.25 var(--zwr-body);color:var(--zwr-soft);text-transform:uppercase;letter-spacing:.06em}
.zwr .zwr-next-more{display:block;margin-top:14px;text-align:center;color:var(--zwr-soft);font-size:.95rem;text-decoration:underline;text-underline-offset:3px}
.zwr .zwr-next-more:hover{color:var(--zwr-blue)}

/* Program: trzy dni obok siebie */
.zwr-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:26px}
.zwr-day{background:var(--zwr-panel);border:1px solid var(--zwr-line);border-radius:18px;padding:24px 22px}
.zwr-day h3{font-size:1.2rem;font-weight:800}
.zwr-day-desc{color:var(--zwr-blue);font-size:.95rem;margin-top:6px !important}
.zwr-day .zwr-timeline{margin-top:18px;border-radius:12px}
.zwr-day .zwr-timeline li{grid-template-columns:58px 1fr;gap:12px;padding:12px 14px;font-size:.98rem}

/* Pakiety */
.zwr-packs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:26px;align-items:stretch}
.zwr-pack{display:flex;flex-direction:column;background:var(--zwr-panel);border:1px solid var(--zwr-line);border-radius:20px;padding:26px 24px}
.zwr-pack.is-featured{border-color:var(--zwr-blue);box-shadow:0 0 0 1px var(--zwr-blue),0 30px 60px -36px rgba(183,148,255,.55)}
.zwr-pack.is-full{opacity:.72}
.zwr-pack--trial{background:var(--zwr-panel2)}
.zwr-pack-tag{font:600 .78rem/1.3 var(--zwr-body);letter-spacing:.12em;text-transform:uppercase;color:var(--zwr-blue)}
.zwr-pack h3{font-size:1.5rem;font-weight:800;margin-top:10px}
.zwr-pack-price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:14px !important}
.zwr-pack-price strong{font:800 2.2rem/1 var(--zwr-display);color:var(--zwr-ink)}
.zwr-pack-price span{color:var(--zwr-soft);font-size:.95rem}
.zwr-pack-seats{margin-top:16px}
.zwr-pack-seats p{color:var(--zwr-soft);font-size:.92rem;margin-top:8px !important}
.zwr-pack .zwr-checks{margin-top:20px;gap:10px}
.zwr-pack-contest{display:grid;grid-template-columns:26px 1fr;gap:8px;margin-top:18px !important;padding:12px 14px;border-radius:12px;background:rgba(240,190,80,.10);border:1px solid rgba(240,190,80,.35);color:#F3D48B;font-size:.95rem;line-height:1.45}
.zwr-pack-bonus{margin-top:16px !important;color:#7BE0A6;font-weight:600;font-size:.95rem}
.zwr-pack-note{margin-top:16px !important;color:var(--zwr-soft);font-size:.92rem}
.zwr-pack-cta{margin-top:auto;padding-top:22px;display:grid;gap:10px}
.zwr-pack-cta .zwr-btn{width:100%}

/* Porównanie */
.zwr-table-wrap{margin-top:26px;overflow-x:auto;border:1px solid var(--zwr-line);border-radius:16px}
.zwr-table{width:100%;border-collapse:collapse;min-width:520px;font-size:.98rem}
.zwr-table th,.zwr-table td{padding:14px 18px;border-bottom:1px solid var(--zwr-line);text-align:center;vertical-align:middle}
.zwr-table th[scope=row]{text-align:left;font-weight:400;color:var(--zwr-soft)}
.zwr-table thead th{font:700 1rem var(--zwr-display);color:var(--zwr-ink);background:var(--zwr-panel2)}
.zwr-table .is-premium{background:rgba(183,148,255,.07)}
.zwr-table thead .is-premium{background:rgba(183,148,255,.16);color:var(--zwr-blue)}
.zwr-table tfoot th,.zwr-table tfoot td{border-bottom:0;font:800 1.1rem var(--zwr-display);color:var(--zwr-ink)}
.zwr-yes{color:var(--zwr-blue);font-weight:800}
.zwr-no{color:var(--zwr-off)}
.zwr-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Jak płacisz */
.zwr-steps{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.zwr-steps li{background:var(--zwr-panel);border:1px solid var(--zwr-line);border-radius:18px;padding:22px;display:grid;gap:8px}
.zwr-step-n{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--zwr-blue-soft);color:var(--zwr-blue);font:800 1rem var(--zwr-display)}
.zwr-steps strong{font:800 1.08rem/1.3 var(--zwr-display);color:var(--zwr-ink)}
.zwr-steps span:last-child{color:var(--zwr-soft)}

@media (max-width:980px){
  .zwr-days,.zwr-packs{grid-template-columns:1fr;max-width:560px}
}
@media (max-width:760px){
  .zwr-steps{grid-template-columns:1fr}
  .zwr-next-date .zwr-d{font-size:2.4rem}
}
