.zc-career-route { margin-top: 28px; }
.zc-career-route__intro { max-width: 760px; margin-bottom: 16px; }
.zc-career-route__intro h2 { margin: 0 0 8px; line-height: 1.45; }
.zc-career-route__intro p:last-child { margin: 0; color: #334155; }
.zc-career-route__panel { max-width: 880px; padding: clamp(18px, 3vw, 28px); border: 1px solid #cddedb; border-radius: 12px; background: #f7fbfa; }
.zc-career-route__progress { margin: 0 0 14px; color: #006c67; font-size: .88rem; font-weight: 800; }
.zc-career-route__question { margin: 0; padding: 0; border: 0; min-width: 0; }
.zc-career-route__question legend { margin-bottom: 16px; font-size: 1.18rem; font-weight: 800; line-height: 1.5; }
.zc-career-route__options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.zc-career-route__option { min-height: 52px; padding: 10px 14px; border: 1px solid #adcac5; border-radius: 8px; background: #fff; color: #17202a; font: inherit; font-weight: 700; line-height: 1.45; text-align: left; cursor: pointer; }
.zc-career-route__option:hover, .zc-career-route__option:focus-visible { border-color: #006c67; background: #eaf6f3; }
.zc-career-route button:focus-visible, .zc-career-route a:focus-visible { outline: 3px solid #2457a6; outline-offset: 3px; }
.zc-career-route__controls { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.zc-career-route__controls button { padding: 8px 14px; border: 1px solid #006c67; border-radius: 6px; background: #fff; color: #005652; font: inherit; font-weight: 700; cursor: pointer; }
.zc-career-route__results h3 { margin: 0 0 8px; font-size: 1.25rem; }
.zc-career-route__results h3:focus { outline: 2px solid #2457a6; outline-offset: 3px; border-radius: 2px; }
.zc-career-route__results > p { margin: 0 0 18px; color: #475569; }
.zc-career-route__results ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; counter-reset: none; }
.zc-career-route__result { min-width: 0; padding: 16px; border: 1px solid #d6e5e2; border-radius: 8px; background: #fff; }
.zc-career-route__result-label { display: block; margin-bottom: 8px; color: #006c67; font-size: .83rem; font-weight: 800; }
.zc-career-route__result-image { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; margin: 0 0 10px; border-radius: 5px; background: #f4f8f7; }
.zc-career-route__result a { display: block; font-weight: 800; line-height: 1.5; overflow-wrap: anywhere; }
.zc-career-route__result p { margin: 8px 0 0; color: #334155; font-size: .93rem; line-height: 1.65; }
.zc-career-route__pr { display: inline-block; margin-top: 9px; color: #475569; font-size: .8rem; }
.zc-career-route__search { max-width: 560px; margin: 0 0 16px; }
.zc-career-route__search label { display: block; margin-bottom: 6px; font-weight: 700; }
.zc-career-route__search > div { display: flex; gap: 8px; }
.zc-career-route__search input { flex: 1; min-width: 0; min-height: 44px; padding: 8px 12px; border: 1px solid #adcac5; border-radius: 6px; background: #fff; font: inherit; }
.zc-career-route__search button { min-height: 44px; padding: 8px 18px; border: 0; border-radius: 6px; background: #006c67; color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.zc-career-route__search input:focus-visible, .zc-career-route__search button:focus-visible { outline: 3px solid #2457a6; outline-offset: 2px; }
.zc-career-route [hidden] { display: none !important; }
@media (max-width: 650px) {
  .zc-career-route { margin-top: 22px; }
  .zc-career-route__options, .zc-career-route__results ol { grid-template-columns: 1fr; }
  .zc-career-route__option { width: 100%; }
}
