/* ============ BLOG — wspolne ============ */
.cat-pill{display:inline-block;font:800 .68rem/1 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:#FFE2C4;background:rgba(var(--warm),.16);border:1px solid rgba(var(--warm),.34);padding:.42rem .7rem;border-radius:100px}
.post-meta{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;font:700 .74rem/1 var(--font-body);letter-spacing:.04em;color:var(--ink-3);text-transform:uppercase}
.post-meta .pm-dot{width:3px;height:3px;border-radius:50%;background:rgba(var(--warm),.8)}

/* ============ HERO featured ============ */
.blog-hero{position:relative;padding:clamp(7.5rem,16vh,10rem) 0 1rem;overflow:clip}
.blog-hero .hero-light{top:-12%;background:
  radial-gradient(1040px 760px at 42% 28%, rgba(var(--key),.55) 0%, rgba(var(--key),0) 70%),
  radial-gradient(420px 360px at 72% 42%, rgba(var(--warm),.1) 0%, rgba(var(--warm),0) 70%),
  radial-gradient(130% 116% at 42% 32%, rgba(0,0,0,0) 44%, var(--vignette) 100%);
  -webkit-mask-image:linear-gradient(#000 calc(100% - 100px),transparent);mask-image:linear-gradient(#000 calc(100% - 100px),transparent)}
.blog-eyebrow{margin-bottom:1.4rem}
.hero-card{display:grid;grid-template-columns:1fr 1.3fr;gap:0;border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025);box-shadow:0 34px 70px -28px rgba(0,0,0,.62);text-decoration:none;color:inherit;transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s,border-color .4s}
.hero-card:hover{transform:translateY(-4px);box-shadow:0 44px 84px -26px rgba(0,0,0,.72);border-color:rgba(var(--warm),.45)}
.hero-card-content{padding:clamp(2rem,3.4vw,3.2rem);display:flex;flex-direction:column;gap:1.1rem;align-self:center}
.hero-card-content .post-meta{margin:.2rem 0}
.hero-card h2{font:800 clamp(1.7rem,3vw,2.5rem)/1.08 var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:.2rem 0 0;text-wrap:balance}
.hero-excerpt{font-size:1.06rem;line-height:1.6;color:var(--ink-2);margin:0;max-width:46ch}
.read-more-btn{display:inline-flex;align-items:center;gap:.5rem;font:800 .92rem/1 var(--font-body);color:rgba(var(--warm),.96);text-transform:uppercase;letter-spacing:.06em;margin-top:.3rem;transition:gap .35s}
.read-more-btn svg{width:16px;height:16px}
.hero-card:hover .read-more-btn{gap:.85rem}
.hero-card-image{position:relative;min-height:340px;overflow:hidden}
.hero-card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.hero-card:hover .hero-card-image img{transform:scale(1.04)}

/* ============ LAYOUT listing + sidebar ============ */
.blog-layout{display:grid;grid-template-columns:1fr 340px;gap:clamp(2rem,4vw,3.4rem);padding:clamp(2.5rem,5vh,4rem) 0 5rem;align-items:start}
.articles-header{margin:0 0 1.8rem}
.articles-header h2{font:800 clamp(1.3rem,2.4vw,1.7rem)/1.1 var(--font-display);letter-spacing:-.01em;color:var(--ink);margin:0}
.articles-list{display:flex;flex-direction:column;gap:1.6rem}
.article-card{display:grid;grid-template-columns:300px 1fr;gap:0;border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.02);box-shadow:0 22px 50px -28px rgba(0,0,0,.55);text-decoration:none;color:inherit;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s,border-color .4s}
.article-card:hover{transform:translateY(-4px);box-shadow:0 32px 62px -26px rgba(0,0,0,.68);border-color:rgba(var(--warm),.42)}
.article-card-image{position:relative;overflow:hidden;min-height:200px}
.article-card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.article-card:hover .article-card-image img{transform:scale(1.05)}
.article-card-content{padding:clamp(1.4rem,2.4vw,1.9rem);display:flex;flex-direction:column;gap:.7rem;align-self:center}
.article-card-content h3{font:800 clamp(1.18rem,1.9vw,1.42rem)/1.18 var(--font-display);letter-spacing:-.01em;color:var(--ink);margin:.15rem 0 0}
.card-excerpt{font-size:.98rem;line-height:1.55;color:var(--ink-2);margin:0;max-width:54ch}
.card-author{font:700 .72rem/1 var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-top:.2rem}

/* paginacja */
.pagination{display:flex;flex-wrap:wrap;gap:.5rem;margin:2.6rem 0 0}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 .7rem;border-radius:var(--radius);border:1px solid rgba(255,255,255,.12);color:var(--ink-2);text-decoration:none;font:700 .92rem/1 var(--font-body);transition:border-color .3s,color .3s,background .3s}
.pagination .page-numbers:hover{border-color:rgba(var(--warm),.5);color:var(--ink)}
.pagination .page-numbers.current{background:rgba(var(--warm),.96);color:#1a0f06;border-color:transparent}

/* ============ SIDEBAR ============ */
.sidebar{display:flex;flex-direction:column;gap:1.6rem;position:sticky;top:calc(var(--nav-height,72px) + 1.5rem)}
.sidebar-widget{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025);border-radius:var(--radius-lg);padding:1.5rem 1.4rem}
.sidebar-widget h4{font:800 .82rem/1 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:rgba(var(--warm),.95);margin:0 0 1.1rem}
.about-row{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.about-avatar{flex:0 0 auto;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font:800 1.5rem/1 var(--font-display);color:#1a0f06;background:linear-gradient(135deg,rgba(var(--warm),1),rgba(var(--warm),.78));box-shadow:0 8px 22px -8px rgba(0,0,0,.5)}
.about-name{display:block;font:800 1.05rem/1.1 var(--font-display);color:var(--ink)}
.about-role{display:block;font:700 .72rem/1.2 var(--font-body);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin-top:.35rem}
.about-text{font-size:.95rem;line-height:1.6;color:var(--ink-2);margin:0}
.popular-post{display:flex;align-items:center;gap:.9rem;text-decoration:none;color:inherit;padding:.5rem 0;border-top:1px solid rgba(255,255,255,.07)}
.popular-post:first-of-type{border-top:0;padding-top:0}
.popular-thumb{flex:0 0 auto;width:62px;height:62px;border-radius:12px;object-fit:cover;border:1px solid rgba(255,255,255,.1)}
.popular-post h5{font:800 .92rem/1.25 var(--font-display);color:var(--ink);margin:0 0 .3rem;transition:color .3s}
.popular-post:hover h5{color:rgba(var(--warm),.96)}
.popular-min{font:700 .68rem/1 var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.category-list{list-style:none;margin:0;padding:0}
.category-list li{border-top:1px solid rgba(255,255,255,.07)}
.category-list li:first-child{border-top:0}
.category-list a{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;text-decoration:none;color:var(--ink-2);font-weight:600;transition:color .3s}
.category-list a:hover{color:rgba(var(--warm),.96)}
.category-count{font:700 .72rem/1 var(--font-body);color:var(--ink-3);background:rgba(255,255,255,.05);border-radius:100px;padding:.28rem .6rem;min-width:28px;text-align:center}
.sidebar-newsletter p{font-size:.95rem;line-height:1.55;color:var(--ink-2);margin:0 0 1.1rem}
.sidebar-newsletter .btn-cta{width:100%;justify-content:center}

/* ============ SINGLE — artykul ============ */
.breadcrumb{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font:700 .76rem/1.4 var(--font-body);letter-spacing:.03em;color:var(--ink-3);padding:clamp(6.5rem,12vh,8rem) 0 0;text-transform:uppercase}
.breadcrumb a{color:var(--ink-3);text-decoration:none;transition:color .3s}
.breadcrumb a:hover{color:rgba(var(--warm),.96)}
.breadcrumb svg{width:13px;height:13px;opacity:.6}
.breadcrumb .bc-current{color:var(--ink-2)}
.article-header{max-width:960px;margin:1.5rem auto 0;text-align:center}
.article-category{margin-bottom:1.2rem}
.article-header h1{font:800 clamp(1.95rem,4vw,3.1rem)/1.06 var(--font-display);letter-spacing:-.025em;color:var(--ink);margin:0;text-wrap:balance}
.article-meta{display:flex;justify-content:center;align-items:center;gap:1.4rem;flex-wrap:wrap;margin:1.6rem 0 0;padding:1.5rem 0 0;border-top:1px solid rgba(255,255,255,.1);font:700 .8rem/1 var(--font-body);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.article-meta .am-item{display:inline-flex;align-items:center;gap:.5rem}
.article-meta svg{width:15px;height:15px;color:rgba(var(--warm),.85)}
.article-hero{max-width:960px;margin:clamp(2rem,4vh,3rem) auto 0;border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:0 34px 70px -26px rgba(0,0,0,.62);max-height:560px}
.article-hero img{display:block;width:100%;height:100%;object-fit:cover}
.article-body{max-width:680px;margin:clamp(2.4rem,5vh,3.4rem) auto 0;font-family:var(--font-body)}
.article-body > *{margin:0 0 1.4rem}
.article-body p{font-size:1.08rem;line-height:1.85;color:var(--ink-2)}
.article-body p:first-of-type{font-size:1.18rem;color:var(--ink)}
.article-body h2{font:800 clamp(1.5rem,2.6vw,2rem)/1.15 var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:2.8rem 0 1rem}
.article-body h3{font:800 clamp(1.22rem,2vw,1.5rem)/1.2 var(--font-display);color:var(--ink);margin:2.2rem 0 .8rem}
.article-body ul,.article-body ol{padding-left:1.3rem;color:var(--ink-2);font-size:1.06rem;line-height:1.75}
.article-body li{margin:0 0 .6rem}
.article-body li::marker{color:rgba(var(--warm),.9)}
.article-body strong{color:var(--ink);font-weight:700}
.article-body a{color:rgba(var(--warm),.98);text-decoration:underline;text-decoration-color:rgba(var(--warm),.45);text-underline-offset:3px;transition:text-decoration-color .3s}
.article-body a:hover{text-decoration-color:rgba(var(--warm),.95)}
.article-body img{width:100%;border-radius:var(--radius);border:1px solid rgba(255,255,255,.1)}
.article-body blockquote{position:relative;margin:2rem 0;padding:1.8rem 1.8rem 1.6rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);font:600 1.2rem/1.55 var(--font-display);color:var(--ink)}
.article-body blockquote::before{content:"\201C";position:absolute;top:-.2em;left:.4rem;font:800 4rem/1 var(--font-display);color:rgba(var(--warm),.4)}
.article-body blockquote p{font-size:inherit;color:inherit;margin:0;padding-left:1.6rem}
.tip-box{background:rgba(var(--warm),.08);border:1px solid rgba(var(--warm),.28);border-radius:var(--radius-lg);padding:1.4rem 1.5rem;margin:2rem 0}
.tip-box h4{display:flex;align-items:center;gap:.6rem;font:800 .82rem/1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:rgba(var(--warm),.96);margin:0 0 .7rem}
.tip-box h4 svg{width:18px;height:18px}
.tip-box p{margin:0;font-size:1rem;line-height:1.7;color:var(--ink-2)}

/* share */
.share-bar{max-width:680px;margin:clamp(2.4rem,5vh,3.2rem) auto 0;padding:1.6rem 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.share-bar span{font:800 .82rem/1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}
.share-buttons{display:flex;gap:.6rem}
.share-btn{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.12);background:transparent;color:var(--ink-2);cursor:pointer;text-decoration:none;transition:border-color .3s,color .3s,background .3s}
.share-btn:hover{border-color:rgba(var(--warm),.6);color:rgba(var(--warm),.96);background:rgba(var(--warm),.08)}
.share-btn svg{width:18px;height:18px}

/* author box */
.author-box{max-width:680px;margin:clamp(2.4rem,5vh,3.2rem) auto 0;display:flex;gap:1.4rem;align-items:center;padding:1.7rem;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);border-radius:var(--radius-lg)}
.author-box-avatar{flex:0 0 auto;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;font:800 1.8rem/1 var(--font-display);color:#1a0f06;background:linear-gradient(135deg,rgba(var(--warm),1),rgba(var(--warm),.76));box-shadow:0 10px 26px -8px rgba(0,0,0,.5)}
.author-box h3{font:800 1.2rem/1.1 var(--font-display);color:var(--ink);margin:0 0 .4rem}
.author-box p{font-size:.98rem;line-height:1.6;color:var(--ink-2);margin:0}

/* related */
.related-section{max-width:1200px;margin:clamp(3.5rem,7vh,5.5rem) auto 0;padding:0 0 1rem}
.related-section h2{position:relative;font:800 clamp(1.4rem,2.6vw,1.9rem)/1.1 var(--font-display);letter-spacing:-.01em;color:var(--ink);margin:0 0 2rem;padding-bottom:.8rem}
.related-section h2::after{content:"";position:absolute;left:0;bottom:0;width:52px;height:3px;border-radius:3px;background:rgba(var(--warm),.95)}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.4rem,2.6vw,2rem)}
.related-card{border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.02);text-decoration:none;color:inherit;box-shadow:0 22px 50px -28px rgba(0,0,0,.55);transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s,border-color .4s}
.related-card:hover{transform:translateY(-4px);box-shadow:0 32px 60px -26px rgba(0,0,0,.66);border-color:rgba(var(--warm),.42)}
.related-card-image{position:relative;aspect-ratio:16/10;overflow:hidden}
.related-card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.related-card:hover .related-card-image img{transform:scale(1.05)}
.related-card-content{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;gap:.6rem}
.related-card-content h3{font:800 1.1rem/1.2 var(--font-display);color:var(--ink);margin:.15rem 0 0}
.meta-sm{font:700 .72rem/1 var(--font-body);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}

