/* Local-only refinements for the four approved elements. */

/* 1. Eight-step process: standalone cards on desktop/tablet. */
#process .roadmap {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#process .roadmap::before,
#process .roadmap::after {
  content: none !important;
}

body main #process.section .container > .roadmap > li:nth-child(n) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 56px !important;
  grid-template-rows: auto auto 1fr !important;
  gap: 0 14px !important;
  align-content: start !important;
  align-items: start !important;
  min-width: 0 !important;
  min-height: 222px !important;
  padding: 24px !important;
  border: 1px solid #d8e4f1 !important;
  border-top: 3px solid #cbdced !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(18, 52, 90, 0.055) !important;
}

body main #process.section .container > .roadmap > li:nth-child(n)::before,
body main #process.section .container > .roadmap > li:nth-child(n)::after {
  content: none !important;
}

body main #process.section .container > .roadmap > li:nth-child(n) > span {
  grid-column: 1 !important;
  grid-row: 1 !important;
  place-self: start !important;
  width: 46px !important;
  height: 36px !important;
  min-width: 46px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 11px !important;
  background: #12345a !important;
  color: #fff !important;
  font: 800 13px/1 "Inter", Arial, sans-serif !important;
  box-shadow: none !important;
}

body main #process.section .container > .roadmap > li:nth-child(n) > i {
  grid-column: 2 !important;
  grid-row: 1 !important;
  place-self: start end !important;
  width: 56px !important;
  height: 56px !important;
  margin: 0 !important;
  border: 1px solid #dbe7f3 !important;
  border-radius: 15px !important;
  background: #eef5fb !important;
}

body main #process.section .container > .roadmap > li:nth-child(2n) > i {
  background: #fff8e8 !important;
  border-color: #efe0b9 !important;
}

body main #process.section .container > .roadmap > li:nth-child(n) > i img {
  width: 43px !important;
  height: 43px !important;
  object-fit: contain !important;
}

body main #process.section .container > .roadmap > li:nth-child(n) > h3 {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  align-self: start !important;
  margin: 20px 0 8px !important;
  color: #111a2b !important;
  font: 800 19px/1.22 "Inter", Arial, sans-serif !important;
}

body main #process.section .container > .roadmap > li:nth-child(n) > p {
  grid-column: 1 / -1 !important;
  grid-row: 3 !important;
  align-self: start !important;
  margin: 0 !important;
  color: #667389 !important;
  font: 400 15px/1.5 "Inter", Arial, sans-serif !important;
}

@media (min-width: 700px) and (max-width: 1199px) {
  #process .roadmap {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) {
    grid-template-columns: minmax(0, 1fr) 56px !important;
    grid-template-rows: auto auto 1fr !important;
    min-height: 205px !important;
    padding: 24px !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) > span {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: start !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) > i {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) > h3 {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) > p {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
  }
}

@media (max-width: 699px) {
  #process .roadmap {
    display: block !important;
    padding: 4px 20px !important;
    overflow: hidden !important;
    border: 1px solid #d8e4f1 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 10px 28px rgba(18, 52, 90, 0.055) !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) {
    grid-template-columns: 42px 46px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 12px !important;
    row-gap: 5px !important;
    min-height: 0 !important;
    padding: 20px 0 !important;
    border: 0 !important;
    border-top: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) + li {
    border-top: 1px solid #e1eaf4 !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n)::after {
    content: "" !important;
    position: absolute !important;
    z-index: 0 !important;
    top: 50% !important;
    bottom: auto !important;
    left: 20px !important;
    right: auto !important;
    width: 2px !important;
    height: calc(100% + 24px) !important;
    background: #d9e4f2 !important;
    pointer-events: none !important;
  }

  body main #process.section .container > .roadmap > li:last-child::after {
    content: none !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) > span {
    z-index: 2 !important;
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    border-radius: 12px !important;
    box-shadow: 0 0 0 6px #fff !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) > i {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    width: 46px !important;
    height: 46px !important;
    border: 0 !important;
    background: transparent !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) > i img {
    width: 43px !important;
    height: 43px !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) > h3 {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: end !important;
    margin: 0 !important;
    font-size: 18px !important;
  }

  body main #process.section .container > .roadmap > li:nth-child(n) > p {
    grid-column: 3 !important;
    grid-row: 2 !important;
    font-size: 15px !important;
    line-height: 1.48 !important;
  }
}

/* 2. Debts, collectors and bailiffs: one consistent four-card grid. */
#debt-lists.debt-lists {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

#debts .debt-list-block,
#debts .enforcement-part {
  position: relative;
  min-width: 0;
  margin: 0 !important;
  padding: 28px 30px 30px !important;
  border: 1px solid #dbe6f3 !important;
  border-top-width: 3px !important;
  border-radius: 18px !important;
  box-shadow: 0 8px 24px rgba(42, 70, 105, 0.05) !important;
}

