/* ===========================================================
   Nowa strona redai.pl (podgląd /nowa/): strona główna, Baza wiedzy, nowości, newsletter.
   Rytm jak cloudflare.com: dużo bieli, cienkie ramki, jedna czerwień na akcje.
=========================================================== */
body.nw-on{background:#fff}
.nw-eyebrow{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin:0 0 1rem}
.nw-accent{color:var(--red)}
.nw-more{display:inline-flex;align-items:center;gap:.35rem;font-weight:600;color:var(--red-dark);font-size:.95rem}
.nw-more::after{content:"";width:.45em;height:.45em;border-right:2px solid currentColor;border-top:2px solid currentColor;transform:rotate(45deg);transition:transform .15s ease}
a:hover .nw-more::after,.nw-more:hover::after{transform:translateX(3px) rotate(45deg)}
a.nw-more:hover{text-decoration:none}
.nw-tag{display:block;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}
.nw-btn-line{background:#fff;border-color:#c9c9d2}
.nw-btn-line:hover{border-color:var(--ink)}

/* Hero */
.nw-hero{padding:4.5rem 0 3rem;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff 0%,#fafafb 100%)}
.nw-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center}
.nw-hero h1{font-size:clamp(2.3rem,4.6vw,3.9rem);letter-spacing:-.03em;line-height:1.05;margin:0 0 1.25rem}
.nw-lead{font-size:1.18rem;line-height:1.55;color:#3a3a44;max-width:36rem;margin:0 0 1.75rem}
.nw-hero-ctas{display:flex;flex-wrap:wrap;gap:.75rem}
.nw-hero-note{margin:1rem 0 0;font-size:.88rem;color:var(--muted)}
.nw-hero-visual{margin:0}
.nw-hero-visual img{width:100%;height:auto;border-radius:var(--r-lg);box-shadow:var(--shadow-lg)}
.nw-promo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:3rem}
.nw-promo-card{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem 1.25rem;border:1px solid var(--line);border-radius:var(--r);background:#fff;color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease}
.nw-promo-card:hover{border-color:#cfcfd8;box-shadow:var(--shadow);text-decoration:none}
.nw-promo-card .nw-tag{margin:0}
.nw-promo-t{font-weight:700;font-size:1.05rem;line-height:1.35}
.nw-promo-card .nw-more{margin-top:auto;font-size:.9rem}

/* Liczby */
.nw-stats{border-bottom:1px solid var(--line)}
.nw-stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.nw-stat{padding:2rem 1.5rem;border-left:1px solid var(--line)}
.nw-stat:first-child{border-left:0;padding-left:0}
.nw-stat b{display:block;font-size:clamp(2rem,3.2vw,2.75rem);letter-spacing:-.02em;line-height:1.05;margin-bottom:.4rem}
.nw-stat span{display:block;color:var(--muted);font-size:.95rem;line-height:1.4}

/* Sekcje */
.nw-sec{padding:5rem 0}
.nw-sec--tint{background:#f7f7f9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.nw-sec-head{max-width:46rem;margin-bottom:2.25rem}
.nw-sec-head h2{margin:0 0 .5rem}
.nw-sec-head p{color:var(--muted);font-size:1.08rem;margin:0}
.nw-sec-head--row{max-width:none;display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem}
.nw-sec-head--row > div{max-width:46rem}
.nw-grid{display:grid;gap:1.25rem}
.nw-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nw-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nw-card{display:flex;flex-direction:column;padding:1.5rem;border:1px solid var(--line);border-radius:var(--r);background:#fff;color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.nw-card:hover{border-color:#cfcfd8;box-shadow:var(--shadow);text-decoration:none;transform:translateY(-2px)}
.nw-card h3{font-size:1.2rem;margin:0 0 .5rem}
.nw-card p{color:#4a4a55;margin:0 0 1rem;font-size:.97rem}
.nw-card .nw-more{margin-top:auto}
.nw-card-ico{width:42px;height:42px;border-radius:10px;background:var(--red-soft);color:var(--red-dark);display:inline-flex;align-items:center;justify-content:center;margin-bottom:1rem}
.nw-card--post h3{font-size:1.05rem;line-height:1.35}
.nw-card--post p{font-size:.92rem;margin:0}

.nw-sol-item{display:flex;flex-direction:column;gap:.25rem;padding:1.15rem 1.25rem;border-radius:var(--r);background:#fff;border:1px solid var(--line);color:var(--ink);position:relative;padding-right:2.5rem}
.nw-sol-item::after{content:"";position:absolute;right:1.25rem;top:50%;width:.5em;height:.5em;border-right:2px solid var(--red);border-top:2px solid var(--red);transform:translateY(-50%) rotate(45deg)}
.nw-sol-item:hover{border-color:#cfcfd8;box-shadow:var(--shadow);text-decoration:none}
.nw-sol-item b{font-size:1.05rem}
.nw-sol-item span{color:var(--muted);font-size:.92rem}

.nw-quote{margin:0;display:flex;gap:1.25rem;align-items:flex-start;padding:1.5rem;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.nw-quote-img{flex:0 0 auto}
.nw-quote-img img{width:96px;height:auto;border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow-sm)}
.nw-quote blockquote{margin:0 0 .75rem;font-size:1.08rem;line-height:1.55;color:#1f1f25}
.nw-quote figcaption{font-size:.92rem;color:var(--muted)}
.nw-quote figcaption b{color:var(--ink)}

/* Zakładki bez JS */
.nw-tab-in{position:absolute;opacity:0;pointer-events:none}
.nw-tab-list{display:flex;flex-wrap:wrap;gap:.25rem;border-bottom:1px solid var(--line);margin-bottom:1.5rem}
.nw-tab{padding:.7rem 1rem;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
.nw-tab:hover{color:var(--ink)}
.nw-tab-panel{display:none}
.nw-tab-all{margin:1.25rem 0 0}
#nw-t-artykuly:checked ~ .nw-tab-list .nw-tab--artykuly{color:var(--ink);border-bottom-color:var(--red)}
#nw-t-artykuly:checked ~ .nw-tab-panel--artykuly{display:block}
#nw-t-artykuly:focus-visible ~ .nw-tab-list .nw-tab--artykuly{outline:2px solid var(--red);outline-offset:2px}
#nw-t-aktualnosci:checked ~ .nw-tab-list .nw-tab--aktualnosci{color:var(--ink);border-bottom-color:var(--red)}
#nw-t-aktualnosci:checked ~ .nw-tab-panel--aktualnosci{display:block}
#nw-t-aktualnosci:focus-visible ~ .nw-tab-list .nw-tab--aktualnosci{outline:2px solid var(--red);outline-offset:2px}
#nw-t-lab:checked ~ .nw-tab-list .nw-tab--lab{color:var(--ink);border-bottom-color:var(--red)}
#nw-t-lab:checked ~ .nw-tab-panel--lab{display:block}
#nw-t-lab:focus-visible ~ .nw-tab-list .nw-tab--lab{outline:2px solid var(--red);outline-offset:2px}
#nw-t-nowosci:checked ~ .nw-tab-list .nw-tab--nowosci{color:var(--ink);border-bottom-color:var(--red)}
#nw-t-nowosci:checked ~ .nw-tab-panel--nowosci{display:block}
#nw-t-nowosci:focus-visible ~ .nw-tab-list .nw-tab--nowosci{outline:2px solid var(--red);outline-offset:2px}
#nw-t-wszystko:checked ~ .nw-tab-list .nw-tab--wszystko{color:var(--ink);border-bottom-color:var(--red)}
#nw-t-wszystko:checked ~ .nw-tab-panel--wszystko{display:block}
#nw-t-wszystko:focus-visible ~ .nw-tab-list .nw-tab--wszystko{outline:2px solid var(--red);outline-offset:2px}
#nw-t-case:checked ~ .nw-tab-list .nw-tab--case{color:var(--ink);border-bottom-color:var(--red)}
#nw-t-case:checked ~ .nw-tab-panel--case{display:block}
#nw-t-case:focus-visible ~ .nw-tab-list .nw-tab--case{outline:2px solid var(--red);outline-offset:2px}

/* FAQ */
.nw-faq-wrap{display:grid;grid-template-columns:1fr 1.6fr;gap:3rem;align-items:start}
.nw-faq details{border-bottom:1px solid var(--line)}
.nw-faq details:first-child{border-top:1px solid var(--line)}
.nw-faq summary{list-style:none;cursor:pointer;padding:1.15rem 2rem 1.15rem 0;font-weight:600;font-size:1.05rem;position:relative}
.nw-faq summary::-webkit-details-marker{display:none}
.nw-faq summary::after{content:"+";position:absolute;right:.25rem;top:50%;transform:translateY(-50%);font-size:1.4rem;font-weight:400;color:var(--muted)}
.nw-faq details[open] summary::after{content:"−"}
.nw-faq details p{margin:0 0 1.25rem;color:#3f3f49}

/* Pas zamykający */
.nw-close{background:var(--ink);color:#fff;padding:4.5rem 0}
.nw-close h2{color:#fff;margin:0 0 2rem}
.nw-close-card{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem;border-radius:var(--r);background:#17171c;border:1px solid #2a2a31;color:#fff;transition:border-color .15s ease}
.nw-close-card:hover{border-color:#55555f;text-decoration:none}
.nw-close-card b{font-size:1.2rem}
.nw-close-card span{color:#b8b8c4;font-size:.95rem}
.nw-close-card .nw-more{color:#fff;margin-top:auto;padding-top:.5rem}

/* Strony wewnętrzne /nowa/* */
.nw-page-head{padding:3.5rem 0 2.25rem;border-bottom:1px solid var(--line);background:#fafafb}
.nw-page-head h1{font-size:clamp(2rem,3.6vw,3rem);letter-spacing:-.025em;margin:0 0 .75rem}
.nw-page-head p{font-size:1.1rem;color:#3f3f49;max-width:44rem;margin:0}
.nw-src{display:flex;flex-direction:column;gap:.3rem;padding:1.25rem;border:1px solid var(--line);border-radius:var(--r);background:#fff;color:var(--ink)}
.nw-src:hover{border-color:#cfcfd8;box-shadow:var(--shadow);text-decoration:none}
.nw-src b{font-size:1.1rem}
.nw-src span{color:var(--muted);font-size:.92rem}
.nw-src em{font-style:normal;font-weight:700;color:var(--red-dark);font-size:.85rem}
.nw-list{list-style:none;margin:0;padding:0}
.nw-list li{padding:1.5rem 0;border-bottom:1px solid var(--line)}
.nw-list li:first-child{padding-top:0}
.nw-list h2{font-size:1.25rem;margin:0 0 .4rem}
.nw-list p{margin:0;color:#3f3f49}
.nw-nl{max-width:34rem;padding:1.75rem;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;box-shadow:var(--shadow-sm)}
.nw-nl label{display:block;font-weight:600;margin-bottom:.5rem}
.nw-nl-row{display:flex;gap:.5rem}
.nw-nl input[type=email]{flex:1;min-width:0;padding:.75rem .9rem;border:1px solid #cfcfd8;border-radius:var(--r);font:inherit}
.nw-nl input[type=email]:focus{outline:2px solid var(--red);outline-offset:1px;border-color:transparent}
.nw-nl small{display:block;margin-top:.75rem;color:var(--muted)}
.nw-checks{list-style:none;padding:0;margin:0 0 1.5rem}
.nw-checks li{padding-left:1.6rem;position:relative;margin:.55rem 0}
.nw-checks li::before{content:"";position:absolute;left:.15rem;top:.45em;width:.7em;height:.38em;border-left:2px solid var(--red);border-bottom:2px solid var(--red);transform:rotate(-45deg)}

@media (max-width:1024px){
  .nw-hero{padding:3rem 0 2.5rem}
  .nw-hero-grid{grid-template-columns:1fr;gap:2rem}
  .nw-hero-visual{max-width:560px}
  .nw-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nw-stat:nth-child(3){border-left:0;padding-left:0}
  .nw-stat:nth-child(n+3){border-top:1px solid var(--line)}
  .nw-faq-wrap{grid-template-columns:1fr;gap:1rem}
}
@media (max-width:780px){
  .nw-sec{padding:3.5rem 0}
  .nw-grid--2,.nw-grid--3,.nw-promo{grid-template-columns:1fr}
  .nw-sec-head--row{flex-direction:column;align-items:flex-start}
  .nw-close{padding:3.5rem 0}
}
@media (max-width:480px){
  .container{padding-left:16px;padding-right:16px}
  .nw-hero-ctas .btn{width:100%;justify-content:center}
  .nw-stat{padding:1.25rem .75rem}
  .nw-stat:nth-child(odd){padding-left:0}
  .nw-stat span{font-size:.85rem}
  .nw-quote{flex-direction:column}
  .nw-nl-row{flex-direction:column}
  .nw-tab{padding:.6rem .7rem;font-size:.92rem}
}

/* /nowa/spotkanie */
.nw-sp-wrap{max-width:1080px}
.nw-sp-head{padding:3rem 0 1.25rem}
.nw-sp-head h1{font-size:clamp(1.9rem,4.2vw,2.7rem);line-height:1.1;letter-spacing:-.02em;margin:.5rem 0 .9rem;font-weight:800}
.nw-sp-sub{font-size:1.12rem;line-height:1.6;color:#3f3f49;max-width:44rem;margin:0}
.nw-sp-sys{font-size:1rem;color:#3f3f49;max-width:44rem;margin:.75rem 0 0}
.nw-sp-main{padding:.5rem 0 4rem}
.nw-sp-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:start}
.nw-sp-box{border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;background:#fff;min-width:0}
.nw-sp-box--form{background:#fafafb}
.nw-sp-box h2{font-size:1.15rem;font-weight:800;margin:0 0 .35rem}
.nw-sp-hint{font-size:.93rem;line-height:1.55;color:var(--muted);margin:0 0 1rem}
.nw-sp-dni{display:flex;gap:8px;overflow-x:auto;padding:0 0 10px;margin:0 0 6px;scrollbar-width:thin}
.nw-sp-dzien{flex:0 0 auto;min-width:112px;text-align:left;background:#fff;border:1px solid #e2e2e8;border-radius:10px;padding:9px 12px;cursor:pointer;font:inherit;color:var(--ink)}
.nw-sp-dzien b{display:block;font-size:.93rem}
.nw-sp-dzien span{display:block;font-size:.8rem;color:var(--muted)}
.nw-sp-dzien.is-on{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}
.nw-sp-godziny{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}
.nw-sp-godziny[hidden]{display:none}
.nw-sp-godzina{background:#fff;border:1px solid #e2e2e8;border-radius:9px;padding:10px 6px;cursor:pointer;font:inherit;font-weight:700;font-size:.96rem;color:var(--ink)}
.nw-sp-godzina:hover{border-color:var(--red);color:var(--red)}
.nw-sp-godzina.is-on{background:var(--red);border-color:var(--red);color:#fff}
.nw-sp-dzien:focus-visible,.nw-sp-godzina:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.nw-sp-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.nw-sp-wybrany{font-size:1rem;color:var(--ink);margin:0 0 1rem;padding:.65rem .8rem;border-radius:9px;background:var(--red-soft)}
.nw-sp-wybrany b{color:var(--red-dark)}
.nw-sp-opt{font-weight:400;color:var(--muted);font-size:.85rem;margin-left:.35rem}
.nw-sp-note{margin:0 0 1rem}
.nw-sp-note summary{cursor:pointer;color:var(--red-dark);font-weight:600;font-size:.95rem;padding:.25rem 0}
.nw-sp-note textarea{margin-top:.6rem;width:100%;font:inherit;font-size:.95rem;padding:.6rem .75rem;border:1px solid var(--line,#e5e5e5);border-radius:8px;box-sizing:border-box}
.nw-sp-rodo{font-size:.8rem;line-height:1.5;color:var(--muted);margin:.7rem 0 0}
.nw-sp-status{margin:.6rem 0 0;font-size:.95rem;color:var(--muted)}
.nw-sp-status:empty{display:none}
.nw-sp-status.is-err{color:var(--red-dark);font-weight:600}
.nw-sp-tel{font-size:.92rem;color:var(--muted);margin:1rem 0 0;padding-top:1rem;border-top:1px solid var(--line)}
.nw-sp-tel a{font-weight:700}
.nw-sp-done{font-size:1.02rem;line-height:1.6;color:#3f3f49;margin:0}
.nw-sp-info{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:3rem 0 0}
.nw-sp-info h2{font-size:1.2rem;font-weight:800;margin:0 0 .75rem}
.nw-sp-info ol{margin:0 0 .75rem;padding-left:1.2em;color:#3f3f49;line-height:1.7}
.nw-sp-ok{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}
.nw-sp-ok li{position:relative;padding-left:1.6rem;color:#2a2a2e;line-height:1.5}
.nw-sp-ok li::before{content:"✓";position:absolute;left:0;color:var(--red);font-weight:800}
@media(max-width:820px){.nw-sp-grid,.nw-sp-info{grid-template-columns:minmax(0,1fr);gap:18px}.nw-sp-head{padding:2rem 0 1rem}}
@media(max-width:480px){.nw-sp-box{padding:16px}}
.nw-nl-msg.is-err{color:var(--red-dark);font-weight:600}

/* Baza wiedzy, Nowości, Newsletter */
.nw-sec--tight{padding:3rem 0}
.nw-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.nw-col-feed{min-width:0}
.nw-col-feed h3{font-size:1.05rem;margin:0 0 .75rem}
.nw-col-feed ul{list-style:none;margin:0 0 1rem;padding:0}
.nw-col-feed li{display:flex;flex-direction:column;gap:.15rem;padding:.7rem 0;border-bottom:1px solid var(--line)}
.nw-col-feed li a{color:var(--ink);font-weight:600;line-height:1.35}
.nw-col-feed li a:hover{color:var(--red-dark)}
.nw-col-feed time{font-size:.82rem;color:var(--muted)}
.nw-nl-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,34rem);gap:2.5rem;align-items:center}
.nw-nl-band--top{align-items:start}
.nw-nl-band h2{margin:0 0 .5rem}
.nw-nl-band p{color:#3f3f49;margin:0}
.nw-nl-band .nw-nl{max-width:none}
.nw-muted{color:var(--muted)}
.nw-now-wrap{max-width:1200px}
.nw-now-mies{font-size:1.35rem;margin:2.5rem 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--ink)}
.nw-now-mies:first-child{margin-top:0}
.nw-now li{padding:1.25rem 0;scroll-margin-top:96px}
.nw-now li:first-child{padding-top:.25rem}
.nw-now li:target{background:var(--red-soft);margin:0 -1rem;padding-left:1rem;padding-right:1rem;border-radius:var(--r)}
.nw-now h3{font-size:1.12rem;margin:.35rem 0 .35rem}
.nw-now-meta{display:flex;gap:.6rem;align-items:center;font-size:.85rem;color:var(--muted)}
.nw-tag{display:inline-block;padding:.1rem .55rem;border-radius:999px;background:#f1f1f4;color:#3f3f49;font-size:.78rem;font-weight:600}
@media(max-width:1024px){.nw-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.nw-nl-band{grid-template-columns:minmax(0,1fr);gap:1.25rem}.nw-sec--tight{padding:2rem 0}}
@media(max-width:480px){.nw-grid--4{grid-template-columns:minmax(0,1fr)}.nw-nl-row{flex-direction:column}}

/* Produkty i Rozwiązania (/nowa/produkty/*, /nowa/rozwiazania/*) */
.nw-of-ctas{margin-top:1.75rem}
.nw-of-szkic{display:inline-block;margin-top:1rem!important;padding:.35rem .75rem;border:1px dashed #d9a400;border-radius:6px;background:#fff8e1;color:#6b5200!important;font-size:.9rem!important}
.nw-of-sec{padding:4rem 0}
.nw-of-karta{display:flex;flex-direction:column;padding:1.4rem 1.5rem;border:1px solid var(--line);border-radius:var(--r);background:#fff;color:var(--ink)}
.nw-of-karta h3{font-size:1.1rem;margin:0 0 .4rem}
.nw-of-karta p{margin:0;color:#4a4a55;font-size:.97rem}
.nw-of-karta--link:hover{border-color:#cfcfd8;box-shadow:var(--shadow);text-decoration:none}
.nw-of-karta--link .nw-more{margin-top:auto;padding-top:.75rem}
.nw-of-kroki{list-style:none;margin:0;padding:0;counter-reset:nwk;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}
.nw-of-kroki li{counter-increment:nwk;display:flex;flex-direction:column;gap:.35rem;padding-top:1rem;border-top:2px solid var(--ink)}
.nw-of-kroki li::before{content:counter(nwk,decimal-leading-zero);font-size:.85rem;font-weight:700;color:var(--red)}
.nw-of-kroki b{font-size:1.05rem}
/* Sześć kroków: 3 + 3 zamiast 4 + 2. */
@media (min-width:900px){.nw-of-kroki:has(> li:nth-child(6):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}}
.nw-of-kroki span{color:#4a4a55;font-size:.95rem}
.nw-of-tabela-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.nw-of-tabela{width:100%;border-collapse:collapse;font-size:.95rem}
.nw-of-tabela th,.nw-of-tabela td{padding:.8rem 1rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.nw-of-tabela tbody tr:last-child th,.nw-of-tabela tbody tr:last-child td{border-bottom:0}
.nw-of-tabela thead th{background:#fafafb;font-size:.85rem;font-weight:700;color:var(--muted)}
.nw-of-tabela tbody th{font-weight:600;color:var(--ink)}
.nw-of-tabela--por thead th:nth-child(2){color:var(--red-dark)}
.nw-of-tabela--por td:nth-child(2){font-weight:600;background:#fdf6f6}
.nw-of-tabela tr.is-nasz th,.nw-of-tabela tr.is-nasz td{background:#fdf6f6;font-weight:700}
.nw-of-brak{color:#6b5200!important;font-style:italic}
.nw-of-stopka{margin:.75rem 0 0;font-size:.88rem;color:var(--muted)}
.nw-of-pod{margin-top:2rem}
.nw-of-pod h3{font-size:1.05rem;margin:0 0 .35rem}
.nw-of-pod p{margin:0;color:#4a4a55;font-size:.95rem}
.nw-of-tekst{max-width:46rem}
.nw-of-tekst p{color:#3f3f49;font-size:1.05rem;margin:0 0 1rem;overflow-wrap:anywhere}
.nw-of-linki{display:flex;flex-wrap:wrap;gap:1.5rem}
.nw-of-wyjscie{margin:0;font-size:1.05rem}
.nw-of-wyjscie a{font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#c9c9d2}
.nw-of-wyjscie a:hover{text-decoration-color:var(--ink)}
.nw-of-agent{padding:1rem 0;font-size:.82rem;color:var(--muted);border-top:1px solid var(--line)}
.nw-of-agent a{color:var(--muted);text-decoration:underline;text-underline-offset:2px}
.nw-of-agent a:hover{color:var(--ink)}
@media(max-width:780px){
  .nw-of-sec{padding:2.5rem 0}
  .nw-of-tabela{font-size:.88rem}
  .nw-of-tabela th,.nw-of-tabela td{padding:.6rem .7rem}
  .nw-of-tabela--por{min-width:640px}
}

/* Aktualności i Raporty (/nowa/aktualnosci, /nowa/raporty) */
.nw-filtr{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 2rem}
.nw-filtr a{padding:.45rem .9rem;border:1px solid var(--line);border-radius:999px;color:#3f3f49;font-size:.92rem;font-weight:600;background:#fff}
.nw-filtr a:hover{border-color:#c9c9d2;text-decoration:none}
.nw-filtr a.is-on{background:var(--ink);border-color:var(--ink);color:#fff}
.nw-tag--red{background:var(--red-soft);color:var(--red-dark)}
.nw-akt h3 a{color:var(--ink)}
.nw-akt h3 a:hover{color:var(--red-dark)}
.nw-akt-ramka{margin:0 0 2.25rem;padding:1.25rem 1.5rem;border:1px solid var(--line);border-left:3px solid var(--red);border-radius:var(--r);background:#fff}
.nw-akt-ramka h2{font-size:1.05rem;margin:0 0 .75rem}
.nw-akt-ramka ul{list-style:none;margin:0 0 .75rem;padding:0}
.nw-akt-ramka li{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 0;border-bottom:1px solid var(--line)}
.nw-akt-ramka li:last-child{border-bottom:0}
.nw-akt-ramka time{flex:none;color:var(--muted);font-size:.85rem}
.nw-akt-dol{margin-top:2rem}
.nw-rap{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:2.5rem;align-items:start;padding:2rem;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;box-shadow:var(--shadow-sm)}
.nw-rap h2{font-size:1.6rem;margin:.6rem 0 .5rem}
.nw-rap h2 a{color:var(--ink)}
.nw-rap-txt>p{color:#3f3f49;margin:0 0 .75rem}
.nw-rap-meta{font-size:.88rem;color:var(--muted)!important}
.nw-rap .nw-of-ctas{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.25rem 0 1rem}
.nw-rap-liczby{margin:0;display:grid;gap:1rem}
.nw-rap-liczby div{padding:1rem 1.25rem;border-left:3px solid var(--red);background:#fafafb;border-radius:0 var(--r) var(--r) 0}
.nw-rap-liczby dd{margin:0;font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;order:-1}
.nw-rap-liczby div{display:flex;flex-direction:column}
.nw-rap-liczby dt{color:var(--muted);font-size:.9rem}
@media(max-width:780px){.nw-rap{grid-template-columns:minmax(0,1fr);padding:1.25rem;gap:1.5rem}.nw-rap-liczby{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.nw-rap-liczby div{padding:.6rem .7rem}.nw-rap-liczby dd{font-size:1.35rem}.nw-rap-liczby dt{font-size:.78rem}.nw-akt-ramka li{flex-direction:column;gap:.1rem}}

/* /nowa/spotkanie na telefonie: krótki nagłówek, kalendarz jako panel od dołu */
.nw-sp-krotko,.nw-sp-kal-top,.nw-sp-termin,.nw-sp-tlo{display:none}
@media(max-width:820px){
  .nw-sp-head{padding:1.25rem 0 .75rem}
  .nw-sp-head .nw-eyebrow,.nw-sp-sub,.nw-sp-hint,.nw-sp-wybrany,.nw-sp-kal-h{display:none}
  .nw-sp-head h1{font-size:1.6rem;margin:0 0 .4rem}
  .nw-sp-krotko{display:block;margin:0;color:#3f3f49;font-size:1rem}
  .nw-sp-main{padding-top:0}
  .nw-sp-kal{display:none}
  .nw-sp-kal.is-open{display:block;position:fixed;left:0;right:0;bottom:0;z-index:9100;max-height:85vh;overflow-y:auto;border-radius:16px 16px 0 0;border:0;padding:0 16px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -12px 40px rgba(0,0,0,.18);animation:nwSpUp .18s ease-out}
  .nw-sp-kal.is-open .nw-sp-kal-top{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#fff;padding:16px 0 12px;margin:0 0 6px;border-bottom:1px solid var(--line);z-index:1}
  .nw-sp-kal-top h2{margin:0}
  .nw-sp-gotowe{background:none;border:0;padding:.4rem .2rem;font:inherit;font-weight:700;color:var(--red-dark);cursor:pointer}
  .nw-sp-tlo:not([hidden]){display:block;position:fixed;inset:0;z-index:9050;background:rgba(20,20,26,.45)}
  .nw-sp-termin{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;width:100%;margin:0 0 1rem;padding:.75rem .9rem;border:1px solid #e2e2e8;border-radius:10px;background:#fff;font:inherit;color:var(--ink);text-align:left;cursor:pointer}
  .nw-sp-termin span{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
  .nw-sp-termin b{color:var(--red-dark);font-size:.98rem}
  .nw-sp-termin i{font-style:normal;font-size:.88rem;font-weight:600;color:var(--muted)}
  .nw-sp-termin i::after{content:" ▾"}
  .nw-sp-termin:focus-visible{outline:2px solid var(--red);outline-offset:2px}
  .nw-sp-box--form{padding:16px}
  .nw-sp-info{margin-top:2rem}
}
html.nw-sp-lock,html.nw-sp-lock body{overflow:hidden}
@keyframes nwSpUp{from{transform:translateY(24px);opacity:.6}to{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.nw-sp-kal.is-open{animation:none}}

/* Tabela porównawcza na telefonie: pierwsza kolumna stoi, cień i podpis mówią, że reszta jest obok */
.nw-of-przesun{display:none}
@media (max-width:820px){
  .nw-of-przesun{display:block;margin:.5rem 0 0;font-size:.82rem;color:var(--muted)}
  .nw-of-tabela--por thead th:first-child,.nw-of-tabela--por tbody th{position:sticky;left:0;z-index:1;background:#fff;box-shadow:1px 0 0 var(--line)}
  .nw-of-tabela--por thead th:first-child{background:#fafafb}
  .nw-of-tabela--por tbody th{min-width:7.5rem}
}

/* ===== Runda 3: zrzuty ekranów portalu ===== */
.nw-win{border-radius:12px;overflow:hidden;background:#fff;border:1px solid #d8d8e0;box-shadow:0 18px 40px -24px rgba(11,11,13,.35),0 1px 2px rgba(11,11,13,.05)}
.nw-win-bar{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;background:#f0f0f4;border-bottom:1px solid #e2e2e8}
.nw-win-bar i{width:10px;height:10px;border-radius:50%;background:#d4d4dc;flex:none}
.nw-win-bar i:first-child{background:#f87171}
.nw-win-bar span{margin:0 auto;padding:2px 14px;border-radius:6px;background:#fff;font:500 .72rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted);transform:translateX(-20px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60%}
.nw-win-body img,.nw-tel img,.nw-win-body video{display:block;width:100%;height:auto}
.nw-tel{max-width:300px;margin:0 auto;border-radius:28px;overflow:hidden;border:8px solid #16161a;box-shadow:0 18px 40px -20px rgba(11,11,13,.45)}
figure.nw-of-hero-shot,figure.nw-zrzut-img,figure.nw-tabs-img{margin:0;min-width:0}

/* Nagłówek podstrony ze zrzutem obok */
.nw-of-head--img{padding:3.5rem 0 3rem}
.nw-of-head-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:3rem;align-items:center}
.nw-of-head--img p{max-width:34rem}

/* Ekrany: wiersze tekst + zrzut na zmianę */
.nw-zrzuty{display:flex;flex-direction:column;gap:4rem}
.nw-zrzut{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:3rem;align-items:center}
.nw-zrzut--odwr .nw-zrzut-txt{order:2}
/* Szeroki zrzut (panoramiczny ekran): tekst nad obrazkiem, obrazek na całą szerokość. */
.nw-zrzut--szer{grid-template-columns:minmax(0,1fr);gap:1.5rem}
.nw-zrzut--szer .nw-zrzut-txt{max-width:68ch}
.nw-zrzut-txt h3,.nw-tabs-txt h3{font-size:1.45rem;letter-spacing:-.015em;line-height:1.2;margin:0 0 .6rem}
.nw-zrzut-txt p,.nw-tabs-txt p{color:#3f3f49;font-size:1.05rem;line-height:1.6;margin:0}
.nw-pkt{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.45rem}
.nw-pkt li{position:relative;padding-left:1.5rem;color:#3f3f49;line-height:1.5}
.nw-pkt li::before{content:"";position:absolute;left:.15rem;top:.45em;width:.7em;height:.4em;border-left:2px solid var(--red);border-bottom:2px solid var(--red);transform:rotate(-45deg)}

/* Zakładki ze zrzutem (jak panel produktowy cloudflare.com) */
.nw-tabs-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.75rem}
.nw-tabs-list button{appearance:none;border:1px solid var(--line);background:#fff;color:#3f3f49;font:600 .92rem/1 inherit;padding:.65rem 1rem;border-radius:999px;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}
.nw-tabs-list button:hover{border-color:#c9c9d2;color:var(--ink)}
.nw-tabs-list button[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.nw-tabs-list button:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.nw-tabs:not(.is-js) .nw-tabs-list{display:none}
.nw-tabs-panel{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:2.5rem;align-items:center;margin-bottom:3rem}
.nw-tabs.is-js .nw-tabs-panel{margin-bottom:0}
.nw-tabs-panel[hidden]{display:none}

/* Galeria ekranów branżowych */
.nw-galeria{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}
.nw-galeria figure{margin:0;min-width:0}
.nw-galeria figcaption{display:flex;flex-direction:column;gap:.15rem;margin-top:.7rem;font-size:.92rem;line-height:1.4}
.nw-galeria figcaption span{color:var(--muted)}
.nw-galeria .nw-win-bar{height:22px}
.nw-galeria .nw-win-bar span{display:none}

@media (max-width:1024px){
  .nw-galeria{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nw-of-head-grid{grid-template-columns:minmax(0,1fr);gap:2rem}
}
@media (max-width:820px){
  .nw-zrzut,.nw-tabs-panel{grid-template-columns:minmax(0,1fr);gap:1.25rem}
  .nw-zrzut--odwr .nw-zrzut-txt{order:0}
  .nw-zrzuty{gap:3rem}
  .nw-tabs-list{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 1.25rem;padding:0 16px 4px;scrollbar-width:none}
  .nw-tabs-list::-webkit-scrollbar{display:none}
  .nw-tabs-list button{flex:none}
  .nw-win-bar{height:22px}
  .nw-win-bar span{display:none}
}
@media (max-width:480px){.nw-galeria{grid-template-columns:minmax(0,1fr)}}

/* Runda 3: strona główna, zrzut w hero i karty produktów */
.nw-hero-shot .nw-win{box-shadow:0 30px 60px -30px rgba(11,11,13,.45),0 1px 2px rgba(11,11,13,.05)}
.nw-hero-shot img{border-radius:0;box-shadow:none}
.nw-prod .nw-card{display:flex;flex-direction:column}
.nw-prod .nw-card .nw-more{margin-top:auto}
.nw-card--glowny{border-color:var(--ink)}
.nw-card--glowny .nw-tag{align-self:flex-start;margin-bottom:.75rem}
.nw-tabs-txt .nw-more{display:inline-block;margin-top:1rem}

/* ===========================================================
   Strona główna /nowa/ (02.11.2026): układ według cloudflare.com. Prefiks nw-cf-
=========================================================== */
.nw-cf{--cf-red:#dc2626;--cf-red2:#b91c1c;--cf-bg:#fbfaf9;--cf-line:#ebe7e4;background:var(--cf-bg);padding:8px 8px 0}
.nw-cf-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.nw-cf-wrap--waska{max-width:820px}
.nw-cf-sec{padding:104px 0 0}
.nw-cf-sec--faq{padding-bottom:104px}
.nw-cf-head{text-align:center;max-width:760px;margin:0 auto 40px}
.nw-cf-head h2{font-size:clamp(2rem,3.6vw,3rem);font-weight:500;letter-spacing:-.025em;line-height:1.1;margin:0 0 .9rem;color:#1b1b1f}
.nw-cf-head p{margin:0;color:#5f5f69;font-size:1.05rem;line-height:1.5}
.nw-cf-ico{width:24px;height:24px;color:#1b1b1f;flex:none}

/* Przyciski w kształcie pigułki */
.nw-cf-pill{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:0 22px;border-radius:999px;background:#fff;color:#1b1b1f;font-weight:600;font-size:.95rem;border:1px solid transparent;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.nw-cf-pill:hover{text-decoration:none;transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,0,0,.14)}
.nw-cf-pill--ghost{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.35)}
.nw-cf-pill--ghost:hover{background:rgba(255,255,255,.22);box-shadow:none}
.nw-cf-pill--line{border-color:#d9d4d0;background:#fff}
.nw-cf-pill:focus-visible{outline:2px solid #1b1b1f;outline-offset:3px}

/* 1. Czerwony panel z hasłem (wcięty, zaokrąglony, kropkowa siatka i poświata u dołu) */
.nw-cf-hero,.nw-cf-koniec{position:relative;overflow:hidden;border-radius:16px;color:#fff;text-align:center;
  background:
    radial-gradient(60% 55% at 50% 112%,rgba(255,236,200,.95) 0,rgba(255,170,120,.55) 30%,rgba(220,38,38,0) 62%),
    radial-gradient(circle,rgba(255,255,255,.16) 1px,transparent 1.4px) 0 0/9px 9px,
    linear-gradient(180deg,#e0312f 0,var(--cf-red) 55%,#d4262a 100%)}
.nw-cf-hero-in{max-width:880px;margin:0 auto;padding:clamp(96px,13vw,168px) 24px clamp(110px,14vw,176px)}
.nw-cf-hero h1{font-size:clamp(2.2rem,4.6vw,3.6rem);font-weight:500;letter-spacing:-.03em;line-height:1.08;margin:0 0 1.4rem;color:#fff}
.nw-cf-hero p{font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.55;max-width:620px;margin:0 auto 2rem;color:rgba(255,255,255,.93)}

/* 2. Region: animacja mapy działów + trzy komórki */
.nw-cf-region-vis{max-width:820px;margin:0 auto;position:relative}
.nw-cf-region-vis::before{content:"";position:absolute;inset:-6% -14% -10%;background:radial-gradient(closest-side,rgba(220,38,38,.10),rgba(220,38,38,0));z-index:0}
.nw-cf-region-vis .nw-win{position:relative;z-index:1}
.nw-cf-cells{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:-1px;border:1px solid var(--cf-line);background:#fff;border-radius:2px}
.nw-cf-region-vis + .nw-cf-cells{margin-top:32px}
.nw-cf-cell{padding:28px 28px 30px}
.nw-cf-cell + .nw-cf-cell{border-left:1px solid var(--cf-line)}
.nw-cf-cell h3{font-size:1.05rem;font-weight:600;margin:16px 0 .4rem;color:#1b1b1f}
.nw-cf-cell p{margin:0;color:#5f5f69;font-size:.95rem;line-height:1.5}

/* 3. Opinie w zakładkach */
.nw-cf-box{background:#fff;border:1px solid var(--cf-line);border-radius:4px}
.nw-cf-opinie-tabs{display:flex;gap:4px;padding:10px 16px 0;border-bottom:1px solid var(--cf-line);overflow-x:auto}
.nw-cf-opinie-tabs button{appearance:none;background:none;border:0;border-bottom:2px solid transparent;padding:12px 16px;font:inherit;font-weight:600;font-size:.95rem;color:#6b6b76;cursor:pointer;white-space:nowrap}
.nw-cf-opinie-tabs button[aria-selected="true"]{color:#1b1b1f;border-bottom-color:var(--cf-red)}
.nw-cf-opinie-tabs button:focus-visible{outline:2px solid var(--cf-red);outline-offset:-2px}
.nw-cf-opinia{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;margin:0;padding:48px 56px}
.nw-cf-opinia[hidden]{display:none}
.nw-cf-opinia blockquote{margin:0 0 1.2rem;font-size:clamp(1.3rem,2.3vw,1.85rem);line-height:1.3;letter-spacing:-.015em;color:#1b1b1f;font-weight:500}
.nw-cf-opinia em{font-style:normal;color:var(--cf-red)}
.nw-cf-opinia figcaption{color:#5f5f69;font-size:.95rem}
.nw-cf-opinia figcaption b{color:#1b1b1f}
.nw-cf-opinia-dok img{display:block;width:150px;height:auto;border-radius:6px;border:1px solid var(--cf-line);box-shadow:0 14px 30px -14px rgba(0,0,0,.35);transform:rotate(2deg);transition:transform .2s ease}
.nw-cf-opinia-dok:hover img{transform:rotate(0)}
.nw-cf-pod{text-align:center;margin:22px 0 0}

/* 4. Dlaczego redAi: dwa panele */
.nw-cf-dwa{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--cf-line);background:#fff}
.nw-cf-panel{position:relative;min-height:400px;padding:44px 40px;overflow:hidden}
.nw-cf-panel h3{position:relative;z-index:2;text-align:center;font-size:clamp(1.6rem,2.6vw,2.2rem);font-weight:500;letter-spacing:-.02em;margin:0}
.nw-cf-panel--bez{background:
  radial-gradient(circle,rgba(27,27,31,.07) 1px,transparent 1.4px) 0 0/10px 10px,#fff;color:#1b1b1f}
.nw-cf-notki{list-style:none;margin:0;padding:0}
.nw-cf-notki li{position:absolute;left:var(--x);top:var(--y);max-width:44%;padding:8px 12px;background:#fff;border:1px solid #e2ddd9;border-radius:8px;font-size:.84rem;line-height:1.35;color:#4a4a55;box-shadow:0 6px 16px -10px rgba(0,0,0,.25)}
.nw-cf-notki li:nth-child(odd){transform:rotate(-1.5deg)}
.nw-cf-notki li:nth-child(even){transform:rotate(1.2deg)}
.nw-cf-panel--z{background:linear-gradient(180deg,#e0312f,var(--cf-red2));color:#fff;display:flex;flex-direction:column;justify-content:center;gap:28px}
.nw-cf-ok{list-style:none;margin:0 auto;padding:0;display:flex;flex-direction:column;gap:10px}
.nw-cf-ok li{display:flex;align-items:center;gap:10px;padding:10px 16px;border:1px solid rgba(255,255,255,.35);border-radius:10px;background:rgba(255,255,255,.1);font-size:.97rem}
.nw-cf-ok .nw-cf-ico{color:#fff;width:20px;height:20px}

/* 5. Płacicie dopiero po testach */
.nw-cf-kroki{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.nw-cf-kroki li{padding:32px 32px 34px}
.nw-cf-kroki li + li{border-left:1px solid var(--cf-line)}
.nw-cf-kroki span{display:inline-flex;width:30px;height:30px;border-radius:50%;align-items:center;justify-content:center;background:var(--cf-red);color:#fff;font-weight:700;font-size:.9rem}
.nw-cf-kroki h3{font-size:1.25rem;font-weight:600;margin:16px 0 .4rem;color:#1b1b1f}
.nw-cf-kroki p{margin:0;color:#5f5f69;font-size:.95rem;line-height:1.5}
.nw-cf-abo{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;padding:22px 32px;border-top:1px solid var(--cf-line);background:#fcfbfa}
.nw-cf-abo-t{margin:0;font-weight:600;color:#1b1b1f}
.nw-cf-abo ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;flex:1}
.nw-cf-abo li{padding:5px 11px;border:1px solid #e2ddd9;border-radius:999px;font-size:.84rem;color:#4a4a55;background:#fff}

/* 6. Kafle (bento) */
.nw-cf-bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--cf-line);background:var(--cf-line);gap:1px}
.nw-cf-k{display:flex;flex-direction:column;background:#fff;color:#1b1b1f;min-height:300px;overflow:hidden;transition:background .15s ease}
.nw-cf-k:hover{text-decoration:none;background:#fffdfc}
.nw-cf-k--sz{grid-column:span 2;display:grid;grid-template-columns:minmax(220px,.8fr) 1.4fr}
.nw-cf-k-txt{padding:32px 30px;display:flex;flex-direction:column;justify-content:flex-end}
.nw-cf-k-txt h3{font-size:1.1rem;font-weight:600;margin:14px 0 .4rem}
.nw-cf-k-txt p{margin:0;color:#5f5f69;font-size:.94rem;line-height:1.5}
.nw-cf-k-vis{padding:28px 0 0 0;align-self:end;overflow:hidden}
.nw-cf-k-vis .nw-win{border-radius:10px 0 0 0;border-right:0;border-bottom:0;box-shadow:0 18px 40px -22px rgba(11,11,13,.35)}
.nw-cf-k--red{background:linear-gradient(180deg,#e0312f,var(--cf-red2));color:#fff}
.nw-cf-k--red:hover{background:linear-gradient(180deg,#e33a37,#bf2020)}
.nw-cf-k--red .nw-cf-ico{color:#fff}
.nw-cf-k--red p{color:rgba(255,255,255,.9)}
.nw-cf-k--red .nw-cf-k-txt{justify-content:flex-start}
.nw-cf-agenci{margin:auto 22px 24px;display:flex;flex-direction:column;gap:8px;background:#fff;border-radius:10px;padding:12px;box-shadow:0 14px 30px -14px rgba(0,0,0,.4)}
.nw-cf-agenci div{display:flex;align-items:center;gap:9px;font:500 .82rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;color:#1b1b1f}
.nw-cf-agenci span{margin-left:auto;color:#6b6b76;font-size:.76rem}
.nw-cf-agenci i{width:8px;height:8px;border-radius:50%;flex:none}
.nw-cf-agenci .is-ok{background:#16a34a}.nw-cf-agenci .is-run{background:var(--cf-red)}.nw-cf-agenci .is-wait{background:#f59e0b}

/* 7. FAQ na stronie głównej: jedna kolumna */
.nw-cf .nw-faq{background:#fff;border:1px solid var(--cf-line);padding:4px 24px}
.nw-cf .nw-faq details:first-child{border-top:0}
.nw-cf .nw-faq details:last-child{border-bottom:0}

/* 8. Czerwony panel na końcu + taśma */
.nw-cf-koniec{margin:0 0 8px}
.nw-cf-koniec-in{max-width:820px;margin:0 auto;padding:clamp(80px,10vw,128px) 24px clamp(96px,11vw,140px)}
.nw-cf-koniec h2{font-size:clamp(2.1rem,4.2vw,3.4rem);font-weight:500;letter-spacing:-.03em;line-height:1.08;margin:0 0 1.1rem;color:#fff}
.nw-cf-koniec p{font-size:1.08rem;line-height:1.55;margin:0 auto 2rem;max-width:560px;color:rgba(255,255,255,.93)}
.nw-cf-koniec-btn{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.nw-cf-tasma{position:relative;border-top:1px solid rgba(255,255,255,.22);overflow:hidden;padding:14px 0;background:rgba(150,20,20,.18)}
.nw-cf-tasma-in{display:flex;gap:44px;width:max-content;animation:nw-cf-tasma 48s linear infinite}
.nw-cf-tasma span{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-size:.92rem;color:rgba(255,255,255,.92)}
.nw-cf-tasma .nw-cf-ico{width:16px;height:16px;color:#fff}
@keyframes nw-cf-tasma{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.nw-cf-tasma-in{animation:none}.nw-cf-pill,.nw-cf-opinia-dok img{transition:none}}

/* Tablet */
@media (max-width:980px){
  .nw-cf-sec{padding-top:80px}
  .nw-cf-cells,.nw-cf-kroki{grid-template-columns:1fr}
  .nw-cf-cell + .nw-cf-cell,.nw-cf-kroki li + li{border-left:0;border-top:1px solid var(--cf-line)}
  .nw-cf-dwa{grid-template-columns:1fr}
  .nw-cf-bento{grid-template-columns:1fr}
  .nw-cf-k--sz{grid-column:auto;grid-template-columns:1fr}
  .nw-cf-k-vis{padding:0 0 0 24px}
  .nw-cf-opinia{grid-template-columns:1fr;padding:32px 28px;gap:24px}
  .nw-cf-opinia-dok img{width:120px}
}
/* Telefon */
@media (max-width:600px){
  .nw-cf{padding:6px 6px 0}
  .nw-cf-wrap{padding:0 10px}
  .nw-cf-sec{padding-top:64px}
  .nw-cf-sec--faq{padding-bottom:64px}
  .nw-cf-head{margin-bottom:28px}
  .nw-cf-hero,.nw-cf-koniec{border-radius:12px}
  .nw-cf-hero-in{padding:72px 18px 96px}
  .nw-cf-cell,.nw-cf-kroki li{padding:24px 20px}
  .nw-cf-panel{min-height:0;padding:32px 20px}
  .nw-cf-panel--bez{padding-bottom:24px}
  .nw-cf-notki{display:flex;flex-direction:column;gap:8px;margin-top:22px}
  .nw-cf-notki li{position:static;max-width:none;transform:none!important}
  .nw-cf-abo{padding:20px}
  .nw-cf-k-txt{padding:26px 22px}
  .nw-cf-koniec-btn .nw-cf-pill{width:100%}
  .nw-cf .nw-faq{padding:0 16px}
}
/* 02.11 poprawki po przeglądzie: nagłówki w jednej linii, kafel Nadzór z podglądem */
.nw-cf-head{max-width:900px}
.nw-cf-nadzor{margin:auto 22px 24px;display:flex;flex-direction:column;gap:8px;border:1px solid var(--cf-line);border-radius:10px;padding:12px;background:#fcfbfa}
.nw-cf-nadzor div{display:flex;align-items:center;gap:9px;font:500 .82rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;color:#1b1b1f}
.nw-cf-nadzor span{margin-left:auto;color:#6b6b76;font-size:.76rem}
.nw-cf-nadzor i{width:8px;height:8px;border-radius:50%;flex:none;background:#16a34a}
.nw-cf-nadzor b{align-self:flex-start;margin-top:4px;padding:6px 12px;border-radius:999px;border:1px solid #fca5a5;color:#b91c1c;background:#fff;font-size:.8rem;font-weight:600}
@media (max-width:980px){
  .nw-cf-abo{flex-direction:column;align-items:flex-start}
  .nw-cf-abo ul{flex:none;width:100%}
}

/* Animacja (mapa firmy) zawsze w całości: pod tekstem, na pełną szerokość, nie w bocznej kolumnie (runda 5, pkt 14) */
.nw-of-head--szer .nw-of-head-grid{grid-template-columns:minmax(0,1fr);gap:2.5rem;justify-items:center;text-align:center}
.nw-of-head--szer .nw-of-head-grid > div{max-width:820px}
.nw-of-head--szer .nw-of-head-grid > div p{margin-left:auto;margin-right:auto}
.nw-of-head--szer .nw-of-ctas{justify-content:center}
.nw-of-head--szer .nw-of-hero-shot{width:100%;max-width:1040px}
.nw-tabs-panel--szer{grid-template-columns:minmax(0,1fr);gap:1.75rem;justify-items:center}
.nw-tabs-panel--szer .nw-tabs-txt{max-width:760px;text-align:center}
.nw-tabs-panel--szer .nw-tabs-txt .nw-pkt{text-align:left;display:inline-block}
.nw-tabs-panel--szer .nw-tabs-img{width:100%;max-width:1040px}
.nw-of-head--szer h1,.nw-of-head--szer .nw-of-head-grid > div > p,.nw-tabs-panel--szer .nw-tabs-txt h3,.nw-tabs-panel--szer .nw-tabs-txt p{text-wrap:balance}
.nw-of-head--szer h1{max-width:900px;margin-left:auto;margin-right:auto}

/* 02.11 runda 4b: hero z dwoma przyciskami, mapa i kafle z przybliżeniem, drobne odstępy */
.nw-cf-hero,.nw-cf-koniec{padding:0}
.nw-cf-hero{background:
    radial-gradient(48% 42% at 50% 108%,#fff4d9 0,rgba(255,196,140,.8) 26%,rgba(220,38,38,0) 60%),
    radial-gradient(circle,rgba(255,255,255,.16) 1px,transparent 1.4px) 0 0/9px 9px,
    linear-gradient(180deg,#e0312f 0,var(--cf-red) 55%,#d4262a 100%)}
.nw-cf-hero p{max-width:560px}
.nw-cf-hero-btn{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
/* Mapa węższa niż komórki pod nią, więc zostaje osobnym oknem z odstępem */
.nw-cf-region-vis + .nw-cf-cells{margin-top:28px}
.nw-win img{background:#f4f2f0}
.nw-cf-panel--z{justify-content:flex-start}
.nw-cf-ok{margin:auto}
/* Kafle: zrzut przybliżony, widać lewy górny róg ekranu zamiast całego portalu w miniaturze */
.nw-cf-k-vis .nw-win img{width:150%;max-width:none;height:auto}
.nw-cf-k-vis .nw-win{overflow:hidden}
@media (max-width:600px){
  .nw-cf-hero-btn .nw-cf-pill{width:100%}
  .nw-cf-abo li{font-size:.8rem;padding:4px 10px}
  .nw-cf-k-vis .nw-win img{width:180%}
}

/* 02.11 runda 4c: poprawki po przeglądzie strony głównej */
@media (min-width:601px){.nw-cf-notki li{max-width:41%}}
.nw-cf-hero-nad{font-size:.85rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.9;margin:0 0 1rem}
.nw-cf-k-txt{justify-content:flex-start}
.nw-cf-k-vis{max-height:440px}
.nw-cf-k-vis .nw-win img{width:200%}
.nw-cf-pod .nw-more{display:inline-flex;align-items:center;min-height:44px}
.nw-cf-agenci span,.nw-cf-nadzor span{font-size:.8rem}
@media (max-width:600px){
  .nw-cf-abo li{font-size:.875rem;padding:6px 12px}
  .nw-cf-opinia-dok{display:none}
  .nw-cf-k-vis .nw-win img{width:200%}
}

/* 02.11 runda 5: przycięte zrzuty w kaflach wygaszają się przy prawej krawędzi zamiast ucinać słowa */
.nw-cf-k-vis .nw-win-body{-webkit-mask-image:linear-gradient(90deg,#000 72%,transparent 100%);mask-image:linear-gradient(90deg,#000 72%,transparent 100%)}

/* 02.11 runda 5 (R4-b): szeroki kafel z czatem, szersza kolumna tekstu, zrzut pokazuje samą odpowiedź asystenta zamiast menu bocznego */
.nw-cf-k--sz{grid-template-columns:minmax(280px,1fr) 1.3fr}
.nw-cf-k--sz .nw-cf-k-vis .nw-win img{width:170%;margin-left:-36%}
@media (max-width:900px){.nw-cf-k--sz{grid-template-columns:1fr}}
@media (max-width:600px){.nw-cf-k--sz .nw-cf-k-vis .nw-win img{width:200%;margin-left:-47%}}

/* 02.11 runda 5: poprawki po przeglądzie zespołu (abonament jako lista z ptaszkami, Nadzór bez dziury, taśma z wygaszeniem) */
.nw-cf-abo{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px 28px}
.nw-cf-abo ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 24px}
.nw-cf-abo li{display:flex;align-items:flex-start;gap:8px;padding:0;border:0;border-radius:0;background:none;font-size:.92rem;line-height:1.35;color:#2a2a31}
.nw-cf-abo li .nw-cf-ico{width:18px;height:18px;flex:none;color:#16a34a;margin-top:1px}
.nw-cf-nadzor{margin:14px 22px 24px}
.nw-cf-tasma{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%)}
@media (max-width:980px){
  .nw-cf-abo{grid-template-columns:1fr}
  .nw-cf-abo ul{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .nw-cf-abo li{font-size:.9rem;padding:0}
  .nw-cf-abo ul{grid-template-columns:1fr}
  .nw-cf-tasma{display:none}
}

/* 02.11 runda 5: kafle z osobnym kadrem zrzutu, obraz cały, bez przesunięcia w lewo */
.nw-cf-k .nw-cf-k-vis--kadr .nw-win img,
.nw-cf-k--sz .nw-cf-k-vis--kadr .nw-win img{width:100%;margin-left:0}
@media (max-width:600px){
  .nw-cf-k .nw-cf-k-vis--kadr .nw-win img,
  .nw-cf-k--sz .nw-cf-k-vis--kadr .nw-win img{width:100%;margin-left:0}
}
.nw-cf-k-vis--kadr .nw-win-body{-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent 100%);mask-image:linear-gradient(90deg,#000 88%,transparent 100%)}
/* 02.11 runda 5: aktualności jako karty z obrazkiem i przyciskiem „Czytaj dalej” */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nw-akt-siatka{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.nw-akt-k{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}
.nw-akt-k:hover{border-color:#c9c9d2;box-shadow:0 8px 24px rgba(15,15,20,.06)}
.nw-akt-k-obr{display:block;aspect-ratio:16/9;background:#f6f6f8;overflow:hidden}
.nw-akt-k-obr img{display:block;width:100%;height:100%;object-fit:cover}
.nw-akt-k-znak{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;height:100%;background:linear-gradient(135deg,#fff 0%,var(--red-soft) 100%)}
.nw-akt-k-znak b{font-size:1.15rem;font-weight:700;color:var(--red-dark);letter-spacing:-.01em}
.nw-akt-k-tresc{display:flex;flex-direction:column;flex:1;padding:1.1rem 1.2rem 1.25rem}
.nw-akt-k h3{font-size:1.05rem;line-height:1.35;margin:.65rem 0 .5rem}
.nw-akt-k h3 a{color:var(--ink)}
.nw-akt-k h3 a:hover{color:var(--red-dark)}
.nw-akt-k p{font-size:.92rem;line-height:1.5;color:var(--muted);margin:0 0 1rem}
.nw-akt-k-btn{margin-top:auto;align-self:flex-start;padding:.45rem 1rem;font-size:.9rem;border:1px solid #c9c9d2;border-radius:999px}
@media(max-width:1024px){.nw-akt-siatka{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.nw-akt-siatka{grid-template-columns:minmax(0,1fr);gap:1.1rem}}
/* 02.11 runda 5: poprawki po drugim przeglądzie zespołu strony głównej */
.nw-cf-hero .nw-cf-hero-nad{font-size:.8rem;letter-spacing:.08em;max-width:none;margin:0 auto 1.25rem;text-wrap:balance}
.nw-cf-koniec .nw-cf-tasma{background:rgba(120,12,12,.5)}
.nw-cf-region-vis::before{inset:-6% 0 -10%}
.nw-cf-cell h3,.nw-cf-k-txt h3,.nw-cf-kroki h3{font-size:1.125rem}
@media(min-width:981px){.nw-cf-abo{grid-template-columns:1fr auto}.nw-cf-abo-t{grid-column:1/-1}.nw-cf-abo li{white-space:nowrap}}
body:has(.nw-cf){background:#fbfaf9}

/* 02.11 przegląd strony głównej: odstęp kolumn w abonamencie, „w toku” na niebiesko (czerwony wyglądał jak błąd),
   zrzuty w kaflach wygaszone u dołu zamiast uciętych w pół zdania */
.nw-cf-abo ul{column-gap:36px}
.nw-cf-agenci .is-run{background:#2563eb}
.nw-cf-k-vis--kadr .nw-win{-webkit-mask-image:linear-gradient(to bottom,#000 78%,transparent);mask-image:linear-gradient(to bottom,#000 78%,transparent)}
.nw-rap .nw-tag{text-transform:none;letter-spacing:0}
@media(max-width:520px){.nw-rap-liczby{grid-template-columns:minmax(0,1fr)}.nw-rap-liczby div{flex-direction:row;align-items:baseline;gap:.6rem}}
/* Wydania raportu co dwa tygodnie na /nowa/raporty */
.nw-rap-wyd{list-style:none;margin:16px 0;padding:0;display:grid;gap:10px}
.nw-rap-wyd li{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border:1px solid var(--nw-line,#e6e6ec);border-radius:10px;background:#fff}
.nw-rap-wyd a{font-weight:600}

/* Wyszukiwarka MCP: pole jak w Google */
.nw-szukaj{margin:1.6rem 0 .4rem;max-width:640px}
.nw-szukaj-pole{display:flex;align-items:center;gap:.6rem;padding:6px 6px 6px 18px;border:1px solid var(--line);border-radius:999px;background:#fff;box-shadow:0 1px 6px rgba(32,33,36,.12);color:#70757a}
.nw-szukaj-pole:focus-within{box-shadow:0 2px 10px rgba(32,33,36,.22);border-color:transparent}
.nw-szukaj-pole input{flex:1;min-width:0;border:0;outline:0;background:none;font:inherit;font-size:1.05rem;color:var(--ink);padding:.55rem 0}
.nw-szukaj-pole .btn{border-radius:999px;padding:.6rem 1.2rem;flex-shrink:0}
.nw-szukaj-wynik{margin-top:1rem;padding:1rem 1.2rem;border:1px solid var(--line);border-radius:12px;background:#fafafa;text-align:left}
.nw-szukaj-wynik p{margin:0;font-size:.95rem}
.nw-szukaj-wynik pre{margin:.7rem 0;padding:.8rem 1rem;background:#16161a;color:#e8e8ee;border-radius:8px;overflow-x:auto;font-size:.85rem;line-height:1.45}
@media (max-width:560px){.nw-szukaj-pole{padding-left:14px}.nw-szukaj-pole input{font-size:1rem}.nw-szukaj-pole .btn{padding:.55rem .9rem}}
.nw-szukaj-pole input::-webkit-search-cancel-button{display:none}
.nw-szukaj-wynik pre{white-space:pre-wrap;overflow-wrap:anywhere}

/* 02.11 runda 6: hero z powrotem na czarnym tle (decyzja właściciela), czerwona poświata u dołu */
.nw-cf-hero{background:
    radial-gradient(50% 44% at 50% 110%,rgba(240,72,60,.85) 0,rgba(220,38,38,.45) 32%,rgba(220,38,38,0) 64%),
    radial-gradient(circle,rgba(255,255,255,.10) 1px,transparent 1.4px) 0 0/9px 9px,
    linear-gradient(180deg,#0d0d11 0,#111116 60%,#16161b 100%)}

/* 02.11 runda 7 (pkt 30): strona główna sekcja po sekcji jak cloudflare.com */
.nw-cf-hero-in > .nw-cf-pill{min-height:48px;padding:0 26px}
/* Opinie: okno przeglądarki z kropkami */
.nw-cf-kropki{display:inline-flex;gap:6px;align-items:center;padding:0 14px 0 4px;align-self:center}
.nw-cf-kropki i{width:10px;height:10px;border-radius:50%;background:#e4dfdb}
.nw-cf-branze{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:24px;margin-top:28px}
.nw-cf-branze-t{margin:0;font-weight:600;color:#1b1b1f;white-space:nowrap}
.nw-cf-branze-pas{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%)}
.nw-cf-branze-in{display:flex;gap:12px;width:max-content;animation:nw-cf-tasma 40s linear infinite}
.nw-cf-branze-in span{display:inline-flex;align-items:center;min-height:40px;padding:0 18px;border:1px solid var(--cf-line);border-radius:999px;background:#fff;color:#3b3b44;font-size:.95rem;white-space:nowrap}
/* Rotujące słowa i liczniki: dzieci w jednej komórce siatki, widać tylko .is-on */
.nw-cf-rot{display:inline-grid;vertical-align:bottom}
.nw-cf-rot > *{grid-area:1/1;opacity:0;transform:translateY(.35em);transition:opacity .35s ease,transform .35s ease}
.nw-cf-rot > .is-on{opacity:1;transform:none}
.nw-cf-head .nw-cf-rot{justify-items:start;font-weight:600;color:var(--cf-red)}
/* Dlaczego: notki, alarm i tagi po lewej, licznik na przerywanej linii po prawej */
.nw-cf-dwa .nw-cf-panel{min-height:460px}
.nw-cf-notki li.is-czat{font-style:italic}
.nw-cf-notki li.is-alarm{border-color:#f3b4b4;background:#fff6f6;color:#7f1d1d}
.nw-cf-notki li.is-alarm b{display:block;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--cf-red);margin-bottom:2px}
.nw-cf-notki li.is-tag{padding:4px 10px;border-radius:999px;font:700 .68rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.05em;background:#f4f1ef;color:#5f5f69;box-shadow:none}
.nw-cf-notki li.is-pilne{background:#fde8e8;border-color:#f3b4b4;color:var(--cf-red2)}
.nw-cf-panel--z{display:flex;flex-direction:column}
.nw-cf-licznik{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:220px}
.nw-cf-licznik::before{content:"";position:absolute;left:-40px;right:-40px;top:50%;border-top:2px dashed rgba(255,255,255,.45)}
.nw-cf-licznik-pill{position:relative;justify-items:center}
.nw-cf-licznik-pill b{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border-radius:999px;background:#fff;color:#1b1b1f;font-weight:600;font-size:.98rem;box-shadow:0 12px 30px -12px rgba(0,0,0,.45);text-align:center}
.nw-cf-licznik-pill .nw-cf-ico{width:20px;height:20px;color:#16a34a}
/* Płacicie dopiero po decyzji: zakładki w pigułkach, schemat, kolumny */
.nw-cf-plany-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:0 auto 28px}
.nw-cf-plany-tabs button{appearance:none;font:inherit;font-weight:600;font-size:.95rem;min-height:44px;padding:0 20px;border-radius:999px;border:1px solid #d9d4d0;background:#fff;color:#3b3b44;cursor:pointer}
.nw-cf-plany-tabs button[aria-selected="true"]{background:#1b1b1f;border-color:#1b1b1f;color:#fff}
.nw-cf-plany-tabs button:focus-visible{outline:2px solid var(--cf-red);outline-offset:3px}
.nw-cf-plany:not(.is-js) .nw-cf-plany-tabs{display:none}
.nw-cf-plany:not(.is-js) .nw-cf-plan + .nw-cf-plan{margin-top:24px}
.nw-cf-plan{background:#fff;border:1px solid var(--cf-line)}
.nw-cf-plan[hidden]{display:none}
.nw-cf-plan-gora{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;align-items:center;padding:44px 44px 40px;border-bottom:1px solid var(--cf-line)}
.nw-cf-plan-wstep h3{font-size:clamp(1.5rem,2.4vw,2rem);font-weight:500;letter-spacing:-.02em;line-height:1.15;margin:0 0 .8rem;color:#1b1b1f}
.nw-cf-plan-wstep p{margin:0;color:#5f5f69;line-height:1.55}
.nw-cf-schemat{margin:0;padding:22px;border-radius:12px;background:radial-gradient(circle,rgba(27,27,31,.07) 1px,transparent 1.4px) 0 0/10px 10px,#faf8f7;border:1px solid var(--cf-line)}
.nw-cf-schemat-rz{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px}
.nw-cf-schemat-k{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:.82rem;font-weight:600;color:#1b1b1f;text-align:center}
.nw-cf-schemat-k .nw-cf-ico{width:40px;height:40px;padding:8px;border-radius:10px;background:#fff;border:1px solid var(--cf-line)}
.nw-cf-schemat-war{display:flex;flex-direction:column;gap:6px;position:relative}
.nw-cf-schemat-war i{font-style:normal;text-align:center;font-size:.8rem;font-weight:600;padding:6px 10px;border-radius:8px;background:#fff;border:1px solid #f0cfcf;color:var(--cf-red2)}
.nw-cf-schemat figcaption{margin-top:14px;text-align:center;font-size:.85rem;color:#6b6b76}
.nw-cf-kol{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr))}
.nw-cf-kol--4{--n:4}.nw-cf-kol--3{--n:3}
.nw-cf-kol-k{display:flex;flex-direction:column;padding:30px 28px 32px}
.nw-cf-kol-k + .nw-cf-kol-k{border-left:1px solid var(--cf-line)}
.nw-cf-kol-n{margin:0;font-size:.85rem;font-weight:600;color:#6b6b76;text-transform:uppercase;letter-spacing:.05em}
.nw-cf-kol-k h4{margin:.4rem 0 1rem;font-size:1.5rem;font-weight:500;letter-spacing:-.02em;color:#1b1b1f}
.nw-cf-kol-k ul{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.nw-cf-kol-k li{padding:5px 11px;border-radius:999px;background:#f4f1ef;font-size:.85rem;line-height:1.3;color:#2a2a31}
.nw-cf-kol-k .nw-cf-pill{margin-top:auto;align-self:flex-start}
/* Kafle: listy zadań i agentów */
.nw-cf-lista,.nw-cf-agenci2{display:flex;flex-direction:column;gap:8px;align-self:center;margin:28px 28px 28px 0;padding:14px;border-radius:12px;background:#fff;border:1px solid var(--cf-line);box-shadow:0 18px 40px -22px rgba(11,11,13,.35)}
.nw-cf-lista div,.nw-cf-agenci2 div{display:flex;align-items:center;gap:9px;font:500 .84rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;color:#1b1b1f;padding:8px 10px;border-radius:8px;background:#faf8f7}
.nw-cf-lista span,.nw-cf-agenci2 span{margin-left:auto;padding-left:10px;color:#6b6b76;font-size:.78rem;white-space:nowrap}
.nw-cf-lista i,.nw-cf-agenci2 i{width:8px;height:8px;border-radius:50%;flex:none}
.nw-cf-lista .is-ok,.nw-cf-agenci2 .is-ok{background:#16a34a}
.nw-cf-lista .is-run,.nw-cf-agenci2 .is-run{background:#2563eb}
.nw-cf-lista .is-wait,.nw-cf-agenci2 .is-wait{background:#f59e0b}
.nw-cf-lista--jasna{margin:auto 28px 28px;align-self:stretch}
.nw-cf-agenci2 p{margin:0 0 2px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6b6b76}
.nw-cf-agenci2 .nw-cf-agenci2-pole{margin-top:6px;background:#fff;border:1px solid #d9d4d0;font-family:inherit;color:#8a8a94;padding:6px 6px 6px 12px}
.nw-cf-agenci2-pole span{margin-left:0;padding-left:0;color:#8a8a94;font-size:.85rem;white-space:normal}
.nw-cf-agenci2-pole b{margin-left:auto;padding:6px 14px;border-radius:999px;background:var(--cf-red);color:#fff;font-size:.8rem}
.nw-cf-k:not(.nw-cf-k--sz) .nw-cf-k-txt{justify-content:flex-start}
/* Czerwony panel na końcu: pływające kafelki z ikonami */
.nw-cf-koniec-ikony{position:absolute;inset:0 0 56px;pointer-events:none}
.nw-cf-koniec-ik{position:absolute;display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:16px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);box-shadow:0 16px 30px -16px rgba(0,0,0,.4);animation:nw-cf-plyw 7s ease-in-out infinite}
.nw-cf-koniec-ik .nw-cf-ico{width:28px;height:28px;color:#fff}
.nw-cf-koniec-ik--0{left:7%;top:18%}
.nw-cf-koniec-ik--1{left:14%;top:58%;animation-delay:-2s}
.nw-cf-koniec-ik--2{left:3%;top:78%;animation-delay:-4s;width:52px;height:52px}
.nw-cf-koniec-ik--3{right:7%;top:16%;animation-delay:-1s}
.nw-cf-koniec-ik--4{right:15%;top:56%;animation-delay:-3s}
.nw-cf-koniec-ik--5{right:4%;top:76%;animation-delay:-5s;width:52px;height:52px}
.nw-cf-koniec-in{position:relative}
@keyframes nw-cf-plyw{50%{transform:translateY(-10px)}}
@media (prefers-reduced-motion:reduce){.nw-cf-branze-in,.nw-cf-koniec-ik{animation:none}.nw-cf-rot > *{transition:none}}
@media (max-width:1100px){.nw-cf-koniec-ikony{display:none}}
/* Runda 12, pkt 0: ciemny blok „Dlaczego redAi” nie styka się z czerwonym zakończeniem */
.nw-cf-sec + .nw-cf-koniec{margin-top:104px}
@media (max-width:980px){.nw-cf-sec + .nw-cf-koniec{margin-top:80px}}
@media (max-width:600px){.nw-cf-sec + .nw-cf-koniec{margin-top:64px}}
@media (max-width:980px){
  .nw-cf-plan-gora{grid-template-columns:1fr;padding:32px 28px;gap:24px}
  .nw-cf-kol,.nw-cf-kol--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nw-cf-kol-k:nth-child(odd){border-left:0}
  .nw-cf-kol-k:nth-child(n+3){border-top:1px solid var(--cf-line)}
  .nw-cf-lista,.nw-cf-agenci2{margin:0 24px 24px}
  .nw-cf-licznik{min-height:160px}
}
@media (max-width:600px){
  .nw-cf-branze{grid-template-columns:1fr;gap:12px;text-align:center}
  .nw-cf-branze-in{animation-duration:30s}
  .nw-cf-dwa .nw-cf-panel{min-height:0}
  .nw-cf-licznik::before{left:-20px;right:-20px}
  .nw-cf-licznik-pill b{font-size:.9rem;padding:10px 16px}
  .nw-cf-plan-gora{padding:26px 20px}
  .nw-cf-schemat{padding:16px}
  .nw-cf-schemat-rz{grid-template-columns:1fr;justify-items:center}
  .nw-cf-schemat-war{flex-direction:row;flex-wrap:wrap;justify-content:center}
  .nw-cf-kol,.nw-cf-kol--4{grid-template-columns:1fr}
  .nw-cf-kol-k + .nw-cf-kol-k{border-left:0;border-top:1px solid var(--cf-line)}
  .nw-cf-kol-k{padding:24px 20px}
  .nw-cf-kol-k .nw-cf-pill{align-self:stretch}
  .nw-cf-lista,.nw-cf-agenci2{margin:0 16px 20px}
  .nw-cf-lista--jasna{margin:0 16px 20px}
  .nw-cf-hero-in > .nw-cf-pill{width:100%}
}
.nw-cf-hero-in{max-width:1060px}
.nw-cf-hero h1{font-size:clamp(2.1rem,4.2vw,3.3rem);text-wrap:balance}
.nw-cf-rot > *{transition:opacity .22s ease,transform .22s ease}
.nw-cf-rot > .is-on{transition-delay:.22s}
.nw-cf-schemat-rz{background:linear-gradient(#efc2c2,#efc2c2) center/100% 2px no-repeat}
.nw-cf-schemat-k{padding:4px 6px;background:#faf8f7;border-radius:8px}
@media (max-width:600px){
  .nw-cf-schemat-rz{background:linear-gradient(#efc2c2,#efc2c2) center/2px 100% no-repeat}
  .nw-cf-notki{flex-direction:row;flex-wrap:wrap}
  .nw-cf-notki li{flex:1 1 100%}
  .nw-cf-notki li.is-tag{flex:0 0 auto}
  .nw-cf-licznik{min-height:120px}
}
/* 02.11 runda 7 (pkt 30), poprawki po recenzji */
.nw-cf-mapa{max-width:760px}
.nw-cf-mapa::before{inset:-4% -10% -6%}
.nw-mapa-svg{display:block;width:100%;height:auto;position:relative;z-index:1}
.nw-mapa-luk{fill:none;stroke:#dc2626;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:4 6;opacity:.75;animation:nw-mapa-plyn 1.6s linear infinite;animation-delay:var(--d,0s)}
.nw-mapa-os{fill:#1b1b1f;stroke:#fff;stroke-width:2}
.nw-mapa-halo{fill:#dc2626;opacity:.25;transform-box:fill-box;transform-origin:center;animation:plpulse 2.4s ease-out infinite}
.nw-mapa-et rect{fill:#1b1b1f}
.nw-mapa-et text{fill:#fff;font-family:inherit;font-size:10.5px;font-weight:600}
@keyframes nw-mapa-plyn{to{stroke-dashoffset:-20}}
@keyframes plpulse{0%{transform:scale(1);opacity:.35}70%{transform:scale(2.6);opacity:0}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.nw-mapa-luk,.nw-mapa-halo{animation:none}}
.nw-cf-schemat-war i.is-wy{background:#fff;border-color:#d8d3d6;color:#1b1b1f}
.nw-cf-schemat-war i.is-my{background:#fdeeee;border-color:#f0cfcf;color:var(--cf-red2)}
.nw-cf-schemat-war i.is-krok{background:#fff;border-color:#f0cfcf;color:var(--cf-red2);counter-increment:nwkrok}
.nw-cf-schemat-war{counter-reset:nwkrok}
.nw-cf-schemat-war i.is-krok::before{content:counter(nwkrok) ". ";opacity:.7}
.nw-cf-opinia{justify-content:space-between}
@media (max-width:600px){
  .nw-cf-plany-tabs{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .nw-cf-plany-tabs::-webkit-scrollbar{display:none}
  .nw-cf-plany-tabs button{flex:0 0 auto;white-space:nowrap}
  .nw-cf-hero-in{text-align:left}
  .nw-cf-hero h1{font-size:2.1rem}
  .nw-cf-hero p br{display:none}
  .nw-cf-agenci2 div{flex-wrap:wrap}
}
.nw-cf-opinia blockquote{font-size:clamp(1.3rem,2.5vw,2rem)}
@media (max-width:600px){
  .nw-cf-notki{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;align-items:start}
  .nw-cf-notki li{flex:none!important}
  .nw-cf-notki li:nth-child(odd){transform:rotate(-1.6deg)!important}
  .nw-cf-notki li:nth-child(even){transform:rotate(1.4deg)!important;margin-top:10px}
  .nw-cf-notki li.is-alarm{grid-column:1/-1}
  .nw-cf-notki li.is-tag{justify-self:start}
}

/* Runda 8 (02.11.2026): plan biura w sekcji „Serwer: w Waszej siedzibie” i kafelki „Dlaczego redAi” ze slajdów 2 i 3 */
.nw-plan-t{font-size:10px;font-weight:600;letter-spacing:.1em;fill:#9a8f95;font-family:inherit}
.nw-cf-why{border:1px solid var(--cf-line);background:#fff}
.nw-cf-why-eb{margin:0;padding:20px 28px;border-bottom:1px solid var(--cf-line);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--cf-red)}
.nw-cf-why-rz{display:grid;grid-template-columns:210px repeat(3,minmax(0,1fr));border-bottom:1px solid var(--cf-line)}
.nw-cf-why-blok:last-child .nw-cf-why-rz:last-child{border-bottom:0}
.nw-cf-why-gl{margin:0;padding:28px;font-size:1.3rem;font-weight:500;letter-spacing:-.015em;line-height:1.2;color:#1b1b1f;border-right:1px solid var(--cf-line)}
.nw-cf-why-k{padding:28px 26px 30px}
.nw-cf-why-k + .nw-cf-why-k{border-left:1px solid var(--cf-line)}
.nw-cf-why-k h4{margin:14px 0 .45rem;font-size:1.06rem;font-weight:600;color:#1b1b1f;line-height:1.3}
.nw-cf-why-k p{margin:0;color:#5f5f69;font-size:.94rem;line-height:1.55}
.nw-cf-why-blok--2{background:#151518;color:#fff}
.nw-cf-why-blok--2 .nw-cf-why-eb{color:#ff7a6e;border-color:rgba(255,255,255,.12)}
.nw-cf-why-blok--2 .nw-cf-why-rz{border-color:rgba(255,255,255,.12)}
.nw-cf-why-blok--2 .nw-cf-why-gl{color:#fff;border-color:rgba(255,255,255,.12)}
.nw-cf-why-blok--2 .nw-cf-why-k + .nw-cf-why-k{border-color:rgba(255,255,255,.12)}
.nw-cf-why-blok--2 .nw-cf-why-k h4{color:#fff}
.nw-cf-why-blok--2 .nw-cf-why-k p{color:#bdb7bb}
.nw-cf-why-blok--2 .nw-cf-ico{color:#fff}
@media (max-width:1024px){
  .nw-cf-why-rz{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nw-cf-why-gl{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--cf-line);padding:22px 26px 18px}
  .nw-cf-why-blok--2 .nw-cf-why-gl{border-color:rgba(255,255,255,.12)}
}
@media (max-width:700px){
  .nw-cf-why-rz{grid-template-columns:1fr}
  .nw-cf-why-eb{padding:18px 20px}
  .nw-cf-why-gl{padding:20px 20px 16px;font-size:1.15rem}
  .nw-cf-why-k{padding:22px 20px 24px}
  .nw-cf-why-k + .nw-cf-why-k{border-left:0;border-top:1px solid var(--cf-line)}
  .nw-cf-why-blok--2 .nw-cf-why-k + .nw-cf-why-k{border-color:rgba(255,255,255,.12)}
}
/* 02.11 runda 8: hero bez łamania w pół zdania, napisy pokojów nad łukami */
.nw-cf-hero p{max-width:680px}
.nw-plan-t{paint-order:stroke;stroke:#fbf6f7;stroke-width:5px;stroke-linejoin:round}

/* 02.11 runda 8, punkt 42: nagłówki stron produktów lżejsze, jak na głównej (styl Cloudflare) */
.nw-of-head h1{font-weight:500;letter-spacing:-.03em;color:#1b1b1f}
.nw-sec h2,.nw-close h2{font-weight:500;letter-spacing:-.025em}
.nw-sec h2{color:#1b1b1f}
.nw-sec h3,.nw-zrzut-txt h3,.nw-tabs-txt h3{font-weight:600;letter-spacing:-.01em}

/* 02.11 runda 8, punkty 46-47: dwie drogi, katalog agentów z wyszukiwarką, porównanie bez/z WebMCP */
.nw-drogi{gap:1.25rem}
.nw-droga{display:flex;flex-direction:column;padding:2rem;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.nw-droga--ciemna{background:#1b1b1f;border-color:#1b1b1f;color:#fff}
.nw-droga-nr{font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--red)}
.nw-droga--ciemna .nw-droga-nr{color:#ff8a8f}
.nw-droga h3{font-size:1.45rem;margin:.5rem 0 .5rem;line-height:1.25}
.nw-droga > p{margin:0;color:#4a4a55}
.nw-droga--ciemna > p,.nw-droga--ciemna .nw-pkt li{color:#d6d3d6}
.nw-droga--ciemna .nw-pkt li::before{border-color:#ff8a8f}
.nw-droga .nw-pkt{margin:1.1rem 0 1.6rem}
.nw-droga .btn{margin-top:auto;align-self:flex-start}
.nw-droga--ciemna .btn-primary{background:#fff;border-color:#fff;color:#1b1b1f}
.nw-droga--ciemna .btn-primary:hover{background:#f1eef0}

.nw-akat-szukaj{display:flex;flex-direction:column;gap:1rem;margin-bottom:.75rem}
.nw-akat-pole{max-width:560px}
.nw-akat-dzialy{display:flex;flex-wrap:wrap;gap:.5rem}
.nw-akat-dzialy button{appearance:none;border:1px solid var(--line);background:#fff;color:#3f3f49;font:600 .9rem/1 inherit;padding:.6rem .95rem;border-radius:999px;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}
.nw-akat-dzialy button:hover{border-color:#c9c9d2;color:var(--ink)}
.nw-akat-dzialy button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.nw-akat-dzialy button:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.nw-akat-licznik{min-height:1.4em;margin:0 0 .75rem;color:var(--muted);font-size:.92rem}
.nw-akat-lista{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.nw-akat-karta{display:flex;flex-direction:column;padding:1.35rem 1.4rem;border:1px solid var(--line);border-radius:var(--r);background:#fff;color:var(--ink)}
.nw-akat-karta[hidden]{display:none}
.nw-akat-karta h3{font-size:1.1rem;margin:.65rem 0 .35rem}
.nw-akat-karta > p{margin:0;color:#4a4a55;font-size:.95rem}
.nw-akat-karta .nw-pkt{margin:.8rem 0 0;gap:.3rem}
.nw-akat-karta .nw-pkt li{font-size:.92rem}
.nw-akat-znak{align-self:flex-start;font-size:.75rem;font-weight:600;padding:.28rem .6rem;border-radius:999px;background:#f1f1f4;color:#4a4a55}
.nw-akat-znak.is-gotowy{background:var(--red-soft);color:var(--red-dark)}
.nw-akat-prog{display:flex;flex-wrap:wrap;gap:.35rem;margin:auto 0 0;padding-top:1rem}
.nw-akat-prog span{font-size:.78rem;color:#55555f;border:1px solid var(--line);border-radius:6px;padding:.18rem .45rem}
.nw-akat-karta--wlasny{border-style:dashed;border-color:#cfcfd8;background:transparent;justify-content:center}
.nw-akat-karta--wlasny:hover{border-color:var(--red);text-decoration:none}
.nw-akat-karta--wlasny h3{margin-top:0}
.nw-akat-karta--wlasny .nw-more{margin-top:.9rem}
.nw-sec--tint .nw-akat-karta--wlasny{background:rgba(255,255,255,.5)}
@media (max-width:1024px){.nw-akat-lista{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .nw-akat-lista{grid-template-columns:minmax(0,1fr)}
  .nw-akat-dzialy{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:0 16px 4px;scrollbar-width:none}
  .nw-akat-dzialy::-webkit-scrollbar{display:none}
  .nw-akat-dzialy button{flex:none}
  .nw-droga{padding:1.4rem}
  .nw-droga h3{font-size:1.25rem}
}

.nw-pp-prosba{margin:0 0 1.25rem;font-size:1.15rem;color:var(--ink);max-width:720px}
.nw-pp-prosba span{display:block;font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem}
.nw-pp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.nw-pp-kol{display:flex;flex-direction:column;padding:1.6rem;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.nw-pp-kol h3{margin:0 0 1rem;font-size:1.15rem;display:flex;align-items:center;gap:.5rem}
.nw-pp-kol h3::before{content:"";width:.6rem;height:.6rem;border-radius:50%;background:#b9b9c3}
.nw-pp-kol--z{border-color:var(--ink);box-shadow:var(--shadow)}
.nw-pp-kol--z h3::before{background:var(--red)}
.nw-pp-kod{margin:0 0 1rem;padding:1rem 1.1rem;background:#1b1b1f;color:#e9e6e9;border-radius:var(--r-sm);font-size:.88rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.nw-pp-kroki{margin:0;padding-left:1.2rem;display:grid;gap:.45rem;color:#3f3f49}
.nw-pp-wynik{margin:auto 0 0;padding-top:1.1rem;font-weight:600}
.nw-pp-kol--bez .nw-pp-wynik{color:#8a8a94}
.nw-pp-kol--z .nw-pp-wynik{color:var(--ink)}
.nw-pp-kol--bez .nw-pp-kroki{color:#6a6a74}
@media (max-width:780px){.nw-pp{grid-template-columns:minmax(0,1fr)}.nw-pp-kol{padding:1.25rem}}

/* Katalog agentów zwinięty: na komputerze karty do progu „zwin” (reszta ma .is-poza), na telefonie 4.
   Karta „Nie ma na liście?” zostaje widoczna zawsze. Filtr albo przycisk rozwija całą listę. */
.nw-akat-znak.is-czat{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px #cfcfd8}
.nw-akat-wiecej{display:none}
.nw-akat.is-zwiniety .nw-akat-karta.is-poza{display:none}
.nw-akat.is-zwiniety:has(.is-poza) .nw-akat-wiecej{display:flex;margin:1.25rem auto 0;width:max-content}
@media (max-width:640px){
  .nw-akat.is-zwiniety .nw-akat-karta:not(.nw-akat-karta--wlasny):nth-child(n+5){display:none}
  .nw-akat.is-zwiniety .nw-akat-wiecej{display:flex;width:100%;justify-content:center;margin-top:1rem}
}

/* Nagłówki stron bez jednego słowa samotnie w ostatniej linii */
.nw-of-head h1,.nw-page-head h1{text-wrap:balance}

/* /nowa/miasta: mapa województw z miastami i lista według regionów */
.nw-mst{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:3rem;align-items:start}
.nw-mst-mapa{margin:0;position:sticky;top:96px}
.nw-mst-mapa svg{display:block;width:100%;height:auto;overflow:visible}
.nw-mst-woj path{fill:#f1f1f3;stroke:#fff;stroke-width:1.1;stroke-linejoin:round;transition:fill .15s}
.nw-mst-woj path.is-akt{fill:var(--red-soft)}
.nw-mst-pkt circle{fill:var(--red);stroke:#fff;stroke-width:1.6;transition:r .15s}
.nw-mst-pkt text{font-size:10px;font-weight:600;fill:var(--ink);paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;opacity:0;transition:opacity .15s;pointer-events:none}
.nw-mst-pkt.is-duze text{opacity:1}
.nw-mst-pkt:hover circle,.nw-mst-pkt:focus circle,.nw-mst-pkt.is-on circle{r:6;fill:var(--red-dark)}
.nw-mst-pkt:hover text,.nw-mst-pkt:focus text,.nw-mst-pkt.is-on text{opacity:1}
.nw-mst-pkt:focus{outline:none}
.nw-mst-mapa figcaption{margin-top:1rem;text-align:center;font-size:.9rem;color:var(--muted)}
.nw-mst-grupy{display:grid;gap:1rem}
.nw-mst-grupa{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:1.4rem 1.5rem}
.nw-mst-grupa-glowa{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.25rem 1rem;margin-bottom:.9rem}
.nw-mst-grupa-glowa h2{font-size:1.25rem;margin:0;letter-spacing:-.01em}
.nw-mst-grupa-glowa span{font-size:.85rem;color:var(--muted)}
.nw-mst-grupa ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.nw-mst-grupa li a{display:inline-flex;align-items:center;padding:.4rem .8rem;border:1px solid var(--line);border-radius:999px;font-size:.92rem;font-weight:500;color:var(--ink);text-decoration:none;transition:border-color .15s,color .15s,background .15s}
.nw-mst-grupa li a:hover,.nw-mst-grupa li a:focus-visible{border-color:var(--red);color:var(--red-dark);background:var(--red-soft)}
.nw-mst-h2{margin:0 0 1.5rem}
.nw-mst-kroki{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.nw-mst-kroki>div{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.4rem 1.5rem}
.nw-mst-kroki h3{font-size:1.05rem;margin:.75rem 0 .35rem}
.nw-mst-kroki p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.55}
.nw-mst-nr{display:inline-grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--red-soft);color:var(--red-dark);font-weight:700;font-size:.9rem}
.nw-mst-brak{display:flex;align-items:center;justify-content:space-between;gap:1.5rem 3rem;flex-wrap:wrap}
.nw-mst-brak h2{margin:0 0 .4rem}
.nw-mst-brak p{margin:0;color:var(--muted);max-width:36rem}
@media (max-width:900px){
  .nw-mst{grid-template-columns:1fr;gap:2rem}
  .nw-mst-mapa{position:static;max-width:560px;margin:0 auto;width:100%}
  .nw-mst-kroki{grid-template-columns:1fr}
}

/* Karty z obrazkiem (typ sekcji „kafle”, np. katalog szkoleń) */
.nw-kafle{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}
.nw-kafel{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r);background:#fff;color:var(--ink);overflow:hidden;transition:border-color .15s,box-shadow .15s,transform .15s}
.nw-kafel:hover{border-color:#cfcfd8;box-shadow:var(--shadow);text-decoration:none;transform:translateY(-2px)}
.nw-kafel img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:#f1f1f4}
.nw-kafel-txt{display:flex;flex-direction:column;flex:1;padding:1.15rem 1.25rem 1.25rem}
.nw-kafel-tag{align-self:flex-start;margin-bottom:.55rem;padding:.12rem .55rem;border-radius:999px;background:var(--red-soft);color:var(--red-dark);font-size:.75rem;font-weight:700;letter-spacing:.02em}
.nw-kafel h3{font-size:1.08rem;margin:0 0 .4rem;line-height:1.3}
.nw-kafel p{margin:0;color:#4a4a55;font-size:.94rem}
.nw-kafel-meta{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem .9rem;margin:.85rem 0 0;padding:.75rem 0 0;border-top:1px solid var(--line);font-size:.84rem;color:#5a5a66}
.nw-kafel-meta li::before{content:"";display:inline-block;width:5px;height:5px;margin:0 .45rem .12rem 0;border-radius:50%;background:var(--red)}
.nw-kafel .nw-more{margin-top:auto;padding-top:.9rem}
@media(max-width:480px){.nw-kafle{grid-template-columns:minmax(0,1fr)}}

/* Pasek na końcu podstron (zamiast FAQ i trzech kart, runda 9) */
.nw-dol{background:var(--ink);color:#fff;padding:2.25rem 0}
.nw-dol-in{display:flex;align-items:center;justify-content:space-between;gap:1.5rem 2.5rem;flex-wrap:wrap}
.nw-dol p{margin:0;max-width:640px;font-size:1.12rem;line-height:1.45;color:#fff}
.nw-dol-cta{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}
.nw-dol-tel{color:#d8d8e0;font-weight:600;white-space:nowrap}
.nw-dol-tel:hover{color:#fff}
@media(max-width:600px){.nw-dol{padding:1.75rem 0}.nw-dol p{font-size:1.02rem}}

/* Szkolenia (runda 9, pkt 64): kluczowe dane w nagłówku, zdjęcie w nagłówku, program godzinowy, ścieżki kart */
.nw-of-fakty{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:0;margin:1.35rem 0 0;border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden}
.nw-of-fakty div{padding:.7rem .9rem;border-right:1px solid var(--line)}
.nw-of-fakty div:last-child{border-right:0}
.nw-of-fakty dt{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6a6a76;margin:0 0 .15rem}
.nw-of-fakty dd{margin:0;font-size:.93rem;font-weight:600;color:var(--ink);line-height:1.3}
.nw-of-hero-foto{margin:0}
.nw-of-hero-foto img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r);box-shadow:var(--shadow)}
.nw-kafle-grupa{margin:2rem 0 .9rem}
.nw-kafle-grupa:first-child{margin-top:0}
.nw-kafle-grupa h3{font-size:1.12rem;margin:0}
.nw-kafle-grupa p{margin:.2rem 0 0;color:#5a5a66;font-size:.94rem}
.nw-kafle--4{grid-template-columns:repeat(auto-fill,minmax(235px,1fr))}
.nw-kafle--4 .nw-kafel h3{font-size:1rem}
.nw-kafle--4 .nw-kafel p{font-size:.9rem}
.nw-plan{display:grid;gap:1.25rem}
.nw-plan--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nw-plan-dzien{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:1.1rem 1.25rem}
.nw-plan-dzien h3{font-size:1.05rem;margin:0 0 .6rem}
.nw-plan-dzien ol{list-style:none;margin:0;padding:0}
.nw-plan-dzien li{display:grid;grid-template-columns:3.4rem 1fr;gap:.8rem;padding:.7rem 0;border-top:1px solid var(--line)}
.nw-plan-dzien li:first-child{border-top:0;padding-top:.2rem}
.nw-plan-godz{font-variant-numeric:tabular-nums;font-weight:700;color:var(--red);font-size:.9rem;padding-top:.05rem}
.nw-plan-dzien b{display:block;font-size:.97rem;line-height:1.35}
.nw-plan-dzien li span:not(.nw-plan-godz){display:block;color:#4a4a55;font-size:.9rem;margin-top:.15rem}
.nw-plan-dzien em{display:inline-block;margin-top:.35rem;padding:.05rem .5rem;border-radius:999px;background:var(--red-soft);color:var(--red);font-style:normal;font-size:.72rem;font-weight:700}
@media(max-width:860px){.nw-plan--2{grid-template-columns:1fr}}
@media(max-width:600px){.nw-of-fakty{grid-template-columns:repeat(2,1fr)}.nw-of-fakty div:nth-child(2n){border-right:0}.nw-of-fakty div:nth-child(n+3){border-top:1px solid var(--line)}}

/* Logo (dymek) przy napisie redAi w treści strony ('marka' => true) */
/* Porównanie z ikonkami: tak / nie, grupy wierszy */
.nw-kom{position:relative;display:inline-flex;align-items:flex-start;gap:.5rem}
.nw-ik{flex:none;width:20px;height:20px;margin-top:.05rem}
.nw-ik--tak{fill:var(--red)}
.nw-ik--nie{color:#b9b9c3}
.nw-of-tabela tr.nw-of-grupa th{background:#fafafb;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:.65rem 1rem}
.nw-of-tabela--por tr.nw-of-grupa th{background:#fafafb}
.nw-of-tabela--por td{color:#4a4a55}
.nw-of-tabela--por td:nth-child(2){color:var(--ink)}
/* Runda 9, punkt 75: mniejsze nagłówki na podstronach produktów, bliżej proporcji Cloudflare */
.nw-of-sec h2{font-size:clamp(1.6rem,2.4vw,2.1rem);text-wrap:balance}
.nw-of-head--img h1{font-size:clamp(2rem,3.2vw,2.6rem)}
.nw-of-tabela--por tbody th{font-weight:500}
.nw-of-tabela--por tr.nw-of-grupa th{font-weight:700}
.nw-ik--nie{color:#9a9aa5}
.nw-of-tabela--por thead th{font-size:.95rem;color:var(--ink);padding-top:1rem;padding-bottom:1rem}
.nw-of-tabela--por thead th:nth-child(2){color:var(--red-dark)}
/* Nowości: data i obszar z lewej, tekst obok w wygodnej szerokości; paginacja */
@media (min-width:860px){
  .nw-now li{display:grid;grid-template-columns:200px minmax(0,46rem);column-gap:2.5rem;align-items:start}
  .nw-now li > .nw-now-meta{grid-row:1 / span 2;flex-direction:column;align-items:flex-start;gap:.4rem;padding-top:.45rem}
  .nw-now li > h3,.nw-now li > p{grid-column:2}
  .nw-now li > h3{margin-top:0}
  .nw-now li:target{margin:0 -1rem}
}
.nw-now li p{margin:0;color:#3f3f49;line-height:1.65}
.nw-pag{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:3rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line)}
.nw-pag ol{display:flex;gap:.35rem;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.nw-pag ol a,.nw-pag ol span{display:inline-flex;align-items:center;justify-content:center;min-width:2.4rem;height:2.4rem;padding:0 .6rem;border:1px solid var(--line);border-radius:var(--r);color:var(--ink);text-decoration:none;font-weight:600}
.nw-pag ol a:hover{border-color:var(--ink)}
.nw-pag ol span[aria-current]{background:var(--ink);border-color:var(--ink);color:#fff}
.nw-pag-kier{font-weight:600;color:var(--ink);text-decoration:none}
.nw-pag-kier.is-off{color:var(--muted);opacity:.5}
@media (max-width:520px){.nw-pag{justify-content:center}.nw-pag-kier{flex:1 1 40%}.nw-pag-kier:last-child{text-align:right}.nw-pag ol{order:3;width:100%;justify-content:center}}

/* Marketplace (runda 10, punkt 94, 03.11.2026): układ jak marketplace Cloudflare. Nagłówek na środku z wyszukiwarką,
   kategorie po lewej, siatka kart po prawej; karta modułu z ikoną, zrzutami, opisem i szczegółami z boku. */
.nw-mp-hero{padding:4.5rem 0 1rem;text-align:center;background:#fff}
.nw-mp-hero-in{max-width:52rem}
.nw-mp-hero h1{font-size:clamp(2rem,4vw,3.2rem);font-weight:500;letter-spacing:-.03em;margin:0 0 1rem}
.nw-mp-hero p{font-size:1.12rem;color:#3f3f49;max-width:42rem;margin:0 auto}
.nw-mp-szukaj{max-width:36rem;margin:2rem auto 0;text-align:left}
.nw-mp-szukaj input{padding:.7rem 0}
.nw-mp-hero .nw-mp-hero-dev{font-size:.95rem;color:var(--muted);margin-top:1.1rem}
.nw-mp-hero-dev a{font-weight:600}
.nw-mp{padding:3rem 0 1.5rem}
.nw-mp-uklad{display:grid;grid-template-columns:230px minmax(0,1fr);gap:2.5rem;align-items:start}
.nw-mp-bok{position:sticky;top:96px}
.nw-mp-bok-t{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 .6rem}
.nw-mp-kat{display:flex;flex-direction:column;gap:2px}
.nw-mp-kat button{display:flex;justify-content:space-between;align-items:center;gap:.5rem;width:100%;padding:.55rem .75rem;border:0;border-radius:8px;background:none;font:inherit;font-size:.95rem;color:#3f3f49;text-align:left;cursor:pointer}
.nw-mp-kat button span{font-size:.8rem;color:var(--muted);background:#f0f0f4;border-radius:999px;padding:.05rem .5rem}
.nw-mp-kat button:hover{background:#f4f4f7}
.nw-mp-kat button[aria-pressed="true"]{background:var(--red-soft);color:var(--red-dark);font-weight:600}
.nw-mp-kat button[aria-pressed="true"] span{background:#fff;color:var(--red-dark)}
.nw-mp-licznik{margin:0 0 1rem;font-size:.9rem;color:var(--muted)}
.nw-mp-siatka{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem}
.nw-mp-siatka--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nw-mp-karta{display:flex;flex-direction:column;gap:.9rem;padding:1.4rem;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);transition:border-color .15s,box-shadow .15s,transform .15s}
a.nw-mp-karta:hover{border-color:#cfcfd8;box-shadow:var(--shadow);transform:translateY(-2px);text-decoration:none}
.nw-mp-karta[hidden]{display:none}
.nw-mp-karta-g{display:flex;gap:.85rem;align-items:center}
.nw-mp-karta h3{font-size:1.08rem;font-weight:600;margin:0;line-height:1.3}
.nw-mp-autor{margin:.15rem 0 0;font-size:.85rem;color:var(--muted)}
.nw-mp-ico{flex-shrink:0;width:48px;height:48px;border-radius:12px;background:var(--red-soft);color:var(--red-dark);display:inline-flex;align-items:center;justify-content:center}
.nw-mp-ico svg{width:24px;height:24px}
.nw-mp-ico--duza{width:80px;height:80px;border-radius:18px}
.nw-mp-ico--duza svg{width:40px;height:40px}
.nw-mp-opis{margin:0;color:#4a4a55;font-size:.95rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nw-mp-karta-d{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding-top:.9rem;border-top:1px solid #f0f0f4}
.nw-mp-tag{white-space:nowrap;font-size:.8rem;color:#4a4a55;background:#f4f4f7;border-radius:999px;padding:.2rem .65rem}
.nw-mp-spr{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;font-weight:600;color:#15803d}
.nw-mp-karta--wlasny{border-style:dashed;background:transparent}
.nw-mp-karta--wlasny .nw-mp-ico{background:#f0f0f4;color:var(--ink)}
.nw-mp-pusto{margin:1.25rem 0 0;color:#4a4a55}
/* Runda 12, pkt 2: różowe tło z dawnego nagłówka zeszło do pasa dla programistów; „Kto komu płaci” jako schemat */
.nw-mp-dev{padding:0 0 5.5rem}
.nw-mp-dev-in{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:3rem 3.25rem;border-radius:16px;background:linear-gradient(135deg,#fff7f6 0%,#fde9e6 100%);border:1px solid #f6dcd8}
.nw-mp-dev h2{font-weight:500;letter-spacing:-.02em;margin:0 0 .6rem}
.nw-mp-dev p{margin:0;max-width:40rem;color:#4a4a55}
.nw-mp-dev-cta{display:flex;gap:.75rem;flex-shrink:0}
.nw-mp-dev .nw-btn-line{background:#fff}
.nw-mp-plac{margin:0;display:grid;gap:1rem;align-content:start}
.nw-mp-plac-tor{list-style:none;margin:0;padding:1.5rem;border:1px solid var(--line);border-radius:16px;background:#fafafb}
.nw-mp-plac-wez{display:grid;grid-template-columns:44px 1fr;column-gap:.9rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem}
.nw-mp-plac-wez .nw-ik{grid-row:span 2;width:44px;height:44px;padding:11px;margin:0;border-radius:10px;background:#f1f1f4;color:var(--ink)}
.nw-mp-plac-wez b{font-size:1rem;line-height:1.3}
.nw-mp-plac-wez span{font-size:.88rem;color:var(--muted);line-height:1.4}
.nw-mp-plac-wez--my{border-color:#f3b4ad;box-shadow:0 0 0 4px var(--red-glow)}
.nw-mp-plac-wez--my .nw-ik{background:var(--red-soft);color:var(--red-dark)}
.nw-mp-plac-str{position:relative;margin-left:calc(1rem + 21px);padding:.9rem 0 .9rem 1.35rem;border-left:2px solid #d6d6de;font-size:.88rem;font-weight:500;color:#3f3f49}
.nw-mp-plac-str::after{content:"";position:absolute;left:-7px;bottom:-1px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid #d6d6de}
.nw-mp-plac-panel{border:1px solid var(--line);border-radius:12px;background:#fff;padding:1rem 1.25rem}
.nw-mp-plac-panel p{margin:0 0 .6rem;font-size:.82rem;font-weight:600;color:var(--muted)}
.nw-mp-plac-panel dl{margin:0;display:grid}
.nw-mp-plac-panel dl div{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-top:1px solid #f0f0f4;font-size:.92rem}
.nw-mp-plac-panel dt{font-weight:600;color:var(--ink)}
.nw-mp-plac-panel dd{margin:0;color:#4a4a55;text-align:right}
/* karta modułu (runda 11, pkt 122): układ jak /dev/katalog/<klucz>/ */
.nw-mpk{padding:1.75rem 0 4rem;background:#fafafb}
.nw-mpk-okruchy{display:flex;align-items:center;gap:.5rem;font-size:.88rem;color:var(--muted);margin-bottom:1.5rem}
.nw-mpk-okruchy a{color:var(--muted)}
.nw-mpk-okruchy a:hover{color:var(--ink)}
.nw-mpk-okruchy svg{width:14px;height:14px}
.nw-mpk-karta{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.35rem 1.4rem}
.nw-mpk-karta h2{font-size:1.05rem;font-weight:600;letter-spacing:-.01em;margin:0 0 .9rem}
.nw-mpk-karta-h{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.9rem}
.nw-mpk-karta-h h2{margin:0}
.nw-mpk-top{padding:0;overflow:hidden;margin-bottom:1.25rem}
.nw-mpk-top-in{display:flex;gap:1.1rem;align-items:flex-start;padding:1.4rem}
.nw-mpk-top h1{font-size:clamp(1.5rem,2.4vw,1.9rem);font-weight:500;letter-spacing:-.02em;margin:0 0 .2rem}
.nw-mpk-sub{margin:0 0 .75rem;color:var(--muted);font-size:.95rem}
.nw-mpk-lead{margin:0;font-size:1.05rem;font-weight:500;color:var(--ink);max-width:52rem}
.nw-mpk-pasek{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.4rem;border-top:1px solid var(--line);background:#fafafb}
.nw-mpk-pasek-l{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;align-items:center;font-size:.9rem;color:var(--muted)}
.nw-mpk-uklad{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:1.25rem;align-items:start}
.nw-mpk-stos{display:grid;gap:1.25rem;min-width:0}
.nw-mpk-lista{margin:0;padding-left:1.1rem;display:grid;gap:.55rem;color:#3f3f49;line-height:1.6}
.nw-mpk-lista li::marker{color:#b4b4bf}
.nw-mpk-przyklady{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.nw-mpk-przyklady li{background:#f6f6f8;border:1px solid #ececf1;border-radius:8px;padding:.65rem .9rem;color:#3f3f49}
.nw-mpk-galeria{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}
.nw-mpk-galeria figure{margin:0}
.nw-mpk-galeria figure:only-child{grid-column:1/-1;max-width:640px}
.nw-mpk-galeria img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:8px;background:#fff}
.nw-mpk-galeria figcaption{font-size:.86rem;color:var(--muted);margin-top:.5rem}
.nw-mpk-kroki{list-style:none;counter-reset:k;margin:0;padding:0;display:grid;gap:.7rem;color:#3f3f49}
.nw-mpk-kroki li{counter-increment:k;display:grid;grid-template-columns:1.6rem 1fr;gap:.7rem;align-items:start}
.nw-mpk-kroki li::before{content:counter(k);width:1.6rem;height:1.6rem;border-radius:50%;background:#f1f1f4;font-size:.8rem;font-weight:600;display:grid;place-items:center;color:var(--ink)}
.nw-mpk-uwaga{margin:1rem 0 0;padding:.85rem 1rem;border-radius:8px;background:#fafafb;border:1px solid var(--line);color:#4a4a55;font-size:.94rem}
.nw-mpk-txt{margin:0;color:#4a4a55;line-height:1.6}
.nw-mpk-znak{font-size:.8rem;padding:.15rem .55rem;border-radius:999px;background:#f1f1f4;color:#4a4a55;font-variant-numeric:tabular-nums}
.nw-mpk-h{margin:1.1rem 0 .6rem;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8a8a96}
.nw-mpk-wersja{display:grid;grid-template-columns:3rem 1fr;gap:.6rem;font-size:.86rem;color:#5a5a66}
.nw-mpk-wersja + .nw-mpk-wersja{margin-top:.7rem;padding-top:.7rem;border-top:1px solid #f0f0f4}
.nw-mpk-wersja > span{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.nw-mpk-wersja ul{margin:0;padding-left:1rem;display:grid;gap:.25rem}
.nw-mpk-kv{display:grid;grid-template-columns:auto 1fr;gap:.55rem 1rem;margin:0;font-size:.92rem}
.nw-mpk-kv dt{color:var(--muted)}
.nw-mpk-kv dd{margin:0;text-align:right}
.nw-mpk-cta{display:flex;flex-wrap:wrap;gap:.75rem 1.1rem;align-items:center;margin-top:1rem}
@media (max-width:900px){
  .nw-mp-uklad{grid-template-columns:1fr;gap:1.75rem}
  .nw-mpk-uklad{grid-template-columns:1fr}
  .nw-mp-bok{position:static}
  .nw-mp-kat{flex-direction:row;flex-wrap:wrap;gap:.4rem}
  .nw-mp-kat button{width:auto;border:1px solid var(--line);border-radius:999px;padding:.4rem .8rem}
  .nw-mp-siatka--3{grid-template-columns:1fr}
  .nw-mp-dev-in{flex-direction:column;align-items:flex-start}
}
@media (max-width:560px){
  .nw-mp-hero{padding:3rem 0 2.5rem}
  .nw-mp-ico--duza{width:52px;height:52px}
  .nw-mpk-top-in{flex-direction:column;gap:.8rem}
  .nw-mpk-pasek{flex-direction:column;align-items:stretch}
  .nw-mpk-pasek .btn{justify-content:center}
  .nw-mpk-galeria{grid-template-columns:1fr}
  .nw-mpk-karta{padding:1.1rem}
  .nw-mpk-top{padding:0}
  .nw-mp-dev-cta{flex-wrap:wrap}
  .nw-mp-dev-in{padding:2rem 1.4rem}
  .nw-mp-dev{padding-bottom:3.5rem}
  .nw-mp{padding-top:2rem}
  .nw-mp-plac-tor{padding:1rem}
  .nw-mp-plac-panel dl div{flex-direction:column;gap:.1rem}
  .nw-mp-plac-panel dd{text-align:left}
}

/* Runda 10, pkt 95: produkty z wyśrodkowanym nagłówkiem także bez zrzutu, lista produktów i formularz rozmowy na dole */
.nw-of-head--szer:not(.nw-of-head--img) .container > div{max-width:820px;margin:0 auto;text-align:center}
.nw-of-head--szer:not(.nw-of-head--img) .container > div > p{margin-left:auto;margin-right:auto}
.nw-of-head--szer .nw-szukaj{text-align:left;max-width:640px;margin-left:auto;margin-right:auto}
.nw-of-head--szer .nw-of-szkic{margin-left:auto;margin-right:auto}

/* Lista produktów i rozwiązań na dole strony (runda 11): jak „primitives” na cloudflare.com */
.nw-lista{border-top:1px solid #ececf0}
.nw-lista-head{max-width:720px;margin:0 0 1.6rem}
.nw-lista-head h2{font-size:clamp(1.5rem,2.2vw,1.9rem);font-weight:500;letter-spacing:-.01em;margin:0 0 .5rem;display:flex;align-items:center;gap:.4em;flex-wrap:wrap}
.nw-lista-head p{margin:0;color:#5f5f69;font-size:1rem;line-height:1.55}
.nw-lista-siatka{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #e6e6eb;border-radius:4px;background:#fff}
.nw-lista-kol{padding:1.6rem 1.6rem 1.2rem;border-left:1px solid #e6e6eb}
.nw-lista-kol:first-child{border-left:0}
.nw-lista-podpis{margin:0 0 .9rem;font-size:.82rem;color:#6b6b75;font-weight:500}
.nw-lista-kol ul{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}
.nw-lista-poz{display:flex;gap:.85rem;align-items:flex-start;padding:.5rem .55rem;margin:0 -.55rem;border-radius:6px;color:inherit;text-decoration:none}
.nw-lista-poz:hover{background:#f6f6f8}
.nw-lista-poz .nw-ik{flex:none;width:18px;height:18px;margin-top:.18rem;color:#6b6b75}
.nw-lista-nazwa{display:block;font-size:.94rem;font-weight:500;color:var(--ink);line-height:1.35}
.nw-lista-opis{display:block;font-size:.87rem;color:#6b6b75;line-height:1.45;margin-top:.1rem}
.nw-lista-poz:hover .nw-lista-nazwa,.nw-lista-poz.is-tu .nw-lista-nazwa{color:var(--red)}
.nw-lista-poz.is-tu .nw-ik{color:var(--red)}

.nw-rz{background:#f6f6f8;padding:4.5rem 0;border-top:1px solid #ececf0}
.nw-rz-in{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:3.5rem;align-items:start}
.nw-rz-txt h2{font-size:clamp(1.7rem,2.6vw,2.2rem);line-height:1.15;margin:.4rem 0 .9rem;text-wrap:balance}
.nw-rz-lead{color:#3f3f49;line-height:1.6;max-width:34rem;margin:0}
.nw-rz-pkt{margin-top:1.4rem}
.nw-rz-wprost{margin:1.6rem 0 0;color:#55555f;line-height:1.6}
.nw-rz-wprost a{font-weight:600;white-space:nowrap}
.nw-rz-form{background:#fff;border:1px solid #e4e4ea;border-radius:14px;padding:1.75rem;box-shadow:0 10px 30px rgba(20,20,40,.06);position:relative}
.nw-rz-rzad{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
.nw-rz-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.nw-rz-osoby{border:0;padding:0;margin:0 0 16px;display:flex;flex-wrap:wrap;gap:.5rem}
.nw-rz-osoby legend{display:block;width:100%;margin-bottom:6px;font-weight:600;font-size:.9rem;color:var(--graphite)}
.nw-rz-osoby label{display:inline-flex;margin:0;cursor:pointer}
.nw-rz-osoby input{position:absolute;opacity:0;width:1px;height:1px}
.nw-rz-osoby span{display:inline-block;padding:.45rem .85rem;border:1px solid #d8d8e0;border-radius:999px;font-size:.9rem;font-weight:500;color:#3f3f49;background:#fff}
.nw-rz-osoby input:checked + span{border-color:var(--red);background:#fff3f3;color:var(--ink);font-weight:600}
.nw-rz-osoby input:focus-visible + span{outline:2px solid var(--red);outline-offset:2px}
.nw-rz-form .field textarea{min-height:96px}
.nw-rz-rodo label{display:flex;gap:.6rem;align-items:flex-start;font-weight:400;font-size:.86rem;line-height:1.45;color:#55555f}
.nw-rz-rodo input{width:18px;height:18px;margin-top:.1rem;flex:none;accent-color:var(--red)}
.nw-rz-btn{width:100%;justify-content:center}
@media(max-width:900px){
  .nw-lista-siatka{grid-template-columns:minmax(0,1fr)}
  .nw-lista-kol{border-left:0;border-top:1px solid #e6e6eb}
  .nw-lista-kol:first-child{border-top:0}
  .nw-rz-in{grid-template-columns:minmax(0,1fr);gap:2rem}
}
@media(max-width:560px){

  .nw-rz{padding:3rem 0}
  .nw-rz-rzad{grid-template-columns:minmax(0,1fr)}
  .nw-rz-form{padding:1.15rem}
  .nw-rz-form .field input,.nw-rz-form .field textarea{font-size:16px}
}

/* Box „dedykowana marka” na /rozwiazania/szpitale i /urzedy (runda 10, punkt 96) */
.nw-dmarka{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;align-items:center;background:#fff;border:1px solid var(--nw-line,#e6e6ea);border-radius:14px;padding:36px 40px}
.nw-sec--tint .nw-dmarka{background:#fff}
.nw-dmarka-txt h2{margin:0 0 10px;font-size:clamp(1.4rem,2.2vw,1.85rem);line-height:1.2}
.nw-dmarka-txt p{margin:0 0 14px;color:var(--nw-muted,#555)}
.nw-dmarka-txt .nw-pkt{margin:0}
.nw-dmarka-karta{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:28px;border:1px solid var(--nw-line,#e6e6ea);border-radius:12px;background:#f6f6f8;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}
.nw-dmarka-karta:hover{border-color:#c9c9d1;box-shadow:0 6px 20px rgba(20,20,40,.06)}
.nw-dmarka-karta img{height:44px;width:auto;max-width:100%}
.nw-dmarka-adres{font-size:.95rem;color:var(--nw-muted,#555)}
@media (max-width:820px){.nw-dmarka{grid-template-columns:1fr;padding:24px 20px;gap:20px}.nw-dmarka-karta{padding:20px}.nw-dmarka-karta img{height:36px}}

/* ===== Runda 11, punkt 113: typografia i układ jak produkty/rozwiązania cloudflare.com =====
   Krótsze, mniejsze nagłówki sekcji, mniejsze h3 i tekst ciągły, nagłówek rozwiązania = nazwa strony. */
.nw-of-sec h2{font-size:clamp(1.55rem,2.3vw,2rem);font-weight:500;letter-spacing:-.015em;line-height:1.2}
.nw-sec-head p{font-size:1rem;line-height:1.6}
.nw-of-karta h3{font-size:1rem;line-height:1.35}
.nw-of-karta p{font-size:.94rem}
.nw-of-tekst p{font-size:1rem}
.nw-zrzut-txt h3,.nw-tabs-txt h3{font-size:1.2rem;line-height:1.3}
.nw-zrzut-txt p,.nw-tabs-txt p{font-size:1rem}
.nw-of-head .container > div > p{font-size:1.05rem;line-height:1.6}
/* plakietka produktu nad H1: ikonka + nazwa produktu */
/* Runda 12, pkt 3: nazwa produktu w ramce jak „Workers AI” na cloudflare.com, ta sama na produktach i w marketplace */
.nw-of-znak{display:inline-flex;align-items:center;gap:.6rem;padding:.35rem .95rem .35rem .4rem;border:1px solid #e2e2e8;border-radius:10px;background:#fff;font-size:.95rem;font-weight:600;color:var(--ink);margin:0 0 1.35rem;box-shadow:0 1px 2px rgba(16,16,24,.05)}
.nw-of-znak .nw-ik{width:30px;height:30px;padding:6px;margin:0;border-radius:7px;background:var(--red-soft);color:var(--red-dark)}
/* rozwiązanie: H1 = nazwa strony, pod nim hasło */
.nw-of-head--roz h1{font-size:clamp(2.1rem,3.6vw,3.1rem);font-weight:500;letter-spacing:-.025em;line-height:1.08;margin:0 0 .9rem}
.nw-of-head .container > div > p.nw-of-haslo{font-size:1.25rem;font-weight:500;line-height:1.4;color:#1f1f24;margin:0 0 .9rem;max-width:34rem}
/* rząd atutów pod nagłówkiem */
.nw-atuty{padding:0 0 1rem}
.nw-atuty-lista{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;background:#fff}
.nw-atuty-lista li{display:grid;grid-template-columns:auto 1fr;gap:.2rem .75rem;padding:1.25rem 1.4rem;align-content:start}
.nw-atuty-lista li + li{border-left:1px solid var(--line)}
.nw-atuty-lista .nw-ik{grid-row:span 2;color:var(--red);width:22px;height:22px;margin-top:.1rem}
.nw-atuty-lista b{font-size:.98rem;font-weight:600}
.nw-atuty-lista span{font-size:.9rem;line-height:1.5;color:#55555f}
/* lista z ikonkami (3 albo 2 kolumny) */
.nw-ikony{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 2.5rem}
.nw-ikony--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nw-ikony-poz{display:flex;flex-direction:column;gap:.45rem;color:inherit;text-decoration:none}
a.nw-ikony-poz:hover{text-decoration:none}
a.nw-ikony-poz:hover b{color:var(--red-dark)}
.nw-ikony-poz .nw-ik{color:var(--red);width:24px;height:24px;margin-bottom:.2rem}
.nw-ikony-poz b{font-size:1rem;font-weight:600;line-height:1.35}
.nw-ikony-poz span{font-size:.94rem;line-height:1.55;color:#55555f}
.nw-ikony-poz .nw-more{color:var(--red-dark);font-size:.9rem;margin-top:.2rem}
/* blok: tekst + obraz obok, naprzemiennie */
.nw-blok{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:3.5rem;align-items:center}
.nw-blok--odwr .nw-blok-txt{order:2}
.nw-blok-znak{display:block;font-size:.85rem;font-weight:600;color:var(--red-dark);margin:0 0 .6rem}
.nw-blok-txt h2{margin:0 0 1rem}
.nw-blok-txt p{font-size:1rem;line-height:1.65;color:#3a3a44;margin:0 0 .9rem}
.nw-blok-txt .nw-pkt{margin:.5rem 0 0}
.nw-blok-img{margin:0}
.nw-blok-img img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--line)}
@media(max-width:900px){
  .nw-atuty-lista{grid-template-columns:minmax(0,1fr)}
  .nw-atuty-lista li + li{border-left:0;border-top:1px solid var(--line)}
  .nw-ikony,.nw-ikony--2{grid-template-columns:minmax(0,1fr);gap:1.5rem}
  .nw-blok{grid-template-columns:minmax(0,1fr);gap:1.75rem}
  .nw-blok--odwr .nw-blok-txt{order:0}
  .nw-of-head .container > div > p.nw-of-haslo{font-size:1.1rem}
}

/* Runda 11, pkt 107: cennik w kartach planów (wyszukiwarka dla AI) */
.nw-cennik{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:stretch}
.nw-cennik-plan{display:flex;flex-direction:column;padding:1.6rem 1.6rem 1.7rem;border:1px solid var(--line);border-radius:12px;background:#fff}
.nw-cennik-plan--wyr{border-color:var(--red);box-shadow:0 0 0 1px var(--red) inset}
.nw-cennik-plan h3{margin:0 0 .9rem;font-size:1rem;font-weight:600}
.nw-cennik-cena{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem;margin:0 0 .6rem}
.nw-cennik-cena b{font-size:2.2rem;line-height:1;font-weight:600;letter-spacing:-.02em}
.nw-cennik-cena span{font-size:.92rem;color:#55555f}
.nw-cennik-opis{margin:0 0 1rem;font-size:.94rem;line-height:1.55;color:#55555f}
.nw-cennik-plan ul{list-style:none;margin:0 0 1.2rem;padding:1rem 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.55rem}
.nw-cennik-plan li{display:flex;gap:.55rem;font-size:.93rem;line-height:1.45}
.nw-cennik-plan li .nw-ik{flex:none;width:18px;height:18px;color:var(--red);margin-top:.1rem}
.nw-cennik-plan .btn{margin-top:auto;align-self:flex-start}
@media (max-width:900px){.nw-cennik{grid-template-columns:minmax(0,1fr)}}

/* Runda 11, pkt 115: dwie karty dróg (sami albo pod klucz) w dwóch kolumnach */
.nw-cennik--2 { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 900px) { .nw-cennik--2 { grid-template-columns: 1fr; } }
.nw-blok-txt .nw-pkt + .nw-of-linki { margin-top: 1.1rem; }

/* Runda 11, pkt 106: lista „Wszystko, co jest w portalu” w grupach, jak specyfikacja produktu u Cloudflare */
.nw-spec { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.2rem 2rem; }
.nw-spec-gr h3 { display: flex; align-items: center; gap: .55rem; font-size: 1rem; font-weight: 600; margin: 0 0 .8rem; padding-bottom: .7rem; border-bottom: 1px solid var(--line); }
.nw-spec-gr h3 .nw-ik { width: 20px; height: 20px; flex: none; color: var(--red); }
.nw-spec-gr ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; }
.nw-spec-gr li { font-size: .9rem; line-height: 1.45; color: var(--muted); }
.nw-spec-gr li b { color: var(--ink); font-weight: 600; }
@media (max-width: 900px) { .nw-spec { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .nw-spec { grid-template-columns: 1fr; gap: 1.8rem; } }

/* Runda 11, pkt 110: blok z fragmentem kodu (WebMCP) */
.nw-blok-kod{background:#1b1b1f;border-radius:12px;border:1px solid #2a2a30;overflow:hidden}
.nw-blok-kod-pod{margin:0;padding:.6rem 1.1rem;font-size:.8rem;color:#a8a3ab;border-bottom:1px solid #2a2a30;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.nw-blok-kod pre{margin:0;padding:1.1rem 1.2rem;color:#e9e6e9;font-size:.86rem;line-height:1.65;overflow-x:auto;white-space:pre}
.nw-blok-kod code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
@media (max-width:600px){.nw-blok-kod pre{font-size:.74rem;padding:.9rem;white-space:pre-wrap;overflow-wrap:anywhere}}
/* Runda 12, pkt 4: strona Search jak strony API wyszukiwania. Dopisek pod przyciskami, okno z zapytaniem i odpowiedzią, odstęp pod nagłówkiem */
.nw-of-dopisek{margin:.9rem 0 0;font-size:.88rem;color:#6b6b75}
.nw-of-head .container > div > p.nw-of-dopisek{font-size:.88rem}
.nw-of-hero-kod{margin:2.75rem auto 0;max-width:1040px;text-align:left;background:#16161a;border:1px solid #2a2a30;border-radius:14px;overflow:hidden;box-shadow:0 24px 48px -28px rgba(16,16,24,.45)}
.nw-of-hero-kod-bar{display:flex;align-items:center;gap:.4rem;padding:.7rem 1rem;border-bottom:1px solid #2a2a30}
.nw-of-hero-kod-bar span{width:10px;height:10px;border-radius:50%;background:#3a3a42}
.nw-of-hero-kod-bar b{margin-left:.6rem;font:500 .8rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#a8a3ab}
.nw-of-hero-kod-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.nw-of-hero-kod-in > div{padding:1rem 1.25rem 1.25rem;min-width:0}
.nw-of-hero-kod-in > div + div{border-left:1px solid #2a2a30}
.nw-of-head .nw-of-hero-kod-in p{margin:0 0 .6rem;font:600 .72rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em;text-transform:uppercase;color:#8d8893;max-width:none}
.nw-of-hero-kod pre{margin:0;color:#e9e6e9;font-size:.82rem;line-height:1.6;overflow-x:auto;white-space:pre}
.nw-of-hero-kod code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.nw-of-hero-kod figcaption{padding:.6rem 1.25rem;border-top:1px solid #2a2a30;font-size:.78rem;color:#8d8893}
.nw-of-head + .nw-atuty{padding-top:2.5rem}
.nw-cennik-pkt-h{margin:0 0 -.4rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.86rem;font-weight:600;color:#1f1f24}
.nw-cennik-pkt-h + ul{border-top:0}
@media (max-width:760px){
  .nw-of-hero-kod{margin-top:2rem}
  .nw-of-hero-kod-in{grid-template-columns:minmax(0,1fr)}
  .nw-of-hero-kod-in > div + div{border-left:0;border-top:1px solid #2a2a30}
  .nw-of-hero-kod pre{font-size:.72rem}
}

/* Runda 12, pkt 6 (03.11.2026): schemat „źródło, kod, liczba” w Panelu CEO, jak schematy przepływu u Cloudflare.
   Węzły w przerywanych ramkach, główna ścieżka czerwona ciągła, pozostałe szare przerywane. */
.nw-zs{margin:0;display:grid;grid-template-columns:minmax(0,1fr) 80px minmax(0,.75fr) 140px minmax(0,1.05fr);align-items:center;padding:2.25rem;border:1px solid var(--line);border-radius:16px;
  background:#fafafb radial-gradient(circle,#dcdce3 1px,transparent 1.2px) 0 0/18px 18px}
.nw-zs-zrodla{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
.nw-zs-wez{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:.8rem;align-items:center;padding:.8rem 1rem;background:#fff;border:1px dashed #c9c9d3;border-radius:12px}
.nw-zs-wez .nw-ik{grid-row:span 2;width:40px;height:40px;padding:10px;margin:0;border-radius:10px;background:#f1f1f4;color:var(--ink)}
.nw-zs-wez b{font-size:.98rem;line-height:1.3}
.nw-zs-wez code,.nw-zs-kod span,.nw-zs-lacz span,.nw-zs-wynik-zr span{font-family:var(--mono);font-size:.78rem;color:var(--muted);line-height:1.4;overflow-wrap:anywhere}
.nw-zs-wez--gl{border:1px solid #f3b4ad;box-shadow:0 0 0 4px var(--red-glow)}
.nw-zs-wez--gl .nw-ik{background:var(--red-soft);color:var(--red-dark)}
.nw-zs-lacz--zbior{width:100%;height:100%;overflow:visible}
.nw-zs-lacz--zbior path{fill:none;stroke:#c3c3cd;stroke-width:1.5;stroke-dasharray:5 5;vector-effect:non-scaling-stroke}
.nw-zs-lacz--zbior path.gl{stroke:var(--red);stroke-width:2;stroke-dasharray:none}
.nw-zs-kod{display:grid;justify-items:center;text-align:center;gap:.35rem;padding:1.25rem 1rem;background:#16161a;color:#fff;border-radius:14px}
.nw-zs-kod .nw-ik{width:40px;height:40px;padding:10px;margin:0;border-radius:10px;background:#2a2a31;color:#fff}
.nw-zs-kod b{font-size:.98rem}
.nw-zs-kod span{color:#a9a9b4}
.nw-zs-lacz--prosto{position:relative;height:2px;background:var(--red);margin:0 10px 0 0}
.nw-zs-lacz--prosto::after{content:"";position:absolute;right:-10px;top:-5px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:10px solid var(--red)}
.nw-zs-lacz--prosto span{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);white-space:nowrap;font-size:.7rem;color:#3f3f49;background:#fafafb;padding:0 .3rem}
.nw-zs-wynik{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.25rem 1.35rem;box-shadow:0 18px 40px -28px rgba(11,11,13,.35)}
.nw-zs-wynik p{margin:0}
.nw-zs-wynik-et{font-size:.92rem;color:#3f3f49}
.nw-zs-wynik-l{font-size:2.6rem;font-weight:700;line-height:1.1;color:var(--red-dark);margin:.2rem 0 .1rem!important;font-variant-numeric:tabular-nums}
.nw-zs-wynik-op{font-size:.92rem;color:var(--ink)}
.nw-zs-wynik-zr{display:flex;align-items:center;gap:.45rem;margin-top:.9rem!important;padding:.5rem .65rem;border-radius:8px;background:var(--red-soft);outline:1px solid #f3b4ad}
.nw-zs-wynik-zr .nw-ik{width:18px;height:18px;padding:0;margin:0;background:none;color:var(--red-dark);flex:none}
.nw-zs-wynik-zr span{color:var(--red-dark);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:underline;text-underline-offset:3px}
.nw-zs-wynik-pod{margin-top:.55rem!important;font-size:.8rem;color:var(--muted)}
/* runda 12: cztery kroki pod schematem źródeł (zarząd), numerowane jak kroki przepływu */
.nw-zs-pkt{list-style:none;margin:1.75rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;counter-reset:zs}
.nw-zs-pkt li{counter-increment:zs;display:grid;gap:.35rem;padding-top:1rem;border-top:1px solid var(--line)}
.nw-zs-pkt b{font-size:1rem;line-height:1.3}
.nw-zs-pkt b::before{content:counter(zs) ". ";color:var(--red)}
.nw-zs-pkt span{font-size:.92rem;line-height:1.55;color:var(--muted)}
@media (max-width:900px){.nw-zs-pkt{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.nw-zs-pkt{grid-template-columns:minmax(0,1fr);gap:1rem}}
@media (max-width:980px){
  .nw-zs{grid-template-columns:minmax(0,1fr);padding:1.25rem;justify-items:stretch}
  .nw-zs-lacz--zbior{display:none}
  .nw-zs-lacz--prosto{width:2px;height:56px;margin:0 auto 10px;background:var(--red)}
  .nw-zs-lacz--prosto::after{right:-5px;top:auto;bottom:-10px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:10px solid var(--red);border-bottom:0}
  .nw-zs-lacz--prosto span{left:14px;bottom:auto;top:50%;transform:translateY(-50%);background:none}
  .nw-zs-zrodla{position:relative;padding-bottom:56px}
  .nw-zs-zrodla::after{content:"";position:absolute;left:50%;bottom:0;height:56px;border-left:2px dashed #c3c3cd}
}

/* Runda 12, pkt 16 (03.11.2026): „Jak pracuje agent”: kroki z wierszami po lewej, pionowy schemat węzłów po prawej (wzór: Cloudflare „Build agentic AI”). */
.nw-pp{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:3rem;align-items:stretch}
.nw-pp-kroki{list-style:none;margin:0;padding:0;display:grid}
.nw-pp-krok{padding:1.6rem 0;border-top:1px solid var(--line)}
.nw-pp-krok:first-child{border-top:0;padding-top:0}
.nw-pp-krok:last-child{padding-bottom:0}
.nw-pp-krok h3{margin:0 0 .45rem;font-size:1.2rem;line-height:1.3}
.nw-pp-krok h3 span{color:var(--red);font-variant-numeric:tabular-nums;margin-right:.15rem}
.nw-pp-krok>p{margin:0 0 .9rem;color:var(--muted);line-height:1.6;max-width:56ch}
.nw-pp-wiersze{margin:0;display:grid}
.nw-pp-wiersze div{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:1rem;padding:.6rem 0;border-top:1px dashed #dcdce3;font-size:.95rem}
.nw-pp-wiersze dt{font-weight:600;color:var(--ink)}
.nw-pp-wiersze dd{margin:0;color:var(--muted)}
.nw-pp-wiersze a{color:var(--red-dark);text-decoration:none;font-weight:500}
.nw-pp-wiersze a:hover{text-decoration:underline}
.nw-pp-schemat{position:relative;min-height:420px;border:1px solid var(--line);border-radius:16px;background-color:#fafafb;background-image:radial-gradient(#dedee5 1px,transparent 1px);background-size:18px 18px}
.nw-pp-linie{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.nw-pp-linie path{fill:none;stroke:#c3c3cd;stroke-width:1.5;stroke-dasharray:5 5;vector-effect:non-scaling-stroke}
.nw-pp-linie path.gl{stroke:var(--red);stroke-dasharray:none;stroke-width:2}
.nw-pp-wez{position:absolute;transform:translate(-50%,-50%);width:58px;height:58px;display:grid;place-items:center;background:#fff;border:1px dashed #c9c9d3;border-radius:14px;color:var(--ink)}
.nw-pp-wez .nw-ik{width:26px;height:26px;margin:0;padding:0;background:none}
.nw-pp-wez--gl{border:1px solid #f3b4ad;box-shadow:0 0 0 5px var(--red-glow);color:var(--red-dark)}
@media (max-width:860px){
  .nw-pp{grid-template-columns:1fr;gap:0}
  .nw-pp-schemat{display:none}
  .nw-pp-wiersze div{grid-template-columns:1fr;gap:.15rem}
}
.nw-pp-wez small{position:absolute;top:calc(100% + .45rem);left:50%;transform:translateX(-50%);white-space:nowrap;font-family:var(--mono);font-size:.72rem;color:var(--muted);background:#fafafb;padding:0 .3rem;line-height:1.3}
.nw-pp-wez--gl small{color:var(--red-dark)}

/* Runda 12, pkt 8-15: nagłówek rozwiązań bez obrazka, wyśrodkowany, znak w przerywanej ramce na polu z kropek (jak strony rozwiązań Cloudflare) */
.nw-of-head--roz:not(.nw-of-head--img){padding:2rem 0 3.25rem}
.nw-of-head--roz:not(.nw-of-head--img) .container > div{max-width:820px;margin:0 auto;text-align:center}
.nw-of-head--roz:not(.nw-of-head--img) .container > div > p{margin-left:auto;margin-right:auto}
.nw-of-head--roz:not(.nw-of-head--img) .container > div > p.nw-of-haslo{max-width:40rem;font-size:1.3rem}
.nw-of-head--roz:not(.nw-of-head--img) .container > div > p:not(.nw-of-haslo){max-width:44rem}
.nw-of-head--roz:not(.nw-of-head--img) .nw-of-ctas{justify-content:center}
.nw-of-head--roz:not(.nw-of-head--img) h1{font-size:clamp(2.3rem,4.2vw,3.5rem)}
.nw-of-znak-pole{position:relative;display:grid;place-items:center;width:288px;max-width:100%;height:144px;margin:0 auto 1.1rem}
.nw-of-znak-pole::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,#d4d4dc 1px,transparent 1.4px);background-size:12px 12px;background-position:center;-webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 45%,transparent 100%);mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 45%,transparent 100%);pointer-events:none}
.nw-of-znak--roz{position:relative;gap:.5rem;padding:.4rem .85rem;border:1px dashed var(--red);border-radius:6px;background:#fdf3f3;color:var(--red-dark);box-shadow:none;margin:0;font-size:.92rem}
.nw-of-znak--roz .nw-ik{width:18px;height:18px;padding:0;border-radius:0;background:none;color:var(--red)}
@media(max-width:600px){
  .nw-of-head--roz:not(.nw-of-head--img){padding:1.25rem 0 2.5rem}
  .nw-of-znak-pole{width:240px;height:112px;margin-bottom:.6rem}
}
/* blok bez obrazka: tekst po lewej, lista w ramce po prawej */
.nw-blok--txt{align-items:start;gap:4rem}
.nw-blok--txt .nw-blok-txt p{font-size:1.05rem;max-width:36rem}
.nw-blok-lista{border:1px solid var(--line);border-radius:12px;background:#fff;padding:.4rem 1.5rem}
.nw-sec--tint .nw-blok-lista{background:#fff}
.nw-blok-lista-h{margin:.9rem 0 .2rem;font-size:.82rem;font-weight:600;letter-spacing:.02em;color:var(--muted)}
.nw-blok-lista ul{list-style:none;margin:0;padding:0}
.nw-blok-lista li{display:grid;grid-template-columns:22px 1fr;gap:.8rem;align-items:start;padding:1rem 0;font-size:.98rem;line-height:1.5;color:#2a2a31}
.nw-blok-lista li + li{border-top:1px solid var(--line)}
.nw-blok-lista .nw-ik{width:20px;height:20px;color:var(--red);margin-top:.1rem}
.nw-blok--txt:not(:has(.nw-blok-lista)){grid-template-columns:minmax(0,1fr)}
@media(max-width:900px){.nw-blok--txt{gap:1.5rem}}
/* runda 12: tabele z 3 kolumnami na telefonie jako karty, podpis kolumny nad wartością */
@media (max-width:560px){
  .nw-of-tabela--karty,.nw-of-tabela--karty tbody,.nw-of-tabela--karty tr,.nw-of-tabela--karty th,.nw-of-tabela--karty td{display:block;width:auto}
  .nw-of-tabela--karty thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .nw-of-tabela--karty tbody tr{padding:1rem 1.1rem;border-bottom:1px solid var(--line)}
  .nw-of-tabela--karty tbody tr:last-child{border-bottom:0}
  .nw-of-tabela--karty tbody th,.nw-of-tabela--karty td{padding:0;border:0}
  .nw-of-tabela--karty tbody th{font-size:1rem;margin-bottom:.55rem}
  .nw-of-tabela--karty td{font-size:.92rem;line-height:1.5;color:#4a4a55}
  .nw-of-tabela--karty td + td{margin-top:.55rem}
  .nw-of-tabela--karty td[data-k]::before{content:attr(data-k);display:block;font-size:.74rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);margin-bottom:.15rem}
  .nw-of-tabela--karty td:empty{display:none}
  .nw-of-tabela--karty tr.is-nasz{background:#fdf6f6}
  .nw-of-tabela--karty tr.is-nasz th,.nw-of-tabela--karty tr.is-nasz td{background:transparent}
  .nw-of-tabela--karty tr.is-nasz td{font-weight:600}
  .nw-of-tabela--karty tr.nw-of-grupa{padding:.65rem 1.1rem;background:#fafafb}
  .nw-of-tabela--karty tr.nw-of-grupa th{margin:0;padding:0}
}
/* runda 12: cena słowem („Pod klucz”, „W abonamencie”), podpis zawsze w drugiej linii, tak samo na każdej karcie */
.nw-cennik-cena--slowo{flex-direction:column;align-items:flex-start;gap:.35rem}

/* ===== Runda 13: sekcje w stylu stron produktowych Cloudflare ===== */
.nw-sec-head--srodek{margin-left:auto;margin-right:auto;text-align:center}
/* plakietka w przerywanej ramce, jak nazwa produktu w kartach CF */
.nw-ramka-znak{display:inline-flex;align-items:center;gap:.5rem;padding:.3rem .75rem .3rem .45rem;border:1px dashed #c9c9d2;border-radius:8px;font-size:.85rem;font-weight:600;color:var(--ink);background:#fff;margin:0 0 1rem}
.nw-ramka-znak .nw-ik{width:18px;height:18px;color:var(--red)}

/* uzycia: karta z tytułem + karty z rysunkiem */
.nw-uz{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.nw-uz--4 .nw-uz-tytul{grid-row:span 2}
.nw-uz--3{grid-template-columns:minmax(0,1.15fr) repeat(3,minmax(0,1fr))}
.nw-uz--6{grid-template-columns:repeat(4,minmax(0,1fr))}
.nw-uz--6 .nw-uz-tytul{grid-row:span 2}
.nw-uz > *{border-right:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 -1px -1px 0}
.nw-uz-tytul{display:flex;flex-direction:column;align-items:flex-start;padding:2rem}
.nw-uz-tytul h2{font-size:clamp(1.6rem,2.4vw,2.1rem);line-height:1.15;margin:0 0 .8rem}
.nw-uz-tytul p{color:#4a4a55;font-size:1rem;line-height:1.6;margin:0 0 1.5rem}
.nw-uz-tytul .btn{margin-top:auto}
.nw-uz-karta{display:flex;flex-direction:column}
.nw-uz-rys{position:relative;aspect-ratio:240/130;border-bottom:1px solid var(--line);background-color:#fafafb;background-image:radial-gradient(#d9d9e0 1px,transparent 1.2px);background-size:14px 14px;overflow:hidden}
.nw-uz-txt{padding:1.4rem 1.5rem 1.6rem}
.nw-uz-txt h3{font-size:1.08rem;margin:0 0 .45rem}
.nw-uz-txt p{font-size:.94rem;line-height:1.55;color:#55555f;margin:0}
.nw-uz--bez .nw-uz-txt{padding:1.75rem 1.6rem}
.nw-rys{display:block;width:100%;height:100%}
.nw-rys .w{fill:#fff;stroke:#c9c9d2;stroke-width:1.2}
.nw-rys .w-gl{fill:#fff;stroke:var(--red);stroke-width:1.4}
.nw-rys .ik{stroke:#55555f;stroke-width:1.6}
.nw-rys .ik-gl{stroke:var(--red);stroke-width:1.6}
.nw-rys .l{stroke:#c9c9d2;stroke-width:1.2}
.nw-rys .l-gl{stroke:var(--red);stroke-width:1.4}
.nw-rys .l-dash{stroke:#c9c9d2;stroke-width:1.2;stroke-dasharray:4 5}
.nw-rys .l-dash-gl{stroke:var(--red);stroke-width:1.4;stroke-dasharray:5 6;animation:nwRysPlyn 2.4s linear infinite}
.nw-rys .p{fill:var(--red);stroke:none}
.nw-rys .p-pusty{fill:#fff;stroke:var(--red);stroke-width:1.4}
.nw-rys .okno{fill:#fff;stroke:#c9c9d2;stroke-width:1.2}
.nw-rys .pas{fill:#ececf1;stroke:none}
.nw-rys .w-gl-pelny{fill:var(--red);stroke:none}
.nw-rys .biel{fill:#fff;stroke:none;opacity:.85}
.nw-rys .kursor{fill:#fff;stroke:var(--ink);stroke-width:1.3}
@keyframes nwRysPlyn{to{stroke-dashoffset:-22}}

/* os: pionowa oś kroków */
.nw-os{list-style:none;margin:0 auto;padding:0;max-width:40rem;position:relative}
.nw-os::before{content:"";position:absolute;left:11px;top:.6rem;bottom:.6rem;border-left:1px dashed #c9c9d2}
.nw-os li{position:relative;display:grid;grid-template-columns:24px minmax(0,1fr);gap:1.25rem;padding:0 0 2.2rem}
.nw-os li:last-child{padding-bottom:0}
.nw-os-kropka{width:24px;height:24px;border-radius:50%;background:#fff;border:1px solid var(--red);position:relative;z-index:1;margin-top:.1rem}
.nw-os-kropka::after{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--red)}
.nw-os h3{font-size:1.15rem;margin:0 0 .35rem}
.nw-os p{color:#4a4a55;font-size:.98rem;line-height:1.6;margin:0}

/* kody: panel kodu + lista zakładek */
.nw-kody{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:1.5rem;align-items:start}
.nw-kody-panel{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.nw-kody-nazwa{margin:0;padding:.7rem 1.1rem;border-bottom:1px solid var(--line);font:600 .82rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;color:#55555f;background:#fafafb}
.nw-kody pre{margin:0;padding:1rem 0;overflow-x:auto;font:.84rem/1.65 ui-monospace,SFMono-Regular,Menlo,monospace;color:#1f1f24;background:#fff}
.nw-kody-l{display:block;padding:0 1.1rem;white-space:pre}
.nw-kody-l i{display:inline-block;width:2.2em;font-style:normal;color:#a7a7b2;user-select:none}
.nw-kody-lista{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.nw-kody-lista button{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.2rem;border-left:3px solid transparent;border-bottom:1px solid var(--line)}
.nw-kody-lista button:last-child{border-bottom:0}
.nw-kody-lista button:hover{background:#fafafb}
.nw-kody-lista button:focus-visible{outline:2px solid var(--red);outline-offset:-2px}
.nw-kody-lista button[aria-selected=true]{border-left-color:var(--red);background:#fff}
.nw-kody-lista b{font-size:.98rem;color:var(--ink)}
.nw-kody-lista span{font-size:.88rem;line-height:1.5;color:#66666f}
.nw-kody-lista button[aria-selected=false] span{display:none}

/* arch: schemat przepływu */
.nw-arch{margin:0;padding:2rem;border:1px solid var(--line);border-radius:12px;background-color:#fafafb;background-image:radial-gradient(#e0e0e6 1px,transparent 1.2px);background-size:16px 16px}
.nw-arch-in{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr);gap:4.5rem;align-items:center;--nw-arch-pion:0}
.nw-arch-kol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9rem;position:relative;z-index:1}
.nw-arch-wez{display:flex;align-items:center;gap:.75rem;padding:.8rem .95rem;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(16,16,24,.04)}
.nw-arch-wez .nw-ik{flex:none;width:32px;height:32px;padding:7px;border-radius:8px;background:#f3f3f6;color:#4a4a55}
.nw-arch-kol--p .nw-arch-wez .nw-ik{background:#eaf6ee;color:#1f7a3f}
.nw-arch-wez b{display:block;font-size:.92rem;line-height:1.3}
.nw-arch-wez small{display:block;font-size:.8rem;line-height:1.35;color:#66666f}
.nw-arch-sr{display:flex;flex-direction:column;align-items:stretch;gap:2.2rem;position:relative;z-index:1}
.nw-arch-hub{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.25rem;padding:1.5rem 1.25rem;border:1px solid var(--red);border-radius:14px;background:#fff;box-shadow:0 0 0 6px rgba(220,38,38,.06),0 8px 24px rgba(16,16,24,.06)}
.nw-arch-hub-ik{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--red-soft);color:var(--red-dark);margin-bottom:.35rem}
.nw-arch-hub-ik .nw-ik{width:26px;height:26px}
.nw-arch-hub b{font-size:1.05rem}
.nw-arch-hub small{font-size:.85rem;color:#55555f}
.nw-arch-hub em{font-style:normal;margin-top:.35rem;font-size:.75rem;font-weight:600;color:#1f7a3f;display:inline-flex;align-items:center;gap:.35rem}
.nw-arch-hub em::before{content:"";width:7px;height:7px;border-radius:50%;background:#22a352}
.nw-arch-dol{display:flex;align-items:center;gap:.7rem;padding:.75rem .95rem;border:1px dashed #e0a36a;border-radius:10px;background:#fffaf4}
.nw-arch-dol .nw-ik{flex:none;width:22px;height:22px;color:#c26a12}
.nw-arch-dol b{display:block;font-size:.9rem}
.nw-arch-dol small{display:block;font-size:.8rem;color:#66666f}
.nw-arch-linie{position:absolute;inset:0;pointer-events:none;overflow:visible}
.nw-arch-l{fill:none;stroke:#b9b9c4;stroke-width:1.3;stroke-dasharray:4 5}
.nw-arch-l--wyj{stroke:#7cc596}
.nw-arch-l--dol{stroke:#e0a36a}
.nw-arch-kropka{fill:#2f6fde}
.nw-arch-leg{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.4rem;margin-top:1.6rem;font-size:.82rem;color:#55555f}
.nw-arch-leg span{display:inline-flex;align-items:center;gap:.45rem}
.nw-arch-leg span::before{content:"";width:9px;height:9px;border-radius:50%}
.nw-arch-leg-praca::before{background:#2f6fde}
.nw-arch-leg-wynik::before{background:#22a352}
.nw-arch-leg-czeka::before{background:#e08a2c}
.nw-arch-leg-blad::before{background:var(--red)}
.nw-arch-pkt{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;background:#fff}
.nw-arch-pkt li{display:grid;grid-template-columns:auto 1fr;gap:.2rem .75rem;padding:1.2rem 1.35rem;align-content:start}
.nw-arch-pkt li + li{border-left:1px solid var(--line)}
.nw-arch-pkt .nw-ik{grid-row:span 2;color:var(--red);width:22px;height:22px}
.nw-arch-pkt b{font-size:.96rem}
.nw-arch-pkt span{font-size:.9rem;line-height:1.5;color:#55555f}

@media (max-width:980px){
  .nw-uz,.nw-uz--3,.nw-uz--6{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nw-uz .nw-uz-tytul{grid-column:1/-1;grid-row:auto}
  .nw-kody{grid-template-columns:minmax(0,1fr)}
  .nw-kody-lista{order:-1}
  .nw-arch-in{grid-template-columns:minmax(0,1fr);gap:1.4rem;--nw-arch-pion:1}
  .nw-arch-sr{gap:1rem}
  .nw-arch-kol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
  .nw-arch-pkt{grid-template-columns:minmax(0,1fr)}
  .nw-arch-pkt li + li{border-left:0;border-top:1px solid var(--line)}
}
@media (max-width:600px){
  .nw-uz,.nw-uz--3,.nw-uz--6{grid-template-columns:minmax(0,1fr)}
  .nw-uz-tytul{padding:1.5rem}
  .nw-arch{padding:1rem}
  .nw-arch-kol{grid-template-columns:minmax(0,1fr)}
  .nw-kody pre{font-size:.78rem}
}
@media (prefers-reduced-motion:reduce){.nw-rys .l-dash-gl{animation:none}}

/* Runda 13, pkt 1: linki pod schematem dla programistów w marketplace */
.nw-mp-dev-linki { display:flex; flex-wrap:wrap; gap:.75rem 1.25rem; align-items:center; justify-content:center; margin:2.5rem 0 0; }

/* Runda 13, pkt 16: „Jedna platforma dla całej firmy” na /nowa/, trzy kolumny jak hasło w hero */
.nw-cf-plat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--cf-line);background:#fff;border-radius:2px}
.nw-cf-plat-kol{padding:28px 28px 22px;border-left:1px solid var(--cf-line)}
.nw-cf-plat-kol:first-child{border-left:0}
.nw-cf-plat-kol h3{font-size:1.2rem;font-weight:500;letter-spacing:-.01em;margin:16px 0 .45rem;color:#1b1b1f}
.nw-cf-plat-o{margin:0 0 1.1rem;color:#5f5f69;font-size:.95rem;line-height:1.5;min-height:2.9em}
.nw-cf-plat ul{list-style:none;margin:0;padding:1rem 0 0;border-top:1px solid var(--cf-line);display:grid;gap:.2rem}
@media (max-width:900px){
  .nw-cf-plat{grid-template-columns:minmax(0,1fr)}
  .nw-cf-plat-kol{border-left:0;border-top:1px solid var(--cf-line);padding:24px 20px 18px}
  .nw-cf-plat-kol:first-child{border-top:0}
  .nw-cf-plat-o{min-height:0}
}

/* Runda 13, pkt 15: eyebrow na szarym tle formularza miał 4,47:1, ciemniejsza czerwień daje AA */
.nw-rz .nw-eyebrow{color:var(--red-dark)}
/* Runda 14, pkt 2: przycisk Dokumentacja w nagłówku marketplace, jak u Cloudflare */
.nw-mp-hero-btn{margin:1.5rem 0 0;display:flex;justify-content:center;gap:.75rem}

/* Pętla 3 (04.11.2026): bez sierot w nagłówkach i krótkich akapitach na wszystkich nowych stronach */
.nw-on main h2,.nw-on main h3{text-wrap:balance}
.nw-on main p,.nw-on main li{text-wrap:pretty}
