/* 海纳贤才页面增强：职位折叠列表、培训动效、福利版式及 CTA 页脚衔接。 */

/* 加入我们：可搜索、可展开的职位列表。 */
.qc-jobs-list__toolbar { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 22px; }
.qc-jobs-list__toolbar-copy span { display: block; color: #596170; font-size: 14px; }
.qc-jobs-list__heading { display: flex; max-width: none; align-items: flex-end; justify-content: space-between; gap: 36px; margin-right: 0; margin-left: 0; text-align: left; }
.qc-jobs-list__heading > div:first-child { max-width: 720px; }
.qc-visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.qc-jobs-list__filters { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 12px; }
.qc-jobs-list__filters label { display: block; color: #596170; font-size: 14px; font-weight: 700; }
.qc-jobs-list__filters select { min-height: 44px; min-width: 148px; padding: 8px 34px 8px 12px; border: 1px solid #e2e7ef; border-radius: 5px; color: #2f3744; background-color: #ffffff; font: inherit; }
.qc-jobs-list__filters select:focus { border-color: #0052d9; outline: 3px solid rgba(30, 90, 150, .12); }
.qc-jobs-list { display: grid; gap: 14px; }
.qc-jobs-list__item { overflow: hidden; border: 1px solid #e2e7ef; border-radius: 6px; background: #ffffff; transition: border-color .28s ease, box-shadow .28s ease, transform .28s ease; }
.qc-jobs-list__item:hover,
.qc-jobs-list__item[open] { border-color: #0052d9; box-shadow: 0 14px 30px rgba(30, 90, 150, .1); }
.qc-jobs-list__item[open] { transform: translateY(-2px); }
.qc-jobs-list__item summary { display: grid; min-height: 84px; grid-template-columns: 48px minmax(180px,1.35fr) repeat(3,minmax(120px,.75fr)) 28px; align-items: center; gap: 18px; padding: 16px 22px; color: #596170; cursor: pointer; list-style: none; transition: color .25s ease, background-color .25s ease; }
.qc-jobs-list__item summary::-webkit-details-marker { display: none; }
.qc-jobs-list__item summary:hover,
.qc-jobs-list__item summary:focus-visible { color: #ffffff; background: #0052d9; outline: none; }
.qc-jobs-list__item summary > strong { color: #001d3d; font-size: 20px; transition: color .25s ease; }
.qc-jobs-list__item summary > span:not(.qc-jobs-list__icon):not(.qc-jobs-list__chevron) { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; }
.qc-jobs-list__item summary .material-symbols-outlined { font-size: 19px; }
.qc-jobs-list__icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 5px; color: #0052d9; background: #f5f7fa; transition: color .25s ease, background-color .25s ease; }
.qc-jobs-list__item summary:hover > strong,
.qc-jobs-list__item summary:focus-visible > strong { color: #ffffff; }
.qc-jobs-list__item summary:hover .qc-jobs-list__icon,
.qc-jobs-list__item summary:focus-visible .qc-jobs-list__icon { color: #0052d9; background: #ffffff; }
.qc-jobs-list__chevron { justify-self: end; transition: transform .3s ease; }
.qc-jobs-list__item[open] .qc-jobs-list__chevron { transform: rotate(180deg); }
.qc-jobs-list__detail { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)) auto; gap: 40px; padding: 30px 32px 34px 88px; border-top: 1px solid #e2e7ef; animation: qc-jobs-open .35s ease both; }
.qc-jobs-list__detail h4 { margin: 0 0 10px; color: #0052d9; font-size: 16px; }
.qc-jobs-list__detail ul { margin: 0; padding-left: 20px; color: #596170; font-size: 14px; line-height: 1.8; }
.qc-jobs-list__detail .qc-v3-button { align-self: end; min-width: 120px; }
.qc-jobs-list__empty { margin: 18px 0 0; padding: 26px; color: #596170; background: #ffffff; text-align: center; }
@keyframes qc-jobs-open { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }

#candidate-application { margin: 0; border: 0; border-top: 1px solid #e2e7ef; background: #f5f7fa; }
#candidate-application .qc-service-v3__feedback { border: 1px solid #e2e7ef; background: #ffffff; box-shadow: 0 12px 32px rgba(12, 35, 64, .08); }
#candidate-application .qc-service-v3__feedback-intro { color: #001d3d; background: #edf3ff; }
#candidate-application .qc-service-v3__feedback-intro h2 { color: #001d3d; }
#candidate-application .qc-service-v3__feedback-intro p { color: #596170; }
#candidate-application .qc-service-v3__feedback-intro strong { color: #0046b8; }
.qc-jobs-v3 + [data-qc-include],
.qc-jobs-v3 + [data-qc-include] .qc-footer,
.qc-jobs-v3 + [data-qc-include] .qc-footer,
.qc-jobs-v3 + .qc-footer { margin-top: 0; border-top: 0; background: #ffffff; }
.qc-jobs-v3 + [data-qc-include] .qc-footer__legal,
.qc-jobs-v3 + .qc-footer .qc-footer__legal { background: #001d3d; }

/* 培训与发展：降低图片遮罩高度，并补齐图片和路径卡片反馈。 */
.qc-growth-v3__feature-main::after { inset: auto 0 0; height: 38%; background: linear-gradient(to top, rgba(12, 35, 64, .94), rgba(12, 35, 64, .18)); }
.qc-growth-v3__feature-main > img,
.qc-growth-v3 .qc-v3-image-card__media img { transition: filter .4s ease, transform .7s cubic-bezier(.22,1,.36,1); }
.qc-growth-v3__feature-main:hover > img,
.qc-growth-v3 .qc-v3-image-card:hover .qc-v3-image-card__media img { filter: saturate(1.08) contrast(1.03); transform: scale(1.045); }
.qc-growth-v3__feature-copy { bottom: 24px; }
.qc-growth-v3__feature-copy p { max-width: 700px; margin-top: 8px; line-height: 1.7; }
.qc-growth-v3__path-item { border: 1px solid #e2e7ef; border-top: 3px solid #0052d9; border-radius: 4px; transition: color .28s ease, border-color .28s ease, background-color .28s ease, box-shadow .28s ease, transform .28s ease; }
.qc-growth-v3__path-item h3,
.qc-growth-v3__path-item span,
.qc-growth-v3__path-item p { transition: color .28s ease; }
.qc-growth-v3__path-item:hover { border-color: #0052d9; color: #ffffff; background: #0052d9; box-shadow: 0 15px 30px rgba(30, 90, 150, .16); transform: translateY(-5px); }
.qc-growth-v3__path-item:hover h3,
.qc-growth-v3__path-item:hover span,
.qc-growth-v3__path-item:hover p { color: #ffffff; }
.qc-growth-v3__cta { margin: 0; border: 0; background: #0052d9; }
.qc-growth-v3 + [data-qc-include],
.qc-growth-v3 + [data-qc-include] .qc-footer,
.qc-growth-v3 + [data-qc-include] .qc-footer,
.qc-growth-v3 + .qc-footer { margin-top: 0; border-top: 0; background: #ffffff; }
.qc-growth-v3 + [data-qc-include] .qc-footer__legal,
.qc-growth-v3 + .qc-footer .qc-footer__legal { background: #001d3d; }

/* 环境与福利：复刻样板的三项福利与四宫格生活社区。 */
.qc-benefits-v4__welfare { min-height: 300px; }
.qc-benefits-v4__facilities { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); grid-auto-rows: 220px; gap: 18px; }
.qc-benefits-v4__facility,
.qc-benefits-v4__facility--wide,
.qc-benefits-v4__facility:nth-child(3),
.qc-benefits-v4__facility:nth-child(4) { position: relative; min-height: 0; height: auto; grid-column: auto; overflow: hidden; border-radius: 6px; background: #001d3d; }
.qc-benefits-v4__facility:first-child { grid-column: span 2; grid-row: span 2; }
.qc-benefits-v4__facility::after { position: absolute; inset: 38% 0 0; content: ""; background: linear-gradient(to top, rgba(12, 35, 64, .9), rgba(12, 35, 64, 0)); }
.qc-benefits-v4__facility img { transition: filter .4s ease, transform .75s cubic-bezier(.22,1,.36,1); }
.qc-benefits-v4__facility > div { position: absolute; z-index: 1; right: 28px; bottom: 24px; left: 28px; color: #ffffff; }
.qc-benefits-v4__facility h3 { margin: 0; color: #ffffff; font-size: 24px; }
.qc-benefits-v4__facility p { margin: 8px 0 0; color: rgba(255,255,255,.82); font-size: 15px; }
.qc-benefits-v4__facility:hover img { filter: saturate(1.08) contrast(1.03); transform: scale(1.055); }
.qc-benefits-v4__cta { margin: 0; border: 0; background: #0052d9; }
.qc-benefits-v4 + [data-qc-include],
.qc-benefits-v4 + [data-qc-include] .qc-footer,
.qc-benefits-v4 + [data-qc-include] .qc-footer,
.qc-benefits-v4 + .qc-footer { margin-top: 0; border-top: 0; background: #ffffff; }
.qc-benefits-v4 + [data-qc-include] .qc-footer__legal,
.qc-benefits-v4 + .qc-footer .qc-footer__legal { background: #001d3d; }

@media (max-width: 1000px) {
  .qc-jobs-list__item summary { grid-template-columns: 48px minmax(180px,1.5fr) repeat(2,minmax(110px,.8fr)) 28px; }
  .qc-jobs-list__item summary > span:nth-of-type(4) { display: none; }
  .qc-jobs-list__detail { grid-template-columns: repeat(2,minmax(0,1fr)); padding-left: 32px; }
  .qc-jobs-list__detail .qc-v3-button { grid-column: 1 / -1; justify-self: start; }
  .qc-jobs-list__heading { align-items: flex-start; flex-direction: column; gap: 22px; }
  .qc-jobs-list__filters { width: 100%; justify-content: flex-start; }
  .qc-benefits-v4__facilities { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .qc-benefits-v4__facility:first-child { grid-column: span 2; }
}

@media (max-width: 767px) {
  .qc-jobs-list__toolbar { align-items: stretch; flex-direction: column; gap: 18px; }
  .qc-jobs-list__filters { justify-content: stretch; }
  .qc-jobs-list__filters label { flex: 1 1 calc(50% - 6px); }
  .qc-jobs-list__filters select { width: 100%; }
  .qc-jobs-list__item summary { min-height: 0; grid-template-columns: 42px minmax(0,1fr) 24px; gap: 12px; padding: 18px; }
  .qc-jobs-list__item summary > span:not(.qc-jobs-list__icon):not(.qc-jobs-list__chevron) { grid-column: 2 / 3; }
  .qc-jobs-list__item summary > strong { font-size: 18px; }
  .qc-jobs-list__detail { grid-template-columns: 1fr; gap: 24px; padding: 24px 20px; }
  .qc-jobs-list__detail .qc-v3-button { grid-column: auto; justify-self: stretch; }
  .qc-growth-v3__feature-main::after { height: 54%; }
  .qc-growth-v3__feature-copy { right: 22px; bottom: 20px; left: 22px; }
  .qc-benefits-v4__facility,
  .qc-benefits-v4__facility--wide,
  .qc-benefits-v4__facility:nth-child(3),
  .qc-benefits-v4__facility:nth-child(4),
  .qc-benefits-v4__facility:first-child { min-height: 280px; height: 280px; grid-column: 1 / -1; grid-row: auto; }
  .qc-benefits-v4__facilities { grid-template-columns: 1fr; grid-auto-rows: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .qc-jobs-list__item,
  .qc-jobs-list__item summary,
  .qc-growth-v3__feature-main > img,
  .qc-growth-v3 .qc-v3-image-card__media img,
  .qc-growth-v3__path-item,
  .qc-benefits-v4__facility img { transition: none; }
  .qc-jobs-list__detail { animation: none; }
  .qc-growth-v3__feature-main:hover > img,
  .qc-growth-v3 .qc-v3-image-card:hover .qc-v3-image-card__media img,
  .qc-growth-v3__path-item:hover,
  .qc-benefits-v4__facility:hover img { transform: none; }
}
