/* kn-poprawki — plik utworzony przez update.php (pozycjonowaniestronkonin.pl). Nie edytuj ręcznie: przy kolejnej aktualizacji zostanie nadpisany. */
:root{--kn-bg:#0f0f11;--kn-bg2:#141416;--kn-card:#18181b;--kn-line:rgba(255,255,255,.09);--kn-text:#d4d4d8;--kn-muted:#a1a1aa;--kn-acc:#e0913d;--kn-acc2:#f2be80;--kn-acc-d:#c96a12}
html body{padding-top:0!important}
html{scroll-padding-top:96px}

/* ---------- Nagłówek przyklejony u góry (komputer, tablet, telefon) ---------- */
html body .kn-hdr{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:rgba(15,15,17,.97);border-bottom:1px solid var(--kn-line);box-shadow:0 10px 30px rgba(0,0,0,.35);font-family:var(--font-heading);color:#f2f2f3}
html body .kn-hdr::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--kn-acc) 0,var(--kn-acc) 18%,transparent 18%)}
.kn-bar{position:relative;max-width:1320px;margin:0 auto;padding:0 24px;min-height:74px;display:flex;align-items:center;gap:18px}
html body .kn-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none;color:#fff}
.kn-logo img{width:46px;height:46px;display:block;border-radius:0!important}
.kn-logo span{display:flex;flex-direction:column;line-height:1}
html body .kn-logo small{font:500 12.5px/1.1 var(--font-heading);color:#a1a1aa;letter-spacing:.01em}
html body .kn-logo b{font:700 21px/1.05 var(--font-heading);color:var(--kn-acc);letter-spacing:-.01em}
html body .kn-a,html body .kn-t{position:relative;display:inline-flex;align-items:center;gap:6px;font:500 15px/1.2 var(--font-heading);color:#e4e4e7;text-decoration:none;white-space:nowrap;background:none;border:0;border-radius:8px;cursor:pointer;padding:10px 11px;transition:background .15s,color .15s}
.kn-t::after{content:"";width:6px;height:6px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
.kn-g{position:relative}
html body .kn-p a{display:block;text-decoration:none;color:#e4e4e7;font:500 15px/1.35 var(--font-heading);white-space:nowrap}
html body .kn-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 22px;border-radius:999px;background:var(--kn-acc);border:1.5px solid var(--kn-acc);color:#121214;font:700 14px/1.2 var(--font-heading);letter-spacing:.03em;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,transform .15s}
html body .kn-btn:hover{background:#fff;border-color:#fff;color:#121214;transform:translateY(-1px)}
html body .kn-btn-o{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
html body .kn-btn-o:hover{background:#fff;color:#121214}
html body .kn-tel{display:none;align-items:center;gap:7px;font:600 15px/1 var(--font-heading);color:#fff;text-decoration:none;white-space:nowrap}
.kn-tel svg{color:var(--kn-acc)}
html body .kn-tel:hover{color:var(--kn-acc2)}
.kn-burger{display:none;flex:none;width:46px;height:46px;margin-left:auto;padding:0;border:1.5px solid rgba(255,255,255,.3);border-radius:10px;background:transparent;cursor:pointer;align-items:center;justify-content:center}
.kn-burger span,.kn-burger span::before,.kn-burger span::after{display:block;width:20px;height:2px;border-radius:2px;background:#fff;transition:transform .2s,background .2s}
.kn-burger span{position:relative}
.kn-burger span::before,.kn-burger span::after{content:"";position:absolute;left:0}
.kn-burger span::before{top:-6px}.kn-burger span::after{top:6px}
.kn-open .kn-burger span{background:transparent}
.kn-open .kn-burger span::before{transform:translateY(6px) rotate(45deg)}
.kn-open .kn-burger span::after{transform:translateY(-6px) rotate(-45deg)}

@media (min-width:1200px){
  .kn-nav{display:flex;align-items:center;gap:2px;margin-left:auto}
  html body .kn-a:hover,html body .kn-t:hover,html body .kn-g.open>.kn-t{background:rgba(255,255,255,.06);color:var(--kn-acc2)}
  html body .kn-a[aria-current="page"],html body .kn-t.cur{color:var(--kn-acc2)}
  .kn-a[aria-current="page"]::before,.kn-t.cur::before{content:"";position:absolute;left:11px;right:11px;bottom:3px;height:2px;border-radius:2px;background:var(--kn-acc)}
  .kn-t.cur::before{right:23px}
  .kn-p{display:none;position:absolute;top:100%;left:0;z-index:110;min-width:250px;margin-top:6px;padding:8px;background:#18181b;border:1px solid var(--kn-line);border-radius:14px;box-shadow:0 24px 48px rgba(0,0,0,.5);flex-direction:column;gap:1px}
  .kn-p::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
  .kn-g:hover>.kn-p,.kn-g:focus-within>.kn-p,.kn-g.open>.kn-p{display:flex}
  .kn-g:hover>.kn-t::after,.kn-g.open>.kn-t::after{transform:translateY(1px) rotate(225deg)}
  .kn-p a{padding:10px 12px;border-radius:9px}
  html body .kn-p a:hover{background:rgba(255,255,255,.06);color:var(--kn-acc2)}
  html body .kn-p a[aria-current="page"]{background:rgba(224,145,61,.14);color:var(--kn-acc2)}
  .kn-nav-cta{display:none}
  .kn-hbtn{margin-left:6px}
}
@media (min-width:1600px){html body .kn-tel{display:inline-flex;margin-left:10px}}
@media (min-width:1200px) and (max-width:1300px){html body .kn-a,html body .kn-t{padding:10px 8px;font-size:14.5px}.kn-a[aria-current="page"]::before,.kn-t.cur::before{left:8px;right:8px}.kn-t.cur::before{right:20px}}
@media (max-width:1199px){
  .kn-bar{min-height:68px;padding:0 20px}
  .kn-burger{display:inline-flex}
  html body .kn-hbtn{margin-left:auto;min-height:42px;padding:9px 16px;font-size:13px}
  .kn-hbtn+.kn-burger{margin-left:0}
  .kn-nav{display:none;position:absolute;left:0;right:0;top:100%;z-index:105;background:#121214;border-top:1px solid var(--kn-line);box-shadow:0 24px 40px rgba(0,0,0,.5);max-height:calc(100vh - 70px);max-height:calc(100dvh - 70px);overflow-y:auto;overscroll-behavior:contain;padding:6px 20px 26px}
  .kn-open .kn-nav{display:block}
  html body .kn-a,html body .kn-t{display:flex;width:100%;justify-content:space-between;padding:14px 4px;border-radius:0;font-size:17px;border-bottom:1px solid var(--kn-line)}
  html body .kn-a[aria-current="page"],html body .kn-t.cur{color:var(--kn-acc2);font-weight:600}
  .kn-t::after{width:8px;height:8px;margin-right:6px}
  .kn-g.open>.kn-t::after{transform:translateY(2px) rotate(225deg)}
  .kn-p{display:none;flex-direction:column;margin:4px 0 10px 6px;padding-left:14px;border-left:2px solid var(--kn-line)}
  .kn-g.open>.kn-p{display:flex}
  html body .kn-p a{padding:10px 4px;font-size:16px;color:#a1a1aa}
  html body .kn-p a[aria-current="page"]{color:var(--kn-acc2);font-weight:600}
  .kn-nav-cta{display:flex;flex-direction:column;gap:10px;margin-top:20px}
  html body .kn-nav-cta .kn-btn{min-height:50px}
  html body .kn-nav-tel{display:block;text-align:center;padding:8px 0 0;font:600 21px/1.2 var(--font-heading);color:#fff;text-decoration:none}
  html.kn-menu-open #pb-mbar{display:none!important}
}
@media (max-width:599px){html body .kn-hbtn{display:none}.kn-burger{margin-left:auto!important}.kn-bar{padding:0 16px}.kn-logo img{width:42px;height:42px}}

/* dolny pasek na telefonie */
html body #pb-mbar{background:rgba(15,15,17,.97)!important;border-top:1px solid var(--kn-line)!important}
html body #pb-mbar .btn{min-height:46px!important;padding:0 12px!important;font-size:13px!important}
html body #pb-mbar a[aria-label] svg{display:block;width:20px;height:20px;stroke:#fff;color:#fff}
html body #pb-mbar a[aria-label]{color:#fff!important}

/* ---------- Typografia: bez olbrzymich czcionek ---------- */
html body main > section:first-child > div > div:first-child h1,html body main h1{font-size:clamp(30px,3.6vw,46px)!important;line-height:1.1!important}
html body main h2{font-size:clamp(23px,2.3vw,30px)!important;line-height:1.2!important}
html body main h3{font-size:clamp(18px,1.5vw,21px)!important;line-height:1.3!important}
html body main > section:first-child p[style*="font-size: 19px"],html body main > section:first-child p[style*="font-size: 20px"]{font-size:17.5px!important}
html body main [style*="font-size: 56px"],html body main [style*="font-size: 52px"],html body main [style*="font-size: 48px"]{font-size:36px!important}
html body [data-dc="Footer"] h2{font-size:clamp(23px,2.3vw,30px)!important}

/* ---------- Zdjęcia: spójne kadry, bez podpisów ---------- */
figcaption{display:none!important}
html body main img.kn-fig{width:100%!important;height:auto!important;aspect-ratio:21/9!important;object-fit:cover!important;border-radius:20px!important}
@media (max-width:760px){html body main img.kn-fig{aspect-ratio:16/10!important;border-radius:16px!important}}

/* ---------- Tabele na telefonie: karty zamiast przewijania w bok ---------- */
@media (max-width:760px){
  html body main div:has(>table.kn-stack){overflow:visible!important}
  html body table.kn-stack{min-width:0!important;border-radius:14px}
  html body table.kn-stack thead{display:none}
  html body table.kn-stack,html body table.kn-stack tbody,html body table.kn-stack tr,html body table.kn-stack th,html body table.kn-stack td{display:block;width:100%!important}
  html body table.kn-stack tr{padding:14px 16px;border-bottom:1px solid var(--kn-line)}
  html body table.kn-stack tr:last-child{border-bottom:0}
  html body table.kn-stack tbody th{padding:0 0 6px!important;border:0!important;font-size:16.5px!important;text-align:left}
  html body table.kn-stack td{padding:5px 0!important;border:0!important;text-align:left!important;font-size:15.5px!important;overflow-wrap:break-word}
  html body table.kn-stack td::before{content:attr(data-label);display:block;margin-bottom:1px;font:600 11.5px/1.35 var(--font-heading);letter-spacing:.07em;text-transform:uppercase;color:var(--kn-muted)}
  html body table.kn-stack td:first-child{font-weight:600;color:#fff}
}

/* ---------- O autorze ---------- */
.kn-w{max-width:1200px;margin:0 auto;padding:0 clamp(16px,4vw,28px);box-sizing:content-box}
html body .kn-crumbs{font:500 14px/1.4 var(--font-heading);color:#a1a1aa!important}
html body .kn-crumbs a{color:#d4d4d8!important}
.kn-about{padding-top:clamp(28px,4vw,44px);padding-bottom:clamp(36px,5vw,64px)}
.kn-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 clamp(28px,4vw,44px)}
.kn-stats>div{background:var(--kn-card);border:1px solid var(--kn-line);border-radius:18px;padding:20px 22px}
html body .kn-stats b{display:block;font:700 34px/1 var(--font-heading);color:var(--kn-acc2)}
html body .kn-stats span{display:block;margin-top:8px;font-size:15px;color:var(--kn-muted)}
html body main section.kn-about-g{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start;background:none!important}
.kn-about-g h2{margin:0 0 14px}
.kn-about-g h2:not(:first-child){margin-top:34px}
.kn-about-g p{margin:0 0 16px;font-size:16.5px;line-height:1.75}
.kn-tags{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
html body .kn-tags li{font:500 14.5px/1.2 var(--font-heading);color:#e4e4e7;padding:9px 14px;border-radius:999px;border:1px solid var(--kn-line);background:var(--kn-card)}
.kn-about-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px!important}
.kn-portrait{margin:0;position:sticky;top:100px}
html body main .kn-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 18%;border-radius:22px!important;box-shadow:0 30px 60px rgba(0,0,0,.45),0 0 0 1px var(--kn-line)}
@media (max-width:900px){html body main section.kn-about-g{grid-template-columns:minmax(0,1fr)}.kn-portrait{position:static;max-width:380px;order:-1}.kn-stats{grid-template-columns:minmax(0,1fr)}}

/* ---------- Stopka ---------- */
html body .kn-ftr{position:relative;background:#0b0b0d!important;color:#a1a1aa!important;padding:52px 0 0!important;font:400 14.5px/1.6 var(--font-body);border-top:1px solid var(--kn-line)}
html body .kn-ftr::before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:linear-gradient(90deg,var(--kn-acc) 0,var(--kn-acc) 18%,transparent 18%)}
html body .kn-ftr a{color:#f4f4f5!important;text-decoration:none}
html body .kn-ftr .kf-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px 36px;align-items:center;padding-bottom:30px;border-bottom:1px solid var(--kn-line)}
html body .kn-ftr .kf-top p{margin:0;color:#a1a1aa!important}
html body .kn-ftr .kn-logo small{color:#a1a1aa!important}
html body .kn-ftr .kn-logo b{color:var(--kn-acc)!important}
html body .kn-ftr a.kf-cta{white-space:normal;text-align:center;color:#121214!important}
html body .kn-ftr a.kf-cta:hover{color:#121214!important}
.kn-ftr .kf-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.45fr);gap:30px 36px;padding:34px 0 36px;border-bottom:1px solid var(--kn-line)}
html body .kn-ftr .kf-h{font:600 12px/1.2 var(--font-heading);letter-spacing:.1em;text-transform:uppercase;color:var(--kn-acc2)!important;margin:0 0 14px}
.kn-ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.kn-ftr li{min-width:0}
html body .kn-ftr .kf-col a:hover{color:var(--kn-acc2)!important;text-decoration:underline;text-underline-offset:3px}
html body .kn-ftr .kf-contact li{display:flex;flex-direction:column;gap:1px;color:#f4f4f5!important}
html body .kn-ftr .kf-contact li span{font:600 11px/1.3 var(--font-heading);letter-spacing:.08em;text-transform:uppercase;color:#71717a!important}
html body .kn-ftr .kf-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;padding:18px 0 24px;font-size:13px}
html body .kn-ftr .kf-bottom p{margin:0;color:#71717a!important}
html body .kn-ftr .kf-bottom a{color:#a1a1aa!important}
@media (max-width:1000px){html body .kn-ftr .kf-top{grid-template-columns:minmax(0,1fr)}.kn-ftr .kf-cta{justify-self:start}.kn-ftr .kf-g{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){
  html body .kn-ftr{padding-top:40px!important}
  .kn-ftr .kf-g{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 18px}
  .kn-ftr .kf-contact{grid-column:1/-1}
  .kn-ftr .kf-cta{justify-self:stretch}
  html body .kn-ftr .kf-bottom{flex-direction:column}
}

/* ---------- Adres e-mail: zawsze cały i w jednej linii ---------- */
main :is(p,li,span,div):has(>a[href^="mailto:"]),.kn-ftr li:has(>a[href^="mailto:"]){container-type:inline-size}
a[href^="mailto:"]{white-space:nowrap!important;max-width:100%;font-size:min(1em,calc(100cqi / 20))!important}
a[href^="mailto:"]:not(.btn){display:inline-block;vertical-align:bottom}
html body a.btn[href^="mailto:"]{text-transform:none!important;letter-spacing:0!important;padding-left:14px!important;padding-right:14px!important;font-size:min(15px,calc((100cqi - 32px) / 19.5))!important}

/* ---------- Długie słowa nie wychodzą poza boksy ---------- */
main,footer{overflow-wrap:break-word}

/* ---------- Płynne przejścia między podstronami ---------- */
@view-transition{navigation:auto}
.kn-hdr{view-transition-name:kn-hdr}
::view-transition-old(root){animation:kn-out .2s ease both}
::view-transition-new(root){animation:kn-in .3s cubic-bezier(.2,.7,.2,1) both}
@keyframes kn-out{to{opacity:0;transform:translateY(-6px)}}
@keyframes kn-in{from{opacity:0;transform:translateY(8px)}}
.no-vt main{animation:kn-in .32s cubic-bezier(.2,.7,.2,1) both}
.no-vt.is-leaving main,.no-vt.is-leaving footer{opacity:0;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  ::view-transition-old(root),::view-transition-new(root){animation:none}
  .no-vt main{animation:none}
}
