.vk-indigo-category main {
  --ink: #151632;
  --accent: #4c39d7;
  --muted: #525970;
  --line: #e1e3f0;
  --paper: #f8f8fe;
  background: #fafafe;
  color: var(--ink);
  font-family: Inter, "DM Sans", Arial, sans-serif;
  padding-bottom: 1px;
}
.vk-indigo-category main .wrap { width: min(1170px, calc(100% - 48px)); }
.vk-indigo-category main :is(h1, h2, h3) { font-family: Geist, Inter, Arial, sans-serif; }
.vk-indigo-category main :is(a, button):focus-visible { outline: 2px solid #4c39d7; outline-offset: 3px; }
.vk-indigo-category .breadcrumb {
  margin-top: 20px;
  margin-bottom: 18px;
  gap: 10px;
  color: var(--muted);
}
.vk-indigo-category .breadcrumb a { color: var(--accent); }
.vk-indigo-category .breadcrumb a:hover { text-decoration: underline; }
.vk-indigo-category .category-hero {
  display: grid;
  position: relative;
  overflow: hidden;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 290px);
  gap: 26px;
  align-items: end;
  padding: clamp(22px, 3.5vw, 42px);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 19px;
}
.vk-indigo-category .category-hero::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: #4c39d7;
}
.vk-indigo-category .category-kicker {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 14px;
  margin-bottom: 13px;
}
.vk-indigo-category .category-kicker .eyebrow { margin: 0; }
.vk-indigo-category .category-title-stamp {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 7px;
  border-radius: 5px;
  background: #292056;
  color: #fff;
  font-size: 9px;
  line-height: 1.35;
  font-weight: 800;
  letter-spacing: .08em;
  transform: rotate(-4deg);
}
.vk-indigo-category .category-title-stamp::before {
  content: '';
  width: 9px;
  height: 8px;
  background: linear-gradient(#fff,#fff) left bottom / 2px 4px,
    linear-gradient(#fff,#fff) center bottom / 2px 6px,
    linear-gradient(#fff,#fff) right bottom / 2px 8px;
  background-repeat: no-repeat;
}
.vk-indigo-category .category-hero h1 {
  font-size: clamp(41px, 5.5vw, 76px);
  line-height: 1.03;
  letter-spacing: -.055em;
}
.vk-indigo-category .category-hero .highlight {
  color: var(--accent);
  background: transparent;
}
.vk-indigo-category .category-hero p { margin-top: 15px; max-width: 51ch; }
.vk-indigo-category .category-hero .hero-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 15px;
  font-size: 13px;
}
.vk-indigo-category .category-hero .hero-checks span::before { content: none; }
.vk-indigo-category .category-hero .hero-checks svg { width: 15px; height: 15px; color: var(--accent); }
.vk-indigo-category .category-review {
  display: grid;
  justify-items: start;
  gap: 8px;
  min-width: 0;
  margin: 0;
  padding: clamp(15px, 2vw, 22px);
  border: 1px solid #3d336c;
  border-radius: 12px;
  background: #211b3c;
  color: #fff;
}
.vk-indigo-category .category-stars { color: #ffcf73; font-size: 16px; line-height: 1; letter-spacing: .16em; }
.vk-indigo-category .category-review q {
  font: 700 clamp(17px, 2vw, 21px)/1.3 Geist, Inter, sans-serif;
  letter-spacing: -.03em;
}
.vk-indigo-category .category-review figcaption a {
  color: #e1dbfb;
  font-size: 12px;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.vk-indigo-category .category-review a:focus-visible { outline-color: #fff; }
.vk-indigo-category .catalog { padding-block: clamp(35px, 5.2vw, 69px); }
.vk-indigo-category .catalog-toolbar { align-items: center; flex-wrap: wrap; gap: 9px 18px; }
.vk-indigo-category .filters { display: flex; flex-wrap: wrap; gap: 6px; }
.vk-indigo-category .filters button {
  min-height: 41px;
  padding: 7px 12px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 650;
  color: var(--ink);
  background: #fff;
  border: 1px solid var(--line);
}
.vk-indigo-category .filters button:hover { border-color: var(--accent); }
.vk-indigo-category .filters button[aria-pressed=true] { background: var(--ink); border-color: var(--ink); color: #fff; }
.vk-indigo-category .result-count { color: var(--muted); margin: 12px 0 9px; }
.vk-indigo-category #catalog-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.vk-indigo-category #catalog-cards .service-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
  gap: 8px;
  padding: clamp(15px, 2vw, 23px);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
}
.vk-indigo-category #catalog-cards .service-card[hidden] { display: none; }
.vk-indigo-category #catalog-cards .service-card:hover { border-color: #9e8ded; box-shadow: 0 6px 22px #40318315; transform: none; }
.vk-indigo-category .service-card h3 { font-size: clamp(17px, 2vw, 24px); line-height: 1.13; margin: 0; }
.vk-indigo-category .service-card > p { font-size: 13px; line-height: 1.4; }
.vk-indigo-category .category-card-note {
  align-self: flex-start;
  padding: 2px 6px;
  border: 1px solid #e2ddef;
  border-radius: 5px;
  color: #51428d;
  font-size: 10px;
  font-weight: 700;
}
.vk-indigo-category #catalog-cards.catalog-featured .service-card[data-featured] {
  border-top: 3px solid #4c39d7;
}
.vk-indigo-category .catalog-featured .service-card[data-featured] h3 {
  font-size: clamp(19px, 2.3vw, 27px);
}
.vk-indigo-category .category-price {
  color: var(--ink);
  font-size: 15px;
  line-height: 1.35;
  letter-spacing: -.018em;
}
.vk-indigo-category .category-price-prefix {
  color: var(--muted);
  font-size: 12px;
  text-decoration: none;
}
.vk-indigo-category .service-card .card-bottom {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
  padding-top: 11px;
  margin-top: auto;
  border-top: 1px solid var(--line);
  font-size: 13px;
  font-weight: 720;
  font-variant-numeric: tabular-nums;
}
.vk-indigo-category .service-card .card-cta {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  border: 1px solid #d9d2f7;
  border-radius: 7px;
  padding: 6px 11px;
  color: var(--accent);
  font-size: 12px;
  font-weight: 700;
  text-transform: none;
  white-space: nowrap;
}
.vk-indigo-category .catalog-featured .service-card[data-featured] .card-cta,
.vk-indigo-category .service-card:is(:hover,:focus-visible) .card-cta { border-color: var(--accent); background: var(--accent); color: #fff; }
.vk-indigo-category .buying-guide {
  padding-inline: clamp(17px, 3.5vw, 40px);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 15px;
}
@media (max-width: 880px) {
  .vk-indigo-category #catalog-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .vk-indigo-category .category-hero { grid-template-columns: minmax(0, 1fr); gap: 18px; }
}
@media (max-width: 610px) {
  .vk-indigo-category main .wrap { width: calc(100% - 28px); }
  .vk-indigo-category .category-hero h1 { font-size: clamp(34px, 9.8vw, 49px); }
  .vk-indigo-category .catalog-toolbar { flex-direction: row; align-items: center; }
  .vk-indigo-category #catalog-cards { grid-template-columns: 1fr; gap: 7px; }
  .vk-indigo-category #catalog-cards .service-card { padding: 13px; gap: 8px; }
}
