/*
 * Promopoisk — home page v2 (front page + listing UI v2 only).
 * Loaded by promopoisk_v3_preprocess_page() after listing-ui-v2.css (45) and
 * vacancy-card.css (55). Every selector starts with body.pp-listing-ui-v2.page-front.
 *
 * Style source: Promopoisk checklist guides (/checklist_dlya_soiskateley):
 * sky page, white sheets, Avenir Next Cyr 900 headings with one accent
 * fragment, kicker plates, outlined numerals, brand chips, amber as a marker.
 * Lower page: bento of white / blue / navy / amber panels with "see all"
 * links in the section head; pastel tones shared with the company marks.
 * Motion: the lighthouse beam sweeps over the feed (off with
 * prefers-reduced-motion).
 */

body.pp-listing-ui-v2.page-front {
  --pp-blue: #078CFF;
  --pp-blue-2: #0B62F4;
  --pp-navy: #173B72;
  --pp-ink: #070B24;
  --pp-text: #2B3445;
  --pp-muted: #485D78;
  --pp-sky: #EEF7FF;
  --pp-chip: #EDF5FF;
  --pp-beam: #B4EDFF;
  --pp-wave: #A6EAFF;
  --pp-amber: #FFBB51;
  --pp-line: #D9E6F6;
  --pp-font: 'Avenir Next Cyr', 'Avenir Next', 'AvenirNextCyr', Arial, sans-serif;
  --pp-home-w: min(calc(100% - 112px), 1280px);
  --pp-home-top: 104px;
  --pp-home-sticky: 108px;
}

/* ------------------------------------------------------------------ */
/* Page frame                                                          */
/* ------------------------------------------------------------------ */

body.pp-listing-ui-v2.page-front .app-site.pp-refresh .section-header {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
}

body.pp-listing-ui-v2.page-front .section-main-app {
  /* Reset legacy layout rules. The hero is rendered immediately before main. */
  display: block !important;
  padding-top: 0 !important;
  background: var(--pp-sky);
}

body.pp-listing-ui-v2.page-front .pp-home-hero,
body.pp-listing-ui-v2.page-front .pp-home-feed-layout,
body.pp-listing-ui-v2.page-front .pp-home-check,
body.pp-listing-ui-v2.page-front .pp-home-guides,
body.pp-listing-ui-v2.page-front .pp-home-more {
  box-sizing: border-box;
  width: var(--pp-home-w);
  margin-left: auto;
  margin-right: auto;
  font-family: var(--pp-font);
  color: var(--pp-text);
}

body.pp-listing-ui-v2.page-front .pp-home-hero {
  clear: both;
  position: relative !important;
  top: auto !important;
  z-index: 1;
  overflow: visible !important;
  margin-top: var(--pp-home-top);
}

body.pp-listing-ui-v2.page-front .pp-home-feed-layout {
  clear: both;
}

body.pp-listing-ui-v2.page-front :is(.pp-home-hero, .pp-home-feed-layout, .pp-home-check, .pp-home-guides, .pp-home-more) * {
  box-sizing: border-box;
}

/* Shared: section title with one accent fragment */
body.pp-listing-ui-v2.page-front .pp-home-section-title,
body.pp-listing-ui-v2.page-front .pp-home-check .pp-home-check__title {
  margin: 0 0 22px;
  padding: 0;
  font-family: var(--pp-font);
  font-size: 36px;
  font-weight: 900;
  line-height: 1.04;
  letter-spacing: -0.03em;
  color: var(--pp-ink);
  text-align: left;
}

body.pp-listing-ui-v2.page-front :is(.pp-home-section-title, .pp-home-check__title, .pp-home-hero__title) em {
  font-style: normal;
  color: var(--pp-blue-2);
}

body.pp-listing-ui-v2.page-front :is(.pp-home-hero, .pp-home-feed-layout, .pp-home-check, .pp-home-guides, .pp-home-more) a:focus-visible {
  outline: 3px solid var(--pp-blue-2);
  outline-offset: 3px;
  border-radius: 8px;
}

/* ------------------------------------------------------------------ */
/* First screen                                                        */
/* ------------------------------------------------------------------ */

body.pp-listing-ui-v2.page-front .pp-home-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  align-items: center;
  gap: 24px;
  padding: 20px 0 28px;
}

body.pp-listing-ui-v2.page-front .pp-home-hero__live {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px;
  padding: 5px 12px 5px 10px;
  border-radius: 999px;
  background: #fff;
  font-size: 13px;
  font-weight: 700;
  color: var(--pp-muted);
}

body.pp-listing-ui-v2.page-front .pp-home-hero__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--pp-amber);
  box-shadow: 0 0 0 4px rgba(255, 187, 81, .25);
}

body.pp-listing-ui-v2.page-front .pp-home-hero .pp-home-hero__title {
  position: static !important;
  width: auto !important;
  height: auto !important;
  clip: auto !important;
  overflow: visible !important;
  margin: 0 0 14px;
  padding: 0;
  font-family: var(--pp-font);
  font-size: 64px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.035em;
  color: var(--pp-ink);
  text-align: left;
}

body.pp-listing-ui-v2.page-front .pp-home-hero__lead {
  max-width: 560px;
  margin: 0 0 26px;
  font-size: 18px;
  line-height: 1.5;
  color: var(--pp-muted);
}

/* Search: the one primary action */
body.pp-listing-ui-v2.page-front .pp-home-search {
  position: relative;
  z-index: 5;
  margin: 0;
}