#debts .debt-list-positive {
  border-color: #4d9d70 #cfe5d5 #cfe5d5 !important;
  background: #f4faf6 !important;
}

#debts .debt-list-neutral {
  border-color: #d8797f #efcaca #efcaca !important;
  background: #fff7f7 !important;
}

#debts .enforcement-collectors {
  border-color: #d5a34a #eadcc4 #eadcc4 !important;
  background: #fffbf4 !important;
}

#debts .enforcement-bailiffs {
  border-color: #3978c8 #ccddf3 #ccddf3 !important;
  background: #f6f9ff !important;
}

#debts .debt-list-head,
#debts .enforcement-head {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}

#debts .debt-list-icon,
#debts .enforcement-icon {
  width: 48px !important;
  height: 48px !important;
  flex: 0 0 48px !important;
}

#debts .debt-list-icon img,
#debts .enforcement-icon img {
  width: 34px !important;
  height: 34px !important;
}

#debts .debt-list-head h3,
#debts .enforcement-head h3 {
  color: #111a2b !important;
  font: 800 21px/1.24 "Inter", Arial, sans-serif !important;
}

#debts .debt-list-block ul,
#debts .enforcement-part ul {
  display: block !important;
  margin-top: 21px !important;
}

#debts .debt-list-block li + li,
#debts .enforcement-part li + li {
  margin-top: 10px !important;
}

#debts .enforcement-part .text-link {
  margin-top: 26px !important;
}

@media (max-width: 640px) {
  #debt-lists.debt-lists {
    grid-template-columns: 1fr !important;
    gap: 15px !important;
  }

  #debts .debt-list-block,
  #debts .enforcement-part {
    padding: 20px 21px 22px !important;
  }

  #debts .debt-list-head h3,
  #debts .enforcement-head h3 {
    font-size: 18px !important;
  }
}

/* Trust reasons: compact cards without changing the existing contacts panel. */
#trust .trust-layout {
  display: block !important;
}

#trust .section-head.compact {
  max-width: 860px !important;
  margin: 0 !important;
  padding: 0 !important;
}

#trust .section-head.compact h2 {
  max-width: 760px !important;
  margin: 0 !important;
  color: #12345a !important;
  font-family: "Bitter", Georgia, serif !important;
  font-size: clamp(52px, 4.4vw, 60px) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: -0.025em !important;
  text-wrap: balance;
}

#trust .trust-subtitle {
  max-width: 780px !important;
  margin: 22px 0 0 !important;
  color: #667389 !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

#trust .trust-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin: 36px 0 0 !important;
}

#trust .trust-grid article {
  min-width: 0 !important;
  min-height: 154px !important;
  display: grid !important;
  grid-template-columns: 60px minmax(0, 1fr) !important;
  grid-template-rows: auto 1fr !important;
  gap: 8px 18px !important;
  align-content: start !important;
  align-items: start !important;
  padding: 26px !important;
  border: 1px solid #d8e4f1 !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 8px 24px rgba(18, 52, 90, 0.045) !important;
  text-align: left !important;
}

#trust .trust-grid article:nth-child(1),
#trust .trust-grid article:nth-child(3) {
  background: #f7fbff !important;
  border-color: #cfdeed !important;
}

#trust .trust-grid article::before,
#trust .trust-grid article::after {
  content: none !important;
}

#trust .trust-icon {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  place-self: start !important;
  width: 60px !important;
  height: 60px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #d8e6f3 !important;
  border-radius: 15px !important;
  background: #eef5fb !important;
  box-shadow: none !important;
}

#trust .trust-icon img,
#trust .trust-grid article:nth-child(n) .trust-icon img {
  width: 48px !important;
  height: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
  display: block !important;
  object-fit: contain !important;
  filter: none !important;
}

#trust .trust-grid h3 {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: end !important;
  max-width: none !important;
  margin: 0 !important;
  color: #12345a !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 21px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  text-align: left !important;
}

#trust .trust-grid p {
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: start !important;
  max-width: none !important;
  margin: 0 !important;
  color: #667389 !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.48 !important;
  text-align: left !important;
}

#trust .proof-panel {
  grid-column: auto !important;
  grid-row: auto !important;
}

@media (min-width: 700px) and (max-width: 1199px) {
  #trust .section-head.compact h2 {
    font-size: clamp(44px, 6vw, 50px) !important;
  }

  #trust .trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
    margin-top: 34px !important;
  }

  #trust .trust-grid article {
    min-height: 150px !important;
    padding: 24px !important;
  }

  #trust .trust-icon {
    width: 58px !important;
    height: 58px !important;
  }

  #trust .trust-icon img,
  #trust .trust-grid article:nth-child(n) .trust-icon img {
    width: 46px !important;
    height: 46px !important;
  }
}

