/* ——— Pojedynczy wpis bloga — wariant A3, 2026-10-08 ———
   spis treści | tekst | produkty i kontakt. Ładowane tylko na is_singular('post')
   (AVM_Blog::style). Paleta firmowa: granat #121e65, złoto #fbbf24, zieleń #0e561f.
   --avm-art-top: odstęp przyklejonych kolumn od góry — nagłówek sklepu jest sticky. */

.avm-art{
  --avm-art-top:96px;
  display:grid;grid-template-columns:250px minmax(0,1fr) 320px;gap:32px;align-items:start;
  padding:24px 0 56px;
}
.avm-art--bez-spisu{grid-template-columns:minmax(0,1fr) 320px}

/* lewa kolumna: spis treści */
.avm-art__spis{position:sticky;top:var(--avm-art-top)}
.avm-art__spis-box summary{
  list-style:none;cursor:default;pointer-events:none;
  font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#5b6383;margin-bottom:12px;
}
.avm-art__spis-box summary::-webkit-details-marker{display:none}
.avm-art__spis ol{list-style:none;margin:0;padding:0;counter-reset:rozdz;display:flex;flex-direction:column;gap:2px}
.avm-art__spis li{counter-increment:rozdz}
.avm-art__spis a{
  display:flex;gap:10px;padding:8px 10px;border-radius:10px;
  font-size:14px;line-height:1.4;color:#4a5272;text-decoration:none;
}
.avm-art__spis a::before{
  content:counter(rozdz);flex:0 0 22px;height:22px;border-radius:50%;
  background:#e8ebf5;color:#121e65;font-size:12px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
}
.avm-art__spis a:hover{background:#fff;color:#121e65}
.avm-art__spis a.is-on{background:#fff;color:#121e65;font-weight:700;box-shadow:0 2px 8px rgba(18,30,101,.08)}
.avm-art__spis a.is-on::before{background:#121e65;color:#fff}

/* środek: artykuł */
.avm-art__glowna{background:#fff;border-radius:20px;padding:40px 48px;min-width:0}
.avm-art__h{display:flex;gap:28px;align-items:center;padding-bottom:26px;border-bottom:1px solid #e3e7f2;margin-bottom:8px}
.avm-art__h-tekst{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:10px}
.avm-art__okr{font-size:13px;color:#6b7280}
.avm-art__okr a{color:#6b7280}
.avm-art__okr a:hover{color:#121e65}
.avm-art__oko{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#0e561f}
.avm-art__h h1{margin:0;font-size:clamp(28px,2.6vw,38px);line-height:1.15;font-weight:800;letter-spacing:-.01em;color:#121e65;text-wrap:balance}
.avm-art__meta{margin:0;display:flex;flex-wrap:wrap;gap:8px;font-size:14px;font-weight:600;color:#5b6383}
/* Grafika wpisu: ramka 16:9 — ten sam format co kafelki listy wpisów (blog.css),
   więc jedna grafika 1600 × 900 px wypełnia każde miejsce bez przycinania.
   `contain`, nie `cover`: starsze grafiki w innych proporcjach dostają jasne pasy
   po bokach zamiast obciętych napisów. */
.avm-art__foto{margin:24px 0 6px;aspect-ratio:16/9;max-width:100%;border-radius:16px;overflow:hidden;background:#f3f4f6}
.avm-art__foto img{display:block;width:100%;height:100%;object-fit:contain}

/* typografia treści — nadpisuje ogólne .avm-strona__tresc z base.css tylko we wpisie */
.avm-art__tresc{max-width:72ch;margin-top:0;font-size:17.5px;line-height:1.75;color:#2a3150}
.avm-art__tresc h2{font-size:27px;line-height:1.25;color:#121e65;margin:42px 0 14px;font-weight:800;letter-spacing:-.01em;scroll-margin-top:calc(var(--avm-art-top,96px) + 16px)}
.avm-art__tresc h3{font-size:20px;color:#121e65;margin:30px 0 8px;font-weight:700}
.avm-art__tresc strong{color:#141a35}
.avm-art__tresc a{color:#121e65;text-decoration:underline;text-decoration-color:#fbbf24;text-decoration-thickness:2px;text-underline-offset:3px}
.avm-art__tresc a:hover{text-decoration-color:#121e65}
.avm-art__tresc ul li::marker{color:#0e561f}
.avm-art__tresc ol li::marker{color:#0e561f;font-weight:700}
.avm-art__tresc blockquote{margin:26px 0;padding:4px 0 4px 22px;border-left:4px solid #fbbf24;font-size:19px;color:#121e65}
.avm-art__tresc .avm-wstep{font-size:19.5px;line-height:1.65;color:#4a5272;margin-top:26px}
.avm-art__tresc .avm-skrot{background:#fff8e1;border-radius:14px;padding:20px 24px;margin:26px 0;font-size:16.5px;line-height:1.65}
.avm-art__tresc .avm-skrot h2,.avm-art__tresc .avm-skrot h3,.avm-art__tresc .avm-skrot h4{
  margin:0 0 8px;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#7a5200;font-weight:700
}
.avm-art__tresc .avm-skrot ul{margin:0}
.avm-art__tresc .avm-skrot > strong:first-child,.avm-art__tresc .avm-skrot > b:first-child{color:#7a5200}
.avm-art__tresc figure{margin:26px 0}
.avm-art__tresc img{border-radius:14px;height:auto}

/* prawa kolumna: produkty i kontakt */
.avm-art__bok{position:sticky;top:var(--avm-art-top);display:flex;flex-direction:column;gap:12px}
.avm-art__bok-h{margin:0 0 4px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#5b6383}
.avm-art__produkty{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}
.avm-art__prod{
  display:flex;gap:14px;align-items:center;padding:12px;border-radius:14px;
  background:#fff;border:1px solid #e3e7f2;color:inherit;text-decoration:none;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.avm-art__prod:hover{border-color:#121e65;box-shadow:0 8px 20px -12px rgba(18,30,101,.35);color:inherit}
.avm-art__prod img{flex:0 0 72px;width:72px;height:72px;object-fit:contain;border-radius:10px;background:#f6f7fb}
.avm-art__prod-t{display:flex;flex-direction:column;gap:3px;min-width:0}
.avm-art__prod-t b{font-size:14.5px;line-height:1.35;color:#121e65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.avm-art__prod-cena{font-size:14px;font-weight:700;color:#141a35}
.avm-art__prod-link{font-size:13px;font-weight:700;color:#0e561f}
.avm-art__doradca{background:#e3f1e6;border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:8px}
.avm-art__doradca b{color:#0e561f;font-size:16px}
.avm-art__doradca p{margin:0;font-size:14px;line-height:1.55;color:#24452c}
.avm-art__doradca a{align-self:flex-start;background:#0e561f;color:#fff;font-weight:700;font-size:14px;padding:11px 18px;border-radius:10px;margin-top:4px}
.avm-art__doradca a:hover{background:#0a4318;color:#fff}

/* do 1280 px: produkty pod spisem? Nie — węższe kolumny boczne */
@media (max-width:1280px){
  .avm-art{grid-template-columns:220px minmax(0,1fr) 280px;gap:24px}
  .avm-art--bez-spisu{grid-template-columns:minmax(0,1fr) 280px}
  .avm-art__glowna{padding:34px 36px}
}

/* poniżej 1100 px: jedna kolumna — spis zwinięty nad tekstem, produkty pod tekstem */
@media (max-width:1099px){
  .avm-art,.avm-art--bez-spisu{grid-template-columns:minmax(0,1fr);gap:18px}
  .avm-art__spis,.avm-art__bok{position:static}
  .avm-art__spis{order:-1}
  .avm-art__spis-box{background:#fff;border-radius:14px;padding:14px 18px}
  .avm-art__spis-box summary{pointer-events:auto;cursor:pointer;margin:0;display:flex;justify-content:space-between;align-items:center;min-height:28px}
  .avm-art__spis-box summary::after{content:"+";font-size:20px;color:#121e65;letter-spacing:0}
  .avm-art__spis-box[open] summary::after{content:"−"}
  .avm-art__spis-box[open] summary{margin-bottom:10px}
  .avm-art__bok{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px}
  .avm-art__bok-h{grid-column:1/-1}
  .avm-art__produkty{display:contents}
}
@media (max-width:640px){
  .avm-art{padding:12px 0 40px}
  .avm-art__glowna{padding:22px 18px;border-radius:16px}
  .avm-art__foto{margin-top:18px;border-radius:12px}
  .avm-art__tresc{font-size:16.5px}
  .avm-art__tresc .avm-wstep{font-size:18px}
  .avm-art__tresc h2{font-size:23px}
}

/* Kolumny boczne bez własnego przewijania (decyzja Michała 2026-10-08): kolumna
   wyższa niż okno dostaje ze skryptu w single.php ujemne `top` — najpierw przewija
   się razem ze stroną, a przykleja dopiero, gdy pokaże się jej dół. */
.avm-art__spis{top:var(--avm-spis-top,var(--avm-art-top))}
.avm-art__bok{top:var(--avm-bok-top,var(--avm-art-top))}

/* Zwarte karty produktów — cztery produkty i ramka doradcy mieszczą się na ekranie
   laptopa. Cała karta jest odnośnikiem, więc napis „Zobacz w sklepie” jest zbędny. */
.avm-art__produkty{gap:8px;margin-bottom:6px}
.avm-art__prod{gap:12px;padding:8px 12px 8px 8px;border-radius:12px}
.avm-art__prod img{flex-basis:52px;width:52px;height:52px;border-radius:8px}
.avm-art__prod-t{gap:2px}
.avm-art__prod-t b{font-size:13.5px;-webkit-line-clamp:2}
.avm-art__prod-cena{font-size:13.5px}
.avm-art__doradca{padding:16px 18px;gap:6px}
