/* =========================================================
   STRONA GŁÓWNA — page-home.php
   Wzorzec: webmountain-ux/makieta-strona-glowna.html (2026-10-11)
   Kolory wyłącznie z core/tokens.css.
========================================================= */

/* --- Hero: jasne tło, hasło Anton wersalikami (BRANDBOOK §2), zakreślenie lime z tekstem forest --- */
.homeHero{ padding:56px 0 48px; }
.homeHero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);
  gap:48px;
  align-items:center;
}
.homeHero__eyebrow{
  margin:0;
  font-size:13px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted);
}
.homeHero__title{
  font-family:var(--wm-font-display);
  font-weight:400;
  text-transform:uppercase;
  font-size:clamp(40px, 5vw + 8px, 70px);
  line-height:1;
  letter-spacing:0;
  max-width:14ch;
  margin:14px 0 18px;
  hyphens:none;
}
.homeHero__title .wmMark{ padding:0 .08em; border-radius:.1em; }
.homeHero__lead{ font-size:18px; line-height:1.6; max-width:56ch; margin:0 0 14px; }
.homeHero__entry{ font-size:15px; color:var(--muted); margin:0 0 22px; }
.homeHero__cta{ display:flex; flex-wrap:wrap; align-items:center; gap:18px; }
.homeHero__media img{
  width:100%;
  max-width:440px;
  height:auto;
  aspect-ratio:4/5;
  object-fit:cover;
  border-radius:var(--radius);
  margin-left:auto;
  background:var(--wm-forest-10);
}

/* Link tekstowy: neoblue na jasnym (5,6:1) */
.homeLink{ color:var(--wm-neoblue); font-weight:600; }
.homeLink:hover{ text-decoration:underline; text-underline-offset:3px; }

/* --- Liczby: forest, liczba Anton lime (wypełnienie na ciemnym — dozwolone) --- */
.homeProof{ background:var(--wm-forest); color:var(--wm-white); }
.homeProof__grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
  background:var(--wm-forest-75);
  padding:0;
}
.homeProof__grid > div{ background:var(--wm-forest); padding:28px 24px; }
.homeProof .big{
  display:block;
  margin-bottom:8px;
  font-family:var(--wm-font-display);
  font-size:34px;
  line-height:1;
  color:var(--wm-lime);
}
.homeProof p{ margin:0; font-size:14px; color:var(--wm-forest-10); }
.homeProof a{ color:var(--wm-lime); text-decoration:underline; text-underline-offset:3px; }

/* --- Sekcje --- */
.homeSec{ padding:72px 0; }
.homeSec--cream{ background:var(--wm-cream); }
.homeSec--tight{ padding-top:0; }
.homeSec__title{ margin:0 0 24px; }
.homeSec__more{ margin:22px 0 0; }

/* Usługi jako zdania klienta */
.homeCards{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.homeCard{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:22px;
  border:1px solid var(--line-strong);
  border-radius:var(--radius);
}
.homeCard q{ font-size:18px; font-weight:600; color:var(--text); quotes:"„" "”"; }
.homeCard > span{ font-size:14px; color:var(--muted); }

/* Kim jestem */
.homeSplit{ display:grid; grid-template-columns:.8fr 1.2fr; gap:48px; align-items:center; }
.homeSplit__media img{
  width:100%;
  max-width:420px;
  height:auto;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:var(--radius);
}
.homeSplit .homeSec__title{ margin-bottom:16px; }

/* Rekomendacje */
.homeRecs{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.homeRec{
  margin:0;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
  padding:22px;
  border:1px solid var(--line-strong);
  border-radius:var(--radius);
}
.homeRec blockquote{ margin:0; font-size:15px; line-height:1.6; color:var(--text); }
.homeRec figcaption{ display:flex; gap:10px; align-items:center; font-size:13px; color:var(--muted); }
.homeRec figcaption i{
  flex:none;
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:50%;
  background:var(--wm-forest-10);
  color:var(--wm-forest);
  font-style:normal;
  font-weight:700;
}
.homeRec figcaption img{
  flex:none;
  width:48px;
  height:48px;
  border-radius:50%;
  object-fit:cover;
}
.homeRec figcaption b{ display:block; color:var(--text); font-size:14px; }
.homeRec figcaption a{ color:var(--wm-neoblue); }

/* Z bazy wiedzy */
/* Wszystkie artykuły w jednym rzędzie, równe szerokości — ile by ich nie było */
.homePosts{ display:grid; grid-auto-flow:column; grid-auto-columns:minmax(0,1fr); gap:14px; }
.homePost{ display:block; padding:24px; border-radius:var(--radius); background:var(--wm-forest-10); }
.homePost small{
  font-size:12px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--muted);
}
.homePost span{ display:block; margin-top:8px; font-size:18px; line-height:1.4; font-weight:600; color:var(--text); }
.homePost:hover span{ color:var(--wm-neoblue); }

/* --- Responsywność: telefon najpierw (BRANDBOOK §5.4) --- */
@media (max-width:960px){
  .homeRecs{ grid-template-columns:1fr; }
  .homePosts{ grid-auto-flow:row; grid-template-columns:repeat(2,1fr); }
}
@media (max-width:760px){
  .homeHero{ padding:28px 0 32px; }
  .homeHero__title{ margin:16px 0 14px; line-height:1.05; }
  .homeHero__lead{ font-size:16px; }
  .homeHero__grid, .homeSplit{ grid-template-columns:1fr; gap:28px; }
  .homeHero__media img{ aspect-ratio:1/1; max-width:360px; margin-left:0; }
  .homeProof__grid{ grid-template-columns:repeat(2,1fr); }
  .homeProof__grid > div{ padding:22px 16px; }
  .homeSec{ padding:44px 0; }
  .homeSec--tight{ padding-top:0; }
  .homeCards{ grid-template-columns:1fr; }
  .homePosts{ grid-auto-flow:row; grid-template-columns:1fr; }
}