@media (max-width: 699px) {
  #trust .section-head.compact h2 {
    max-width: 340px !important;
    font-size: clamp(36px, 10vw, 40px) !important;
    line-height: 1.02 !important;
  }

  #trust .trust-subtitle {
    margin-top: 20px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
  }

  #trust .trust-grid {
    display: block !important;
    margin-top: 32px !important;
    padding: 0 18px !important;
    overflow: hidden !important;
    border: 1px solid #d8e4f1 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 8px 24px rgba(18, 52, 90, 0.045) !important;
  }

  #trust .trust-grid article,
  #trust .trust-grid article:nth-child(1),
  #trust .trust-grid article:nth-child(3) {
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: 56px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 14px !important;
    row-gap: 5px !important;
    padding: 19px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  #trust .trust-grid article + article {
    border-top: 1px solid #e1eaf4 !important;
  }

  #trust .trust-grid article:nth-child(n) > .trust-icon {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    width: 56px !important;
    height: 56px !important;
    border-radius: 14px !important;
  }

  #trust .trust-icon img,
  #trust .trust-grid article:nth-child(n) .trust-icon img {
    width: 43px !important;
    height: 43px !important;
  }

  #trust .trust-grid article:nth-child(n) > h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    justify-self: stretch !important;
    width: auto !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
    text-align: left !important;
  }

  #trust .trust-grid article:nth-child(n) > p {
    grid-column: 2 !important;
    grid-row: 2 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    justify-self: stretch !important;
    width: auto !important;
    text-align: left !important;
  }
}

/* Section rhythm after moving the existing video block below reviews. */
#trust {
  padding-bottom: 40px !important;
}

#team {
  padding-top: 48px !important;
}

#reviews {
  padding-bottom: 40px !important;
}

#trusted {
  min-height: 0 !important;
  height: auto !important;
  padding-top: 48px !important;
  padding-bottom: 40px !important;
  transform: none !important;
}

#quiz {
  padding-top: 48px !important;
}

@media (min-width: 700px) and (max-width: 1199px) {
  #trust,
  #reviews,
  #trusted {
    padding-bottom: 32px !important;
  }

  #team,
  #trusted,
  #quiz {
    padding-top: 40px !important;
  }
}

@media (max-width: 699px) {
  #trust,
  #reviews,
  #trusted {
    padding-bottom: 24px !important;
  }

  #team,
  #trusted,
  #quiz {
    padding-top: 32px !important;
  }
}

/* 3. Typography for the three possible paths. */
#result .result-path h4 {
  position: relative;
  margin: 0 0 18px !important;
  padding-bottom: 12px;
  color: #12345a !important;
  font-family: "Bitter", Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

#result .result-path h4::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 34px;
  height: 3px;
  border-radius: 999px;
  background: #c49a3a;
}

#result .result-path p {
  color: #667389 !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
}

#result .result-path strong {
  color: #25354b !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.42 !important;
}

@media (max-width: 900px) {
  #result .result-path h4 {
    font-size: 23px !important;
  }
}

@media (max-width: 640px) {
  #result .result-path h4 {
    font-size: 22px !important;
  }

  #result .result-path p,
  #result .result-path strong {
    font-size: 16px !important;
  }
}

/* 4. Contacts and compact Yandex Maps CTA. */
#trust .proof-item a {
  color: #12345a !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

#trust .proof-item a:hover,
#trust .proof-item a:focus-visible {
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

#trust .proof-item a[href^="mailto:"] {
  overflow-wrap: anywhere;
  word-break: normal;
}

#trust .map-card {
  position: relative;
  min-height: 72px !important;
  margin-top: 8px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #12345a !important;
  box-shadow: none !important;
}

#trust .map-card a {
  position: absolute !important;
  inset: 0 !important;
  min-height: 72px;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center !important;
  gap: 24px !important;
  width: auto !important;
  min-width: 0 !important;
  box-sizing: border-box;
  padding: 24px 30px !important;
  color: #fff !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  white-space: normal !important;
  text-decoration: none !important;
}

#trust .map-card a > span {
  min-width: 0;
  color: inherit;
  font: inherit;
}

#trust .map-card b {
  flex: 0 0 auto;
  color: #e3c56c;
  font-size: 24px !important;
}

#trust .map-card a:hover,
#trust .map-card a:focus-visible {
  background: #183f6e;
  border-radius: 14px;
}

@media (max-width: 640px) {
  #trust .map-card {
    min-height: 60px !important;
  }

  #trust .map-card a {
    min-height: 60px;
    gap: 18px !important;
    padding: 20px 22px !important;
    font-size: 15px !important;
  }
}
