/* mkursant – sekcje stron sprzedażowych (z oryginalnej strony głównej) */

.pj-home {
  --paper: #f5f1e8;
  --paper-2: #ede6d4;
  --paper-3: #e3dcc6;
  --ink: #0a0a0a;
  --ink-soft: #1c1c1c;
  --ink-mid: #5a5a5a;
  --ink-low: #8a8475;
  --line: #c9c2ac;
  --line-soft: #d8d2bd;
  --signal: #f5d042;
  --signal-deep: #e8b923;
  --signal-soft: #faead0;
  --cherry: #c5283d;
  --cherry-deep: #971f30;
  --pos: #1f7a3a;
  --pos-soft: #d6ebd9;

  min-height: 100vh;
  background: var(--paper);
  color: var(--ink);
  font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  overflow-x: clip;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
.pj-home *, .pj-home *::before, .pj-home *::after { box-sizing: inherit; }
.pj-home h1, .pj-home h2, .pj-home h3 {
  font-family: 'Bricolage Grotesque', 'Plus Jakarta Sans', sans-serif;
  letter-spacing: -0.025em; margin: 0;
}
.pj-home p { margin: 0; }
.pj-home a { color: inherit; }
.pj-home .font-mono { font-family: 'JetBrains Mono', ui-monospace, monospace; }
.pj-home .font-display { font-family: 'Bricolage Grotesque', 'Plus Jakarta Sans', sans-serif; }
.pj-home .font-serif-i { font-family: 'Instrument Serif', serif; font-style: italic; font-weight: 400; }
.pj-home .tabnum { font-variant-numeric: tabular-nums; }
.pj-home .text-xs { font-size: 0.75rem; }
.pj-home .flex-1 { flex: 1; }
.pj-home .block { display: block; }
.pj-home .h-full { height: 100%; }
.pj-home .text-base { font-size: 1rem; }

/* Buttons */
.pj-home .btn-pj > .wp-block-button__link {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.7rem;
  background: var(--ink); color: var(--paper);
  padding: 0.85rem 1.3rem;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.78rem; font-weight: 700; letter-spacing: 0.16em;
  text-decoration: none; text-transform: uppercase;
  border: 1px solid var(--ink); cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s, background 0.2s, color 0.2s, border-color 0.2s;
}
.pj-home .btn-pj > .wp-block-button__link:hover {
  background: var(--cherry); border-color: var(--cherry);
  transform: translate(-2px, -2px); box-shadow: 5px 5px 0 var(--ink);
}
.pj-home .btn-pj-sm > .wp-block-button__link { padding: 0.55rem 0.85rem; font-size: 0.7rem; }
.pj-home .btn-pj-yellow > .wp-block-button__link { background: var(--signal); color: var(--ink); border-color: var(--ink); }
.pj-home .btn-pj-yellow > .wp-block-button__link:hover { background: var(--ink); color: var(--signal); box-shadow: 5px 5px 0 var(--cherry); }

/* Pills */
.pj-home .pill-pj {
  display: inline-flex; align-items: center; gap: 0.4rem;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase;
  background: var(--ink); color: var(--signal);
  padding: 0.3rem 0.55rem; border-radius: 2px;
}
.pj-home .pill-pj-cherry { background: var(--cherry); color: white; }
.pj-home .pill-pj-paper  { background: var(--paper-2); color: var(--ink); border: 1px solid var(--ink); }

/* Bars */
.pj-home .bar-pj { height: 6px; background: var(--paper-2); border: 1px solid var(--ink); }
.pj-home .bar-fill-pj-pos { display: block; height: 100%; background: var(--pos); }

/* Section num + headings */
.pj-home .section-num {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.7rem; letter-spacing: 0.22em; color: var(--cherry); font-weight: 600;
}
.pj-home .section-num-on-dark { color: var(--signal); }
.pj-home .heading-xl {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: clamp(2.4rem, 5.5vw, 4.5rem);
  font-weight: 800; line-height: 0.95; letter-spacing: -0.04em;
}
.pj-home .heading-lg {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: clamp(2rem, 4.5vw, 3.4rem);
  font-weight: 800; line-height: 0.97; letter-spacing: -0.035em;
}
.pj-home .heading-md {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 700; letter-spacing: -0.025em; line-height: 1.05;
}
.pj-home .italic-accent {
  font-family: 'Instrument Serif', serif;
  font-style: italic; font-weight: 400; color: var(--cherry);
}

/* Background grid */
.pj-home .bg-grid-h {
  background-image: repeating-linear-gradient(
    0deg, transparent 0, transparent 49px,
    rgba(10,10,10,0.04) 50px, rgba(10,10,10,0.04) 50px
  );
}

/* Animations */
@keyframes pj-fade-up { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
.pj-home .pj-fade-up { animation: pj-fade-up 0.55s ease-out both; }
.pj-home .pj-fade-up-delay-1 { animation: pj-fade-up 0.55s ease-out 0.12s both; }
@keyframes tickerScroll { to { transform: translateX(-50%); } }

/* === HERO === */
.pj-home .hero { position: relative; padding: 5rem 1.5rem 6rem; overflow: hidden; background: var(--paper); }
.pj-home .hero-grid {
  position: relative; display: grid; grid-template-columns: 1.3fr 1fr; gap: 4rem;
  max-width: 1320px; margin: 0 auto; align-items: center;
}
@media (max-width: 960px) { .pj-home .hero-grid { grid-template-columns: 1fr; gap: 3rem; } }
.pj-home .hero-eyebrow {
  display: flex; align-items: center; gap: 0.7rem;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.7rem; letter-spacing: 0.22em; color: var(--cherry);
  font-weight: 600; margin-bottom: 1.6rem;
}
.pj-home .dot { width: 4px; height: 4px; background: var(--ink); border-radius: 50%; }
.pj-home .hero-title {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: clamp(2.6rem, 7vw, 5.6rem);
  font-weight: 800; line-height: 0.95; letter-spacing: -0.045em;
  display: flex; flex-direction: column; gap: 0.05em;
}
.pj-home .line-italic {
  font-family: 'Instrument Serif', serif; font-style: italic; font-weight: 400;
  font-size: 0.95em; letter-spacing: -0.02em; margin-left: -0.05em; color: var(--cherry);
}
.pj-home .hero-stamp {
  position: relative; display: inline-block; align-self: flex-start;
  background: var(--ink); color: var(--paper);
  padding: 0.05em 0.35em 0.1em; margin-top: 0.15em;
  font-weight: 800; font-size: 0.62em;
}
.pj-home .stamp-mark {
  position: absolute; top: -0.55em; right: -0.7em;
  font-size: 0.5em; color: var(--signal); transform: rotate(15deg);
}
.pj-home .hero-lede {
  font-size: 1.12rem; line-height: 1.55; color: var(--ink-soft);
  max-width: 54ch; margin-top: 1.8rem;
}
.pj-home .price-block {
  display: flex; align-items: baseline; flex-wrap: wrap; gap: 0.6rem;
  margin-top: 1.8rem; padding: 0.9rem 1.2rem;
  background: var(--signal); border: 2px solid var(--ink);
  box-shadow: 5px 5px 0 var(--ink); width: fit-content;
  text-decoration: none; color: inherit; cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.pj-home .price-block:hover { transform: translate(-2px, -2px); box-shadow: 7px 7px 0 var(--ink); }
.pj-home .price-block-center { margin-left: auto; margin-right: auto; }
.pj-home .price-old {
  font-family: 'JetBrains Mono', monospace; font-size: 1.1rem; color: var(--ink-mid);
  text-decoration: line-through; text-decoration-thickness: 2px;
}
.pj-home .price-arrow { font-family: 'JetBrains Mono', monospace; color: var(--ink); }
.pj-home .price-now {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: 2.2rem; font-weight: 800; letter-spacing: -0.04em; color: var(--ink); line-height: 1;
}
.pj-home .price-tag {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.68rem; letter-spacing: 0.08em; text-transform: uppercase;
  color: #1f2a44; width: 100%;
}
.pj-home .micro-trust { margin-top: 1.6rem; font-size: 0.78rem; letter-spacing: 0.06em; color: var(--ink-mid); }

/* mock card */
.pj-home .hero-right { position: relative; }
.pj-home .mock-frame {
  background: var(--paper-2); border: 1px solid var(--ink);
  box-shadow: 12px 12px 0 var(--ink); transform: rotate(0.8deg); transition: transform 0.4s;
}
.pj-home .mock-frame:hover { transform: rotate(0) translateY(-4px); box-shadow: 16px 16px 0 var(--cherry); }
.pj-home .mock-bar { background: var(--ink); display: flex; align-items: center; gap: 0.5rem; padding: 0.55rem 0.9rem; }
.pj-home .mock-dot { width: 10px; height: 10px; border-radius: 50%; display: block; }
.pj-home .mock-url {
  margin-left: 0.5rem; font-family: 'JetBrains Mono', monospace;
  font-size: 0.65rem; color: rgba(245,241,232,0.55); letter-spacing: 0.1em; flex: 1;
}
.pj-home .mock-time { font-family: 'JetBrains Mono', monospace; font-size: 0.7rem; color: var(--signal); }
.pj-home .mock-body { background: white; padding: 1.4rem 1.4rem 1.6rem; display: flex; flex-direction: column; gap: 1rem; }
.pj-home .mock-meta { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.pj-home .mock-q {
  font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700;
  font-size: 1.1rem; letter-spacing: -0.015em; line-height: 1.25; color: var(--ink);
}
.pj-home .mock-illu {
  background: linear-gradient(135deg, var(--paper-2), var(--paper-3));
  border: 1px solid var(--ink); aspect-ratio: 16 / 9; display: grid; place-items: center;
}
.pj-home .illu-icon { font-size: 4rem; }
.pj-home .mock-options { display: flex; flex-direction: column; gap: 0.55rem; }
.pj-home .opt {
  display: flex; align-items: center; gap: 0.7rem; background: white;
  border: 1px solid var(--ink); padding: 0.7rem 0.9rem; text-align: left; cursor: pointer;
  font-size: 0.95rem; position: relative;
}
.pj-home .opt:hover { background: var(--paper-2); }
.pj-home .opt-letter {
  width: 26px; height: 26px; display: grid; place-items: center;
  background: var(--paper-2); border: 1px solid var(--ink);
  font-family: 'JetBrains Mono', monospace; font-weight: 700;
}
.pj-home .opt-active { background: var(--signal); border-color: var(--ink); }
.pj-home .opt-active .opt-letter { background: var(--ink); color: var(--signal); }
.pj-home .opt-stamp {
  margin-left: auto; font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem; letter-spacing: 0.16em; background: var(--pos); color: white;
  padding: 0.2rem 0.5rem; transform: rotate(-2deg);
}
.pj-home .opt-text { font-weight: 600; }
.pj-home .mock-progress {
  display: flex; align-items: center; gap: 0.7rem;
  padding-top: 0.6rem; border-top: 1px dashed var(--line);
  color: var(--ink-mid); letter-spacing: 0.08em;
}
.pj-home .floating-stamp {
  display: none; position: absolute; bottom: -1.5rem; left: -2rem;
  background: var(--paper); border: 1px solid var(--ink); padding: 0.7rem 1rem;
  box-shadow: 6px 6px 0 var(--cherry);
  flex-direction: column; gap: 0.1rem; text-align: center; transform: rotate(-3deg);
}
@media (min-width: 1100px) { .pj-home .floating-stamp { display: flex; } }
.pj-home .floating-stamp .font-mono { font-size: 0.55rem; letter-spacing: 0.18em; color: var(--ink-mid); }
.pj-home .floating-stamp .font-display { font-size: 2.2rem; font-weight: 800; letter-spacing: -0.04em; color: var(--cherry); }

/* === TICKER STRIP === */
.pj-home .ticker-strip {
  background: var(--signal); border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink);
  overflow: hidden; transform: rotate(-1.5deg) translateX(-2%); width: 104%; margin-left: -2%;
}
.pj-home .ticker-strip .ticker-track {
  font-family: 'JetBrains Mono', monospace; font-weight: 700;
  font-size: 1rem; letter-spacing: 0.08em; padding: 0.6rem 0;
  animation: tickerScroll 50s linear infinite; white-space: nowrap; display: flex;
}
.pj-home .ticker-strip .ticker-track > span { padding-right: 2.5rem; flex-shrink: 0; }

/* === DUEL === */
.pj-home .duel { padding: 6rem 1.5rem; border-bottom: 1px solid var(--line); background: var(--paper); }
.pj-home .duel-inner { max-width: 880px; margin: 0 auto; }
.pj-home .duel-inner > .section-num { margin-bottom: 1rem; display: block; }
.pj-home .duel-inner > .heading-xl { margin-bottom: 2.2rem; }
.pj-home .versus { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 0 2.4rem; }
.pj-home .versus-col { display: grid; grid-template-rows: subgrid; grid-row: span 4; }
.pj-home .versus-col-mk { background: var(--signal); border: 2px solid var(--ink); box-shadow: 10px 10px 0 var(--ink); color: var(--ink); }
.pj-home .versus-col-them { border: 1px dashed var(--ink-soft); color: var(--ink-soft); }
.pj-home .versus-head { padding: 1.1rem 1.5rem 1rem; display: flex; flex-direction: column; gap: 0.2rem; }
.pj-home .versus-col-mk .versus-head { background: var(--ink); color: var(--signal); }
.pj-home .versus-col-them .versus-head { border-bottom: 1px dashed var(--ink-soft); }
.pj-home .versus-name {
  font-family: 'JetBrains Mono', monospace; font-weight: 800; font-size: 0.95rem;
  letter-spacing: 0.14em; text-transform: uppercase;
}
.pj-home .versus-sub {
  font-family: 'JetBrains Mono', monospace; font-size: 0.58rem;
  letter-spacing: 0.22em; text-transform: uppercase; opacity: 0.6;
}
.pj-home .versus-row {
  padding: 1.25rem 1.5rem; display: grid;
  grid-template-columns: 1fr auto; grid-template-rows: auto auto;
  column-gap: 1rem; row-gap: 0.45rem; align-content: start;
}
.pj-home .versus-col-mk .versus-row + .versus-row { border-top: 1px dashed rgba(26,26,26,0.35); }
.pj-home .versus-col-them .versus-row + .versus-row { border-top: 1px dashed var(--ink-soft); }
.pj-home .versus-label {
  grid-column: 1; font-family: 'JetBrains Mono', monospace;
  font-size: 0.58rem; font-weight: 700; letter-spacing: 0.18em;
  text-transform: uppercase; opacity: 0.65; line-height: 1.5;
}
.pj-home .versus-val { grid-column: 1; font-size: 1.02rem; line-height: 1.45; }
.pj-home .versus-col-them .versus-val { font-size: 0.92rem; }
.pj-home .versus-val s { opacity: 0.55; font-weight: 400; }
.pj-home .versus-mark {
  grid-column: 2; grid-row: 1 / span 2; align-self: center;
  width: 2rem; height: 2rem; display: grid; place-items: center;
  font-weight: 700; font-size: 1rem;
}
.pj-home .versus-col-mk .versus-mark { background: var(--ink); color: var(--signal); }
.pj-home .versus-col-them .versus-mark { border: 1px solid var(--cherry); color: var(--cherry); }
.pj-home .versus-badge {
  position: absolute; left: 50%; top: 42%; transform: translate(-50%, -50%) rotate(-8deg);
  z-index: 2; width: 3.4rem; height: 3.4rem; display: grid; place-items: center;
  background: var(--paper); border: 2px solid var(--ink); border-radius: 50%;
  box-shadow: 4px 4px 0 var(--ink);
  font-family: 'JetBrains Mono', monospace; font-weight: 800; font-size: 0.95rem;
  letter-spacing: 0.08em; color: var(--ink);
}
.pj-home .duel-verdict {
  margin-top: 3.2rem; display: flex; align-items: center; gap: 1.7rem;
  border-top: 2px solid var(--ink); padding-top: 1.7rem;
}
.pj-home .duel-verdict-score {
  font-size: 2.8rem; font-weight: 800; line-height: 1;
  background: var(--ink); color: var(--signal);
  padding: 0.4rem 0.85rem 0.5rem; transform: rotate(-2deg);
  box-shadow: 5px 5px 0 var(--signal); flex-shrink: 0;
}
.pj-home .duel-verdict-txt { display: flex; flex-direction: column; gap: 0.35rem; }
.pj-home .duel-verdict-eyebrow { font-size: 0.62rem; letter-spacing: 0.2em; color: var(--ink-soft); }
.pj-home .duel-verdict-txt em { font-family: 'Instrument Serif', serif; font-size: 1.18rem; color: var(--ink); }

/* === BENEFITS === */
.pj-home .benefits { padding: 7rem 1.5rem; border-bottom: 1px solid var(--line); background: var(--paper); }
.pj-home .benefits-head { max-width: 1320px; margin: 0 auto 3rem; }
.pj-home .benefits-head .section-num { display: block; margin-bottom: 1rem; }
.pj-home .benefits-grid {
  list-style: none; padding: 0; margin: 0 auto; max-width: 1320px;
  display: flex; flex-wrap: wrap; gap: 1px;
  background: var(--line); border: 1px solid var(--ink);
}
.pj-home .benefit-card {
  flex: 1 1 230px; background: var(--paper); padding: 2rem 1.8rem;
  display: flex; flex-direction: column; gap: 0.9rem; transition: background 0.3s;
}
.pj-home .benefit-card:hover { background: white; }
.pj-home .benefit-icon { font-size: 2.2rem; line-height: 1; }
.pj-home .benefit-text { font-size: 1.02rem; line-height: 1.5; color: var(--ink-soft); }

/* === PAIN === */
.pj-home .pain { padding: 7rem 1.5rem; background: var(--ink); color: var(--paper); }
.pj-home .pain-inner { max-width: 880px; margin: 0 auto; }
.pj-home .pain-inner > .heading-lg { margin-bottom: 2.5rem; }
.pj-home .pain-block { margin-bottom: 1.8rem; }
.pj-home .pain-label {
  display: inline-block; font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem; letter-spacing: 0.22em; color: var(--signal); margin-bottom: 0.5rem;
}
.pj-home .pain-block p { font-size: 1.08rem; line-height: 1.6; color: rgba(245,241,232,0.82); }
.pj-home .pain-accent {
  background: var(--cherry); color: white; border: 2px solid var(--paper);
  padding: 1.2rem 1.4rem; font-size: 1.05rem; line-height: 1.5; margin: 2rem 0 2.5rem;
  box-shadow: 6px 6px 0 rgba(0,0,0,0.3);
}
.pj-home .pain-accent strong { color: var(--signal); }

/* === ADVANTAGE === */
.pj-home .advantage {
  padding: 7rem 1.5rem; border-bottom: 1px solid var(--line);
  background: radial-gradient(circle at 80% 20%, rgba(245,208,66,0.12), transparent 50%), var(--paper);
}
.pj-home .advantage-grid {
  max-width: 1320px; margin: 0 auto; display: grid;
  grid-template-columns: 1.2fr 1fr; gap: 4rem; align-items: center;
}
@media (max-width: 900px) { .pj-home .advantage-grid { grid-template-columns: 1fr; gap: 2.5rem; } }
.pj-home .advantage-text > .section-num { display: block; margin-bottom: 1.2rem; }
.pj-home .advantage-sub {
  font-family: 'Instrument Serif', serif; font-style: italic; font-size: 1.25rem;
  color: var(--ink-mid); margin: 1.4rem 0; line-height: 1.4;
}
.pj-home .advantage-para { font-size: 1.05rem; line-height: 1.6; color: var(--ink-soft); margin-bottom: 1.1rem; }
.pj-home .advantage-para strong { color: var(--ink); }
.pj-home .advantage-accent {
  background: var(--ink); color: var(--paper); padding: 1rem 1.2rem;
  font-weight: 600; margin: 1.4rem 0 2rem; border-left: 4px solid var(--signal);
}
.pj-home .advantage-figure {
  background: var(--paper-2); border: 2px solid var(--ink);
  box-shadow: 10px 10px 0 var(--ink); padding: 1.4rem;
}
.pj-home .fig-head {
  font-family: 'JetBrains Mono', monospace; font-size: 0.65rem;
  letter-spacing: 0.18em; color: var(--ink-mid);
  padding-bottom: 0.9rem; border-bottom: 1px dashed var(--line); margin-bottom: 1rem;
}
.pj-home .fig-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.7rem; }
.pj-home .fig-list li { display: flex; align-items: center; gap: 0.8rem; font-size: 0.92rem; line-height: 1.3; color: var(--ink); }
.pj-home .fig-rate {
  flex-shrink: 0; font-family: 'JetBrains Mono', monospace;
  font-size: 0.7rem; font-weight: 700; padding: 0.25rem 0.5rem; width: 84px;
  text-align: center; color: white;
}
.pj-home .fig-hot { background: var(--cherry); }
.pj-home .fig-warn { background: var(--signal-deep); color: var(--ink); }
.pj-home .fig-foot {
  margin-top: 1rem; padding-top: 0.9rem; border-top: 1px dashed var(--line);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.6rem; letter-spacing: 0.16em; color: var(--ink-mid);
}

/* === AUDIENCE === */
.pj-home .audience { padding: 7rem 1.5rem; border-bottom: 1px solid var(--line); background: var(--paper); }
.pj-home .audience-head { max-width: 1100px; margin: 0 auto 3rem; }
.pj-home .audience-head .section-num { display: block; margin-bottom: 1rem; }
.pj-home .audience-grid {
  max-width: 1100px; margin: 0 auto; display: grid;
  grid-template-columns: 1fr 1fr; gap: 1.5rem;
}
@media (max-width: 760px) { .pj-home .audience-grid { grid-template-columns: 1fr; } }
.pj-home .audience-card {
  background: var(--paper-2); border: 2px solid var(--ink);
  box-shadow: 6px 6px 0 var(--ink); padding: 2rem 1.8rem;
  display: flex; flex-direction: column; gap: 0.8rem;
}
.pj-home .audience-icon { font-size: 2.4rem; line-height: 1; }
.pj-home .audience-card p { font-size: 1.02rem; line-height: 1.55; color: var(--ink-soft); }

/* === SPEED === */
.pj-home .speed { padding: 7rem 1.5rem; background: var(--ink); color: var(--paper); }
.pj-home .speed-inner { max-width: 1100px; margin: 0 auto; }
.pj-home .speed-inner > .section-num { display: block; margin-bottom: 1rem; }
.pj-home .speed-inner > .heading-lg { margin-bottom: 1.5rem; }
.pj-home .speed-lede {
  font-size: 1.08rem; line-height: 1.6; color: rgba(245,241,232,0.82);
  max-width: 70ch; margin-bottom: 3rem;
}
.pj-home .steps { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
@media (max-width: 760px) { .pj-home .steps { grid-template-columns: 1fr; } }
.pj-home .step {
  background: rgba(245,241,232,0.04); border: 1px solid rgba(245,241,232,0.18);
  padding: 1.8rem 1.5rem; display: flex; flex-direction: column; gap: 0.7rem;
}
.pj-home .step-num {
  font-family: 'Bricolage Grotesque', sans-serif; font-size: 3rem;
  font-weight: 800; line-height: 1; letter-spacing: -0.04em; color: var(--signal);
}
.pj-home .step-title {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: 1.3rem; font-weight: 700; color: var(--paper);
}
.pj-home .step-text { font-size: 0.98rem; line-height: 1.5; color: rgba(245,241,232,0.78); }

/* === ORIGIN === */
.pj-home .origin {
  padding: 7rem 1.5rem; border-bottom: 1px solid var(--line);
  background: radial-gradient(circle at 10% 80%, rgba(197,40,61,0.08), transparent 50%), var(--paper);
}
.pj-home .origin-inner { max-width: 820px; margin: 0 auto; }
.pj-home .origin-inner > .section-num { display: block; margin-bottom: 1rem; }
.pj-home .origin-inner > .heading-lg { margin-bottom: 1.8rem; }
.pj-home .origin-para { font-size: 1.1rem; line-height: 1.6; color: var(--ink-soft); margin-bottom: 1.2rem; }
.pj-home .origin-para strong { color: var(--ink); }

/* === PROOF === */
.pj-home .proof-social { padding: 7rem 1.5rem; border-bottom: 1px solid var(--line); background: var(--paper); }
.pj-home .proof-head { max-width: 1320px; margin: 0 auto 3rem; }
.pj-home .proof-head .section-num { display: block; margin-bottom: 1rem; }
.pj-home .proof-sub { font-size: 1.05rem; line-height: 1.55; color: var(--ink-soft); max-width: 66ch; margin-top: 1rem; }
.pj-home .proof-grid {
  max-width: 1320px; margin: 0 auto; display: grid;
  grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 1.5rem;
}
.pj-home .quote-card {
  position: relative; background: var(--paper-2); border: 2px solid var(--ink);
  box-shadow: 6px 6px 0 var(--ink); padding: 2.2rem 1.8rem 1.6rem; margin: 0;
  display: flex; flex-direction: column; gap: 1.2rem;
}
.pj-home .quote-mark {
  font-family: 'Instrument Serif', serif; font-size: 3.5rem; line-height: 0.5;
  color: var(--signal-deep); height: 1.2rem;
}
.pj-home .quote-card .quote-text { margin: 0; font-size: 1.02rem; line-height: 1.55; color: var(--ink); }
.pj-home .quote-card .quote-cap { display: flex; flex-direction: column; gap: 0.15rem; margin-top: auto; }
.pj-home .quote-name { font-weight: 700; color: var(--ink); }
.pj-home .quote-city { font-family: 'JetBrains Mono', monospace; font-size: 0.68rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-mid); }

/* === FAQ === */
.pj-home .faq { padding: 7rem 1.5rem; border-bottom: 1px solid var(--line); background: var(--paper); }
.pj-home .faq-head { max-width: 820px; margin: 0 auto 2.5rem; }
.pj-home .faq-head .section-num { display: block; margin-bottom: 1rem; }
.pj-home .faq-list {
  max-width: 820px; margin: 0 auto;
  border: 2px solid var(--ink); box-shadow: 8px 8px 0 var(--ink); background: var(--paper);
}
.pj-home .faq-item { border-bottom: 1px solid var(--line); }
.pj-home .faq-item:last-child { border-bottom: none; }
.pj-home .faq-item > summary {
  list-style: none; cursor: pointer; padding: 1.2rem 1.4rem;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700;
  font-size: 1.05rem; color: var(--ink);
}
.pj-home .faq-item > summary::-webkit-details-marker { display: none; }
.pj-home .faq-item > summary:hover { background: var(--paper-2); }
.pj-home .faq-item > summary::after {
  content: "+";
  font-family: 'JetBrains Mono', monospace; font-size: 1.4rem;
  color: var(--cherry); transition: transform 0.25s; flex-shrink: 0;
}
.pj-home .faq-item[open] > summary::after { transform: rotate(45deg); }
.pj-home .faq-a { padding: 0 1.4rem 1.4rem; font-size: 1.02rem; line-height: 1.6; color: var(--ink-soft); }

/* === ENDSIGN === */
.pj-home .endsign { padding: 7rem 1.5rem; background: var(--paper); border-top: 1px solid var(--line); }
.pj-home .endsign-frame {
  max-width: 1100px; margin: 0 auto; background: var(--signal);
  border: 6px solid var(--ink); padding: 4rem 3rem; position: relative;
  text-align: center; box-shadow: 16px 16px 0 var(--ink);
}
.pj-home .endsign-eyebrow {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.75rem; letter-spacing: 0.22em; font-weight: 700;
}
.pj-home .endsign-title {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: clamp(2.4rem, 6vw, 4.8rem); font-weight: 800;
  line-height: 0.95; letter-spacing: -0.04em; margin: 1.2rem 0 1.5rem;
}
.pj-home .endsign-lede {
  font-size: 1.05rem; line-height: 1.55; color: #1f2a44;
  max-width: 60ch; margin: 0 auto 1.8rem;
}
.pj-home .endsign-cta { display: flex; flex-direction: column; gap: 1rem; align-items: center; margin-top: 1.8rem; }
.pj-home .endsign-note { font-family: 'Instrument Serif', serif; font-style: italic; font-size: 1rem; color: #1f2a44; }

/* === MOBILE === */
@media (max-width: 600px) {
  .pj-home .hero { padding: 3rem 1rem 4rem; }
  .pj-home .hero-title { font-size: clamp(2rem, 9vw, 7rem); }
  .pj-home .hero-eyebrow { flex-wrap: wrap; gap: 0.4rem 0.6rem; font-size: 0.62rem; }
  .pj-home .hero-stamp { white-space: normal; word-break: break-word; }
  .pj-home .hero-lede { font-size: 1rem; }
  .pj-home .price-now { font-size: 1.9rem; }
  .pj-home .ticker-strip { transform: none; width: 100%; margin-left: 0; }
  .pj-home .ticker-strip .ticker-track { font-size: 0.8rem; }
  .pj-home .hero-right { display: none; }
  .pj-home .hero-grid { gap: 0; }
  .pj-home .duel { padding: 4rem 1rem; }
  .pj-home .versus { grid-template-columns: 1fr; row-gap: 1.1rem; }
  .pj-home .versus-col { grid-template-rows: auto; grid-row: auto; }
  .pj-home .versus-col-mk { box-shadow: 7px 7px 0 var(--ink); }
  .pj-home .versus-badge { position: static; transform: rotate(-8deg); justify-self: center; }
  .pj-home .duel-verdict { align-items: flex-start; gap: 1.2rem; }
  .pj-home .duel-verdict-score { font-size: 2.1rem; }
  .pj-home .benefits, .pj-home .pain, .pj-home .advantage,
  .pj-home .audience, .pj-home .speed, .pj-home .origin,
  .pj-home .proof-social, .pj-home .faq, .pj-home .endsign { padding: 4rem 1rem; }
  .pj-home .endsign-frame { padding: 3rem 1.5rem; box-shadow: 8px 8px 0 var(--ink); }
}

/* ============================================================
   Dopasowanie do bloków WordPressa (dopisywane przez zbuduj_css.py)
   ============================================================ */

/* WordPress dodaje odstępy między blokami – sekcje mają własne, więc je zerujemy */
.pj-home :is(p, h1, h2, h3, h4, ul, ol, li, details, div, section, article, aside) { margin-block: 0; }
.pj-home .wp-block-post-content { display: block; }

/* Kolory z dawnych stylów wpisanych w znaczniki */
.pj-home .c-signal { color: var(--signal); }
.pj-home .c-signal-deep { color: var(--signal-deep); }

/* Nagłówki na ciemnych sekcjach (wcześniej w motywie potomnym) */
.pj-home .pain .heading-lg,
.pj-home .speed .heading-lg { color: var(--paper); }

/* Etykieta nad tytułem: kropka zapisana jako znak „•”, wyświetlana jak dawniej (kółko 4 px) */
.pj-home .hero-eyebrow .dot { display: inline-block; font-size: 0; }

/* Dawne <span> są teraz akapitami – reguły „.karta p” z oryginału nie mogą ich nadpisać */
.pj-home .audience-card p.audience-icon { font-size: 2.4rem; line-height: 1; color: var(--ink); }
.pj-home .pain-block p.pain-label { font-size: 0.62rem; line-height: 1.7; color: var(--signal); }

/* Odpowiedzi w makiecie (dawniej przyciski z czcionką motywu) */
.pj-home .opt { font-family: var(--mono); font-weight: 600; letter-spacing: 1.4px; line-height: 1.7; }
.pj-home .opt-text { font-family: var(--mono); }
.pj-home .opt-stamp { line-height: 1.7; }

/* Blok ceny: cały kafel klikalny (link jest na kwocie) */
.pj-home .price-block { position: relative; }
.pj-home .price-block a { color: inherit; text-decoration: none; }
.pj-home .price-block a::after { content: ""; position: absolute; inset: 0; }
.pj-home .price-block strong { font-weight: 700; }

/* Przyciski: strzałka dodawana automatycznie */
.pj-home .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 1rem; }
.pj-home .wp-block-button__link::after { content: "→"; }
.pj-home .btn-pj > .wp-block-button__link { border-radius: 0; }
.pj-home .endsign-cta .wp-block-buttons { justify-content: center; }

/* Pasek z hasłami: tekst powielany skryptem motywu */
.pj-home .ticker-strip .ticker-track { margin: 0; }

/* Makieta aplikacji */
.pj-home .mock-bar::before {
  content: ""; flex-shrink: 0; width: 10px; height: 10px; border-radius: 50%;
  background: #d62b37; box-shadow: 18px 0 0 var(--signal-deep), 36px 0 0 var(--pos);
  margin-right: 36px;
}
.pj-home .mock-progress::after {
  content: ""; order: 1; flex: 1; height: 6px; border: 1px solid var(--ink);
  background: linear-gradient(90deg, var(--pos) 50%, var(--paper-2) 50%);
}
.pj-home .mock-progress > :last-child { order: 2; }
.pj-home .opt { cursor: default; }

/* Narożniki ramki na końcu strony */
.pj-home .endsign-frame::before {
  content: ""; position: absolute; inset: 14px; pointer-events: none;
  --c: radial-gradient(circle at 9px 9px, var(--cherry) 0 6px, var(--ink) 6.5px 9px, transparent 9.5px);
  background: var(--c) top left / 18px 18px no-repeat, var(--c) top right / 18px 18px no-repeat,
              var(--c) bottom left / 18px 18px no-repeat, var(--c) bottom right / 18px 18px no-repeat;
}
.pj-home .endsign-frame > * { position: relative; }

/* FAQ – znacznik i odstępy bloku „Szczegóły” */
.pj-home .faq-item > summary::-webkit-details-marker { display: none; }
.pj-home .faq-item > summary::marker { content: ""; }

/* Linki w treści sekcji (np. „Przeczytaj też”) */
.pj-home .origin-para a, .pj-home .advantage-para a { color: var(--ink); text-decoration-color: var(--cherry); text-underline-offset: 3px; }

/* Ograniczenie ruchu dla osób, które go nie chcą */
@media (prefers-reduced-motion: reduce) {
  .pj-home .pj-fade-up, .pj-home .pj-fade-up-delay-1 { animation: none; }
  .pj-home .ticker-strip .ticker-track { animation: none; }
}

/* ============================================================
   Strona „Utracone prawo jazdy” (klasy lp-*) – układ jak w dawnej wersji z Elementora
   ============================================================ */
.pj-home .lp-inner { max-width: 1140px; margin: 0 auto; }
.pj-home .lp-para { font-size: 1.02rem; line-height: 1.65; color: var(--ink-soft); margin-top: 1rem; }
.pj-home .lp-para strong { color: var(--ink); }
.pj-home .lp-center { text-align: center; }
.pj-home .lp-page .wp-block-buttons { margin-top: 1.8rem; }

.pj-home .lp-hero { padding: 4rem 1.5rem 5rem; }
.pj-home .lp-hero-grid { max-width: 1140px; margin: 0 auto; display: grid; grid-template-columns: 1.1fr 1fr; gap: 3.5rem; align-items: center; }
.pj-home .lp-title { font-size: clamp(2.6rem, 5.5vw, 4rem); font-weight: 800; line-height: .98; letter-spacing: -0.045em; }
.pj-home .lp-subtitle { font-size: clamp(1.5rem, 2.8vw, 2.1rem); font-weight: 700; line-height: 1.1; margin-top: 1.4rem; }
.pj-home .lp-lede { font-size: 1.02rem; line-height: 1.6; color: var(--ink-soft); margin-top: 1rem; }
.pj-home .lp-checks { margin-top: 1.6rem; display: grid; gap: .9rem; }
.pj-home .lp-check { position: relative; padding-left: 2rem; }
.pj-home .lp-check::before { content: "✓"; position: absolute; left: 0; top: .15rem; width: 1.2rem; height: 1.2rem; display: grid; place-items: center; border: 1.5px solid var(--cherry); color: var(--cherry); font-size: .75rem; font-weight: 700; }
.pj-home .lp-check-title { font-family: var(--display); font-weight: 700; font-size: 1.05rem; color: var(--ink); }
.pj-home .lp-check-text { font-size: .95rem; line-height: 1.5; color: var(--ink-soft); }
.pj-home .lp-hero-img { margin: 0; }
.pj-home .lp-hero-img img { width: 100%; height: auto; display: block; border: 2px solid var(--ink); box-shadow: 12px 12px 0 var(--ink); transform: rotate(.8deg); }

.pj-home .lp-split { padding: 6rem 1.5rem; }
.pj-home .lp-split-grid { max-width: 1140px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1.4fr; gap: 3rem; }
.pj-home .lp-split-text .lp-para:first-child { margin-top: 0; }

.pj-home .lp-cardsec { padding: 3rem 1.5rem 6rem; }
.pj-home .lp-card { max-width: 1140px; margin: 0 auto; }
.pj-home .lp-card { background: #fff; padding: 3rem 2.6rem; max-width: 560px; margin-left: max(0px, calc((100% - 1140px) / 2)); border: 2px solid var(--ink); box-shadow: 10px 10px 0 var(--ink); }

.pj-home .lp-steps { padding: 6rem 1.5rem; border-top: 1px solid var(--line); }
.pj-home .lp-steps .heading-lg { text-align: center; }
.pj-home .lp-step-grid { margin-top: 3rem; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
.pj-home .lp-step { text-align: center; display: flex; flex-direction: column; align-items: center; gap: .7rem; }
.pj-home .lp-step-num { width: 3.2rem; height: 3.2rem; display: grid; place-items: center; background: var(--ink); color: var(--signal); font-family: var(--display); font-weight: 800; font-size: 1.4rem; }
.pj-home .lp-step-title { font-family: var(--display); font-weight: 700; font-size: 1.15rem; line-height: 1.25; color: var(--ink); }
.pj-home .lp-step-text { font-size: .95rem; line-height: 1.55; color: var(--ink-soft); }
.pj-home .lp-steps .wp-block-buttons { justify-content: center; margin-top: 2.5rem; }

.pj-home .lp-dark { padding: 6rem 1.5rem; background: var(--ink); color: var(--paper); }
.pj-home .lp-dark .heading-lg, .pj-home .lp-dark .heading-md { color: var(--paper); }
.pj-home .lp-dark .italic-accent { color: var(--signal); }
.pj-home .lp-dark .lp-para { color: rgba(245, 241, 232, .82); }
.pj-home .lp-dark .lp-para strong { color: var(--signal); }
.pj-home .lp-offer { margin-top: 3.5rem; display: grid; grid-template-columns: 1fr 1.3fr; gap: 3rem; align-items: start; }
.pj-home .lp-stars { display: grid; }
.pj-home .lp-star { position: relative; padding: 1rem 0 1rem 2.2rem; border-bottom: 2px solid var(--cherry); }
.pj-home .lp-star::before { content: "★"; position: absolute; left: 0; top: 1rem; color: var(--paper); font-size: 1.1rem; }
.pj-home .lp-star .lp-check-title { color: var(--signal); }
.pj-home .lp-star .lp-check-text { color: rgba(245, 241, 232, .78); }

.pj-home .lp-proof { padding: 6rem 1.5rem; }
.pj-home .lp-quotes { margin-top: 2.5rem; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
.pj-home .lp-proof .heading-lg { text-align: center; }

.pj-home .lp-plain { padding: 5rem 1.5rem; border-top: 1px solid var(--line); }

.pj-home .lp-final { padding: 6rem 1.5rem; background: var(--ink); }
.pj-home .lp-final-box { max-width: 1000px; margin: 0 auto; background: var(--signal); border: 6px solid var(--ink); box-shadow: 0 0 0 2px var(--signal); padding: 3.5rem 2.5rem; text-align: center; }
.pj-home .lp-final-box .lp-para { color: #1f2a44; }
.pj-home .lp-final-box .wp-block-buttons { justify-content: center; }
.pj-home .lp-final-box .endsign-note { margin-top: 1.4rem; }

/* Bliżej dawnej wersji: lżejsze nagłówki, białe karty bez ramek, kroki w kółkach, FAQ jako lista */
.pj-home .lp-page .heading-lg { font-size: clamp(1.8rem, 3vw, 2.3rem); font-weight: 700; letter-spacing: -0.02em; line-height: 1.1; }
.pj-home .lp-page .heading-md { font-size: clamp(1.4rem, 2.2vw, 1.7rem); font-weight: 700; }
.pj-home .lp-card { border: 0; box-shadow: none; }
.pj-home .lp-page .quote-card { background: #fff; border: 0; box-shadow: none; text-align: center; align-items: center; }
.pj-home .lp-step-num { background: #fff; color: var(--ink); border-radius: 50%; width: 3.4rem; height: 3.4rem; font-size: 1.3rem; }
.pj-home .lp-plain { background: #fff; }
.pj-home .lp-final-box { border: 0; box-shadow: none; }
.pj-home .lp-page .faq-head .heading-xl { font-size: clamp(1.8rem, 3vw, 2.3rem); font-weight: 700; letter-spacing: -0.02em; }
.pj-home .lp-page .faq-list { border: 0; box-shadow: none; background: transparent; max-width: 1140px; }
.pj-home .lp-page .faq-head { max-width: 1140px; }
.pj-home .lp-page .faq-item { border-bottom: 1px solid var(--ink); }
.pj-home .lp-page .faq-item:last-child { border-bottom: 1px solid var(--ink); }
.pj-home .lp-page .faq-item > summary { padding-inline: 0; }
.pj-home .lp-page .faq-a { padding-inline: 0; }

@media (max-width: 900px) {
  .pj-home .lp-hero-grid, .pj-home .lp-split-grid, .pj-home .lp-offer { grid-template-columns: 1fr; gap: 2.5rem; }
  .pj-home .lp-step-grid, .pj-home .lp-quotes { grid-template-columns: 1fr; }
  .pj-home .lp-card { margin-left: auto; }
}
@media (max-width: 600px) {
  .pj-home .lp-hero, .pj-home .lp-split, .pj-home .lp-steps, .pj-home .lp-dark, .pj-home .lp-proof, .pj-home .lp-plain, .pj-home .lp-final { padding: 3.5rem 1rem; }
  .pj-home .lp-cardsec { padding: 1rem 1rem 3.5rem; }
  .pj-home .lp-card { padding: 2rem 1.4rem; box-shadow: 6px 6px 0 var(--ink); }
  .pj-home .lp-final-box { padding: 2.4rem 1.3rem; }
  .pj-home .lp-hero-img img { box-shadow: 6px 6px 0 var(--ink); }
}
