/* Shared framing for every video-led page; handling is the reference. */
body[data-page="home"] .site-header { position: sticky; inset: auto; top: 0; }
body[data-page] main > .video-hero:first-child {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: flex-end;
  min-height: 640px;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
  background: #08131e;
}
body[data-page] .video-hero::before,
body[data-page] .video-hero::after,
.video-hero .service-overview-scenes::after { display: none; }
.video-hero > video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.services-home-hero > video { object-position: 50% 58%; }
body[data-page] .video-hero .video-hero-shade {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg,rgba(4,10,17,.86),rgba(4,10,17,.45) 52%,rgba(4,10,17,.10)),linear-gradient(0deg,rgba(4,10,17,.78),rgba(4,10,17,.1) 65%);
  pointer-events: none;
}
body[data-page] main .video-hero .video-hero-content {
  position: relative;
  inset: auto;
  display: block;
  width: 100%;
  max-width: 1280px;
  margin-inline: auto;
  padding: 64px var(--gutter) 28px;
  z-index: 1;
}
body[data-page] .video-hero .video-hero-copy {
  max-width: 760px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  backdrop-filter: none;
}
body[data-page] .video-hero .eyebrow { margin: 0; color: #d3e4ee; }
body[data-page] .video-hero .video-hero-copy h1 {
  margin: 22px 0 0;
  max-width: none;
  font: 300 64px/1.1 "Urbanist",sans-serif;
  letter-spacing: 0;
  color: #edf4f8;
  text-shadow: none;
}
body[data-page] .video-hero .video-hero-copy .video-hero-lead {
  margin: 22px 0 0;
  max-width: 38ch;
  font: 400 21px/1.5 "Urbanist",sans-serif;
  letter-spacing: 0;
  color: #dbe7ee;
  text-shadow: none;
}
body[data-page] .video-hero .actions { margin: 28px 0 0; gap: 14px; }
body[data-page] .video-hero .btn { border-radius: 4px; font: 500 15px/1.3 "Urbanist",sans-serif; text-transform: none; letter-spacing: 0; }
.video-hero-copy--brand::after { content: ""; display: block; height: 52px; margin-top: 28px; }
body[data-page] .video-hero .video-hero-rail { min-height: 63px; margin: 42px 0 0; padding: 18px 0 0; border-top: 1px solid #677c89; }
body[data-page] .video-hero .video-hero-rail--empty { border-color: transparent; }
body[data-page] .video-hero-rail .self-hire-app-jump { margin: 0; min-height: 44px; font-size: 14px; color: #edf4f8; }
.video-hero .service-overview-nav a,
.video-hero .service-overview-nav a + a { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 44px; margin: 0; padding: 0 24px 0 0; border: 0; }
.video-hero .service-overview-nav a > span,
.video-hero .service-overview-nav small { display: none; }
.video-hero .service-overview-nav strong { font: 400 14px/1.5 "Urbanist",sans-serif; }
.video-hero .service-overview-nav a::before { top: -19px; }
@media (min-width: 721px) and (max-width: 900px) {
  body[data-page] main .video-hero .video-hero-content { padding-top: 44px; }
  body[data-page] .video-hero .video-hero-rail { min-height: 113px; }
}
@media (max-width: 720px) {
  body[data-page] main > .video-hero:first-child { min-height: 650px; }
  body[data-page] main .video-hero .video-hero-content { padding-top: 44px; }
  body[data-page] .video-hero .video-hero-copy h1 { font-size: 44px; }
  body[data-page] .video-hero .video-hero-copy .video-hero-lead { font-size: 18px; }
  .video-hero-copy--brand::after { height: 118px; }
  body[data-page] .video-hero .video-hero-rail { min-height: 119px; }
  .video-hero .service-overview-nav { gap: 14px; }
  .video-hero .service-overview-nav a,
  .video-hero .service-overview-nav a + a { align-items: flex-start; padding: 0; }
  .video-hero .service-overview-nav strong { font-size: 13px; }
}
@media (max-width: 380px) {
  body[data-page] .video-hero .video-hero-copy h1 { font-size: 40px; }
}
@media (max-width: 340px) {
  body[data-page] .video-hero .video-hero-copy h1 { font-size: 36px; }
}
