/* Blog PL i tagi. Karty współdzielone ze stroną główną; wygląd etapu 1. */
.posts {
  display: grid;
  gap: 30px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.post-card__img img { width: 100%; aspect-ratio: 390 / 290; object-fit: cover; }
.post-card__body { padding: 23px 25px 26px; box-shadow: 0 2px 6px var(--c-line); }
.post-card__title { min-height: 80px; margin: 5px 0 0; font-size: 1.125rem; line-height: 28px; }
.post-card__title a { color: var(--c-text-strong); }
.post-card__title a:hover, .post-card__title a:focus-visible { color: var(--c-link); }
.post-card__more {
  display: inline-block;
  margin: 30px 0 5px;
  padding: 0 30px;
  border: 1px solid var(--c-navy);
  border-radius: var(--radius-btn);
  color: var(--c-text-strong);
  font-weight: 500;
  line-height: 49px;
  transition: background 0.3s, color 0.3s;
}
.post-card__more:hover, .post-card__more:focus-visible { background: var(--g-brand-text); color: var(--c-on-brand); }

@media (min-width: 768px) {
  .posts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1025px) {
  .posts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .post-card__title { font-size: 1.25rem; }
}

/* Lista bloga: sześć kart, bez sidebara, jak na obecnej stronie. */
.blog-area, .archive-area { padding: 100px 0 85px; }
.blog-area .container { max-width: calc(var(--container) + 70px); }
.post-card { min-width: 0; }
.post-card__title a { display: block; min-width: 44px; min-height: 44px; }

/* Archiwa tagów: zdjęcie, tytuł, data i pełna widoczna zajawka. */
.archive-post { margin: 0 0 30px; background: var(--c-bg); box-shadow: var(--shadow-md); }
.archive-post__body { padding: 15px 15px 18px; }
.archive-post h2 { margin: 0 0 7px; font-size: 1.25rem; font-weight: 600; line-height: 1.2; text-transform: capitalize; }
.archive-post h2 a { display: block; min-height: 44px; min-width: 44px; color: var(--c-text-strong); }
.archive-post h2 a:hover, .archive-post h2 a:focus-visible { color: var(--c-link); }
.archive-post__meta { display: flex; flex-wrap: wrap; gap: 4px 16px; margin-bottom: 7px; font-size: 0.8125rem; color: var(--c-link); }
.archive-post p { margin: 0 0 16px; }

/* Korekty telefonu i dostępności dotyczą wyłącznie bloga. */
.post--blog .post__content { margin-top: 20px; }
.post--blog .post__content h2 { margin: 20px 0; font-size: 1.75rem; font-weight: 400; line-height: 1.2; }
.post--blog .post__content .post__section-label { font: 700 1rem/1.8 var(--font-body); }
.post--blog .post__content ol { margin: 0 0 30px; padding-left: 40px; }
.post--blog .post__content a { display: inline-block; min-width: 44px; min-height: 44px; text-decoration: underline; text-underline-offset: 3px; }
.post-sidebar { min-width: 0; }
.post-sidebar .recent-posts__title { min-height: 44px; min-width: 44px; margin-top: 16px; }
.post-sidebar .recent-posts__title:hover, .post-sidebar .recent-posts__title:focus-visible { color: var(--c-link); }
.post-sidebar .recent-posts__item { align-items: start; }
.post-sidebar .recent-posts__item > a { flex: none; margin-top: 10px; }
.widget--image img { width: 300px; max-width: 100%; }

@media (max-width: 767px) {
  .post--blog .post__body { padding: 25px 20px 4px; }
  .post--blog .post__content h2 { overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
  .post-card__more { transition: none; }
}

.archive-area .post-layout > *, .post--blog { min-width: 0; }

/* Oba rzeczywiste warianty oryginalnego bloga; karta reaguje także na fokus swoich linków. */
.post-card > a:first-child, .archive-post > a:first-child { display: block; overflow: hidden; }
.post-card > a:first-child picture, .archive-post > a:first-child picture { display: block; position: relative; }
.post-card > a:first-child picture { transition: transform 0.5s; }
.post-card > a:first-child picture::after, .archive-post > a:first-child picture::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgb(0 0 0 / 50%);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s, transform 0.5s;
}
.post-card > a:first-child picture::after { transform: scale(0); }
.post-card:hover > a:first-child picture, .post-card:focus-within > a:first-child picture { transform: scale(1.2); }
.post-card:hover > a:first-child picture::after, .post-card:focus-within > a:first-child picture::after { opacity: 1; transform: scale(1.2); }
.archive-post > a:first-child img { transition: transform 0.5s; }
.archive-post > a:first-child picture::after { background: rgb(0 0 0 / 70%); }
.archive-post:hover > a:first-child img, .archive-post:focus-within > a:first-child img { transform: scale(1.1); }
.archive-post:hover > a:first-child picture::after, .archive-post:focus-within > a:first-child picture::after { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .post-card > a:first-child picture, .archive-post > a:first-child img,
  .post-card:hover > a:first-child picture, .post-card:focus-within > a:first-child picture,
  .archive-post:hover > a:first-child img, .archive-post:focus-within > a:first-child img,
  .post-card > a:first-child picture::after,
  .post-card:hover > a:first-child picture::after, .post-card:focus-within > a:first-child picture::after { transform: none; }
}
