/* =========================================================
   FurniLove – blog w stylu magazynu (shortcode [furnilove_blog])
   Hero (wyróżniony 1. wpis) + siatka kart z miniaturami.
   ========================================================= */
.fl-blog{
  --fl-gold:#a17c44; --fl-gold-l:#c9a96a; --fl-cream:#fbfaf3;
  --fl-ink:#1b1b1b; --fl-muted:#8a8a8a; --fl-line:#ece7db;
  font-family:"Manrope",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  margin-top:34px;
}

/* wspólne: meta (kategoria/data/wyróżnione) */
.fl-blog-card__meta{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.fl-blog-cat{
  font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:1.5px;
  color:var(--fl-gold) !important; text-decoration:none !important;
}
.fl-blog-cat:hover{ color:#8a6a39 !important; }
.fl-blog-date{ font-size:12.5px; color:#b3ac9d; }
.fl-blog-featured{
  font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:1.5px;
  color:#fff; background:linear-gradient(135deg,var(--fl-gold),var(--fl-gold-l));
  padding:3px 10px; border-radius:999px;
}
.fl-blog-card__noimg{
  display:flex; align-items:center; justify-content:center; width:100%; height:100%;
  min-height:200px; background:linear-gradient(135deg,var(--fl-cream),#f3ecdd);
  font-family:"Playfair Display",Georgia,serif; color:var(--fl-gold); letter-spacing:.05em; font-size:1.4rem;
}

/* ---------- HERO (wyróżniony wpis) ---------- */
.fl-blog-hero{
  display:grid; grid-template-columns:1.25fr 1fr; grid-template-rows:1fr; gap:0;
  border:1px solid var(--fl-line); border-radius:22px; overflow:hidden;
  background:#fff; box-shadow:0 2px 6px rgba(27,27,27,.05);
  margin-bottom:46px; transition:box-shadow .35s ease, transform .35s ease;
}
/* jawne umiejscowienie — żeby zdjęcie i tekst były obok siebie (nie pod sobą) */
.fl-blog-hero__media{ grid-column:1; grid-row:1; }
.fl-blog-hero__body{ grid-column:2; grid-row:1; }
.fl-blog-hero__media{ display:block; position:relative; min-height:400px; overflow:hidden; }
.fl-blog-hero__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s cubic-bezier(.2,.7,.3,1); }
.fl-blog-hero__body{ padding:38px 40px; display:flex; flex-direction:column; justify-content:center; }
.fl-blog-hero__title{
  font-family:"Playfair Display",Georgia,serif; font-weight:600;
  font-size:clamp(1.5rem,2.4vw,2.05rem); line-height:1.22; margin:0 0 14px;
}
.fl-blog-hero__title a{ color:var(--fl-ink); text-decoration:none; transition:color .2s ease; }
.fl-blog-hero__title a:hover{ color:var(--fl-gold); }
.fl-blog-hero__excerpt{ color:#5f5f5f; font-size:1.02rem; line-height:1.7; margin:0 0 22px; }
.fl-blog-hero__cta{
  align-self:flex-start; display:inline-flex; align-items:center; gap:.45em;
  background:var(--fl-gold); color:#fff !important; text-decoration:none !important;
  font-weight:600; font-size:.95rem; padding:12px 24px; border-radius:11px;
  transition:background .25s ease, gap .25s ease;
}
.fl-blog-hero__cta:hover{ background:#8a6a39; gap:.8em; }
@media (hover:hover) and (pointer:fine){
  .fl-blog-hero:hover{ box-shadow:0 18px 40px rgba(27,27,27,.10); }
  .fl-blog-hero:hover .fl-blog-hero__media img{ transform:scale(1.04); }
}

/* ---------- SIATKA ---------- */
.fl-blog-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.fl-blog-card{
  display:flex; flex-direction:column; background:#fff;
  border:1px solid var(--fl-line); border-radius:18px; overflow:hidden;
  box-shadow:0 1px 2px rgba(27,27,27,.04);
  transition:transform .35s cubic-bezier(.25,.46,.45,.94), box-shadow .35s ease, border-color .35s ease;
}
.fl-blog-card__media{ display:block; aspect-ratio:16/10; overflow:hidden; background:var(--fl-cream); }
.fl-blog-card__media img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s cubic-bezier(.2,.7,.3,1); }
.fl-blog-card__body{ padding:20px 22px 24px; display:flex; flex-direction:column; flex:1; }
.fl-blog-card__title{
  font-family:"Playfair Display",Georgia,serif; font-weight:600;
  font-size:1.18rem; line-height:1.32; margin:0 0 10px;
}
.fl-blog-card__title a{ color:var(--fl-ink); text-decoration:none; transition:color .2s ease; }
.fl-blog-card__title a:hover{ color:var(--fl-gold); }
.fl-blog-card__excerpt{ color:#6a6a6a; font-size:.94rem; line-height:1.6; margin:0 0 16px; flex:1; }
.fl-blog-more{
  align-self:flex-start; display:inline-flex; align-items:center; gap:.3em;
  color:var(--fl-gold) !important; text-decoration:none !important;
  font-size:.82rem; font-weight:700; text-transform:uppercase; letter-spacing:1px;
  transition:gap .25s ease, color .2s ease;
}
.fl-blog-more:hover{ color:#8a6a39 !important; gap:.65em; }
@media (hover:hover) and (pointer:fine){
  .fl-blog-card:hover{ transform:translateY(-5px); box-shadow:0 16px 36px rgba(27,27,27,.10); border-color:#e3d8c2; }
  .fl-blog-card:hover .fl-blog-card__media img{ transform:scale(1.05); }
}

/* ---------- PAGINACJA ---------- */
.fl-blog-pagination{ margin-top:44px; }
.fl-blog-pagination .page-numbers{ list-style:none; display:flex; justify-content:center; flex-wrap:wrap; gap:8px; margin:0; padding:0; }
.fl-blog-pagination .page-numbers li{ margin:0; }
.fl-blog-pagination a.page-numbers,
.fl-blog-pagination span.page-numbers{
  display:inline-flex; align-items:center; justify-content:center; min-width:42px; height:42px; padding:0 12px;
  border:1px solid var(--fl-line); border-radius:11px; color:var(--fl-ink); text-decoration:none;
  font-weight:600; font-size:.92rem; transition:all .2s ease; background:#fff;
}
.fl-blog-pagination a.page-numbers:hover{ border-color:var(--fl-gold); color:var(--fl-gold); }
.fl-blog-pagination span.page-numbers.current{ background:var(--fl-gold); border-color:var(--fl-gold); color:#fff; }

/* ---------- RESPONSYWNOŚĆ ---------- */
@media (max-width:1024px){
  .fl-blog-grid{ grid-template-columns:repeat(2,1fr); gap:24px; }
}
@media (max-width:820px){
  .fl-blog-hero{ grid-template-columns:1fr; grid-template-rows:auto auto; margin-bottom:34px; }
  .fl-blog-hero__media{ grid-column:1; grid-row:1; min-height:0; aspect-ratio:16/10; }
  .fl-blog-hero__body{ grid-column:1; grid-row:2; padding:26px 24px 30px; }
}
@media (max-width:560px){
  .fl-blog-grid{ grid-template-columns:1fr; gap:22px; }
  .fl-blog{ margin-top:24px; }
}
