/*
Theme Name: Kancelaria przy Rynku
Author: Kontur Studio
Description: Motyw blogowy w estetyce solidnego, urzędowego serwisu B2B: granatowy masthead z pieczęcią, papier offwhite, brązowy akcent, pikselowe nagłówki (Geist Pixel), tablica ogłoszeń i karuzela wyróżnionych opracowań. Nisza: logistyka / transport / magazyn / biuro / usługi B2B.
Version: 1.9
Text Domain: kancelaria-przy-rynku
*/

:root{
  --paper:#f3ede0; --paper-dark:#e8dfc9; --ink:#24211b; --ink-soft:#55503f;
  --grey:#615c48; --grey-line:#b9ac8e; --rule:#1c2b45; --maroon:#7a4b30;
  --maroon-dark:#5c3823; --white:#fbf8ef; --dark:#1c2b45;
  --dark-900:#10192b; --brown-light:#a97452; --line-dark:#8a7f63;
  --font-heading:'Tinos','Times New Roman',Georgia,serif;
  --font-body:'PT Sans','Segoe UI',Arial,sans-serif;
  --font-label:'PT Sans',Arial,sans-serif;
  --font-hand:'Tinos','Times New Roman',serif;
}

*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }
body{ background:var(--paper); color:var(--ink); font-family:var(--font-body); font-size:16px; line-height:1.65; overflow-x:hidden; }
img{ max-width:100%; display:block; }
h1,h2,h3,h4{ font-family:var(--font-heading); color:var(--rule); margin:0; font-weight:700; line-height:1.25; }
a{ color:var(--maroon); text-decoration:underline; }
a:hover{ color:var(--rule); }

.wrap{ max-width:1140px; margin:0 auto; padding:0 22px; }
.screen-reader-text{ position:absolute; left:-9999px; }
.screen-reader-text:focus{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }

