/* LeadScout — site.css (kierunek: strona-src/DESIGN.md). Jasna strona z ciemnym pasem hero i ciemną stopką.
   Panel wtyczki: assets/panel.css (generowany z wtyczka/popup.html) — tych stylów tu nie zmieniamy. */
:root{
  /* jasny motyw wtyczki */
  --bg:#ffffff; --bg2:#f6f7fb; --line:#e4e7ef; --line2:#d3d8e4;
  --tx:#0d1220; --tx2:#4d5670; --tx3:#8d95ab; --tx-soft:#737b91;
  /* akcenty z ciemnego motywu wtyczki */
  --blue:#5b85f0; --blue2:#7b9df2; --violet:#818cf8; --violet2:#a78bfa;
  --accent:#3a6ae8;                 /* tekst i linki na białym (kontrast ≥ 4.5:1) */
  --grad:linear-gradient(110deg,var(--blue),var(--violet));        /* powierzchnie: ikony kroków, ramki */
  --grad-btn:linear-gradient(110deg,#3a6ae8,#6a5ae0);              /* przycisk główny i aktywne stany (biały tekst ≥ 4.5:1) */
  /* ciemny pas (hero, stopka) = ciemny motyw wtyczki */
  --night:#080b13; --night2:#0e1320; --n-line:rgba(255,255,255,.1); --n-tx:#eef1f7; --n-tx2:#a3acc0; --n-tx3:#7b849a;
  --marker:#ffe15a; --ok:#10a36b; --hot:#e5484d;
  --ff:"Geist",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
  --wrap:1200px; --gut:24px; --top-h:64px;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--top-h) + 16px);interpolate-size:allow-keywords}
body{margin:0;font-family:var(--ff);font-size:17px;line-height:1.6;color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
img,video{max-width:100%;height:auto;display:block}
a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:#2652c9}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
::selection{background:rgba(91,133,240,.25)}
h1,h2,h3,h4{margin:0;color:var(--tx);font-weight:600;letter-spacing:-.02em}
h3{font-size:1.12rem;line-height:1.3;letter-spacing:-.01em}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.muted{color:var(--tx2)}
.small{font-size:.88rem}
.skip{position:absolute;left:-999px;top:8px;background:var(--tx);color:#fff;padding:10px 14px;border-radius:8px;z-index:95}
.skip:focus{left:8px}
.tag-pro{font-size:.68rem;font-weight:600;color:var(--accent);border:1px solid rgba(58,106,232,.35);background:rgba(58,106,232,.07);border-radius:99px;padding:2px 8px;margin-left:8px;vertical-align:2px;letter-spacing:0}

/* ---------- przyciski ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;background:var(--grad-btn);color:#fff;font:600 .98rem/1.1 var(--ff);padding:13px 22px;border-radius:999px;border:0;text-decoration:none;cursor:pointer;white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 10px 24px -14px rgba(58,106,232,.9);transition:transform .2s var(--ease),box-shadow .2s,filter .2s}
.btn:hover{color:#fff;transform:translateY(-1px);filter:brightness(1.06)}
.btn:disabled{opacity:.6;cursor:progress;transform:none}
.btn.ghost{background:#fff;color:var(--tx);box-shadow:inset 0 0 0 1px var(--line2)}
.btn.ghost:hover{color:var(--tx);box-shadow:inset 0 0 0 1px var(--tx3);filter:none}
.btn.sm{min-height:44px;padding:9px 16px;font-size:.92rem}
/* przyciski wewnątrz panelu wtyczki mają własny styl (panel.css) — style strony nie mogą do nich przeciekać */
:where(.lsx) .btn{background:none;color:inherit;font:inherit;font-weight:700;padding:0;min-height:0;box-shadow:none;border-radius:var(--r-sm);text-decoration:none;line-height:inherit;cursor:default;filter:none}
:where(.lsx) .btn:hover{transform:none;box-shadow:none;color:inherit}

/* ---------- pasek u góry ---------- */
.top{position:fixed;top:0;left:0;right:0;z-index:60;background:rgba(255,255,255,.88);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border-bottom:1px solid var(--line);transition:background .25s,border-color .25s}
.top-in{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut);height:var(--top-h);display:flex;align-items:center;gap:32px}
.logo{display:flex;align-items:center;gap:9px;color:var(--tx);text-decoration:none;font-weight:600;font-size:1.06rem;letter-spacing:-.01em}
.logo:hover{color:var(--tx)}
.logo img{width:28px;height:28px;border-radius:7px}
.top-nav{display:flex;gap:26px;flex:1}
.top-nav a,.top .lang,.top .acc{color:var(--tx2);text-decoration:none;font-size:.93rem;transition:color .2s}
.top-nav a:hover,.top .lang:hover,.top .acc:hover{color:var(--tx)}
.top .right{display:flex;align-items:center;gap:20px;margin-left:auto}
.acc.in{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.acc.in::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px rgba(16,163,107,.18)}
.menu-btn{display:none;align-items:center;gap:9px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line2);background:#fff;color:var(--tx);font:600 .92rem var(--ff);cursor:pointer}
.mb-ico{display:grid;gap:4px;width:16px}.mb-ico i{display:block;height:1.6px;border-radius:2px;background:currentColor}
/* nad ciemnym pasem hero pasek jest ciemny; site.js dodaje body.past po zjechaniu na jasną część */
.home:not(.past) .top{background:rgba(8,11,19,.55);border-bottom-color:transparent}
.home:not(.past) .top .logo,.home:not(.past) .top-nav a:hover,.home:not(.past) .top .lang:hover,.home:not(.past) .top .acc:hover{color:var(--n-tx)}
.home:not(.past) .top-nav a,.home:not(.past) .top .lang,.home:not(.past) .top .acc{color:var(--n-tx2)}
.home:not(.past) .menu-btn{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:var(--n-tx)}
@media (max-width:1020px){.top-nav,.top .acc,.top .lang{display:none}.menu-btn{display:inline-flex}}
@media (max-width:760px){.top .top-cta{display:none}:root{--top-h:58px}}

/* arkusz menu (telefon i wąskie okna) */
.sheet{position:fixed;inset:0;z-index:90;background:rgba(8,11,19,.5);display:flex;justify-content:flex-end}
.sheet[hidden]{display:none}
.sheet-in{width:min(400px,100%);height:100%;overflow:auto;overscroll-behavior:contain;background:#fff;padding:10px 20px calc(28px + env(safe-area-inset-bottom));box-shadow:-30px 0 60px -30px rgba(8,11,19,.4);animation:sheetIn .22s var(--ease)}
@keyframes sheetIn{from{transform:translateX(24px)}}
.sheet-h{display:flex;align-items:center;justify-content:space-between;height:52px;margin-bottom:8px}
.sheet-x{width:44px;height:44px;border-radius:50%;border:1px solid var(--line2);background:#fff;color:var(--tx);display:grid;place-items:center;cursor:pointer}
.sheet-x svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.sheet ul{list-style:none;margin:0;padding:0}
.sheet-main a{display:flex;align-items:center;min-height:52px;font-size:1.2rem;font-weight:600;color:var(--tx);text-decoration:none;border-bottom:1px solid var(--line);letter-spacing:-.01em}
.sheet-t{font-size:.85rem;font-weight:500;color:var(--tx2);letter-spacing:0;margin:26px 0 6px}
.sheet-more a{display:flex;align-items:center;min-height:44px;color:var(--tx);text-decoration:none}
.sheet-acc{display:flex;flex-wrap:wrap;gap:10px}
.sheet-acc .btn{flex:1}
body.sheet-open{overflow:hidden}
@media (max-width:760px){.sheet-in{width:100%;box-shadow:none;animation-name:sheetUp}}
@keyframes sheetUp{from{transform:translateY(12px)}}

/* ---------- sekcje ---------- */
section{padding:112px 0;position:relative}
section.alt{background:var(--bg2)}
.h2{font-size:clamp(1.75rem,3.1vw,2.6rem);line-height:1.1;letter-spacing:-.03em;font-weight:600;max-width:28ch}
.h2 span{color:var(--tx-soft)}
@media (max-width:760px){section{padding:72px 0}}

/* ---------- hero (ciemny pas) ---------- */
section.hero{--tail:300px;background:linear-gradient(var(--night) calc(100% - var(--tail)),var(--bg) 0);color:var(--n-tx);padding:calc(var(--top-h) + 88px) 0 0;isolation:isolate}
section.hero::before{content:"";position:absolute;inset:0 0 var(--tail);z-index:-1;pointer-events:none;
  background:radial-gradient(60% 55% at 72% 100%,rgba(129,140,248,.26),transparent 70%),radial-gradient(50% 50% at 25% 95%,rgba(91,133,240,.24),transparent 70%),
             linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px) 0 0/100% 72px}
.hero-c{display:flex;flex-direction:column;align-items:center;text-align:center}
.h1{font-size:clamp(2.4rem,5.2vw,4.4rem);line-height:1.03;letter-spacing:-.045em;font-weight:600;color:var(--n-tx);max-width:16ch;margin:0 auto;text-wrap:balance}
.h1 .w{display:inline-block;animation:wIn .9s var(--ease) both;animation-delay:calc(.06s * var(--i) + .05s)}
@keyframes wIn{from{opacity:0;filter:blur(10px);transform:translateY(18px)}}
.hero-lead{font-size:1.15rem;line-height:1.55;color:var(--n-tx2);max-width:52ch;margin:22px auto 0;animation:fIn .9s .45s var(--ease) both}
section.hero .actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px;animation:fIn .9s .55s var(--ease) both}
section.hero .btn.ghost{background:rgba(255,255,255,.05);color:var(--n-tx);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
section.hero .btn.ghost:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}
section.hero .fine{margin:16px 0 0;color:var(--n-tx3);font-size:.88rem;animation:fIn .9s .6s var(--ease) both}
@keyframes fIn{from{opacity:0;transform:translateY(12px)}}
.hero-m{display:none}

/* scena: okno przeglądarki przecina krawędź ciemnego pasa */
.stage{position:relative;z-index:2;max-width:var(--wrap);margin:64px auto 0;padding:0 var(--gut);animation:fIn 1s .7s var(--ease) both}
.stage::before{content:"";position:absolute;left:10%;right:10%;top:-4%;height:60%;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,rgba(123,157,242,.5),rgba(167,139,250,.25) 55%,transparent);filter:blur(50px)}
.story-pp{position:absolute;right:calc(var(--gut) + 6px);top:-50px;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:var(--n-tx2);cursor:pointer;display:grid;place-items:center}
.story-pp:hover{color:var(--n-tx)}
.story-pp svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.story-pp .i-play{display:none;fill:currentColor;stroke:none}
.story-pp[aria-pressed=true] .i-play{display:block}.story-pp[aria-pressed=true] .i-pause{display:none}
.proof{padding:22px 0 8px;background:var(--bg)}
.proof .cap{color:var(--tx2);font-size:.85rem;margin:0}
.proof-t{margin:44px 0 0;padding-top:28px;border-top:1px solid var(--line);font-size:1.12rem;color:var(--tx2);max-width:70ch}
.proof-t b{font-size:clamp(1.6rem,2.6vw,2.2rem);font-weight:600;letter-spacing:-.03em;color:var(--tx);margin-right:.25em;font-variant-numeric:tabular-nums}

