/*
 Theme Name:   Soledad Child Theme
 Theme URI:    http://pencidesign.com/
 Description:  Soledad Child Theme - Made by PenciDesign
 Author:       Pencidesign
 Version:      1.0
 Author URI:   http://pencidesign.com/
 Template:     soledad
 Text Domain:  soledad
*/

/* = Theme customization go here
-------------------------------------------------------------- */


/* ===========================
   Local Directory – UI (shared)
=========================== */
.ld-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:10px 14px;
  border-radius:0;
  font-weight:900;
  text-decoration:none !important;
  border:1px solid #e6e6e6;
  background:#fff;
  color:#111;
  letter-spacing:.02em;
  cursor:pointer;
}
.ld-btn:hover{ filter:brightness(1.03); }
.ld-btn--primary{ background:#1e88e5; border-color:#1e88e5; color:#fff; }
.ld-btn--ghost{ background:transparent; border-color:#1e88e5; color:#1e88e5; }
.ld-btn--block{ width:100%; }

.ld-badge{
  display:inline-flex;
  padding:6px 10px;
  border-radius:0;
  font-weight:900;
  font-size:12px;
  background:#e7f2ff;
  color:#0b4ea2;
}
.ld-badge--dark{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
}

.ld-meta-pill{
  display:inline-flex;
  padding:6px 10px;
  border-radius:0;
  font-size:12px;
  font-weight:900;
  background:#f2f4f7;
  border:1px solid #ececec;
}
.ld-meta-pill--muted{ opacity:.85; }

.ld-surface{
  background:#fff;
  border:1px solid #eee;
  border-radius:0;
  box-shadow:0 10px 28px rgba(0,0,0,.05);
  padding:16px;
}
.ld-surface--sidebar{ margin-bottom:16px; }

.ld-h2{ margin:0 0 10px; font-size:20px; font-weight:900; }
.ld-h3{ margin:0 0 10px; font-size:16px; font-weight:900; }
.ld-ul{ margin:0; padding-left:18px; }
.ld-ul li{ margin:6px 0; }

.ld-note{
  border:1px dashed #d8e6ff;
  background:#f5faff;
  padding:12px;
  border-radius:0;
}

/* ===========================
   ARCHIVE (hero + section)
=========================== */
.ld-archive-hero{
  background:#f6f8fb;
  border-bottom:1px solid #eef1f6;
  padding:22px 0 34px;
}
.ld-archive-hero__grid{
  display:grid;
  grid-template-columns: 1.6fr 1fr;
  gap:18px;
}
@media(max-width:980px){
  .ld-archive-hero__grid{ grid-template-columns:1fr; }
}
.ld-archive-hero__title{
  margin:10px 0 10px;
  font-size:28px;
  font-weight:900;
}
.ld-archive-hero__desc{ margin:0 0 14px; opacity:.85; }
.ld-archive-hero__cta{ display:flex; gap:10px; flex-wrap:wrap; }

.ld-info-card{
  background:#fff;
  border:1px solid #eee;
  border-radius:0;
  padding:14px;
  box-shadow:0 10px 28px rgba(0,0,0,.04);
}
.ld-info-card + .ld-info-card{ margin-top:12px; }
.ld-info-card h3{ margin:0 0 6px; font-size:13px; font-weight:1000; letter-spacing:.03em; }
.ld-info-card p{ margin:0 0 10px; opacity:.85; }
.ld-mini-badge{
  display:inline-flex;
  padding:6px 10px;
  border-radius:0;
  font-weight:900;
  font-size:12px;
  background:#f2f4f7;
  border:1px solid #ececec;
}

.ld-archive-section{
  padding:34px 0 22px;
  background:#fff;
  border-top:1px solid #eef1f6;
}

.ld-archive-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.ld-archive-kicker{ font-size:11px; font-weight:900; letter-spacing:.12em; opacity:.65; }
.ld-archive-h2{ margin:0; font-size:18px; font-weight:1000; }
.ld-link{ font-weight:900; text-decoration:none !important; }

.ld-stars{ letter-spacing:1px; color:#f5b301; }
.ld-pagination{ margin-top:18px; }


/* ===========================
   ARCHIVE – sekcja firm nad wyszukiwarką
=========================== */
.ld-archive-showcase{
  position:relative;
  margin:0 0 24px;
  padding:18px;
  background:#fff;
  border:1px solid #e8edf3;
  box-shadow:0 8px 18px rgba(0,0,0,.04);
}

.ld-archive-showcase.is-loading{
  pointer-events:none;
}

.ld-archive-showcase.is-loading::after{
  content:"Ładowanie firm…";
  position:absolute;
  top:12px;
  right:12px;
  z-index:20;
  padding:8px 12px;
  background:#111827;
  color:#fff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  box-shadow:0 8px 16px rgba(0,0,0,.12);
}

.ld-archive-showcase__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin:0 0 16px;
}

.ld-archive-showcase__head > div:first-child{
  min-width:0;
  flex:1 1 auto;
}

.ld-archive-showcase__kicker{
  margin:0 0 6px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  opacity:.65;
  text-transform:uppercase;
}

.ld-archive-showcase__title{
  margin:0;
  font-size:22px;
  line-height:1.15;
  font-weight:1000;
  color:#111827;
}

.ld-archive-showcase__filters{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-wrap:nowrap;
  flex:0 0 auto;
  gap:8px;
  height:36px;
  min-height:36px;
  padding:0 14px;
  background:#fff;
  border:1px solid #dbe3ec;
  box-shadow:0 4px 10px rgba(0,0,0,.04);
  white-space:nowrap;
  line-height:1;
}

.ld-archive-showcase__filtersLabel{
  display:inline-flex;
  align-items:center;
  height:100%;
  margin:0;
  padding:0;
  color:#111827;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
  line-height:1;
}

.ld-archive-showcase__filter{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:100%;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:#64748b;
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  cursor:pointer;
  line-height:1;
  box-shadow:none;
  min-height:auto;
  text-transform:none;
  vertical-align:middle;
  appearance:none;
  -webkit-appearance:none;
}

.ld-archive-showcase__filter:hover{
  background:transparent;
  color:#1f2937;
}

.ld-archive-showcase__filter:focus-visible{
  outline:none;
  color:#1e88e5;
}

.ld-archive-showcase__filter.is-active{
  background:transparent;
  border:0;
  color:#1e88e5;
  box-shadow:none;
}

.ld-archive-showcase__filterSep{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:100%;
  margin:0;
  padding:0;
  color:#94a3b8;
  font-size:12px;
  font-weight:700;
  line-height:1;
}

@media(max-width:640px){
  .ld-archive-showcase__head{
    align-items:flex-start;
  }

  .ld-archive-showcase__filters{
    width:auto;
    max-width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding:0 12px;
  }

  .ld-archive-showcase__filtersLabel,
  .ld-archive-showcase__filter,
  .ld-archive-showcase__filterSep{
    font-size:11px;
  }
}

/* klasyczny card showcase */
.ld-showcase-card{
  height:100%;
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid #e5e7eb;
  box-shadow:0 8px 18px rgba(0,0,0,.05);
  overflow:hidden;
}

.ld-showcase-card__media{
  position:relative;
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#eef2f7;
}

.ld-showcase-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.ld-showcase-card__ph{
  width:100%;
  height:100%;
  background:#eef2f7;
}

.ld-showcase-card__badges{
  position:absolute;
  top:10px;
  left:10px;
  z-index:2;
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.ld-showcase-card__badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  font-size:11px;
  line-height:1;
  font-weight:1000;
  letter-spacing:.08em;
  color:#fff;
  text-transform:uppercase;
}

.ld-showcase-card__badge--premium{ background:#111827; }
.ld-showcase-card__badge--featured{ background:#1e88e5; }
.ld-showcase-card__badge--new{ background:#2e8b57; }

.ld-showcase-card__body{
  padding:14px;
  display:flex;
  flex-direction:column;
  flex:1;
}

.ld-showcase-card__head{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}

.ld-showcase-card__logo{
  width:48px;
  height:48px;
  min-width:48px;
  border-radius:50%;
  background:#fff;
  border:1px solid #e5e7eb;
  box-shadow:0 4px 12px rgba(0,0,0,.06);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.ld-showcase-card__logo img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}

.ld-showcase-card__ini{
  font-weight:1000;
  color:#1e88e5;
}

.ld-showcase-card__headText{
  min-width:0;
}

.ld-showcase-card__cat{
  margin:0 0 4px;
  color:#64748b;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ld-showcase-card__title{
  margin:0;
  font-size:18px;
  line-height:1.15;
  font-weight:1000;
  color:#111827;
}

.ld-showcase-card__title a{
  color:inherit;
  text-decoration:none !important;
}

.ld-showcase-card__desc{
  margin:0 0 12px;
  color:#6b7280;
  font-size:14px;
  line-height:1.55;
}

.ld-showcase-card__meta{
  margin-top:auto;
  color:#475569;
  font-size:13px;
  font-weight:700;
}

.ld-showcase-card__link{
  margin-top:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 12px;
  background:#1e88e5;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ld-showcase-card__link:hover{
  filter:brightness(1.05);
}

/* GRID SHOWCASE / magazynowy */
.ld-archive-showcase__magazine{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  grid-template-rows:repeat(2, minmax(190px, auto));
  gap:4px;
}

.ld-showcase-mag-card{
  position:relative;
  min-width:0;
  overflow:hidden;
  background:#111827;
}

.ld-showcase-mag-card--main{
  grid-column:1 / span 2;
  grid-row:1 / span 2;
  min-height:460px;
}

.ld-showcase-mag-card--top{
  grid-column:3 / span 2;
  grid-row:1;
  min-height:228px;
}

.ld-showcase-mag-card--bottom-left{
  grid-column:3;
  grid-row:2;
  min-height:228px;
}

.ld-showcase-mag-card--bottom-right{
  grid-column:4;
  grid-row:2;
  min-height:228px;
}

.ld-showcase-mag-card--extra{
  min-height:228px;
}

.ld-showcase-mag-card__media{
  position:relative;
  display:block;
  width:100%;
  height:100%;
  min-height:inherit;
  color:#fff !important;
  text-decoration:none !important;
}

.ld-showcase-mag-card__media img,
.ld-showcase-mag-card__ph{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}

.ld-showcase-mag-card__media img{
  object-fit:cover;
}

.ld-showcase-mag-card__ph{
  background:#dbe3ec;
}

.ld-showcase-mag-card__overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.26) 42%, rgba(0,0,0,.72) 100%);
  z-index:1;
}

.ld-showcase-mag-card__content{
  position:absolute;
  left:20px;
  right:20px;
  bottom:18px;
  z-index:2;
}

.ld-showcase-mag-card__label{
  display:inline-flex;
  align-items:center;
  min-height:20px;
  padding:4px 7px;
  margin:0 0 10px;
  background:rgba(17,24,39,.92);
  color:#fff;
  font-size:10px;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ld-showcase-mag-card__title{
  margin:0;
  color:#fff;
  font-weight:1000;
  line-height:1.15;
  text-shadow:0 1px 8px rgba(0,0,0,.18);
}

.ld-showcase-mag-card--main .ld-showcase-mag-card__title{
  font-size:28px;
  max-width:78%;
}

.ld-showcase-mag-card--top .ld-showcase-mag-card__title{
  font-size:22px;
  max-width:78%;
}

.ld-showcase-mag-card--bottom-left .ld-showcase-mag-card__title,
.ld-showcase-mag-card--bottom-right .ld-showcase-mag-card__title,
.ld-showcase-mag-card--extra .ld-showcase-mag-card__title{
  font-size:16px;
  max-width:92%;
}

.ld-showcase-mag-card__meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-top:10px;
  color:rgba(255,255,255,.88);
  font-size:12px;
  font-weight:700;
}

.ld-showcase-mag-card__metaBadge{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:4px 8px;
  background:rgba(255,255,255,.16);
  color:#fff;
  font-size:10px;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ld-showcase-mag-card__metaText{
  color:rgba(255,255,255,.92);
}

@media(max-width:1100px){
  .ld-archive-showcase__grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media(max-width:980px){
  .ld-archive-showcase__magazine{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    grid-template-rows:auto;
    gap:10px;
  }

  .ld-showcase-mag-card--main,
  .ld-showcase-mag-card--top,
  .ld-showcase-mag-card--bottom-left,
  .ld-showcase-mag-card--bottom-right,
  .ld-showcase-mag-card--extra{
    grid-column:auto;
    grid-row:auto;
    min-height:240px;
  }

  .ld-showcase-mag-card--main .ld-showcase-mag-card__title{
    font-size:24px;
    max-width:86%;
  }

  .ld-showcase-mag-card--top .ld-showcase-mag-card__title{
    font-size:20px;
    max-width:86%;
  }
}

@media(max-width:900px){
  .ld-archive-showcase__grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media(max-width:640px){
  .ld-archive-showcase{
    padding:14px;
  }

  .ld-archive-showcase__title{
    font-size:20px;
  }

  .ld-archive-showcase__grid{
    grid-template-columns:1fr;
  }

  .ld-archive-showcase__carouselWrap{
    grid-template-columns:1fr;
  }

  .ld-archive-showcase__nav{
    display:none;
  }

  .ld-archive-showcase__slide{
    width:260px;
    flex-basis:260px;
  }

  .ld-archive-showcase__magazine{
    grid-template-columns:1fr;
  }

  .ld-showcase-mag-card--main,
  .ld-showcase-mag-card--top,
  .ld-showcase-mag-card--bottom-left,
  .ld-showcase-mag-card--bottom-right,
  .ld-showcase-mag-card--extra{
    min-height:220px;
  }

  .ld-showcase-mag-card__content{
    left:14px;
    right:14px;
    bottom:14px;
  }

  .ld-showcase-mag-card--main .ld-showcase-mag-card__title,
  .ld-showcase-mag-card--top .ld-showcase-mag-card__title,
  .ld-showcase-mag-card--bottom-left .ld-showcase-mag-card__title,
  .ld-showcase-mag-card--bottom-right .ld-showcase-mag-card__title,
  .ld-showcase-mag-card--extra .ld-showcase-mag-card__title{
    font-size:18px;
    max-width:100%;
  }
}


/* ===========================
   ARCHIVE – AJAX search + filters
=========================== */
.ld-archive-searchWrap{
  margin:0 0 22px;
  padding:18px;
  background:#fff;
  border:1px solid #e8edf3;
  box-shadow:0 8px 18px rgba(0,0,0,.04);
}

.ld-archive-searchWrap__kicker{
  margin:0 0 14px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  opacity:.65;
  text-transform:uppercase;
}

.ld-archive-search{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto auto;
  gap:12px;
  align-items:stretch;
}

.ld-archive-search__field{
  position:relative;
  display:flex;
  align-items:center;
}

.ld-archive-search__icon{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  width:18px;
  height:18px;
  color:#94a3b8;
  pointer-events:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:0;
}

.ld-archive-search__field input{
  width:100%;
  height:52px;
  padding:0 16px 0 44px;
  border:1px solid #dbe3ec;
  background:#fff;
  border-radius:0;
  box-shadow:none;
  color:#374151;
  font-size:15px;
}

.ld-archive-search__field input:focus{
  outline:none;
  border-color:#1e88e5;
  box-shadow:0 0 0 3px rgba(30,136,229,.10);
}

.ld-archive-search__field input::placeholder{
  color:#9aa4b2;
  opacity:1;
}

.ld-archive-search .ld-btn{
  min-height:52px;
  padding-left:18px;
  padding-right:18px;
  white-space:nowrap;
}

@media(max-width:760px){
  .ld-archive-search{
    grid-template-columns:1fr;
  }

  .ld-archive-search .ld-btn{
    width:100%;
  }
}

.ld-archive-resultsMeta{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin:-2px 0 18px;
  padding:0 0 12px;
  border-bottom:1px solid #eef1f6;
}

.ld-archive-resultsMeta__count{
  font-size:14px;
  color:#4b5563;
}

.ld-archive-resultsMeta__filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ld-archive-resultsMeta__chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 10px;
  background:#f7fbff;
  border:1px solid #dbeafe;
  color:#0b4ea2;
  font-size:12px;
  font-weight:800;
}

#ld-archive-results{
  position:relative;
  min-height:120px;
  transition:opacity .18s ease;
}

#ld-archive-results.is-loading{
  opacity:.55;
  pointer-events:none;
}

#ld-archive-results.is-loading::after{
  content:"Ładowanie wyników…";
  position:absolute;
  top:10px;
  right:0;
  z-index:5;
  padding:8px 12px;
  background:#111827;
  color:#fff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  box-shadow:0 8px 16px rgba(0,0,0,.12);
}

/* ===========================
   ARCHIVE – Kategorie
=========================== */
.ld-archive-cats{
  margin:0 0 28px;
  padding:18px 0 6px;
  border-bottom:1px solid #eef1f6;
}

.ld-archive-cats__topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 14px;
}