/* ============ TOPBAR ============ */
.topbar{ background:var(--dark-900); color:#cfc9b8; font-size:12.5px; letter-spacing:.04em; padding:6px 0; }
.topbar .wrap{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:4px; }

/* ============ HEADER GŁÓWNY ============ */
header.glowny{ background:var(--paper); border-bottom:3px double var(--maroon); padding:26px 0 18px; }
.naglowek-flex{ display:flex; justify-content:space-between; align-items:flex-end; gap:20px; flex-wrap:wrap; }
.pieczec{ display:flex; align-items:center; gap:16px; }
.pieczec-znak{ width:58px; height:58px; border:2px solid var(--rule); border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:var(--font-heading); font-weight:700; font-size:22px; color:var(--rule); flex-shrink:0; text-decoration:none; }
.tytul-serwisu .nazwa{ font-family:var(--font-heading); font-weight:700; font-size:30px; letter-spacing:.01em; color:var(--rule); text-decoration:none; display:inline-block; }
.tytul-serwisu .nazwa:hover{ color:var(--maroon); }
.tytul-serwisu .podtytul{ font-family:var(--font-label); font-size:13px; color:var(--ink-soft); letter-spacing:.08em; text-transform:uppercase; margin-top:4px; }
.naglowek-dane{ text-align:right; font-size:13px; color:var(--ink-soft); line-height:1.5; }

/* ============ MENU ============ */
nav.menu-glowne{ background:var(--dark); border-top:1px solid var(--maroon); border-bottom:1px solid var(--maroon); }
nav.menu-glowne .wrap{ display:flex; align-items:stretch; justify-content:space-between; min-height:48px; }
.navlist{ display:flex; list-style:none; margin:0; padding:0; flex-wrap:wrap; align-items:stretch; }
.navlist > li{ display:flex; }
.navlist li a,.navlist .more-toggle{ display:inline-flex; align-items:center; justify-content:center; white-space:nowrap; height:48px; box-sizing:border-box; color:#e8e2d2; text-decoration:none; font-family:var(--font-heading); font-size:14px; line-height:1; letter-spacing:.02em; padding:0 18px; border:none; border-right:1px solid rgba(255,255,255,.12); background:none; cursor:pointer; }
.navlist li a:hover,.navlist .more-toggle:hover{ background:var(--maroon); color:#fff; }
.navlist .current-menu-item > a,.navlist .current_page_item > a{ background:var(--maroon); color:#fff; }
.has-more{ position:relative; }
.submenu{ display:none; position:absolute; left:0; top:100%; list-style:none; margin:0; padding:0; background:var(--dark); min-width:220px; z-index:40; border:1px solid var(--maroon); }
.has-more.open .submenu,.has-more:hover .submenu{ display:block; }
.submenu li{ list-style:none; }
.submenu li a{ border-right:none; border-bottom:1px solid rgba(255,255,255,.1); width:100%; justify-content:flex-start; }
.more-toggle .chev{ font-size:.8em; line-height:1; display:inline-block; margin-left:5px; transform:translateY(1px); }
.hamburger{ display:none; background:none; border:1px solid #cfc9b8; color:#e8e2d2; font-family:var(--font-label); font-size:14px; padding:8px 14px; cursor:pointer; }

/* ============ KARUZELA ============ */
.karuzela-sekcja{ margin:34px 0 10px; }
.karuzela-naglowek{ display:flex; justify-content:space-between; align-items:baseline; border-bottom:1px solid var(--line-dark); padding-bottom:10px; margin-bottom:18px; gap:16px; flex-wrap:wrap; }
.karuzela-naglowek h2{ font-size:22px; }
.karuzela-naglowek span{ font-size:12.5px; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.05em; }
.karuzela{ position:relative; }
.karuzela-tor{ display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x proximity; padding:2px; margin:0 -2px; scrollbar-width:thin; scrollbar-color:var(--maroon) var(--paper-dark); touch-action:pan-x; -webkit-overflow-scrolling:touch; overscroll-behavior-x:contain; } /* K9: mandatory+smooth dawalo 7.5s Style&Layout w LH — proximity, bez smooth */
.karuzela-tor::-webkit-scrollbar{ height:7px; }
.karuzela-tor::-webkit-scrollbar-track{ background:var(--paper-dark); }
.karuzela-tor::-webkit-scrollbar-thumb{ background:var(--maroon); }
.karuzela-slajd{ scroll-snap-align:start; flex:0 0 auto; width:300px; border:1px solid var(--grey-line); background:var(--white); display:flex; flex-direction:column; transition:box-shadow .3s, border-color .3s; }
.karuzela-slajd.is-active{ border-color:var(--maroon); box-shadow:inset 0 0 0 2px var(--maroon); }
.karuzela-foto{ height:170px; overflow:hidden; border-bottom:1px solid var(--grey-line); display:block; }
.karuzela-foto img{ width:100%; height:100%; object-fit:cover; }
.karuzela-tekst{ padding:16px 18px 18px; display:flex; flex-direction:column; flex:1; }
.karuzela-tekst .kategoria-etykieta{ align-self:flex-start; margin-bottom:10px; }
.karuzela-tekst h3{ font-family:var(--font-body); font-weight:700; font-size:16px; line-height:1.3; margin-bottom:8px; min-height:2.6em; }
.karuzela-tekst h3 a{ color:var(--rule); text-decoration:none; }
.karuzela-tekst h3 a:hover{ color:var(--maroon); }
.karuzela-tekst p{ font-size:13.5px; color:var(--ink-soft); margin:0; flex:1; }
.karuzela-tekst .czytaj-dalej{ align-self:flex-start; margin-top:14px; }
.karuzela-nawigacja{ display:flex; justify-content:flex-end; gap:8px; margin-top:14px; }
.karuzela-btn{ width:38px; height:38px; border:1px solid var(--maroon); background:var(--paper); color:var(--maroon); font-family:var(--font-heading); font-size:17px; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.karuzela-btn:hover{ background:var(--maroon); color:#fff; }

/* ============ TABLICA — nagłówek ============ */
.tablica-naglowek{ text-align:center; margin:40px 0 28px; }
.tablica-naglowek h2{ font-size:26px; display:inline-block; padding:0 20px; }
.tablica-naglowek .linia-podtyt{ width:90px; height:1px; background:var(--line-dark); margin:10px auto 0; }
.tablica-naglowek p{ color:var(--ink-soft); font-size:14px; margin-top:10px; max-width:720px; margin-left:auto; margin-right:auto; }

/* ============ REJESTR / WPIS ============ */
.rejestr{ counter-reset:rejestr; margin-bottom:50px; display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:start; }
.wpis{ counter-increment:rejestr; border:1px solid var(--grey-line); background:var(--white); padding:0 0 24px; position:relative; display:flex; flex-direction:column; height:100%; }
.wpis-foto{ height:190px; overflow:hidden; border-bottom:1px solid var(--grey-line); margin-bottom:18px; display:block; }
.wpis-foto img{ width:100%; height:100%; object-fit:cover; }
.wpis-tresc{ padding:0 28px; display:flex; flex-direction:column; flex:1; }
.wpis::before{ content:none; }
.wpis-foto{ margin-top:0; }
.wpis-metryczka{ display:flex; flex-wrap:wrap; gap:14px; font-size:12.5px; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.05em; margin-bottom:12px; border-bottom:1px solid var(--grey-line); padding-bottom:10px; align-items:center; }
.kategoria-etykieta{ display:inline-block; background:var(--dark); color:#f0ead8; font-family:var(--font-label); font-size:11.5px; letter-spacing:.06em; text-transform:uppercase; padding:3px 10px; text-decoration:none; }
.kategoria-etykieta:hover{ background:var(--maroon); color:#fff; }
.wpis h3{ font-size:22px; line-height:1.3; margin-bottom:10px; }
.wpis h3 a{ color:var(--rule); text-decoration:none; }
.wpis h3 a:hover{ color:var(--maroon); }
.wpis-lead{ color:var(--ink); font-size:15.5px; margin-bottom:14px; }
.wpis-dol{ display:flex; justify-content:space-between; align-items:flex-end; flex-wrap:wrap; gap:10px; margin-top:auto; }
.wpis .autor-box{ border:1px solid var(--grey-line); padding:8px 14px; font-size:13px; line-height:1.4; color:var(--ink-soft); background:var(--paper-dark); }
.wpis .autor-box strong{ color:var(--rule); font-family:var(--font-heading); font-size:14px; }
.wpis .autor-box a{ color:var(--ink-soft); }
.wpis .autor-box a:hover{ color:var(--maroon); }
.czytaj-dalej{ font-family:var(--font-label); font-size:13.5px; font-weight:700; text-decoration:none; color:#fff; background:var(--dark); border:1px solid var(--dark); padding:8px 16px; white-space:nowrap; display:inline-block; }
.czytaj-dalej:hover{ background:var(--dark-900); border-color:var(--dark-900); color:#fff; }
.wpis.wyrozniony{ border-width:2px; border-color:var(--maroon); }

/* ============ INFO-PASEK / spis ============ */
.info-pasek{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:20px; margin-bottom:50px; }
.info-kolumna{ border:1px solid var(--grey-line); background:var(--white); padding:18px 20px; }
.info-kolumna h4{ font-size:16px; border-bottom:1px solid var(--grey-line); padding-bottom:10px; margin-bottom:12px; }
.info-kolumna h4 a{ color:var(--rule); text-decoration:none; }
.info-kolumna h4 a:hover{ color:var(--maroon); }
/* kolumna „Archiwum" z przyciskiem do /wszystkie/ */
.info-wszystkie{ display:flex; flex-direction:column; align-items:flex-start; }
.info-wszystkie p{ font-size:13.5px; color:var(--grey); margin:0 0 12px; }
.info-wszystkie .czytaj-dalej{ margin-top:auto; }
.info-kolumna ul{ list-style:none; margin:0; padding:0; font-size:14px; }
.info-kolumna li{ padding:7px 0; border-bottom:1px dotted var(--grey-line); }
.info-kolumna li:last-child{ border-bottom:none; }
.info-kolumna li a{ text-decoration:none; color:var(--ink); }
.info-kolumna li a:hover{ color:var(--maroon); }

/* ============ ARCHIWUM / KATEGORIA / AUTOR ============ */
.breadcrumb{ padding:16px 0 2px; font-size:13px; color:var(--ink-soft); display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
.breadcrumb a{ color:var(--maroon); }
.breadcrumb .sep{ color:var(--line-dark); text-decoration:none; }
.breadcrumb .current-crumb{ color:var(--ink-soft); }
.cat-header{ padding:24px 0 6px; }
.cat-header .kicker{ font-family:var(--font-label); font-size:12.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--maroon); }
.cat-header h1{ font-size:34px; margin:4px 0; }
.cat-desc{ color:var(--ink-soft); max-width:720px; margin-top:6px; }
.cat-count{ font-size:13px; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.04em; margin-top:8px; }
.cat-count strong{ color:var(--rule); }
.archivegrid{ display:grid; grid-template-columns:1fr 300px; gap:40px; padding:22px 0 10px; align-items:start; }
.postlist article.list-item{ display:grid; grid-template-columns:220px 1fr; gap:20px; align-items:center; padding:0 0 20px; margin-bottom:20px; border-bottom:1px solid var(--grey-line); }
.list-item figure{ margin:0; overflow:hidden; border:1px solid var(--grey-line); background:var(--paper-dark); }
.list-item figure img{ width:100%; height:150px; object-fit:cover; }
.list-item .cat a{ font-family:var(--font-label); font-size:11.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--maroon); text-decoration:none; }
.list-item h2{ font-size:22px; margin:6px 0 8px; }
.list-item h2 a{ color:var(--rule); text-decoration:none; }
.list-item h2 a:hover{ color:var(--maroon); }
.list-item p{ color:var(--ink-soft); font-size:15px; margin-bottom:8px; }
.byline-sm{ font-size:12.5px; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.04em; }
.byline-sm a{ color:var(--maroon); }

/* ===== POWIĄZANE WPISY (Może Cię zainteresować) — kafelki w stylu motywu ===== */
.divider-heading{ margin:46px 0 22px; }
.divider-heading h2{ font-size:1.5rem; color:var(--ink); margin-bottom:10px; }
.divider-heading .line.thick{ height:3px; background:var(--dark); width:100%; }
.storyrow{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.story-card{ background:var(--white); border:1px solid var(--grey-line); display:flex; flex-direction:column; }
.story-card figure{ margin:0; height:150px; overflow:hidden; border-bottom:1px solid var(--grey-line); }
.story-card figure img{ width:100%; height:100%; object-fit:cover; display:block; }
.story-card .cat{ align-self:flex-start; margin:13px 15px 0; font-family:var(--font-label); font-size:.7rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--maroon); }
.story-card h3{ font-family:var(--font-body); font-weight:700; font-size:1.02rem; line-height:1.3; margin:8px 15px 0; }
.story-card h3 a{ color:var(--rule); text-decoration:none; }
.story-card h3 a:hover{ color:var(--maroon); }
.story-card p{ font-size:.9rem; color:var(--ink-soft); line-height:1.5; margin:8px 15px 0; flex:1; }
.story-card .byline-sm{ margin:12px 15px 15px; }
@media (max-width:800px){ .storyrow{ grid-template-columns:1fr; } }
@media (max-width:520px){ .postlist article.list-item{ grid-template-columns:1fr; } .list-item figure img{ height:200px; } }

/* ============ WPIS (single) ============ */
.article-layout{ display:grid; grid-template-columns:1fr 300px; gap:44px; padding:8px 0 20px; align-items:start; }
@media (max-width:960px){ .article-layout{ grid-template-columns:1fr; } }
article.full-story .kicker{ font-family:var(--font-label); font-size:12.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
article.full-story .kicker a{ color:var(--maroon); }
article.full-story h1{ font-size:34px; line-height:1.2; margin:6px 0 12px; }
article.full-story .dek{ font-size:19px; color:var(--ink-soft); margin-bottom:16px; font-family:var(--font-heading); font-style:italic; }
article.full-story .byline{ display:flex; gap:16px; flex-wrap:wrap; font-size:12.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-soft); padding-bottom:14px; border-bottom:2px solid var(--rule); }
article.full-story .byline a{ color:var(--maroon); }
article.full-story > figure{ margin:20px 0; border:1px solid var(--grey-line); overflow:hidden; }
article.full-story > figure > img{ width:100%; max-height:440px; object-fit:cover; }
.body-text{ font-size:16.5px; line-height:1.75; }
.body-text p{ margin:0 0 16px; }
.body-text h2{ font-size:26px; margin:32px 0 12px; }
.body-text h3{ font-size:21px; margin:24px 0 10px; }
.body-text ul,.body-text ol{ margin:0 0 16px; padding-left:22px; }
.body-text li{ margin-bottom:6px; }
.body-text a{ color:var(--maroon); text-decoration:underline; }
.body-text a:hover{ color:var(--maroon-dark); }
.body-text blockquote{ margin:20px 0; padding:6px 0 6px 20px; border-left:3px solid var(--maroon); font-family:var(--font-heading); font-style:italic; font-size:19px; color:var(--ink-soft); }
.tag-row{ margin:22px 0 0; display:flex; flex-wrap:wrap; gap:8px; }
.tag-row a{ font-family:var(--font-label); font-size:12px; letter-spacing:.04em; text-transform:uppercase; color:var(--ink-soft); background:var(--paper-dark); border:1px solid var(--grey-line); padding:4px 12px; text-decoration:none; }
.tag-row a:hover{ color:#fff; background:var(--maroon); border-color:var(--maroon); }
.author-box{ margin-top:26px; padding:18px 20px; background:var(--paper-dark); border:1px solid var(--grey-line); display:flex; gap:18px; align-items:flex-start; }
.author-ava{ flex:0 0 72px; width:72px; height:72px; display:block; }
.author-meta{ flex:1; min-width:0; }
.author-box h3{ font-size:19px; }
.author-box p{ color:var(--ink-soft); font-size:14.5px; margin-top:6px; line-height:1.55; }
.author-box a{ color:var(--maroon); }

/* ============ SIDEBAR ============ */
.rightcol{ display:flex; flex-direction:column; gap:22px; }
.side-section{ border:1px solid var(--grey-line); background:var(--white); padding:18px 20px; }
.side-heading{ font-size:16px; border-bottom:1px solid var(--grey-line); padding-bottom:10px; margin-bottom:10px; }
.side-item{ display:flex; gap:12px; align-items:flex-start; padding:9px 0; border-bottom:1px dotted var(--grey-line); }
.side-section .side-item:last-child{ border-bottom:none; }
.side-thumb{ flex:0 0 58px; width:58px; height:58px; overflow:hidden; border:1px solid var(--grey-line); display:block; }
.side-thumb img{ width:100%; height:100%; object-fit:cover; }
.side-text h3{ font-family:var(--font-body); font-size:14.5px; font-weight:700; line-height:1.3; margin:0; }
.side-text h3 a{ color:var(--ink); text-decoration:none; }
.side-item:hover .side-text h3 a{ color:var(--maroon); }
.side-cat{ display:block; font-family:var(--font-label); font-size:11.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--maroon); margin-bottom:2px; }
.side-item.numbered{ align-items:center; }
.side-num{ font-family:var(--font-heading); font-weight:700; font-size:20px; color:var(--grey-line); flex:0 0 auto; min-width:24px; text-align:center; }
.side-heading .accent-dot{ display:none; }

/* ============ PAGINACJA ============ */
.pagination{ display:flex; gap:8px; flex-wrap:wrap; margin:26px 0 10px; }
.pagination .page-numbers{ padding:8px 15px; border:1px solid var(--grey-line); color:var(--ink-soft); text-decoration:none; }
.pagination .page-numbers.current{ background:var(--dark); color:#f0ead8; border-color:var(--dark); }
.pagination a.page-numbers:hover{ border-color:var(--maroon); color:var(--maroon); }

/* ============ KATEGORIA — filtr „Działy" ============ */
.filter-block{ border:1px solid var(--grey-line); background:var(--white); padding:18px 20px; }
.filter-heading{ font-family:var(--font-heading); font-weight:700; font-size:16px; border-bottom:1px solid var(--grey-line); padding-bottom:10px; margin-bottom:12px; }
.filter-block ul{ list-style:none; margin:0; padding:0; }
.filter-block li{ display:flex; justify-content:space-between; align-items:center; gap:8px; padding:7px 0; border-bottom:1px dotted var(--grey-line); }
.filter-block li:last-child{ border-bottom:none; }
.filter-block li a{ color:var(--ink); text-decoration:none; font-size:14px; }
.filter-block li a:hover{ color:var(--maroon); }
.filter-block li span{ font-size:11.5px; color:var(--ink-soft); }
.filter-block li.active a{ color:var(--maroon); font-weight:700; }

/* ============ STOPKA ============ */
.site-footer{ background:var(--dark-900); color:#cfc9b8; padding:44px 0 20px; margin-top:20px; border-top:4px solid var(--maroon); }
.footer-grid{ display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:36px; margin-bottom:34px; }
.site-footer h4{ color:#f0ead8; font-family:var(--font-heading); font-size:17px; border-bottom:1px solid rgba(207,201,184,.3); padding-bottom:8px; margin-bottom:12px; }
.footer-brand h4{ font-size:20px; }
.site-footer p{ font-size:13.5px; line-height:1.7; color:#b8b19c; margin:0 0 10px; }
.site-footer ul{ list-style:none; margin:0; padding:0; font-size:13.5px; }
.site-footer li{ margin-bottom:8px; }
.site-footer .footer-col a,.site-footer .footer-brand a{ color:#cfc9b8; text-decoration:none; }
.site-footer a:hover{ color:#fff; text-decoration:underline; }
.footer-dolny{ border-top:1px solid rgba(207,201,184,.2); padding-top:16px; text-align:center; font-size:12px; color:#8f8871; letter-spacing:.03em; }

/* ============ DO GÓRY ============ */
.to-top{ position:fixed; right:22px; bottom:22px; z-index:50; display:none; font-family:var(--font-label); font-size:13px; background:var(--dark); color:#e8e2d2; border:1px solid var(--maroon); padding:9px 15px; cursor:pointer; }
.to-top:hover{ background:var(--maroon); color:#fff; }
.to-top.show{ display:inline-block; }

/* ============ RESPONSYWNOŚĆ ============ */
@media (max-width:900px){
  .info-pasek{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr; gap:26px; }
  .rejestr{ grid-template-columns:1fr; }
  .karuzela-slajd{ width:260px; }
  .archivegrid{ grid-template-columns:1fr; }
  .rightcol{ border-top:2px solid var(--rule); padding-top:20px; }
}
@media (max-width:760px){
  .navlist{ display:none; flex-direction:column; width:100%; }
  .navlist.open{ display:flex; }
  .navlist li a,.navlist .more-toggle{ border-right:none; border-bottom:1px solid rgba(255,255,255,.1); padding:12px 4px; }
  .navlist li:first-child a{ padding-left:4px; }
  .hamburger{ display:block; margin:10px 0; }
  nav.menu-glowne .wrap{ flex-direction:column; align-items:flex-start; }
  .has-more{ width:100%; } .submenu{ position:static; border:none; min-width:0; }
  .naglowek-flex{ flex-direction:column; align-items:flex-start; }
  .naglowek-dane{ text-align:left; }
  .tytul-serwisu .nazwa{ font-size:24px; }
  .topbar .wrap{ flex-direction:column; }
}
@media (max-width:480px){
  .wpis-tresc{ padding:0 16px; }
  .wpis::before{ margin:16px 16px 8px; }
  .wpis h3{ font-size:19px; }
  .wpis-dol{ flex-direction:column; align-items:stretch; }
  .czytaj-dalej{ text-align:center; }
  .pieczec-znak{ width:46px; height:46px; font-size:18px; }
  .tablica-naglowek h2{ font-size:21px; }
  .karuzela-slajd{ width:82vw; }
  .cat-header h1,article.full-story h1{ font-size:26px; }
}

/* ===== TABELE W TREŚCI (dodane 2026-07-08 — brakowało, tabele renderowały się jak zlepiony tekst) ===== */
.body-text table{ width:100%; border-collapse:collapse; margin:0 0 22px; font-size:.95rem; }
.body-text th,.body-text td{ border:1px solid var(--rule); padding:9px 13px; text-align:left; vertical-align:top; }
.body-text th{ background:var(--maroon); color:#fff; font-weight:700; }
.body-text tr:nth-child(even) td{ background:var(--paper-dark); }
@media (max-width:560px){ .body-text table{ font-size:.88rem; } .body-text th,.body-text td{ padding:7px 9px; } }

/* Spis tresci: pozycje to <button class="toc-link"> (silnik 45-agent-toc 1.2),
   wiec nie lapia sie na ogolne `a{}`. Powtarzamy jego wyglad 1:1, zeby zmiana
   elementu nie byla zmiana wygladu. */
.short-content .toc-link{ color:var(--maroon); text-decoration:underline; }
