.jb-trail { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-bottom: 22px; font-family: var(--cx-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: #8f939a; }
.jb-trail a { color: #b4bcc4; }
.jb-trail a:hover { color: #fff; }

.jb-list { padding: clamp(88px, 10vw, 136px) 0; background: #fff; font-family: var(--cx-sans); }
.jb-group + .jb-group { margin-top: clamp(72px, 8vw, 112px); }
.jb-group__head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 16px 8%; align-items: end; margin-bottom: 32px; }
.jb-group__title { margin: 0; font-size: clamp(32px, 3vw, 44px); font-weight: 500; line-height: 1.08; letter-spacing: -.015em; }
.jb-group__title a { color: var(--cx-ink); }
.jb-group__title a:hover { color: var(--cx-blue); }
.jb-group__text { margin: 0; font-size: 17px; line-height: 1.6; color: var(--cx-ink-2); }
.jb-rows { border-top: 1px solid var(--cx-ink); }
.jb-row { display: grid; grid-template-columns: minmax(0, 2.4fr) minmax(0, 1fr) minmax(0, 1fr) auto; gap: 16px 32px; align-items: center; padding: 28px 0; border-bottom: 1px solid var(--cx-line); color: var(--cx-ink); }
.jb-row:hover { color: var(--cx-ink); }
.jb-row__main { display: flex; flex-direction: column; gap: 8px; }
.jb-row__title { font-size: 22px; font-weight: 500; letter-spacing: -.01em; }
.jb-row:hover .jb-row__title { color: var(--cx-blue); }
.jb-row__text { font-size: 15px; line-height: 1.55; color: var(--cx-ink-2); }
.jb-row__fact { font-family: var(--cx-mono); font-size: 13px; color: var(--cx-ink-2); }
.jb-row__more { font-size: 15px; }
.jb-empty { margin: 0; font-size: 17px; color: var(--cx-ink-2); }

.jb-head { padding: clamp(64px, 8vw, 112px) 0 clamp(56px, 6vw, 88px); background: #05080c; color: #fff; font-family: var(--cx-sans); }
.jb-head .jb-trail { justify-content: flex-start; }
.jb-head__grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 32px clamp(40px, 6vw, 96px); align-items: end; }
.jb-head__title { margin: 0; font-family: var(--cx-sans); font-size: clamp(40px, 5.4vw, 76px); font-weight: 500; line-height: 1.02; letter-spacing: -.02em; color: #fff; }
.jb-head__text { margin: 0; font-size: 18px; line-height: 1.55; color: #b4bcc4; }
.jb-head .cx-actions { margin-top: 26px; }
.jb-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: clamp(48px, 6vw, 80px) 0 0; border-top: 1px solid rgba(255, 255, 255, .16); }
.jb-facts div { padding: 22px 24px 0 0; }
.jb-facts div + div { padding-left: 24px; border-left: 1px solid rgba(255, 255, 255, .1); }
.jb-facts dt { font-family: var(--cx-mono); font-size: 12px; font-weight: 400; color: #8f939a; }
.jb-facts dd { margin: 8px 0 0; font-size: 18px; color: #fff; }

.jb-body { padding: clamp(88px, 10vw, 136px) 0; background: #fff; font-family: var(--cx-sans); }
.jb-prose { max-width: 760px; margin: 0 auto; font-size: 17px; line-height: 1.7; color: var(--cx-ink-2); }
.jb-prose p { margin: 0 0 20px; }
.jb-prose h3 { margin: 48px 0 18px; font-size: 28px; font-weight: 500; letter-spacing: -.015em; color: var(--cx-ink); }
.jb-prose ul { margin: 0 0 20px; padding: 0; list-style: none; border-top: 1px solid var(--cx-line); }
.jb-prose li { padding: 14px 0; border-bottom: 1px solid var(--cx-line); }
.jb-prose strong { color: var(--cx-ink); font-weight: 500; }
.jb-prose a { color: var(--cx-blue); }

.jb-apply { padding: clamp(96px, 11vw, 152px) 0; background: var(--cx-paper); font-family: var(--cx-sans); }
.jb-apply__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 48px clamp(40px, 6vw, 96px); align-items: start; }
.jb-apply__title { margin: 0; font-size: clamp(34px, 3.6vw, 52px); font-weight: 500; line-height: 1.08; letter-spacing: -.02em; color: var(--cx-ink); }
.jb-apply__text { margin: 20px 0 0; font-size: 16px; line-height: 1.6; color: var(--cx-ink-2); }
.jb-apply__text a { color: var(--cx-blue); }
.jb-form { display: flex; flex-direction: column; gap: 20px; }
.jb-form__row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.jb-form__row--files { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.jb-field { display: flex; flex-direction: column; gap: 8px; margin: 0; }
.jb-field span { font-family: var(--cx-mono); font-size: 12px; color: var(--cx-ink-2); }
.jb-field input,
.jb-field textarea { width: 100%; padding: 14px 16px; border: 1px solid #cfd8de; border-radius: 8px; background: #fff; font-family: var(--cx-sans); font-size: 16px; color: var(--cx-ink); }
.jb-field input[type="file"] { padding: 12px; font-size: 14px; }
.jb-field input:focus,
.jb-field textarea:focus { outline: 2px solid var(--cx-blue); outline-offset: 1px; border-color: transparent; }
.jb-form__message { margin: 0; padding: 14px 16px; border-left: 3px solid var(--cx-blue); background: #fff; font-size: 15px; color: var(--cx-ink); }
.jb-form__message.is-error { border-left-color: #b42318; }
.jb-form .cx-btn { border: 0; cursor: pointer; }
.jb-form .cx-btn:disabled { opacity: .6; cursor: wait; }

.cx .jb-head em.accent { background-image: linear-gradient(102deg, #7fd4f5 0%, var(--accent) 42%, var(--accent-secondary) 100%); }
.cx .jb-apply em.accent { background-image: linear-gradient(102deg, var(--accent) 0%, var(--accent-secondary) 45%, var(--accent-strong) 100%); }

@media (max-width: 991px) {
    .jb-group__head,
    .jb-head__grid,
    .jb-apply__grid { grid-template-columns: minmax(0, 1fr); }
    .jb-row { grid-template-columns: minmax(0, 1fr) auto; }
    .jb-row__main { grid-column: 1 / -1; }
    .jb-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .jb-facts div:nth-child(3) { padding-left: 0; border-left: 0; }
    .jb-form__row,
    .jb-form__row--files { grid-template-columns: minmax(0, 1fr); }
}
