.js-partners-hero { padding-block: 20px 48px; border-bottom: 1px solid var(--border); }
.js-partners-breadcrumb { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; color: #666; font-size: 12px; margin-bottom: 30px; }
.js-partners-breadcrumb a { font-family: var(--font-plex), sans-serif; padding-block: 10px; }
.js-partners-breadcrumb a:hover { color: var(--brand-ink); }
.js-partners-heroGrid { display: grid; gap: 32px; }
.js-partners-title { font-size: clamp(24px, 6.5vw, 32px); line-height: 1.65; letter-spacing: 0; margin-block: 18px 24px; font-weight: 700; }
.js-partners-prose { display: flex; flex-direction: column; gap: 20px; }
.js-partners-prose p { line-height: 1.95; }
.js-partners-heroPhoto { align-self: center; }
.js-partners-heroPhoto img { width: 100%; aspect-ratio: 1.4; border-radius: 4px; object-fit: cover; }
.js-partners-heroPhoto figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; padding-top: 14px; font-size: 11px; color: #555; }
.js-partners-heroPhoto figcaption > span:first-child { color: var(--brand-ink); font-size: 10px; letter-spacing: .12em; }
.js-partners-imageNote { font-size: 10px; color: #666; margin-top: 6px; text-align: right; }
.js-partners-split { display: grid; gap: 18px; }
.js-partners-split > * { min-width: 0; }
.js-partners-smallIcons { display: flex; align-items: center; gap: 20px; margin: 4px 0 16px; color: var(--primary); }
.js-partners-smallIcons svg { width: 30px; height: 30px; stroke-width: 1.2; }
.js-partners-smallIcons > span { width: 32px; border-top: 1px solid var(--primary); opacity: .4; }
.js-partners-note { border-left: 2px solid var(--primary); padding-left: 20px; margin-top: 8px; }
.js-partners-gray { background: #f5f6f7; }
.js-partners-warm { background: var(--warm); }
.js-partners-consultations { margin-top: 36px; border-top: 1px solid var(--border); padding-top: 26px; }
.js-partners-consultations h3 { font-size: 15px; margin-bottom: 18px; }
.js-partners-checkList { padding: 0; margin: 0; list-style: none; display: grid; gap: 0; }
.js-partners-checkList li { display: flex; align-items: flex-start; gap: 12px; padding-block: 13px; border-bottom: 1px solid var(--border); }
.js-partners-checkList svg { color: var(--brand-ink); flex-shrink: 0; margin-top: 5px; }
.js-partners-muted { color: #666; font-size: 13px; }
.js-partners-reassurance { margin-top: 26px; }
.js-partners-reassurance h3 { font-size: 15px; margin-bottom: 12px; }
.js-partners-reassurance p { color: #555; }
.js-partners-outlineIcon { color: var(--primary); margin-block: 8px 20px; }
.js-partners-referralList { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; padding: 0; margin: 0 0 26px; gap: 0 20px; }
.js-partners-referralList li { border-bottom: 1px solid var(--border); padding-block: 14px; font-size: 13px; }
.js-partners-privacyNote { color: #666; font-size: 12px; margin-top: 18px; }
.js-partners-other { padding-bottom: 20px; }
.js-partners-otherInner { background: #f5f6f7; padding: 30px 24px; border-radius: 4px; }
.js-partners-otherInner .js-partners-prose { max-width: 760px; }
.js-partners-companyTopics { list-style: none; padding: 0; display: grid; gap: 30px; margin-top: 36px; }
.js-partners-companyTopics li { border-top: 1px solid var(--border); padding-top: 22px; }
.js-partners-topicTop { display: flex; align-items: center; justify-content: space-between; color: var(--brand-ink); }
.js-partners-topicTop > span { font-size: 20px; }
.js-partners-topicTop svg { color: var(--primary); }
.js-partners-companyTopics h3 { font-size: 20px; margin-block: 16px 12px; }
.js-partners-companyTopics p { color: #555; font-size: 13px; }
.js-partners-cooperation { padding: 0; margin: 30px 0 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; border-top: 1px solid var(--border); padding-top: 28px; }
.js-partners-cooperation li { display: flex; flex-direction: column; gap: 14px; font-size: 13px; }
.js-partners-cooperation svg { color: var(--primary); }
.js-partners-flow { list-style: none; padding: 0; margin: 34px 0 26px; }
.js-partners-flow li { position: relative; display: flex; align-items: center; gap: 20px; padding-bottom: 32px; }
.js-partners-flow li:not(:last-child)::after { content: ''; position: absolute; top: 38px; bottom: 0; left: 19px; border-left: 1px solid var(--border); }
.js-partners-flow li:last-child { padding-bottom: 0; }
.js-partners-stepNumber { display: grid; place-items: center; flex-shrink: 0; width: 40px; height: 40px; border: 1px solid var(--border); border-radius: 50%; color: var(--brand-ink); font-size: 13px; }
.js-partners-flow li > div { display: flex; align-items: center; gap: 14px; }
.js-partners-flow svg { color: var(--primary); flex-shrink: 0; }
.js-partners-flow h3 { font-size: 15px; }
.js-partners-flowNote { color: #555; font-size: 13px; border-top: 1px solid var(--border); padding-top: 22px; }
.js-partners-final .final-actions { gap: 14px; }
.js-partners-contactButton { max-width: 100%; padding-inline: 16px; gap: 8px; }
.js-partners-contactButton > svg:last-child { margin-left: 0; }
.js-partners-phoneButton:hover { background: var(--warm); }

@media (min-width: 640px) {
  .js-partners-hero { padding-block: 24px 64px; }
  .js-partners-breadcrumb { margin-bottom: 38px; }
  .js-partners-title { font-size: clamp(30px, 3vw, 40px); }
  .js-partners-heroGrid { gap: 40px; }
  .js-partners-heroPhoto img { aspect-ratio: 1.6; }
  .js-partners-consultations .js-partners-checkList { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 40px; }
  .js-partners-companyTopics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
  .js-partners-otherInner { padding: 48px; }
  .js-partners-cooperation { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
  .js-partners-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
  .js-partners-flow li { align-items: flex-start; flex-direction: column; gap: 20px; padding-bottom: 0; }
  .js-partners-flow li:not(:last-child)::after { top: 20px; bottom: auto; left: 52px; right: -8px; border-left: 0; border-top: 1px solid var(--border); }
  .js-partners-flow li > div { flex-direction: column; align-items: flex-start; gap: 14px; }
  .js-partners-flowNote { margin-top: 32px; }
}
@media (min-width: 1024px) {
  .js-partners-heroGrid { grid-template-columns: 1.2fr 1fr; gap: 56px; align-items: center; }
  .js-partners-heroPhoto img { aspect-ratio: 1.25; }
  .js-partners-split { grid-template-columns: 1fr 1fr; gap: 80px; }
  .js-partners-consultations { margin-top: 48px; }
  .js-partners-companyTopics { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; margin-top: 48px; }
  .js-partners-companyTopics h3 { font-size: 19px; }
  .js-partners-otherInner { position: relative; overflow: hidden; padding: 56px 64px; }
  .js-partners-otherInner::after { content: ''; position: absolute; width: 160px; height: 160px; right: -80px; top: -80px; border: 28px solid var(--primary); border-radius: 50%; opacity: .035; pointer-events: none; }
  .js-partners-cooperation li { flex-direction: row; align-items: center; }
  .js-partners-flow li > div { flex-direction: row; }
}
