.careers-hero {
  padding-top: 83px;
  text-align: center;
}
.careers-hero h1 {
  width: auto;
  height: auto;
  margin: 0 16px;
  color: #000;
  font: 700 80px/90px Barlow, sans-serif;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}
.careers-hero > p {
  max-width: 1145px;
  margin: 36px auto 32px;
  padding-inline: 16px;
  color: #000;
  font: 400 20px/28px Barlow, sans-serif;
  white-space: pre-line;
}
.careers-hero .photo-strip { margin-top: 80px; }
.careers-page .photo-strip-item { overflow: hidden; }
.careers-page .photo-strip-item--rotated img { transform: rotate(90deg); }
.careers-page .photo-strip-item:first-child .photo-strip-overlay { top: -21.11%; left: 36%; height: 142.22%; object-fit: fill; }
.careers-page .photo-strip-item:nth-child(2) .photo-strip-overlay { top: -58.12%; height: 177.78%; object-fit: fill; }

.career-role { scroll-margin-top: 28px; padding: 160px 48px 155px; color: #0d0616; }
.career-role-intro { max-width: 1080px; margin: 0 auto; padding-bottom: 105px; border-bottom: 1px solid #dddce6; text-align: center; }
.career-role-intro h2, .career-requirements > h2 {
  margin: 0;
  font: 700 62px/68px Inter, sans-serif;
  letter-spacing: -.04em;
  white-space: pre-line;
}
.career-role-intro h2 { color: #000; }
.career-role-intro > p { max-width: 870px; margin: 32px auto 0; font: 400 18px/26px Inter, sans-serif; letter-spacing: -.18px; }
.career-role-intro .career-location { display: flex; align-items: center; justify-content: center; gap: 12px; color: #d96a15; }
.career-location img, .career-requirement-group li img { display: block; flex: none; max-width: none; }
.career-requirements { max-width: 1186px; margin: 57px auto 0; }
.career-requirements > h2 { text-align: center; }
.career-requirements-layout { display: grid; grid-template-columns: minmax(0, 465fr) minmax(0, 572fr); align-items: start; gap: clamp(32px, 10.35vw, 149px); margin-top: 89px; }
.career-requirements-copy { display: flex; min-height: 632px; flex-direction: column; gap: 40px; }
.career-requirements-copy .action-link { margin-top: auto; }
.career-requirement-group h3 { margin: 0 0 20px; font: 700 22px/29px Inter, sans-serif; }
.career-requirement-group ul { display: grid; gap: 18px; margin: 0; padding: 0; list-style: none; }
.career-requirement-group li { display: flex; align-items: start; gap: 12px; font: 400 18px/26px Inter, sans-serif; }
.career-requirement-group li img { margin-top: 5px; }
.career-visual { position: relative; width: 100%; aspect-ratio: 572/632; margin: 0; overflow: hidden; isolation: isolate; border-radius: 12px; }
.career-visual img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.career-visual img:last-child { left: -51.09%; width: 220.98%; max-width: none; object-fit: fill; }
.career-visual::before, .career-visual::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.career-visual::before { background: #0000001f; mix-blend-mode: soft-light; }
.career-visual::after { background: #502d7f; mix-blend-mode: hue; }
.careers-page .site-footer { padding-top: 10px; padding-bottom: 20px; }
.careers-page .footer-bottom { margin-top: 110px; }

@media (min-width: 768px) and (max-width: 1099px) {
  .careers-hero h1 { font-size: 68px; }
  .career-role { padding: 110px 32px; }
  .career-role-intro h2, .career-requirements > h2 { font-size: 48px; line-height: 54px; }
  .career-requirements-layout { gap: 32px; }
  .career-requirements-copy { min-height: 0; }
}

@media (max-width: 767px) {
  .careers-hero { padding-top: 150px; }
  .careers-hero h1 { font-size: clamp(39px, 11vw, 52px); line-height: 1.08; }
  .careers-hero > p { margin-block: 24px; font-size: 17px; line-height: 25px; white-space: normal; }
  .careers-hero .photo-strip { margin-top: 48px; }
  .career-role { padding: 64px 16px; }
  .career-role-intro { padding-bottom: 48px; }
  .career-role-intro h2, .career-requirements > h2 { font-size: 34px; line-height: 39px; white-space: normal; }
  .career-role-intro > p { margin-top: 22px; font-size: 16px; line-height: 25px; }
  .career-role-intro .career-location { gap: 8px; font-size: 14px; }
  .career-requirements { margin-top: 44px; }
  .career-requirements-layout { grid-template-columns: minmax(0, 1fr); gap: 32px; margin-top: 32px; }
  .career-requirements-copy { min-height: 0; gap: 28px; }
  .career-requirement-group li { font-size: 16px; line-height: 24px; }
  .careers-page .site-footer { padding: 64px 16px 32px; }
  .careers-page .footer-bottom { margin-top: 0; }
}