body.pp-listing-ui-v2.page-front .pp-home-search__form {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  max-width: 720px;
  margin: 0;
  padding: 6px;
  border: 1px solid var(--pp-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(23, 59, 114, .07);
  transition: border-color .15s ease, box-shadow .15s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-search__form:focus-within {
  border-color: var(--pp-blue-2);
  box-shadow: 0 12px 32px rgba(23, 59, 114, .07), 0 0 0 4px rgba(11, 98, 244, .14);
}

body.pp-listing-ui-v2.page-front .pp-home-search__icon {
  position: absolute;
  left: 20px;
  top: 50%;
  width: 22px;
  height: 22px;
  margin-top: -11px;
  color: #627187;
  pointer-events: none;
}

body.pp-listing-ui-v2.page-front :is(.pp-home-search__icon, .pp-home-hero__tool, .pp-home-filters__all) svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.pp-listing-ui-v2.page-front .pp-home-search .pp-home-search__input {
  flex: 1 1 auto;
  min-width: 0;
  height: 54px;
  min-height: 54px;
  margin: 0;
  padding: 0 10px 0 48px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  box-shadow: none;
  font-family: var(--pp-font);
  font-size: 18px;
  color: var(--pp-ink);
  -webkit-appearance: none;
  appearance: none;
}

body.pp-listing-ui-v2.page-front .pp-home-search .pp-home-search__input::placeholder { color: #627187; opacity: 1; }

body.pp-listing-ui-v2.page-front .pp-home-search .pp-home-search__input:focus,
body.pp-listing-ui-v2.page-front .pp-home-search .pp-home-search__input:focus-visible {
  outline: 0;
  border: 0;
  box-shadow: none;
}

body.pp-listing-ui-v2.page-front .pp-home-search .pp-home-search__submit {
  flex: 0 0 auto;
  min-width: 128px;
  height: 54px;
  margin: 0;
  padding: 0 28px;
  border: 0;
  border-radius: 13px;
  background: var(--pp-blue-2);
  box-shadow: none;
  font-family: var(--pp-font);
  font-size: 17px;
  font-weight: 800;
  line-height: 1;
  color: #fff;
  cursor: pointer;
  transition: background-color .15s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-search .pp-home-search__submit:hover { background: #0852CF; }

body.pp-listing-ui-v2.page-front .pp-home-search .pp-home-search__submit:focus-visible {
  outline: 3px solid var(--pp-amber);
  outline-offset: 2px;
}

/* Often searched */
body.pp-listing-ui-v2.page-front .pp-home-hero__popular {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
}

body.pp-listing-ui-v2.page-front .pp-home-hero__popular-label {
  margin-right: 4px;
  font-size: 14px;
  font-weight: 700;
  color: var(--pp-muted);
}

body.pp-listing-ui-v2.page-front .pp-home-hero__popular a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 12px;
  background: #fff;
  font-size: 14px;
  font-weight: 700;
  color: var(--pp-text);
  text-decoration: none;
  white-space: nowrap;
  transition: background-color .15s ease, color .15s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-hero__popular a:hover {
  background: var(--pp-blue-2);
  color: #fff;
}

/* City chip: "Вакансии в Москве · Обновлено N мин. назад" */
body.pp-listing-ui-v2.page-front .pp-home-hero__city {
  color: var(--pp-ink);
}

body.pp-listing-ui-v2.page-front .pp-home-hero__sep {
  margin: 0 -2px;
  color: #9BB0CC;
}

/* Lighthouse illustration + the beam that sweeps over the feed */
body.pp-listing-ui-v2.page-front .section-main-app {
  overflow-x: clip; /* the beam may reach past the right edge; clip keeps sticky working */
}

body.pp-listing-ui-v2.page-front .pp-home-hero__art {
  position: relative;
  justify-self: end;
  width: 320px;
  line-height: 0;
  pointer-events: none;
}

body.pp-listing-ui-v2.page-front .pp-home-hero__art svg {
  position: relative;
  z-index: 1;
  width: 100%;
  height: auto;
}

/* The short in-SVG beam is used on phones only; wider screens get the long
   beam (.pp-home-hero__glow) */
body.pp-listing-ui-v2.page-front .pp-home-hero__beam {
  display: none;
  fill: #FFE08A;
  opacity: .75;
  transform-box: view-box;
  transform-origin: 232px 151px;
  animation: pp-home-sweep 9s ease-in-out infinite alternate;
}

body.pp-listing-ui-v2.page-front .pp-home-hero__lamp {
  fill: #FFE7A0;
  transform-box: view-box;
  transform-origin: 246px 153px;
  animation: pp-home-lamp 2.4s ease-in-out infinite alternate;
}

/* Long beam: starts at the lamp (232/360, 151/300 of the art box) and points
   left; rotating it around its right edge sweeps a short light near the
   lighthouse (it stops before the search, the chips and the cards).
   A soft-edged cone (conic gradient) faded along its length (mask).
   Multiply only tints what is under it, so text never loses contrast. */
body.pp-listing-ui-v2.page-front .pp-home-hero__glow {
  position: absolute;
  z-index: 4;
  top: 50.33%;
  right: 35.56%;
  width: 380px;
  height: 300px;
  margin-top: -150px;
  background: conic-gradient(from 257deg at 100% 50%, rgba(255, 214, 102, 0) 0deg, rgba(255, 205, 80, .8) 7deg, rgba(255, 205, 80, .8) 19deg, rgba(255, 214, 102, 0) 26deg, rgba(255, 214, 102, 0) 360deg);
  -webkit-mask-image: linear-gradient(270deg, #000 0%, rgba(0, 0, 0, .7) 45%, rgba(0, 0, 0, 0) 100%);
  mask-image: linear-gradient(270deg, #000 0%, rgba(0, 0, 0, .7) 45%, rgba(0, 0, 0, 0) 100%);
  mix-blend-mode: multiply;
  transform-origin: 100% 50%;
  animation: pp-home-sweep 9s ease-in-out infinite alternate;
  pointer-events: none;
}

@keyframes pp-home-sweep {
  0%   { transform: rotate(8deg); }
  100% { transform: rotate(-20deg); }
}

@keyframes pp-home-lamp {
  0%   { opacity: .55; transform: scale(.85); }
  100% { opacity: 1;   transform: scale(1.15); }
}

/* Filters / sort: shown only where the side panel is hidden */
body.pp-listing-ui-v2.page-front .pp-home-hero__tools {
  display: none;
  grid-column: 1 / -1;
  gap: 8px;
}

body.pp-listing-ui-v2.page-front .pp-home-hero__tool {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 16px 0 14px;
  border: 1px solid var(--pp-line);
  border-radius: 12px;
  background: #fff;
  font-size: 15px;
  font-weight: 700;
  color: var(--pp-ink);
  text-decoration: none;
}

body.pp-listing-ui-v2.page-front .pp-home-hero__tool svg {
  width: 20px;
  height: 20px;
  color: var(--pp-blue-2);
}

/* ------------------------------------------------------------------ */
/* Feed + quick filters                                                */
/* ------------------------------------------------------------------ */

body.pp-listing-ui-v2.page-front .pp-home-feed-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  align-items: start;
  gap: 28px;
  margin-top: 0 !important;
  padding-top: 36px;
}

body.pp-listing-ui-v2.page-front .pp-home-feed-main {
  min-width: 0;
  grid-column: 1;
  grid-row: 1;
  margin: 0 !important;
  padding: 0 !important;
}

body.pp-listing-ui-v2.page-front .pp-home-feed-layout > .pp-home-filters {
  grid-column: 2;
  grid-row: 1;
}

body.pp-listing-ui-v2.page-front .pp-home-feed-main > .block-views-vacancies-block {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.pp-listing-ui-v2.page-front .pp-home-feed-main > .block-views-vacancies-block > .inner-block,
body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-vacancies-view,
body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-vacancies-view > .vws-content {
  margin: 0 !important;
  padding: 0 !important;
}

body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-vacancies-view > .vws-content {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

body.pp-listing-ui-v2.page-front .pp-home-feed-main div.pp-home-vacancies-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 12px;
  grid-column: 1 / -1;
  margin: 0 0 6px !important;
  padding: 0 !important;
}

body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-home-vacancies-heading h2 {
  margin: 0;
  font-family: var(--pp-font);
  font-size: 28px;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -0.025em;
  color: var(--pp-ink);
}

/* Freshness already shown in the hero. */
body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-home-vacancies-heading__separator,
body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-home-vacancies-heading__updated {
  display: none;
}

body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-home-vacancies-more {
  grid-column: 1 / -1;
  margin: 8px 0 0;
  text-align: left;
}

body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-home-vacancies-more__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 22px;
  border: 1.5px solid var(--pp-blue-2);
  border-radius: 13px;
  background: #fff;
  box-shadow: none;
  font-family: var(--pp-font);
  font-size: 16px;
  font-weight: 800;
  color: var(--pp-blue-2);
  text-decoration: none;
}

body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-home-vacancies-more__link:hover {
  background: var(--pp-blue-2);
  color: #fff;
}

/* Quick filters panel */
body.pp-listing-ui-v2.page-front .pp-home-filters {
  position: static !important;
  top: auto !important;
  margin-top: 48px;
}

body.pp-listing-ui-v2.page-front .pp-home-filters__sheet {
  padding: 22px 20px 20px;
  border-radius: 20px;
  background: #fff;
}

body.pp-listing-ui-v2.page-front .pp-home-filters .pp-home-filters__title {
  margin: 0 0 16px;
  padding: 0 0 12px;
  border-bottom: 3px solid var(--pp-ink);
  font-family: var(--pp-font);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: var(--pp-ink);
}

body.pp-listing-ui-v2.page-front .pp-home-filters__group {
  margin: 0 0 16px;
}

body.pp-listing-ui-v2.page-front .pp-home-filters__group h3 {
  margin: 0 0 8px;
  font-family: var(--pp-font);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--pp-muted);
}

body.pp-listing-ui-v2.page-front .pp-home-filters__group ul {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.pp-listing-ui-v2.page-front .pp-home-filters__group li {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.pp-listing-ui-v2.page-front .pp-home-filters__group li::before { content: none; }

body.pp-listing-ui-v2.page-front .pp-home-filters__group a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 12px;
  background: var(--pp-chip);
  font-size: 14px;
  font-weight: 700;
  color: var(--pp-text);
  text-decoration: none;
  white-space: nowrap;
  transition: background-color .15s ease, color .15s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-filters__group a:hover {
  background: var(--pp-blue-2);
  color: #fff;
}

body.pp-listing-ui-v2.page-front .pp-home-filters__all {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  margin-top: 4px;
  border: 1.5px solid var(--pp-blue-2);
  border-radius: 13px;
  font-size: 15px;
  font-weight: 800;
  color: var(--pp-blue-2);
  text-decoration: none;
}

body.pp-listing-ui-v2.page-front .pp-home-filters__all svg { width: 20px; height: 20px; }

body.pp-listing-ui-v2.page-front .pp-home-filters__all:hover {
  background: var(--pp-blue-2);
  color: #fff;
}

/* ------------------------------------------------------------------ */
/* Lower page: shared section head (title left, "all" link right)      */
/* Structure inspired by big job boards: white panels on a sky page,   */
/* "see all" in the panel head; visuals are Promopoisk's own.          */
/* ------------------------------------------------------------------ */

body.pp-listing-ui-v2.page-front .pp-home-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 8px 24px;
  margin: 0 0 22px;
}

body.pp-listing-ui-v2.page-front .pp-home-head .pp-home-section-title { margin: 0; }

body.pp-listing-ui-v2.page-front .pp-home-head__note {
  margin: 0 0 4px;
  font-size: 15px;
  font-weight: 700;
  color: var(--pp-muted);
}

/* ------------------------------------------------------------------ */
/* "Перед откликом" — bento: blue intro + white checklist              */
/* ------------------------------------------------------------------ */

body.pp-listing-ui-v2.page-front .pp-home-check {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  grid-template-rows: auto 1fr;
  grid-template-areas: "head list" "foot list";
  margin-top: 80px;
  border-radius: 28px;
  background: #fff;
  counter-reset: pp-home-done;
}

/* Blue column behind head + foot (a grid item of its own) */
body.pp-listing-ui-v2.page-front .pp-home-check::before {
  content: "";
  grid-column: 1;
  grid-row: 1 / 3;
  background:
    radial-gradient(circle at 100% 0, rgba(120, 200, 255, .45) 0, rgba(120, 200, 255, 0) 55%),
    linear-gradient(160deg, #0B62F4 0%, #0A4FD0 100%);
}

body.pp-listing-ui-v2.page-front .pp-home-check__head {
  grid-area: head;
  position: relative;
  padding: 40px 40px 8px;
  color: #fff;
}

body.pp-listing-ui-v2.page-front .pp-home-check__num {
  position: absolute;
  right: -10px;
  top: -34px;
  font-family: var(--pp-font);
  font-size: 200px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.06em;
  color: transparent;
  -webkit-text-stroke: 2px rgba(255, 255, 255, .22);
  pointer-events: none;
  user-select: none;
}

body.pp-listing-ui-v2.page-front .pp-home-kicker {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #fff;
}

body.pp-listing-ui-v2.page-front .pp-home-kicker__n {
  padding: 3px 8px;
  border-radius: 8px;
  background: #fff;
  letter-spacing: 0;
  color: var(--pp-blue-2);
}

body.pp-listing-ui-v2.page-front .pp-home-check .pp-home-check__title {
  position: relative;
  margin: 0 0 14px;
  font-size: 38px;
  color: #fff;
}

/* marker highlight instead of a coloured word (keeps contrast on blue) */
body.pp-listing-ui-v2.page-front .pp-home-check .pp-home-check__title em {
  color: #fff;
  background: linear-gradient(transparent 70%, rgba(255, 187, 81, .95) 70%, rgba(255, 187, 81, .95) 94%, transparent 94%);
}

body.pp-listing-ui-v2.page-front .pp-home-check__lead {
  position: relative;
  max-width: 400px;
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
  color: #F2F7FF;
}

body.pp-listing-ui-v2.page-front .pp-home-check__foot {
  grid-area: foot;
  align-self: end;
  position: relative;
  padding: 28px 40px 40px;
  color: #fff;
}

body.pp-listing-ui-v2.page-front .pp-home-check__progress {
  display: flex;
  gap: 6px;
  max-width: 320px;
}

body.pp-listing-ui-v2.page-front .pp-home-check__progress i {
  flex: 1 1 0;
  height: 8px;
  border-radius: 4px;
  background: rgba(255, 255, 255, .26);
  transition: background-color .25s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-check:has(#pp-home-check-0:checked) .pp-home-check__progress i:nth-child(1),
body.pp-listing-ui-v2.page-front .pp-home-check:has(#pp-home-check-1:checked) .pp-home-check__progress i:nth-child(2),
body.pp-listing-ui-v2.page-front .pp-home-check:has(#pp-home-check-2:checked) .pp-home-check__progress i:nth-child(3),
body.pp-listing-ui-v2.page-front .pp-home-check:has(#pp-home-check-3:checked) .pp-home-check__progress i:nth-child(4) {
  background: var(--pp-amber);
}

body.pp-listing-ui-v2.page-front .pp-home-check__status {
  margin: 10px 0 22px;
  font-size: 14px;
  font-weight: 700;
  color: #F2F7FF;
}

body.pp-listing-ui-v2.page-front .pp-home-check__status::before {
  content: "Отмечено " counter(pp-home-done) " из " attr(data-total);
}

body.pp-listing-ui-v2.page-front .pp-home-check:not(:has(.pp-home-check__list input:not(:checked))) .pp-home-check__status::after {
  content: " — отлично, можно откликаться!";
}

body.pp-listing-ui-v2.page-front .pp-home-check__more {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
}

body.pp-listing-ui-v2.page-front .pp-home-check__cta {
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  padding: 0 20px;
  border-radius: 14px;
  background: #fff;
  font-size: 15px;
  font-weight: 800;
  color: #0A4FD0;
  text-decoration: none;
  transition: background-color .15s ease, color .15s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-check__cta:hover { background: var(--pp-amber); color: var(--pp-ink); }

body.pp-listing-ui-v2.page-front .pp-home-check__link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-size: 15px;
  font-weight: 800;
  color: #fff;
  text-decoration: underline;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 5px;
}

body.pp-listing-ui-v2.page-front .pp-home-check a:focus-visible { outline-color: #fff; }

/* The list */
body.pp-listing-ui-v2.page-front .pp-home-check__list {
  grid-area: list;
  display: grid;
  align-content: center;
  gap: 10px;
  margin: 0;
  padding: 32px;
  list-style: none;
}

body.pp-listing-ui-v2.page-front .pp-home-check__list li {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.pp-listing-ui-v2.page-front .pp-home-check__list li::before { content: none; }

body.pp-listing-ui-v2.page-front .pp-home-check__list label {
  display: grid;
  grid-template-columns: 30px 1fr;
  gap: 16px;
  align-items: start;
  min-height: 44px;
  margin: 0;
  padding: 18px 22px 18px 18px;
  border: 1.5px solid transparent;
  border-radius: 18px;
  background: #F4F8FE;
  cursor: pointer;
  transition: background-color .2s ease, border-color .2s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-check__list label:hover { border-color: #C7D8F0; }

body.pp-listing-ui-v2.page-front .pp-home-check__list li:has(input:checked) label {
  border-color: #BFE7D2;
  background: #EAF8F1;
}

body.pp-listing-ui-v2.page-front .pp-home-check__list input {
  position: relative;
  width: 28px;
  height: 28px;
  margin: 0;
  border: 2px solid #7590B3;
  border-radius: 9px;
  background: #fff;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition: background-color .15s ease, border-color .15s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-check__list input:hover { border-color: var(--pp-blue); }

body.pp-listing-ui-v2.page-front .pp-home-check__list input:focus-visible {
  outline: 3px solid var(--pp-blue-2);
  outline-offset: 2px;
}

body.pp-listing-ui-v2.page-front .pp-home-check__list input:checked {
  border-color: #17955A;
  background: #17955A;
  counter-increment: pp-home-done;
}

body.pp-listing-ui-v2.page-front .pp-home-check__list input:checked::after {
  content: "";
  position: absolute;
  left: 8px;
  top: 3px;
  width: 7px;
  height: 13px;
  border: solid #fff;
  border-width: 0 3px 3px 0;
  transform: rotate(42deg);
}

body.pp-listing-ui-v2.page-front .pp-home-check__list span {
  font-size: 15px;
  line-height: 1.5;
  color: var(--pp-muted);
}

body.pp-listing-ui-v2.page-front .pp-home-check__list b {
  display: block;
  margin: 1px 0 3px;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.3;
  color: var(--pp-ink);
}

/* ------------------------------------------------------------------ */
/* Guides — two colour cards with illustrations                        */
/* ------------------------------------------------------------------ */

body.pp-listing-ui-v2.page-front .pp-home-guides { margin-top: 80px; }

body.pp-listing-ui-v2.page-front .pp-home-guides__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

body.pp-listing-ui-v2.page-front .pp-home-guide {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 320px;
  padding: 34px 36px 34px;
  border-radius: 28px;
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-guide:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(23, 59, 114, .16);
}

body.pp-listing-ui-v2.page-front .pp-home-guide--seeker {
  background:
    radial-gradient(circle at 92% 8%, rgba(120, 200, 255, .5) 0, rgba(120, 200, 255, 0) 45%),
    linear-gradient(140deg, #0B62F4 0%, #0A4FD0 100%);
  color: #fff;
}

body.pp-listing-ui-v2.page-front .pp-home-guide--employer {
  background:
    radial-gradient(circle at 90% 10%, rgba(255, 255, 255, .55) 0, rgba(255, 255, 255, 0) 45%),
    linear-gradient(140deg, #FFE2A3 0%, #FFC867 100%);
  color: var(--pp-ink);
}

body.pp-listing-ui-v2.page-front .pp-home-guide__eyebrow,
body.pp-listing-ui-v2.page-front .pp-home-guide__title,
body.pp-listing-ui-v2.page-front .pp-home-guide__facts,
body.pp-listing-ui-v2.page-front .pp-home-guide__cta {
  position: relative;
  z-index: 1;
}

body.pp-listing-ui-v2.page-front .pp-home-guide__eyebrow {
  margin-bottom: 18px;
  padding: 6px 12px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

body.pp-listing-ui-v2.page-front .pp-home-guide--seeker .pp-home-guide__eyebrow { background: rgba(7, 11, 36, .22); color: #fff; }
body.pp-listing-ui-v2.page-front .pp-home-guide--employer .pp-home-guide__eyebrow { background: rgba(23, 59, 114, .12); color: var(--pp-navy); }

body.pp-listing-ui-v2.page-front .pp-home-guide__title {
  max-width: calc(100% - 190px);
  margin-bottom: 18px;
  font-size: 28px;
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -0.025em;
}

body.pp-listing-ui-v2.page-front .pp-home-guide__title em { font-style: normal; }

body.pp-listing-ui-v2.page-front .pp-home-guide--seeker .pp-home-guide__title em {
  background: linear-gradient(transparent 70%, rgba(255, 187, 81, .95) 70%, rgba(255, 187, 81, .95) 94%, transparent 94%);
}

body.pp-listing-ui-v2.page-front .pp-home-guide--employer .pp-home-guide__title em { color: #0A47BD; }

body.pp-listing-ui-v2.page-front .pp-home-guide__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  max-width: calc(100% - 170px);
  margin-bottom: 26px;
}

body.pp-listing-ui-v2.page-front .pp-home-guide__facts span {
  padding: 5px 11px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 700;
}

body.pp-listing-ui-v2.page-front .pp-home-guide--seeker .pp-home-guide__facts span { background: rgba(7, 11, 36, .2); color: #fff; }
body.pp-listing-ui-v2.page-front .pp-home-guide--employer .pp-home-guide__facts span { background: rgba(255, 255, 255, .7); color: var(--pp-navy); }

body.pp-listing-ui-v2.page-front .pp-home-guide__cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: auto;
  min-height: 48px;
  padding: 0 20px;
  border-radius: 14px;
  font-size: 15px;
  font-weight: 800;
}

body.pp-listing-ui-v2.page-front .pp-home-guide--seeker .pp-home-guide__cta { background: #fff; color: #0A4FD0; }
body.pp-listing-ui-v2.page-front .pp-home-guide--employer .pp-home-guide__cta { background: var(--pp-ink); color: #fff; }

body.pp-listing-ui-v2.page-front .pp-home-guide__cta svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .2s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-guide:hover .pp-home-guide__cta svg { transform: translateX(4px); }

body.pp-listing-ui-v2.page-front .pp-home-guide__art {
  position: absolute;
  right: 14px;
  bottom: 18px;
  width: 220px;
  height: 180px;
  transition: transform .3s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-guide:hover .pp-home-guide__art { transform: translateY(-6px) rotate(-2deg); }

/* ------------------------------------------------------------------ */
/* Existing content blocks — restyled only; markup, order, data and    */
/* links unchanged. Bento grid: industries | professions + quick links */
/* ------------------------------------------------------------------ */

body.pp-listing-ui-v2.page-front .section-main-app > .row-content {
  display: grid !important;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  column-gap: 20px;
  width: var(--pp-home-w) !important;
  max-width: none !important;
  margin: 80px auto 0 !important;
  padding: 0 !important;
  font-family: var(--pp-font);
}

body.pp-listing-ui-v2.page-front .section-main-app > .row-content::before,
body.pp-listing-ui-v2.page-front .section-main-app > .row-content::after {
  content: none !important;
  display: none !important;
}

body.pp-listing-ui-v2.page-front .row-content > * {
  grid-column: 1 / -1;
  min-width: 0;
}

body.pp-listing-ui-v2.page-front .row-content > .block-views-professii-block-2 { grid-column: 1; }
body.pp-listing-ui-v2.page-front .row-content > .block-block-61 { grid-column: 2; }

body.pp-listing-ui-v2.page-front .row-content > .block {
  position: relative;
  float: none !important;
  width: auto !important;
  margin: 0 0 80px !important;
  padding: 0 !important;
  background: none !important;
}

body.pp-listing-ui-v2.page-front .row-content > .block-views-professii-block-4 { margin-bottom: 20px !important; }

/* The about text is hidden on the home by the theme: no gap for it */
body.pp-listing-ui-v2.page-front .row-content > .block-system-main { margin: 0 !important; }

/* Section titles */
body.pp-listing-ui-v2.page-front .row-content > .block > .block-title,
body.pp-listing-ui-v2.page-front .row-content .pp-category-section > .block-title {
  display: block;
  margin: 0 0 22px !important;
  padding: 0 !important;
  font-family: var(--pp-font) !important;
  font-size: 36px !important;
  font-weight: 900 !important;
  line-height: 1.04 !important;
  letter-spacing: -0.03em !important;
  color: var(--pp-ink) !important;
  text-align: left !important;
}

/* White panels */
body.pp-listing-ui-v2.page-front .row-content > :is(.block-views-professii-block-4, .block-views-professii-block-2, .block-views-professii-block-3) {
  padding: 30px 32px 32px !important;
  border-radius: 28px !important;
  background: #fff !important;
}

body.pp-listing-ui-v2.page-front .row-content > :is(.block-views-professii-block-4, .block-views-professii-block-2, .block-views-professii-block-3) > .block-title {
  margin-bottom: 20px !important;
  padding-right: 200px !important;
  font-size: 26px !important;
}

/* "See all" links: pill in the section head */
body.pp-listing-ui-v2.page-front .row-content .pp-category-more,
body.pp-listing-ui-v2.page-front .row-content > .block :is(.all-chapterbest--items, .best-professii--items, .top-company--items, .all-articles--items) .more-link {
  position: absolute !important;
  top: 0;
  right: 0;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: right !important;
}

body.pp-listing-ui-v2.page-front .row-content > .block:is(.block-views-professii-block-4, .block-views-professii-block-2) .more-link {
  top: 26px;
  right: 28px;
}

/* Company CTA sits below the section edge and keeps its arrow inside. */
body.pp-listing-ui-v2.page-front .row-content .top-company--items .more-link {
  top: 18px !important;
  right: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .top-company--items .more-link a {
  justify-content: center;
  gap: 10px;
  min-width: 154px;
  padding-right: 20px !important;
  overflow: hidden;
}

body.pp-listing-ui-v2.page-front .row-content .pp-category-more a,
body.pp-listing-ui-v2.page-front .row-content > .block :is(.all-chapterbest--items, .best-professii--items, .top-company--items, .all-articles--items) .more-link a {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(7, 11, 36, .05) !important;
  font-family: var(--pp-font) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  color: var(--pp-blue-2) !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background-color .15s ease, color .15s ease;
}

body.pp-listing-ui-v2.page-front .row-content > .block:is(.block-views-professii-block-4, .block-views-professii-block-2) .more-link a {
  background: var(--pp-chip) !important;
  box-shadow: none !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-category-more a:hover,
body.pp-listing-ui-v2.page-front .row-content > .block .more-link a:hover {
  background: var(--pp-blue-2) !important;
  color: #fff !important;
}

/* --- Spheres: colour tiles ---------------------------------------- */
body.pp-listing-ui-v2.page-front .row-content .pp-category-section {
  position: relative;
  margin: 0 0 80px !important;
  padding: 0 !important;
  background: none !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-category-section > .block-title { padding-right: 300px !important; }

body.pp-listing-ui-v2.page-front .row-content .pp-category-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-category-tile {
  --tile-bg: #E3EFFF;
  --tile-ink: #0B4FD6;
  position: relative;
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  height: auto !important;
  min-height: 96px !important;
  margin: 0 !important;
  padding: 18px 64px 18px 18px !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: var(--tile-bg) !important;
  box-shadow: none !important;
  font-family: var(--pp-font) !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  color: var(--pp-ink) !important;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease;
}

body.pp-listing-ui-v2.page-front .row-content .pp-category-tile:nth-child(6n+2) { --tile-bg: #DCF4FB; --tile-ink: #0A6688; }
body.pp-listing-ui-v2.page-front .row-content .pp-category-tile:nth-child(6n+3) { --tile-bg: #FFF0D2; --tile-ink: #8F5300; }
body.pp-listing-ui-v2.page-front .row-content .pp-category-tile:nth-child(6n+4) { --tile-bg: #DCF3E7; --tile-ink: #136F46; }
body.pp-listing-ui-v2.page-front .row-content .pp-category-tile:nth-child(6n+5) { --tile-bg: #EBE7FF; --tile-ink: #5536B8; }
body.pp-listing-ui-v2.page-front .row-content .pp-category-tile:nth-child(6n+6) { --tile-bg: #FFE5DF; --tile-ink: #A8381F; }

body.pp-listing-ui-v2.page-front .row-content .pp-category-tile:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 30px rgba(23, 59, 114, .12) !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-category-icon {
  flex: 0 0 56px !important;
  width: 56px !important;
  height: 56px !important;
  margin: 0 !important;
  border-radius: 18px !important;
  background: #fff !important;
  color: var(--tile-ink) !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-category-icon svg {
  width: 26px !important;
  height: 26px !important;
  stroke-width: 1.9;
}

/* arrow bubble */
body.pp-listing-ui-v2.page-front .row-content .pp-category-tile::after {
  content: "" !important;
  position: absolute;
  right: 18px;
  top: 50%;
  width: 36px;
  height: 36px;
  margin-top: -18px;
  border-radius: 50%;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23070B24' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / 18px no-repeat;
  opacity: .0;
  transform: translateX(-6px);
  transition: opacity .2s ease, transform .2s ease;
}

body.pp-listing-ui-v2.page-front .row-content .pp-category-tile:hover::after,
body.pp-listing-ui-v2.page-front .row-content .pp-category-tile:focus-visible::after {
  opacity: 1;
  transform: none;
}

/* --- Industries panel: list with tinted icons ---------------------- */
body.pp-listing-ui-v2.page-front .row-content .all-chapterbest--items > .vws-content {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 6px 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .chapter-item {
  display: block !important;
  float: none !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .chapter-item > a {
  display: flex !important;
  align-items: center !important;
  gap: 14px;
  height: auto !important;
  min-height: 64px !important;
  margin: 0 !important;
  padding: 8px 12px 8px 8px !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: none !important;
  box-shadow: none !important;
  font-family: var(--pp-font) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  color: var(--pp-ink) !important;
  text-decoration: none !important;
  transition: background-color .15s ease;
}

body.pp-listing-ui-v2.page-front .row-content .chapter-item > a:hover { background: #F2F7FF !important; }

/* legacy grid wrappers inside the link: flatten */
body.pp-listing-ui-v2.page-front .row-content .chapter-item :is(.row-column, .midd-column, .row-midd__column, .column-mid, .inner-column) {
  display: contents !important;
}

body.pp-listing-ui-v2.page-front .row-content .chapter-item :is(.row-column, .midd-column, .row-midd__column, .column-mid, .inner-column)::before,
body.pp-listing-ui-v2.page-front .row-content .chapter-item :is(.row-column, .midd-column, .row-midd__column, .column-mid, .inner-column)::after,
body.pp-listing-ui-v2.page-front .row-content .chapter-item > a::before {
  content: none !important;
  display: none !important;
}

body.pp-listing-ui-v2.page-front .row-content .chapter-item > a::after {
  content: "" !important;
  display: block !important;
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  margin-left: auto;
  border: solid #9BB0CC;
  border-width: 2px 2px 0 0;
  transform: rotate(45deg);
}

body.pp-listing-ui-v2.page-front .row-content .chapter-item .image {
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  margin: 0 !important;
  border-radius: 15px;
  background: #E3EFFF !important;
}

body.pp-listing-ui-v2.page-front .row-content .chapter-item:nth-child(6n+2) .image { background: #DCF4FB !important; }
body.pp-listing-ui-v2.page-front .row-content .chapter-item:nth-child(6n+3) .image { background: #FFF0D2 !important; }
body.pp-listing-ui-v2.page-front .row-content .chapter-item:nth-child(6n+4) .image { background: #DCF3E7 !important; }
body.pp-listing-ui-v2.page-front .row-content .chapter-item:nth-child(6n+5) .image { background: #EBE7FF !important; }
body.pp-listing-ui-v2.page-front .row-content .chapter-item:nth-child(6n+6) .image { background: #FFE5DF !important; }

body.pp-listing-ui-v2.page-front .row-content .chapter-item .image img {
  width: 26px !important;
  height: 26px !important;
  object-fit: contain;
}

body.pp-listing-ui-v2.page-front .row-content .chapter-item .name {
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  font: inherit !important;
  color: inherit !important;
  white-space: normal !important;
}

/* --- Popular professions panel: soft chips ------------------------- */
body.pp-listing-ui-v2.page-front .row-content .best-professii--items > .vws-content,
body.pp-listing-ui-v2.page-front .row-content .mianfast-block__filter > ul {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  grid-template-columns: none !important;
}

body.pp-listing-ui-v2.page-front .row-content :is(.best-professii--items .professii-item, .mianfast-block__filter li) {
  float: none !important;
  width: auto !important;
  max-width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 1 auto !important;
  list-style: none;
}

body.pp-listing-ui-v2.page-front .row-content .mianfast-block__filter li::before { content: none !important; }

body.pp-listing-ui-v2.page-front .row-content .best-professii--items :is(.inner-column, .chapter-item-text, .name-chapter, .name-chapter span) {
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  box-shadow: none !important;
  font: inherit !important;
  color: inherit !important;
}

body.pp-listing-ui-v2.page-front .row-content :is(.best-professii--items a, .mianfast-block__filter a) {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 42px !important;
  height: auto !important;
  max-width: 100%;
  margin: 0 !important;
  padding: 0 16px !important;
  border: 0 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  font-family: var(--pp-font) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background-color .15s ease, color .15s ease;
}

body.pp-listing-ui-v2.page-front .row-content :is(.best-professii--items a, .mianfast-block__filter a)::before,
body.pp-listing-ui-v2.page-front .row-content :is(.best-professii--items a, .mianfast-block__filter a)::after {
  content: none !important;
  display: none !important;
}

body.pp-listing-ui-v2.page-front .row-content .best-professii--items a {
  background: #F2F6FC !important;
  color: var(--pp-text) !important;
}

body.pp-listing-ui-v2.page-front .row-content .best-professii--items a:hover {
  background: var(--pp-blue-2) !important;
  color: #fff !important;
}

/* --- Quick links (block 61): navy panel ---------------------------- */
body.pp-listing-ui-v2.page-front .row-content > .block-block-61 {
  padding: 28px 32px 32px !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(11, 98, 244, .55) 0, rgba(11, 98, 244, 0) 60%),
    var(--pp-navy) !important;
}

body.pp-listing-ui-v2.page-front .row-content > .block-block-61 > .inner-block::before {
  content: "Быстрые подборки";
  display: block;
  margin: 0 0 16px;
  font-family: var(--pp-font);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: #fff;
}

body.pp-listing-ui-v2.page-front .row-content .mianfast-block__filter a {
  background: rgba(255, 255, 255, .12) !important;
  color: #fff !important;
}

body.pp-listing-ui-v2.page-front .row-content .mianfast-block__filter a:hover {
  background: var(--pp-amber) !important;
  color: var(--pp-ink) !important;
}

body.pp-listing-ui-v2.page-front .row-content .mianfast-block__filter a:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }

/* --- Companies of the month: hh-style compact tiles + guide promo ----- */
/* 3 columns: the guide promo spans two rows on the left, companies fill a
   2×2 block on the right. Whole tile is the link; no "О компании" button. */
body.pp-listing-ui-v2.page-front .row-content .block-views-company-block-1 > .block-title { padding-right: 220px !important; }

body.pp-listing-ui-v2.page-front .row-content .top-company--items { margin: 0 !important; }

body.pp-listing-ui-v2.page-front .row-content .pp-employer-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-rows: minmax(124px, auto);
  gap: 16px !important;
  margin: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item {
  float: none !important;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item:not(.pp-company-guide) > a {
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) 20px;
  grid-template-rows: auto auto;
  align-content: center;
  column-gap: 18px !important;
  row-gap: 4px !important;
  height: 100%;
  min-height: 0;
  padding: 22px 24px !important;
  border: 1px solid #E3ECF7 !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: none !important;
  font-family: var(--pp-font) !important;
  color: var(--pp-ink) !important;
  text-decoration: none !important;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item:not(.pp-company-guide) > a:hover {
  border-color: #C7D8F0 !important;
  box-shadow: 0 14px 30px rgba(23, 59, 114, .1) !important;
  transform: translateY(-2px);
}

body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item-logo {
  display: flex !important;
  align-items: center;
  justify-content: center;
  grid-column: 1;
  grid-row: 1 / 3;
  align-self: center !important;
  width: 64px !important;
  height: 64px !important;
  margin: 0 !important;
  padding: 6px !important;
  overflow: hidden;
  border: 1px solid #E3ECF7 !important;
  border-radius: 50% !important;
  background: #fff !important;
}

body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item-logo :is(.vertical-middle, .middle) { display: contents !important; }

body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item-logo img {
  display: block;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 100% !important;
  margin: 0 !important;
  object-fit: contain;
}

body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item-name {
  grid-column: 2;
  grid-row: 1;
  align-self: end !important;
  display: -webkit-box !important;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--pp-font) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  color: var(--pp-ink) !important;
  text-align: left !important;
}

body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item-desc {
  display: -webkit-box !important;
  grid-column: 2;
  grid-row: 2;
  align-self: start !important;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item-desc,
body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item-desc p {
  margin: 0 !important;
  font-family: var(--pp-font) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  color: var(--pp-muted) !important;
  text-align: left !important;
}

/* the legacy "О компании →" pseudo-button becomes a quiet arrow */
body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item:not(.pp-company-guide) > a::after {
  content: "" !important;
  grid-column: 3;
  grid-row: 1 / 3;
  align-self: center !important;
  width: 9px !important;
  height: 9px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: solid #9BB0CC;
  border-width: 2px 2px 0 0;
  border-radius: 0;
  background: none !important;
  transform: rotate(45deg);
  transition: border-color .2s ease, transform .2s ease;
}

body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item:not(.pp-company-guide) > a:hover::after {
  border-color: var(--pp-blue-2);
  transform: translateX(3px) rotate(45deg);
}

/* Guide promo (future "Как выбрать компанию") */
body.pp-listing-ui-v2.page-front .row-content .pp-company-guide { grid-row: span 2; }

body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__card {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  height: 100%;
  min-height: 264px;
  padding: 26px 28px 28px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 100% 0, rgba(11, 98, 244, .6) 0, rgba(11, 98, 244, 0) 60%),
    var(--pp-navy);
  color: #fff;
  font-family: var(--pp-font);
  text-decoration: none;
}

body.pp-listing-ui-v2.page-front .row-content a.pp-company-guide__card { transition: transform .2s ease, box-shadow .2s ease; }
body.pp-listing-ui-v2.page-front .row-content a.pp-company-guide__card:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(23, 59, 114, .22); }

body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__card > span { position: relative; z-index: 1; }

body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__badge {
  margin-bottom: 16px;
  padding: 6px 12px;
  border-radius: 10px;
  background: var(--pp-amber);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--pp-ink);
}

body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__title {
  max-width: 300px;
  margin-bottom: 10px;
  font-size: 25px;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: #fff;
}

body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__title em {
  font-style: normal;
  background: linear-gradient(transparent 70%, rgba(255, 187, 81, .95) 70%, rgba(255, 187, 81, .95) 94%, transparent 94%);
}

body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__text {
  max-width: 240px;
  font-size: 15px;
  line-height: 1.45;
  color: #DDE8F7;
}

body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: auto;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 14px;
  background: #fff;
  font-size: 15px;
  font-weight: 800;
  color: #0A4FD0;
}

body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__cta svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__art {
  position: absolute;
  right: -6px;
  bottom: -4px;
  width: 170px;
  height: 145px;
}

/* --- All professions: 4-column directory in a panel ---------------- */
body.pp-listing-ui-v2.page-front .row-content .all-professii--items,
body.pp-listing-ui-v2.page-front .row-content .all-professii--items > .vws-content {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .all-professii--items .professii-item {
  margin: 0 !important;
  padding: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .all-professii--items .inner-column {
  margin: 0 !important;
  padding: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .all-professii--items a {
  display: block !important;
  padding: 7px 10px 7px 0 !important;
  border: 0 !important;
  background: none !important;
  text-decoration: none !important;
}

body.pp-listing-ui-v2.page-front .row-content .all-professii--items a,
body.pp-listing-ui-v2.page-front .row-content .all-professii--items a b {
  white-space: normal !important;
  overflow-wrap: anywhere;
  font-family: var(--pp-font) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: var(--pp-text) !important;
}

body.pp-listing-ui-v2.page-front .row-content .all-professii--items a:hover,
body.pp-listing-ui-v2.page-front .row-content .all-professii--items a:hover b {
  color: var(--pp-blue-2) !important;
}

body.pp-listing-ui-v2.page-front .row-content .vws-content-action-full {
  margin: 18px 0 0 !important;
  padding: 18px 0 0 !important;
  border-top: 1px solid #E3ECF7;
  text-align: center !important;
}

body.pp-listing-ui-v2.page-front .row-content .js-btn-height {
  display: inline-flex !important;
  align-items: center;
  min-height: 46px;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: var(--pp-chip) !important;
  box-shadow: none !important;
  font-family: var(--pp-font) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  color: var(--pp-blue-2) !important;
  cursor: pointer;
}

body.pp-listing-ui-v2.page-front .row-content .js-btn-height:hover {
  background: var(--pp-blue-2) !important;
  color: #fff !important;
}

/* --- Articles: magazine layout ----------------------------------- */
/* The newest article is the big story on the left; the next two are
   compact horizontal cards (cover as a thumbnail) on the right. The cover
   duplicates the rubric, so the big rubric word is smaller and the
   "Журнал Promopoisk" eyebrow is shown only on the big story. */
body.pp-listing-ui-v2.page-front .row-content .block-views-article-block-1 > .block-title { padding-right: 200px !important; }

body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .row-column {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) !important;
  grid-auto-rows: minmax(0, auto);
  gap: 20px !important;
  margin: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:first-child { grid-row: span 2; }
body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:first-child .pp-editorial-cover { flex: 1 1 250px; min-height: 250px; }

body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .inner-column { height: 100%; margin: 0 !important; padding: 0 !important; }

body.pp-listing-ui-v2.page-front .row-content .pp-story-card {
  position: relative;
  overflow: hidden;
  display: flex !important;
  flex-direction: column;
  height: 100%;
  border: 1px solid #E3ECF7 !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: none !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

body.pp-listing-ui-v2.page-front .row-content .pp-story-card:hover {
  border-color: #C7D8F0 !important;
  transform: translateY(-3px);
  box-shadow: 0 14px 30px rgba(23, 59, 114, .1) !important;
}

/* whole card clickable through the title link */
body.pp-listing-ui-v2.page-front .row-content .pp-story-card .article-item__name a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}

body.pp-listing-ui-v2.page-front .row-content .pp-story-card .pp-editorial-cover {
  flex: 0 0 auto;
  height: 250px !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-story-card .pp-editorial-cover__topic {
  font-size: 30px !important;
  line-height: 1.05 !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-story-content {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 22px 26px 26px !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-story-card .pp-story-meta {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin: 0 0 10px !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-story-card .pp-story-meta span {
  padding: 4px 10px;
  border-radius: 8px;
  background: var(--pp-chip);
  font-family: var(--pp-font) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .04em;
  color: var(--pp-blue-2) !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-story-card .pp-story-meta time {
  font-family: var(--pp-font) !important;
  font-size: 13px !important;
  color: var(--pp-muted) !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-story-card .article-item__name,
body.pp-listing-ui-v2.page-front .row-content .pp-story-card .article-item__name a {
  margin: 0 !important;
  font-family: var(--pp-font) !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
  letter-spacing: -0.015em;
  color: var(--pp-ink) !important;
  text-decoration: none !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-story-card:hover .article-item__name a { color: var(--pp-blue-2) !important; }

body.pp-listing-ui-v2.page-front .row-content .pp-story-card .article-item__anons {
  display: -webkit-box !important;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  margin: 10px 0 0 !important;
  font-family: var(--pp-font) !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  color: var(--pp-muted) !important;
}

/* compact cards (2nd, 3rd): thumbnail cover on the left */
body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .pp-story-card {
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr);
}

body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .pp-editorial-cover {
  height: 100% !important;
  min-height: 190px;
}

body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .pp-editorial-cover__eyebrow { display: none !important; }

body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .pp-editorial-cover__topic {
  left: 18px !important;
  right: 14px !important;
  bottom: 16px !important;
  font-size: 19px !important;
}

body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .pp-story-content { padding: 20px 22px !important; justify-content: center; }

body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) :is(.article-item__name, .article-item__name a) { font-size: 18px !important; line-height: 1.25 !important; }

body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .article-item__anons { -webkit-line-clamp: 2; font-size: 14px !important; }

body.pp-listing-ui-v2.page-front .row-content .pp-home-blog-link {
  float: none !important;
  justify-content: flex-end !important;
}

/* ------------------------------------------------------------------ */
/* Resume + Telegram                                                   */
/* ------------------------------------------------------------------ */

body.pp-listing-ui-v2.page-front .pp-home-more {
  margin-top: 0;
  margin-bottom: 80px;
}

body.pp-listing-ui-v2.page-front .pp-home-more__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: 20px;
}

body.pp-listing-ui-v2.page-front .pp-home-more__card {
  position: relative;
  overflow: hidden;
  padding: 34px 36px;
  border-radius: 28px;
  background: #fff;
}

body.pp-listing-ui-v2.page-front .pp-home-more__card h3 {
  position: relative;
  margin: 0 0 8px;
  font-family: var(--pp-font);
  font-size: 24px;
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -0.02em;
  color: var(--pp-ink);
}

body.pp-listing-ui-v2.page-front .pp-home-more__card p {
  position: relative;
  margin: 0 0 22px;
  font-size: 16px;
  line-height: 1.5;
  color: var(--pp-muted);
}

body.pp-listing-ui-v2.page-front .pp-home-more__card--resume {
  min-height: 300px;
  background:
    radial-gradient(circle at 100% 0, rgba(11, 98, 244, .6) 0, rgba(11, 98, 244, 0) 60%),
    var(--pp-navy);
}

body.pp-listing-ui-v2.page-front .pp-home-more__card--resume h3 { max-width: 300px; font-size: 28px; color: #fff; }
body.pp-listing-ui-v2.page-front .pp-home-more__card--resume p { max-width: 280px; color: #DDE8F7; }

body.pp-listing-ui-v2.page-front .pp-home-more__art {
  position: absolute;
  right: 12px;
  bottom: -6px;
  width: 160px;
  height: 150px;
  transform: rotate(6deg);
}

body.pp-listing-ui-v2.page-front .pp-home-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 50px;
  padding: 0 24px;
  border-radius: 14px;
  background: var(--pp-amber);
  font-size: 16px;
  font-weight: 800;
  color: var(--pp-ink);
  text-decoration: none;
  transition: background-color .15s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-btn:hover { background: #FFD27A; }
body.pp-listing-ui-v2.page-front .pp-home-more__card--resume a:focus-visible { outline-color: #fff; }

body.pp-listing-ui-v2.page-front .pp-home-more__channels {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.pp-listing-ui-v2.page-front .pp-home-more__channels li {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.pp-listing-ui-v2.page-front .pp-home-more__channels li::before { content: none; }

body.pp-listing-ui-v2.page-front .pp-home-more__channels a {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 72px;
  padding: 12px 14px 12px 12px;
  border-radius: 18px;
  background: #F4F8FE;
  text-decoration: none;
  transition: background-color .15s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-more__channels a:hover { background: var(--pp-chip); }

body.pp-listing-ui-v2.page-front .pp-home-more__channels img {
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  object-fit: cover;
}

body.pp-listing-ui-v2.page-front .pp-home-more__ch {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

body.pp-listing-ui-v2.page-front .pp-home-more__ch b {
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
  color: var(--pp-ink);
}

body.pp-listing-ui-v2.page-front .pp-home-more__ch small {
  font-size: 13px;
  font-weight: 600;
  color: var(--pp-muted);
}

body.pp-listing-ui-v2.page-front .pp-home-more__go {
  flex: 0 0 auto;
  margin-left: auto;
  padding: 8px 14px;
  border-radius: 12px;
  background: #DDF1FC;
  font-size: 14px;
  font-weight: 800;
  color: #075A80;
  transition: background-color .15s ease, color .15s ease;
}

body.pp-listing-ui-v2.page-front .pp-home-more__channels a:hover .pp-home-more__go { background: #2AABEE; color: #fff; }

/* The sidebar "about" block is empty on the home (its art is hidden in
   html.tpl.php); drop its white padding band above the footer. */
body.pp-listing-ui-v2.page-front .pp-home-extra .row-sidebar_first {
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
}

/* ------------------------------------------------------------------ */
/* Responsive                                                          */
/* ------------------------------------------------------------------ */

@media (max-width: 1279px) {
  body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-vacancies-view > .vws-content { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.pp-listing-ui-v2.page-front .pp-home-hero .pp-home-hero__title { font-size: 56px; }
  body.pp-listing-ui-v2.page-front .pp-home-guide__art { width: 170px; height: 140px; }
  body.pp-listing-ui-v2.page-front .pp-home-guide__title { max-width: calc(100% - 150px); font-size: 25px; }
  body.pp-listing-ui-v2.page-front .pp-home-guide__facts { max-width: calc(100% - 140px); }
  body.pp-listing-ui-v2.page-front .row-content .all-chapterbest--items > .vws-content { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}

/* 768–1099: menu wraps onto a second header row; no side panel */
@media (max-width: 1099px) {
  body.pp-listing-ui-v2.page-front .pp-home-feed-layout { grid-template-columns: minmax(0, 1fr); }
  body.pp-listing-ui-v2.page-front .pp-home-filters { display: none; }
  body.pp-listing-ui-v2.page-front .pp-home-hero__tools { display: flex; }
  body.pp-listing-ui-v2.page-front .pp-home-hero { display: block; padding-bottom: 20px; }
  body.pp-listing-ui-v2.page-front .pp-home-hero__art { position: absolute; top: 8px; right: -8px; width: 200px; }
  body.pp-listing-ui-v2.page-front .pp-home-hero__glow { width: 220px; height: 190px; margin-top: -95px; }
  body.pp-listing-ui-v2.page-front .pp-home-hero .pp-home-hero__title,
  body.pp-listing-ui-v2.page-front .pp-home-hero__lead { max-width: calc(100% - 200px); }
  body.pp-listing-ui-v2.page-front .pp-home-hero__tools { margin-top: 14px; }

  body.pp-listing-ui-v2.page-front .pp-home-check { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; grid-template-areas: "head" "list" "foot"; }
  body.pp-listing-ui-v2.page-front .pp-home-check::before { display: none; }
  body.pp-listing-ui-v2.page-front .pp-home-check__head {
    padding: 36px 32px 32px;
    background:
      radial-gradient(circle at 100% 0, rgba(120, 200, 255, .45) 0, rgba(120, 200, 255, 0) 55%),
      linear-gradient(160deg, #0B62F4 0%, #0A4FD0 100%);
  }
  body.pp-listing-ui-v2.page-front .pp-home-check__lead { max-width: 560px; }
  body.pp-listing-ui-v2.page-front .pp-home-check__list { padding: 24px 24px 8px; }
  body.pp-listing-ui-v2.page-front .pp-home-check__foot { padding: 16px 24px 28px; color: var(--pp-text); }
  body.pp-listing-ui-v2.page-front .pp-home-check__progress i { background: #E3ECF7; }
  body.pp-listing-ui-v2.page-front .pp-home-check__status { color: var(--pp-muted); }
  body.pp-listing-ui-v2.page-front .pp-home-check__cta { background: var(--pp-blue-2); color: #fff; }
  body.pp-listing-ui-v2.page-front .pp-home-check__link { color: var(--pp-blue-2); }
  body.pp-listing-ui-v2.page-front .pp-home-check__foot a:focus-visible { outline-color: var(--pp-blue-2); }

  body.pp-listing-ui-v2.page-front .pp-home-guides__grid { grid-template-columns: minmax(0, 1fr); }

  body.pp-listing-ui-v2.page-front .section-main-app > .row-content { grid-template-columns: minmax(0, 1fr); }
  body.pp-listing-ui-v2.page-front .row-content > :is(.block-views-professii-block-2, .block-block-61) { grid-column: 1; }
  body.pp-listing-ui-v2.page-front .row-content > .block-views-professii-block-2 { margin-bottom: 20px !important; }
  body.pp-listing-ui-v2.page-front .row-content .all-chapterbest--items > .vws-content { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-employer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-company-guide { grid-column: 1 / -1; grid-row: auto; }
  body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__card { min-height: 200px; padding-right: 200px; }
  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .row-column { grid-template-columns: minmax(0, 1fr) !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:first-child { grid-row: auto; }
  body.pp-listing-ui-v2.page-front .pp-home-more__grid { grid-template-columns: minmax(0, 1fr); }
}

@media (min-width: 768px) and (max-width: 1099px) {
  body.pp-listing-ui-v2.page-front { --pp-home-w: min(calc(100% - 48px), 960px); --pp-home-top: 168px; }
}

@media (max-width: 767px) {
  body.pp-listing-ui-v2.page-front { --pp-home-w: calc(100% - 24px); --pp-home-top: 76px; }

  body.pp-listing-ui-v2.page-front .pp-home-hero {
    display: block;
    padding: 14px 0 18px;
  }

  body.pp-listing-ui-v2.page-front .pp-home-hero__art {
    position: absolute;
    top: 56px;
    right: -8px;
    width: 100px;
  }

  body.pp-listing-ui-v2.page-front .pp-home-hero__glow { width: 130px; height: 120px; margin-top: -60px; }

  body.pp-listing-ui-v2.page-front .pp-home-hero__live { margin-bottom: 10px; font-size: 12px; }

  body.pp-listing-ui-v2.page-front .pp-home-hero .pp-home-hero__title {
    max-width: none;
    margin-bottom: 10px;
    font-size: 38px;
  }

  /* "мечты" always on its own line, clear of the lighthouse */
  body.pp-listing-ui-v2.page-front .pp-home-hero .pp-home-hero__title em { display: block; }

  body.pp-listing-ui-v2.page-front .pp-home-hero__lead { max-width: none; margin-bottom: 18px; font-size: 16px; }

  body.pp-listing-ui-v2.page-front .pp-home-search__form { flex-wrap: wrap; padding: 6px; border-radius: 16px; }
  body.pp-listing-ui-v2.page-front .pp-home-search__icon { left: 18px; top: 33px; }
  body.pp-listing-ui-v2.page-front .pp-home-search .pp-home-search__input { flex-basis: 100%; height: 54px; padding: 0 8px 0 44px; font-size: 16px; }
  body.pp-listing-ui-v2.page-front .pp-home-search .pp-home-search__submit { flex: 1 1 100%; height: 50px; }

  body.pp-listing-ui-v2.page-front .pp-home-hero__popular {
    flex-wrap: nowrap;
    overflow-x: auto;
    margin: 14px -12px 0;
    padding: 0 12px 2px;
    scrollbar-width: none;
  }
  body.pp-listing-ui-v2.page-front .pp-home-hero__popular::-webkit-scrollbar { display: none; }
  body.pp-listing-ui-v2.page-front .pp-home-hero__popular a { flex: 0 0 auto; min-height: 44px; }
  body.pp-listing-ui-v2.page-front .pp-home-hero__popular-label { flex: 0 0 auto; }

  body.pp-listing-ui-v2.page-front .pp-home-hero__tools { margin-top: 12px; }
  body.pp-listing-ui-v2.page-front .pp-home-hero__tool { flex: 1 1 0; justify-content: center; padding: 0 10px; font-size: 14px; white-space: nowrap; }

  body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-vacancies-view > .vws-content { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-home-vacancies-heading h2 { font-size: 24px; }
  body.pp-listing-ui-v2.page-front .pp-home-feed-main .pp-home-vacancies-more__link { width: 100%; justify-content: center; }

  /* lower page */
  body.pp-listing-ui-v2.page-front .pp-home-section-title,
  body.pp-listing-ui-v2.page-front .row-content > .block > .block-title,
  body.pp-listing-ui-v2.page-front .row-content .pp-category-section > .block-title { font-size: 28px !important; }
  body.pp-listing-ui-v2.page-front .pp-home-head { margin-bottom: 16px; }

  body.pp-listing-ui-v2.page-front .pp-home-check { margin-top: 48px; border-radius: 24px; }
  body.pp-listing-ui-v2.page-front .pp-home-check__head { padding: 28px 20px 24px; }
  body.pp-listing-ui-v2.page-front .pp-home-check .pp-home-check__title { font-size: 30px; }
  body.pp-listing-ui-v2.page-front .pp-home-check__num { font-size: 140px; top: -22px; right: -8px; }
  body.pp-listing-ui-v2.page-front .pp-home-check__list { padding: 14px 12px 4px; gap: 8px; }
  body.pp-listing-ui-v2.page-front .pp-home-check__list label { grid-template-columns: 28px 1fr; gap: 12px; padding: 14px 14px 14px 12px; border-radius: 16px; }
  body.pp-listing-ui-v2.page-front .pp-home-check__list b { font-size: 16px; }
  body.pp-listing-ui-v2.page-front .pp-home-check__foot { padding: 12px 20px 24px; }
  body.pp-listing-ui-v2.page-front .pp-home-check__cta { width: 100%; justify-content: center; }

  body.pp-listing-ui-v2.page-front .pp-home-guides { margin-top: 48px; }
  body.pp-listing-ui-v2.page-front .pp-home-guides__grid { gap: 12px; }
  body.pp-listing-ui-v2.page-front .pp-home-guide { min-height: 0; padding: 24px 20px 24px; border-radius: 24px; }
  body.pp-listing-ui-v2.page-front .pp-home-guide__art { width: 110px; height: 90px; right: 8px; bottom: auto; top: 14px; opacity: .95; }
  body.pp-listing-ui-v2.page-front .pp-home-guide__eyebrow { margin-bottom: 14px; }
  body.pp-listing-ui-v2.page-front .pp-home-guide__title { max-width: none; padding-right: 0; font-size: 23px; }
  body.pp-listing-ui-v2.page-front .pp-home-guide__eyebrow + .pp-home-guide__title { margin-top: 30px; }
  body.pp-listing-ui-v2.page-front .pp-home-guide__facts { max-width: none; margin-bottom: 20px; }

  body.pp-listing-ui-v2.page-front .section-main-app > .row-content { margin-top: 48px !important; }
  body.pp-listing-ui-v2.page-front .row-content > .block,
  body.pp-listing-ui-v2.page-front .row-content .pp-category-section { margin-bottom: 48px !important; }
  body.pp-listing-ui-v2.page-front .row-content > :is(.block-views-professii-block-4, .block-views-professii-block-2) { margin-bottom: 12px !important; }
  body.pp-listing-ui-v2.page-front .row-content > .block-system-main { margin: 0 !important; }
  body.pp-listing-ui-v2.page-front .row-content > :is(.block-views-professii-block-4, .block-views-professii-block-2, .block-views-professii-block-3, .block-block-61) { padding: 22px 16px 20px !important; border-radius: 24px !important; }
  body.pp-listing-ui-v2.page-front .row-content > :is(.block-views-professii-block-4, .block-views-professii-block-2, .block-views-professii-block-3) > .block-title { padding-right: 0 !important; font-size: 23px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-category-section > .block-title,
  body.pp-listing-ui-v2.page-front .row-content > .block > .block-title { padding-right: 0 !important; }

  /* "see all" links move under their content as full-width buttons */
  body.pp-listing-ui-v2.page-front .row-content .pp-category-more,
  body.pp-listing-ui-v2.page-front .row-content > .block :is(.all-chapterbest--items, .best-professii--items, .top-company--items, .all-articles--items) .more-link {
    position: static !important;
    margin: 14px 0 0 !important;
    text-align: left !important;
  }
  body.pp-listing-ui-v2.page-front .row-content .pp-category-more a,
  body.pp-listing-ui-v2.page-front .row-content > .block .more-link a { width: 100%; justify-content: center; }

  body.pp-listing-ui-v2.page-front .row-content .pp-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-category-tile {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 12px !important;
    min-height: 0 !important;
    padding: 14px !important;
    border-radius: 20px !important;
    font-size: 15px !important;
  }
  body.pp-listing-ui-v2.page-front .row-content .pp-category-icon { flex-basis: 44px !important; width: 44px !important; height: 44px !important; border-radius: 14px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-category-icon svg { width: 22px !important; height: 22px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-category-tile::after { display: none; }
  body.pp-listing-ui-v2.page-front .row-content .pp-category-tile:last-child:nth-child(odd) { grid-column: 1 / -1; flex-direction: row; align-items: center !important; }

  body.pp-listing-ui-v2.page-front .row-content .all-chapterbest--items > .vws-content { grid-template-columns: minmax(0, 1fr) !important; gap: 2px !important; }
  body.pp-listing-ui-v2.page-front .row-content .chapter-item > a { min-height: 56px !important; padding: 6px 8px 6px 4px !important; }
  body.pp-listing-ui-v2.page-front .row-content .chapter-item .image { flex-basis: 44px; width: 44px; height: 44px; }
  body.pp-listing-ui-v2.page-front .row-content :is(.best-professii--items a, .mianfast-block__filter a) { min-height: 44px !important; padding: 8px 14px !important; white-space: normal !important; }

  body.pp-listing-ui-v2.page-front .row-content .pp-employer-grid { grid-template-columns: minmax(0, 1fr) !important; grid-auto-rows: auto; gap: 10px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-company-guide { grid-row: auto; }
  body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__card { min-height: 0; padding: 22px 20px 24px; padding-right: 120px; }
  body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__title { font-size: 22px; }
  body.pp-listing-ui-v2.page-front .row-content .pp-company-guide__art { width: 120px; height: 102px; }
  body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item:not(.pp-company-guide) > a { grid-template-columns: 52px minmax(0, 1fr) 14px; column-gap: 14px !important; padding: 16px !important; border-radius: 20px !important; }
  body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item-logo { width: 52px !important; height: 52px !important; padding: 7px !important; }
  body.pp-listing-ui-v2.page-front .row-content .tops-comnany__item-name { font-size: 16px !important; }

  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .row-column { grid-template-columns: minmax(0, 1fr) !important; gap: 12px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:first-child { grid-row: auto; }
  body.pp-listing-ui-v2.page-front .row-content .pp-story-card .pp-editorial-cover { height: 170px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:first-child .pp-editorial-cover { flex: 0 0 auto; min-height: 0; }
  body.pp-listing-ui-v2.page-front .row-content .pp-story-card .pp-editorial-cover__topic { font-size: 24px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-story-content { padding: 18px 18px 20px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-story-card :is(.article-item__name, .article-item__name a) { font-size: 20px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .pp-story-card { grid-template-columns: 104px minmax(0, 1fr); }
  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .pp-editorial-cover { min-height: 0; }
  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .pp-editorial-cover__topic { display: none !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .pp-story-content { padding: 14px 16px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) :is(.article-item__name, .article-item__name a) { font-size: 16px !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-home-journal .pp-story-column:not(:first-child) .article-item__anons { display: none !important; }

  body.pp-listing-ui-v2.page-front .pp-home-more { margin-bottom: 48px; }
  body.pp-listing-ui-v2.page-front .pp-home-more__card { padding: 26px 20px; border-radius: 24px; }
  body.pp-listing-ui-v2.page-front .pp-home-more__card--resume { min-height: 0; padding-bottom: 120px; }
  body.pp-listing-ui-v2.page-front .pp-home-more__card--resume h3 { font-size: 24px; }
  body.pp-listing-ui-v2.page-front .pp-home-more__art { width: 120px; height: 112px; right: 10px; bottom: -4px; }
  body.pp-listing-ui-v2.page-front .pp-home-more__channels a { min-height: 64px; padding: 10px; gap: 12px; }
  body.pp-listing-ui-v2.page-front .pp-home-more__ch b { font-size: 15px; }
  body.pp-listing-ui-v2.page-front .pp-home-more__go { padding: 6px 10px; font-size: 13px; }
}

@media (max-width: 359px) {
  body.pp-listing-ui-v2.page-front .pp-home-hero .pp-home-hero__title { font-size: 32px; }
  body.pp-listing-ui-v2.page-front .pp-home-hero__art { width: 84px; }
  body.pp-listing-ui-v2.page-front .row-content .pp-category-grid { grid-template-columns: minmax(0, 1fr) !important; }
  body.pp-listing-ui-v2.page-front .row-content .pp-category-tile { flex-direction: row; align-items: center !important; }
  body.pp-listing-ui-v2.page-front .pp-home-more__go { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  body.pp-listing-ui-v2.page-front :is(.pp-home-hero, .pp-home-feed-layout, .pp-home-check, .pp-home-guides, .pp-home-more, .row-content) *,
  body.pp-listing-ui-v2.page-front :is(.pp-home-hero, .pp-home-feed-layout, .pp-home-check, .pp-home-guides, .pp-home-more, .row-content) *::after {
    transition: none !important;
    animation: none !important;
  }
  body.pp-listing-ui-v2.page-front .pp-home-hero__glow { display: none; }
  body.pp-listing-ui-v2.page-front .pp-home-hero__beam { display: inline; }
  body.pp-listing-ui-v2.page-front :is(.pp-home-guide, .pp-category-tile, .tops-comnany__item > a, .pp-story-card, .pp-company-guide__card):hover { transform: none !important; }
  body.pp-listing-ui-v2.page-front .pp-home-guide:hover .pp-home-guide__art { transform: none; }
}

@media print {
  body.pp-listing-ui-v2.page-front :is(.pp-home-hero__art, .pp-home-filters, .pp-home-check__num, .pp-home-hero__tools, .pp-home-guide__art, .pp-home-more__art) { display: none; }
}

/* Keep cards and filters in one stable row. Only the site menu may be sticky. */
@media (min-width: 981px) {
  body.pp-listing-ui-v2.page-front .pp-home-feed-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 300px !important;
    align-items: start !important;
    gap: 28px !important;
    position: relative !important;
    padding-right: 0 !important;
  }
  body.pp-listing-ui-v2.page-front .pp-home-feed-main {
    min-width: 0 !important;
    width: auto !important;
    max-width: none !important;
  }
  body.pp-listing-ui-v2.page-front .pp-home-feed-layout > .pp-home-filters {
    display: block !important;
    position: static !important;
    top: auto !important;
    width: auto !important;
  }
}
