/* ================== RESET ================== */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  background:#f5f7fb;
  color:#1f2a37;
}

:root{
  --bg:#f5f7fb;
  --surface:#ffffff;
  --text:#0f172a;
  --muted:#64748b;
  --line:#dbe3ee;
  --brand:#24569c;
  --brand2:#2f66b8;
  --shadow:0 16px 40px rgba(16,24,40,.14);
  --shadowSm:0 8px 22px rgba(16,24,40,.10);
  --radius:18px;
}

/* ================== LAYOUT ================== */
.container{
  max-width:1600px;
  margin:0 auto;
  padding:0 18px;
}

/* ================== TOPBAR ================== */
.topbar{
  background:#ffffff;
  border-bottom:1px solid #dbe3ee;
  box-shadow:0 2px 8px rgba(0,0,0,.05);
}
.topbar__inner{
  height:64px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  position:relative;
}
.brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:800;
  text-decoration:none;
}
.brand img{width:34px;height:34px}
.nav{display:flex;gap:10px;align-items:center}
.navToggle{
  display:none;
  border:1px solid #cfd9e6;
  background:#fff;
  padding:8px 10px;
  border-radius:6px;
  cursor:pointer;
}
.navToggle__icon{font-size:20px;line-height:1}

.nav a{
  font-size:13px;
  padding:9px 12px;
  border-radius:4px;
  text-decoration:none;
  color:#334155;
}
.nav a:hover{background:#f2f6fb}

@media(max-width:768px){
  .topbar__inner{height:auto;padding:10px 0}
  .brand img{height:34px;width:auto}
  .navToggle{display:inline-flex;align-items:center;justify-content:center}

  .nav{
    position:absolute;
    top:64px;
    left:0;
    right:0;
    background:#fff;
    border-bottom:1px solid #dbe3ee;
    box-shadow:0 10px 22px rgba(0,0,0,.10);
    padding:10px 18px;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:6px;
    max-height:0;
    overflow:hidden;
    opacity:0;
    pointer-events:none;
    transition:max-height .2s ease, opacity .2s ease;
  }

  .nav.nav--open{
    max-height:70vh;
    opacity:1;
    pointer-events:auto;
  }

  .nav a,
  .linklike{
    width:100%;
    text-align:left;
    padding:12px;
    border-radius:8px;
  }

  .nav .btn{width:100%;text-align:center}
}

/* przycisk w menu typu "link" (Wyloguj) */
.linklike{
  background:transparent;
  border:0;
  padding:9px 12px;
  font-size:13px;
  border-radius:4px;
  cursor:pointer;
  color:#334155;
}
.linklike:hover{background:#f2f6fb}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid #cfd9e6;
  background:#fff;
  padding:10px 16px;
  border-radius:12px;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
  text-decoration:none;
  color:#0f172a;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease;
}
.btn:hover{
  background:#f8fafc;
  border-color:#b9c7da;
  box-shadow:0 8px 18px rgba(16,24,40,.08);
  transform:translateY(-1px);
}
.btn:active{transform:translateY(0)}
.btn--primary{
  background:linear-gradient(180deg,#2f66b8,#24569c);
  border-color:#1f4f97;
  color:#fff;
  box-shadow:0 10px 22px rgba(47,102,184,.22);
}
.btn--primary:hover{box-shadow:0 14px 30px rgba(47,102,184,.28); background:linear-gradient(180deg,#356fca,#24569c)}

/* ================== HERO ================== */
.hero{
  margin-top:14px;
  margin-bottom:16px;
  border-radius:22px;
  overflow:hidden;
  box-shadow:var(--shadow);
  background:var(--surface);
}

/* full-bleed hero wewnątrz .container */
.hero--fullbleed{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  border-radius:0;
}

/* 🔴 TU JEST NAJWAŻNIEJSZE 🔴 */
.hero__image{
  position:relative;
  width:100%;
  min-height:420px;
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.30), rgba(0,0,0,.35)),
    url("/assets/img/hero.jpg");  /* <- JEDYNA ścieżka */
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}

.hero__inner{
  position:relative;
  max-width:1600px;
  margin:0 auto;
  padding:46px 18px 84px;
}

.hero__copy{
  max-width:720px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.55);
  border-radius:22px;
  padding:18px 18px 16px;
  box-shadow:0 14px 34px rgba(0,0,0,.18);
  backdrop-filter:saturate(140%) blur(10px);
}

.hero__kicker{
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(15,23,42,.78);
}

.hero__title{
  margin-top:8px;
  font-size:44px;
  font-weight:950;
  letter-spacing:-.03em;
  line-height:1.05;
  color:var(--text);
}

.hero__sub{
  margin-top:10px;
  color:rgba(15,23,42,.72);
  font-weight:650;
  line-height:1.45;
}

.hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}

/* ================== SEARCH ================== */
.searchbar{
  margin-top:-44px;
  padding:0 18px 10px;
  position:relative;
  z-index:10;
}
.searchcard{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:var(--shadowSm);
  padding:16px;
}
.searchcard--floating{max-width:1550px;margin:0 auto}
.searchgrid{
  display:grid;
  /* Single-row layout on desktop (7 pól + przycisk) */
  grid-template-columns:150px 120px 200px 240px 210px 1fr 130px;
  gap:10px;
  align-items:end;
}
.searchgrid label{
  font-size:11px;
  color:#6b7280;
  font-weight:800;
}

.searchgrid .input,
.searchgrid select{
  width:100%;
  height:34px;
  padding:6px 10px;
  border:1px solid #d6e0ee;
  border-radius:12px;
  font-size:13px;
}


/* Price range (two inputs in one field) */
.range{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:8px;
  align-items:center;
}
.range .input{min-width:0}
.range__sep{
  color:#94a3b8;
  font-weight:900;
  user-select:none;
}
/* Compact submit button to match inputs */
.searchgrid .btn{
  height:34px;
  padding:0 16px;
  border-radius:12px;
  font-size:13px;
}


/* "More filters" */
.searchmore{
  grid-column:1/-1;
  margin-top:2px;
}
.searchmore > summary{
  list-style:none;
  cursor:pointer;
  user-select:none;
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-weight:850;
  color:rgba(15,23,42,.78);
}
.searchmore > summary::-webkit-details-marker{display:none}
.searchmore > summary:after{
  content:"▾";
  font-size:12px;
  color:#64748b;
}
.searchmore[open] > summary:after{content:"▴"}
.searchmore__grid{
  margin-top:10px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  padding-top:10px;
  border-top:1px dashed rgba(148,163,184,.55);
}
@media(max-width:900px){
  .searchmore__grid{grid-template-columns:1fr}
}
.btn--ghost{
  background:rgba(15,23,42,.04);
  border:1px solid rgba(148,163,184,.45);
}
.btn--ghost:hover{background:rgba(15,23,42,.06)}

@media(max-width:900px){
  .searchgrid{grid-template-columns:1fr 1fr}
  .searchgrid button{grid-column:1/-1}
  .searchmore{grid-column:1/-1}
}

@media(max-width:600px){
  .hero__image{min-height:280px}
  .hero__inner{padding:18px 12px 70px}
  .hero__title{font-size:28px}

  .searchbar{margin-top:-26px;padding:0 12px 12px}
  .searchcard{padding:12px}

  .footer__inner{flex-direction:column;align-items:flex-start;gap:6px}
}

