:root{
  --font-jp-text:"Zen Kaku Gothic New",sans-serif;
  --font-en-heading:"Albert Sans","Zen Kaku Gothic New",sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{font-size:16px}
body{min-width:320px;font-family:var(--font-jp-text);font-weight:500;line-height:1.8;color:#111827;-webkit-text-size-adjust:100%;word-break:break-word}
body,h1,h2,h3,p,figure,dl,dd,ul{margin:0}
ul{padding:0;list-style:none}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button,input,textarea{font:inherit}
.font-en{font-family:var(--font-en-heading)}
.header{position:fixed;z-index:10000;top:0;width:100%;background:#fff}
.header--inner{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 18px}

/* ===== Mobile-locked layout: force SP layout at all viewport widths ===== */
:root{--clone-max-width:480px;--clone-side-inset:max(0px, (100vw - 480px) / 2);--clr-primary-default:#64daff;--clr-bg-01:#fafafa}
html,body{overflow-x:hidden}
body{background-color:#e5e5e5;margin:0}
.site-wrapper{position:relative;width:100%;max-width:var(--clone-max-width);margin:0 auto;background-color:var(--clr-bg-01);overflow-x:clip;box-shadow:0 0 24px rgba(0,0,0,.12)}
.header{left:0;right:0;max-width:var(--clone-max-width);margin-left:auto;margin-right:auto}

/* ===== 100dvh vertical swipe layout ===== */
html{height:auto;min-height:100%;overflow-x:clip;overflow-y:auto;scroll-padding-top:0;scroll-snap-type:y mandatory;scroll-behavior:smooth;overscroll-behavior-y:none}
html.is-long-panel-free-scroll{scroll-snap-type:none}
body{height:auto;min-height:100dvh;overflow-x:clip;overflow-y:visible}
.swipe-panel{position:relative;box-sizing:border-box;height:100dvh!important;min-height:100dvh!important;max-height:100dvh;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always;contain:paint}
.swipe-panel,html{scrollbar-width:none}
.swipe-panel::-webkit-scrollbar,html::-webkit-scrollbar{display:none}
.swipe-panel.home_message,.swipe-panel.home_job,.swipe-panel.job--wrapper{margin-top:0}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ===== Recruitment copy: retain existing imagery and replace text ===== */
.recruit-copy-panel{isolation:isolate;overflow:hidden;border-bottom:1px solid rgba(0,53,77,.08)}
.recruit-copy-panel:not(.footer):not(.swipe-panel--long){touch-action:pan-y}
.swipe-panel.footer.recruit-copy-panel{overflow:hidden}
.swipe-panel.footer.recruit-copy-panel.swipe-panel--long{height:auto!important;min-height:100dvh!important;max-height:none;overflow:visible;contain:none;scroll-snap-stop:normal}
.recruit-copy{position:absolute;z-index:1000;inset:0;display:grid;align-items:center;padding:clamp(76px,10vh,96px) 18px clamp(20px,4vh,36px);pointer-events:none}
.recruit-copy__inner{position:relative;z-index:2;box-sizing:border-box;width:min(1120px,100%);max-height:100%;overflow-y:visible;overscroll-behavior-y:auto;padding:0;border:0;background:transparent;color:#111827;pointer-events:auto;scrollbar-width:thin;scrollbar-color:var(--clr-primary-default) transparent}
.recruit-copy--long{position:relative;inset:auto;min-height:100dvh;align-items:start;padding:96px 18px 48px}
.recruit-copy--long .recruit-copy__inner{max-height:none;padding:0 20px 32px;background:transparent;border:0;touch-action:pan-y}
.recruit-copy__photo{position:absolute;z-index:1;top:90px;right:18px;width:48%;height:32%;margin:0;overflow:hidden;border-radius:28px 0 28px 28px;box-shadow:0 14px 38px rgba(0,53,77,.16);pointer-events:none}
.recruit-copy__photo-image{display:block;width:100%!important;height:100%!important;object-fit:cover}
.recruit-copy__photo--1{top:120px;right:0;width:58%;height:31%;border-radius:32px 0 0 32px}
.recruit-copy__photo--2{top:auto;right:0;bottom:54px;width:56%;height:34%;border-radius:32px 0 0 32px}
.recruit-copy__photo--3{inset:0;width:100%;height:100%;border-radius:0;box-shadow:none;opacity:.72}
.recruit-copy__photo--4{top:auto;right:0;bottom:48px;width:62%;height:36%;border-radius:32px 0 0 32px}
.recruit-copy__photo--5{top:92px;left:0;right:auto;width:60%;height:36%;border-radius:0 32px 32px 0}
.recruit-copy__photo--6{top:auto;right:0;bottom:44px;width:58%;height:32%;border-radius:32px 0 0 32px}
.recruit-copy__photo--7{top:94px;right:26px;width:190px;height:190px;border-radius:50%}
.recruit-copy__photo--8{top:auto;left:0;right:auto;bottom:0;width:100%;height:42%;border-radius:32px 32px 0 0}
.recruit-copy__photo--9{inset:0 auto 0 0;width:34%;height:100%;border-radius:0;box-shadow:none}
.recruit-copy--long .recruit-copy__photo--10{position:relative;inset:auto;width:100%;height:260px;margin:0 0 28px;border-radius:0 32px 32px 0}
.recruit-copy__heading{margin:0 0 clamp(18px,2.6vh,28px)}
.recruit-copy__heading-label{display:flex;align-items:center;gap:12px;margin:0 0 12px;color:#111827;font-size:clamp(16px,1.7vw,20px);font-weight:700;line-height:1.45;letter-spacing:.06em}
.recruit-copy__title{width:fit-content;margin:0;padding:0;background:transparent;color:#111827;font-family:var(--font-en-heading);font-size:clamp(46px,5vw,64px);font-weight:500;line-height:.98;letter-spacing:-.035em}
.recruit-copy__role{margin:0 0 22px;color:#111827;font-size:clamp(20px,2vw,26px);font-weight:700;letter-spacing:.08em}
.recruit-copy__body{max-width:640px;font-size:clamp(14px,1.3vw,18px);line-height:2;letter-spacing:.03em}
.recruit-copy__body p{width:auto;margin:0 0 1.25em;padding:0;background:transparent}
.recruit-copy__body p:last-child{margin-bottom:0}
.recruit-copy__body h3{width:fit-content;margin:1.5em 0 .35em;padding:0 0 .2em;color:#087ea3;font-size:clamp(17px,1.7vw,22px);line-height:1.5;border-bottom:2px solid var(--clr-primary-default)}
.recruit-copy__details{margin:0;background:transparent}
.recruit-copy__details>div{display:grid;grid-template-columns:9em 1fr;gap:18px;padding:15px 0;border-top:1px solid rgba(0,53,77,.16)}
.recruit-copy__details>div:last-child{border-bottom:1px solid rgba(0,53,77,.16)}
.recruit-copy__details dt{font-weight:700;color:#087ea3}
.recruit-copy__details dd{margin:0}
.recruit-copy__details a{color:inherit;text-decoration:underline}
.recruit-copy-panel.hero .recruit-copy{align-items:end;padding-bottom:72px}
.recruit-copy-panel.home_message .recruit-copy{align-items:start;padding-top:116px}
.recruit-copy-panel.sec_img--wrapper .recruit-copy{justify-items:center;text-align:center}
.recruit-copy-panel.sec_img--wrapper .recruit-copy__title,
.recruit-copy-panel.sec_img--wrapper .recruit-copy__body p{margin-inline:auto}
.recruit-copy-panel.home_job .recruit-copy{align-items:start;padding-top:112px}
.recruit-copy-panel.job--wrapper .recruit-copy{align-items:end;padding-bottom:72px}
.recruit-copy-panel.scroll--wrapper .recruit-copy{align-items:start;padding-top:108px}
.recruit-copy-panel.home_voice .recruit-copy{align-items:end;padding-bottom:64px}
.recruit-copy-panel.interview--wrapper .recruit-copy{align-items:start;padding-top:110px}
.recruit-copy-panel.cta .recruit-copy{justify-items:center;text-align:center}
.recruit-copy-panel.cta .recruit-copy__inner{width:100%;margin-left:0;text-align:left}
.recruit-copy-panel.cta .recruit-copy__title,
.recruit-copy-panel.cta .recruit-copy__details{margin-inline:0}
.recruit-copy-panel.footer .recruit-copy{align-items:start;padding-top:96px}

/* ===== Three recurring layouts taken from the supplied references ===== */
.recruit-layout--editorial{align-items:start!important;background:#fafafa}
.recruit-layout--editorial .recruit-copy__inner{align-self:start;padding-top:1vh}
.recruit-layout--editorial .recruit-copy__title{max-width:94%;color:#111827}
.recruit-layout--editorial .recruit-copy__body{margin-top:160px}
.recruit-layout--editorial .recruit-copy__photo{inset:260px 18px auto auto;width:48%;height:125px;border-radius:22px 0 22px 22px}
.recruit-layout--editorial .recruit-copy__details>div{grid-template-columns:7em 1fr}
.recruit-layout--blue{align-items:end!important;background:#58afe0}
.recruit-layout--blue .recruit-copy__photo{inset:76px 0 auto;width:100%;height:30%;border-radius:0;box-shadow:none;opacity:1}
.recruit-layout--blue .recruit-copy__inner{align-self:end;padding:0 8px 28px;text-align:center;color:#fff}
.recruit-layout--blue .recruit-copy__title{margin-inline:auto;color:#fff}
.recruit-layout--blue .recruit-copy__heading-label{justify-content:center;color:#fff}
.recruit-layout--blue .recruit-copy__body{max-width:100%;font-size:14px;line-height:1.7;font-weight:600}
.recruit-layout--blue .recruit-copy__body p{margin-bottom:.8em}
.recruit-layout--feature{align-items:start!important;background:#eaf8fc}
.recruit-layout--feature .recruit-copy__inner{align-self:start;padding-top:1vh}
.recruit-layout--feature .recruit-copy__title{color:#111827}
.recruit-layout--feature .recruit-copy__body{max-width:100%}
.recruit-layout--feature .recruit-copy__photo{inset:auto 18px 0;width:calc(100% - 36px);height:36%;border-radius:22px 22px 0 0;box-shadow:none}
.recruit-layout--requirements{background:linear-gradient(180deg,#eaf8fc 0,#fafafa 36%)}
.recruit-layout--requirements .recruit-copy__title{color:#111827}
.recruit-layout--requirements .recruit-copy__details>div{padding:18px 20px;border-top:0;border-bottom:1px solid rgba(0,83,128,.16)}
.recruit-layout--requirements .recruit-copy__details>div:nth-child(odd){background:rgba(100,218,255,.1)}
.recruit-layout--requirements .recruit-copy__details>div:last-child{border-bottom:0}
.recruit-copy--1 .recruit-copy__body{margin-top:0;font-size:16px;line-height:1.7}
.recruit-copy--4 .recruit-copy__photo{top:295px}
.recruit-copy--4 .recruit-copy__body{margin-top:160px}
.recruit-copy--5 .recruit-copy__photo{height:29%}
.recruit-copy--6 .recruit-copy__title{font-size:34px}
.recruit-copy--7 .recruit-copy__photo{top:190px;height:115px}
.recruit-copy--7 .recruit-copy__body{margin-top:140px}
.recruit-copy--9 .recruit-copy__body{margin-top:160px}
/* ===== Reference layout overrides: FV / Our Business ===== */
.recruit-copy--1{
  align-items:start!important;
  padding:0 18px 18px;
  background:
    linear-gradient(145deg,rgba(100,218,255,.28),rgba(250,250,250,.96) 66%),
    #eaf8fc;
}
.recruit-copy--1::before,
.recruit-copy--1::after{
  content:"";
  position:absolute;
  z-index:0;
  width:230px;
  height:230px;
  border:22px solid rgba(255,255,255,.56);
  border-radius:34px;
  transform:rotate(45deg);
  pointer-events:none;
}
.recruit-copy--1::before{top:72px;right:-66px}
.recruit-copy--1::after{top:300px;left:-105px;border-color:rgba(100,218,255,.13)}
.recruit-copy--1 .recruit-copy__photo{
  inset:clamp(78px,11vh,96px) 0 auto;
  width:100%;
  height:clamp(210px,34vh,270px);
  border-radius:0 14px 14px 0;
  box-shadow:0 14px 36px rgba(19,105,139,.12);
}
.recruit-copy--1 .recruit-copy__inner{
  align-self:start;
  z-index:2;
  padding-top:clamp(305px,47vh,380px);
}
.recruit-copy--1 .recruit-copy__heading{margin:0 0 10px}
.recruit-copy--1 .recruit-copy__heading-label{
  display:block;
  margin:0 0 10px;
  font-size:clamp(38px,9.6vw,50px);
  font-weight:500;
  line-height:1.38;
  letter-spacing:.065em;
}
.recruit-copy--1 .recruit-copy__title{
  color:#111827;
  font-size:14px;
  font-weight:700;
  line-height:1.35;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.recruit-copy--1 .recruit-copy__body{
  max-width:100%;
  margin:0;
  font-size:15px;
  line-height:1.55;
}
.recruit-copy--1 .recruit-copy__body p{margin-bottom:.5em}

.recruit-copy--8{
  align-items:start!important;
  padding:78px 30px 26px;
  background:#fafafa;
}
.recruit-copy--8 .recruit-copy__inner{
  align-self:start;
  z-index:2;
  padding:0;
}
.recruit-copy--8 .recruit-copy__heading{margin:0}
.recruit-copy--8 .recruit-copy__heading-label{
  margin-bottom:10px;
  font-size:17px;
}
.recruit-copy--8 .recruit-copy__title{
  max-width:90%;
  color:#58afe0;
  font-size:clamp(43px,12vw,62px);
  font-weight:500;
  line-height:.95;
}
.recruit-copy--8 .recruit-copy__photo{
  inset:clamp(205px,29vh,235px) 18px auto auto;
  width:38%;
  height:clamp(125px,21vh,160px);
  border-radius:20px;
  box-shadow:none;
}
.recruit-copy--8 .recruit-copy__body{
  position:relative;
  max-width:100%;
  margin-top:clamp(230px,34vh,270px);
  padding-top:50px;
  font-size:14px;
  font-weight:600;
  line-height:1.85;
}
.recruit-copy--8 .recruit-copy__body::before{
  content:"Key points!";
  position:absolute;
  top:0;
  left:0;
  color:#58afe0;
  font-family:cursive;
  font-size:24px;
  font-weight:400;
  line-height:1;
  transform:rotate(-7deg);
}

@media (max-height:680px){
  .recruit-copy--1 .recruit-copy__photo{height:205px}
  .recruit-copy--1 .recruit-copy__inner{padding-top:295px}
  .recruit-copy--1 .recruit-copy__heading-label{font-size:34px}
  .recruit-copy--1 .recruit-copy__body{font-size:15px}
  .recruit-copy--8 .recruit-copy__photo{top:190px;height:120px}
  .recruit-copy--8 .recruit-copy__body{margin-top:205px;padding-top:40px;font-size:15px}
}

/* ===== Section heading alignment ===== */
.recruit-copy .recruit-copy__heading{
  width:100%;
  text-align:left;
}
.recruit-copy .recruit-copy__heading-label{
  width:100%;
  align-self:flex-start;
  justify-content:flex-start;
  margin-left:0;
  margin-right:0;
  text-align:left;
}
.recruit-copy .recruit-copy__title{
  margin-left:0;
  margin-right:0;
  text-align:left;
}

/* ===== Company logo ===== */
.header .header--logo{
  width:clamp(150px,46vw,220px);
  height:auto;
}
.header .header--logo img{
  display:block;
  width:100%!important;
  height:auto;
  max-height:none;
}

/* ===== Section heading size / visible text alignment ===== */
.recruit-copy:not(.recruit-copy--1) .recruit-copy__heading-label{
  font-size:clamp(14px,3.8vw,17px);
}
.recruit-copy:not(.recruit-copy--1) .recruit-copy__title{
  max-width:100%;
  margin-left:0;
  font-size:clamp(28px,7vw,38px);
  line-height:1.05;
}
.recruit-layout--blue .recruit-copy__heading{
  width:calc(100% + 8px);
  margin-left:-8px;
}
.recruit-copy--8 .recruit-copy__heading{
  width:calc(100% + 12px);
  margin-left:-12px;
}
.recruit-copy--long .recruit-copy__heading{
  width:calc(100% + 20px);
  margin-left:-20px;
}

/* ===== Company Growth: heading -> copy -> image ===== */
.recruit-copy--4{
  align-items:start!important;
  padding:88px 18px 20px;
}
.recruit-copy--4 .recruit-copy__inner{
  align-self:start;
  padding-top:0;
}
.recruit-copy--4 .recruit-copy__heading{
  margin-bottom:22px;
}
.recruit-copy--4 .recruit-copy__body{
  max-width:100%;
  margin-top:0;
  font-size:14px;
  line-height:1.85;
}
.recruit-copy--4 .recruit-copy__photo{
  inset:auto 18px 0;
  width:calc(100% - 36px);
  height:34%;
  border-radius:22px 22px 0 0;
  box-shadow:none;
}

/* ===== Header ENTRY layout ===== */
.header-entry{
  display:grid;
  place-items:center;
  width:92px;
  height:46px;
  border:1px solid rgba(17,24,39,.12);
  border-radius:999px;
  background:#64daff;
  color:#111827;
  font-size:14px;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1;
  pointer-events:auto;
}
.header-entry:hover{
  background:#111827;
  color:#fff;
}
.header{
  background:#fff;
}

@media (min-width:1024px){
  .header{
    width:min(100%,var(--clone-max-width));
    max-width:var(--clone-max-width);
    margin-inline:auto;
    background:#fff;
    pointer-events:auto;
  }
  .header--inner{
    padding-inline:18px;
  }
  .header .header--logo{
    position:static;
    width:220px;
    pointer-events:auto;
  }
  .header-entry{
    position:static;
    width:92px;
    height:46px;
    font-size:14px;
  }
}

/* Section backgrounds: gradients and color-field transitions instead of flat fills. */
.recruit-copy--1{
  background:
    radial-gradient(circle at 88% 18%,rgba(100,218,255,.42),transparent 34%),
    linear-gradient(145deg,#e7f8fd 0%,#fafafa 58%,#eefaff 100%);
}
.recruit-copy--2{
  background:
    radial-gradient(circle at 8% 82%,rgba(100,218,255,.28),transparent 34%),
    linear-gradient(165deg,#fafafa 0%,#f4fbfd 50%,#dff6fc 100%);
}
.recruit-copy--3{
  background:
    radial-gradient(circle at 92% 74%,rgba(100,218,255,.36),transparent 38%),
    linear-gradient(155deg,#2f8fca 0%,#58afe0 52%,#397aaa 100%);
}
.recruit-copy--4{
  background:
    linear-gradient(180deg,rgba(250,250,250,.98) 0 56%,rgba(225,247,253,.96) 56% 100%),
    linear-gradient(135deg,#fafafa,#dff6fc);
}
.recruit-copy--5{
  background:
    radial-gradient(circle at 15% 18%,rgba(100,218,255,.32),transparent 36%),
    linear-gradient(150deg,#edfaff 0%,#fafafa 58%,#e0f7fd 100%);
}
.recruit-copy--6{
  background:
    radial-gradient(circle at 12% 84%,rgba(210,245,255,.24),transparent 32%),
    linear-gradient(145deg,#397dab 0%,#58afe0 48%,#278bc4 100%);
}
.recruit-copy--7{
  background:
    linear-gradient(180deg,#fafafa 0 52%,#edfaff 52% 100%),
    radial-gradient(circle at 92% 12%,rgba(100,218,255,.3),transparent 30%);
}
.recruit-copy--8{
  background:
    radial-gradient(circle at 86% 16%,rgba(100,218,255,.3),transparent 35%),
    linear-gradient(160deg,#f9f9f9 0%,#effaff 52%,#dff6fc 100%);
}
.recruit-copy--9{
  background:
    linear-gradient(150deg,#fafafa 0%,#f3fbfd 48%,#dff6fc 100%);
}
.recruit-copy--10{
  background:
    radial-gradient(circle at 100% 0,rgba(100,218,255,.28),transparent 28%),
    linear-gradient(180deg,#eaf8fc 0%,#fafafa 30%,#f2fbfd 100%);
}

/* ===== Company & OS: reduce the gap below the image ===== */
.recruit-copy--3{
  align-items:start!important;
}
.recruit-copy--3 .recruit-copy__inner{
  position:absolute;
  top:calc(76px + 30% + clamp(24px,4vh,44px));
  left:18px;
  right:18px;
  width:auto;
  padding:0 8px;
}

/* ===== Readability system: alignment / proximity / repetition / contrast ===== */
.recruit-copy .recruit-copy__heading{
  margin-bottom:20px;
}
.recruit-copy .recruit-copy__heading-label{
  margin-bottom:10px;
  font-size:15px;
  line-height:1.5;
}
.recruit-copy:not(.recruit-copy--1) .recruit-copy__heading-label{
  font-size:15px;
}
.recruit-copy .recruit-copy__body,
.recruit-copy .recruit-copy__details{
  max-width:100%;
  font-size:15px;
  font-weight:500;
  line-height:1.8;
  text-align:left;
}
.recruit-copy .recruit-copy__body p{
  margin-bottom:1em;
}
.recruit-copy .recruit-copy__body p:last-child{
  margin-bottom:0;
}
.recruit-copy .recruit-copy__body h3{
  font-size:18px;
  line-height:1.5;
}
.recruit-copy .recruit-copy__details dt,
.recruit-copy .recruit-copy__details dd{
  font-size:15px;
  line-height:1.7;
}
.recruit-copy--1 .recruit-copy__title{
  font-size:14px;
}
.recruit-copy--1 .recruit-copy__body{
  font-size:15px;
  line-height:1.7;
}
.recruit-layout--blue .recruit-copy__body{
  font-size:15px;
  font-weight:500;
  line-height:1.8;
}
.recruit-copy--4 .recruit-copy__body,
.recruit-copy--8 .recruit-copy__body{
  font-size:15px;
}
.recruit-copy--7 .recruit-copy__body{
  margin-top:165px;
}
.recruit-copy--9 .recruit-copy__body{
  margin-top:250px;
}
.recruit-copy--5,
.recruit-copy--7,
.recruit-copy--9{
  padding-top:112px;
}
.recruit-copy--7 .recruit-copy__photo{
  top:210px;
}

/* Static entry form */
.static-entry{
  margin-top:72px;
  scroll-margin-top:112px;
  padding:40px 24px;
  background:#fff;
  border:1px solid rgba(30,31,33,.1);
  border-radius:24px;
  box-shadow:0 16px 48px rgba(30,31,33,.08);
  color:#1e1f21;
}
.recruit-copy .static-entry .static-entry__title{
  margin:0 0 14px;
  padding:0;
  border:0;
  color:#168fc4;
  font-family:var(--font-en-heading);
  font-size:clamp(36px,9vw,48px);
  font-weight:600;
  letter-spacing:-.03em;
  line-height:1;
}
.static-entry__lead{
  margin-top:0;
  font-size:15px;
  line-height:1.8;
}
.static-entry__form{
  display:grid;
  gap:22px;
  margin-top:30px;
}
.static-entry__field{
  display:grid;
  gap:8px;
}
.static-entry__field label{
  font-size:15px;
  font-weight:600;
  line-height:1.6;
}
.static-entry__required{
  display:inline-block;
  margin-left:6px;
  padding:2px 7px;
  border-radius:999px;
  background:#64daff;
  color:#1e1f21;
  font-size:14px;
  font-weight:700;
  line-height:1.35;
  vertical-align:1px;
}
.static-entry__field input,
.static-entry__field textarea{
  width:100%;
  min-height:54px;
  padding:14px 16px;
  border:1px solid #b8c1c6;
  border-radius:12px;
  outline:0;
  background:#fafafa;
  color:#1e1f21;
  font:inherit;
  font-size:16px;
  line-height:1.5;
  transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;
}
.static-entry__field textarea{
  min-height:140px;
  resize:vertical;
}
.static-entry__field input:focus-visible,
.static-entry__field textarea:focus-visible{
  border-color:#168fc4;
  background:#fff;
  box-shadow:0 0 0 4px rgba(100,218,255,.32);
}
.static-entry__submit{
  display:grid;
  place-items:center;
  width:100%;
  min-height:58px;
  padding:14px 20px;
  border:0;
  border-radius:999px;
  background:#64daff;
  color:#1e1f21;
  font-family:var(--font-en-heading);
  font-size:15px;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.4;
  cursor:pointer;
  transition:background-color .2s ease,transform .2s ease;
}
.static-entry__submit:hover{
  background:#42c9f4;
  transform:translateY(-2px);
}
.static-entry__submit:focus-visible{
  outline:3px solid #1e1f21;
  outline-offset:3px;
}
.static-entry__note{
  margin-top:16px;
  color:#566168;
  font-size:14px;
  line-height:1.7;
}

@media (min-width:1025px){
  .static-entry{
    padding:48px 40px;
  }
}

/* ===== Viewport-fit section system ===== */
:root{
  --header-height:clamp(76px,13.333dvh,96px);
  --panel-height:calc(100dvh - var(--header-height));
  --panel-pad-y:clamp(18px,3.6dvh,30px);
  --panel-gap:clamp(12px,2.4dvh,20px);
}
.header,
.header--inner{
  height:var(--header-height);
  min-height:var(--header-height);
}
.site-wrapper{
  padding-top:var(--header-height);
}
html{
  scroll-padding-top:var(--header-height);
}
.swipe-panel{
  height:var(--panel-height)!important;
  min-height:var(--panel-height)!important;
  max-height:var(--panel-height);
}
.swipe-panel.footer.recruit-copy-panel.swipe-panel--long{
  min-height:var(--panel-height)!important;
}
.recruit-copy:not(.recruit-copy--long){
  padding:var(--panel-pad-y) 18px;
}
.recruit-copy:not(.recruit-copy--long) .recruit-copy__inner{
  height:100%;
  min-height:0;
}
.recruit-copy .recruit-copy__heading{
  margin-bottom:var(--panel-gap);
}
.recruit-copy:not(.recruit-copy--1) .recruit-copy__title{
  font-size:clamp(26px,min(7vw,5.2dvh),38px);
}
.recruit-copy .recruit-copy__body,
.recruit-copy .recruit-copy__details{
  line-height:1.7;
}

/* 01 Hero: image / headline / lead */
.recruit-copy--1{
  --hero-photo-height:clamp(180px,34dvh,255px);
  padding:0 18px var(--panel-pad-y)!important;
}
.recruit-copy--1 .recruit-copy__photo{
  inset:0 18px auto 0;
  width:calc(100% - 18px);
  height:var(--hero-photo-height);
}
.recruit-copy--1 .recruit-copy__inner{
  display:flex;
  flex-direction:column;
  padding-top:calc(var(--hero-photo-height) + var(--panel-gap));
}
.recruit-copy--1 .recruit-copy__heading-label{
  font-size:clamp(32px,min(9.6vw,6.8dvh),50px);
  font-weight:600;
  line-height:1.3;
  letter-spacing:.065em;
}
.recruit-copy--1 .recruit-copy__body{
  margin-top:clamp(14px,2.4dvh,20px);
}

/* 02 / 05: headline and copy above a bottom image */
.recruit-copy--2,
.recruit-copy--5{
  --bottom-photo-height:clamp(155px,36dvh,260px);
}
.recruit-copy--2 .recruit-copy__inner,
.recruit-copy--5 .recruit-copy__inner{
  display:flex;
  flex-direction:column;
  padding-bottom:calc(var(--bottom-photo-height) + var(--panel-gap));
}
.recruit-copy--2 .recruit-copy__body,
.recruit-copy--5 .recruit-copy__body{
  margin-top:auto;
}
.recruit-copy--2 .recruit-copy__photo,
.recruit-copy--5 .recruit-copy__photo{
  inset:auto 18px 0;
  width:calc(100% - 36px);
  height:var(--bottom-photo-height);
  border-radius:22px 22px 0 0;
}

/* 03 / 06: image above, copy spread through the lower field */
.recruit-copy--3,
.recruit-copy--6{
  --blue-photo-height:clamp(128px,24dvh,180px);
  align-items:stretch!important;
}
.recruit-copy--3 .recruit-copy__photo,
.recruit-copy--6 .recruit-copy__photo{
  inset:0 0 auto;
  width:100%;
  height:var(--blue-photo-height);
}
.recruit-copy--3 .recruit-copy__inner,
.recruit-copy--6 .recruit-copy__inner{
  position:absolute;
  inset:0 18px;
  display:grid;
  grid-template-rows:var(--blue-photo-height) 1fr;
  row-gap:var(--panel-gap);
  width:auto;
  height:100%;
  margin:0;
  padding:0 8px;
}
.recruit-copy--3 .recruit-copy__heading,
.recruit-copy--6 .recruit-copy__heading{
  grid-row:1;
  align-self:center;
  margin-bottom:0;
}
.recruit-copy--3 .recruit-copy__body,
.recruit-copy--6 .recruit-copy__body{
  grid-row:2;
  align-self:center;
  margin-top:0;
}

/* 04: heading -> copy -> image */
.recruit-copy--4{
  --growth-photo-height:clamp(165px,35dvh,255px);
}
.recruit-copy--4 .recruit-copy__inner{
  display:flex;
  flex-direction:column;
  padding-bottom:calc(var(--growth-photo-height) + var(--panel-gap));
}
.recruit-copy--4 .recruit-copy__body{
  margin-top:auto;
}
.recruit-copy--4 .recruit-copy__photo{
  inset:auto 18px 0;
  width:calc(100% - 36px);
  height:var(--growth-photo-height);
  border-radius:22px 22px 0 0;
}

/* 07: title, accent image and detailed copy across the full height */
.recruit-copy--7 .recruit-copy__inner{
  display:flex;
  flex-direction:column;
}
.recruit-copy--7 .recruit-copy__heading{
  max-width:58%;
}
.recruit-copy--7 .recruit-copy__photo{
  inset:var(--panel-pad-y) 18px auto auto;
  width:36%;
  height:clamp(105px,20dvh,145px);
  border-radius:20px;
}
.recruit-copy--7 .recruit-copy__body{
  margin-top:auto;
}

/* 08: heading, image and body occupy separate vertical bands */
.recruit-copy--8{
  padding:var(--panel-pad-y) 30px!important;
}
.recruit-copy--8 .recruit-copy__inner{
  display:flex;
  flex-direction:column;
}
.recruit-copy--8 .recruit-copy__photo{
  inset:23% 18px auto auto;
  width:42%;
  height:clamp(150px,31dvh,220px);
}
.recruit-copy--8 .recruit-copy__body{
  margin-top:auto;
  padding-top:38px;
}
.recruit-copy--8 .recruit-copy__body::before{
  top:4px;
}

/* 09: heading, image and company details are vertically balanced */
.recruit-copy--9 .recruit-copy__inner{
  display:flex;
  flex-direction:column;
}
.recruit-copy--9 .recruit-copy__photo{
  inset:24% 18px auto auto;
  width:48%;
  height:clamp(135px,27dvh,190px);
  border-radius:20px;
}
.recruit-copy--9 .recruit-copy__body{
  margin-top:auto;
}

/* Long requirements panel begins below the fixed header. */
.recruit-copy--long{
  min-height:var(--panel-height);
  padding:var(--panel-pad-y) 18px 48px;
}
.recruit-copy-panel.footer .recruit-copy{
  padding-top:var(--panel-pad-y);
}
.static-entry{
  scroll-margin-top:calc(var(--header-height) + 16px);
}

@media (max-height:620px){
  :root{
    --panel-pad-y:14px;
    --panel-gap:10px;
  }
  .recruit-copy .recruit-copy__heading{
    margin-bottom:10px;
  }
  .recruit-copy .recruit-copy__heading-label{
    margin-bottom:6px;
    line-height:1.35;
  }
  .recruit-copy .recruit-copy__body,
  .recruit-copy .recruit-copy__details{
    font-size:14px;
    line-height:1.55;
  }
  .recruit-copy .recruit-copy__body p{
    margin-bottom:.65em;
  }
  .recruit-copy--1{
    --hero-photo-height:170px;
  }
  .recruit-copy--2,
  .recruit-copy--5{
    --bottom-photo-height:130px;
  }
  .recruit-copy--3,
  .recruit-copy--6{
    --blue-photo-height:112px;
  }
  .recruit-copy--4{
    --growth-photo-height:125px;
  }
  .recruit-copy--7 .recruit-copy__photo{
    height:84px;
  }
  .recruit-copy--8 .recruit-copy__photo,
  .recruit-copy--9 .recruit-copy__photo{
    height:92px;
  }
  .recruit-copy--8 .recruit-copy__body{
    padding-top:30px;
  }
}

/* ===== Requirements / entry horizontal spacing ===== */
.recruit-copy--long .recruit-copy__inner{
  padding-left:0;
  padding-right:0;
}
.static-entry{
  padding-left:24px;
  padding-right:24px;
}

@media (max-width:600px){
  .recruit-layout--requirements .recruit-copy__details>div{
    grid-template-columns:minmax(0,1fr);
    gap:6px;
    padding:16px 0;
  }
  .recruit-layout--requirements .recruit-copy__details dt,
  .recruit-layout--requirements .recruit-copy__details dd{
    width:100%;
    min-width:0;
  }
}

/* ===== Top-aligned copy rhythm ===== */
.recruit-copy--1 .recruit-copy__heading{
  margin-bottom:0;
}
.recruit-copy--2,
.recruit-copy--4{
  padding-top:var(--panel-pad-y)!important;
}
.recruit-copy--2 .recruit-copy__body,
.recruit-copy--4 .recruit-copy__body,
.recruit-copy--5 .recruit-copy__body,
.recruit-copy--7 .recruit-copy__body,
.recruit-copy--8 .recruit-copy__body,
.recruit-copy--9 .recruit-copy__body{
  margin-top:0;
}
.recruit-copy--3 .recruit-copy__body,
.recruit-copy--6 .recruit-copy__body{
  align-self:start;
  padding-top:var(--panel-gap);
}
.recruit-copy--7 .recruit-copy__photo,
.recruit-copy--8 .recruit-copy__photo,
.recruit-copy--9 .recruit-copy__photo{
  inset:auto 18px 0 auto;
}
.recruit-copy--8 .recruit-copy__body{
  padding-top:30px;
}

/* Images follow the copy instead of being fixed to the panel bottom. */
.recruit-copy--2 .recruit-copy__inner,
.recruit-copy--4 .recruit-copy__inner,
.recruit-copy--5 .recruit-copy__inner{
  padding-bottom:0;
}
.recruit-copy--2 .recruit-copy__photo,
.recruit-copy--4 .recruit-copy__photo,
.recruit-copy--5 .recruit-copy__photo,
.recruit-copy--7 .recruit-copy__photo,
.recruit-copy--8 .recruit-copy__photo,
.recruit-copy--9 .recruit-copy__photo{
  position:relative;
  inset:auto;
  flex:0 0 auto;
  align-self:flex-end;
  margin:var(--panel-gap) 0 0;
}
.recruit-copy--2 .recruit-copy__photo,
.recruit-copy--4 .recruit-copy__photo,
.recruit-copy--5 .recruit-copy__photo{
  width:100%;
  border-radius:22px;
}
.recruit-copy--7 .recruit-copy__photo{
  width:36%;
}
.recruit-copy--8 .recruit-copy__photo{
  width:42%;
}
.recruit-copy--9 .recruit-copy__photo{
  width:100%;
}

/* Hero elements are centered as one group in the available panel height. */
.recruit-copy--1{
  padding:0 18px!important;
}
.recruit-copy--1 .recruit-copy__inner{
  display:flex;
  flex-direction:column;
  justify-content:center;
  height:100%;
  padding-top:0;
}
.recruit-copy--1 .recruit-copy__photo{
  position:relative;
  inset:auto;
  flex:0 0 auto;
  align-self:flex-start;
  width:calc(100% + 18px);
  margin-left:-18px;
}
.recruit-copy--1 .recruit-copy__heading{
  margin-top:var(--panel-gap);
}

/* Keep the requirements heading aligned to the section inset. */
.recruit-copy--long .recruit-copy__heading{
  width:100%;
  margin-left:0;
  margin-right:0;
}

/* Add a readable cushion when a section heading sits over a photo. */
.recruit-copy--3 .recruit-copy__heading,
.recruit-copy--6 .recruit-copy__heading{
  width:fit-content;
  max-width:100%;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.9);
  box-shadow:0 8px 24px rgba(17,24,39,.12);
  -webkit-backdrop-filter:blur(4px);
  backdrop-filter:blur(4px);
}
.recruit-copy--3 .recruit-copy__heading-label,
.recruit-copy--3 .recruit-copy__title,
.recruit-copy--6 .recruit-copy__heading-label,
.recruit-copy--6 .recruit-copy__title{
  color:#111827;
}

/* Use existing key sentences as compact subheadings and callouts. */
.recruit-copy--2 .recruit-copy__body p:last-child::before,
.recruit-copy--3 .recruit-copy__body p:last-child::before,
.recruit-copy--4 .recruit-copy__body p:last-child::before,
.recruit-copy--5 .recruit-copy__body p:last-child::before,
.recruit-copy--6 .recruit-copy__body p:last-child::before{
  display:block;
  margin-bottom:5px;
  font-family:var(--font-en-heading);
  font-size:14px;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.4;
}
.recruit-copy--2 .recruit-copy__body p:last-child::before{
  content:"MESSAGE";
  color:#168fc4;
}
.recruit-copy--3 .recruit-copy__body p:last-child::before{
  content:"POINT";
  color:rgba(255,255,255,.82);
}
.recruit-copy--4 .recruit-copy__body p:last-child::before{
  content:"POINT";
  color:#168fc4;
}
.recruit-copy--5 .recruit-copy__body p:last-child::before{
  content:"CURRENT ISSUE";
  color:#168fc4;
}
.recruit-copy--6 .recruit-copy__body p:last-child::before{
  content:"OUR STYLE";
  color:rgba(255,255,255,.82);
}
.recruit-copy--2 .recruit-copy__body p:last-child,
.recruit-copy--3 .recruit-copy__body p:last-child,
.recruit-copy--4 .recruit-copy__body p:last-child,
.recruit-copy--5 .recruit-copy__body p:last-child,
.recruit-copy--6 .recruit-copy__body p:last-child{
  padding-left:14px;
  border-left:3px solid #64daff;
}
.recruit-copy--3::after,
.recruit-copy--6::after{
  position:absolute;
  z-index:0;
  right:14px;
  bottom:8px;
  color:rgba(255,255,255,.11);
  font-family:var(--font-en-heading);
  font-size:clamp(48px,13vw,64px);
  font-weight:700;
  letter-spacing:-.04em;
  line-height:1;
  white-space:nowrap;
  pointer-events:none;
}
.recruit-copy--3::after{
  content:none;
}
.recruit-copy--6::after{
  content:"TOGETHER";
}

/* Company & OS uses a card callout and a dedicated smartphone illustration. */
.recruit-copy--3 .recruit-copy__body p:last-of-type{
  margin-top:14px;
  padding:14px 16px;
  border-left:0;
  border-radius:16px;
  background:rgba(255,255,255,.94);
  color:#111827;
  box-shadow:0 10px 28px rgba(17,24,39,.12);
}
.recruit-copy--3 .recruit-copy__body p:last-of-type::before{
  content:"POINT";
  display:block;
  margin-bottom:5px;
  color:#168fc4;
  font-family:var(--font-en-heading);
  font-size:14px;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.4;
}
.company-os-visual{
  display:grid;
  place-items:center;
  width:100%;
  margin-top:16px;
}
.company-os-visual__image{
  display:block;
  width:min(255px,100%);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 12px 24px rgba(17,24,39,.16));
}

@media (min-height:621px) and (max-height:700px){
  .recruit-copy--2,
  .recruit-copy--5{
    --bottom-photo-height:clamp(150px,28dvh,205px);
  }
  .recruit-copy--4{
    --growth-photo-height:clamp(150px,27dvh,195px);
  }
  .recruit-copy--7 .recruit-copy__photo{
    height:110px;
  }
  .recruit-copy--8 .recruit-copy__photo{
    height:170px;
  }
  .recruit-copy--9 .recruit-copy__photo{
    height:150px;
  }
  .company-os-visual__image{
    width:min(220px,100%);
  }
}

@media (max-height:620px){
  .company-os-visual__image{
    width:min(190px,100%);
  }
}

/* ===== Use the lower field as meaningful visual information ===== */
.recruit-copy--6 .recruit-copy__body{
  display:flex;
  flex-direction:column;
  height:100%;
  padding-bottom:18px;
}
.recruit-copy--6::after{
  content:none;
}
.growth-loop{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  width:100%;
  margin-top:clamp(12px,2dvh,20px);
  padding-top:0;
}
.growth-loop__item{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:clamp(92px,13dvh,128px);
  padding:12px 8px;
  border:1px solid rgba(255,255,255,.38);
  border-radius:16px;
  background:rgba(255,255,255,.12);
  color:#fff;
  text-align:center;
  backdrop-filter:blur(3px);
}
.growth-loop__item:not(:last-child)::after{
  content:"";
  position:absolute;
  z-index:2;
  top:50%;
  right:-8px;
  width:8px;
  height:2px;
  background:#64daff;
}
.growth-loop__item span{
  margin-bottom:4px;
  color:#dff8ff;
  font-family:var(--font-en-heading);
  font-size:14px;
  font-weight:700;
  letter-spacing:.08em;
}
.growth-loop__item strong{
  font-size:15px;
  line-height:1.45;
}
.growth-loop__item small{
  margin-top:3px;
  font-size:14px;
  line-height:1.4;
}
.growth-loop__item--accent{
  border-color:#64daff;
  background:#fff;
  color:#168fc4;
  box-shadow:0 10px 24px rgba(17,24,39,.12);
}
.growth-loop__item--accent span{
  color:#168fc4;
}

.recruit-copy--8{
  padding-left:30px!important;
  padding-right:30px!important;
}
.recruit-copy--8 .recruit-copy__inner{
  height:100%;
}
.recruit-copy--8 .recruit-copy__body{
  padding-top:42px;
}
.business-scope{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:14px 0;
  padding:0;
  list-style:none;
}
.business-scope li{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  padding:10px 8px;
  border:1px solid rgba(88,175,224,.3);
  border-radius:12px;
  background:#effaff;
  color:#111827;
}
.business-scope span{
  color:#168fc4;
  font-family:var(--font-en-heading);
  font-size:14px;
  font-weight:700;
}
.business-scope strong{
  font-size:14px;
  line-height:1.4;
  white-space:nowrap;
}
.recruit-copy--8 .recruit-copy__photo{
  align-self:stretch;
  width:100%;
  height:clamp(190px,34dvh,430px);
  margin-top:clamp(14px,2.5dvh,28px);
  border-radius:22px 22px 0 0;
}

@media (max-height:700px){
  .growth-loop{
    margin-top:10px;
    padding-top:0;
  }
  .growth-loop__item{
    min-height:68px;
    padding:7px 5px;
  }
  .growth-loop__item small{
    display:none;
  }
  .business-scope{
    margin:8px 0;
  }
  .business-scope li{
    padding:7px 6px;
  }
  .recruit-copy--8 .recruit-copy__photo{
    height:clamp(110px,22dvh,150px);
    margin-top:10px;
  }
}

/* Keep the Grow Together cards inside short mobile viewports. */
@media (max-width:600px) and (max-height:700px){
  .recruit-copy--6{
    --blue-photo-height:120px;
  }
  .recruit-copy--6 .recruit-copy__body{
    padding-bottom:6px;
    font-size:14px;
    line-height:1.6;
  }
  .recruit-copy--6 .recruit-copy__body p{
    margin-bottom:.65em;
  }
}

.recruit-copy__ampersand{
  display:inline-block;
  margin:0 .04em;
  font-family:Arial,Helvetica,sans-serif;
  font-feature-settings:normal;
  font-weight:500;
  letter-spacing:0;
}

/* Version Up: full-width image fixed to the section bottom. */
.recruit-copy--7{
  --version-photo-height:clamp(110px,24dvh,190px);
  padding-bottom:0!important;
}
.recruit-copy--7 .recruit-copy__inner{
  padding-bottom:calc(var(--version-photo-height) + var(--panel-gap));
}
.recruit-copy--7 .recruit-copy__photo{
  position:absolute;
  inset:auto -18px 0;
  width:calc(100% + 36px);
  height:var(--version-photo-height);
  margin:0;
  border-radius:22px 22px 0 0;
  box-shadow:none;
}

/* Desktop rails: generated noise gradient with navigation at both sides. */
@media (min-width:1024px){
  html{
    background:#fafafa;
  }
  body{
    background-color:#fafafa;
    background-image:url("images/backgrounds/desktop-noise-gradient.webp");
    background-position:center top;
    background-size:cover;
    background-repeat:no-repeat;
    background-attachment:fixed;
  }
}

/* Additional navigation in the empty desktop rails. */
.desktop-rail-nav{
  display:none;
}
@media (min-width:1024px){
  .desktop-rail-nav{
    display:block;
  }
  .desktop-rail-nav__logo,
  .desktop-rail-nav__entry{
    position:fixed;
    z-index:10001;
    top:50dvh;
  }
  .desktop-rail-nav__logo{
    left:calc((100vw - var(--clone-max-width)) / 4);
    width:min(280px,calc((100vw - var(--clone-max-width)) / 2 - 48px));
    transform:translate(-50%,-50%);
    filter:drop-shadow(0 8px 20px rgba(35,59,104,.12));
  }
  .desktop-rail-nav__logo img{
    display:block;
    width:100%;
    height:auto;
  }
  .desktop-rail-nav__entry{
    right:calc((100vw - var(--clone-max-width)) / 4);
    display:grid;
    place-items:center;
    width:200px;
    height:80px;
    border:1px solid rgba(255,255,255,.58);
    border-radius:999px;
    background:linear-gradient(135deg,#233b68 0%,#168fc4 58%,#64daff 100%);
    color:#fff;
    font-size:18px;
    font-weight:700;
    letter-spacing:.16em;
    line-height:1;
    transform:translate(50%,-50%);
    box-shadow:
      0 16px 38px rgba(35,59,104,.28),
      0 0 0 8px rgba(100,218,255,.18);
    transition:transform .25s ease,box-shadow .25s ease,filter .25s ease;
  }
  .desktop-rail-nav__entry:hover{
    transform:translate(50%,-50%) scale(1.04);
    box-shadow:
      0 20px 46px rgba(35,59,104,.34),
      0 0 0 10px rgba(100,218,255,.24);
    filter:brightness(1.06);
  }
}

/* Opening portrait video shown before the existing first view. */
.video-intro{
  position:relative;
  z-index:10002;
  width:100%;
  max-width:var(--clone-max-width);
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh;
  margin:0 auto;
  overflow:hidden;
  background:#111827;
  isolation:isolate;
}
.video-intro::after{
  content:"";
  position:absolute;
  z-index:1;
  inset:auto 0 0;
  height:28%;
  background:linear-gradient(180deg,transparent,rgba(5,16,28,.5));
  pointer-events:none;
}
.video-intro__media{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.video-intro__scroll{
  position:absolute;
  z-index:2;
  right:0;
  bottom:max(24px,env(safe-area-inset-bottom));
  left:0;
  display:grid;
  justify-items:center;
  gap:9px;
  color:#fff;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.42));
  pointer-events:none;
}
.video-intro__scroll-label{
  font-size:11px;
  font-weight:600;
  letter-spacing:.24em;
  line-height:1;
}
.video-intro__scroll-arrow{
  width:12px;
  height:12px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);
  animation:video-intro-arrow 1.8s ease-in-out infinite;
}
@keyframes video-intro-arrow{
  0%,100%{transform:translateY(-3px) rotate(45deg);opacity:.45}
  50%{transform:translateY(5px) rotate(45deg);opacity:1}
}

/* The existing header and desktop rails appear only after the existing FV is reached. */
.has-video-intro .header,
.has-video-intro .desktop-rail-nav{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease;
}
.has-video-intro .site-wrapper{
  padding-top:0;
}
.has-video-intro .header{
  position:sticky;
  top:0;
}
.has-video-intro.is-content-visible .site-wrapper{
  padding-top:var(--header-height);
}
.has-video-intro.is-content-visible .header{
  position:fixed;
}
.has-video-intro.is-header-visible .header,
.has-video-intro.is-content-visible .header{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
@media (min-width:1024px){
  .has-video-intro.is-content-visible .desktop-rail-nav{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }
}
@media (prefers-reduced-motion:reduce){
  .video-intro__scroll-arrow{animation:none}
}

/* Section entrance motion: heading, copy and imagery reveal in sequence. */
.has-reveal-motion [data-reveal]{
  opacity:0;
  transition-property:opacity,transform,filter,clip-path;
  transition-duration:.72s,.9s,.72s,.9s;
  transition-delay:var(--reveal-delay,0ms);
  transition-timing-function:cubic-bezier(.16,1,.3,1);
}
.has-reveal-motion [data-reveal="item"]{
  transform:translate3d(0,24px,0);
  filter:blur(5px);
}
.has-reveal-motion [data-reveal="title"]{
  transform:translate3d(0,30px,0) scale(.97);
  clip-path:inset(0 0 100% 0);
}
.has-reveal-motion [data-reveal="image"]{
  transform:translate3d(0,26px,0) scale(1.09);
  filter:saturate(.72) contrast(.94);
  clip-path:inset(12% 0 0 0 round 12px);
}
.has-reveal-motion.is-in-view [data-reveal]{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
  filter:none;
  clip-path:inset(0 0 0 0 round 0);
}
.has-reveal-motion .recruit-copy__heading-label[data-reveal="item"]{
  transform:translate3d(-22px,0,0);
}
.has-reveal-motion.is-in-view .recruit-copy__heading-label[data-reveal="item"]{
  transform:translate3d(0,0,0);
}
@media (prefers-reduced-motion:reduce){
  .has-reveal-motion [data-reveal]{
    opacity:1;
    transform:none;
    filter:none;
    clip-path:none;
    transition:none;
  }
}
