/* Blog Jesteśmy Otwarci: te same tokeny co strona główna (jeden jasny motyw) */
:root{
  --bg:#fffefa; --surface:#ffffff; --sun-soft:#fff4c7; --sky-soft:#eef5ff;
  --ink:#1e2330; --muted:#596070; --line:#ebe7da;
  --sun:#ffd23f; --sun-deep:#f5b800;
  --shadow-s:0 10px 30px -14px rgb(30 35 48 / .25);
  --r:24px;
  --display:"Bricolage Grotesque", system-ui, sans-serif;
  --body:"Onest", system-ui, sans-serif;
  color-scheme: light;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 18px/1.7 var(--body);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px}
@media (max-width:640px){.wrap{padding:0 16px}}
h1,h2,h3{font-family:var(--display);letter-spacing:-.025em;line-height:1.1;margin:0}
.mark{background:linear-gradient(transparent 58%,var(--sun) 58%,var(--sun) 92%,transparent 92%);padding:0 .08em}

.btn{display:inline-flex;align-items:center;gap:.55rem;white-space:nowrap;border-radius:999px;padding:.95rem 1.55rem;font:700 1rem/1 var(--body);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s}
.btn:active{transform:scale(.98) translateY(1px)}
.btn-primary{background:var(--sun);color:var(--ink);box-shadow:0 6px 0 -1px var(--sun-deep)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 0 -1px var(--sun-deep)}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px}

header.site{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{height:70px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;font:800 1.4rem/1 var(--display);letter-spacing:-.03em}
.logo svg{width:36px;height:36px;flex:none}
.logo-o{background:linear-gradient(transparent 60%,var(--sun) 60%,var(--sun) 94%,transparent 94%)}
.nav ul{display:flex;gap:28px;list-style:none;margin:0;padding:0}
.nav ul a{text-decoration:none;color:var(--muted);font-weight:500}
.nav ul a:hover,.nav ul a[aria-current]{color:var(--ink)}
.nav .btn{padding:.75rem 1.2rem}
@media (max-width:860px){.nav ul{display:none}}
@media (max-width:380px){.logo{font-size:1.15rem}}

/* Lista artykułów */
.blog-head{padding:64px 0 24px}
.blog-head h1{font-size:clamp(2.4rem,5vw,3.8rem);font-weight:800}
.blog-head p{margin-top:16px;color:var(--muted);max-width:56ch;font-size:1.15rem}
.posts{padding:32px 0 96px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.post-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s}
.post-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-s)}
.post-card img{width:100%;aspect-ratio:16/10;object-fit:cover}
.post-card .pc-body{padding:22px 24px 26px;display:grid;gap:10px}
.post-card h2{font-size:1.3rem;font-weight:700}
.post-card p{color:var(--muted);font-size:1rem;line-height:1.55}
.post-card .meta{font-size:.88rem;color:var(--muted)}
.post-card.featured{grid-column:span 2;flex-direction:row}
.post-card.featured img{width:52%;aspect-ratio:auto;min-height:320px}
.post-card.featured .pc-body{align-content:center;padding:32px}
.post-card.featured h2{font-size:1.8rem}
@media (max-width:980px){.posts{grid-template-columns:1fr 1fr}.post-card.featured{grid-column:1/-1}}
@media (max-width:640px){.posts{grid-template-columns:1fr}.post-card.featured{flex-direction:column}.post-card.featured img{width:100%;min-height:0;aspect-ratio:16/10}}

/* Artykuł */
.article{padding:56px 0 40px}
.article-wrap{max-width:760px;margin:0 auto;padding:0 24px}
@media (max-width:640px){.article-wrap{padding:0 16px}}
.crumbs{font-size:.92rem;color:var(--muted);margin-bottom:20px}
.crumbs a{text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.article h1{font-size:clamp(2.1rem,4.6vw,3.2rem);font-weight:800}
.article .lead{margin-top:20px;font-size:1.25rem;color:var(--muted)}
.article .meta{margin-top:20px;font-size:.92rem;color:var(--muted)}
.article .cover{margin:36px auto 0;max-width:1000px;padding:0 24px}
.article .cover img{width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:var(--r)}
.prose{margin-top:44px}
.prose h2{font-size:1.75rem;font-weight:700;margin:52px 0 14px}
.prose h3{font-size:1.25rem;font-weight:700;margin:32px 0 8px}
.prose p{margin:0 0 18px}
.prose ul,.prose ol{margin:0 0 20px;padding-left:1.3em}
.prose li{margin-bottom:8px}
.prose a{text-decoration-color:var(--sun-deep);text-decoration-thickness:2px;text-underline-offset:3px}
.prose strong{font-weight:600}
.prose .tip{background:var(--sky-soft);border-radius:18px;padding:20px 24px;margin:28px 0}
.prose .tip p:last-child{margin:0}
.prose table{width:100%;border-collapse:collapse;margin:8px 0 24px;font-size:1rem}
.prose th,.prose td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.prose th{font-weight:600}
.cta-box{margin:56px 0 0;background:var(--sun-soft);border-radius:var(--r);padding:32px;display:grid;gap:14px}
.cta-box h2{font-size:1.6rem;margin:0}
.cta-box p{margin:0;color:var(--muted)}
.cta-box .btn{justify-self:start}
.related{max-width:760px;margin:56px auto 96px;padding:0 24px}
.related h2{font-size:1.4rem;margin-bottom:16px}
.related ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.related a{font-weight:600;text-decoration:none}
.related a:hover{text-decoration:underline}

footer.site{border-top:1px solid var(--line);padding:40px 0;color:var(--muted);font-size:.95rem}
.foot{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:center}
.foot-links{display:flex;gap:20px;flex-wrap:wrap}
.foot a{text-decoration:none}
.foot a:hover{color:var(--ink)}
@media (max-width:640px){
  .prose table{display:block;overflow-x:auto;font-size:.92rem;-webkit-overflow-scrolling:touch}
  .prose th,.prose td{min-width:120px}
}
