/* Jobs hero: equal text and photo panels, animated central divider. */
.jobs-page .jobs-hero-split {
 display: grid;
 grid-template-columns: minmax(0,1fr) minmax(0,1fr);
 align-items: stretch;
 min-height: 100svh;
 background: #050505;
}
.jobs-page .jobs-hero-split .hero-content {
 grid-column: 1;
 grid-row: 1;
 display: flex;
 flex-direction: column;
 justify-content: center;
 min-width: 0;
 padding: 150px var(--pad) 90px;
}
.jobs-page .jobs-hero-split h1 {
 font-size: clamp(36px,4.2vw,76px);
 line-height: .98;
}
.jobs-page .jobs-hero-split .hero-kicker { color: #ff5360; }
.jobs-page .jobs-hero-split .hero-bottom {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 gap: 30px;
 margin-top: 38px;
 max-width: 480px;
}
.jobs-page .jobs-hero-split .hero-media {
 position: relative;
 inset: auto;
 grid-column: 2;
 grid-row: 1;
 min-width: 0;
 margin-top: 84px;
 overflow: hidden;
}
.jobs-page .jobs-hero-split .hero-media img {
 position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 object-fit: contain;
 object-position: center;
 background: #101010;
}
.jobs-page .jobs-hero-split .hero-media::after {
 content: '';
 position: absolute;
 inset: 0 auto 0 0;
 width: 3px;
 z-index: 4;
 pointer-events: none;
 background: linear-gradient(180deg,#43111c 0%,#f64249 22%,#ffc2b9 30%,#f64249 38%,#43111c 50%,#f64249 72%,#ffc2b9 80%,#f64249 88%,#43111c 100%);
 background-size: 100% 200%;
 box-shadow: 0 0 16px #f6424966;
 animation: jobs-divider-vertical 6s linear infinite;
}
@keyframes jobs-divider-vertical {
 from { background-position: 50% 0%; }
 to { background-position: 50% 200%; }
}
@media(max-width:900px) {
 .jobs-page .jobs-hero-split { grid-template-columns: minmax(0,1fr); min-height: auto; }
 .jobs-page .jobs-hero-split .hero-content { padding: 140px var(--pad) 55px; }
 .jobs-page .jobs-hero-split h1 { font-size: clamp(36px,7.5vw,70px); }
 .jobs-page .jobs-hero-split .hero-media { grid-column: 1; grid-row: 2; margin-top: 0; height: clamp(300px,65vw,560px); }
 .jobs-page .jobs-hero-split .hero-media::after {
  inset: 0 0 auto;
  width: 100%;
  height: 3px;
  background-image: linear-gradient(90deg,#43111c 0%,#f64249 22%,#ffc2b9 30%,#f64249 38%,#43111c 50%,#f64249 72%,#ffc2b9 80%,#f64249 88%,#43111c 100%);
  background-size: 200% 100%;
  animation-name: jobs-divider-horizontal;
 }
}
@keyframes jobs-divider-horizontal {
 from { background-position: 0% 50%; }
 to { background-position: 200% 50%; }
}
@media(max-width:600px) {
 .jobs-page .jobs-hero-split .hero-content { padding-top: 120px; }
 .jobs-page .jobs-hero-split .hero-bottom p { font-size: 16px; }
}
@media(prefers-reduced-motion:reduce) {
 .jobs-page .jobs-hero-split .hero-media::after { animation: none; }
}