.ld-archive-cats__kicker{
  margin:0;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  opacity:.65;
  text-transform:uppercase;
}

.ld-archive-cats__legendActions{
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
}

.ld-archive-cats__legendWrap{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}

.ld-archive-cats__legendBtn{
  height:28px;
  min-height:28px;
  box-sizing:border-box;
  padding:0;
  border:1px solid #dbe3ec;
  background:#fff;
  color:#64748b;
  font-size:14px;
  font-weight:1000;
  line-height:1;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 6px 14px rgba(0,0,0,.05);
  text-decoration:none !important;
  vertical-align:middle;
  appearance:none;
  -webkit-appearance:none;
}

.ld-archive-cats__legendBtn:hover{
  color:#1f2937;
  border-color:#cbd5e1;
  background:#fff;
}

.ld-archive-cats__legendBtn--help{
  width:28px;
  min-width:28px;
  flex:0 0 28px;
}

.ld-archive-cats__legendBtn--reset{
  width:auto;
  min-width:0;
  padding:0 12px;
  font-size:12px;
  white-space:nowrap;
}

.ld-archive-cats__legendTooltip{
  position:absolute;
  top:36px;
  right:0;
  min-width:220px;
  padding:12px 14px;
  background:#111827;
  color:#fff;
  box-shadow:0 12px 24px rgba(0,0,0,.18);
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:all .18s ease;
  z-index:20;
  pointer-events:none;
}

