.job-page .subpage__background { top: 0; }
.job-page__main { padding-top: 1.15rem; padding-bottom: 1.48rem; min-height: 17.85rem; }
.job-page__bar { display: flex; align-items: center; justify-content: space-between; padding-right: .19rem; }
.job-page__back { display: flex; align-items: center; gap: .2rem; font-size: .18rem; line-height: .4rem; margin: -.1rem 0; }
.job-page__back img { width: .4rem; transform: scaleX(-1); }
.job-page__title { margin-top: .584rem; line-height: .5rem; }
html[lang^="zh-"] .job-page__title br { display: none; }
.job-page__meta { display: flex; flex-direction: column; gap: .26rem; margin: .45rem .3rem 0 .4086rem; }
.job-page__meta p { display: flex; align-items: center; gap: .13rem; min-height: .34rem; font-size: .16rem; line-height: .33rem; }
.job-page__meta-icon { width: .4rem; display: flex; justify-content: center; flex-shrink: 0; }
.job-page__meta-icon img { width: .22913rem; }
.job-page__meta p:nth-child(2) img { width: .32661rem; }
.job-page__briefcase { width: .39831rem; height: .3266rem; position: relative; flex-shrink: 0; color: #f5a338; }
.job-page__briefcase::before, .job-page__briefcase::after { content: ""; position: absolute; box-sizing: border-box; border: .024rem solid; border-radius: .02rem; }
.job-page__briefcase::before { width: .176rem; height: .09rem; left: .111rem; top: 0; }
.job-page__briefcase::after { width: .398rem; height: .254rem; left: 0; bottom: 0; }
.job-page__briefcase span::before, .job-page__briefcase span::after { content: ""; position: absolute; top: .169rem; width: .088rem; height: .04rem; background: currentColor; }
.job-page__briefcase span::before { left: .087rem; }
.job-page__briefcase span::after { left: .222rem; }
.job-page__intro { margin: .43rem .42rem 0 .51rem; font-size: .16rem; line-height: .3rem; }
.job-page__section { position: relative; margin: .93rem .19rem 0 .51rem; }
.job-page__section h2 { font-size: .41rem; line-height: 1.2; font-weight: 700; margin-left: .69rem; }
.job-page__section-icon { position: absolute; left: 0; top: .04rem; width: .36rem; height: .31rem; object-fit: contain; }
.job-page__section--requirements .job-page__section-icon { width: .49rem; height: .45rem; }
.job-page__section--benefits .job-page__section-icon { width: .45rem; height: .43rem; }
.job-page__section ul { margin-top: .26rem; font-size: .16rem; line-height: .3rem; list-style: none; }
.job-page__section--duties ul { margin-top: .371rem; }
.job-page__section li { position: relative; }
html[lang^="zh-"] .job-page__section li { text-wrap: balance; }
.job-page__section li::before { content: ""; position: absolute; left: -.31rem; top: .11rem; width: .09rem; height: .09rem; border-radius: 50%; background: #f55838; }
.job-page__section--requirements { margin-top: .88rem; }
.job-page__section--requirements ul { margin-top: .32rem; }
.job-page__section--benefits { margin-top: .91rem; }
.job-page__section--benefits ul { margin-top: .29rem; }
.job-page__apply { display: flex; align-items: center; gap: .25rem; width: max-content; margin: .952rem 0 0 .2rem; font-size: .18rem; line-height: .4rem; }
.job-page__apply img { width: .23rem; }
.job-page__back:hover, .job-page__apply:hover { color: #ffad42; }
html:lang(en) .job-page__title { font-size: .4rem; overflow-wrap: normal; }
html:lang(en) .job-page__section h2 { font-size: .32rem; }

@media (max-width: 768px) {
  /* All four mobile roles share the same body rhythm and reviewed type styles. */
  .job-page__meta p,
  .job-page__intro,
  .job-page__section ul { line-height: .3rem; }
  .job-page__back { font: 400 .16rem/.4rem var(--font-body); letter-spacing: 0; }
  .job-page__apply { font: 500 .18rem/.4rem var(--font-body); letter-spacing: 0; }
  html:lang(en) .job-page__bar .subpage__label {
    font: 500 .18rem/1.2 var(--font-display); letter-spacing: .0234rem;
  }
  html:lang(en) .job-page__title {
    font: 700 .46rem/.5rem var(--font-display); letter-spacing: 0;
  }
  /* COORDINATION is 387px wide at 46px; keep the word whole in the 336px column. */
  html:lang(en) .job-page[data-job-role="coordination"] .job-page__title { font-size: .39rem; }
  html:lang(en) .job-page__section h2 {
    font: 700 .35rem/1.02 var(--font-display); letter-spacing: 0;
  }
}
