/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url('fonts/f-52a88426ef.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url('fonts/f-50120aa80d.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url('fonts/f-3ccd4df45c.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url('fonts/f-52a88426ef.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url('fonts/f-50120aa80d.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url('fonts/f-3ccd4df45c.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('fonts/f-52a88426ef.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('fonts/f-50120aa80d.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('fonts/f-3ccd4df45c.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/f-442b3ec987.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/f-f3e3ef5f4a.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/f-f299d916ba.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/f-108d509084.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/f-2c9bacf024.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/f-f49291b791.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/f-695a267637.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/f-062794e1a3.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/f-24397a3e83.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/f-3a2668b94b.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('fonts/f-c314a25c3a.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('fonts/f-1b68792e8d.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('fonts/f-7925a2dd6c.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('fonts/f-535a3114a7.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('fonts/f-c11adc9130.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/f-18b2768bbb.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/f-76967f50a4.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/f-7a2ed68748.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/f-a42db88dd4.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/f-944960b729.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


*{box-sizing:border-box;margin:0}
:root{--zc:#16602B;--zj:#5DAF46;--lim:#A5E08D;--ink:#111;--paper:#FAFAF7}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{font-family:"IBM Plex Mono",monospace;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
a{color:var(--zc);text-decoration:none}a:hover{color:#0F4A20}
img{display:block}
.wrap{max-width:1240px;margin:0 auto;padding:0 40px}
h1.big{font:900 clamp(38px,5vw,64px)/1.02 Archivo,sans-serif;letter-spacing:-.02em;text-transform:uppercase;text-shadow:5px 5px 0 rgba(93,175,70,.45)}
.kick{display:inline-flex;align-items:center;gap:10px;font:600 13px/1 "IBM Plex Mono";letter-spacing:.16em;color:var(--zc);margin-bottom:16px}
.kick i{width:12px;height:12px;background:var(--zj);display:inline-block}
.dots{position:absolute;background-image:radial-gradient(circle,var(--zc) 1.5px,transparent 1.8px);background-size:12px 12px;opacity:.16;pointer-events:none;z-index:0}
.dots.jl{background-image:radial-gradient(circle,var(--zj) 1.5px,transparent 1.8px);opacity:.28}
header{position:sticky;top:0;background:#fff;border-bottom:2px solid var(--ink);z-index:60}
header .wrap{display:flex;align-items:center;gap:34px;height:78px}
header img{height:44px}
nav.main{display:flex;gap:26px;margin-left:auto}
nav.main a{font:600 13px/1 "IBM Plex Mono";letter-spacing:.1em;color:var(--ink);padding:8px 2px;border-bottom:2px solid transparent}
nav.main a:hover,nav.main a.on{color:var(--zc);border-color:var(--zj)}
header .tel{font:900 18px/1 Archivo,sans-serif;color:var(--zc);white-space:nowrap}
.hd{position:relative;border-bottom:2px solid var(--ink);overflow:hidden;background:var(--paper)}
.hd .wrap{padding-top:60px;padding-bottom:60px;position:relative;z-index:1}
.hd p{font:400 14.5px/1.9 "IBM Plex Mono";color:#37352F;max-width:660px;margin-top:20px}
.hd .stat{display:flex;gap:30px;flex-wrap:wrap;margin-top:26px}
.hd .stat div{border-left:3px solid var(--zj);padding-left:12px}
.hd .stat b{display:block;font:900 26px/1 Archivo,sans-serif}
.hd .stat span{font:600 11px/1.6 "IBM Plex Mono";letter-spacing:.12em;color:#67716A}
/* uklad */
.cols{display:grid;grid-template-columns:280px 1fr;gap:44px;align-items:start;padding:56px 0 80px}
aside{position:sticky;top:96px}
aside .box{border:2px solid var(--ink);background:#fff;box-shadow:7px 7px 0 rgba(93,175,70,.32)}
aside .bt{font:700 11.5px/1 "IBM Plex Mono";letter-spacing:.14em;color:#fff;background:var(--ink);padding:13px 16px}
aside .srch{border-bottom:2px solid var(--ink);padding:12px}
aside input{width:100%;border:2px solid var(--ink);padding:10px 12px;font:500 12.5px/1 "IBM Plex Mono";color:var(--ink);outline:0}
aside input:focus{box-shadow:3px 3px 0 var(--zj)}
aside .list{max-height:min(62vh,620px);overflow:auto}
aside .list a{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid #E7E7E3;color:var(--ink)}
aside .list a:last-child{border-bottom:0}
aside .list a:hover{background:rgba(93,175,70,.14);color:var(--zc)}
aside .list a.act{background:rgba(93,175,70,.24);color:var(--zc)}
aside .list .n{font:900 12px/1 Archivo,sans-serif;color:var(--zj);flex:none;width:20px}
aside .list .t{font:500 11.5px/1.45 "IBM Plex Mono";flex:1}
aside .list .c{font:600 10px/1 "IBM Plex Mono";color:#67716A;flex:none}
/* rozdzialy */
main{min-width:0}
.ch{border:2px solid var(--ink);background:#fff;margin-bottom:20px;box-shadow:7px 7px 0 rgba(93,175,70,.28)}
.ch.open{box-shadow:7px 7px 0 rgba(93,175,70,.5)}
.chead{display:flex;align-items:center;gap:16px;width:100%;background:none;border:0;font:inherit;cursor:pointer;text-align:left;padding:18px 20px}
.chead .n{font:900 30px/1 Archivo,sans-serif;color:var(--zj);flex:none}
.chead h2{font:800 20px/1.2 Archivo,sans-serif;text-transform:uppercase;flex:1}
.chead .c{font:600 10.5px/1 "IBM Plex Mono";letter-spacing:.12em;color:#67716A;flex:none;white-space:nowrap}
.chead .pm{font:700 24px/1 "IBM Plex Mono";width:24px;text-align:center;flex:none}
.chead .pm::before{content:"+"}
.ch.open .chead .pm::before{content:"−";color:var(--zc)}
.chead:hover h2{color:var(--zc)}
.cbody{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(0.23,1,0.32,1)}
.ch.open .cbody{grid-template-rows:1fr}
.cbin{overflow:hidden}
.cbin ul{list-style:none;padding:0 20px 18px;margin:0;columns:2;column-gap:30px}
.cbin li{break-inside:avoid;border-top:1px solid #E7E7E3;padding:9px 0}
.cbin li a{font:400 12.5px/1.6 "IBM Plex Mono";color:#37352F;display:block}
.cbin li a:hover{color:var(--zc)}
.ch.hide{display:none}
.cbin li.hide{display:none}
.empty{border:2px dashed rgba(22,96,43,.4);padding:24px;font:500 13px/1.7 "IBM Plex Mono";color:#67716A;display:none}
.empty.on{display:block}
.art{display:none}
body.reading .art{display:block}
body.reading #index,body.reading aside,body.reading #faq{display:none}
body.reading .cols{grid-template-columns:1fr}
.art .back{display:inline-flex;align-items:center;gap:9px;font:700 12px/1 "IBM Plex Mono";letter-spacing:.1em;color:var(--ink);border:2px solid var(--ink);padding:11px 15px;box-shadow:4px 4px 0 var(--zj);margin-bottom:26px}
.art .back:hover{color:var(--ink);transform:translate(2px,2px);box-shadow:2px 2px 0 var(--zj)}
.art .crumb{font:600 11px/1.6 "IBM Plex Mono";letter-spacing:.14em;color:var(--zc);margin-bottom:12px}
.art h1{font:900 clamp(28px,3.4vw,42px)/1.1 Archivo,sans-serif;letter-spacing:-.02em;text-transform:uppercase;text-shadow:4px 4px 0 rgba(93,175,70,.4);max-width:20ch}
.art .rule{height:2px;background:var(--ink);margin:26px 0 24px}
.art .body{max-width:74ch}
.art .body p{font:400 14.5px/1.95 "IBM Plex Mono";color:#37352F;margin-bottom:18px}
.art .body p:first-child{font-weight:500;color:var(--ink);border-left:4px solid var(--zj);padding-left:16px}
.art .nav2{display:flex;gap:16px;flex-wrap:wrap;margin-top:40px;padding-top:24px;border-top:2px solid var(--ink)}
.art .nav2 a{flex:1 1 260px;border:2px solid var(--ink);padding:14px 16px;box-shadow:5px 5px 0 rgba(93,175,70,.32)}
.art .nav2 a span{display:block;font:600 10.5px/1 "IBM Plex Mono";letter-spacing:.14em;color:#67716A;margin-bottom:7px}
.art .nav2 a b{font:700 13px/1.5 "IBM Plex Mono";color:var(--ink)}
.art .nav2 a:hover b{color:var(--zc)}
.art .nav2 a.nx{text-align:right}
.art .ask{margin-top:32px;border:2px solid var(--ink);background:var(--ink);color:#fff;padding:22px 24px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.art .ask p{font:400 12.5px/1.7 "IBM Plex Mono";color:#c9c9c4}
.art .ask b{display:block;font:900 18px/1.2 Archivo,sans-serif;color:#fff;margin-bottom:6px}
.art .ask a{margin-left:auto;font:900 28px/1 Archivo,sans-serif;color:var(--lim)}
.art .ask a:hover{color:#fff}
/* faq */
#faq{border-top:2px solid var(--ink);background:var(--paper);padding:70px 0;position:relative;overflow:hidden}
#faq h2.sec{font:900 clamp(26px,3vw,38px)/1.05 Archivo,sans-serif;text-transform:uppercase;text-shadow:4px 4px 0 rgba(93,175,70,.4)}
.faq{border:2px solid var(--ink);background:#fff;margin-top:32px;position:relative;z-index:1}
.fq{border-bottom:2px solid var(--ink)}
.fq:last-child{border-bottom:0}
.fq button{display:flex;align-items:center;gap:16px;width:100%;background:none;border:0;font:inherit;cursor:pointer;text-align:left;padding:18px 22px}
.fq button .kn{font:900 15px/1 Archivo,sans-serif;color:var(--zj);width:30px;flex:none}
.fq button h3{font:700 15.5px/1.4 "IBM Plex Mono"}
.fq button .pm{margin-left:auto;font:700 24px/1 "IBM Plex Mono";width:24px;text-align:center;flex:none}
.fq button .pm::before{content:"+"}
.fq.open button .pm::before{content:"−";color:var(--zc)}
.fq button:hover h3{color:var(--zc)}
.fbody{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(0.23,1,0.32,1)}
.fq.open .fbody{grid-template-rows:1fr}
.fbin{overflow:hidden}
.fbin p{font:400 13px/1.85 "IBM Plex Mono";color:#37352F;padding:0 22px 20px 68px;max-width:820px}
.fbin p b{color:var(--zc)}
.cta{background:var(--ink);color:#fff}
.cta .wrap{display:flex;align-items:center;gap:30px;padding-top:34px;padding-bottom:34px;flex-wrap:wrap}
.cta h2{font:900 26px/1.1 Archivo,sans-serif;text-transform:uppercase}
.cta p{font:400 12.5px/1.7 "IBM Plex Mono";color:#c9c9c4}
.cta a.tel2{margin-left:auto;font:900 34px/1 Archivo,sans-serif;color:var(--lim)}
.cta a.tel2:hover{color:#fff}
@media (prefers-reduced-motion:reduce){.cbody,.fbody{transition:none}}
@media (max-width:1000px){
.wrap{padding:0 22px}
nav.main{display:none}
.cols{grid-template-columns:1fr;gap:26px}
aside{position:static}
aside .list{max-height:280px}
.cbin ul{columns:1}
.fbin p{padding-left:22px}
.cta a.tel2{margin-left:0}
}

/* === MOBILE-FIX (2026-08-26): waskie ekrany, naglowki rozdzialow === */
@media (max-width:600px){
  .chead{gap:12px;padding:16px 14px}
  .chead h2{min-width:0;font-size:17px;overflow-wrap:anywhere;hyphens:auto}
  .chead .c{letter-spacing:.06em}
  html,body{overflow-x:clip}
}

/* === MOBILE-FIX 2 (2026-08-26): nawigacja miedzy podstronami widoczna na telefonie === */
@media (max-width:1000px){
  header .wrap{flex-wrap:wrap;height:auto;gap:0;padding-top:11px;padding-bottom:0}
  header img{height:38px}
  header .tel{margin-left:auto;font-size:17px}
  header nav.main{display:flex;order:3;width:100%;margin:9px 0 0;gap:0;justify-content:space-between;border-top:2px solid var(--ink)}
  header nav.main a{font:600 11px/1 "IBM Plex Mono";letter-spacing:.05em;padding:9px 0}
}
@media (max-width:430px){
  header nav.main a{font-size:10px;letter-spacing:.01em}
}

/* === iOS-FIX (2026-08-26): Safari na iPhone barwil tekst w <button> systemowym niebieskim === */
button{color:#000;-webkit-text-fill-color:currentColor}

/* === COOKIES (2026-08-26): dzialajacy pasek zgody, rowne przyciski, linki do polityk === */
.cbar{position:fixed;left:0;right:0;bottom:0;z-index:300;background:var(--ink);border-top:2px solid var(--zj);box-shadow:0 -8px 28px rgba(0,0,0,.28)}
.cbar[hidden]{display:none}
.cbar .cin{max-width:1240px;margin:0 auto;padding:14px 40px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.cbar p{font:400 11.5px/1.65 "IBM Plex Mono";color:#c9c9c4;max-width:720px;margin:0}
.cbar p b{color:#fff}
.cbar a{color:#fff;text-decoration:underline}
.cbar a:hover{color:var(--zj)}
.cbar .cbts{margin-left:auto;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.cbar button{font:700 11px/1 "IBM Plex Mono";letter-spacing:.04em;padding:11px 16px;border:2px solid #fff;background:#fff;color:#000;-webkit-text-fill-color:currentColor;box-shadow:3px 3px 0 var(--zj);cursor:pointer}
.cbar button.no{background:transparent;color:#fff;border-color:#8a8a84;box-shadow:none}
.cbar button:hover{box-shadow:2px 2px 0 var(--zj)}
.cbar button.no:hover{border-color:#fff}
.cnote{background:var(--ink)}
.cnote .cin{max-width:1240px;margin:0 auto;padding:0 40px 20px;display:flex;gap:16px;flex-wrap:wrap}
.cnote a{font:400 11px/1.7 "IBM Plex Mono";letter-spacing:.06em;color:#9aa09a;text-decoration:underline}
.cnote a:hover{color:#fff}
@media (max-width:960px){
  .cbar .cin{padding:12px 22px;gap:12px}
  .cbar .cbts{margin-left:0;width:100%}
  .cbar button{flex:1 1 0}
  .cnote .cin{padding:0 22px 18px}
}


/* ===== style z podstrony Realizacje ===== */
/* vietnamese */

/* latin-ext */

/* latin */

/* vietnamese */

/* latin-ext */

/* latin */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* cyrillic */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* cyrillic */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* cyrillic */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* cyrillic */

/* vietnamese */

/* latin-ext */

/* latin */


' + stylesheet + '

*{box-sizing:border-box;margin:0}
:root{--zc:#16602B;--zj:#5DAF46;--lim:#A5E08D;--ink:#111;--paper:#FAFAF7}
body{font-family:"IBM Plex Mono",monospace;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
a{color:var(--zc);text-decoration:none}a:hover{color:#0F4A20}
img{display:block}
.wrap{max-width:1240px;margin:0 auto;padding:0 40px}
h1.big{font:900 clamp(38px,5vw,64px)/1.02 Archivo,sans-serif;letter-spacing:-.02em;text-transform:uppercase;text-shadow:5px 5px 0 rgba(93,175,70,.45)}
.kick{display:inline-flex;align-items:center;gap:10px;font:600 13px/1 "IBM Plex Mono";letter-spacing:.16em;color:var(--zc);margin-bottom:16px}
.kick i{width:12px;height:12px;background:var(--zj);display:inline-block}
.tape{display:inline-block;background:rgba(93,175,70,.3);border-left:2px dashed rgba(22,96,43,.45);border-right:2px dashed rgba(22,96,43,.45);padding:9px 14px;font:700 13px/1 "IBM Plex Mono";letter-spacing:.08em;color:#0B2E16}
.dots{position:absolute;background-image:radial-gradient(circle,var(--zc) 1.5px,transparent 1.8px);background-size:12px 12px;opacity:.16;pointer-events:none;z-index:0}
.dots.jl{background-image:radial-gradient(circle,var(--zj) 1.5px,transparent 1.8px);opacity:.28}
header{position:sticky;top:0;background:#fff;border-bottom:2px solid var(--ink);z-index:50}
header .wrap{display:flex;align-items:center;gap:34px;height:78px}
header img{height:44px}
nav{display:flex;gap:26px;margin-left:auto}
nav a{font:600 13px/1 "IBM Plex Mono";letter-spacing:.1em;color:var(--ink);padding:8px 2px;border-bottom:2px solid transparent}
nav a:hover{color:var(--zc);border-color:var(--zj)}
nav a.on{color:var(--zc);border-color:var(--zj)}
header .tel{font:900 18px/1 Archivo,sans-serif;color:var(--zc);white-space:nowrap}
.hd{position:relative;border-bottom:2px solid var(--ink);overflow:hidden;background:var(--paper)}
.hd .wrap{padding-top:64px;padding-bottom:64px;position:relative;z-index:1}
.hd p{font:400 14.5px/1.9 "IBM Plex Mono";color:#37352F;max-width:640px;margin-top:20px}
.gal{padding:70px 0 90px}
.ggrid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.gitem{position:relative}
.gitem .tape{margin:0 0 12px 6px;transform:rotate(-2deg)}
.gitem .im{border:2px solid var(--ink);height:260px;background:#F1F1EE;box-shadow:7px 7px 0 rgba(93,175,70,.35);overflow:hidden}
.gitem image-slot{width:100%;height:100%;display:block}
.gitem figcaption{font:500 12px/1.7 "IBM Plex Mono";color:#67716A;margin-top:12px}
.gitem figcaption b{color:var(--ink);display:block;font-size:13px}
.cta{border-top:2px solid var(--ink);background:var(--ink);color:#fff}
.cta .wrap{display:flex;align-items:center;gap:30px;padding-top:34px;padding-bottom:34px;flex-wrap:wrap}
.cta h2{font:900 26px/1.1 Archivo,sans-serif;text-transform:uppercase}
.cta p{font:400 12.5px/1.7 "IBM Plex Mono";color:#c9c9c4}
.cta a.tel2{margin-left:auto;font:900 34px/1 Archivo,sans-serif;color:var(--lim)}
.cta a.tel2:hover{color:#fff}
@media (max-width:960px){.wrap{padding:0 22px}nav{display:none}.ggrid{grid-template-columns:1fr}.cta a.tel2{margin-left:0}}

/* === MOBILE-FIX (2026-08-26): galeria nie rozpycha ekranu === */
.ggrid{grid-template-columns:repeat(3,minmax(0,1fr))}
.gitem{min-width:0}
@media (max-width:960px){
  .ggrid{grid-template-columns:minmax(0,1fr)}
  html,body{overflow-x:clip}
}

/* === MOBILE-FIX 2 (2026-08-26): nawigacja miedzy podstronami widoczna na telefonie === */
@media (max-width:960px){
  header .wrap{flex-wrap:wrap;height:auto;gap:0;padding-top:11px;padding-bottom:0}
  header img{height:38px}
  header .tel{margin-left:auto;font-size:17px}
  header nav{display:flex;order:3;width:100%;margin:9px 0 0;gap:0;justify-content:space-between;border-top:2px solid var(--ink)}
  header nav a{font:600 11px/1 "IBM Plex Mono";letter-spacing:.05em;padding:9px 0}
}
@media (max-width:430px){
  header nav a{font-size:10px;letter-spacing:.01em}
}

/* === COOKIES (2026-08-26): dzialajacy pasek zgody, rowne przyciski, linki do polityk === */
.cbar{position:fixed;left:0;right:0;bottom:0;z-index:300;background:var(--ink);border-top:2px solid var(--zj);box-shadow:0 -8px 28px rgba(0,0,0,.28)}
.cbar[hidden]{display:none}
.cbar .cin{max-width:1240px;margin:0 auto;padding:14px 40px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.cbar p{font:400 11.5px/1.65 "IBM Plex Mono";color:#c9c9c4;max-width:720px;margin:0}
.cbar p b{color:#fff}
.cbar a{color:#fff;text-decoration:underline}
.cbar a:hover{color:var(--zj)}
.cbar .cbts{margin-left:auto;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.cbar button{font:700 11px/1 "IBM Plex Mono";letter-spacing:.04em;padding:11px 16px;border:2px solid #fff;background:#fff;color:#000;-webkit-text-fill-color:currentColor;box-shadow:3px 3px 0 var(--zj);cursor:pointer}
.cbar button.no{background:transparent;color:#fff;border-color:#8a8a84;box-shadow:none}
.cbar button:hover{box-shadow:2px 2px 0 var(--zj)}
.cbar button.no:hover{border-color:#fff}
.cnote{background:var(--ink)}
.cnote .cin{max-width:1240px;margin:0 auto;padding:0 40px 20px;display:flex;gap:16px;flex-wrap:wrap}
.cnote a{font:400 11px/1.7 "IBM Plex Mono";letter-spacing:.06em;color:#9aa09a;text-decoration:underline}
.cnote a:hover{color:#fff}
@media (max-width:960px){
  .cbar .cin{padding:12px 22px;gap:12px}
  .cbar .cbts{margin-left:0;width:100%}
  .cbar button{flex:1 1 0}
  .cnote .cin{padding:0 22px 18px}
}


/* === poprawki dla wersji na WordPressie === */
header img{width:auto}
.artwrap{max-width:1240px;margin:0 auto;padding:0 40px}
.art{padding-top:34px;padding-bottom:60px}
body.reading .art{display:block}
@media (max-width:960px){.artwrap{padding:0 22px}}
.gitem .im img{width:100%;height:100%;object-fit:cover;display:block}

/* ===== podstrony uslugowe (/uslugi/ i /uslugi/nazwa/) ===== */
body.usluga .art{display:block}
.art.us .body{max-width:78ch}
.art.us .body h2{font:900 clamp(22px,2.6vw,30px)/1.1 Archivo,sans-serif;text-transform:uppercase;letter-spacing:-.01em;margin:40px 0 14px;text-shadow:3px 3px 0 rgba(93,175,70,.35)}
.art.us .body h3{font:800 17px/1.3 Archivo,sans-serif;text-transform:uppercase;margin:26px 0 10px}
.art.us .body ul,.art.us .body ol{margin:0 0 22px;padding:0;list-style:none}
.art.us .body ul li{position:relative;padding:9px 0 9px 22px;border-top:1px solid #E7E7E3;font:400 14px/1.8 "IBM Plex Mono";color:#37352F}
.art.us .body ul li::before{content:"";position:absolute;left:0;top:17px;width:10px;height:10px;background:var(--zj)}
.art.us .body ol{counter-reset:krok}
.art.us .body ol li{counter-increment:krok;position:relative;padding:12px 0 12px 56px;border-top:1px solid #E7E7E3;font:400 14px/1.8 "IBM Plex Mono";color:#37352F}
.art.us .body ol li::before{content:counter(krok,decimal-leading-zero);position:absolute;left:0;top:11px;font:900 26px/1 Archivo,sans-serif;color:var(--zj)}
.art.us .body li b,.art.us .body li strong{color:var(--ink)}
.art.us .body details{border:2px solid var(--ink);background:#fff;margin:0 0 -2px}
.art.us .body details:last-of-type{margin-bottom:26px}
.art.us .body details summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:16px 18px;font:700 14.5px/1.4 "IBM Plex Mono";color:var(--ink)}
.art.us .body details summary::-webkit-details-marker{display:none}
.art.us .body details summary::after{content:"+";margin-left:auto;font:700 24px/1 "IBM Plex Mono";flex:none}
.art.us .body details[open] summary::after{content:"\2212";color:var(--zc)}
.art.us .body details summary:hover{color:var(--zc)}
.art.us .body details>*:not(summary){padding:0 18px 4px}
.art.us .body details p{margin:0 0 12px;padding:0 18px 4px;font-size:13.5px;font-weight:400;color:#37352F;border-left:0}
.us-porady{margin-top:44px;padding-top:26px;border-top:2px solid var(--ink)}
.us-porady h2{font:900 22px/1.1 Archivo,sans-serif;text-transform:uppercase;margin-bottom:18px}
.us-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.us-grid a{border:2px solid var(--ink);background:#fff;padding:14px 16px;box-shadow:5px 5px 0 rgba(93,175,70,.32);min-width:0}
.us-grid a span{display:block;font:600 10.5px/1 "IBM Plex Mono";letter-spacing:.14em;color:#67716A;margin-bottom:7px}
.us-grid a b{font:700 13px/1.5 "IBM Plex Mono";color:var(--ink)}
.us-grid a:hover b{color:var(--zc)}
.us-lista{padding:56px 0 70px;background:#fff}
.us-kafle{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.us-kafel{display:flex;flex-direction:column;gap:10px;border:2px solid var(--ink);background:#fff;padding:22px 22px 18px;box-shadow:7px 7px 0 rgba(93,175,70,.32);min-width:0}
.us-kafel b{font:900 22px/1.1 Archivo,sans-serif;text-transform:uppercase;color:var(--ink)}
.us-kafel p{font:400 13px/1.75 "IBM Plex Mono";color:#37352F;flex:1;margin:0}
.us-kafel span{font:700 11px/1 "IBM Plex Mono";letter-spacing:.12em;color:var(--zc);margin-top:6px}
.us-kafel:hover{transform:translate(2px,2px);box-shadow:5px 5px 0 rgba(93,175,70,.32)}
@media (max-width:960px){.us-kafle{grid-template-columns:minmax(0,1fr)}.us-grid{grid-template-columns:minmax(0,1fr)}}

/* Podpis pod poradą: kto odpowiada za treść, jak powstaje, kiedy aktualizowana (2.7) */
.art .autor{margin-top:30px;border:2px solid var(--ink);background:var(--paper);padding:18px 20px;box-shadow:5px 5px 0 rgba(93,175,70,.32)}
.art .autor .kto{display:flex;align-items:center;gap:14px;margin-bottom:10px}
.art .autor .kto img{width:44px;height:auto;flex:0 0 auto}
.art .autor .kto b{display:block;font:900 15px/1.2 Archivo,sans-serif;color:var(--ink)}
.art .autor .kto span{display:block;font:600 10.5px/1.6 "IBM Plex Mono";letter-spacing:.08em;color:#67716A;margin-top:3px}
.art .autor p{font:400 12.5px/1.75 "IBM Plex Mono";color:#37352F;margin:0}

/* 2.7.2: menu przy powiekszonej czcionce w telefonie: pozycje zawijaja sie do drugiego rzedu zamiast zlewac */
@media (max-width:1000px){
  header nav.main,header nav{flex-wrap:wrap;column-gap:14px;row-gap:0}
  header nav.main a,header nav a{white-space:nowrap}
}
