/* ===== Installer cards (бренды, бейджи, polish) ===== */
.card-installer{
  display:grid; gap:.8rem;
  padding: var(--s-6);
  border-radius: var(--r-lg);
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0)) padding-box,
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
  transition: transform .2s ease, box-shadow .3s ease, background .3s ease;
}
.card-installer:hover{ transform: translateY(-4px); box-shadow: 0 18px 46px rgba(0,0,0,.35) }
.card-installer__top{ display:flex; align-items:center; justify-content:space-between; gap:.8rem }
.card-installer__title{
  display:flex; align-items:center; gap:.6rem; margin:0;
  font-size: clamp(18px, 2.8vw, 22px);
}
.card-installer__logo{
  width:40px; height:40px; border-radius:10px; flex:0 0 40px;
  background: rgba(255,255,255,.06) center/cover no-repeat;
  border:1px solid var(--cs-border);
}
.card-installer__meta{ display:flex; gap:.6rem; flex-wrap:wrap }
.badge{
  display:inline-flex; align-items:center; gap:.35rem;
  padding:.3rem .55rem; border-radius:999px; font-weight:700; font-size:.8rem;
  background: rgba(255,255,255,.06); border:1px solid var(--cs-border);
  color:var(--cs-text);
}
.badge--cert{ background: rgba(56,230,182,.18); border-color: rgba(56,230,182,.35); color:#caffec }
.badge--lic{ background: rgba(255,213,77,.18); border-color: rgba(255,213,77,.35); color:#fff2c4 }
.badge--rate{ background: rgba(255,255,255,.08) }

.card-installer__excerpt{ color: var(--cs-muted); margin:.2rem 0 0 }

.card-installer__brands{
  display:flex; flex-wrap:wrap; gap:.4rem .5rem; margin-top:.3rem
}
.brand-chip{
  display:inline-flex; align-items:center; gap:.35rem;
  padding:.35rem .55rem; border-radius: 12px;
  background: rgba(255,255,255,.06); border:1px solid var(--cs-border);
  font-size:.85rem;
}
.brand-chip__ico{
  width:16px; height:16px; display:inline-block; border-radius:4px;
  background: linear-gradient(135deg, rgba(255,213,77,.35), rgba(56,230,182,.25));
}

.card-installer__bottom{
  display:flex; align-items:center; justify-content:space-between; gap:.6rem; flex-wrap:wrap; margin-top:.6rem
}
.card-installer__service{ color: var(--cs-muted); display:flex; align-items:center; gap:.4rem }
.card-installer__actions{ display:flex; gap:.5rem }

/* ===== Sticky side CTA (desktop only) ===== */
#side-cta{
  position: fixed; right: clamp(12px, 3vw, 24px); top: 26vh;
  width: 280px; z-index: 45;
  transform: translateX(calc(100% + 24px)); opacity:0; transition: transform .25s ease, opacity .2s ease;
}
#side-cta[data-show="true"]{ transform: translateX(0); opacity:1 }
#side-cta .box{
  background: linear-gradient(180deg, rgba(26,32,64,.98), rgba(21,26,51,.98));
  border:1px solid var(--cs-border-2); border-radius: 16px; padding: .9rem;
  box-shadow: 0 12px 36px rgba(0,0,0,.45);
}
#side-cta .head{ display:flex; align-items:center; gap:.6rem; margin-bottom:.6rem; color:var(--cs-text); font-weight:800 }
#side-cta .head .spark{
  width:10px; height:10px; border-radius:50%;
  background: radial-gradient(circle at 30% 30%, #ffe27a, #ffb300);
  box-shadow: 0 0 10px rgba(255,213,77,.6), 0 0 20px rgba(255,213,77,.25);
}
#side-cta .txt{ color: var(--cs-muted); margin:.2rem 0 .8rem }
#side-cta .btn{ width:100%; justify-content:center }

/* Прячем на мобайле и узких планшетах */
@media (max-width: 1200px){
  #side-cta{ display:none }
}