/* ===== Blog — reuses design tokens (:root) + chrome from landing.css =====
   landing.css is loaded first; this only adds blog-listing + article styles. */

/* ---------- Blog listing head ---------- */
.blog-head{background:radial-gradient(120% 130% at 80% 0%,#15294a 0%,var(--navy) 52%,var(--ink-deep) 100%);border-bottom:1px solid var(--gold-line)}
.blog-head .wrap{padding:84px 36px 70px}
.blog-head h1{font-size:clamp(40px,5.4vw,72px);color:#fff;margin-top:18px;letter-spacing:-.5px}
.blog-head .lede{margin-top:18px;font-size:18.5px;color:var(--muted);max-width:40em;line-height:1.65}

.blog-listing{background:var(--navy)}

/* ---------- Post grid / cards ---------- */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.post-card{display:flex;flex-direction:column;background:var(--navy-2);border:1px solid var(--line);border-radius:7px;overflow:hidden;transition:.3s}
.post-card:hover{border-color:var(--gold-line);transform:translateY(-4px)}
.pc-media{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--navy-3)}
.pc-media img{width:100%;height:100%;object-fit:cover;transition:.6s}
.post-card:hover .pc-media img{transform:scale(1.05)}
.pc-noimg{position:absolute;inset:0;display:grid;place-items:center;font-family:"Cormorant Garamond";font-size:34px;color:var(--gold-line)}
.pc-body{display:flex;flex-direction:column;flex:1;padding:22px 24px 24px}
.pc-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-family:"Manrope";font-size:12px;color:var(--muted-2)}
.pc-cat{font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:11px;color:var(--gold);padding:4px 10px;border:1px solid var(--gold-line);border-radius:40px}
.pc-body h2{font-size:24px;line-height:1.18;color:#fff;margin-top:14px}
.pc-body h2 a{transition:.2s}
.pc-body h2 a:hover{color:var(--gold-bright)}
.pc-body p{margin-top:12px;font-family:"Manrope";font-size:14.5px;color:var(--muted);line-height:1.6}
.pc-more{margin-top:auto;padding-top:18px;font-family:"Manrope";font-weight:700;font-size:13.5px;color:var(--gold-bright);letter-spacing:.02em}
.pc-more:hover{color:var(--gold-soft)}
.blog-empty{font-family:"Manrope";color:var(--muted);font-size:17px}
/* home page "latest posts" section */
.home-blog{background:var(--ink-deep);border-top:1px solid var(--line)}
.home-blog-cta{margin-top:46px;display:flex;justify-content:center}
.blog-pagination{margin-top:54px;display:flex;justify-content:center;font-family:"Manrope"}
.blog-pagination a,.blog-pagination .current{display:inline-grid;place-items:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:4px;margin:0 4px;color:var(--txt)}
.blog-pagination .current{background:var(--gold);color:#1a1206;border-color:var(--gold);font-weight:700}
.blog-pagination a:hover{border-color:var(--gold);color:var(--gold-bright)}
@media(max-width:980px){.post-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.post-grid{grid-template-columns:1fr}.blog-head .wrap{padding:60px 20px 50px}}

/* ---------- Single post ---------- */
.post-hero{background:radial-gradient(120% 130% at 80% 0%,#15294a 0%,var(--navy) 55%,var(--ink-deep) 100%)}
.post-hero .wrap{padding:74px 36px 38px;max-width:920px}
.post-crumb{font-family:"Manrope";font-size:12.5px;font-weight:600;letter-spacing:.04em;color:var(--muted-2);display:flex;gap:10px;align-items:center}
.post-crumb a{color:var(--gold)}
.post-crumb a:hover{color:var(--gold-bright)}
.post-crumb span{opacity:.5}
.post-hero h1{font-size:clamp(34px,4.8vw,58px);color:#fff;margin-top:18px;line-height:1.08;letter-spacing:-.5px}
.post-info{margin-top:22px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-family:"Manrope";font-size:13.5px;color:var(--muted)}
.post-info .dot-sep{color:var(--gold);opacity:.6}
.post-cover{margin:0 auto;padding-top:34px}
.post-cover img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;border-radius:8px;border:1px solid var(--line)}

.post-shell{max-width:920px;margin:0 auto;padding-top:48px;padding-bottom:90px}

/* ---------- Article body typography ---------- */
.post-body{font-family:"Manrope";font-size:17.5px;line-height:1.78;color:var(--txt)}
.post-body > *:first-child{margin-top:0}
.post-body p{margin:0 0 22px}
.post-body h2{font-family:"Cormorant Garamond";font-weight:600;font-size:clamp(28px,3.4vw,40px);color:#fff;line-height:1.12;margin:54px 0 18px;letter-spacing:-.3px;scroll-margin-top:100px}
.post-body h3{font-family:"Cormorant Garamond";font-weight:600;font-size:clamp(23px,2.6vw,29px);color:#fff;margin:38px 0 14px;scroll-margin-top:100px}
.post-body h4{font-family:"Manrope";font-weight:700;font-size:18px;color:var(--gold-soft);margin:30px 0 12px}
.post-body a{color:var(--gold-bright);text-decoration:underline;text-decoration-color:var(--gold-line);text-underline-offset:3px;transition:.2s}
.post-body a:hover{text-decoration-color:var(--gold-bright)}
.post-body strong{color:#fff;font-weight:700}
.post-body em{font-style:italic}
.post-body ul,.post-body ol{margin:0 0 24px;padding-left:0;list-style:none}
.post-body li{position:relative;padding-left:30px;margin-bottom:11px;line-height:1.7}
.post-body ul li::before{content:"";position:absolute;left:6px;top:13px;width:7px;height:7px;border-radius:50%;background:var(--gold)}
.post-body ol{counter-reset:li}
.post-body ol li{counter-increment:li}
.post-body ol li::before{content:counter(li);position:absolute;left:0;top:1px;font-family:"Cormorant Garamond";font-weight:700;font-size:17px;color:var(--gold-bright)}
.post-body blockquote{margin:30px 0;padding:6px 0 6px 28px;border-left:3px solid var(--gold);font-family:"Cormorant Garamond";font-style:italic;font-size:24px;line-height:1.45;color:#eef3f9}
.post-body blockquote p{margin:0}
.post-body img{margin:30px 0;border-radius:8px;border:1px solid var(--line);width:100%;height:auto}
.post-body figure{margin:30px 0}
.post-body figcaption{margin-top:10px;font-size:13px;color:var(--muted-2);text-align:center}
.post-body hr{border:0;border-top:1px solid var(--line);margin:44px 0}
.post-body code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;background:var(--ink-deep);padding:2px 7px;border-radius:4px;color:var(--gold-soft)}
.post-body table{width:100%;border-collapse:collapse;margin:30px 0;font-size:15px}
.post-body th,.post-body td{padding:13px 16px;border:1px solid var(--line);text-align:left}
.post-body th{background:var(--ink-deep);color:var(--gold-soft);font-weight:700;font-family:"Manrope"}
.post-body tr:nth-child(even) td{background:rgba(255,255,255,.02)}

/* In-article table of contents (first list after a "Spis treści" heading) */
.post-body .post-toc{background:var(--navy-2);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:6px;padding:22px 26px;margin:0 0 36px}
.post-body .post-toc-title{font-family:"Manrope";font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.post-body .post-toc ol,.post-body .post-toc ul{margin:0;font-size:15.5px}
.post-body .post-toc li{padding-left:24px;margin-bottom:8px}
.post-body .post-toc li::before{top:11px}
.post-body .post-toc a{color:var(--txt);text-decoration:none}
.post-body .post-toc a:hover{color:var(--gold-bright)}

/* post footer */
.post-foot{margin-top:54px;padding-top:30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.post-tags{display:flex;gap:10px;flex-wrap:wrap}
.post-tag{font-family:"Manrope";font-weight:600;font-size:12px;color:var(--muted);padding:6px 14px;border:1px solid var(--line);border-radius:40px}
@media(max-width:640px){.post-hero .wrap{padding:54px 20px 30px}.post-shell{padding-bottom:64px}.post-body{font-size:16.5px}}