.nav-links a[aria-current="page"]{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(var(--warm),.7);text-decoration-thickness:2px;text-underline-offset:6px}

.blog-empty{border:1px dashed rgba(255,255,255,.16);border-radius:var(--radius-lg);padding:2rem 1.8rem;color:var(--ink-2);font-size:1.02rem;line-height:1.6;background:rgba(255,255,255,.02)}

/* compact hero (kategoria/archiwum) + cat-pill jako link */
a.cat-pill{text-decoration:none;width:fit-content}
.blog-hero-compact{padding:clamp(7rem,13vh,9rem) 0 0}
.blog-hero-compact .breadcrumb{padding:0}
.blog-hero-compact .cat-pill{margin-top:1rem}
.archive-title{font:800 clamp(1.9rem,4vw,2.9rem)/1.05 var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:1rem 0 0;text-wrap:balance}
.archive-desc{color:var(--ink-2);font-size:1.06rem;line-height:1.6;max-width:62ch;margin:1rem 0 0}
.archive-desc p{margin:0}

/* ============ RESPONSIVE ============ */
@media (max-width:1024px){
  .blog-layout{grid-template-columns:1fr}
  .sidebar{position:static;flex-direction:row;flex-wrap:wrap}
  .sidebar-widget{flex:1 1 260px}
}
@media (max-width:768px){
  .blog-hero{padding-top:6.5rem}
  .hero-card{grid-template-columns:1fr}
  .hero-card-image{order:-1;min-height:220px;aspect-ratio:16/9}
  .related-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
  .article-card{grid-template-columns:1fr}
  .article-card-image{order:-1;min-height:0;aspect-ratio:16/9}
  .sidebar{flex-direction:column}
  .sidebar-widget{flex:1 1 auto}
  .article-meta{gap:.9rem 1.1rem}
}
@media (max-width:540px){
  .author-box{flex-direction:column;text-align:center}
  .related-grid{grid-template-columns:1fr}
  .share-bar{justify-content:center}
}
@media (prefers-reduced-motion:reduce){
  .hero-card,.article-card,.related-card,.hero-card-image img,.article-card-image img,.related-card-image img{transition:none}
}
