/* Styl podstron (O mnie, Kontakt, Polityka prywatności, 404): ta sama paleta i kroje co strona główna. */
:root{--paper:#F2F2F0;--ink:#111111;--ink-2:#555555;--line:rgba(17,17,17,.14);--accent:#D7F25C;--ease:cubic-bezier(.2,.7,.2,1);--f:"Inter Tight","Inter","Segoe UI",system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;color-scheme:light}
*{box-sizing:border-box}
picture{display:contents}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--f)}
a{color:inherit}
::selection{background:var(--accent);color:#111111}
.in{width:100%;max-width:1180px;margin:0 auto;padding-inline:16px}

/* nagłówek */
.top{position:sticky;top:0;z-index:40;background:rgba(233,233,231,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(17,17,17,.06)}
.bar{display:flex;align-items:center;gap:16px;min-height:64px}
.brand{display:flex;align-items:center;gap:10px;font:600 17px/1 var(--f);letter-spacing:-.01em;text-decoration:none;white-space:nowrap}
.brand::before{content:"";flex:none;width:28px;height:28px;border-radius:9px;background:radial-gradient(circle,var(--accent) 0 5px,rgba(215,242,92,0) 5.6px),var(--ink)}
.brand small{display:block;margin-top:4px;font:400 10px var(--mono);letter-spacing:.04em;color:var(--ink-2)}
.top .cta{margin-left:auto}
.cta{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 6px 0 18px;border:0;border-radius:999px;background:var(--ink);color:#FFFFFF;font:600 14px var(--f);text-decoration:none;cursor:pointer}
.cta::after{content:"→";flex:none;width:32px;height:32px;border-radius:50%;background:var(--accent);color:#111111;display:grid;place-items:center;font:500 16px var(--f)}
.cta:disabled{opacity:.55;cursor:default}

/* treść */
.page{flex:1;width:100%;max-width:860px;margin:0 auto;padding:36px 16px 72px}
.page.wide{max-width:1180px}
.back{display:inline-block;margin-bottom:22px;font:500 14px var(--f)}
.kicker{display:flex;align-items:center;gap:8px;margin:0 0 14px;font:400 12px/1.3 var(--mono);color:var(--ink-2)}
.kicker::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 1.5px #111111}
h1{margin:0 0 18px;font:500 clamp(2.2rem,5.6vw,4rem)/1.04 var(--f);letter-spacing:-.045em;text-wrap:balance}
h1 em,h2 em{font-style:normal;padding:0 .1em;margin:0 -.02em;border-radius:.16em;background:linear-gradient(var(--accent),var(--accent)) no-repeat 0 62%/100% 78%;-webkit-box-decoration-break:clone;box-decoration-break:clone}
h2{margin:40px 0 10px;font:500 1.5rem/1.2 var(--f);letter-spacing:-.025em}
.lead{max-width:60ch;margin:0 0 18px;font-size:19px;line-height:1.55;font-weight:500;color:#1F1F1F}
p,li{margin:0 0 10px}
ul,ol{margin:0 0 12px;padding-left:22px}
.row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:26px}
.link{font:600 14px var(--f)}
.meta{font:400 13px var(--mono);color:var(--ink-2)}
.draft{margin:18px 0 8px;padding:16px 18px;border-radius:16px;background:var(--accent);color:#111111;font-size:15px;line-height:1.5}
.draft b{display:block;margin-bottom:4px;font-weight:600}
.draft ul{margin:6px 0 0;padding-left:20px}
.crumbs{margin:0 0 22px;font:500 14px var(--f);color:var(--ink-2)}
.crumbs a{color:var(--ink)}
.crumbs span{color:var(--ink-2)}
.byline{margin:0 0 20px;font:400 13px/1.5 var(--mono);color:var(--ink-2)}
.byline a{color:var(--ink)}
.notice{margin:0 0 18px;padding:12px 16px;border-left:3px solid var(--ink);border-radius:0 12px 12px 0;background:rgba(255,255,255,.7);font-size:15px}
.toc{margin:0 0 26px;padding:16px 20px;border-radius:16px;background:#FFFFFF}
.toc b{display:block;margin-bottom:6px;font:600 14px var(--f)}
.toc ol{margin:0;padding-left:20px}
.toc li{margin:0 0 4px}
.page h2[id]{scroll-margin-top:84px}
blockquote{margin:0 0 12px;padding:2px 0 2px 16px;border-left:3px solid var(--accent);color:#2A2A2A}
.table-wrap{margin:0 0 16px;overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:15px}
th,td{padding:10px 12px;border:1px solid var(--line);text-align:left;vertical-align:top}
th{background:#FFFFFF;font-weight:600}
.dl{margin:0 0 16px;padding:14px 18px;border-radius:14px;background:#FFFFFF}
.kb-list{margin:26px 0 0;padding:0;list-style:none}
.kb-list li{display:grid;gap:4px;padding:16px 0;border-top:1px solid var(--line)}
.kb-list li:last-child{border-bottom:1px solid var(--line)}
.kb-list a{font-size:1.2rem;text-decoration:none}
.kb-list a:hover{text-decoration:underline}
.kb-list time{font:400 12px var(--mono);color:var(--ink-2)}
.kb-list span{color:#3D3D3D}
.related-line{margin-top:18px}
.draft-banner{margin:0 0 18px;padding:12px 16px;border-radius:12px;background:#FFE08A;color:#111111;font:600 14px/1.4 var(--f)}
.todo{padding:0 .25em;border-radius:4px;background:#FFE08A;color:#111111;font-weight:600}
.mk-cap{margin:14px 0 8px;font:400 12px/1.4 var(--mono);color:var(--ink-2)}
.mock{margin:0}
.mock img{display:block;width:100%;max-width:560px;height:auto;border-radius:26px;box-shadow:0 44px 80px -44px rgba(30,36,34,.5)}
.steps{margin:0 0 12px;padding:0;list-style:none;counter-reset:st}
.steps li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;margin:0;padding:12px 0;border-top:1px solid var(--line);counter-increment:st}
.steps li::before{content:counter(st,decimal-leading-zero);padding-top:4px;font:400 12px var(--mono);color:var(--ink-2)}
.steps li:last-child{border-bottom:1px solid var(--line)}
.faq h3{margin:26px 0 6px;font:600 1.12rem/1.3 var(--f);letter-spacing:-.01em}
.updated{margin-top:32px;font:400 13px var(--mono);color:var(--ink-2)}
.about-head{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:32px;align-items:start}
.portrait{display:block;width:100%;height:auto;border-radius:24px;background:#E2E2E0}
.svc{padding-left:0;list-style:none}
.svc li{padding:12px 0;border-top:1px solid var(--line)}
.svc li:last-child{border-bottom:1px solid var(--line)}
.svc b{display:block;font-weight:600}
.facts{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.facts li{display:grid;grid-template-columns:150px 1fr;gap:12px;margin:0;padding:12px 0;border-top:1px solid rgba(17,17,17,.16)}
.facts span{font:400 12px/1.6 var(--mono);color:#2E3415;text-transform:uppercase;letter-spacing:.04em}
.err h1{max-width:14ch;font-size:clamp(2.6rem,8vw,5.2rem)}
.err .code{margin:0 0 6px;font:500 14px var(--mono);letter-spacing:.06em;color:var(--ink-2)}

/* strona Kontakt: limonkowy blok z formularzem */
.contact-box{margin-top:26px;padding:36px;border-radius:36px;background:var(--accent);color:#111111}
.ct-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}
.picks{display:grid;gap:8px}
.pick{display:flex;gap:12px;align-items:center;min-height:48px;padding:10px 14px;border-radius:14px;background:#111111;color:#FFFFFF;cursor:pointer;transition:transform .25s var(--ease)}
.pick:hover{transform:translateX(4px)}
.pick input{accent-color:var(--accent);width:18px;height:18px;margin:0}
.pick span{font-size:15px}
.msg{min-height:120px;padding:16px;border-radius:18px;background:#111111;color:#FFFFFF;white-space:pre-wrap;font-size:15px;box-shadow:0 34px 60px -34px rgba(17,17,17,.6)}
.cf{display:grid;gap:12px;margin-top:14px}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cf-f{display:grid;gap:6px;font:400 12px/1.2 var(--mono);color:#2E3415}
.cf-f input{height:46px;padding:0 14px;border:1px solid rgba(17,17,17,.24);border-radius:12px;background:#FFFFFF;font:400 15px var(--f);color:#111111}
.cf-f input:focus{outline:2px solid #111111;outline-offset:1px}
.cf-f input[aria-invalid="true"]{border-color:#B3261E}
.cf-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.copy-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.contact-box .cta{background:#111111}
.cf-li{appearance:none;height:46px;padding:0 20px;border:1px solid #111111;border-radius:999px;background:transparent;font:600 14px var(--f);color:#111111;cursor:pointer;transition:background .25s var(--ease),color .25s var(--ease)}
.cf-li:hover{background:#111111;color:#FFFFFF}
.cf-fb{min-height:1.4em;margin:0;font-size:14px;line-height:1.45;color:#2E3415}
.cf-fb.ok{color:#111111;font-weight:600}
.cf-fb.bad{color:#B3261E}
.cf-fb.paste{padding:12px 14px;border-radius:12px;background:#111111;color:#FFFFFF;font-weight:600}
.cf-priv{margin:0;max-width:60ch;font-size:12.5px;line-height:1.5;color:#2E3415}
.cf-priv a{text-decoration:underline;text-underline-offset:3px}
.cf.sent .cf-row{opacity:.5;pointer-events:none}

/* stopka */
/* strona kończy się razem ze stopką: bez „odbijania” i rozciągania za końcem (telefony) */
html,body{overscroll-behavior-y:none}
footer.foot{position:relative;margin-top:56px;padding:44px 0 48px;border-radius:36px 36px 0 0;background:#0C0C0C;font-size:13px;color:#A8A8A8}
footer.foot p{margin:0 0 6px;max-width:80ch}
footer.foot p:first-child{color:#FFFFFF}
footer.foot .foot-co{line-height:1.45;display:grid;grid-template-columns:1.5fr 1fr 1.2fr;gap:28px 48px;margin:0;padding:0;border:0;font-style:normal}
footer.foot .foot-co .fc p{margin:0 0 6px}
footer.foot .foot-co .fc p:first-child{color:#FFFFFF}
footer.foot .foot-co .fc-h{color:#FFFFFF;font-weight:500}
footer.foot .foot-co li{margin:0}
footer.foot .foot-co ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
@media (max-width:760px){footer.foot .foot-co{grid-template-columns:1fr}}
footer.foot a{color:inherit;text-decoration:underline;text-underline-offset:3px}

@media (max-width:760px){
  .about-head{grid-template-columns:1fr}
  .portrait{max-width:260px}
  .ct-grid{grid-template-columns:1fr}
  .contact-box{padding:22px 16px;border-radius:24px}
  .facts li{grid-template-columns:1fr;gap:2px}
  footer.foot{border-radius:24px 24px 0 0}
}
@media (max-width:640px){
  .brand small{display:none}
  .cf-row{grid-template-columns:1fr}
}
