:root{--zielony:#15803d;--zielony-c:#166534;--zielony-j:#f0fdf4;--zielony-r:#bbf7d0;--granat:#0f172a;--tekst:#1e293b;--szary:#64748b;--linia:#e2e8f0;--tlo:#f8fafc}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--tekst);background:#fff;font-size:17px;line-height:1.62}
a{color:var(--zielony-c)}
.w{max-width:880px;margin:0 auto;padding:0 20px}
header.top{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.95);backdrop-filter:blur(6px);border-bottom:1px solid var(--linia)}
header.top .w{display:flex;align-items:center;justify-content:space-between;height:60px;gap:12px;max-width:1080px}
.logo{font-size:21px;font-weight:800;letter-spacing:1px;color:var(--granat);text-decoration:none;white-space:nowrap}
.logo span{color:var(--zielony)}
nav.menu{display:flex;gap:20px;align-items:center}
nav.menu a{color:var(--tekst);text-decoration:none;font-size:15px;font-weight:600}
nav.menu a:hover{color:var(--zielony-c)}
.btn{display:inline-block;background:var(--zielony);color:#fff!important;text-decoration:none;font-weight:700;border:0;border-radius:12px;padding:13px 22px;font-size:17px;line-height:1.3;white-space:nowrap}
.btn:hover{background:var(--zielony-c)}
.btn.maly{padding:9px 16px;font-size:15px;border-radius:10px}
main{padding-top:22px;padding-bottom:40px}
.okruszki{font-size:14px;color:var(--szary);margin:0 0 10px}
.okruszki a{color:var(--szary)}
h1{font-size:36px;line-height:1.16;margin:0 0 14px;color:var(--granat);letter-spacing:-.4px}
.lead{font-size:19.5px;color:#334155;margin:0 0 26px}
h2{font-size:25px;line-height:1.25;margin:38px 0 10px;color:var(--granat)}
h3{font-size:19px;margin:24px 0 6px;color:var(--granat)}
p{margin:0 0 14px}
ul,ol{margin:0 0 16px;padding-left:24px}
li{margin:5px 0}
.tab{overflow-x:auto;margin:6px 0 18px}
table{border-collapse:collapse;width:100%;font-size:16px;min-width:520px}
th,td{border:1px solid var(--linia);padding:9px 11px;text-align:left;vertical-align:top}
th{background:#f1f5f9;color:var(--granat)}
tr.my td{background:var(--zielony-j);font-weight:600}
td.l,th.l{text-align:right;white-space:nowrap}
.ramka{border:1px solid var(--zielony-r);background:var(--zielony-j);border-radius:14px;padding:16px 20px;margin:18px 0}
.ramka p:last-child,.ramka ul:last-child{margin-bottom:0}
.uwaga{border-left:5px solid #f59e0b;background:#fffbeb;border-radius:0 12px 12px 0;padding:12px 16px;margin:18px 0;font-size:16px}
.kafle{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:14px 0 20px}
.kafel{border:1px solid var(--linia);border-radius:14px;padding:16px;background:#fff}
.kafel b{display:block;color:var(--granat);font-size:17px;margin-bottom:4px}
.kafel span{color:#475569;font-size:15.5px}
.cena-duza{font-size:30px;font-weight:800;color:var(--granat)}
details{border:1px solid var(--linia);border-radius:12px;background:#fff;margin:0 0 9px}
summary{cursor:pointer;font-weight:700;padding:14px 46px 14px 18px;list-style:none;color:var(--granat);position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:18px;top:10px;font-size:23px;color:var(--zielony);font-weight:400}
details[open] summary::after{content:"–"}
details p{margin:0;padding:0 18px 16px;color:#475569}
.cta{display:flex;justify-content:space-between;align-items:center;gap:18px;background:var(--granat);color:#e2e8f0;border-radius:16px;padding:20px 24px;margin:40px 0 12px}
.cta b{display:block;color:#fff;font-size:20px;margin-bottom:2px}
.cta span{font-size:15.5px}
.stan{font-size:13.5px;color:var(--szary);margin:0}
.zrodlo{font-size:14px;color:var(--szary)}
footer{background:var(--granat);color:#cbd5e1;padding:34px 0 26px;font-size:15px;margin-top:20px}
footer .w{display:flex;justify-content:space-between;gap:26px;flex-wrap:wrap;max-width:1080px}
footer a{color:#e2e8f0}
footer .logo{color:#fff}
footer p{margin:10px 0 0;max-width:340px}
footer ul{list-style:none;padding:0;margin:0}
footer li{margin:0 0 6px}
footer .dol{width:100%;border-top:1px solid #334155;margin-top:6px;padding-top:14px;color:#94a3b8;font-size:13.5px}
@media (max-width:760px){
  h1{font-size:28px}h2{font-size:22px}.lead{font-size:18px}body{font-size:16.5px}
  nav.menu a:not(.btn){display:none}
  .kafle{grid-template-columns:1fr}
  .cta{flex-direction:column;align-items:flex-start}
  .w{padding:0 16px}
}