/* ================== BENEFITS ================== */
.why-us{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:22px;
  box-shadow:0 10px 28px rgba(16,24,40,.08);
  padding:22px;
  margin:16px 0 18px;
}
.sectionTitle--lg{
  font-size:22px;
  letter-spacing:-.2px;
  margin:0;
}
.sectionSubtitle{
  margin:6px 0 14px;
  color:#6b7280;
  line-height:1.5;
  max-width:920px;
}
.benefits{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:0;
}
.benefit{
  background:linear-gradient(180deg,#ffffff,#fbfdff);
  border:1px solid #e6edf6;
  border-radius:18px;
  padding:14px;
  display:flex;
  gap:12px;
  align-items:flex-start;
  min-height:92px;
}
.benefit .ico{
  width:40px;height:40px;
  background:#eef4ff;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
  flex:0 0 40px;
}
.benefit h3{margin:0;font-size:14px}
.benefit p{margin:4px 0 0;font-size:12.5px;line-height:1.45;color:#475569}

.why-us__cta{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}

@media(max-width:980px){
  .benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .why-us{padding:14px}
  .benefits{grid-template-columns:1fr}
}


/* ================== LISTINGS ================== */

/* Premium listing cards used on category/search pages */
.listings-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:16px;
  margin:14px 0 26px;
}
.listing-card{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:22px;
  overflow:hidden;
  text-decoration:none;
  color:inherit;
  box-shadow:0 10px 26px rgba(16,24,40,.10);
  transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease;
  position:relative;
}
.listing-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 46px rgba(16,24,40,.16);
  border-color:#c9d6e6;
}
.listing-card img{
  width:100%;
  height:170px;
  object-fit:cover;
  display:block;
  background:#f1f5f9;
}
.listing-card__body{padding:14px}
.listing-card__title{
  font-weight:950;
  margin:0 0 6px;
  font-size:16px;
  line-height:1.25;
  color:var(--text); /* nie niebieski */
}
.listing-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  color:var(--muted);
  font-weight:650;
  font-size:12.5px;
}
.listing-card__price{
  color:var(--text);
  font-weight:950;
}
.listing-card__loc{
  margin-top:8px;
  color:var(--muted);
  font-size:12.5px;
  font-weight:650;
  display:flex;
  gap:8px;
  align-items:center;
}
.listing-card__loc:before{
  content:"📍";
  font-size:13px;
  opacity:.85;
}
.listing-badge,
.badge{
  position:absolute;
  top:12px;
  left:12px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 12px;
  border-radius:999px;
  font-size:11px;
  font-weight:950;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#ffffff;
  box-shadow:0 10px 22px rgba(15,23,42,.18);
  backdrop-filter:blur(10px);
}
.listing-badge::before,
.badge::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  background:currentColor;
  box-shadow:0 0 0 3px rgba(255,255,255,.18);
  opacity:.95;
}
.listing-badge--premium,
.badge--premium{
  color:#fff7d6;
  background:linear-gradient(135deg,#1f2937 0%,#7c3aed 42%,#f59e0b 100%);
  box-shadow:0 14px 34px rgba(124,58,237,.24), 0 10px 24px rgba(245,158,11,.18);
}
.listing-badge--premium::before,
.badge--premium::before{
  background:#fef08a;
}
.listing-badge--new,
.badge--new{
  color:#ffffff;
  background:linear-gradient(180deg,#38bdf8,#2563eb);
  box-shadow:0 12px 26px rgba(37,99,235,.22);
}
.listing-badge--new::before,
.badge--new::before{
  background:#dbeafe;
}
@media(max-width:900px){
  .listings-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .listings-grid{grid-template-columns:1fr}
  .listing-card img{height:190px}
}

.sectionHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:18px 0 12px}
.sectionTitle{
  font-weight:950;
  font-size:20px;
  margin:0;
  letter-spacing:-.02em;
  color:var(--text);
}
.sectionHint{margin-top:6px;color:var(--muted);font-weight:650;font-size:13px}
.cards{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:22px;
}
.card{
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
  border:1px solid rgba(15,23,42,.08);
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(15,23,42,.08), 0 2px 8px rgba(15,23,42,.04);
  text-decoration:none;
  color:inherit;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  position:relative;
}
.card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:24px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
  pointer-events:none;
}
.card:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 60px rgba(15,23,42,.14), 0 8px 20px rgba(15,23,42,.06);
  border-color:rgba(37,99,235,.18);
}
.card--premium,
.listing-card--premium{
  border-color:rgba(245,158,11,.52);
  background:linear-gradient(180deg,#fffdf7 0%, #ffffff 24%, #fbfdff 100%);
  box-shadow:0 22px 52px rgba(124,58,237,.14), 0 12px 30px rgba(245,158,11,.18);
}
.card--premium::before,
.listing-card--premium::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:24px;
  padding:1px;
  background:linear-gradient(135deg, rgba(245,158,11,.65), rgba(124,58,237,.55), rgba(255,255,255,.15));
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}
.card--premium::after,
.listing-card--premium::after{
  content:"";
  position:absolute;
  inset:auto 18px 0 18px;
  height:18px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(245,158,11,.26), rgba(245,158,11,0) 72%);
  filter:blur(10px);
  pointer-events:none;
}
.card--premium:hover,
.listing-card--premium:hover{
  transform:translateY(-8px);
  box-shadow:0 28px 64px rgba(124,58,237,.16), 0 14px 34px rgba(245,158,11,.16);
  border-color:rgba(245,158,11,.48);
}
.premiumFlag{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:10px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(245,158,11,.28);
  background:linear-gradient(180deg,rgba(255,248,220,.92),rgba(255,255,255,.96));
  color:#7c2d12;
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  box-shadow:0 10px 22px rgba(245,158,11,.08);
}
.premiumFlag::before{
  content:"★";
  color:#f59e0b;
  font-size:12px;
  line-height:1;
}

.premiumRibbon{
  position:absolute;
  top:14px;
  right:-34px;
  z-index:3;
  min-width:148px;
  padding:8px 40px;
  text-align:center;
  font-size:11px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#fff;
  background:linear-gradient(135deg,#f59e0b 0%,#ea580c 55%,#7c3aed 100%);
  box-shadow:0 16px 28px rgba(124,58,237,.22);
  transform:rotate(36deg);
  pointer-events:none;
}
.premiumRibbon::before{
  content:"★";
  margin-right:6px;
}
.card--premium .card__title,
.listing-card--premium .listing-card__title{
  color:#3b0764;
}
.card--premium .price,
.listing-card--premium .listing-card__price{
  color:#7c2d12;
}
.card--premium .card__img::after,
.listing-card--premium > img + .listing-card__body::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(124,58,237,.08),rgba(245,158,11,.04) 32%,rgba(255,255,255,0));
  pointer-events:none;
}
.listing-card--premium > img + .listing-card__body::before{display:none;}
.card--premium .card__img{position:relative;}

@media(max-width:640px){
  .premiumRibbon{
    right:-42px;
    min-width:132px;
    padding:7px 34px;
    font-size:10px;
  }
}
.card__img{
  height:186px;
  background:linear-gradient(135deg,#edf3f9 0%,#e2e8f0 100%);
  position:relative;
  overflow:hidden;
}
.card__img:empty::after{
  content:"Brak zdjęcia";
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#64748b;
  font-weight:800;
  letter-spacing:.02em;
  background:radial-gradient(circle at top left, rgba(255,255,255,.75), rgba(255,255,255,0) 42%);
}
.card__img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transform:scale(1.001);
  transition:transform .35s ease, filter .35s ease;
}
.card:hover .card__img img{
  transform:scale(1.045);
  filter:saturate(1.03) contrast(1.02);
}
.card__img::before{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:46%;
  background:linear-gradient(180deg, rgba(15,23,42,0) 0%, rgba(15,23,42,.16) 100%);
  pointer-events:none;
  opacity:.9;
}
.card__body{
  padding:16px 16px 18px;
}
.card__title{
  font-weight:900;
  margin-bottom:8px;
  color:#0f172a;
  font-size:19px;
  line-height:1.3;
  letter-spacing:-.02em;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  min-height:74px;
}
.card__meta{
  font-size:13px;
  color:#64748b;
  font-weight:700;
  line-height:1.45;
  min-height:38px;
}
.card__priceRow{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(148,163,184,.20);
}
.price{
  font-weight:950;
  font-size:24px;
  color:#0f172a;
  letter-spacing:-.03em;
}

.card__views{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.24);
  color:#475569;
  font-size:13px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
.card__views.is-empty{
  color:#94a3b8;
}

@media(max-width:900px){
  .cards{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .cards{grid-template-columns:1fr}
  .card__img{height:210px}
  .card__title{font-size:18px;min-height:auto}
  .price{font-size:22px}
}

/* ================== HOME: 20 ogłoszeń (5x4) + strzałki ================== */
.cardsNav{
  position:relative;
  display:block;
  padding:0 78px; /* miejsce na strzałki */
}

.cardsNav__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  width:58px;
  height:58px;
  border-radius:999px;
  /* brand 1:1 */
  background:linear-gradient(180deg,var(--brand2),var(--brand));
  border:1px solid #1f4f97;
  color:#fff;
  box-shadow:0 16px 34px rgba(47,102,184,.24);
  text-decoration:none;
  transition:transform .14s ease, box-shadow .14s ease, filter .14s ease, opacity .14s ease;
  z-index:5;
  overflow:hidden;
}
.cardsNav__arrow::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(255,255,255,.45), rgba(255,255,255,0) 55%);
  opacity:.18;
  transform:translateX(-22%);
  transition:opacity .14s ease, transform .24s ease;
  pointer-events:none;
}
.cardsNav__arrow svg{width:30px;height:30px; position:relative; z-index:1}
.cardsNav__arrow:hover{
  box-shadow:0 18px 40px rgba(47,102,184,.34);
  filter:saturate(1.05);
}
.cardsNav__arrow:hover::before{opacity:.32; transform:translateX(0)}
.cardsNav__arrow:active{transform:translateY(-50%) scale(.98)}
.cardsNav__arrow:focus-visible{
  outline:3px solid rgba(47,102,184,.32);
  outline-offset:3px;
}
.cardsNav__arrow.is-disabled{
  opacity:.18;
  pointer-events:none;
  filter:grayscale(.35);
}

.cardsNav__arrow--left{left:12px}
.cardsNav__arrow--right{right:12px}
.cardsNav__arrow--left:hover{transform:translateY(-50%) scale(1.04) translateX(-2px)}
.cardsNav__arrow--right:hover{transform:translateY(-50%) scale(1.04) translateX(2px)}