/* okno przeglądarki */
.br{position:relative;border-radius:14px;background:#0b0f19;border:1px solid rgba(255,255,255,.14);overflow:hidden;
  box-shadow:0 0 0 1px rgba(8,11,19,.6),0 60px 120px -50px rgba(8,11,19,.75),0 30px 90px -50px rgba(91,133,240,.55);text-align:left}
.br-tabs{display:flex;align-items:flex-end;gap:10px;height:40px;padding:0 12px;background:#05070c}
.br-dots{display:flex;gap:7px;align-self:center;margin-right:8px}.br-dots i{width:11px;height:11px;border-radius:50%;background:#2a3141}
.br-tab{display:flex;align-items:center;gap:8px;height:32px;padding:0 12px;min-width:0;max-width:260px;border-radius:9px 9px 0 0;background:#151b28;color:#d7dceb;font-size:12px;white-space:nowrap;overflow:hidden}
.br-tab em{font-style:normal;color:#6d7690;margin-left:10px}
.br-plus{color:#6d7690;font-size:16px;align-self:center}
.br-bar{display:flex;align-items:center;gap:12px;height:44px;padding:0 12px;background:#151b28;border-bottom:1px solid #222a3a}
.br-nav{display:flex;gap:14px}.br-nav i{width:9px;height:9px;border-left:2px solid #7c869f;border-bottom:2px solid #7c869f;transform:rotate(45deg)}
.br-nav .a2{transform:rotate(-135deg);opacity:.4}.br-nav .a3{width:11px;height:11px;border:2px solid #7c869f;border-right-color:transparent;border-radius:50%;transform:none}
.br-url{flex:1;min-width:0;display:flex;align-items:center;gap:8px;height:30px;padding:0 14px;border-radius:99px;background:#0b0f19;color:#c8cfe0;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.br-url svg{width:12px;height:12px;flex:0 0 12px;fill:none;stroke:#7c869f;stroke-width:2.4}
.br-ext{display:flex;align-items:center;gap:8px}
.br-puzzle{width:14px;height:14px;border:2px solid #7c869f;border-radius:3px}
.br-ls{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;transition:background .25s,box-shadow .25s}
.br-ls img{border-radius:5px}
.br.open .br-ls{background:rgba(91,133,240,.2);box-shadow:inset 0 0 0 1px rgba(91,133,240,.6)}
.br-av{width:26px;height:26px;border-radius:50%;background:#3a6ae8;color:#fff;font-size:12px;font-weight:600;display:grid;place-items:center}
.br-body{position:relative;height:600px;background:#fff}
.br-site{position:absolute;left:0;top:0;bottom:0;right:0;overflow:hidden;transition:right .7s var(--ease)}
.br.open .br-site{right:372px}
.br-scroll{transition:transform 1.8s cubic-bezier(.45,0,.2,1);will-change:transform}
.br-beam{position:absolute;left:0;right:0;top:-140px;height:140px;pointer-events:none;opacity:0;
  background:linear-gradient(180deg,transparent,rgba(91,133,240,.16) 70%,rgba(91,133,240,.55) 99%,transparent);transition:opacity .3s}
.br[data-p=scan] .br-beam{opacity:1;animation:beam 1.9s linear infinite}
@keyframes beam{from{top:-140px}to{top:100%}}
.br-side{position:absolute;top:0;right:0;bottom:0;width:372px;background:#080b13;border-left:1px solid #1e2739;transform:translateX(100%);transition:transform .7s var(--ease);display:flex;flex-direction:column}
.br.open .br-side{transform:none}
.br-side-h{display:flex;align-items:center;gap:7px;height:32px;flex:0 0 32px;padding:0 12px;background:#151b28;color:#c8cfe0;font-size:12px;border-bottom:1px solid #222a3a}
.br-side-h img{border-radius:3px}.br-side-h span{margin-left:auto;width:9px;height:9px;border-top:2px solid #7c869f;border-right:2px solid #7c869f;transform:rotate(45deg) translate(-2px,2px)}
.br-side .lsx{flex:1;min-height:0}
.br-cur{position:absolute;left:58%;top:78%;width:24px;height:24px;z-index:20;pointer-events:none;opacity:0;
  transition:left .95s cubic-bezier(.65,0,.35,1),top .95s cubic-bezier(.65,0,.35,1),opacity .35s,transform .15s;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 2.5l14 10.2-6.4.9-3.5 6.9z' fill='%23fff' stroke='%23000' stroke-width='1.3' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat 0 0/contain;filter:drop-shadow(0 3px 6px rgba(0,0,0,.45))}
.br-cur::after{content:"";position:absolute;left:-14px;top:-14px;width:28px;height:28px;border-radius:50%;border:2px solid rgba(91,133,240,.9);opacity:0;transform:scale(.4)}
.br-cur.click{transform:scale(.85)}
.br-cur.click::after{animation:ripple .55s ease-out}
@keyframes ripple{0%{opacity:1;transform:scale(.4)}100%{opacity:0;transform:scale(1.6)}}
.stage.still .br *{transition:none!important}

/* panel na stronie: stany, których we wtyczce pilnuje JS */
.lsx .main{opacity:1}
.lsx .nav{display:flex}
.lsx .chip-plan{display:inline-flex}
.lsx .btn-hero.press{transform:scale(.96);background:var(--brand-700)}
.lsx .live span{display:none}.lsx .live span.on{display:inline-block}
.lsx .sec.hid{display:none}
.lsx .msg-b.typing::after{content:"";display:inline-block;width:2px;height:1.05em;background:var(--brand-400);vertical-align:-2px;margin-left:1px;animation:blink 1s step-end infinite}
@keyframes blink{50%{opacity:0}}
.lsx-mini,.rx-out{height:auto;overflow:visible;display:flex;flex-direction:column;gap:10px}

/* strona firmy demonstracyjnej */
.nd{color:#1b2a3d;font:14px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:#fff}
.nd-nav{display:flex;align-items:center;gap:22px;padding:14px 28px;border-bottom:1px solid #edf1f6}
.nd-logo{display:flex;align-items:center;gap:8px;font-weight:800;color:#0f2a4a;font-size:15px;white-space:nowrap}
.nd-logo img{border-radius:5px}.nd-logo em{font-style:normal;color:#f26b1d}
.nd-links{display:flex;gap:18px;font-size:12.5px;color:#4b5a70;margin-left:auto}
.nd-cta{background:#f26b1d;color:#fff;font-weight:700;font-size:12px;padding:8px 13px;border-radius:6px;white-space:nowrap}
.nd-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:center;padding:34px 28px 32px;background:linear-gradient(#f4f7fb,#fff)}
.nd-kicker{display:block;color:#e2620f;font-weight:800;font-size:10.5px;letter-spacing:.07em;text-transform:uppercase}
.nd h4{font-size:27px;line-height:1.1;margin:8px 0 10px;color:#0f2a4a;font-weight:800;letter-spacing:-.02em}
.nd p{font-size:13.5px;color:#4b5a70;margin:0}
.nd-btns{display:flex;gap:10px;margin:16px 0 18px}
.nd-b1,.nd-b2{font-size:12px;font-weight:700;padding:9px 14px;border-radius:6px}
.nd-b1{background:#f26b1d;color:#fff}.nd-b2{border:1.5px solid #0f2a4a;color:#0f2a4a}
.nd-stats{display:flex;gap:26px}.nd-stats b{display:block;font-size:20px;color:#0f2a4a;line-height:1.1}.nd-stats small{font-size:11px;color:#6a788c}
.nd-art{position:relative;height:200px;border-radius:14px;background:#13325a;overflow:hidden;box-shadow:0 20px 40px -24px rgba(15,42,74,.6)}
.nd-line{position:absolute;left:16px;top:12px;font:600 10px system-ui;color:#c5d3e8;letter-spacing:.04em}
.nd-crane{position:absolute;left:42%;top:30px;width:90px;height:10px;background:#a9c3ea;border-radius:3px}
.nd-crane::before{content:"";position:absolute;left:40px;top:10px;width:8px;height:52px;background:#a9c3ea}
.nd-crane::after{content:"";position:absolute;left:-26px;top:10px;width:6px;height:26px;background:#f26b1d}
.nd-belt{position:absolute;left:18px;right:18px;bottom:44px;height:44px;overflow:hidden}
.nd-belt i{position:absolute;bottom:0;left:0;width:44px;height:30px;background:#f26b1d;border-radius:3px;animation:ndBox 4.8s linear infinite;animation-delay:calc(var(--d) * -1s)}
@keyframes ndBox{from{transform:translateX(-60px)}to{transform:translateX(560px)}}
.nd-rollers{position:absolute;left:18px;right:18px;bottom:30px;height:12px;border-radius:6px;background:#2f5a92;
  background-image:radial-gradient(circle at 8px 6px,#c5d3e8 3px,transparent 3.5px);background-size:28px 12px}
.nd-sec{padding:20px 28px;border-top:1px solid #edf1f6}
.nd-sec>small{display:block;font-weight:800;color:#0f2a4a;font-size:12px;margin-bottom:6px}
.nd-news{background:#fff8ef;box-shadow:inset 3px 0 0 #f26b1d}
.nd-team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.nd-person{border:1px solid #e6ebf1;border-radius:10px;padding:12px;display:grid;grid-template-columns:34px 1fr;column-gap:10px;align-items:center}
.nd-person i{grid-row:span 2;width:34px;height:34px;border-radius:50%;background:#dfe8f4;color:#0f2a4a;font:800 11px/34px system-ui;text-align:center;font-style:normal}
.nd-person b{font-size:13px;color:#0f2a4a}.nd-person small{font-size:11px;color:#6a788c}
.nd-foot{display:flex;flex-wrap:wrap;gap:6px 22px;padding:20px 28px 30px;background:#0f2a4a;color:#c9d4e3;font-size:12.5px}
.nd mark.hl{color:inherit;background:linear-gradient(var(--marker),var(--marker)) no-repeat 0 72%/0% 80%;padding:0 .12em;margin:0 -.12em;transition:background-size .6s var(--ease),color .3s;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.nd mark.hl.on{background-size:100% 80%}
.nd-foot mark.hl.on{color:#172033}

/* ---------- 2. jak to działa ---------- */
.how{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.how li{position:relative}
.how li:not(:last-child)::after{content:"";position:absolute;top:24px;left:64px;right:-24px;height:1px;background:linear-gradient(90deg,var(--blue2),var(--line))}
.how-ico{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--grad);color:#fff;margin-bottom:22px;box-shadow:0 12px 26px -14px rgba(91,133,240,.9)}
.how h3{font-size:1.2rem;margin-bottom:8px}
.how p{color:var(--tx2);margin:0;max-width:36ch}

/* ---------- 3. raport ---------- */
.chap{display:grid;grid-template-columns:400px minmax(0,1fr);gap:88px;margin-top:32px}
.chap-stage{position:sticky;top:calc(var(--top-h) + 24px);height:calc(100vh - var(--top-h) - 48px);max-height:700px;display:flex;align-items:center}
.chap-dev{position:relative;width:380px;height:100%;max-height:660px;border-radius:18px;overflow:hidden;border:1px solid #1e2739;
  box-shadow:0 40px 80px -40px rgba(8,11,19,.55),0 30px 70px -50px rgba(91,133,240,.6)}
.chap-dev .sec,.chap-dev .msg,.chap-dev .view,.chap-dev .pane{animation:none}
.chap-dev .fx{transition:opacity .5s var(--ease),filter .5s var(--ease),box-shadow .5s}
.chap-dev[data-f="1"] .fx:not(.f1),.chap-dev[data-f="2"] .fx:not(.f2),.chap-dev[data-f="3"] .fx:not(.f3),.chap-dev[data-f="4"] .fx:not(.f4){opacity:.16;filter:saturate(.2)}
.chap-dev[data-f="1"] .f1,.chap-dev[data-f="2"] .f2,.chap-dev[data-f="3"] .f3,.chap-dev[data-f="4"] .f4{box-shadow:0 0 0 1px rgba(123,157,242,.6),0 0 34px -8px rgba(129,140,248,.7)}
.chap-m{display:none}
.chap-list{padding:12vh 0 16vh}
.chap-i{min-height:58vh;display:flex;flex-direction:column;justify-content:center;padding-left:32px;border-left:1px solid var(--line2);position:relative;opacity:.35;transition:opacity .4s}
.chap-i::before{content:"";position:absolute;left:-1px;top:38%;height:0;width:2px;background:var(--grad);transition:height .4s var(--ease)}
.chap-i.on{opacity:1}.chap-i.on::before{height:24%}
.chap-i h3{font-size:clamp(1.5rem,2.4vw,2rem);letter-spacing:-.03em;line-height:1.12;margin-bottom:14px;max-width:20ch}
.chap-i p{color:var(--tx2);font-size:1.08rem;max-width:46ch;margin:0}
/* karta-przykład: klient / partner / konkurent */
.rx{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;align-items:start;margin-top:24px;padding:40px;border-radius:24px;background:#fff;border:1px solid var(--line)}
.rx-tx h3{font-size:1.5rem;letter-spacing:-.03em;margin-bottom:10px}
.rx-tx p{color:var(--tx2);margin:0 0 22px;max-width:44ch}
.rx-tabs{display:flex;flex-wrap:wrap;gap:8px}
.rx-tabs button,.ptabs button{min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--line2);background:#fff;color:var(--tx);font:500 .95rem var(--ff);cursor:pointer;transition:border-color .2s}
.rx-tabs button:hover,.ptabs button:hover{border-color:var(--tx3)}
.rx-tabs button[aria-selected=true],.ptabs button[aria-selected=true]{background:var(--grad-btn);border-color:transparent;color:#fff}
.rx-out{padding:16px;border-radius:18px;border:1px solid #1e2739;background:#080b13!important;font-size:13.5px}
.rx-out[hidden]{display:none}
.rx-out .sec-b,.rx-out .msg-b{font-size:13.5px}
.rx-out .msg-b{min-height:132px}
.rel-top{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.rel-top b{color:var(--tx-2);font-size:12px}
.parts-wrap{margin-top:72px}
.parts-wrap>h3{font-size:1.35rem;letter-spacing:-.02em;margin-bottom:20px}
.parts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;list-style:none;margin:0 0 16px;padding:0}
.parts li{background:#fff;padding:20px 20px 22px}
.parts b{display:block;font-weight:600;margin-bottom:6px}
.parts .tag-pro{margin-left:6px}
.parts p{margin:0;color:var(--tx2);font-size:.92rem;line-height:1.5}
.parts-acc{display:none}

/* ---------- 4. kampanie ---------- */
.camp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;margin-top:56px;align-items:start}
.camp-flow{list-style:none;margin:0;padding:0;counter-reset:cf}
.camp-flow li{position:relative;padding:0 0 30px 52px;counter-increment:cf}
.camp-flow li::before{content:counter(cf);position:absolute;left:0;top:-2px;width:32px;height:32px;border-radius:50%;background:var(--grad);color:#fff;font-weight:600;font-size:.9rem;display:grid;place-items:center}
.camp-flow li:not(:last-child)::after{content:"";position:absolute;left:15.5px;top:36px;bottom:4px;width:1px;background:var(--line2)}
.camp-flow h3{font-size:1.15rem;margin-bottom:6px}
.camp-flow p{color:var(--tx2);margin:0;max-width:46ch}
.camp-safe{display:flex;gap:16px;align-items:flex-start;margin-top:8px;padding:20px 22px;border-radius:16px;background:var(--bg2);border:1px solid var(--line)}
.camp-safe svg{flex:0 0 26px;width:26px;height:26px;fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.camp-safe h3{font-size:1rem;margin-bottom:4px}
.camp-safe p{margin:0;color:var(--tx2);font-size:.95rem}
.mailx{margin:0}
.mx-src{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px;font-size:.88rem;color:var(--tx2)}
.mx-chip{display:inline-flex;flex-wrap:wrap;gap:4px 10px;padding:7px 12px;border-radius:10px;background:var(--bg2);border:1px solid var(--line);color:var(--tx2)}
.mx-chip b{color:var(--tx);font-weight:600}
.mx-card{border-radius:20px;border:1px solid var(--line);background:#fff;padding:22px 24px 26px;box-shadow:0 30px 60px -44px rgba(13,18,32,.45)}
.mx-step{display:inline-block;font-size:.8rem;font-weight:600;color:var(--accent);background:rgba(58,106,232,.08);border-radius:99px;padding:3px 10px;margin-bottom:14px}
.mx-row{display:grid;grid-template-columns:72px 1fr;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.95rem}
.mx-row span{color:var(--tx2)}.mx-row b{font-weight:600}
.mx-b{padding-top:16px;font-size:1rem;line-height:1.65;color:var(--tx)}
.mx-b mark,.page mark{background:var(--marker);color:var(--tx);padding:0 .15em;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.mailx figcaption{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:.86rem;color:var(--tx2)}
.mx-key{width:18px;height:10px;border-radius:2px;background:var(--marker)}

/* ---------- 5. kalkulator ---------- */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:48px}
.calc-in,.calc-out{border-radius:20px;border:1px solid var(--line);background:#fff;padding:32px}
.slider{margin-bottom:26px}.slider:last-child{margin-bottom:0}
.slider label{display:flex;justify-content:space-between;gap:16px;margin-bottom:8px;color:var(--tx2)}
.slider output{font-weight:600;color:var(--tx);font-variant-numeric:tabular-nums}
.slider small{display:block;color:var(--tx2);font-size:.85rem;margin-top:4px}
input[type=range]{width:100%;accent-color:var(--accent);height:28px}
.calc-out p{color:var(--tx2);margin:0}
.calc-out .big{display:flex;align-items:baseline;gap:12px;font-size:clamp(3rem,6vw,4.8rem);font-weight:600;letter-spacing:-.04em;line-height:1;margin:8px 0 14px;font-variant-numeric:tabular-nums}
.calc-out .big small{font-size:1rem;letter-spacing:0;color:var(--tx2);font-weight:400}
.calc-out strong{color:var(--tx)}
.calc-out .plan-line{border-top:1px solid var(--line);padding-top:18px;margin-top:22px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.calc-note{margin:14px 0 0}

/* ---------- 6. prywatność ---------- */
.facts4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;list-style:none;margin:48px 0 0;padding:0}
.facts4 li{border-top:1px solid var(--line2);padding-top:22px}
.facts4 svg{width:22px;height:22px;fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-bottom:14px}
.facts4 h3{font-size:1.02rem;margin-bottom:6px}
.facts4 p{margin:0;color:var(--tx2);font-size:.95rem}

/* ---------- 7. cennik ---------- */
.price-ctl{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin:36px 0 24px}
.period{position:relative;display:inline-flex;padding:4px;border-radius:999px;border:1px solid var(--line2);background:#fff}
.period button{position:relative;z-index:1;min-height:40px;font:500 .92rem var(--ff);padding:0 18px;border:0;background:none;color:var(--tx2);cursor:pointer;border-radius:999px;transition:color .3s}
.period button[aria-pressed=true]{color:#fff}
.period-thumb{position:absolute;top:4px;bottom:4px;left:4px;width:0;border-radius:999px;background:var(--grad-btn);transition:left .35s var(--ease),width .35s var(--ease)}
.ptabs{display:none;gap:6px;flex-wrap:wrap}
.plans{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.plan{border-radius:20px;border:1px solid var(--line);background:#fff;padding:28px 24px;display:flex;flex-direction:column}
.plan.pick{border:1.5px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(160deg,var(--blue),var(--violet2)) border-box;box-shadow:0 30px 60px -40px rgba(91,133,240,.7)}
.plan h3{font-size:1.1rem;display:flex;align-items:center;gap:10px}
.most{font-size:.72rem;font-weight:600;color:#fff;background:var(--grad-btn);border-radius:99px;padding:3px 9px;letter-spacing:0}
.plan .for{color:var(--tx2);font-size:.9rem;margin:4px 0 20px}
.price{display:flex;align-items:baseline;gap:4px;margin-bottom:4px}
.price b{font-size:2.7rem;font-weight:600;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.price .cur{font-size:1.4rem;font-weight:600;color:var(--tx)}
.price span{color:var(--tx2);font-size:.92rem}
.per{font-size:.84rem;color:var(--tx2);min-height:1.4em;margin-bottom:20px}
.plan .btn{width:100%;margin-bottom:22px}
.plan ul{list-style:none;margin:0;padding:0;font-size:.93rem}
.plan li{padding:6px 0 6px 26px;position:relative;color:var(--tx2)}
.plan li::before{content:"";position:absolute;left:3px;top:12px;width:10px;height:5px;border-left:1.8px solid var(--accent);border-bottom:1.8px solid var(--accent);transform:rotate(-45deg)}
.plan li.no{color:var(--tx3);text-decoration:line-through;text-decoration-color:var(--line2)}
.plan li.no::before{border:0;height:1.5px;background:var(--tx3);transform:none;top:15px}
.after-plans{margin-top:24px;max-width:78ch;color:var(--tx2);font-size:.93rem}
details.compare{margin-top:20px}
details.compare summary{cursor:pointer;color:var(--accent);font-weight:500;display:inline-flex;align-items:center;min-height:44px}
.tbl-wrap{overflow-x:auto;margin-top:12px;border:1px solid var(--line);border-radius:16px;background:#fff}
table{width:100%;border-collapse:collapse;font-size:.93rem}
th,td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;color:var(--tx2)}
thead th{color:var(--tx);font-weight:600;background:var(--bg2)}
td:first-child{color:var(--tx)}
td.c,th.c{text-align:center}
tr.grp td{background:var(--bg2);font-weight:600;color:var(--tx);font-size:.84rem}
tbody tr:last-child td{border-bottom:0}

/* ---------- 8. list od założyciela ---------- */
.letter{max-width:780px;display:grid;grid-template-columns:48px minmax(0,1fr);gap:28px}
.letter-ico{width:48px;height:48px;border-radius:13px}
.letter .h2{margin-bottom:22px}
.letter p{font-size:1.1rem;line-height:1.7;color:var(--tx2);max-width:64ch}
.sign{display:flex;flex-direction:column;gap:2px;margin-top:22px!important}
.sign .hand{font-family:"Kalam","Segoe Print","Bradley Hand",cursive;font-size:2.3rem;line-height:1;color:var(--accent);letter-spacing:0;transform:rotate(-2deg);transform-origin:left;display:inline-block;margin-bottom:4px}
.sign span{font-size:.92rem}

/* ---------- 9. FAQ + kontakt ---------- */
.faq-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:64px;align-items:start}
.faq{margin-top:28px}
.faq details{border-bottom:1px solid var(--line2)}
.faq details:first-child{border-top:1px solid var(--line2)}
.faq summary{list-style:none;cursor:pointer;padding:20px 44px 20px 0;font-weight:500;font-size:1.05rem;position:relative;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before,.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:14px;height:1.5px;background:var(--tx2);transition:transform .3s var(--ease)}
.faq summary::after{transform:rotate(90deg)}
.faq details[open] summary::after{transform:rotate(0)}
.faq .fa p{margin:0 0 20px;color:var(--tx2);max-width:66ch}
.faq details::details-content{height:0;overflow:clip;transition:height .35s var(--ease),content-visibility .35s allow-discrete}
.faq details[open]::details-content{height:auto}
.contact{border-radius:22px;border:1px solid var(--line);background:#fff;padding:32px;position:sticky;top:calc(var(--top-h) + 24px)}
.contact .h2{font-size:1.6rem;margin-bottom:14px}
.contact-side p{color:var(--tx2);margin:0 0 6px;font-size:.95rem}
#contactForm{margin-top:22px}
#contactForm .row{margin-bottom:14px}
#contactForm label,.tool label{display:block;font-size:.9rem;color:var(--tx2);margin-bottom:6px}
#contactForm input[type=text],#contactForm input[type=email],#contactForm textarea,.tool input,.fs-box input,.sl-form input[type=email]{width:100%;min-height:48px;font:inherit;font-size:1rem;padding:12px 14px;border:1px solid var(--line2);border-radius:12px;background:#fff;color:var(--tx);transition:border-color .2s,box-shadow .2s}
#contactForm input:focus,#contactForm textarea:focus,.tool input:focus,.fs-box input:focus,.sl-form input:focus{border-color:var(--accent);outline:0;box-shadow:0 0 0 4px rgba(58,106,232,.14)}
::placeholder{color:var(--tx3)}
#contactForm textarea{min-height:130px;resize:vertical}
.consent{display:flex!important;gap:10px;align-items:flex-start;font-size:.88rem;color:var(--tx2);margin:6px 0 18px}
.consent input{margin-top:4px;width:18px;height:18px;accent-color:var(--accent)}
.hp{position:absolute;left:-5000px}
.form-msg{margin-top:14px;font-weight:500}
.form-msg.ok{color:var(--ok)}.form-msg.err{color:#c5363b}

/* ---------- stopka (ciemna) z końcowym wezwaniem ---------- */
.foot{background:var(--night);color:var(--n-tx2);font-size:.92rem;padding:0 0 36px;position:relative;isolation:isolate}
.final{padding:104px 0 88px;border-bottom:1px solid var(--n-line);margin-bottom:64px;position:relative}
.final::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(50% 80% at 85% 0,rgba(129,140,248,.22),transparent 70%),radial-gradient(40% 70% at 10% 0,rgba(91,133,240,.18),transparent 70%)}
.final .h2{color:var(--n-tx);font-size:clamp(2rem,4.4vw,3.6rem);letter-spacing:-.04em;max-width:18ch}
.final p{color:var(--n-tx2);max-width:52ch;margin:18px 0 0;font-size:1.1rem}
.final .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.final .btn.ghost{background:rgba(255,255,255,.05);color:var(--n-tx);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.foot:not(:has(.final)){padding-top:64px}
.foot-grid{display:grid;grid-template-columns:1.4fr repeat(4,minmax(0,1fr));gap:32px}
.foot-blurb{color:var(--n-tx3);margin:12px 0 0;max-width:34ch}
.foot h4{font-size:.9rem;font-weight:500;color:var(--n-tx);margin-bottom:10px;letter-spacing:0}
.foot ul{list-style:none;margin:0;padding:0}
.foot li a{display:inline-flex;align-items:center;min-height:32px;color:var(--n-tx2);text-decoration:none}
.foot a:hover{color:#fff}
.foot .logo{color:var(--n-tx)}
.foot .base{margin-top:44px;padding-top:20px;border-top:1px solid var(--n-line);color:var(--n-tx3);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}
@media (max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}.foot-grid>div:first-child{grid-column:1/-1}}

/* dolny pasek na telefonie: „Sprawdź firmę za darmo” */
.mbar{display:none}
@media (max-width:760px){
  .mbar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:55;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);transition:transform .25s var(--ease)}
  .mbar .btn{width:100%}
  .mbar.off{transform:translateY(110%);visibility:hidden;transition:transform .25s var(--ease),visibility 0s .25s}
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .foot{padding-bottom:28px}
}

/* ---------- darmowy skan (hero na telefonie + podstrona) i „wyślij link” ---------- */
.fs-l{display:block;font-size:.9rem;color:var(--tx2);margin-bottom:6px}
.fs-line{display:flex;gap:8px}
.fs-line .fs-url{flex:1;min-width:0}
.fs-line .btn{flex:0 0 auto}
.fs-more{margin-top:12px}
.fs-more summary{cursor:pointer;color:var(--accent);font-size:.92rem;min-height:44px;display:flex;align-items:center}
.fs-more[open] summary{margin-bottom:4px}
.fs-hint{display:block;margin-top:10px;color:var(--tx2);font-size:.85rem}
.fs-msg{margin:16px 0 0;color:var(--tx2)}.fs-msg.err{color:#c5363b}
.fs-card{margin-top:18px;border:1px solid var(--line);border-radius:16px;padding:20px;background:#fff;color:var(--tx)}
.fs-top{display:flex;gap:16px;align-items:center;margin-bottom:12px}
.fs-top h3{margin:0;font-size:1.2rem}.fs-dom{margin:2px 0 0;color:var(--tx2);font-size:.9rem}
.fs-score{flex:0 0 auto;width:72px;height:72px;border-radius:50%;display:grid;place-content:center;text-align:center;border:3px solid var(--line2)}
.fs-score b{font-size:1.6rem;line-height:1}.fs-score span{font-size:.7rem;color:var(--tx2);margin-top:2px}
.fs-score.fs-hot{border-color:#10a36b}.fs-score.fs-warm{border-color:#e0a54a}.fs-score.fs-cold{border-color:#8d95ab}
.fs-card dl{margin:0;display:grid;gap:4px}.fs-card dt{font-size:.8rem;color:var(--tx2);margin-top:8px}.fs-card dd{margin:0;line-height:1.5}
.fs-lock{margin-top:16px;padding:14px;border-radius:12px;background:var(--bg2);border:1px dashed var(--line2)}
.fs-blur{display:flex;flex-wrap:wrap;gap:8px 16px;filter:blur(5px);user-select:none;color:var(--tx2);margin-bottom:10px}
.fs-lock p{margin:0 0 12px}
.fs-card .note{color:var(--tx2);font-size:.88rem;margin:12px 0 0}
.fs-hero{background:#fff;color:var(--tx);border-radius:20px;padding:18px;box-shadow:0 30px 70px -30px rgba(91,133,240,.55)}
.fs-hero .fs-card{border:0;padding:16px 0 0;margin-top:14px;border-top:1px solid var(--line);border-radius:0}
.sendlink{display:none;margin-top:14px}
.sendlink summary{cursor:pointer;display:flex;align-items:center;min-height:44px;font-weight:500;color:var(--accent)}
.sl-form{margin-top:6px}
.sl-form label{display:block;font-size:.9rem;color:var(--tx2);margin-bottom:6px}
.sl-row{display:flex;gap:8px}
.sl-row input[type=email]{flex:1;min-width:0}
.sl-msg{margin:6px 0 0;font-size:.88rem;min-height:1em;color:var(--tx2)}
.hero-m .sendlink summary{color:var(--n-tx)}
.hero-m .sl-form label,.hero-m .sl-msg{color:var(--n-tx2)}
@media (max-width:760px),(pointer:coarse) and (max-width:1024px){.sendlink{display:block}}
.sl-hp,.tool input.sl-hp,.fs-box input.sl-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;min-height:0!important;opacity:0!important;padding:0!important;border:0!important}

/* ---------- podstrony (porównania, narzędzia) ---------- */
.page{padding:calc(var(--top-h) + 72px) 0 40px}
.page .wrap{max-width:860px}
.page h1{font-size:clamp(2.1rem,4.4vw,3.3rem);line-height:1.06;letter-spacing:-.04em;max-width:22ch;margin-bottom:20px}
.page .lead{font-size:1.16rem;color:var(--tx2);max-width:64ch}
.page h2{font-size:1.6rem;letter-spacing:-.03em;margin:56px 0 14px}
.page h3{margin:28px 0 8px}
.page p,.page li{color:var(--tx2)}
.page strong{color:var(--tx)}
.page ul.dot{padding-left:1.2em;margin:0 0 1em}
.page ul.dot li{margin:7px 0}
.page .cta{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin:28px 0 8px}
.page .cta small{color:var(--tx2)}
.page .cta .sendlink{flex-basis:100%;margin-top:0}
.page .note{color:var(--tx2);font-size:.9rem;margin-top:10px}
.page .tbl,body.legal .tbl{overflow-x:auto;border:1px solid var(--line);border-radius:14px;margin:20px 0;background:#fff}
.page td .y{color:var(--ok);font-weight:600}
.page td .n{color:var(--tx3)}
.page ol.steps{padding-left:1.3em}
.page ol.steps li{margin:8px 0}
.page figure.pmini{margin:30px 0 8px;max-width:400px}
.page figure.pmini .lsx{padding:16px;border-radius:18px;border:1px solid #1e2739;background:#080b13!important}
.page figure.pmini figcaption{color:var(--tx2);font-size:.88rem;margin-top:12px}
.page .ex{white-space:pre-wrap;background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:18px 20px;font-size:.95rem;color:var(--tx)}
.page .faqs details{border-top:1px solid var(--line)}
.page .faqs summary{cursor:pointer;padding:14px 0;min-height:44px;font-weight:500;color:var(--tx)}
.page .faqs p{margin:0 0 16px}
.tool{background:var(--bg2);border:1px solid var(--line);border-radius:18px;padding:24px;margin:24px 0}
.tool .row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tool .out{margin-top:16px;display:grid;gap:6px}
.tool .out code{font-family:var(--ff);background:#fff;border:1px solid var(--line);border-radius:9px;padding:9px 13px;font-size:.95rem;color:var(--tx)}
.tool .out .note{margin-top:8px}
@media (max-width:640px){.tool .row{grid-template-columns:1fr}.tool{padding:18px}}
.related{margin-top:64px;border-top:1px solid var(--line);padding-top:28px}
.related ul{list-style:none;padding:0;margin:14px 0 0;columns:2;column-gap:40px}
.related li{padding:3px 0;break-inside:avoid}
.related a{display:inline-flex;min-height:36px;align-items:center}
.closing{border-radius:22px;padding:34px;margin:56px 0 0;background:var(--night);color:var(--n-tx2);position:relative;isolation:isolate;overflow:hidden}
.closing::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(70% 90% at 100% 0,rgba(129,140,248,.28),transparent 70%)}
.closing h2{margin:0 0 10px!important;font-size:1.6rem;color:var(--n-tx)}
.closing p{color:var(--n-tx2)!important}

/* tabele → karty na telefonie (build.py card_tables dopisuje data-label) */
@media (max-width:640px){
  .page .tbl,body.legal .tbl{border:0;background:none;overflow:visible}
  table.tcards thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  table.tcards,table.tcards tbody,table.tcards tr,table.tcards td{display:block;width:100%}
  table.tcards tr{border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px 16px;margin:0 0 10px}
  table.tcards td{border:0;padding:5px 0;display:grid;grid-template-columns:minmax(0,40%) minmax(0,1fr);gap:12px;color:var(--tx)}
  table.tcards td::before{content:attr(data-label);color:var(--tx2);font-size:.86rem}
  table.tcards td:not([data-label]){display:block;font-weight:600;padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:4px}
  table.tcards td:not([data-label])::before{content:none}
}

/* ---------- dokumenty prawne ---------- */
body.legal #main{padding-top:calc(var(--top-h) + 48px)}
body.legal .hero{padding:24px 0}
body.legal .hero h1{font-size:clamp(2rem,3.8vw,3rem);letter-spacing:-.04em}
body.legal .hero h1 span{color:var(--tx2)}
body.legal .meta{display:flex;flex-wrap:wrap;gap:6px 20px;color:var(--tx2);font-size:.9rem;margin:14px 0}
body.legal .layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:52px;align-items:start;padding-bottom:72px}
body.legal aside.toc{position:sticky;top:calc(var(--top-h) + 24px);display:flex;flex-direction:column;gap:2px;font-size:.88rem;max-height:calc(100vh - var(--top-h) - 48px);overflow:auto}
body.legal aside.toc b{margin-bottom:6px;color:var(--tx)}
body.legal aside.toc a{color:var(--tx2);text-decoration:none;padding:3px 0}
body.legal aside.toc a:hover{color:var(--tx)}
body.legal main.doc{max-width:76ch;color:var(--tx2)}
body.legal main.doc strong,body.legal main.doc b{color:var(--tx)}
body.legal .sec{padding:0 0 28px}
body.legal .sec h2{font-size:1.4rem;margin:26px 0 12px;display:flex;gap:10px}
body.legal .sec h2 em{font-style:normal;color:var(--accent)}
body.legal ol.pts{padding-left:1.4em}
body.legal ol.pts li,body.legal ul.dot li{margin:7px 0}
body.legal .box{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin:12px 0}
body.legal .fill{background:var(--marker);color:#172033}
body.legal .foot-legal{border-top:1px solid var(--line);padding:22px 0;color:var(--tx2);font-size:.9rem}
body.legal .foot-legal a{margin-left:16px}
@media (max-width:900px){body.legal .layout{grid-template-columns:1fr;gap:20px}body.legal aside.toc{position:static;max-height:none;border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--bg2)}}
@media print{body{background:#fff;color:#000;padding:0}.top,.foot,.mbar,.sheet,aside.toc,.no-print{display:none!important}body.legal .layout{display:block}body.legal main.doc,body.legal main.doc *{color:#000!important}}

/* ---------- baner Product Hunt ---------- */
.ph-note{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:70;max-width:min(560px,calc(100% - 32px));background:var(--night);color:var(--n-tx);border-radius:14px;padding:14px 46px 14px 18px;font-weight:500;font-size:.94rem;box-shadow:0 24px 60px -20px rgba(8,11,19,.6)}
.ph-note a{color:var(--blue2);font-weight:600}
.ph-note button{position:absolute;right:6px;top:4px;width:40px;height:40px;background:none;border:0;color:var(--n-tx2);font-size:22px;cursor:pointer;line-height:1}
@media (max-width:760px){.ph-note{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* ---------- układ responsywny ---------- */
@media (max-width:1100px){.chap{grid-template-columns:380px minmax(0,1fr);gap:56px}.parts{grid-template-columns:repeat(3,minmax(0,1fr))}.br.open .br-site{right:340px}.br-side{width:340px}}
@media (max-width:980px){
  .h1{max-width:18ch}
  .rx,.calc,.camp,.faq-grid{grid-template-columns:1fr}
  .camp,.faq-grid{gap:40px}
  .contact{position:static}
  .plans{grid-template-columns:repeat(2,minmax(0,1fr))}
  .facts4{grid-template-columns:1fr 1fr}
  .chap{grid-template-columns:1fr;gap:0}
  .chap-stage{display:none}
  .chap-m{display:block;max-width:420px;margin:24px 0 8px}
  .chap-m .lsx{padding:16px;border-radius:18px;border:1px solid #1e2739;background:#080b13!important}
  .chap-list{padding:8px 0 0}
  .chap-i{min-height:0;opacity:1;padding:20px 0 20px 24px}
  .chap-i::before{top:22px;height:28px}
  .chap-i h3{font-size:1.3rem}
  .parts{grid-template-columns:1fr 1fr}
  .br-tabs{display:none}
}
@media (max-width:760px){
  :root{--gut:16px}
  section.hero{--tail:0px;background:var(--night);padding:calc(var(--top-h) + 36px) 0 40px}
  .h1{font-size:clamp(2.15rem,9vw,2.8rem)}
  .hero-lead{font-size:1.02rem}
  section.hero .hero-desk,section.hero .fine{display:none}
  .hero-m{display:block;margin-top:6px}
  .stage{display:none}
  .proof{padding:28px 0 0}
  .proof .cap{display:none}
  .proof-t{margin:0;padding-top:0;border:0;font-size:1rem}
  .how{grid-template-columns:1fr;gap:28px;margin-top:36px}
  .how li{padding-left:66px}
  .how-ico{position:absolute;left:0;top:0;width:44px;height:44px;margin:0}
  .how li:not(:last-child)::after{top:52px;left:21.5px;right:auto;bottom:-24px;height:auto;width:1px;background:var(--line2)}
  .rx{padding:20px;border-radius:20px;gap:20px}
  .rx-tabs{flex-wrap:nowrap;overflow-x:auto;margin:0 -4px;padding:0 4px 2px}
  .rx-tabs button{flex:0 0 auto}
  .parts{display:none}
  .parts-acc{display:block;border-top:1px solid var(--line2);margin-bottom:14px}
  .parts-acc details{border-bottom:1px solid var(--line2)}
  .parts-acc summary{cursor:pointer;min-height:52px;display:flex;align-items:center;gap:6px;font-weight:500;list-style:none;position:relative;padding-right:32px}
  .parts-acc summary::-webkit-details-marker{display:none}
  .parts-acc summary::after{content:"";position:absolute;right:8px;top:50%;width:8px;height:8px;border-right:1.6px solid var(--tx2);border-bottom:1.6px solid var(--tx2);transform:translateY(-70%) rotate(45deg);transition:transform .25s}
  .parts-acc details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
  .parts-acc p{margin:0 0 14px;color:var(--tx2);font-size:.95rem}
  .parts-wrap{margin-top:48px}
  .camp{margin-top:36px}
  .mx-card{padding:18px}
  .mx-row{grid-template-columns:60px 1fr}
  .calc{margin-top:32px}
  .calc-out{order:-1;position:sticky;top:calc(var(--top-h) + 8px);z-index:3;padding:16px 18px;box-shadow:0 18px 30px -24px rgba(13,18,32,.4)}
  .calc-out .big{font-size:2.6rem;margin:4px 0 6px}
  .calc-out .plan-line{padding-top:12px;margin-top:12px}
  .calc-out .co-v{font-size:.95rem}
  .calc-in{padding:20px}
  .facts4{gap:24px 18px;margin-top:32px}
  .ptabs{display:flex}
  .price-ctl{margin:28px 0 18px}
  .plans{grid-template-columns:1fr}
  .js .plans .plan:not(.on){display:none}
  .js .cmp[data-on="0"] :is(th,td):nth-child(n+2):not(:nth-child(2)),
  .js .cmp[data-on="1"] :is(th,td):nth-child(n+2):not(:nth-child(3)),
  .js .cmp[data-on="2"] :is(th,td):nth-child(n+2):not(:nth-child(4)),
  .js .cmp[data-on="3"] :is(th,td):nth-child(n+2):not(:nth-child(5)){display:none}
  .js .cmp td.c,.js .cmp th.c{text-align:right}
  .tbl-wrap{overflow-x:visible}
  th,td{padding:11px 12px}
  .letter{grid-template-columns:1fr;gap:18px}
  .contact{padding:22px}
  .final{padding:72px 0 56px;margin-bottom:44px}
  .final .actions .btn{flex:1}
  .page{padding-top:calc(var(--top-h) + 40px)}
  .related ul{columns:1}
  .closing{padding:24px}
  .fs-line{flex-direction:column}
  .fs-line .btn{width:100%}
  .sl-row{flex-direction:column}
}
@media (max-width:480px){
  .facts4{grid-template-columns:1fr 1fr}
  .facts4 p{font-size:.9rem}
  .ptabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}
  .ptabs button{padding:0 6px}
  .period{width:100%}.period button{flex:1;padding:0 8px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .h1 .w,.hero-lead,section.hero .actions,section.hero .fine,.stage,.sheet-in{animation:none}
  .nd-belt i,.br-beam{animation:none!important}
  .faq details::details-content{transition:none}
}

/* zrzuty kontrolne: ?shot=1 (animacje zatrzymane w stanie końcowym, scena na milisekundzie ?t=) */
.shot *,.shot *::before,.shot *::after{animation-delay:-60s!important;animation-play-state:paused!important;transition:none!important}
@media (min-width:981px){.shot .chap-i{min-height:420px;opacity:1}.shot .chap-list{padding:40px 0}.shot .chap-stage{height:700px}}
html.shot{scroll-behavior:auto}
/* na stronie skanu pole „idealny klient” jest od razu widoczne — bez nagłówka rozwijania */
.fs-box:not(.fs-hero) .fs-more>summary{display:none}
/* hero na środku: formularz skanu na telefonie wyrównany do lewej, pełna szerokość */
.hero-m{text-align:left;width:100%;max-width:520px}
/* darmowy skan: pełny raport w panelu (główny przycisk) i wtyczka jako druga opcja */
.fs-acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:12px}
.fs-alt{font-size:.9rem;color:inherit;opacity:.8;text-decoration:underline;text-underline-offset:3px}
.fs-alt:hover{opacity:1}
.fs-acc{font-size:.82rem;opacity:.72;margin:8px 0 0}
@media (max-width:520px){.fs-acts .btn{width:100%;justify-content:center;text-align:center}}
/* darmowy skan: kryteria ICP sprawdzone przez AI (10.6.1) */
.fs-crit{margin-top:14px}
.fs-crit>p{margin:0 0 6px;font-size:.8rem;font-weight:600;opacity:.7}
.fs-crit ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.fs-crit li{display:flex;flex-wrap:wrap;gap:2px 10px;align-items:baseline;padding:8px 10px 8px 28px;border-radius:10px;background:var(--bg2);position:relative;font-size:.9rem}
.fs-crit li::before{content:"";position:absolute;left:10px;top:13px;width:9px;height:9px;border-radius:99px;background:#9aa3b8}
.fs-crit li span{opacity:.75;font-size:.85rem}
.fs-c-yes::before{background:#16a34a!important}.fs-c-partly::before{background:#d97706!important}.fs-c-no::before{background:#dc2626!important}
/* pierwsze zdania maila w darmowym skanie (10.7.0); w trybie generatora na górze i większe */
.fs-lines{margin-top:14px;padding:14px;border-radius:12px;border:1px solid var(--line);background:var(--bg)}
.fs-lines>p{margin:0 0 8px;font-size:.8rem;font-weight:600;opacity:.7}
.fs-lines ol{margin:0;padding-left:20px;display:grid;gap:8px}
.fs-lines li{line-height:1.5}
.fs-lines li span{display:block}
.fs-lines small{display:block;margin-top:10px;font-size:.8rem;opacity:.7}
.fs-lines.big{border-color:var(--accent);box-shadow:0 0 0 3px rgba(91,133,240,.12)}
.fs-lines.big li{font-size:1.02rem}
.fs-copy{margin-top:4px;font:inherit;font-size:.78rem;padding:3px 10px;border-radius:99px;border:1px solid var(--line2);background:transparent;color:inherit;cursor:pointer}
.fs-copy:hover{border-color:var(--accent)}
/* darmowy test domeny nadawcy */
.dns-box{max-width:640px}
.dns-out{margin-top:14px}
.dns-card{padding:16px;border-radius:14px;border:1px solid var(--line);background:var(--bg)}
.dns-dom{margin:0 0 10px;font-weight:600}
.dns-rows{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.dns-rows li{display:grid;grid-template-columns:70px 90px 1fr;gap:4px 10px;align-items:baseline;padding:10px 12px;border-radius:10px;background:var(--bg2)}
.dns-rows .st{font-size:.85rem;font-weight:600}
.dns-rows li.ok .st{color:#16a34a}.dns-rows li.bad .st{color:#dc2626}
.dns-rows small{font-size:.85rem;opacity:.8;min-width:0}
.dns-rows code{display:block;margin-top:3px;font-size:.78rem;opacity:.85;overflow-wrap:anywhere}
.dns-tips{margin:12px 0 0;padding-left:20px;display:grid;gap:6px}
.dns-good{margin:12px 0 0}
.dns-cta{margin:14px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:10px}
@media (max-width:520px){.dns-rows li{grid-template-columns:60px 1fr}.dns-rows small{grid-column:1/-1}}
