    /* ===================================================================
       Nowy wygląd landingu — design-tokeny i markup z designu Pikseo.
       Scope: klasy marketingowe (.seasonality, .process, .report-preview,
       .features, .faq-new, .site-footer-new). Sekcja wyników (#lpResults)
       i partiale (lp_footer / lead_limit_popup) używają style.css/landing.css.
       =================================================================== */
    .lp-design {
      --color-primary: #5a2fa8;
      --color-primary-dark: #3a1d72;
      --color-accent-text: #7c4db5;
      --color-accent: #e30e7d;
      --color-border: #e2e0e8;
      --color-border-focus: #8b5cf6;
      --color-text: #1a1a2e;
      --color-text-muted: #6b6b80;
      --color-bg: #ffffff;
      --color-bg-light: #f7f5ff;
      --color-bg-page: #f0edf8;
      --color-success: #22c55e;
      --color-disabled: #c4c4d0;
      --ease-out: cubic-bezier(0.4, 0, 0.2, 1);
      --duration-fast: 0.15s;
      --duration-base: 0.25s;
      --duration-slow: 0.4s;
      --heading: "Montserrat", system-ui, sans-serif;
      --text: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      --bg: #120725;
      --white: #f6f1ff;
      --muted: rgba(246, 241, 255, .68);
      --violet: var(--color-accent);
      --violet-soft: #f5418f;
      --green: #45c58d;
      font-family: var(--text);
      color: var(--color-text);
      background: var(--color-bg-page);
    }
    /* Box-sizing uniwersalnie — bezpieczny, layout designu na nim polega. */
    .lp-design *,
    .lp-design *::before,
    .lp-design *::after { box-sizing: border-box; }

    /* Targeted reset (zastąpił blanket .lp-design *{margin:0;padding:0}). Zerujemy
       margin/padding TYLKO na tagach z niezerowym defaultem UA / Bootstrap Reboot,
       realnie obecnych pod .lp-design (landing + #lpResults + partiale). Selektor
       .lp-design <tag> ma specyficzność (0,1,1) — reguły klasowe/elementowe niżej
       w pliku (np. .lp-design .step p, .lp-design h1.hero-h1) i tak je biją, więc
       typografia/odstępy designu bez zmian.
       UWAGA: nowy tag blokowy w markupie (blockquote/figure/fieldset/dl/pre/hr) NIE
       jest już auto-resetowany — dodaj go tu, jeśli zacznie być używany.
       body NIE jest wymieniony: <body class="lp-design"> to sam wrapper (brak
       zagnieżdżonego body), margines okna zeruje Bootstrap Reboot — tak samo jak
       przed zawężeniem (blanket .lp-design * też nigdy nie łapał samego body). */
    .lp-design h1,
    .lp-design h2,
    .lp-design h3,
    .lp-design h4,
    .lp-design h5,
    .lp-design h6,
    .lp-design p { margin: 0; }
    /* <article>/<section> nie mają realnego marginesu UA — zerujemy dla parytetu
       z poprzednim blanketem (do usunięcia, gdy potwierdzone że zbędne). */
    .lp-design article,
    .lp-design section { margin: 0; }
    /* Listy: UA margin pionowy + padding-left ~40px → 0 (chipy/menu/footer budują
       własny layout flex/grid bez wcięcia listy; list-style:none zostaje w klasach). */
    .lp-design ul,
    .lp-design ol,
    .lp-design li { margin: 0; padding: 0; }
    /* Tabela kalendarza (.table z Bootstrapa w #lpResults): padding komórek
       re-aplikuje Bootstrap .table (wyższa specyficzność) → render bez zmian. */
    .lp-design table,
    .lp-design th,
    .lp-design td { margin: 0; padding: 0; }
    /* button: UA dokłada margin/padding/border (.search-panel button itd. definiują
       własny box-model wyżej; .btn-y dziedziczą padding:0 jak przy blankecie). */
    .lp-design button { margin: 0; padding: 0; }

    .lp-design section[id],
    .lp-design div[id],
    .lp-design footer[id] { scroll-margin-top: 80px; }

    /* .lp-section to marker dla landing.js (show/hide wyników) — NIE usuwać.
       Legacy reguła z landing.css narzuca max-width:960px + margin:0 auto → bez tego
       override'u sekcje wracają do 960px wyśrodkowanych. Neutralizujemy wrapper: pełna
       szerokość, centrowanie zostaje na inner-kontenerach designu (.process-inner /
       .features-inner / .faq-inner itd.). */
    .lp-design .lp-section {
      max-width: none; width: 100%; margin: 0; padding: 0;
    }

    /* Wrapper sekcji wyników (#lpResults > .lp-results-inner). Jawne centrowanie
       kolumny (margin:auto, wyższa specyficzność). Bazowy max-width (1600px) zostaje
       w landing.css dla analyze_lead; sam widok publiczny zwężamy niżej (scope #lpResults),
       żeby raport nie był rozlazły. Marketingu NIE rusza. */
    .lp-design .lp-results-inner {
      margin-left: auto;
      margin-right: auto;
    }
    /* widok wyników: nav jest fixed (i wymuszany solidny — Task 3), więc górna treść
       (przycisk „Wróć do strony" + #heroSummary) potrzebuje odstępu pod paskiem.
       Analogicznie do #hero .hero-block (145px na transparentnym nav landingu);
       tu nav solidny (is-scrolled, niższy) → ~96px wystarcza. */
    /* max-width: węższa kolumna raportu na widoku publicznym (było 1600px z landing.css →
       rozlazłe). Scope #lpResults → NIE dotyka analyze_lead (też .lp-design .lp-results-inner). */
    .lp-design #lpResults .lp-results-inner { padding-top: 96px; max-width: 1100px; }

    /* Scroll-triggered entrance */
    .lp-design .fade-up {
      opacity: 0;
      transform: translateY(24px);
      transition: opacity var(--duration-slow) var(--ease-out),
                  transform var(--duration-slow) var(--ease-out);
    }
    .lp-design .fade-up.is-visible { opacity: 1; transform: none; }

    .lp-design .feat-card,
    .lp-design .feat-link,
    .lp-design .stat-item {
      transition: transform var(--duration-base) var(--ease-out),
                  box-shadow var(--duration-base) var(--ease-out);
    }
    .lp-design .feat-card:hover { transform: translateY(-3px); box-shadow: 0 8px 32px rgba(90, 47, 168, 0.12); }
    .lp-design .feat-link:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(90, 47, 168, 0.12); }
    .lp-design .report-cta-btn,
    .lp-design .feat-btn,
    .lp-design .search-panel button { transition: filter var(--duration-fast) var(--ease-out); }
    .lp-design .report-cta-btn:hover,
    .lp-design .feat-btn:hover,
    .lp-design .search-panel button:hover { filter: brightness(1.08); }
    .lp-design .partner,
    .lp-design .menu a { transition: opacity var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out); }
    .lp-design .partner:hover { opacity: 0.85; }

    /* ── HERO / SEASONALITY ── */
    .lp-design .seasonality {
      position: relative;
      min-height: 600px;
      display: flex;
      align-items: center;
      justify-content: center;
      isolation: isolate;
      overflow: hidden;
      background-image: linear-gradient(180deg, #2B1658 0%, #551C74 100%);
    }
    .lp-design .seasonality::before {
      content: ""; position: absolute; inset: 0; z-index: -3;
      background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px),
        linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px);
      background-size: 90px 90px;
      -webkit-mask-image: radial-gradient(circle at 50% 45%, #000, transparent 26%);
      mask-image: radial-gradient(circle at 50% 45%, #000, transparent 26%);
    }
    .lp-design .seasonality::after {
      content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
      background-image: radial-gradient(rgba(184, 143, 255, 0.85) 1.8px, transparent 1.8px);
      background-size: 15px 15px; opacity: 0.05;
      -webkit-mask-image:
        radial-gradient(circle 90px at calc(100% - 121px) 110px, #000 35%, transparent 100%),
        radial-gradient(circle 90px at 90px calc(100% - 97px), #000 35%, transparent 100%);
      mask-image:
        radial-gradient(circle 90px at calc(100% - 121px) 110px, #000 35%, transparent 100%),
        radial-gradient(circle 90px at 90px calc(100% - 97px), #000 35%, transparent 100%);
    }
    .lp-design .hero-block {
      width: min(calc(100% - 40px), 1780px);
      padding: 120px 0 64px;
      text-align: center;
      transform: translateY(-14px);
    }
    /* Główne hero (#hero / #leadHero): odstęp górny daje samo .hero-block.
       Wyzeruj dziedziczony padding sekcji z landing.css (.lp-hero 140/80),
       żeby nie sumować podwójnie. Nie dotyczy #bottom-cta (zachowuje swój padding). */
    .lp-design #hero,
    .lp-design #leadHero {
      padding-top: 0;
      padding-bottom: 0;
    }
    /* landing: nieco większy oddech nad treścią hero niż na widoku leada */
    .lp-design #hero .hero-block { padding-top: 145px; }
    /* sticky nav: full-width fixed, content w kolumnie 1780px przez padding (bez skoku przy zmianie stanu) */
    .lp-design .top-nav {
      position: fixed; top: 0; left: 0; right: 0; bottom: auto; width: 100%;
      z-index: 50; display: flex; align-items: center; justify-content: space-between; gap: 28px;
      padding: 28px max(20px, calc((100% - 1780px) / 2));
      /* reset leaking .lp-nav (style/landing.css) styles — nad hero nav jest przezroczysty, zlany z gradientem */
      background: transparent; border-bottom: 1px solid transparent;
      transition: background .28s var(--ease-out), padding .28s var(--ease-out),
                  box-shadow .28s var(--ease-out), border-color .28s var(--ease-out);
      backdrop-filter: none; -webkit-backdrop-filter: none; height: auto;
    }
    /* po przewinięciu poniżej hero: solidny biały pasek + ciemne kolory (białe logo/tekst znikłyby na jasnych sekcjach) */
    .lp-design .top-nav.is-scrolled {
      padding-top: 11px; padding-bottom: 11px;
      background: rgba(255, 255, 255, 0.72);
      -webkit-backdrop-filter: blur(12px) saturate(140%);
      backdrop-filter: blur(12px) saturate(140%);
      border-bottom-color: var(--color-border);
      box-shadow: 0 6px 20px rgba(26, 26, 46, .10);
    }
    .lp-design .top-nav.is-scrolled .top-logo { opacity: 1; filter: none; }
    .lp-design .top-nav.is-scrolled .menu a { color: var(--color-text-muted); }
    .lp-design .top-nav.is-scrolled .menu a:hover { color: var(--color-primary); }
    .lp-design .top-logo {
      display: block; width: clamp(128px, 9vw, 158px); height: auto;
      opacity: .92; filter: drop-shadow(0 8px 26px rgba(185, 73, 255, .18));
    }
    .lp-design .menu { display: flex; align-items: center; gap: 30px; }
    .lp-design .menu a {
      color: rgba(246, 241, 255, .68); font-size: 0.9375rem; line-height: 1;
      font-weight: 500; letter-spacing: -.01em; text-decoration: none; transition: color .2s ease;
    }
    .lp-design .menu a:hover { color: #fff; }
    .lp-design .nav-toggle { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
    .lp-design .hamburger {
      display: none; width: 42px; height: 42px; border-radius: 50%;
      border: 1px solid rgba(255, 255, 255, .10); background: rgba(70, 25, 105, .34);
      align-items: center; justify-content: center; cursor: pointer; flex-direction: column; gap: 4px;
    }
    .lp-design .hamburger span,
    .lp-design .hamburger::before,
    .lp-design .hamburger::after {
      content: ""; display: block; width: 18px; height: 2px; border-radius: 999px;
      background: rgba(246, 241, 255, .82); transition: transform .2s ease, opacity .2s ease;
    }
    .lp-design .nav-toggle:checked + .hamburger span { opacity: 0; }
    .lp-design .nav-toggle:checked + .hamburger::before { transform: translateY(6px) rotate(45deg); }
    .lp-design .nav-toggle:checked + .hamburger::after { transform: translateY(-6px) rotate(-45deg); }
    /* na solidnym pasku hamburger musi być ciemny (jasne linie znikłyby na białym tle) */
    .lp-design .top-nav.is-scrolled .hamburger {
      border-color: var(--color-border); background: var(--color-bg-light);
    }
    .lp-design .top-nav.is-scrolled .hamburger span,
    .lp-design .top-nav.is-scrolled .hamburger::before,
    .lp-design .top-nav.is-scrolled .hamburger::after { background: var(--color-text); }
    .lp-design .badge {
      display: inline-flex; align-items: center; gap: 13px; height: 49px; padding: 0 26px;
      border-radius: 10px; border: 1px solid rgba(255, 255, 255, .16); background: rgba(255, 255, 255, .1);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, .14), 0 0 34px rgba(227, 10, 125, .2);
      color: #fff; font-size: 1rem; font-family: var(--heading); font-weight: 600; margin: 0 auto 51px;
    }
    .lp-design .badge::before {
      content: ""; width: 10px; height: 10px; border-radius: 50%;
      background: #f5418f; box-shadow: 0 0 18px 6px rgba(245, 65, 143, .62);
    }
    .lp-design h1.hero-h1 {
      max-width: 1010px; margin: 0 auto;
      font-size: clamp(2.75rem, 4.6vw, 3.75rem); line-height: 1.2;
      font-family: var(--heading); letter-spacing: -.035em; font-weight: 600;
      color: #fff; text-wrap: balance; text-shadow: 0 2px 22px rgba(255, 255, 255, .10);
    }
    .lp-design h1.hero-h1 .accent { color: var(--violet); text-shadow: 0 0 26px rgba(177, 57, 229, .22); }
    .lp-design .subhead {
      max-width: 760px; margin: 24px auto 60px; color: var(--muted);
      font-size: 1.1875rem; line-height: 1.48; font-weight: 500; letter-spacing: -.015em;
    }
    .lp-design .subhead strong { color: #fff; font-weight: 600; }

    /* ── SEARCH PANEL ── */
    .lp-design .search-panel {
      width: min(100%, 1080px); margin: 0 auto; padding: 27px 28px 26px; border-radius: 10px;
      border: 1px solid rgba(255, 255, 255, .85);
      background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(249, 245, 255, .95));
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, .95), 0 0 0 1px rgba(227, 10, 125, .08),
        0 0 70px rgba(245, 65, 143, .22), 0 34px 80px rgba(12, 4, 30, .42);
    }
    .lp-design .search-row { display: grid; grid-template-columns: 1fr 303px; gap: 19px; align-items: center; }
    .lp-design .input-wrap {
      height: 67px; display: flex; align-items: center; gap: 16px; padding: 0 24px; border-radius: 10px;
      border: 1px solid rgba(60, 70, 90, .12); background: #f6f7f9;
      box-shadow: inset 0 1px 3px rgba(38, 17, 70, .07);
      transition: border-color .2s ease, box-shadow .2s ease;
    }
    .lp-design .input-wrap:focus-within {
      border-color: rgba(245, 65, 143, .6);
      box-shadow: inset 0 1px 3px rgba(38, 17, 70, .07), 0 0 0 4px rgba(245, 65, 143, .16);
    }
    .lp-design .input-wrap svg { flex: 0 0 auto; color: var(--color-primary-dark); }
    .lp-design .search-panel input[type="text"] {
      width: 100%; border: 0; outline: 0; background: transparent; color: #261146;
      font: 500 1.1875rem/1 var(--text); letter-spacing: -.015em;
    }
    .lp-design .search-panel input[type="text"]::placeholder { color: rgba(38, 17, 70, .46); }
    .lp-design .search-panel button {
      height: 67px; border: 0; border-radius: 10px; display: inline-flex; align-items: center;
      justify-content: center; gap: 13px;
      background: linear-gradient(180deg, #52c89a 0%, #37ad80 100%);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), 0 14px 35px rgba(31, 181, 122, .25);
      color: #eefdf7; font: 600 1.1875rem/1 var(--text); letter-spacing: -.015em; cursor: pointer; white-space: nowrap;
    }
    .lp-design .search-panel button svg { width: 21px; height: 21px; filter: drop-shadow(0 0 8px rgba(255, 255, 255, .45)); }
    .lp-design .hint {
      margin-top: 18px; color: rgba(50, 28, 82, .66); text-align: left;
      font-size: 1.125rem; line-height: 1.45; font-weight: 500; letter-spacing: -.015em;
    }
    /* Chips renderowane przez landing.js (createChipController) */
    .lp-design .chips-dyn { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 19px; padding-left: 17px; }
    .lp-design .chips-dyn:empty { margin-top: 0; }
    .lp-design .chips-dyn .lp-chip {
      min-height: 42px; display: inline-flex; align-items: center; gap: 8px; padding: 0 16px;
      border-radius: 10px; border: 1px solid rgba(60, 70, 90, .12); background: #f6f7f9;
      color: #3a1f5e; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
      font-size: 0.95rem; font-weight: 600; letter-spacing: -.015em;
    }
    .lp-design .chips-dyn .lp-chip-x {
      border: 0; background: none; color: #e30e7d; font-size: 1rem; line-height: 1; cursor: pointer; padding: 0;
    }
    /* Statyczne chipy-podpowiedzi (klik wstawia frazę do inputu hero) */
    .lp-design .chip-hints { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 19px; padding-left: 17px; }
    .lp-design .chip-hint {
      min-height: 49px; display: inline-flex; align-items: center; gap: 11px; padding: 0 18px; border-radius: 10px;
      border: 1px solid rgba(60, 70, 90, .12); background: #f6f7f9; color: #3a1f5e;
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8); font-size: 1rem; font-weight: 600;
      letter-spacing: -.015em; cursor: pointer;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
    .lp-design .chip-hint:hover { transform: translateY(-2px); border-color: rgba(245, 65, 143, .6); box-shadow: 0 8px 20px rgba(150, 40, 214, .28); }
    .lp-design .chip-hint .plus { color: #e30e7d; font-size: 1.375rem; line-height: 1; }

    /* ── PARTNERS ── */
    .lp-design .partners-label {
      width: min(100%, 1780px); margin: 48px auto 18px; text-align: center; font-size: 0.75rem;
      font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255, 255, 255, 0.38);
    }
    .lp-design .partners {
      width: min(100%, 1780px); margin: 0 auto 0; display: flex; align-items: center; justify-content: center;
      color: rgba(255, 255, 255, .76);
    }
    .lp-design .partner {
      min-height: 40px; display: flex; align-items: center; gap: 15px; padding: 0 31px;
      border-right: 2px solid rgba(255, 255, 255, .12); text-align: left; font-size: 1rem;
      font-weight: 500; line-height: 1.05; letter-spacing: -.015em;
    }
    .lp-design .partner:last-child { border-right: 0; padding-right: 0; }
    .lp-design .partner:first-child { padding-left: 0; }
    .lp-design .partner small { display: block; margin-top: 6px; color: rgba(255, 255, 255, .56); font-size: 0.75rem; font-weight: 600; letter-spacing: .03em; }
    .lp-design .brand-logo { width: 34px; height: 34px; object-fit: contain; flex: 0 0 auto; }
    .lp-design .brand-logo.meta-logo { width: 43px; }
    .lp-design .partner-icon { width: 28px; height: 28px; color: rgba(214, 165, 255, .64); }

    /* ── PROCESS ── */
    .lp-design .process {
      position: relative; overflow: hidden; padding: 50px 20px; background: var(--color-bg-page);
      border-top: 1px solid rgba(25, 10, 45, .06);
    }
    .lp-design .process::before {
      content: ""; position: absolute; inset: 0;
      background-image:
        linear-gradient(rgba(124, 48, 196, .02) 1px, transparent 1px),
        linear-gradient(90deg, rgba(124, 48, 196, .02) 1px, transparent 1px);
      background-size: 34px 34px; mask-image: radial-gradient(circle at 50% 34%, #000 0%, transparent 64%); pointer-events: none;
    }
    .lp-design .process-inner { position: relative; z-index: 1; width: min(100%, 1780px); margin: 0 auto; }
    .lp-design .stats-row { display: flex; justify-content: center; gap: 52px; margin-bottom: 70px; color: #171126; }
    .lp-design .stat-item { display: flex; align-items: center; gap: 14px; min-width: 230px; }
    .lp-design .stat-icon {
      width: 55px; height: 55px; display: grid; place-items: center; border-radius: 5px;
      border: 1px solid rgba(115, 50, 217, .08); background: white; color: #f5418f; box-shadow: 0 4px 12px rgba(115, 50, 217, .05);
    }
    .lp-design .stat-icon img { width: 30px; height: 30px; object-fit: contain; }
    .lp-design .stat-copy strong { display: block; margin-bottom: 7px; font-family: var(--heading); font-size: 1.375rem; line-height: 1; font-weight: 600; }
    .lp-design .stat-copy span { display: block; font-size: 0.875rem; line-height: 1.35; font-weight: 500; color: rgba(23, 17, 38, .55); }
    .lp-design .section-kicker {
      margin-bottom: 22px; text-align: center; font-family: var(--heading); font-size: 0.875rem; line-height: 1;
      font-weight: 600; letter-spacing: .28em; text-transform: uppercase; color: #b8005f;
    }
    .lp-design .process h2,
    .lp-design .report-preview h2,
    .lp-design .faq-new h2 {
      text-align: center; font-family: var(--heading); font-size: clamp(2rem, 3.2vw, 2.75rem); line-height: 1.14;
      letter-spacing: -.035em; font-weight: 600; color: #171126;
    }
    .lp-design .process h2 span { color: var(--violet); }
    .lp-design .process-lead {
      max-width: 620px; margin: 18px auto 78px; text-align: center; color: rgba(23, 17, 38, .58);
      font-size: 1.3125rem; line-height: 1.45; font-weight: 500; letter-spacing: -.015em;
    }
    .lp-design .steps { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 54px; align-items: start; }
    .lp-design .steps::before {
      content: ""; position: absolute; left: 25%; right: 25%; top: 52px; height: 2px;
      background-image: linear-gradient(90deg, rgba(115, 50, 217, .10), rgba(115, 50, 217, .32) 20%, rgba(115, 50, 217, .32) 80%, rgba(115, 50, 217, .10));
      mask-image: repeating-linear-gradient(90deg, #000 0 11px, transparent 11px 22px);
    }
    .lp-design .step { position: relative; text-align: center; }
    .lp-design .step-number {
      position: absolute; top: -12px; left: calc(50% - 59px); z-index: 2; width: 34px; height: 34px;
      display: grid; place-items: center; border-radius: 8px; background: #e2f5ec; color: #1f9b62;
      font-family: var(--heading); font-size: 0.8125rem; font-weight: 600;
    }
    .lp-design .step-visual {
      width: 110px; height: 110px; margin: 0 auto 24px; display: grid; place-items: center; border-radius: 10px;
      border: 1px solid rgba(60, 70, 90, .1); background: #f6f7f9;
    }
    .lp-design .step-visual-inner {
      width: 58px; height: 58px; display: grid; place-items: center; border-radius: 9px;
      background: linear-gradient(180deg, #5a2fa8, #3a1d72); color: #fff;
      box-shadow: 0 6px 16px rgba(61, 24, 117, .28), inset 0 1px 0 rgba(255, 255, 255, .2);
    }
    .lp-design .step-visual-inner svg { width: 27px; height: 27px; }
    .lp-design .step h3 { margin-bottom: 15px; font-family: var(--heading); font-size: 1.3125rem; line-height: 1.22; font-weight: 600; color: #171126; letter-spacing: -.02em; }
    .lp-design .step p { max-width: 310px; margin: 0 auto; color: rgba(23, 17, 38, .58); font-size: 1rem; line-height: 1.75; font-weight: 500; letter-spacing: -.01em; }
    .lp-design .process-note {
      width: min(100%, 460px); min-height: 94px; margin: 72px auto 0; display: flex; align-items: center; gap: 22px;
      padding: 21px 24px; border-radius: 10px; border: 1px solid rgba(60, 70, 90, .1); background: #f6f7f9;
    }
    .lp-design .note-icon {
      width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 9px;
      background-image: linear-gradient(180deg, #5a2fa8 0%, #3a1d72 100%); color: #fff;
      box-shadow: 0 6px 16px rgba(61, 24, 117, .28), inset 0 1px 0 rgba(255, 255, 255, .2);
    }
    .lp-design .note-icon svg { width: 21px; height: 21px; }
    .lp-design .process-note strong { display: block; margin-bottom: 7px; font-family: var(--heading); font-size: 1.1875rem; line-height: 1.2; font-weight: 600; color: #171126; }
    .lp-design .process-note span { display: block; color: rgba(23, 17, 38, .58); font-size: 0.9375rem; line-height: 1.35; font-weight: 500; }

    /* ── REPORT PREVIEW (mock) ── */
    .lp-design .report-preview { position: relative; width: 100%; padding: 50px 0; background: var(--color-bg-page); border-top: 1px solid rgba(25, 10, 45, .06); }
    .lp-design .report-preview > .section-kicker,
    .lp-design .report-preview > h2,
    .lp-design .report-preview > .report-lead { padding-left: 20px; padding-right: 20px; }
    .lp-design .report-lead {
      max-width: 560px; margin: 14px auto 52px; text-align: center; color: rgba(23, 17, 38, .52);
      font-size: 1.1875rem; line-height: 1.45; font-weight: 500; letter-spacing: -.015em;
    }
    .lp-design .report-banner {
      position: relative; width: 100%; margin: 0 auto; overflow: hidden; isolation: isolate;
      background-image: linear-gradient(180deg, #2B1658 0%, #551C74 100%);
      border: 1px solid rgba(227, 10, 125, .12);
    }
    .lp-design .report-banner::before {
      content: ""; position: absolute; inset: 0; z-index: 0;
      background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px),
        linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px);
      background-size: 90px 90px;
      -webkit-mask-image: radial-gradient(circle at 50% 45%, #000, transparent 16%);
      mask-image: radial-gradient(circle at 50% 45%, #000, transparent 16%); pointer-events: none;
    }
    .lp-design .report-banner::after {
      content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
      background-image: radial-gradient(rgba(184, 143, 255, 0.85) 1.8px, transparent 1.8px);
      background-size: 15px 15px; opacity: 0.05;
      -webkit-mask-image:
        radial-gradient(circle 90px at calc(100% - 121px) 110px, #000 35%, transparent 100%),
        radial-gradient(circle 90px at 90px calc(100% - 97px), #000 35%, transparent 100%);
      mask-image:
        radial-gradient(circle 90px at calc(100% - 121px) 110px, #000 35%, transparent 100%),
        radial-gradient(circle 90px at 90px calc(100% - 97px), #000 35%, transparent 100%);
    }
    .lp-design .report-banner-inner {
      position: relative; z-index: 1; display: grid; grid-template-columns: 1.05fr 1fr; gap: 60px;
      align-items: center; padding: 64px 56px; max-width: 1780px; margin: 0 auto;
    }
    .lp-design .report-mockup { position: relative; width: 100%; max-width: 560px; margin: 0 auto; cursor: zoom-in; }
    .lp-design .report-mockup-img {
      position: relative; z-index: 1; display: block; width: 100%; height: 540px; object-fit: cover;
      object-position: top center; cursor: zoom-in; border-radius: 10px; border: 1px solid rgba(255, 255, 255, .14);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), 0 30px 70px rgba(0, 0, 0, .5);
    }
    .lp-design .report-mockup::before {
      content: ""; position: absolute; inset: 0; z-index: 2; border-radius: 10px;
      background:
        radial-gradient(circle at 50% 42%, rgba(255, 255, 255, .08), transparent 46%),
        linear-gradient(180deg, rgba(26, 13, 58, .5), rgba(26, 13, 58, .38));
      opacity: 0; transition: opacity var(--duration-base) var(--ease-out); pointer-events: none; will-change: opacity;
    }
    .lp-design .report-mockup::after {
      content: "+"; position: absolute; z-index: 3; top: 50%; left: 50%; width: 72px; height: 72px;
      display: grid; place-items: center; border-radius: 50%; background: rgba(255, 255, 255, .96);
      color: var(--color-primary); font-family: var(--heading); font-size: 2.25rem; font-weight: 600; line-height: 1;
      box-shadow: 0 10px 30px rgba(26, 13, 58, .45), 0 0 0 0 rgba(255, 255, 255, .35);
      transform: translate(-50%, -50%) scale(.6); opacity: 0;
      transition: opacity var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out);
      pointer-events: none; will-change: opacity, transform;
    }
    .lp-design .report-mockup:hover::before { opacity: 1; }
    .lp-design .report-mockup:hover::after {
      opacity: 1; transform: translate(-50%, -50%) scale(1);
      box-shadow: 0 10px 30px rgba(26, 13, 58, .45), 0 0 0 10px rgba(255, 255, 255, .14);
    }
    .lp-design .lightbox {
      position: fixed; inset: 0; z-index: 100; background: rgba(8, 3, 20, .88); display: flex; align-items: center;
      justify-content: center; padding: 5vh 5vw; opacity: 0; pointer-events: none; transition: opacity .22s ease;
    }
    .lp-design .lightbox.open { opacity: 1; pointer-events: auto; }
    .lp-design .lightbox-img {
      max-width: 100%; max-height: 100%; border-radius: 10px; box-shadow: 0 40px 100px rgba(0, 0, 0, .6);
      transform: scale(.94); transition: transform .25s ease;
    }
    .lp-design .lightbox.open .lightbox-img { transform: scale(1); }
    .lp-design .lightbox-close {
      position: absolute; top: 24px; right: 24px; width: 44px; height: 44px;
      border: 1px solid rgba(255, 255, 255, .14); background: rgba(255, 255, 255, .06); color: rgba(255, 255, 255, .88);
      font-size: 1.5rem; font-weight: 400; border-radius: 50%; cursor: pointer; display: grid; place-items: center; line-height: 1;
    }
    .lp-design .lightbox-close:hover { background: rgba(255, 255, 255, .12); }
    .lp-design .report-pill {
      display: inline-flex; align-items: center; gap: 13px; height: 49px; padding: 0 26px; border-radius: 10px;
      border: 1px solid rgba(255, 255, 255, .16); background: rgba(255, 255, 255, .1);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, .14), 0 0 34px rgba(227, 10, 125, .2);
      color: #fff; font-size: 1rem; font-family: var(--heading); font-weight: 600; margin-bottom: 30px;
    }
    .lp-design .report-pill::before {
      content: ""; width: 10px; height: 10px; border-radius: 50%; background: #f5418f; box-shadow: 0 0 18px 6px rgba(245, 65, 143, .62);
    }
    .lp-design .report-content h3 {
      font-family: var(--heading); font-size: clamp(2rem, 3.2vw, 2.75rem); line-height: 1.14; font-weight: 600;
      color: #fff; letter-spacing: -.03em; margin-bottom: 26px;
    }
    .lp-design .report-content h3 span { color: var(--violet); }
    .lp-design .report-cta-desc { color: rgba(246, 241, 255, .58); font-size: 1.0625rem; line-height: 1.6; font-weight: 500; letter-spacing: -.01em; margin-bottom: 42px; }
    .lp-design .report-cta-btn {
      display: flex; align-items: center; justify-content: center; gap: 12px; width: 100%; height: 60px; border: 0;
      border-radius: 10px; background: linear-gradient(90deg, #d4007a 0%, #e30e7d 100%);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 12px 28px rgba(80, 30, 160, .35);
      color: #fff; font: 600 1.125rem/1 var(--text); letter-spacing: -.01em; cursor: pointer; white-space: nowrap; max-width: 350px;
      text-decoration: none;
    }
    .lp-design .report-features {
      position: relative; z-index: 1; display: flex; border-top: 1px solid rgba(255, 255, 255, .06);
      color: rgba(246, 241, 255, .65); font-size: 0.9375rem; font-weight: 500; max-width: 1780px; margin: 0 auto;
      align-items: flex-start; padding: 0 20px;
    }
    .lp-design .report-feature { flex: 1; display: flex; align-items: center; justify-content: center; gap: 12px; padding: 22px 0; border-right: 1px solid rgba(255, 255, 255, .06); }
    .lp-design .report-feature:last-child { border-right: 0; }
    .lp-design .report-feature-icon {
      width: 36px; height: 36px; display: grid; place-items: center; border-radius: 5px; background: rgba(255, 255, 255, 0.1);
      border: 1px solid rgba(184, 143, 255, 0.28); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12); color: rgba(184, 143, 255, 0.95); flex-shrink: 0;
    }
    .lp-design .report-feature-icon svg { width: 16px; height: 16px; }

    /* ── FEATURES ── */
    .lp-design .features { position: relative; width: 100%; padding: 16px 0 50px; background: var(--color-bg-page); }
    .lp-design .features-inner { width: calc(100% - 40px); max-width: 1780px; margin: 0 auto; }
    .lp-design .features-row { display: grid; gap: 16px; margin-bottom: 16px; }
    .lp-design .features-row-top { grid-template-columns: 1.7fr 1fr; }
    .lp-design .features-row-bottom { grid-template-columns: repeat(4, 1fr); }
    .lp-design .feat-card { position: relative; border-radius: 10px; padding: 28px; overflow: hidden; }
    .lp-design .feat-card-light { background: #fff; border: 1px solid rgba(115, 50, 217, .09); }
    .lp-design .feat-icon-sq { width: 50px; height: 50px; border-radius: 10px; display: grid; place-items: center; margin-bottom: 22px; }
    .lp-design .feat-icon-sq svg { width: 24px; height: 24px; }
    .lp-design .feat-icon-violet,
    .lp-design .feat-icon-violet-dark,
    .lp-design .feat-icon-green,
    .lp-design .feat-icon-blue,
    .lp-design .feat-icon-pink {
      background: linear-gradient(180deg, #5a2fa8, #3a1d72); color: #fff;
      box-shadow: 0 6px 16px rgba(61, 24, 117, .28), inset 0 1px 0 rgba(255, 255, 255, .2);
    }
    .lp-design .feat-card h3 { font-family: var(--heading); font-size: 1.25rem; line-height: 1.2; font-weight: 600; color: #171126; letter-spacing: -.02em; margin-bottom: 8px; }
    .lp-design .feat-card p { color: rgba(23, 17, 38, .58); font-size: 0.875rem; line-height: 1.55; font-weight: 500; margin-bottom: 18px; }
    .lp-design .feat-hero { display: grid; grid-template-columns: 1fr 1.1fr; gap: 32px; align-items: stretch; background: #fff; border: 1px solid rgba(115, 50, 217, .09); padding: 32px; }
    .lp-design .feat-hero-left { display: flex; flex-direction: column; }
    .lp-design .feat-pill {
      display: inline-flex; align-items: center; gap: 8px; height: 32px; padding: 0 14px; border-radius: 999px;
      border: 1px solid rgba(60, 70, 90, .12); background: #f6f7f9; color: #52606d; font-size: 0.75rem; font-weight: 500;
      letter-spacing: -.005em; margin-bottom: 22px; width: fit-content;
    }
    .lp-design .feat-pill svg { width: 12px; height: 12px; color: #e30e7d; }
    .lp-design .feat-hero h3 { font-family: var(--heading); font-size: 2.375rem; line-height: 1.08; font-weight: 600; color: #171126; letter-spacing: -.025em; margin-bottom: 14px; }
    .lp-design .feat-hero h3 span { color: var(--violet); }
    .lp-design .feat-hero p { color: rgba(23, 17, 38, .58); font-size: 0.9375rem; line-height: 1.55; margin-bottom: 26px; }
    .lp-design .feat-btn {
      display: inline-flex; align-items: center; gap: 10px; height: 48px; padding: 0 22px; border-radius: 10px; border: 0;
      background: linear-gradient(90deg, #f0408f, #e30e7d); color: #fff; font-size: 0.875rem; font-weight: 600; cursor: pointer;
      width: fit-content; margin-top: auto; box-shadow: 0 10px 24px rgba(120, 50, 230, .25); text-decoration: none;
    }
    .lp-design .feat-btn svg { width: 14px; height: 14px; }
    .lp-design .feat-hero-right { display: flex; flex-direction: column; gap: 16px; }
    .lp-design .feat-chart-box { flex: 1; padding: 20px; border-radius: 10px; background: #f6f7f9; border: 1px solid rgba(60, 70, 90, .08); display: flex; flex-direction: column; }
    .lp-design .feat-chart-label { font-size: 0.75rem; color: rgba(23, 17, 38, .5); font-weight: 500; margin-bottom: 4px; }
    .lp-design .feat-chart-value { display: flex; align-items: center; gap: 10px; font-family: var(--heading); font-size: 2.125rem; font-weight: 600; color: #171126; letter-spacing: -.02em; line-height: 1; }
    .lp-design .feat-chart-value .trend { display: inline-flex; align-items: center; color: #45c58d; font-size: 1.375rem; }
    .lp-design .feat-chart-sub { font-size: 0.6875rem; color: rgba(23, 17, 38, .42); margin-top: 4px; margin-bottom: 14px; }
    .lp-design .feat-chart-svg { width: 100%; flex: 1; min-height: 80px; }
    .lp-design .feat-chart-months { display: flex; justify-content: space-between; font-size: 0.625rem; color: rgba(23, 17, 38, .45); margin-top: 6px; letter-spacing: .04em; }
    .lp-design .feat-source {
      display: inline-flex; align-items: center; gap: 8px; align-self: flex-end; padding: 8px 14px; border-radius: 999px;
      background: #f6f7f9; border: 1px solid rgba(60, 70, 90, .1); font-size: 0.6875rem; color: rgba(23, 17, 38, .6); font-weight: 500;
    }
    .lp-design .feat-source::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #45c58d; box-shadow: 0 0 8px rgba(69, 197, 141, .6); }
    .lp-design .feat-calendar { position: relative; }
    .lp-design .feat-card-head { display: flex; justify-content: space-between; align-items: flex-start; }
    .lp-design .feat-year-pill { height: 26px; padding: 0 12px; border-radius: 999px; background: #f6f7f9; color: #c10068; font-size: 0.75rem; font-weight: 600; display: inline-flex; align-items: center; }
    .lp-design .feat-bars { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; align-items: end; height: 130px; margin-bottom: 18px; }
    .lp-design .feat-bar { display: flex; flex-direction: column; align-items: center; gap: 6px; height: 100%; justify-content: flex-end; }
    .lp-design .feat-bar-pct { font-size: 0.6875rem; font-weight: 600; color: rgba(23, 17, 38, .60); letter-spacing: -.01em; }
    .lp-design .feat-bar-fill { width: 100%; background: linear-gradient(180deg, #e3d2f3, #d2b8ec); border-radius: 8px 8px 4px 4px; }
    .lp-design .feat-bar-fill.is-26 { height: 26%; }
    .lp-design .feat-bar-fill.is-30 { height: 30%; }
    .lp-design .feat-bar-fill.is-38 { height: 38%; }
    .lp-design .feat-bar-fill.is-50 { height: 50%; }
    .lp-design .feat-bar-fill.is-56 { height: 56%; }
    .lp-design .feat-bar-fill.is-72 { height: 72%; }
    .lp-design .feat-bar-fill.active { background: linear-gradient(180deg, #5a2fa8, #3a1d72); box-shadow: 0 4px 12px rgba(61, 24, 117, .3); }
    .lp-design .feat-bar-month { font-size: 0.6875rem; font-weight: 500; color: rgba(23, 17, 38, .55); }
    .lp-design .feat-link {
      display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 14px 18px; border-radius: 10px;
      border: 1px solid rgba(115, 50, 217, .12); background: #fff; color: #171126; font-family: inherit; font-size: 0.875rem; font-weight: 600; cursor: pointer; text-decoration: none;
    }
    .lp-design .feat-link svg { width: 16px; height: 16px; color: #c10068; }
    .lp-design .feat-card-small { display: flex; flex-direction: column; }
    .lp-design .feat-card-small .feat-card-body { margin-top: auto; }
    .lp-design .feat-cpc-stat { padding: 14px 16px; border-radius: 10px; background: #f6f7f9; border: 1px solid rgba(60, 70, 90, .08); }
    .lp-design .feat-cpc-stat .label { font-size: 0.75rem; color: rgba(23, 17, 38, .55); font-weight: 500; margin-bottom: 4px; }
    .lp-design .feat-cpc-stat .val { display: flex; align-items: baseline; gap: 8px; }
    .lp-design .feat-cpc-stat .val strong { font-family: var(--heading); font-size: 1.5rem; font-weight: 600; color: #171126; }
    .lp-design .feat-cpc-stat .val .delta { color: #45c58d; font-size: 0.75rem; font-weight: 600; }
    .lp-design .feat-heatmap-days { display: flex; justify-content: space-between; font-size: 0.625rem; color: rgba(23, 17, 38, .45); font-weight: 600; letter-spacing: .04em; margin-bottom: 6px; padding: 0 2px; }
    .lp-design .feat-heatmap-grid { display: grid; grid-template-columns: repeat(11, 1fr); gap: 3px; margin-bottom: 10px; }
    .lp-design .feat-heatmap-grid span { aspect-ratio: 1; border-radius: 3px; }
    .lp-design .hm-1 { background: #ece5fa; }
    .lp-design .hm-2 { background: #c9b2ef; }
    .lp-design .hm-3 { background: #9f72e2; }
    .lp-design .hm-4 { background: #7846cf; }
    .lp-design .hm-5 { background: #5a2fa8; }
    .lp-design .feat-heatmap-legend { display: flex; align-items: center; gap: 8px; font-size: 0.6875rem; color: rgba(23, 17, 38, .50); font-weight: 500; }
    .lp-design .feat-heatmap-legend .grad { flex: 1; height: 6px; border-radius: 3px; background: linear-gradient(90deg, #ece5fa, #5a2fa8); }
    .lp-design .feat-events { list-style: none; display: flex; flex-direction: column; gap: 8px; }
    .lp-design .feat-event { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; background: #f6f7f9; border: 1px solid rgba(60, 70, 90, .07); }
    .lp-design .feat-event-ic { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 6px; flex-shrink: 0; }
    .lp-design .feat-event-ic.up { background: #e2f5ec; color: #1f9b62; }
    .lp-design .feat-event-ic.star { background: #fff4e0; color: #d99020; }
    .lp-design .feat-event-ic.down { background: #fde5eb; color: #d9337b; }
    .lp-design .feat-event-ic svg { width: 12px; height: 12px; }
    .lp-design .feat-event-label { font-size: 0.8125rem; font-weight: 600; color: #171126; flex: 1; }
    .lp-design .feat-event-date { font-size: 0.6875rem; color: rgba(23, 17, 38, .55); font-weight: 500; }
    .lp-design .feat-event > svg { width: 12px; height: 12px; color: rgba(23, 17, 38, .35); }
    .lp-design .feat-phrases { display: flex; flex-wrap: wrap; gap: 6px; }
    .lp-design .feat-phrase { display: inline-flex; align-items: center; gap: 4px; padding: 6px 10px; border-radius: 999px; background: #f6f7f9; border: 1px solid rgba(60, 70, 90, .1); color: #52606d; font-size: 0.75rem; font-weight: 500; }
    .lp-design .feat-phrase svg { width: 10px; height: 10px; color: #1f9b62; }
    .lp-design .feat-phrase.more { background: #f6f7f9; border-color: rgba(60, 70, 90, .12); color: #c10068; }
    .lp-design .features-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 22px; border-radius: 10px; background: #f6f7f9; border: 1px solid rgba(60, 70, 90, .08); }
    .lp-design .features-footer p { display: flex; align-items: center; gap: 10px; font-size: 0.8125rem; color: rgba(23, 17, 38, .60); font-weight: 500; }
    .lp-design .features-footer p svg { width: 14px; height: 14px; color: #e30e7d; flex-shrink: 0; }
    .lp-design .features-footer a { display: inline-flex; align-items: center; gap: 6px; color: #c10068; font-size: 0.8125rem; font-weight: 600; text-decoration: none; white-space: nowrap; }
    .lp-design .features-footer a svg { width: 14px; height: 14px; }

    /* ── FAQ (struktura .lp-faq-item/.lp-faq-q dla landing.js) ── */
    .lp-design .faq-new { position: relative; width: 100%; padding: 60px 0 100px; background: var(--color-bg-page); }
    .lp-design .faq-inner { width: calc(100% - 40px); max-width: 880px; margin: 0 auto; }
    .lp-design .faq-lead { max-width: 560px; margin: 14px auto 48px; text-align: center; color: rgba(23, 17, 38, .52); font-size: 1.1875rem; line-height: 1.45; font-weight: 500; letter-spacing: -.015em; }
    .lp-design #faqList { display: flex; flex-direction: column; gap: 12px; }
    .lp-design .lp-faq-item {
      background: #fff; border: 1px solid rgba(115, 50, 217, .09); border-radius: 10px; overflow: hidden;
      transition: border-color .22s ease, box-shadow .22s ease;
    }
    .lp-design .lp-faq-item:hover { border-color: rgba(115, 50, 217, .18); }
    .lp-design .lp-faq-item.open { border-color: rgba(115, 50, 217, .22); box-shadow: 0 4px 18px rgba(115, 50, 217, .07); }
    .lp-design .lp-faq-q {
      width: 100%; list-style: none; cursor: pointer; padding: 22px 24px; display: flex; align-items: center;
      justify-content: space-between; gap: 16px; font-family: var(--heading); font-size: 1.0625rem; font-weight: 600;
      color: #171126; letter-spacing: -.015em; background: none; border: 0; text-align: left;
    }
    .lp-design .faq-icon {
      flex-shrink: 0; width: 32px; height: 32px; border-radius: 50%; background: #f6f7f9; color: #5a2fa8;
      display: grid; place-items: center; transition: background .22s ease, color .22s ease, box-shadow .22s ease;
    }
    .lp-design .faq-icon svg { width: 14px; height: 14px; transition: transform .25s ease; }
    .lp-design .lp-faq-item.open .faq-icon { background: linear-gradient(180deg, #5a2fa8, #3a1d72); color: #fff; box-shadow: 0 4px 12px rgba(61, 24, 117, .3); }
    .lp-design .lp-faq-item.open .faq-icon svg { transform: rotate(180deg); }
    .lp-design .lp-faq-a { padding: 0 24px; max-height: 0; overflow: hidden; color: rgba(23, 17, 38, .60); font-size: 0.9375rem; line-height: 1.65; font-weight: 500; transition: max-height .28s ease, padding .28s ease; }
    .lp-design .lp-faq-item.open .lp-faq-a { padding: 0 24px 24px; max-height: 400px; }

    @media (max-width: 1220px) {
      .lp-design .stats-row { gap: 24px; }
      .lp-design .stat-item { min-width: 0; }
    }
    @media (max-width: 820px) {
      .lp-design .seasonality { min-height: 100vh; }
      .lp-design .hero-block { width: min(calc(100% - 40px), 1780px); padding: 125px 0 48px; }
      .lp-design .top-nav { padding: 18px 20px; }
      .lp-design .top-nav.is-scrolled { padding-top: 10px; padding-bottom: 10px; }
      .lp-design .top-logo { width: 118px; }
      .lp-design .menu {
        position: absolute; top: calc(100% + 14px); right: 0; width: 100%; display: flex; flex-direction: column;
        align-items: stretch; gap: 0; padding: 10px; border: 1px solid rgba(255, 255, 255, .08); border-radius: 10px;
        background: linear-gradient(180deg, rgba(74, 26, 111, .72), rgba(36, 10, 65, .78)); box-shadow: 0 22px 52px rgba(7, 2, 20, .28);
        opacity: 0; pointer-events: none; transform: translateY(-6px); transition: opacity .2s ease, transform .2s ease;
      }
      .lp-design .menu a { padding: 13px 14px; border-radius: 10px; font-size: 0.875rem; }
      .lp-design .menu a:hover { background: rgba(255, 255, 255, .06); }
      /* mobilny dropdown ma własne ciemne tło — linki zostają jasne nawet gdy pasek solidny */
      .lp-design .top-nav.is-scrolled .menu a { color: rgba(246, 241, 255, .82); }
      .lp-design .top-nav.is-scrolled .menu a:hover { color: #fff; }
      .lp-design .hamburger { display: flex; }
      .lp-design .nav-toggle:checked ~ .menu { opacity: 1; pointer-events: auto; transform: translateY(0); }
      .lp-design .badge { height: 42px; font-size: 0.9375rem; margin-bottom: 34px; }
      .lp-design h1.hero-h1 { font-size: clamp(1.875rem, 8.7vw, 2.25rem); line-height: 1.16; letter-spacing: -.03em; }
      .lp-design .subhead { margin: 24px auto 42px; font-size: 1.125rem; }
      .lp-design .search-panel { padding: 18px; }
      .lp-design .search-row { grid-template-columns: 1fr; }
      .lp-design .input-wrap,
      .lp-design .search-panel button { height: 58px; }
      .lp-design .search-panel input[type="text"],
      .lp-design .search-panel button { font-size: 1.0625rem; }
      .lp-design .hint { font-size: 0.9375rem; }
      .lp-design .chip-hints,
      .lp-design .chips-dyn { padding-left: 0; gap: 9px; }
      .lp-design .chip-hint { min-height: 42px; padding: 0 16px; font-size: 0.9375rem; width: 100%; }
      .lp-design .partners { margin-top: 34px; flex-wrap: wrap; gap: 18px 0; }
      .lp-design .partner { width: 50%; border-right: 0; font-size: 0.875rem; padding: 0; }
      .lp-design .partner:last-child { width: auto; padding-right: 16px; }
      .lp-design .process { padding: 82px 18px 90px; }
      .lp-design .stats-row { display: grid; grid-template-columns: 1fr; gap: 14px; margin-bottom: 56px; }
      .lp-design .stat-item { padding: 14px; border-radius: 10px; background: rgba(255, 255, 255, .035); }
      .lp-design .section-kicker { font-size: 0.75rem; letter-spacing: .20em; }
      .lp-design .process h2 { font-size: clamp(1.875rem, 8.5vw, 2.375rem); }
      .lp-design .process-lead { margin-bottom: 54px; font-size: 1.0625rem; }
      .lp-design .steps { grid-template-columns: 1fr; gap: 46px; }
      .lp-design .steps::before { display: none; }
      .lp-design .step-number { left: calc(50% - 58px); }
      .lp-design .step-visual { margin-bottom: 24px; }
      .lp-design .process-note { margin-top: 54px; align-items: flex-start; }
      .lp-design .report-preview { padding: 72px 0 60px; }
      .lp-design .report-preview > .section-kicker,
      .lp-design .report-preview > h2,
      .lp-design .report-preview > .report-lead { padding-left: 18px; padding-right: 18px; }
      .lp-design .report-banner-inner { grid-template-columns: 1fr; padding: 44px 24px 40px; gap: 40px; text-align: center; }
      .lp-design .report-mockup { max-width: 420px; }
      .lp-design .report-mockup-img { height: 440px; }
      .lp-design .report-features { flex-direction: column; font-size: 0.875rem; }
      .lp-design .report-feature { border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .06); padding: 14px 0; }
      .lp-design .report-feature:last-child { border-bottom: 0; }
      .lp-design .features-row-top,
      .lp-design .features-row-bottom { grid-template-columns: 1fr; }
      .lp-design .feat-hero { grid-template-columns: 1fr; gap: 24px; }
      .lp-design .feat-hero h3 { font-size: 1.75rem; }
      .lp-design .features-footer { flex-direction: column; align-items: flex-start; }
      .lp-design .faq-new { padding: 40px 0 70px; }
      .lp-design .lp-faq-q { padding: 18px 18px; font-size: 0.9375rem; }
      .lp-design .lp-faq-item.open .lp-faq-a { padding: 0 18px 18px; font-size: 0.875rem; }
    }
    @media (prefers-reduced-motion: reduce) {
      .lp-design *,
      .lp-design *::before,
      .lp-design *::after {
        animation-duration: .01ms !important; animation-iteration-count: 1 !important;
        transition-duration: .01ms !important; scroll-behavior: auto !important;
      }
    }

    /* ===================== STOPKA (site-footer-new) =====================
       Bazowe reguły (gradienty, maski, grid, spacing, kolory) przeniesione do
       redesign.css (wspólne z login). Tu zostaje TYLKO landing-scoped override
       dla różnic, które są load-bearing wizualnie w scope .lp-design:
       - nagłówki „Dane"/„Kontakt" w Montserrat (var(--heading)), nie Inter,
       - jawny var(--text)/font-weight 400 dla desc/kontakt/bar (spójność z resztą LP),
       - justify-content na social-link, :focus-visible na bar-link.
       Reszta (w tym .site-footer-new__bottom-logo img { width:120px }) z redesign.css. */
    .lp-design .site-footer-new__bottom-desc { font-family: var(--text); font-weight: 400; }
    .lp-design .site-footer-new__bottom-heading { font-family: var(--heading); }
    .lp-design .site-footer-new__bottom-dane p,
    .lp-design .site-footer-new__bottom-kontakt p { font-family: var(--text); }
    .lp-design .site-footer-new__social-link { justify-content: center; }
    .lp-design .site-footer-new__bar-link { font-family: var(--text); font-weight: 400; }
    .lp-design .site-footer-new__bar-link:focus-visible { color: #fff; }
    /* Box-model footera w scope .lp-design (wyższa specyficzność niż `.site-footer-new*`
       z redesign.css). Load-bearing brand spacing — zachowane po zawężeniu resetu:
       targeted reset nie rusza już <div>/<footer>/<p> footera, ale ta definicja zostaje
       jako docelowy padding/margin sekcji (bez niej treść dosunięta do lewej, logo ucięte). */
    .lp-design .site-footer-new { padding: 64px 40px; }
    .lp-design .site-footer-new__inner { margin: 0 auto; }
    .lp-design .site-footer-new__bottom-logo { margin-bottom: 20px; }
    .lp-design .site-footer-new__bottom-heading { margin: 0 0 20px; }
    .lp-design .site-footer-new__social { margin: 24px 0 0; }
    .lp-design .site-footer-new__bar { margin-top: 48px; padding-top: 24px; }
    @media (max-width: 1024px) { .lp-design .site-footer-new { padding: 48px 24px; } }
    @media (max-width: 600px)  { .lp-design .site-footer-new { padding: 40px 20px; } }

    /* ===================================================================
       SEKCJA WYNIKÓW (#lpResults) — Task 7B redesign.
       Scope .lp-design → wygrywa kaskadę nad style.css/landing.css (ładuje
       się ostatni) i NIE rusza widoków wewnętrznych (analyze/report/...),
       które używają tych samych klas z niescope'owanego style.css.
       =================================================================== */

    /* ── GATE: pogodzenie z istniejącym .gated-blur (style.css:678) ──
       style.css daje mechanizm „blur dzieci + wyłączony #gateCTA" — zachowujemy go,
       ale restyle do designu (.gate-mask z landing-gate.html): łagodniejszy blur(3px),
       gradient/maska fade na PEŁNEJ wysokości (nie tylko dolne 40%), wyższy max-height
       żeby atrapa-raport była widoczna pod kartą. JEDEN mechanizm, nie dwa konkurujące. */
    .lp-design .gated-blur { max-height: 1180px; }
    .lp-design .gated-blur > * {
      filter: blur(3px);
      -webkit-filter: blur(3px);
    }
    .lp-design .gated-blur::after {
      height: 100%;
      background: linear-gradient(
        180deg,
        transparent 0%,
        rgba(240, 237, 248, 0.10) 28%,
        rgba(240, 237, 248, 0.55) 66%,
        var(--color-bg-page) 100%
      );
      -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 22%);
      mask-image: linear-gradient(to bottom, transparent 0%, #000 22%);
    }

    /* ── FLOATING GATE-CARD (.gate-form-card z landing-gate.html:255) ──
       #gateCTA pozostaje .gate-bar (absolutne centrowanie + wyłączenie z blura
       przez .gated-blur > #gateCTA w style.css). Nakładamy wygląd karty z designu. */
    .lp-design #gateCTA.gate-form-card {
      background: var(--color-bg);
      border: 1.5px solid var(--color-border);
      border-radius: 10px;
      padding: 36px 40px 32px;
      text-align: left;
      backdrop-filter: none;
      -webkit-backdrop-filter: none;
      box-shadow:
        0 0 0 1px rgba(90, 47, 168, .06),
        0 20px 60px rgba(90, 47, 168, .12),
        0 4px 16px rgba(0, 0, 0, .06);
      /* Karta przesunięta 130px wyżej (baza .gate-bar = top:55%; translate(-50%,-50%)).
         Scope pod .lp-design — globalna .gate-bar jest współdzielona z analyze.html. */
      transform: translate(-50%, calc(-50% - 130px));
    }
    .lp-design .gate-form-card__eyebrow {
      display: inline-flex; align-items: center; gap: 7px;
      font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.1em;
      text-transform: uppercase; color: var(--color-accent-text); margin-bottom: 8px;
    }
    .lp-design .gate-form-card__eyebrow::before {
      content: ""; width: 6px; height: 6px; border-radius: 50%;
      background: var(--color-accent); flex-shrink: 0;
    }
    .lp-design .gate-form-card__title {
      font-family: var(--heading); font-size: clamp(1.125rem, 2.5vw, 1.4rem);
      font-weight: 600; color: var(--color-text);
    }
    .lp-design .gate-form-card__desc { color: var(--color-text-muted); }
    .lp-design #gateCTA.gate-form-card .gate-bar-form { max-width: none; }
    .lp-design #gateCTA.gate-form-card .btn-primary {
      background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
      border: none;
    }
    .lp-design #gateCTA.gate-form-card .btn-primary:hover:not(:disabled) { filter: brightness(1.08); }

    /* CTA „Wyślij raport na maila" — wyższy, spójny z inputami gate-bar-grid.
       Scope pod .lp-design — #gateSubmitBtn istnieje też w analyze.html (nie ruszamy). */
    .lp-design #gateSubmitBtn { min-height: 48px; padding-top: 14px; padding-bottom: 14px; }

    /* Przycisk „Wróć do strony" (#lpBackBtn) — ghost/pill w fiolecie brandu.
       ID unikatowe dla results_section.html; specyficzność (1,0,1) bije Bootstrap .btn. */
    .lp-design #lpBackBtn {
      display: inline-flex; align-items: center; gap: 8px;
      height: 40px; padding: 8px 18px; border-radius: 999px;
      border: 1.5px solid var(--color-primary); background: transparent;
      color: var(--color-primary); font-size: 0.875rem; font-weight: 600;
      transition: background-color var(--duration-fast) var(--ease-out),
                  border-color var(--duration-fast) var(--ease-out),
                  color var(--duration-fast) var(--ease-out);
      cursor: pointer;
    }
    .lp-design #lpBackBtn:hover:not(:disabled) {
      background: var(--color-bg-light); border-color: var(--color-accent-text);
    }
    .lp-design #lpBackBtn:focus-visible {
      outline: 2px solid var(--color-border-focus); outline-offset: 2px;
    }
    .lp-design #lpBackBtn i { font-size: 0.9em; }

    /* Season-cards przeniesione do results-redesign.css (.rd-results) — Task 8A.
       #lpResults ma teraz klasę rd-results, więc karty są stylizowane stamtąd. */

    /* ── HEATMAPA TEASER (#seasonalityHeatmap) — decyzja #2 (KOREKTA 2026-06-07).
       Pasek nierozmyty obok KPI+wykres. landing.js wstrzykuje <table class="table">
       z 1 wierszem „Grupa" × 12 mc; tło komórek pochodzi z lpHeatColor (NIE ruszamy).
       Tu tylko kontener/tabela: brand border/radius, nagłówek miesięcy, typografia. ── */
    /* Teaser = kh-style div-grid (landing.js:renderSeasonalityHeatmap), reużywa
       .rd-results .kh-* z results-redesign.css. Tu tylko neutralizujemy górny
       margines kh-table (zaprojektowany pod widoki wewnętrzne, gdzie siedzi pod
       wykresem) — tu jest jedyną treścią karty .card-light. */
    .lp-design .lp-heatmap .kh-table { margin-top: 0; }

    /* ── DECOY budget-bary (atrapa #budgetBarsContent) ── */
    .lp-design .decoy-bars { display: flex; flex-direction: column; gap: 10px; }
    .lp-design .decoy-bar { display: grid; grid-template-columns: 38px 1fr 52px; align-items: center; gap: 12px; }
    .lp-design .decoy-bar__label { font-size: 0.8125rem; font-weight: 600; color: var(--color-text-muted); }
    .lp-design .decoy-bar__track { height: 14px; border-radius: 999px; background: var(--color-bg-light); overflow: hidden; }
    .lp-design .decoy-bar__fill { display: block; height: 100%; border-radius: 999px; background: var(--color-primary); }
    .lp-design .decoy-bar__fill--up { background: var(--color-success); }
    .lp-design .decoy-bar__fill--down { background: #dc2626; }
    .lp-design .decoy-bar__pct { font-size: 0.8125rem; font-weight: 600; color: var(--color-text); text-align: right; font-variant-numeric: tabular-nums; }

    /* ── DECOY skala w kalendarzu (atrapa #calendarBody) ── */
    .lp-design .decoy-scale { height: 8px; border-radius: 999px; background: var(--color-bg-light); overflow: hidden; }
    .lp-design .decoy-scale > span { display: block; height: 100%; border-radius: 999px; background: var(--color-primary); }

    /* Hero-summary / KPI / .card-light przeniesione do results-redesign.css
       (.rd-results) — Task 8A. #lpResults ma teraz klasę rd-results. */