/* 5 kolumn na desktop, zachowując responsywność */
.cards.cards--home{
  grid-template-columns:repeat(5, minmax(0,1fr));
  gap:24px;
}
.cards.cards--home .card{
  min-height:100%;
}
@media(max-width:1360px){
  .cards.cards--home{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:1100px){
  .cards.cards--home{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .cardsNav{padding:0}
  .cardsNav__arrow{display:none}
  .cards.cards--home{grid-template-columns:repeat(2,1fr);gap:18px}
}
@media(max-width:600px){
  .cards.cards--home{grid-template-columns:1fr;gap:16px}
}

/* ================== FOOTER ================== */
.footer{
  margin-top:34px;
  border-top:1px solid rgba(255,255,255,.10);
  background:#0b1220;
  color:#cbd5e1;
}
.footer__inner{
  padding:28px 0;
  display:flex;
  justify-content:space-between;
  font-size:13px;
  color:#cbd5e1;
}
.footer__inner--grid{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr 1fr;
  gap:22px;
  align-items:start;
}
.footer__brand{font-weight:950;color:#ffffff;margin-bottom:8px;font-size:14px;letter-spacing:.2px}
.footer__tagline{color:#94a3b8;line-height:1.6;max-width:520px}
.footer__title{font-weight:900;color:#ffffff;margin:0 0 10px;font-size:13px;letter-spacing:.3px;text-transform:uppercase}
.footer__links{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.footer__links a{text-decoration:none;color:#e2e8f0}
.footer__links a:hover{text-decoration:none;color:#ffffff}
.footer__social{display:inline-flex;align-items:center;gap:10px}
.footer__socialIcon{
  width:26px;height:26px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
  color:#ffffff;
  font-weight:950;
  font-family:ui-sans-serif, system-ui;
}
.footer__hint{margin-top:10px;font-size:12px;color:#64748b}
.footer__bottom{border-top:1px solid rgba(255,255,255,.08);background:#070c16}
.footer__bottomInner{
  padding:12px 0;
  display:flex;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  font-size:12px;
  color:#94a3b8;
}

@media(max-width:768px){
  .footer__inner--grid{grid-template-columns:1fr}
}


/* ================== MOBILE NAV ================== */
@media (max-width: 768px){
  .topbar__inner{height:auto; padding:10px 0; gap:10px}
  .navToggle{display:inline-flex; align-items:center; justify-content:center}

  /* na mobile menu spada pod topbar i jest zwijane */
  .nav{
    position:absolute;
    left:0;
    right:0;
    top:64px;
    margin:0;
    padding:10px 18px;
    background:#fff;
    border-bottom:1px solid #dbe3ee;
    box-shadow:0 8px 18px rgba(0,0,0,.08);
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:6px;

    max-height:0;
    overflow:hidden;
    visibility:hidden;
    transition:max-height .2s ease;
    z-index:50;
  }
  .nav.nav--open{
    max-height:60vh;
    visibility:visible;
  }
  .nav a, .linklike{width:100%; text-align:left}

  /* unikaj przykrywania treści po rozwinięciu menu */
  body.navOpen main{padding-top:64px}
}

/* ================== PANEL ================== */
.shell{
  display:grid;
  grid-template-columns:240px 1fr;
  gap:18px;
  margin:18px 0;
}
.sidebar{
  background:#2d3f57;
  color:#e5edf7;
  border-radius:6px;
  overflow:hidden;
}
.sidebar__brand{
  padding:14px;
  font-weight:800;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.sidebar__nav a{
  display:block;
  padding:10px 14px;
  color:#e5edf7;
  text-decoration:none;
  font-size:13px;
}
.sidebar__nav a:hover,
.sidebar__nav .active{
  background:rgba(255,255,255,.12);
}
.maincard{
  background:#fff;
  border:1px solid #dbe3ee;
  border-radius:6px;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  padding:16px;
}
@media(max-width:900px){
  .shell{grid-template-columns:1fr}
}
/* ================== PANEL – KOLORY (zostawiamy niebieskie w panelu) ================== */
.listingCard__title{color:#1f4f97}
.listingCard__price{color:#1f4f97}
.listingCard__meta{color:#4f83c6}
.listingCard:hover .listingCard__title{color:#1e3a8a}
/* ================== PANEL: LISTA OGŁOSZEŃ (PRO) ================== */
.listingList{margin-top:12px;display:flex;flex-direction:column;gap:10px}

.listingItem{
  background:#fff;
  border:1px solid #dbe3ee;
  border-radius:8px;
  box-shadow:0 6px 16px rgba(0,0,0,.08);
  padding:12px;
}

.listingTop{
  display:flex;
  align-items:flex-start;
  gap:12px;
}

.listingThumb{
  width:96px;
  height:64px;
  border-radius:6px;
  overflow:hidden;
  background:#eef2f6;
  border:1px solid #dbe3ee;
  flex:0 0 auto;
}
.listingThumb img{width:100%;height:100%;object-fit:cover;display:block}

.listingMain{flex:1 1 auto;min-width:220px}
.listingTitleRow{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.listingTitle{
  font-weight:900;
  font-size:15px;
  color:#1f4f97;
  margin:0;
}
.listingMeta{
  margin-top:4px;
  font-size:12px;
  color:#6b7280;
}
.listingBadges{display:flex;gap:8px;flex-wrap:wrap}

.listingRight{
  flex:0 0 auto;
  text-align:right;
  min-width:160px;
}
.listingRight .expires{
  font-size:12px;
  color:#6b7280;
}
.listingRight .expires b{color:#334155}

.listingActions{
  margin-top:10px;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.listingActions .btn{
  padding:7px 10px;
  font-size:12px;
}

.btn--danger{
  border-color:#f1c3c3 !important;
  color:#991b1b !important;
  background:#fff !important;
}

@media (max-width: 900px){
  .listingTop{flex-direction:column}
  .listingRight{min-width:unset;text-align:left;margin-top:6px}
}

/* małe poprawki "box" w panelu */
.box{border-radius:8px}

/* ================== FORMULARZE (CREATE/EDIT) ================== */
.formCard{
  background:#fff;
  border:1px solid #dbe3ee;
  border-radius:10px;
  box-shadow:0 8px 22px rgba(0,0,0,.08);
  padding:16px;
  margin-top:14px;
}

.formGrid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:12px;
}

.formRow{display:flex;flex-direction:column;gap:6px}
.formRow label{font-size:12px;font-weight:800;color:#64748b}

.input, .select, .textarea{
  width:100%;
  padding:10px 12px;
  border:1px solid #dbe3ee;
  border-radius:8px;
  font-size:14px;
  outline:none;
  background:#fff;
}

.textarea{
  min-height:220px;   /* << większy opis */
  resize:vertical;
  line-height:1.5;
}

.formSpan2{grid-column:1 / -1}

.formActions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:12px;
}

@media (max-width: 900px){
  .formGrid{grid-template-columns:1fr}
}

/* ===== LISTING SHOW (ogloszenie) ===== */
.crumbs{display:flex;gap:10px;align-items:center;color:#6b7280;font-size:13px;margin:0 0 14px}
.crumbs a{color:#2f66b8;text-decoration:none;font-weight:800}
.crumbs span{opacity:.9}

.listingShow{display:grid;grid-template-columns:1.7fr .9fr;gap:18px;align-items:start}
@media (max-width: 980px){.listingShow{grid-template-columns:1fr}}

.galleryCard{background:#fff;border:1px solid #dbe3ee;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px rgba(16,24,40,.06)}
.galleryMain{aspect-ratio:16/9;background:#f3f6fb}
.galleryMain img{width:100%;height:100%;object-fit:cover;display:block}
.galleryThumbs{display:flex;gap:10px;padding:12px;border-top:1px solid #e6edf6;overflow:auto}
.thumbBtn{border:0;background:transparent;padding:0;cursor:pointer;flex:0 0 auto}
.thumbBtn img{width:92px;height:58px;object-fit:cover;border-radius:10px;border:1px solid #dbe3ee;display:block}
.thumbBtn:hover img{transform:translateY(-1px);transition:.15s}

.contentCard{margin-top:14px;background:#fff;border:1px solid #dbe3ee;border-radius:12px;padding:16px;box-shadow:0 10px 30px rgba(16,24,40,.06)}
.titleRow{display:flex;flex-direction:column;gap:6px}
.h1{margin:0;font-size:22px;letter-spacing:-.2px}
.sub{color:#6b7280;font-size:13px}

.factsGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
@media (max-width: 720px){.factsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.fact{border:1px solid #e6edf6;border-radius:10px;padding:10px 12px;background:#f8fbff}
.fact span{display:block;color:#6b7280;font-size:12px;margin-bottom:4px}
.fact b{font-size:14px}

.section{margin-top:18px}
.h3{margin:0 0 10px;font-size:16px}
.desc{color:#111827;line-height:1.55;font-size:14px;white-space:normal}

.reportForm .formRow{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.reportForm .field{display:flex;flex-direction:column;gap:6px;min-width:220px;flex:1}
.reportForm label{font-size:12px;color:#6b7280;font-weight:800}
.reportForm input{height:42px;border:1px solid #dbe3ee;border-radius:10px;padding:0 12px;outline:none}
.reportForm input:focus{border-color:#2f66b8;box-shadow:0 0 0 4px rgba(47,102,184,.12)}

.listingShow__right{position:sticky;top:14px}
@media (max-width: 980px){.listingShow__right{position:static}}

.sideCard{background:#fff;border:1px solid #dbe3ee;border-radius:12px;padding:14px;box-shadow:0 10px 30px rgba(16,24,40,.06);display:flex;flex-direction:column;gap:12px}
.priceBox{border:1px solid #e6edf6;border-radius:12px;padding:12px;background:#f8fbff}
.priceLabel{color:#6b7280;font-size:12px;font-weight:900}
.priceValue{font-size:26px;font-weight:1000;letter-spacing:-.3px;margin-top:2px}
.priceMeta{color:#6b7280;font-size:12px;margin-top:6px}

.miniList{display:flex;flex-direction:column;gap:8px}
.miniList div{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:#6b7280}
.miniList b{color:#111827}

.sideHint{margin-top:14px;border:1px dashed #cdd8ea;border-radius:12px;padding:12px;color:#6b7280;background:rgba(248,251,255,.7)}
.sideHint b{display:block;color:#111827;margin-bottom:6px}

/* ================== ADMIN (SPÓJNY Z RESZTĄ) ================== */
.adminHeader{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:14px 0 16px;
}
.adminHeader h1{
  margin:0;
  font-size:20px;
  font-weight:1000;
  color:#1f4f97;
}
.adminHeader .adminActions{display:flex;gap:10px;flex-wrap:wrap}

.stats{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-bottom:14px;
}
.statCard{
  background:#fff;
  border:1px solid #dbe3ee;
  border-radius:12px;
  padding:14px;
  box-shadow:0 8px 22px rgba(0,0,0,.08);
}
.statLabel{font-size:12px;color:#6b7280;font-weight:900}
.statValue{font-size:28px;font-weight:1000;margin-top:4px;color:#1f4f97}

@media(max-width:1000px){ .stats{grid-template-columns:repeat(2,1fr)} }
@media(max-width:600px){ .stats{grid-template-columns:1fr} }

/* ================== TABELE (ADMIN LISTY) ================== */
.table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border:1px solid #dbe3ee;
  border-radius:12px;
  background:#fff;
  box-shadow:0 10px 30px rgba(16,24,40,.06);
}
.table th, .table td{
  padding:12px;
  border-bottom:1px solid #e6edf6;
  font-size:13px;
  vertical-align:top;
}
.table th{
  background:#f8fbff;
  color:#334155;
  font-weight:1000;
}
.table tr:last-child td{border-bottom:0}

/* ================== BADGE STATUS ================== */
.badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 9px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  border:1px solid #dbe3ee;
  background:#f8fbff;
  color:#334155;
}
.badge--new{background:#eef4ff;border-color:#cfe0ff;color:#1f4f97}
.badge--inprogress{background:#fff7ed;border-color:#fed7aa;color:#9a3412}
.badge--resolved{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}
.badge--rejected{background:#fef2f2;border-color:#fecaca;color:#991b1b}
.badge--replied{background:#ecfeff;border-color:#a5f3fc;color:#155e75}
.badge--closed{background:#f1f5f9;border-color:#dbe3ee;color:#334155}

/* ================== MESSAGE CARD (ADMIN) ================== */
.msgCard{
  background:#fff;
  border:1px solid #dbe3ee;
  border-radius:12px;
  padding:14px;
  box-shadow:0 10px 30px rgba(16,24,40,.06);
  display:flex;
  flex-direction:column;
  gap:12px;
}
.msgMeta{display:flex;gap:10px;flex-wrap:wrap;color:#6b7280;font-size:12px}
.msgBody{white-space:pre-wrap;line-height:1.5;font-size:14px;color:#111827}
.replyBox{
  border:1px solid #e6edf6;
  border-radius:12px;
  padding:12px;
  background:#f8fbff;
}
.replyBox label{font-size:12px;color:#6b7280;font-weight:900}
.replyBox textarea{
  width:100%;
  min-height:140px;
  border:1px solid #dbe3ee;
  border-radius:12px;
  padding:10px 12px;
  outline:none;
  margin-top:6px;
}
.replyBox textarea:focus{border-color:#2f66b8;box-shadow:0 0 0 4px rgba(47,102,184,.12)}

/* ===== ADMIN USERS ===== */
.adminTools{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  margin:0 0 12px;
}
.adminTools .search{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}
.adminTools .search input{
  width:min(360px, 100%);
}

.money{
  font-weight:1000;
  white-space:nowrap;
}
.money small{
  font-weight:900;
  color:#6b7280;
}
.pill{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:1000;
  border:1px solid #dbe3ee;
  background:#f8fbff;
  color:#334155;
}
.pill--ok{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}
.pill--off{background:#fef2f2;border-color:#fecaca;color:#991b1b}

/* ===== ADMIN: USERS TABLE ===== */
.tableWrap{overflow:auto;border-radius:16px;border:1px solid #e6edf7;background:#fff}
.table{width:100%;border-collapse:separate;border-spacing:0;min-width:920px}
.table thead th{
  text-align:left;
  font-size:12px;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:#64748b;
  padding:14px 14px;
  border-bottom:1px solid #e6edf7;
  background:#fbfdff;
  position:sticky;
  top:0;
  z-index:1;
}
.table tbody td{
  padding:14px 14px;
  border-bottom:1px solid #eef3fb;
  vertical-align:middle;
}
.table tbody tr:hover{background:#fbfdff}
.table--tight tbody td{padding:12px 14px}

.mono{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}

.adminTools{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  margin:0 0 12px;
}
.adminTools .search{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}
.adminTools .search input{width:min(360px, 100%)}

.uMain{display:flex;flex-direction:column;gap:4px}
.uName{font-weight:1000;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.uMeta{font-size:12px;color:#64748b;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.dot{opacity:.6}

.money{font-weight:1000;white-space:nowrap}
.money small{display:block;font-weight:800;color:#64748b;margin-top:2px}

.pill{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:1000;
  border:1px solid #dbe3ee;
  background:#f8fbff;
  color:#334155;
}
.pill--ok{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}
.pill--off{background:#fef2f2;border-color:#fecaca;color:#991b1b}

.rowActions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.inlineForm{margin:0}


/* ================== WYRÓŻNIENIE (PANEL) ================== */
.pill--featured{
  background:#fff7d6;
  border-color:#f5d27b;
  color:#7a5200;
  box-shadow:0 6px 18px rgba(193,151,24,.25);
}

/* menu wyboru pakietu wyróżnienia */
.featureWrap{position:relative;display:inline-flex;align-items:center}
.featureMenu{
  position:absolute;
  top:calc(100% + 6px);
  left:0;
  background:#fff;
  border:1px solid #dbe3ee;
  border-radius:10px;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  padding:8px;
  display:none;
  z-index:60;
  min-width:240px;
}
.featureMenu.open{display:block}
.featureMenu .btn{
  width:100%;
  text-align:left;
  margin:0 0 6px 0;
}
.featureMenu form:last-of-type .btn{margin-bottom:0}
.featureMenu small{
  display:block;
  margin-top:8px;
  color:#6b7280;
  font-size:11px;
}
.pill--featured{
  background:#fff7ed;
  border-color:#fdba74;
  color:#9a3412;
  box-shadow: 0 0 0 2px rgba(245,158,11,.25);
}

.featureWrap{ position:relative; display:inline-block; }
.featureMenu{
  display:none;
  position:absolute;
  top: calc(100% + 6px);
  left:0;
  z-index:20;
  background:#fff;
  border:1px solid #dbe3ee;
  border-radius:10px;
  padding:8px;
  box-shadow:0 10px 22px rgba(15,23,42,.12);
  white-space:nowrap;
}
.featureWrap.is-open .featureMenu{ display:block; }
.featureMenu .btn{ margin:4px; }

/* ================== AUTH (LOGIN / REGISTER) ================== */
.authWrap{
  max-width:520px;
  margin:40px auto;
  padding:0 16px;
}

.authCard{
  background:#fff;
  border:1px solid #dbe3ee;
  border-radius:10px;
  box-shadow:0 10px 30px rgba(16,24,40,.08);
  padding:22px;
}

.authTitle{
  font-size:22px;
  font-weight:900;
  margin-bottom:14px;
}

.authTabs{
  display:flex;
  gap:10px;
  margin-bottom:18px;
}

.authTabs a{
  padding:8px 14px;
  font-size:13px;
  font-weight:800;
  border-radius:6px;
  border:1px solid #dbe3ee;
  color:#2f66b8;
  text-decoration:none;
  background:#fff;
}

.authTabs a.active{
  background:#2f66b8;
  color:#fff;
  border-color:#1f4f97;
}

.authForm{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.authActions{
  margin-top:10px;
}

.authFooter{
  margin-top:14px;
  text-align:center;
  font-size:13px;
  color:#6b7280;
}
.authFooter a{
  color:#2f66b8;
  font-weight:800;
  text-decoration:none;
}
.chat-box {
    max-height: 400px;
    overflow-y: auto;
    padding: 10px;
    background: #f5f5f5;
}

.message {
    margin-bottom: 10px;
    max-width: 70%;
}

.message.admin {
    background: #e3f2fd;
    margin-left: auto;
    padding: 8px;
    border-radius: 8px;
}

.message.user {
    background: #ffffff;
    margin-right: auto;
    padding: 8px;
    border-radius: 8px;
}

.message-box {
    max-height: 320px;
    overflow-y: auto;
    padding: 12px;
    background: #fafafa;
    border: 1px solid #ddd;
}
.message-scroll{
  max-height: 260px;
  overflow-y: auto;
}

/* ================== SEO (home) ================== */
/* ================== SEO CONTENT ================== */

/* ================== SEO CONTENT (PREMIUM) ================== */

.seo-content{
  max-width: 1550px;
  margin: 70px auto 20px;
  padding: 34px 38px;
  background: linear-gradient(180deg, #ffffff 0%, #f7fafc 100%);
  border: 1px solid #e6edf3;
  border-radius: 18px;
  box-shadow: 0 10px 26px rgba(16, 24, 40, 0.06);
  color: #374151;
}

.seo-content h2{
  margin: 0 0 14px;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.2px;
  color: #111827;
  display: flex;
  align-items: center;
  gap: 10px;
}

/* mała „ikona” bez obrazków */
.seo-content h2::before{
  content: "ℹ";
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  background: #eef6ff;
  color: #1d4ed8;
  font-weight: 800;
  font-size: 16px;
  flex: 0 0 28px;
}

.seo-content p{
  margin: 0 0 12px;
  font-size: 14.5px;
  line-height: 1.85;
  color: #4b5563;
  max-width: 980px;
}

.seo-content p:last-child{
  margin-bottom: 0;
}

/* delikatny „pasek akcentu” u góry */
.seo-content{
  position: relative;
  overflow: hidden;
}

.seo-content::after{
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  top: 0;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, #2563eb 0%, #22c55e 55%, #f59e0b 100%);
  opacity: 0.85;
}

/* Premium układ: 2 kolumny na szerokich ekranach */
@media (min-width: 900px){
  .seo-content{
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 34px;
    row-gap: 0;
  }

  .seo-content h2{
    grid-column: 1 / -1;
  }

  .seo-content p{
    max-width: none;
  }
}

/* Mobile: bez zmian w układzie (czytelnie) */
@media (max-width: 520px){
  .seo-content{
    padding: 24px 18px;
    border-radius: 14px;
  }

  .seo-content h2{
    font-size: 19px;
  }

  .seo-content p{
    font-size: 14px;
    line-height: 1.8;
  }
}
.info-page {
  padding: 40px 0;
}

.info-page h1 {
  font-size: 32px;
  margin-bottom: 20px;
}


/* ================== PAGES ================== */
.page{margin:26px 0}
.page__box{padding:18px}
.page__title{margin:0 0 8px;font-size:22px;letter-spacing:-.3px}
.page__lead{margin:0 0 18px;color:#6b7280;max-width:760px;line-height:1.5}

.terms-text--page h3{margin-top:18px}
.terms-text--page ol{padding-left:18px}
.terms-text--page p{line-height:1.6}
/* ===== PREMIUM: odstęp nagłówka "Szczegóły" w bocznym panelu ===== */
.sideCard h3,
.sideCard .h3{
  margin: 16px 0 10px;
  padding-top: 16px;
  border-top: 1px solid #e6edf6;
}

/* pierwsza sekcja bez linii */
.sideCard h3:first-of-type,
.sideCard .h3:first-of-type{
  border-top: 0;
  padding-top: 0;
  margin-top: 0;
}

/* lekki oddech między nagłówkiem a danymi */
.sideCard .miniList{ margin-top: 8px; }

.calcPro__grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:18px;
}
@media (max-width: 900px){
  .calcPro__grid{ grid-template-columns:1fr; }
}
.calcPro label{ display:block; margin:10px 0 6px; font-weight:600; }
.calcPro input, .calcPro select{
  width:100%; padding:10px 12px; border-radius:10px;
  border:1px solid rgba(255,255,255,.15); background:rgba(255,255,255,.03);
  color:inherit;
}
.calcPro__hint{ font-size:12px; opacity:.75; margin-top:6px; }
.calcPro__actions{ display:flex; gap:10px; margin-top:14px; flex-wrap:wrap; }
.calcPro__summary{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
}
@media (max-width: 900px){
  .calcPro__summary{ grid-template-columns:1fr; }
}
.calcPro__box{
  padding:14px; border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.03);
}
.calcPro__label{ font-size:12px; opacity:.75; }
.calcPro__value{ font-size:18px; font-weight:800; margin-top:4px; }
.calcPro__sub{ font-size:12px; opacity:.75; margin-top:6px; }
.calcPro__toggle{ margin:14px 0 6px; }
.calcPro__tableWrap{ overflow:auto; border-radius:14px; border:1px solid rgba(255,255,255,.12); }
.calcPro__table{ width:100%; border-collapse:collapse; min-width:720px; }
.calcPro__table th, .calcPro__table td{
  padding:10px 12px; border-bottom:1px solid rgba(255,255,255,.08);
  text-align:left; white-space:nowrap;
}
.calcPro__table th{ font-size:12px; opacity:.8; }
.calcPro__chartWrap{
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.03);
  border-radius:14px;
  padding:10px;
  overflow:hidden;
}
/* Kalkulator kredytu SUPER PRO (opcjonalne style) */
.calcPro__grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;}
@media (max-width: 900px){.calcPro__grid{grid-template-columns:1fr;}}
.calcPro label{display:block;margin:10px 0 6px;font-weight:600;}
.calcPro input,.calcPro select{width:100%;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.03);color:inherit;}
.calcPro__hint{font-size:12px;opacity:.75;margin-top:6px;}
.calcPro__actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap;}
.calcPro__summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
@media (max-width: 900px){.calcPro__summary{grid-template-columns:1fr;}}
.calcPro__box{padding:14px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);}
.calcPro__label{font-size:12px;opacity:.75;}
.calcPro__value{font-size:18px;font-weight:800;margin-top:4px;}
.calcPro__sub{font-size:12px;opacity:.75;margin-top:6px;}
.calcPro__toggle{margin:14px 0 6px;}
.calcPro__tableWrap{overflow:auto;border-radius:14px;border:1px solid rgba(255,255,255,.12);}
.calcPro__table{width:100%;border-collapse:collapse;min-width:720px;}
.calcPro__table th,.calcPro__table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left;white-space:nowrap;}
.calcPro__table th{font-size:12px;opacity:.8;}
.calcPro__chartWrap{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);border-radius:14px;padding:10px;overflow:hidden;}

/* === Hero count badge (listings count) === */
.hero__kickerRow{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.hero__count{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  font-weight:700;
  font-size:12px;
  line-height:1;
  background:#e9f2ff;
  color:#0a5fd4;
  border:1px solid rgba(10,95,212,.15);
}

/* ===================== NEWS Z RYNKU ===================== */
.newsHero{margin:18px 0 18px 0;border-radius:22px;overflow:hidden;border:1px solid rgba(10,95,212,.12);background:linear-gradient(135deg,#0a5fd4 0%, #0b3f86 100%);}
.newsHero__inner{padding:26px 22px;color:#fff;}
.newsHero__kicker{font-weight:900;letter-spacing:.12em;font-size:12px;opacity:.9;}
.newsHero__title{margin:10px 0 8px 0;font-size:28px;line-height:1.12;letter-spacing:-.02em;}
.newsHero__subtitle{margin:0;max-width:62ch;opacity:.92;}

.newsList{display:flex;flex-direction:column;gap:14px;margin:0 0 22px 0;}
.newsCard{display:grid;grid-template-columns:240px 1fr;gap:16px;text-decoration:none;color:inherit;border:1px solid #e5e7eb;border-radius:18px;overflow:hidden;background:#fff;}
.newsCard:hover{box-shadow:0 14px 30px rgba(15,23,42,.08);transform:translateY(-1px);}
.newsCard__media{background:#f3f4f6;}
.newsCard__media img{display:block;width:100%;height:100%;object-fit:cover;}
.newsCard__body{padding:16px 16px 14px 16px;}
.newsCard__meta{display:flex;justify-content:flex-end;gap:12px;font-size:12px;color:#6b7280;margin-bottom:8px;}
.newsCard__title{margin:0 0 8px 0;font-size:18px;line-height:1.25;}
.newsCard__excerpt{margin:0;color:#374151;line-height:1.5;}
.newsCard__cta{margin-top:10px;color:#0a5fd4;font-weight:800;font-size:13px;}

@media (max-width: 860px){
  .newsCard{grid-template-columns:1fr;}
  .newsCard__media img{height:220px;}
  .newsCard__meta{justify-content:flex-start;}
}


.newsPagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px;margin:0 0 28px 0;}
.newsPagination__link{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 10px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;color:#111827;text-decoration:none;font-weight:900;font-size:13px;}
.newsPagination__link:hover{box-shadow:0 12px 22px rgba(15,23,42,.08);transform:translateY(-1px);}
.newsPagination__link.isActive{background:#0a5fd4;color:#fff;border-color:rgba(10,95,212,.22);}
.newsPagination__sep{color:#9ca3af;font-weight:800;user-select:none;}

.newsArticle{margin:16px 0 26px 0;}
.newsArticle__top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px;}
.newsBack{text-decoration:none;color:#0a5fd4;font-weight:800;}
.newsArticle__meta{display:flex;gap:12px;color:#6b7280;font-size:13px;}
.newsArticle__title{margin:8px 0 14px 0;font-size:32px;line-height:1.1;letter-spacing:-.02em;}
.newsArticle__media{border-radius:18px;overflow:hidden;border:1px solid #e5e7eb;background:#f3f4f6;}
.newsArticle__media img{display:block;width:100%;height:auto;}
.newsArticle__excerpt{font-size:18px;line-height:1.5;color:#374151;margin:14px 0 0 0;}
.wysiwyg{margin-top:14px;}
.wysiwyg h2{margin:18px 0 10px 0;font-size:22px;}
.wysiwyg p{margin:0 0 12px 0;line-height:1.7;color:#111827;}
.wysiwyg ul{margin:0 0 14px 18px;}
.wysiwyg li{margin:6px 0;}
.newsArticle__bottom{margin-top:16px;}

/* POPRAWA KONTRASTU */
.text-muted,
.small,
.card-meta,
.badge-light {
    color: #555 !important;
}

/* Placeholder */
::placeholder {
    color: #666 !important;
    opacity: 1;
}

/* Badge jasne */
.badge.bg-warning {
    color: #000 !important;
}

/* Minimalny rozmiar klikalny */
button,
.btn,
.page-link,
.pagination a,
.nav-link {
    min-height: 44px;
    min-width: 44px;
    padding: 8px 12px;
}

/* Ikony solo */
.icon-btn,
.btn-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
}

.navbar .nav-link {
    color: #222 !important;
}

.navbar .nav-link:hover {
    color: #000 !important;
}

.navbar .nav-link,
.navbar .btn {
    min-height: 44px;
    display: flex;
    align-items: center;
}
/* ================== PANEL V3 ================== */
.shell{
  display:grid;
  grid-template-columns:320px minmax(0,1fr);
  gap:24px;
  align-items:start;
  margin:24px 0 32px;
}
.sidebar--premium{
  position:sticky;
  top:18px;
  padding:18px;
  border-radius:28px;
  background:linear-gradient(180deg,#17365f 0%,#122c4e 100%);
  box-shadow:0 24px 60px rgba(14,30,53,.28);
}
.panelProfile{
  text-align:center;
  padding:8px 8px 18px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.panelProfile__avatarWrap{width:94px;height:94px;margin:0 auto 14px}
.panelProfile__avatarImage,
.panelProfile__avatarFallback{
  width:94px;height:94px;border-radius:999px;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.12);border:3px solid rgba(255,255,255,.12);color:#fff;font-size:34px;font-weight:900;object-fit:cover;
}
.panelProfile__name{font-size:24px;font-weight:900;color:#fff;letter-spacing:-.03em}
.panelProfile__email{margin-top:6px;color:rgba(231,239,250,.82);font-size:13px;word-break:break-word}
.panelNav{display:grid;gap:8px;padding:18px 0}
.panelNav__link{
  display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:16px;text-decoration:none;
  color:#edf4ff;font-weight:800;font-size:15px;transition:all .18s ease;
}
.panelNav__link:hover{background:rgba(255,255,255,.09);transform:translateX(2px)}
.panelNav__link.is-active{background:linear-gradient(90deg,rgba(59,130,246,.24),rgba(255,255,255,.08));box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.panelNav__icon{
  width:36px;height:36px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.08);font-size:16px;flex:0 0 auto
}
.panelQuickActions{display:grid;gap:10px;padding:4px 0 18px;border-bottom:1px solid rgba(255,255,255,.10)}
.panelQuickActions__btn{
  min-height:46px;display:flex;align-items:center;justify-content:center;padding:0 14px;border-radius:16px;text-decoration:none;
  background:linear-gradient(180deg,#2f66b8,#24569c);color:#fff;font-weight:900;box-shadow:0 12px 24px rgba(47,102,184,.26)
}
.panelQuickActions__btn--ghost{background:rgba(255,255,255,.08);box-shadow:none}
.panelSidebarFooter{display:grid;gap:12px;padding-top:18px}
.panelSidebarFooter__home{text-decoration:none;color:#d7e6fb;font-weight:700}
.panelLogout{
  width:100%;min-height:48px;border:0;border-radius:16px;cursor:pointer;font-size:15px;font-weight:900;color:#fff;
  background:linear-gradient(180deg,#f46d62,#dd4949);box-shadow:0 14px 28px rgba(221,73,73,.28)
}

.panelDashboard.maincard,
.maincard{
  border-radius:28px;
  border:1px solid #dbe5f1;
  background:#fff;
  box-shadow:0 18px 48px rgba(15,23,42,.08);
  padding:24px;
}
.panelHero{
  display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap;
  padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #e7edf6;
}
.panelHero__eyebrow{font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#5f7692}
.panelHero__title{margin:8px 0 0;font-size:38px;line-height:1.02;letter-spacing:-.04em;color:#10233f}
.panelHero__sub{margin:10px 0 0;max-width:720px;color:#64748b;line-height:1.6;font-weight:650}
.panelHero__actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.panelAlert{margin:0 0 16px;padding:14px 16px;border-radius:16px;font-weight:700}
.panelAlert--ok{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}
.panelAlert--err{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}

.panelStats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:18px}
.panelStat{
  background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #dfe8f2;border-radius:22px;padding:18px;box-shadow:0 10px 28px rgba(15,23,42,.05)
}
.panelStat__label{font-size:13px;color:#64748b;font-weight:800}
.panelStat__value{margin-top:8px;font-size:32px;font-weight:950;letter-spacing:-.05em;color:#10233f}
.panelGrid{display:grid;gap:18px}
.panelGrid--two{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
.panelColumnStack{display:grid;gap:18px}
.panelCard{
  background:linear-gradient(180deg,#fff,#fbfdff);border:1px solid #e1e9f3;border-radius:24px;box-shadow:0 12px 32px rgba(15,23,42,.05)
}
.panelCard--padded{padding:20px}
.panelSectionHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:16px}
.panelSectionTitle{margin:0;font-size:24px;letter-spacing:-.03em;color:#10233f}
.panelSectionSub{margin:6px 0 0;color:#64748b;font-size:14px}
.panelAccountLayout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px}
.panelAccountAside{display:grid;align-content:start;gap:12px}
.panelFieldLabel{font-size:13px;font-weight:900;color:#475569}
.panelAccountAvatar{width:108px;height:108px;border-radius:999px;object-fit:cover;border:1px solid #dbe5f1;background:#eef4fb;display:grid;place-items:center;font-size:38px;font-weight:900;color:#17365f}
.panelHint{font-size:12px;color:#64748b;line-height:1.5}
.panelMiniCard{padding:14px;border:1px solid #e1e9f3;border-radius:18px;background:#f8fbff}
.panelMiniCard__label{font-size:12px;color:#64748b;font-weight:800}
.panelMiniCard__value{margin-top:6px;font-size:24px;font-weight:950;color:#10233f;letter-spacing:-.03em}
.panelQuickGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.panelQuickTile{display:block;padding:16px;border-radius:18px;border:1px solid #e1e9f3;background:#f8fbff;text-decoration:none;color:#10233f}
.panelQuickTile strong{display:block;font-size:16px}
.panelQuickTile span{display:block;margin-top:6px;color:#64748b;font-size:13px;line-height:1.5}
.panelSummaryRow{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.panelReviews{display:grid;gap:12px}
.panelReview{padding:14px;border:1px solid #e1e9f3;border-radius:18px;background:#fff}
.panelReview__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.panelReview__name{font-weight:900;color:#10233f}
.panelReview__meta{margin-top:4px;color:#64748b;font-size:12px}
.panelReview__rating{font-weight:900;color:#17365f}
.panelReview__body{margin-top:10px;line-height:1.6;color:#334155}
.panelEmpty{padding:18px;border:1px dashed #d6e2ef;border-radius:18px;background:#f8fbff;color:#64748b}

.formSplit{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.formSpan2{grid-column:1/-1}
.formActions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
.input,.select,.textarea{border-radius:14px;border:1px solid #d7e3ef;min-height:46px}
.input:focus,.select:focus,.textarea:focus{border-color:#97b7e7;box-shadow:0 0 0 4px rgba(47,102,184,.10)}
.btn{border-radius:14px;min-height:44px;font-weight:900}
.btn--ghost{background:#f8fbff;border-color:#dbe5f0}
.pill{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;font-weight:900}
.pill--on{background:#eef4ff;border:1px solid #cfddf4;color:#17365f}

@media (max-width: 1180px){
  .shell{grid-template-columns:280px minmax(0,1fr)}
  .panelStats{grid-template-columns:repeat(3,1fr)}
  .panelGrid--two{grid-template-columns:1fr}
}
@media (max-width: 900px){
  .shell{grid-template-columns:1fr;gap:16px}
  .sidebar--premium{position:static}
  .panelStats{grid-template-columns:1fr 1fr}
  .panelAccountLayout,.formSplit,.panelQuickGrid,.panelSummaryRow{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .panelDashboard.maincard,.maincard{padding:16px;border-radius:22px}
  .panelHero__title{font-size:30px}
  .panelStats{grid-template-columns:1fr}
  .panelHero__actions .btn,.panelHero__actions .pill{width:100%}
  .formActions .btn{width:100%}
}


/* ================== PANEL V4 DASHBOARD + MODAL FIX ================== */
.shell--v4{
  grid-template-columns:320px minmax(0,1fr);
  gap:26px;
  align-items:start;
}
.panelDashboard--v4{
  padding:26px;
  overflow:hidden;
}
.panelHero--v4{
  align-items:center;
}
.panelBlock{margin-bottom:18px}
.panelStats--v4 .panelStat{
  position:relative;
  overflow:hidden;
}
.panelStats--v4 .panelStat::after{
  content:"";
  position:absolute;
  inset:auto -18px -18px auto;
  width:88px;
  height:88px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(47,102,184,.16), rgba(47,102,184,0));
}
.panelGrid--v4{align-items:start}
.panelAccountForm{display:block}
.panelAccountLayout--v4{
  grid-template-columns:240px minmax(0,1fr);
  gap:22px;
}
.panelAccountAvatar{
  width:110px;
  height:110px;
  margin-top:8px;
  border-radius:30px;
}
.panelAccountAvatar--fallback{
  display:grid;
  place-items:center;
}
.formSplit--v4 .formRow{
  display:grid;
  gap:8px;
}
.formSplit--v4 label{
  font-size:13px;
  font-weight:900;
  color:#334155;
}
.formSplit--v4 .input,
.formSplit--v4 .select{
  width:100%;
  background:#fbfdff;
}
.panelSectionTitle{line-height:1.1}
.panelReview{
  background:#fbfdff;
}

.pwModalBodyLock{
  overflow:hidden;
}
.pwModal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
}
.pwModal.is-open{
  display:block;
}
.pwModal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(9,19,35,.48);
  backdrop-filter:blur(4px);
}
.pwModal__dialog{
  position:absolute;
  top:50%;
  left:50%;
  width:min(520px, calc(100vw - 32px));
  transform:translate(-50%,-50%);
  background:#fff;
  border:1px solid #dbe5f1;
  border-radius:26px;
  box-shadow:0 30px 80px rgba(15,23,42,.28);
  padding:28px;
  z-index:1;
}
.pwModal__close{
  position:absolute;
  top:14px;
  right:14px;
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid #dbe5f1;
  background:#fff;
  cursor:pointer;
  font-size:24px;
  line-height:1;
  color:#334155;
}
.pwModal__badge{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(180deg,#eef4ff,#dbe9ff);
  font-size:24px;
  margin-bottom:14px;
}
.pwModal__title{
  margin:0;
  font-size:30px;
  line-height:1.04;
  letter-spacing:-.04em;
  color:#10233f;
}
.pwModal__text{
  margin:10px 0 0;
  color:#64748b;
  line-height:1.6;
}
.pwModal__field{
  display:grid;
  gap:8px;
  margin-top:18px;
}
.pwModal__field label{
  font-size:13px;
  font-weight:900;
  color:#334155;
}
.pwModal__input{
  width:100%;
  background:#fbfdff;
}
.pwModal__error{
  display:none;
  color:#b91c1c;
  font-size:13px;
  font-weight:700;
}
.pwModal__actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:18px;
}

@media (max-width: 1180px){
  .panelAccountLayout--v4{grid-template-columns:220px minmax(0,1fr)}
}
@media (max-width: 900px){
  .shell--v4{grid-template-columns:1fr}
  .panelAccountLayout--v4{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .panelDashboard--v4{padding:16px}
  .pwModal__dialog{padding:20px;border-radius:22px}
  .pwModal__title{font-size:24px}
  .pwModal__actions{flex-direction:column}
  .pwModal__actions .btn{width:100%}
}


/* === Content / poradniki === */
.contentHub{margin-top:32px;display:grid;gap:18px}
.contentHub__hero{padding:26px;border-radius:22px;background:linear-gradient(135deg,#f8fbff 0%,#eef4ff 100%);border:1px solid #dbe7ff;box-shadow:0 16px 40px rgba(37,99,235,.08)}
.contentHub__kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:#e8f0ff;color:#1d4ed8;font-size:12px;font-weight:800;letter-spacing:.2px;text-transform:uppercase}
.contentHub__title{margin:12px 0 10px;font-size:clamp(28px,4vw,42px);line-height:1.1}
.contentHub__lead{margin:0;max-width:820px;color:#475569;font-size:16px;line-height:1.7}
.contentHub__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.guideGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.guideCard{display:block;padding:20px;border-radius:18px;background:#fff;border:1px solid #e5e7eb;text-decoration:none;color:inherit;box-shadow:0 8px 24px rgba(15,23,42,.04);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.guideCard:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(15,23,42,.08);border-color:#bfdbfe}
.guideCard__eyebrow{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f1f5f9;color:#334155;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.3px}
.guideCard__title{margin:12px 0 8px;font-size:20px;line-height:1.25}
.guideCard__excerpt{margin:0;color:#475569;line-height:1.65}
.guideCard__cta{margin-top:14px;color:#0a5fd4;font-weight:800;font-size:14px}
.guideSection{padding:22px;border-radius:20px;background:#fff;border:1px solid #e5e7eb}
.guideSection__head{display:flex;justify-content:space-between;gap:14px;align-items:end;flex-wrap:wrap;margin-bottom:14px}
.guideSection__head p{margin:6px 0 0;color:#64748b;max-width:760px}
.infoPage__hero{padding:26px;border-radius:22px;background:linear-gradient(135deg,#f8fbff 0%,#eff6ff 100%);border:1px solid #dbeafe;box-shadow:0 16px 40px rgba(37,99,235,.08)}
.infoPage__kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:#e8f0ff;color:#1d4ed8;font-size:12px;font-weight:800;letter-spacing:.2px;text-transform:uppercase}
.infoPage__h1{margin:14px 0 10px;font-size:clamp(28px,4vw,40px);line-height:1.1}
.infoPage__lead{margin:0;max-width:820px;color:#475569;font-size:16px;line-height:1.7}
.infoPage__card{padding:22px;border-radius:18px}
.infoPage__p{margin:0 0 14px;color:#334155;line-height:1.8}
.infoPage__ul{margin:0;padding-left:20px;color:#334155;line-height:1.8}
.infoPage__ul li+li{margin-top:6px}
.infoPage__muted{margin:12px 0 0;color:#64748b;line-height:1.7}
.infoPage__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.infoPage__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.infoPage__checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px}
.infoPage__checkitem{padding:14px 16px;border-radius:16px;background:#f8fafc;border:1px solid #e5e7eb;color:#334155;line-height:1.6}
.homeGuides{margin-top:34px;display:grid;gap:18px}
.homeGuides__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.homeGuides__card{display:block;padding:18px;border-radius:18px;background:#fff;border:1px solid #e5e7eb;text-decoration:none;color:inherit;box-shadow:0 10px 28px rgba(15,23,42,.04)}
.homeGuides__card:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(15,23,42,.08)}
.homeGuides__card h3{margin:10px 0 8px;font-size:18px;line-height:1.25}
.homeGuides__card p{margin:0;color:#475569;line-height:1.65}
.homeGuides__meta{font-size:12px;font-weight:800;color:#2563eb;text-transform:uppercase;letter-spacing:.25px}
@media (max-width: 760px){.contentHub__hero,.infoPage__hero,.guideSection,.infoPage__card{padding:18px}.guideCard{padding:16px}}


.homeFaq{margin:34px 0}
.faqGrid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.9fr);gap:20px;align-items:start}
.faqList{display:grid;gap:12px}
.faqItem{background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 8px 24px rgba(15,23,42,.04);overflow:hidden}
.faqItem[open]{border-color:#bfdbfe;box-shadow:0 16px 36px rgba(15,23,42,.08)}
.faqItem__question{list-style:none;cursor:pointer;padding:18px 52px 18px 18px;font-weight:800;font-size:17px;line-height:1.4;position:relative}
.faqItem__question::-webkit-details-marker{display:none}
.faqItem__question::after{content:'+';position:absolute;right:18px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:999px;background:#eff6ff;color:#0a5fd4;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}
.faqItem[open] .faqItem__question::after{content:'−'}
.faqItem__answer{padding:0 18px 18px;color:#475569;line-height:1.7}
.faqItem__answer p{margin:0}
.faqBox{padding:22px;border-radius:22px;background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);border:1px solid #dbeafe;box-shadow:0 18px 40px rgba(10,95,212,.08);position:sticky;top:96px}
.faqBox__eyebrow{display:inline-flex;padding:6px 10px;border-radius:999px;background:#dbeafe;color:#0f172a;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.35px}
.faqBox h3{margin:14px 0 10px;font-size:24px;line-height:1.2}
.faqBox p{margin:0 0 14px;color:#475569;line-height:1.7}
.faqBox__list{margin:0 0 18px;padding-left:18px;color:#0f172a}
.faqBox__list li+li{margin-top:8px}
.faqBox__list a{text-decoration:none;font-weight:700}
.faqBox__list a:hover{text-decoration:underline}
@media (max-width: 960px){.faqGrid{grid-template-columns:1fr}.faqBox{position:static;top:auto}}
@media (max-width: 760px){.faqItem__question{padding:16px 48px 16px 16px;font-size:16px}.faqItem__answer{padding:0 16px 16px}.faqBox{padding:18px}}


/* ===== HOME FAQ + PORADNIKI: lifting wizualny ===== */
.homeFaq,
.homeGuides{position:relative}
.homeFaq::before,
.homeGuides::before{
  content:"";
  position:absolute;
  inset:10px 0 auto;
  height:220px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(246,249,255,.6));
  z-index:-1;
}
.homeGuides{margin-top:42px;padding-top:8px}
.homeGuides .sectionHeader,
.homeFaq .sectionHeader{margin-bottom:18px}
.homeGuides .sectionTitle,
.homeFaq .sectionTitle{font-size:30px;line-height:1.1;letter-spacing:-.04em}
.homeGuides .sectionHint,
.homeFaq .sectionHint{max-width:760px;color:#64748b}
.faqHero{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(300px,.9fr);
  gap:18px;
  align-items:stretch;
  margin:0 0 20px;
}
.faqHero__content,
.faqHero__stats{
  border-radius:24px;
  border:1px solid #dbeafe;
  background:linear-gradient(135deg,#f8fbff 0%,#eef4ff 55%,#ffffff 100%);
  box-shadow:0 18px 40px rgba(15,23,42,.06);
}
.faqHero__content{padding:24px 26px}
.faqHero__pill{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#dbeafe;color:#0f172a;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.faqHero__content h3{margin:12px 0 10px;font-size:30px;line-height:1.08;letter-spacing:-.04em;color:#0f172a;max-width:720px}
.faqHero__content p{margin:0;color:#475569;line-height:1.75;max-width:720px}
.faqHero__stats{padding:18px;display:grid;gap:12px}
.faqStat{padding:16px 18px;border-radius:18px;background:#fff;border:1px solid #e5eefc}
.faqStat strong{display:block;font-size:16px;color:#0f172a;margin-bottom:4px}
.faqStat span{display:block;color:#64748b;line-height:1.55;font-size:14px}
.homeGuides__lead{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) auto;
  gap:18px;
  align-items:center;
  padding:24px 26px;
  margin-bottom:18px;
  border-radius:26px;
  border:1px solid #dbeafe;
  background:linear-gradient(135deg,#f8fbff 0%,#eef4ff 55%,#ffffff 100%);
  box-shadow:0 18px 40px rgba(15,23,42,.06);
}
.homeGuides__pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  background:#dbeafe;
  color:#0f172a;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.homeGuides__lead h3{margin:12px 0 10px;font-size:30px;line-height:1.08;letter-spacing:-.04em;color:#0f172a;max-width:760px}
.homeGuides__lead p{margin:0;max-width:760px;color:#475569;line-height:1.75}
.homeGuides__leadActions{display:flex;flex-direction:column;gap:12px;align-items:flex-end}
.homeGuides__leadActions .btn{min-width:220px;justify-content:center}
.homeGuides__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.homeGuides__card{
  position:relative;
  min-height:220px;
  padding:22px;
  border-radius:22px;
  border:1px solid #e2e8f0;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
  box-shadow:0 14px 32px rgba(15,23,42,.05);
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.homeGuides__card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  background:linear-gradient(90deg,#2563eb 0%,#38bdf8 50%,#7c3aed 100%);
}
.homeGuides__card:hover{transform:translateY(-4px);border-color:#bfdbfe;box-shadow:0 22px 42px rgba(37,99,235,.12)}
.homeGuides__card h3{margin:14px 0 10px;font-size:21px;line-height:1.25;color:#0f172a}
.homeGuides__card p{font-size:14px;color:#475569;line-height:1.75}
.homeGuides__meta{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#eff6ff;color:#0a5fd4;font-size:11px;font-weight:900;letter-spacing:.08em}
.faqGrid{gap:24px}
.faqList{display:grid;gap:14px}
.faqItem{border-radius:22px}
.faqItem__question{font-size:18px}
.faqBox{border-radius:24px}
.footerCta{
  margin:8px 0 18px;
  padding:22px 24px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(135deg,rgba(14,23,38,.96),rgba(18,34,58,.96));
  box-shadow:0 18px 40px rgba(2,6,23,.28);
  display:grid;
  grid-template-columns:minmax(0,1.2fr) auto;
  gap:18px;
  align-items:center;
}
.footerCta__eyebrow{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(96,165,250,.16);color:#bfdbfe;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.footerCta h3{margin:12px 0 8px;font-size:28px;line-height:1.1;color:#fff}
.footerCta p{margin:0;color:#cbd5e1;line-height:1.7;max-width:760px}
.footerCta__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
.footerCta__actions .btn{min-width:200px;justify-content:center}
.footer__topLink{display:inline-flex;align-items:center;gap:8px;font-weight:800}
@media (max-width: 1100px){
  .homeGuides__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .homeGuides__lead,
  .footerCta,
  .faqHero{grid-template-columns:1fr}
  .homeGuides__leadActions,
  .footerCta__actions{align-items:flex-start;justify-content:flex-start}
}
@media (max-width: 760px){
  .homeGuides .sectionTitle,
  .homeFaq .sectionTitle{font-size:24px}
  .homeGuides__grid{grid-template-columns:1fr}
  .homeGuides__lead,
  .faqHero__content,
  .faqHero__stats{padding:20px}
  .homeGuides__lead h3,
  .faqHero__content h3{font-size:24px}
  .homeGuides__leadActions .btn,
  .footerCta__actions .btn{min-width:0;width:100%}
  .footerCta{padding:20px}
  .footerCta h3{font-size:24px}
}


/* FAQ compact refresh */
.faqHero--compact{grid-template-columns:1fr;margin-bottom:18px}
.faqHero--compact .faqHero__content{padding:20px 22px}
.faqHero--compact .faqHero__content h3{margin:10px 0 0;font-size:24px;max-width:none}
.faqHero__tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.faqHero__tags span{display:inline-flex;align-items:center;min-height:38px;padding:9px 14px;border-radius:999px;background:#fff;border:1px solid #dbeafe;color:#0f172a;font-size:14px;font-weight:700;box-shadow:0 8px 20px rgba(15,23,42,.05)}
.homeFaq .sectionHint{max-width:620px}
@media (max-width:760px){.faqHero--compact .faqHero__content{padding:18px}.faqHero--compact .faqHero__content h3{font-size:21px}.faqHero__tags{gap:8px}.faqHero__tags span{font-size:13px;padding:8px 12px;min-height:34px}}



.listingSwitch{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0 0 22px;padding:10px;border:1px solid #d8e2ef;border-radius:20px;background:linear-gradient(180deg,#fbfdff 0%,#f3f6fb 100%);box-shadow:0 14px 34px rgba(15,23,42,.06)}
.listingSwitch__btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 20px;border-radius:16px;border:1px solid #dbe3ee;background:#fff;color:#334155;text-decoration:none;font-weight:900;letter-spacing:-.01em;box-shadow:0 6px 16px rgba(15,23,42,.05);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease}
.listingSwitch__btn:hover{transform:translateY(-1px);background:#ffffff;border-color:#c7d6ea;color:#0f172a;box-shadow:0 12px 24px rgba(15,23,42,.10)}
.listingSwitch__btn:focus-visible{outline:none;border-color:#93c5fd;box-shadow:0 0 0 4px rgba(59,130,246,.14),0 12px 24px rgba(15,23,42,.10)}
.listingSwitch__btn.is-active{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);border-color:#93c5fd;color:#1d4ed8;box-shadow:0 14px 28px rgba(37,99,235,.18)}
.listingSwitch__icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:#eef2f7;color:#475569;font-size:14px;line-height:1;box-shadow:inset 0 0 0 1px rgba(148,163,184,.18);transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}
.listingSwitch__btn:hover .listingSwitch__icon{background:#eff6ff;color:#2563eb;transform:scale(1.05);box-shadow:inset 0 0 0 1px rgba(96,165,250,.28)}
.listingSwitch__btn.is-active .listingSwitch__icon{background:linear-gradient(135deg,#2563eb 0%,#60a5fa 100%);color:#fff;box-shadow:0 8px 18px rgba(37,99,235,.24)}
@media (max-width: 820px){
  .listingSwitch{padding:10px;gap:8px}
  .listingSwitch__btn{flex:1 1 100%;justify-content:flex-start;padding:0 16px}
}


/* Listing switcher: stronger active state, no underline */
.listingSwitch{
  padding:12px;
  gap:10px;
  border:1px solid #d6e0eb;
  border-radius:22px;
  background:linear-gradient(180deg,#ffffff 0%,#f5f7fb 100%);
  box-shadow:0 16px 34px rgba(15,23,42,.07);
}
.listingSwitch__btn,
.listingSwitch__btn:hover,
.listingSwitch__btn:focus,
.listingSwitch__btn:active,
.listingSwitch__btn.is-active,
.listingSwitch__btn span{
  text-decoration:none !important;
}
.listingSwitch__btn::before,
.listingSwitch__btn::after,
.listingSwitch__btn.is-active::before,
.listingSwitch__btn.is-active::after{
  content:none !important;
  display:none !important;
}
.listingSwitch__btn{
  min-height:56px;
  padding:0 22px;
  border-radius:18px;
  border:1px solid #dbe3ee;
  background:#fff;
  color:#334155;
  box-shadow:0 8px 20px rgba(15,23,42,.05);
}
.listingSwitch__btn:hover{
  border-color:#bfd0e4;
  background:#fff;
  color:#0f172a;
  box-shadow:0 14px 28px rgba(15,23,42,.10);
}
.listingSwitch__btn.is-active{
  border-color:#3b82f6;
  background:linear-gradient(135deg,#2563eb 0%,#60a5fa 100%);
  color:#fff;
  box-shadow:0 16px 30px rgba(37,99,235,.28);
}
.listingSwitch__btn.is-active:hover{
  color:#fff;
  border-color:#2563eb;
  box-shadow:0 18px 34px rgba(37,99,235,.32);
}
.listingSwitch__icon{
  width:36px;
  height:36px;
  background:#f1f5f9;
  color:#475569;
  box-shadow:inset 0 0 0 1px rgba(148,163,184,.18);
}
.listingSwitch__btn.is-active .listingSwitch__icon{
  background:rgba(255,255,255,.18);
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);
}
@media (max-width: 820px){
  .listingSwitch{
    padding:10px;
  }
  .listingSwitch__btn{
    min-height:52px;
    padding:0 16px;
  }
}