/* tooltip tylko dla ? */
.ld-archive-cats__legendBtn--help:hover + .ld-archive-cats__legendTooltip,
.ld-archive-cats__legendBtn--help:focus-visible + .ld-archive-cats__legendTooltip,
.ld-archive-cats__legendTooltip:hover{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}

.ld-archive-cats__legendTitle{
  font-size:12px;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin:0 0 10px;
  color:#e5e7eb;
}

.ld-archive-cats__legendItem{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:13px;
  line-height:1.35;
}

.ld-archive-cats__legendItem + .ld-archive-cats__legendItem{
  margin-top:8px;
}

.ld-archive-cats__legendDot{
  width:10px;
  height:10px;
  flex:0 0 10px;
  display:inline-block;
}

.ld-archive-cats__legendDot--biz{ background:#1e88e5; }
.ld-archive-cats__legendDot--craft{ background:#2e8b57; }

@media(max-width:640px){
  .ld-archive-cats__legendActions{
    gap:6px;
  }

  .ld-archive-cats__legendBtn--reset{
    padding:0 10px;
    font-size:11px;
  }

  .ld-archive-cats__legendTooltip{
    right:0;
    min-width:200px;
  }
}

.ld-archive-cats__legendTooltip{
  position:absolute;
  top:36px;
  right:0;
  min-width:220px;
  padding:12px 14px;
  background:#111827;
  color:#fff;
  box-shadow:0 12px 24px rgba(0,0,0,.18);
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:all .18s ease;
  z-index:20;
}

.ld-archive-cats__legendWrap:hover .ld-archive-cats__legendTooltip,
.ld-archive-cats__legendWrap:focus-within .ld-archive-cats__legendTooltip{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.ld-archive-cats__legendTitle{
  font-size:12px;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin:0 0 10px;
  color:#e5e7eb;
}

.ld-archive-cats__legendItem{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:13px;
  line-height:1.35;
}

.ld-archive-cats__legendItem + .ld-archive-cats__legendItem{
  margin-top:8px;
}

.ld-archive-cats__legendDot{
  width:10px;
  height:10px;
  flex:0 0 10px;
  display:inline-block;
}

.ld-archive-cats__legendDot--biz{ background:#1e88e5; }
.ld-archive-cats__legendDot--craft{ background:#2e8b57; }

.ld-archive-cats__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

@media(max-width:900px){
  .ld-archive-cats__grid{
    grid-template-columns:1fr;
  }
}

.ld-archive-cats__group{
  background:#fff;
  border:1px solid #e8edf3;
  box-shadow:0 8px 18px rgba(0,0,0,.04);
  padding:16px;
}

.ld-archive-cats__group--craft{
  border-top:3px solid #2e8b57;
}

.ld-archive-cats__group--biz{
  border-top:3px solid #1e88e5;
}

.ld-archive-cats__title{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.3;
  font-weight:1000;
  color:#111827;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.ld-archive-cats__list,
.ld-archive-cats__flatList{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.ld-archive-cats__item{
  margin:0;
  padding:0;
}

.ld-archive-cats__chip{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:42px;
  padding:10px 14px;
  background:#f8fafc;
  border:1px solid #e5e7eb;
  color:#1f2937;
  font-size:14px;
  line-height:1.3;
  font-weight:800;
  text-decoration:none !important;
  transition:all .18s ease;
  box-sizing:border-box;
}

.ld-archive-cats__chip:hover{
  transform:translateY(-1px);
}

.ld-archive-cats__chip--biz{
  color:#1e88e5;
  border-color:#dbeafe;
  background:#f8fbff;
}

.ld-archive-cats__chip--biz:hover{
  background:#eef6ff;
  border-color:#cfe3fb;
  color:#0b72cc;
}

.ld-archive-cats__chip--craft{
  color:#2e8b57;
  border-color:#d7eadf;
  background:#f7fcf9;
}

.ld-archive-cats__chip--craft:hover{
  background:#edf8f1;
  border-color:#cfe8d9;
  color:#256f46;
}

/* ==========================================
   ARCHIVE – aktywny filtr kategorii
   tylko oznaczenie, bez pełnego zalania
========================================== */

.ld-archive-cats__chip.is-active{
  color:inherit !important;
  transform:none;
}

/* standard / chips / boxes / carousel */
.ld-archive-cats__chip--biz.is-active{
  background:#eef6ff;
  border-color:#1e88e5;
  color:#1e88e5 !important;
  box-shadow:inset 0 0 0 1px #1e88e5;
}

.ld-archive-cats__chip--craft.is-active{
  background:#edf8f1;
  border-color:#2e8b57;
  color:#2e8b57 !important;
  box-shadow:inset 0 0 0 1px #2e8b57;
}

.ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  color:inherit;
}

/* BOXES */
.ld-archive-cats--layout-boxes .ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  background:#fff;
  color:inherit;
  border-color:currentColor;
}

/* CAROUSEL */
.ld-archive-cats--layout-carousel .ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  background:#fff;
  color:inherit;
  border-color:currentColor;
}

/* BOXES GROUPED – trzeba nadpisać bardziej szczegółowe reguły */
.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group--biz .ld-archive-cats__chip.is-active{
  background:#eef6ff;
  border-color:#1e88e5;
  color:#1e88e5 !important;
  box-shadow:inset 0 0 0 1px #1e88e5;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group--craft .ld-archive-cats__chip.is-active{
  background:#edf8f1;
  border-color:#2e8b57;
  color:#2e8b57 !important;
  box-shadow:inset 0 0 0 1px #2e8b57;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  background:#fff;
  color:inherit;
  border-color:currentColor;
}

.ld-archive-cats__icon{
  width:18px;
  height:18px;
  flex:0 0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:0;
}

.ld-archive-cats__icon svg{
  width:18px;
  height:18px;
  display:block;
}

.ld-archive-cats__label{
  display:inline-block;
}

/* ===========================
   ARCHIVE – BOXES layout (flat)
=========================== */
.ld-archive-cats--layout-boxes .ld-archive-cats__flatList{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(120px, 1fr));
  gap:12px;
  grid-auto-rows:128px;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__item{
  width:auto;
  height:100%;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__chip{
  width:100%;
  height:100%;
  min-height:0;
  padding:14px 12px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:center;
  background:#fff;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__chip--biz{
  border-color:#d8e8fb;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__chip--craft{
  border-color:#d8eadf;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  border:1px solid currentColor;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__icon svg{
  width:20px;
  height:20px;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__label{
  font-size:13px;
  line-height:1.35;
  font-weight:800;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  max-height:2.7em;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  color:#fff;
  background:transparent;
  border-color:rgba(255,255,255,.55);
}

/* ===========================
   ARCHIVE – BOXES GROUPED layout (2 kolumny)
=========================== */
.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group{
  padding:16px;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__list{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(120px, 1fr));
  gap:12px;
  grid-auto-rows:128px;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__item{
  width:auto;
  height:100%;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__chip{
  width:100%;
  height:100%;
  min-height:0;
  padding:14px 12px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:center;
  background:#fff;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group--biz .ld-archive-cats__chip{
  color:#1e88e5;
  border-color:#d8e8fb;
  background:#fff;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group--biz .ld-archive-cats__chip:hover{
  background:#eef6ff;
  border-color:#bfdaf8;
  color:#156fc2;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group--biz .ld-archive-cats__chip.is-active{
  background:#1e88e5;
  border-color:#1e88e5;
  color:#fff !important;
  box-shadow:0 8px 18px rgba(30,136,229,.22);
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group--craft .ld-archive-cats__chip{
  color:#2e8b57;
  border-color:#d8eadf;
  background:#fff;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group--craft .ld-archive-cats__chip:hover{
  background:#edf8f1;
  border-color:#c6e1d1;
  color:#256f46;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group--craft .ld-archive-cats__chip.is-active{
  background:#2e8b57;
  border-color:#2e8b57;
  color:#fff !important;
  box-shadow:0 8px 18px rgba(46,139,87,.20);
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  border:1px solid currentColor;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__icon svg{
  width:20px;
  height:20px;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__label{
  font-size:13px;
  line-height:1.35;
  font-weight:800;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  max-height:2.7em;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  color:#fff;
  background:transparent;
  border-color:rgba(255,255,255,.55);
}

/* ===========================
   ARCHIVE – CAROUSEL layout
=========================== */
.ld-archive-cats__carouselWrap{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  gap:12px;
  align-items:center;
}

.ld-archive-cats__nav{
  width:42px;
  height:42px;
  min-width:42px;
  padding:0;
  border:1px solid #dbe3ec;
  background:#fff;
  color:#111827;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 6px 14px rgba(0,0,0,.05);
}

.ld-archive-cats__nav:hover{
  background:#f8fafc;
  border-color:#cbd5e1;
}

.ld-archive-cats__viewport{
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:thin;
  scrollbar-color:#cbd5e1 #f1f5f9;
}

.ld-archive-cats__viewport::-webkit-scrollbar{
  height:8px;
}

.ld-archive-cats__viewport::-webkit-scrollbar-track{
  background:#f1f5f9;
}

.ld-archive-cats__viewport::-webkit-scrollbar-thumb{
  background:#cbd5e1;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__flatList{
  display:flex;
  flex-wrap:nowrap;
  gap:12px;
  min-width:max-content;
  align-items:stretch;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__item{
  flex:0 0 auto;
  height:128px;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__chip{
  min-width:128px;
  max-width:128px;
  width:128px;
  height:128px;
  min-height:0;
  padding:14px 12px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:center;
  background:#fff;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__chip--biz{
  border-color:#d8e8fb;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__chip--craft{
  border-color:#d8eadf;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  border:1px solid currentColor;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__icon svg{
  width:20px;
  height:20px;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__label{
  font-size:13px;
  line-height:1.35;
  font-weight:800;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  max-height:2.7em;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  color:#fff;
  background:transparent;
  border-color:rgba(255,255,255,.55);
}

@media(max-width:640px){
  .ld-archive-cats{
    margin:0 0 22px;
    padding:14px 0 2px;
  }

  .ld-archive-cats__group{
    padding:14px;
  }

  .ld-archive-cats__list{
    gap:8px;
  }

  .ld-archive-cats--layout-chips .ld-archive-cats__chip{
    width:100%;
    justify-content:flex-start;
    padding:10px 12px;
    font-size:13px;
  }

  .ld-archive-cats--layout-chips .ld-archive-cats__item{
    width:100%;
  }

  .ld-archive-cats--layout-boxes .ld-archive-cats__flatList{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
    grid-auto-rows:112px;
  }

  .ld-archive-cats--layout-boxes_grouped .ld-archive-cats__grid{
    grid-template-columns:1fr;
  }

  .ld-archive-cats--layout-boxes_grouped .ld-archive-cats__list{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
    grid-auto-rows:112px;
  }

  .ld-archive-cats--layout-boxes .ld-archive-cats__chip,
  .ld-archive-cats--layout-boxes_grouped .ld-archive-cats__chip{
    height:100%;
    min-height:0;
    padding:12px 10px;
  }

  .ld-archive-cats--layout-carousel .ld-archive-cats__item{
    height:112px;
  }

  .ld-archive-cats--layout-carousel .ld-archive-cats__chip{
    width:112px;
    min-width:112px;
    max-width:112px;
    height:112px;
    min-height:0;
    padding:12px 10px;
  }

  .ld-archive-cats--layout-boxes .ld-archive-cats__icon,
  .ld-archive-cats--layout-carousel .ld-archive-cats__icon,
  .ld-archive-cats--layout-boxes_grouped .ld-archive-cats__icon{
    width:40px;
    height:40px;
    flex-basis:40px;
  }

  .ld-archive-cats--layout-boxes .ld-archive-cats__label,
  .ld-archive-cats--layout-carousel .ld-archive-cats__label,
  .ld-archive-cats--layout-boxes_grouped .ld-archive-cats__label{
    font-size:12px;
  }

  .ld-archive-cats__carouselWrap{
    grid-template-columns:1fr;
  }

  .ld-archive-cats__nav{
    display:none;
  }

  .ld-archive-cats__legendTooltip{
    right:-6px;
    min-width:200px;
  }
}

/* ===========================
   ARCHIVE (stary grid .ld-cards – zostawione)
=========================== */
.ld-cards{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:16px;
  margin-top:18px;
}
@media(max-width:980px){ .ld-cards{ grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media(max-width:640px){ .ld-cards{ grid-template-columns: 1fr; } }

.ld-card-listing{
  background:#fff;
  border:1px solid #eee;
  border-radius:0;
  overflow:hidden;
  box-shadow:0 10px 28px rgba(0,0,0,.05);
  display:flex;
  flex-direction:column;
}
.ld-card-listing__thumb{
  position:relative;
  display:block;
  aspect-ratio: 16/10;
  overflow:hidden;
}
.ld-card-listing__thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.ld-card-listing__thumb--ph{ width:100%; height:100%; background:#eef2f7; }
.ld-card-badge{
  position:absolute;
  left:10px; top:10px;
  background:rgba(0,0,0,.55);
  color:#fff;
  padding:6px 10px;
  border-radius:0;
  font-size:11px;
  font-weight:900;
}
.ld-card-listing__body{ padding:12px; display:flex; flex-direction:column; gap:10px; flex:1; }
.ld-card-listing__meta{ display:flex; gap:8px; flex-wrap:wrap; }
.ld-card-listing__title{ margin:0; font-size:16px; font-weight:1000; }
.ld-card-listing__title a{ text-decoration:none !important; color:inherit; }
.ld-card-listing__desc{ margin:0; opacity:.85; }
.ld-card-listing__facts{ display:grid; gap:6px; }
.ld-fact{ display:flex; gap:8px; align-items:center; font-size:13px; opacity:.9; }
.ld-ico{ width:18px; display:inline-flex; justify-content:center; }
.ld-card-listing__rating{ font-size:13px; opacity:.9; display:flex; gap:8px; align-items:center; }

/* ===========================
   ARCHIVE – NOWY KAFEL
=========================== */
.ld-archive-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:16px;
  margin-top:18px;
}
@media(max-width:980px){ .ld-archive-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media(max-width:640px){ .ld-archive-grid{ grid-template-columns: 1fr; } }

.ld-archive-card{
  background:#fff;
  border:1px solid #e6e6e6;
  border-radius:0;
  overflow:hidden;
  box-shadow:0 8px 18px rgba(0,0,0,.06);
}

.ld-archive-card__media{
  position:relative;
  display:block;
  aspect-ratio: 16 / 10;
  overflow:hidden;
  border-radius:0;
}
.ld-archive-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  border-radius:0;
}
.ld-archive-card__media::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.35) 55%, rgba(0,0,0,.70) 100%);
}

.ld-archive-card__ph{
  width:100%;
  height:100%;
  background:#eef2f7;
}

.ld-archive-card__label{
  position:absolute;
  top:0;
  left:0;
  z-index:3;
  background:#1e88e5;
  color:#fff;
  font-weight:900;
  font-size:12px;
  letter-spacing:.12em;
  padding:10px 14px;
  border-radius:0;
  text-transform:uppercase;
}

.ld-archive-card__logoCircle{
  position:absolute;
  top:12px;
  right:12px;
  z-index:3;
  width:60px;
  height:60px;
  background:#fff;
  border:2px solid rgba(255,255,255,.95);
  border-radius:50%;
  box-shadow:0 6px 16px rgba(0,0,0,.18);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.ld-archive-card__logoCircle img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.ld-archive-card__ini{
  font-weight:1000;
  color:#1e88e5;
  letter-spacing:.02em;
}

.ld-archive-card__textOnImage{
  position:absolute;
  left:16px;
  right:16px;
  bottom:14px;
  z-index:3;
}
.ld-archive-card__cat{
  color:rgba(255,255,255,.92);
  font-weight:900;
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  margin-bottom:6px;
}
.ld-archive-card__title{
  color:#fff;
  font-weight:1000;
  font-size:30px;
  line-height:1.05;
  margin:0;
}

.ld-archive-card__body{
  padding:14px 16px 16px;
  border-radius:0;
}
.ld-archive-card__desc{
  margin:0 0 12px;
  color:#6b7280;
  font-size:16px;
  line-height:1.55;
}
.ld-archive-card__row{
  display:flex;
  align-items:center;
  gap:10px;
  margin:10px 0;
}
.ld-archive-ico{
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.ld-archive-card__rowText{
  font-size:15px;
  color:#374151;
}

.ld-archive-card__ratingRow{
  display:flex;
  align-items:center;
  gap:10px;
  margin:12px 0 14px;
}
.ld-archive-card .ld-stars{
  display:inline-flex;
  gap:4px;
  letter-spacing:0;
  color:inherit;
}
.ld-archive-card .ld-star{
  font-size:16px;
  line-height:1;
  color:#d1d5db;
  position:relative;
  display:inline-block;
}
.ld-archive-card .ld-star::before{
  content:"★";
  position:absolute;
  left:0;
  top:0;
  width:var(--p, 0%);
  overflow:hidden;
  color:#f5b301;
  white-space:nowrap;
}
.ld-archive-card__opinie{
  color:#6b7280;
  font-weight:700;
  font-size:14px;
}

.ld-archive-card__btn{
  display:block;
  width:100%;
  text-align:center;
  background:#1e88e5;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:1000;
  letter-spacing:.10em;
  padding:14px 12px;
  border-radius:0;
  text-transform:uppercase;
}
.ld-archive-card__btn:hover{
  filter:brightness(1.05);
}

/* ===========================
   ARCHIVE – paginacja listowa
=========================== */
.ld-pagination .page-numbers{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ld-pagination .page-numbers li{
  margin:0;
  padding:0;
}

.ld-pagination .page-numbers a,
.ld-pagination .page-numbers span{
  min-width:42px;
  height:42px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #e5e7eb;
  background:#fff;
  color:#111827;
  text-decoration:none !important;
  font-weight:800;
  transition:all .18s ease;
}

.ld-pagination .page-numbers a:hover{
  background:#eef6ff;
  border-color:#cfe3fb;
  color:#0b4ea2;
}

.ld-pagination .page-numbers .current{
  background:#1e88e5;
  border-color:#1e88e5;
  color:#fff;
}

.ld-pagination .page-numbers .dots{
  background:#f8fafc;
  color:#94a3b8;
}

/* ===========================
   SINGLE – układ w ROWACH
=========================== */

.ld-bc{ padding-top:10px; padding-bottom:8px; }
.ld-breadcrumbs{ font-size:12px; opacity:.75; }
.ld-breadcrumbs__sep{ margin:0 6px; opacity:.7; }

/* HERO */
.ld-hero-banner{
  position:relative;
  width:100%;
  min-height:450px;
  overflow:hidden;
  border:1px solid #eee;
  border-radius:0;
  box-shadow:0 10px 28px rgba(0,0,0,.05);
  background:#111;
}
.ld-hero-banner__bg{
  position:absolute;
  inset:0;
  z-index:0;
  background: var(--ld-hero-bg), linear-gradient(135deg,#111,#222);
  background-size:cover;
  background-position:center;
}
.ld-hero-banner__overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background: linear-gradient(
    180deg,
    rgba(0,0,0,0.08) 0%,
    rgba(0,0,0,0.18) 30%,
    rgba(0,0,0,0.38) 60%,
    rgba(0,0,0,0.72) 100%
  );
}
.ld-hero-banner::after{
  content:none;
}
.ld-hero-banner__top{
  position:absolute;
  top:18px;
  left:18px;
  right:18px;
  z-index:3;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
}
.ld-hero-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:38px;
  padding:0 18px;
  font-weight:1000;
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:12px;
  border-radius:0;
  white-space:nowrap;
}
.ld-hero-tag--premium{
  background:#1e88e5;
  color:#fff;
}
.ld-hero-tag--brand{
  background:#fff;
  color:#1e88e5;
  border:1px solid rgba(0,0,0,.06);
  box-shadow:0 8px 18px rgba(0,0,0,.10);
}
.ld-hero-banner__content{
  position:absolute;
  left:18px;
  bottom:18px;
  z-index:3;
  max-width:920px;
}
.ld-hero-banner__kicker{
  color:rgba(255,255,255,.70);
  font-weight:1000;
  letter-spacing:.24em;
  text-transform:uppercase;
  font-size:12px;
  margin-bottom:10px;
}
.ld-hero-banner__title{
  margin:0;
  color:#fff;
  font-weight:1000;
  line-height:1.02;
  font-size:60px;
}
.ld-hero-banner__sub{
  margin-top:10px;
  color:rgba(255,255,255,.88);
  line-height:1.6;
  font-size:18px;
  max-width:880px;
}

.ld-hero-banner__topR{
  display:flex;
  align-items:flex-start;
  gap:12px;
}

.ld-hero-manage-btn{
  width:38px;
  height:38px;
  min-width:38px;
  padding:0;
  margin: 0px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#1e88e5;
  border:1px solid rgba(0,0,0,.06);
  box-shadow:0 8px 18px rgba(0,0,0,.10);
  border-radius:0;
  cursor:pointer;
}

.ld-hero-manage-btn svg{
  width:18px;
  height:18px;
  display:block;
}

.ld-hero-manage-btn:hover{
  filter:brightness(1.03);
}

/* ROWY 50/50 */
.ld-single-rows{
  margin-top:18px;
  display:grid;
  gap:18px;
}
.ld-row{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:18px;
}
.ld-col{
  min-width:0;
}
@media(max-width:980px){
  .ld-row{ grid-template-columns:1fr; }
}

.ld-box__kicker{
  font-weight:1000;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
  opacity:.75;
  margin-bottom:10px;
}
.ld-stack{
  display:grid;
  gap:16px;
}

/* Stars (single) */
.ld-stars{
  display:inline-flex;
  gap:4px;
  letter-spacing:0;
  color:inherit;
}
.ld-star{
  font-size:16px;
  line-height:1;
  color:#d1d5db;
  position:relative;
  display:inline-block;
}
.ld-star::before{
  content:"★";
  position:absolute;
  left:0;
  top:0;
  width:var(--p, 0%);
  overflow:hidden;
  color:#f5b301;
  white-space:nowrap;
}

/* ===========================
   SINGLE – box "O firmie"
   tylko ten box
=========================== */

.ld-about-box{
  padding:18px 18px 16px;
}

.ld-about-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  margin-bottom:18px;
}

.ld-about-rating{
  display:flex;
  align-items:center;
  gap:14px;
}

.ld-about-rating .ld-stars{
  display:inline-flex;
  gap:10px;
}

.ld-about-rating .ld-star{
  font-size:22px;
  line-height:1;
}

.ld-about-rating__txt{
  font-size:18px;
  line-height:1;
  font-weight:900;
  color:#1f2937;
}

.ld-verified-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border:1px solid #eef5fb;
  background:#f7fbff;
  color:#2b78b8;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.16em;
  text-transform:uppercase;
  white-space:nowrap;
}

.ld-about-box__title{
  margin:0 0 18px;
  font-size:32px;
  line-height:1.08;
  font-weight:1000;
  color:#111827;
}

.ld-about-box__content{
  margin:0 0 22px;
  color:#5f6773;
  font-size:18px;
  line-height:1.9;
}

.ld-about-box__content p{
  margin:0 0 16px;
}

.ld-about-box__content p:last-child{
  margin-bottom:0;
}

.ld-about-box__services{
  margin-top:8px;
}

.ld-highlights{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

@media (max-width: 640px){
  .ld-highlights{
    grid-template-columns:1fr;
  }
}

.ld-highlight{
  border:1px solid #e5e7eb;
  background:#fafafa;
  padding:22px 22px 20px;
  min-height:148px;
}

.ld-highlight__title{
  margin:0 0 14px;
  color:#2b78b8;
  font-size:18px;
  line-height:1.2;
  font-weight:1000;
}

.ld-highlight__desc{
  color:#666f7b;
  font-size:14px;
  line-height:1.8;
}

.ld-service{
  border:1px solid #e5e7eb;
  background:#fff;
  padding:22px 22px 20px;
  min-height:148px;
  border-radius:0;
}

.ld-service__t{
  margin:0 0 14px;
  color:#2b78b8;
  font-size:18px;
  line-height:1.2;
  font-weight:1000;
}

.ld-service__d{
  color:#666f7b;
  font-size:17px;
  line-height:1.8;
  opacity:1;
}

/* Najważniejsze informacje */
.ld-info-box{
  padding:18px 18px 18px;
}

.ld-info-box .ld-box__kicker{
  margin-bottom:24px;
  color:#2b78b8;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.20em;
  text-transform:uppercase;
  opacity:1;
}

.ld-info-list{
  display:grid;
  gap:22px;
}

.ld-info-item{
  display:flex;
  align-items:flex-start;
  gap:14px;
}

.ld-info-ico{
  width:24px;
  height:24px;
  flex:0 0 24px;
  color:#5da2d6;
  line-height:0;
  transform:translateY(1px);
}

.ld-info-ico svg{
  display:block;
  width:24px;
  height:24px;
}

.ld-info-text{
  color:#5f6773;
  font-size:18px;
  line-height:1.55;
}

/* Box reklamowy */
.ld-promo-box{
  background:#050607;
  border-color:#050607;
  box-shadow:0 10px 28px rgba(0,0,0,.10);
  padding:34px 42px 40px;
}

.ld-promo-box__kicker{
  margin:0 0 26px;
  color:#56a8ea;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.22em;
  text-transform:uppercase;
  line-height:1.2;
}

.ld-promo-box__title{
  margin:0 0 24px;
  color:#fff;
  font-size:28px;
  line-height:1.15;
  font-weight:1000;
}

.ld-promo-box__text{
  margin:0 0 30px;
  color:rgba(255,255,255,.82);
  font-size:17px;
  line-height:1.9;
  max-width:620px;
}

.ld-promo-box__btn{
  width:auto;
  min-width:240px;
  height:58px;
  padding:0 28px;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  font-size:15px;
  letter-spacing:.04em;
}

@media (max-width: 640px){
  .ld-promo-box{
    padding:24px 22px 26px;
  }

  .ld-promo-box__title{
    font-size:24px;
  }

  .ld-promo-box__btn{
    min-width:0;
  }
}

/* Kontakt */
.ld-contact-box{
  padding:18px 18px 18px;
}

.ld-contact-box .ld-box__kicker{
  margin-bottom:24px;
  color:#2b78b8;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.20em;
  text-transform:uppercase;
  opacity:1;
}

.ld-contact-list{
  display:grid;
  gap:15px;
  margin-top:0;
}

.ld-contact-item{
  display:flex;
  align-items:flex-start;
  gap:14px;
}

.ld-ci{
  width:24px;
  height:24px;
  flex:0 0 24px;
  color:#5da2d6;
  line-height:0;
  transform:translateY(1px);
}

.ld-ci svg{
  display:block;
  width:24px;
  height:24px;
}

.ld-contact-text{
  color:#5f6773;
  font-size:18px;
  line-height:1.55;
  word-break:break-word;
}

.ld-contact-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:30px;
}

.ld-contact-btn{
  min-width:170px;
  height:58px;
  padding:0 24px;
  font-size:15px;
  letter-spacing:.03em;
}

.ld-contact-actions .ld-btn{
  width:auto;
  flex:0 0 auto;
}

/* Galeria */
.ld-gallery-box{
  padding:18px 18px 18px;
}

.ld-gallery-box__head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:18px;
}

.ld-gallery-box__ico{
  width:20px;
  height:20px;
  flex:0 0 20px;
  color:#5da2d6;
  line-height:0;
}

.ld-gallery-box__ico svg{
  display:block;
  width:20px;
  height:20px;
}

.ld-gallery-box__kicker{
  color:#2b78b8;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.20em;
  text-transform:uppercase;
  line-height:1.2;
}

.ld-gallery-mock{
  display:grid;
  gap:0;
}

.ld-g-main{
  display:block;
  border-radius:0;
  overflow:hidden;
  border:1px solid #eee;
  aspect-ratio: 16 / 7;
}

.ld-g-main img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.ld-gallery-sep{
  height:1px;
  background:#e6e6e6;
  margin:20px 0 18px;
}

.ld-g-grid2{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:20px;
}

.ld-g-item{
  display:block;
  border-radius:0;
  overflow:hidden;
  border:1px solid #eee;
  aspect-ratio: 4 / 3;
}

.ld-g-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.ld-ph{
  background:#eef2f7;
}

/* Opinie */
.ld-reviews-box{
  padding:34px 34px 32px;
}

.ld-reviews-box__kicker{
  margin:0 0 16px;
  color:#56a8ea;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.22em;
  text-transform:uppercase;
  line-height:1.2;
}

.ld-reviews-box__title{
  margin:0 0 26px;
  font-size:28px;
  line-height:1.12;
  font-weight:1000;
  color:#111827;
}

.ld-review-stats{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
  margin:0 0 28px;
}

.ld-stat{
  text-align:center;
  padding:22px 16px 18px;
  border:0;
  background:#f7fbff;
}

.ld-stat__num{
  font-size:34px;
  line-height:1;
  font-weight:1000;
  color:#1e88e5;
  margin-bottom:8px;
}

.ld-stat__lbl{
  color:#7b8794;
  font-size:12px;
  line-height:1.3;
  text-transform:none;
  opacity:1;
}

.ld-reviews-list{
  display:grid;
  gap:16px;
  margin-top:0;
}

.ld-review{
  border:1px solid #e8e8e8;
  background:#fff;
  padding:18px 18px 16px;
}

.ld-review__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}

.ld-review__meta{
  min-width:0;
}

.ld-review__author{
  font-size:18px;
  line-height:1.2;
  font-weight:1000;
  color:#111827;
}

.ld-review__date{
  margin-top:8px;
  color:#9aa3ad;
  font-size:12px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:1;
}

.ld-review__stars .ld-stars{
  display:inline-flex;
  gap:6px;
}

.ld-review__stars .ld-star{
  font-size:20px;
  line-height:1;
}

.ld-review__text{
  margin-top:18px;
  color:#5f6773;
  font-size:18px;
  line-height:1.75;
  opacity:1;
}

.ld-review__badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:18px;
  padding:8px 12px;
  background:#f7fbff;
  color:#56a8ea;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.14em;
  text-transform:uppercase;
  line-height:1.2;
}

.ld-review__badge-ico{
  width:16px;
  height:16px;
  flex:0 0 16px;
  line-height:0;
}

.ld-review__badge-ico svg{
  display:block;
  width:16px;
  height:16px;
}

@media (max-width: 640px){
  .ld-reviews-box{
    padding:24px 22px;
  }

  .ld-review-stats{
    grid-template-columns:1fr;
    gap:12px;
  }

  .ld-review__head{
    flex-direction:column;
    align-items:flex-start;
  }
}


/* Lista punktowana w karcie firmy */
.ld-about-box__services {
	margin-top: 22px;
	padding-top: 18px;
	border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.ld-offer-points {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 12px;
}

.ld-offer-points__item {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 16px;
	border-radius: 16px;
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
	border: 1px solid rgba(15, 23, 42, 0.08);
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
	color: var(--ld-text, #1f2937);
	font-size: 15px;
	line-height: 1.6;
}

/* .ld-offer-points__item::before {
	content: "";
	flex: 0 0 10px;
	width: 10px;
	height: 10px;
	margin-top: 8px;
	border-radius: 999px;
	background: linear-gradient(135deg, #2563eb, #1d4ed8);
	box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
} */

@media (max-width: 767px) {
	.ld-offer-points {
		gap: 10px;
	}

	.ld-offer-points__item {
		padding: 13px 14px;
		font-size: 14px;
		border-radius: 14px;
	}
}



/* Formularz – tylko box "Dodaj opinię" */
.ld-review-form-box{
  padding:34px 34px 32px;
}

.ld-review-form-box__kicker{
  margin:0 0 18px;
  color:#56a8ea;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.22em;
  text-transform:uppercase;
  line-height:1.2;
}

.ld-review-form-box__title{
  margin:0 0 18px;
  font-size:28px;
  line-height:1.12;
  font-weight:1000;
  color:#111827;
}

.ld-review-form-box__lead{
  margin:0 0 22px;
  color:#5f6773;
  font-size:17px;
  line-height:1.85;
}

.ld-review-form{
  display:grid;
  gap:16px;
}

.ld-review-form .ld-form-2col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

.ld-review-form input,
.ld-review-form textarea{
  width:100%;
  margin-top:0;
  border:1px solid #e5e7eb;
  background:#fff;
  border-radius:0;
  box-shadow:none;
  color:#6b7280;
  font-size:16px;
}

.ld-review-form input{
  height:56px;
  padding:0 16px;
}

.ld-review-form textarea{
  min-height:162px;
  padding:16px;
  resize:vertical;
  line-height:1.6;
}

.ld-review-form input::placeholder,
.ld-review-form textarea::placeholder{
  color:#a0a7b1;
  opacity:1;
}

.ld-review-form-box__rules{
  margin-top:0;
  padding:18px 16px;
  border:1px solid #e6eef6;
  background:#f7fbff;
  color:#5f6773;
  font-size:16px;
  line-height:1.85;
  opacity:1;
}

.ld-review-form-box__rules strong{
  color:#2b78b8;
  font-weight:1000;
}

.ld-review-form-box__btn{
  width:auto;
  min-width:282px;
  height:54px;
  padding:0 24px;
  font-size:15px;
  letter-spacing:.02em;
  align-self:start;
}

@media(max-width:640px){
  .ld-review-form-box{
    padding:24px 22px 24px;
  }

  .ld-review-form .ld-form-2col{
    grid-template-columns:1fr;
  }

  .ld-review-form-box__btn{
    min-width:0;
    width:100%;
  }
}

.ld-rules{
  margin-top:10px;
  padding:12px;
  border:1px solid #e6e6e6;
  border-radius:0;
  background:#f9fafb;
  font-size:12px;
  opacity:.85;
}

@media (max-width: 980px){
  .ld-hero-banner{ min-height:300px; }
  .ld-hero-banner__title{ font-size:44px; }
  .ld-hero-banner__sub{ font-size:15px; }
}


/* =========================================================
   FINAL FIX – showcase filter + active category states
========================================================= */

/* ===========================
   SHOWCASE – filtr w prostokącie
=========================== */
.ld-archive-showcase__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin:0 0 16px;
}

.ld-archive-showcase__head > div:first-child{
  min-width:0;
  flex:1 1 320px;
}

.ld-archive-showcase__filters{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  flex:0 0 auto;
  flex-wrap:nowrap;
  gap:8px;
  height:36px;
  min-height:36px;
  padding:0 14px;
  background:#fff;
  border:1px solid #dbe3ec;
  box-shadow:0 4px 10px rgba(0,0,0,.04);
  white-space:nowrap;
  line-height:1;
}

.ld-archive-showcase__filtersLabel{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:100%;
  margin:0;
  padding:0;
  color:#111827;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
  line-height:1;
  white-space:nowrap;
}

.ld-archive-showcase__filter{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:100%;
  margin:0;
  padding:0;
  border:0;
  background:transparent !important;
  color:#64748b;
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  line-height:1;
  min-height:auto;
  text-transform:none;
  box-shadow:none !important;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  vertical-align:middle;
}

.ld-archive-showcase__filter:hover{
  color:#1f2937;
  background:transparent !important;
}

.ld-archive-showcase__filter:focus,
.ld-archive-showcase__filter:focus-visible{
  outline:none;
  background:transparent !important;
  box-shadow:none !important;
  color:#1e88e5;
}

.ld-archive-showcase__filter.is-active{
  color:#1e88e5 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.ld-archive-showcase__filterSep{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:100%;
  margin:0;
  padding:0;
  color:#94a3b8;
  font-size:12px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
}

@media(max-width:640px){
  .ld-archive-showcase__head{
    align-items:flex-start;
  }

  .ld-archive-showcase__filters{
    width:auto;
    max-width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    padding:0 12px;
  }

  .ld-archive-showcase__filtersLabel,
  .ld-archive-showcase__filter,
  .ld-archive-showcase__filterSep{
    font-size:11px;
  }
}


/* ===========================
   KATEGORIE – aktywny filtr
   tylko oznaczenie, bez zalania
=========================== */
.ld-archive-cats__chip.is-active{
  transform:none;
  color:inherit !important;
}

/* standard / chips */
.ld-archive-cats__chip--biz.is-active{
  background:#eef6ff !important;
  border-color:#1e88e5 !important;
  color:#1e88e5 !important;
  box-shadow:inset 0 0 0 1px #1e88e5 !important;
}

.ld-archive-cats__chip--craft.is-active{
  background:#edf8f1 !important;
  border-color:#2e8b57 !important;
  color:#2e8b57 !important;
  box-shadow:inset 0 0 0 1px #2e8b57 !important;
}

.ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  color:inherit !important;
  background:#fff !important;
  border-color:currentColor !important;
}

/* BOXES */
.ld-archive-cats--layout-boxes .ld-archive-cats__chip.is-active{
  background:#fff !important;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__chip--biz.is-active{
  background:#eef6ff !important;
  border-color:#1e88e5 !important;
  color:#1e88e5 !important;
  box-shadow:inset 0 0 0 1px #1e88e5 !important;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__chip--craft.is-active{
  background:#edf8f1 !important;
  border-color:#2e8b57 !important;
  color:#2e8b57 !important;
  box-shadow:inset 0 0 0 1px #2e8b57 !important;
}

.ld-archive-cats--layout-boxes .ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  background:#fff !important;
  color:inherit !important;
  border-color:currentColor !important;
}

/* CAROUSEL */
.ld-archive-cats--layout-carousel .ld-archive-cats__chip.is-active{
  background:#fff !important;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__chip--biz.is-active{
  background:#eef6ff !important;
  border-color:#1e88e5 !important;
  color:#1e88e5 !important;
  box-shadow:inset 0 0 0 1px #1e88e5 !important;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__chip--craft.is-active{
  background:#edf8f1 !important;
  border-color:#2e8b57 !important;
  color:#2e8b57 !important;
  box-shadow:inset 0 0 0 1px #2e8b57 !important;
}

.ld-archive-cats--layout-carousel .ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  background:#fff !important;
  color:inherit !important;
  border-color:currentColor !important;
}

/* BOXES GROUPED */
.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group--biz .ld-archive-cats__chip.is-active{
  background:#eef6ff !important;
  border-color:#1e88e5 !important;
  color:#1e88e5 !important;
  box-shadow:inset 0 0 0 1px #1e88e5 !important;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__group--craft .ld-archive-cats__chip.is-active{
  background:#edf8f1 !important;
  border-color:#2e8b57 !important;
  color:#2e8b57 !important;
  box-shadow:inset 0 0 0 1px #2e8b57 !important;
}

.ld-archive-cats--layout-boxes_grouped .ld-archive-cats__chip.is-active .ld-archive-cats__icon{
  background:#fff !important;
  color:inherit !important;
  border-color:currentColor !important;
}


/* ==========================================
   FINAL OVERRIDE – reset + ? alignment
========================================== */

.ld-archive-cats__topbar{
  align-items:center;
}

.ld-archive-cats__legendActions{
  display:flex;
  align-items:stretch;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:nowrap;
}

.ld-archive-cats__legendWrap{
  position:relative;
  display:flex;
  align-items:stretch;
  justify-content:center;
  flex:0 0 auto;
}

.ld-archive-cats__legendBtn{
  display:flex;
  align-items:center;
  justify-content:center;
  height:32px;
  min-height:32px;
  margin:0;
  padding:0 12px;
  box-sizing:border-box;
  border:1px solid #dbe3ec;
  background:#fff;
  color:#64748b;
  font-family:inherit;
  font-size:12px;
  font-weight:900;
  line-height:1;
  text-decoration:none !important;
  white-space:nowrap;
  box-shadow:0 6px 14px rgba(0,0,0,.05);
  appearance:none;
  -webkit-appearance:none;
}

.ld-archive-cats__legendBtn:hover{
  color:#1f2937;
  border-color:#cbd5e1;
  background:#fff;
}

.ld-archive-cats__legendBtn--reset{
  min-width:auto;
  padding:0 12px;
}

.ld-archive-cats__legendBtn--help{
  width:32px;
  min-width:32px;
  padding:0;
  font-size:14px;
}

.ld-archive-cats__legendTooltip{
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  min-width:220px;
  padding:12px 14px;
  background:#111827;
  color:#fff;
  box-shadow:0 12px 24px rgba(0,0,0,.18);
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:opacity .18s ease, visibility .18s ease, transform .18s ease;
  z-index:30;
  pointer-events:none;
}

/* kasuje stary hover całego wrappera */
.ld-archive-cats__legendActions .ld-archive-cats__legendWrap:hover .ld-archive-cats__legendTooltip,
.ld-archive-cats__legendActions .ld-archive-cats__legendWrap:focus-within .ld-archive-cats__legendTooltip{
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  pointer-events:none;
}

/* tooltip tylko dla ? */
.ld-archive-cats__legendActions .ld-archive-cats__legendBtn--help:hover + .ld-archive-cats__legendTooltip,
.ld-archive-cats__legendActions .ld-archive-cats__legendBtn--help:focus-visible + .ld-archive-cats__legendTooltip,
.ld-archive-cats__legendActions .ld-archive-cats__legendTooltip:hover{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}

@media(max-width:640px){
  .ld-archive-cats__legendActions{
    width:100%;
    justify-content:flex-start;
  }

  .ld-archive-cats__legendBtn{
    height:30px;
    min-height:30px;
  }

  .ld-archive-cats__legendBtn--reset{
    padding:0 10px;
    font-size:11px;
  }

  .ld-archive-cats__legendBtn--help{
    width:30px;
    min-width:30px;
    font-size:13px;
  }

  .ld-archive-cats__legendTooltip{
    right:0;
    min-width:200px;
  }
}

/* FIX: usuń podwójny punktor w liście oferty */
.ld-offer-points__item::before{
	content: none !important;
	display: none !important;
}

.ld-offer-points__dot{
	width: 10px;
	height: 10px;
	flex: 0 0 10px;
	margin-top: 8px;
	border-radius: 999px;
	background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
	box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
}