/* The film is one sticky scene. Its text has a separate, reliable contrast layer. */
:root{--jm-header-height:88px}
.site-header{position:sticky;top:0;background:var(--paper);z-index:30}
.header-inner{height:var(--jm-header-height)}
.cinematic-story{position:relative;background:#080e17;color:#fff;height:calc(100svh - var(--jm-header-height));min-height:620px}
.cinematic-story.is-cinematic-enabled:not(.is-static){height:460svh;min-height:0}
.cinematic-anchor{position:absolute;top:0;scroll-margin-top:var(--jm-header-height)}
.cinematic-stage{position:sticky;top:var(--jm-header-height);height:calc(100svh - var(--jm-header-height));min-height:620px;overflow:hidden;isolation:isolate;background:#080e17}
.cinematic-media{position:absolute;inset:0;z-index:-3}
.cinematic-poster,.cinematic-poster img,#cinematic-canvas{display:block;position:absolute;inset:0;width:100%;height:100%}
.cinematic-poster img{object-fit:cover}
.cinematic-poster{opacity:1;transition:opacity .25s}
#cinematic-canvas{opacity:0;transition:opacity .25s}
.is-canvas-ready .cinematic-poster{opacity:0}
.is-canvas-ready #cinematic-canvas{opacity:1}
.cinematic-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(270deg,rgba(6,13,24,.94) 0%,rgba(6,13,24,.84) 22%,rgba(6,13,24,.28) 52%,transparent 74%),linear-gradient(0deg,rgba(6,13,24,.88),transparent 24%);transition:background .35s}
.cinematic-story[data-cinematic-panel="1"] .cinematic-shade,.cinematic-story[data-cinematic-panel="2"] .cinematic-shade{background:linear-gradient(90deg,rgba(6,13,24,.91),rgba(6,13,24,.82) 20%,rgba(6,13,24,.1) 55%,transparent 78%),linear-gradient(0deg,rgba(6,13,24,.87),transparent 25%)}
.cinematic-story[data-cinematic-panel="3"] .cinematic-shade{background:linear-gradient(0deg,rgba(6,13,24,.97),rgba(6,13,24,.6) 24%,transparent 55%)}
.cinematic-topline{position:absolute;inset:30px 0 auto;display:flex;justify-content:space-between;gap:20px;font-size:8px;font-weight:700;letter-spacing:.16em;color:#e9eff6;text-shadow:0 1px 9px #000}
.cinematic-topline>span:first-child{display:flex;align-items:center;gap:9px}.cinematic-topline i{height:5px;width:5px;border-radius:50%;background:#83a9ff}
.cinematic-panels{position:absolute;inset:0;pointer-events:none}
.cinematic-panel{position:absolute;left:0;bottom:118px;max-width:480px;opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .3s,transform .3s,visibility .3s;pointer-events:none}
.cinematic-panel.is-active{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.cinematic-intro{left:auto;right:0;bottom:126px;max-width:510px}
.cinematic-eyebrow{font-size:9px;line-height:1.5;letter-spacing:.16em;font-weight:700;color:#b9caff;margin-bottom:23px}
.cinematic-panel h1{font-size:clamp(72px,7.4vw,112px);letter-spacing:-.066em;line-height:.98;font-weight:700}
.cinematic-panel h2{font-size:clamp(48px,5.05vw,75px);letter-spacing:-.055em;line-height:1.03;font-weight:700}
.cinematic-panel em{font-style:normal;color:#9ab3ff}
.cinematic-description{font-size:14px;line-height:1.8;color:#eef1f6;margin-top:25px}
.cinematic-actions{display:flex;align-items:center;gap:23px;margin-top:27px;flex-wrap:wrap}
.cinematic-actions .button{font-size:12px;gap:25px;padding:17px 21px;background:#234cff}
.cinematic-actions .button:hover{background:#123be8}
.cinematic-actions .text-button{color:#fff;font-size:11px;gap:9px}
.cinematic-actions :focus-visible{outline-color:#fff}
.cinematic-closing{max-width:600px;bottom:118px}
.cinematic-closing h2{font-size:clamp(42px,4.5vw,64px)}
.cinematic-closing .cinematic-eyebrow{margin-bottom:16px}
.cinematic-closing .cinematic-description{margin-top:18px}
.cinematic-bottomline{position:absolute;inset:auto 0 28px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-top:1px solid #ffffff35;padding-top:19px;font-size:9px;color:#fff}
.cinematic-scroll-cue{display:flex;align-items:center;gap:12px;color:#e7ecf7}
.cinematic-scroll-icon{display:grid;place-items:center;width:24px;height:31px;border:1px solid #ffffff50;border-radius:15px;font-size:14px}
.cinematic-timeline{display:flex;align-items:center;gap:21px}
#cinematic-progress-label{font-size:8px;font-weight:700;letter-spacing:.13em;min-width:154px}
#cinematic-progress{width:145px;height:2px;background:#ffffff40;overflow:hidden}
.cinematic-progress-fill{display:block;width:100%;height:100%;background:#91b4ff;transform:scaleX(0);transform-origin:left}
.cinematic-timeline>a{color:#e7ecf7;display:flex;gap:9px;align-items:center}
.is-static .cinematic-stage{position:relative;top:0}
.is-static .cinematic-scroll-cue,.is-static #cinematic-progress,.is-static #cinematic-progress-label{display:none}
.is-static .cinematic-bottomline{justify-content:flex-end}
.cinematic-story:not(.is-cinematic-enabled) .cinematic-scroll-cue,.cinematic-story:not(.is-cinematic-enabled) #cinematic-progress,.cinematic-story:not(.is-cinematic-enabled) #cinematic-progress-label{display:none}
.service-index{margin-top:25px}
.section{scroll-margin-top:calc(var(--jm-header-height) + 20px)}
@media(max-height:790px) and (min-width:768px){.cinematic-stage,.cinematic-story{min-height:530px}.cinematic-panel{bottom:104px}.cinematic-intro{bottom:104px}.cinematic-panel h1{font-size:clamp(65px,6.1vw,89px)}.cinematic-panel h2{font-size:clamp(43px,4.7vw,64px)}.cinematic-eyebrow{margin-bottom:17px}.cinematic-description{margin-top:19px}.cinematic-actions{margin-top:21px}.cinematic-closing h2{font-size:48px}}
@media(max-width:1100px) and (min-width:768px){.cinematic-intro{max-width:430px}.cinematic-panel h1{font-size:83px}.cinematic-panel h2{font-size:59px}.cinematic-actions{gap:15px}.cinematic-description{font-size:13px}.cinematic-timeline{gap:13px}#cinematic-progress{width:95px}}
@media(max-width:767px){
  :root{--jm-header-height:72px}
  .site-header{background:var(--paper);backdrop-filter:none}
  .site-nav{top:72px}
  .cinematic-story{min-height:0}
  .cinematic-story.is-cinematic-enabled:not(.is-static){height:370svh}
  .cinematic-stage{height:calc(100svh - var(--jm-header-height));min-height:0}
  .cinematic-media{inset:0 0 auto;height:auto;aspect-ratio:16/9;min-height:0}
  .cinematic-shade,.cinematic-story[data-cinematic-panel] .cinematic-shade{inset:calc(100vw * .5625 - 60px) 0 auto;height:61px;background:linear-gradient(0deg,#080e17,transparent)}
  .cinematic-topline{top:19px;font-size:6px;letter-spacing:.13em;gap:8px}
  .cinematic-topline>span:last-child{display:none}
  .cinematic-panels{inset:calc(100vw * .5625 + 22px) 0 83px}
  .cinematic-panel,.cinematic-intro,.cinematic-closing{left:0;right:0;top:0;bottom:auto;max-width:none}
  .cinematic-eyebrow{font-size:7px;letter-spacing:.14em;margin-bottom:15px}
  .cinematic-panel h1{font-size:clamp(48px,10.3vw,68px);line-height:1.04;letter-spacing:-.058em}
  .cinematic-panel h1 br:nth-of-type(2){display:none}
  .cinematic-panel h1 em{white-space:nowrap}
  .cinematic-panel h2,.cinematic-closing h2{font-size:clamp(39px,9.5vw,61px);line-height:1.05}
  .cinematic-description,.cinematic-closing .cinematic-description{font-size:12px;line-height:1.7;margin-top:16px}
  .cinematic-actions{gap:14px;margin-top:19px;flex-wrap:wrap}
  .cinematic-actions .button{font-size:11px;padding:15px 17px;gap:18px}
  .cinematic-actions .text-button{font-size:10px;gap:7px;padding:7px 0}
  .cinematic-bottomline{bottom:21px;padding-top:17px;gap:16px}
  .cinematic-scroll-cue{font-size:8px;gap:8px}.cinematic-scroll-icon{height:26px;width:19px;font-size:12px}
  .cinematic-timeline{gap:11px}#cinematic-progress-label{font-size:6px;min-width:0;letter-spacing:.07em}#cinematic-progress{width:46px}
  .cinematic-timeline>a{display:none}
  .service-index{margin-top:17px}
}
@media(max-width:420px){.cinematic-actions{gap:10px}.cinematic-actions .button{font-size:10px;padding:14px 15px;gap:13px}.cinematic-actions .text-button{font-size:9px}.cinematic-panel h1{font-size:47px}.cinematic-panel h2{font-size:43px}.cinematic-topline{top:16px}}
@media(max-width:767px) and (max-height:740px){.cinematic-panels{top:calc(100vw * .5625 + 12px)}.cinematic-panel h1{font-size:clamp(34px,10vw,40px)}.cinematic-panel h2,.cinematic-closing h2{font-size:clamp(31px,9.5vw,38px)}.cinematic-eyebrow{margin-bottom:10px}.cinematic-description,.cinematic-closing .cinematic-description{font-size:11px;margin-top:12px}.cinematic-actions{margin-top:15px}.cinematic-bottomline{bottom:14px;padding-top:12px}.cinematic-actions .button{padding:13px 14px}}
@media(max-width:960px) and (max-height:740px) and (orientation:landscape){
  :root{--jm-header-height:64px}
  .brand-logo{width:64px;height:43px}.brand-description{font-size:6px}.site-nav{top:64px}
  .cinematic-stage,.cinematic-story{min-height:0;height:calc(100svh - var(--jm-header-height))}
  .cinematic-media{inset:0;height:auto;aspect-ratio:auto}
  #cinematic-canvas{--cinematic-fit:contain}.cinematic-poster img{object-fit:contain}
  .cinematic-panels{inset:0}
  .cinematic-panel,.cinematic-intro,.cinematic-closing{top:auto;bottom:62px;max-width:370px;right:auto;left:0}
  .cinematic-intro{right:0;left:auto}
  .cinematic-panel h1{font-size:46px;line-height:1.03}.cinematic-panel h1 br:nth-of-type(2){display:none}
  .cinematic-panel h2,.cinematic-closing h2{font-size:40px;line-height:1.03}
  .cinematic-eyebrow{display:none}
  .cinematic-description,.cinematic-closing .cinematic-description{font-size:10px;line-height:1.7;margin-top:12px}
  .cinematic-actions{margin-top:15px;gap:13px}.cinematic-actions .button{padding:12px 15px;font-size:10px}.cinematic-actions .text-button{font-size:9px}
  .cinematic-topline{top:16px;font-size:6px}
  .cinematic-bottomline{bottom:12px;padding-top:8px;font-size:8px}
  .cinematic-scroll-icon{height:23px;width:18px}.cinematic-scroll-cue{font-size:8px}
  #cinematic-progress-label{font-size:6px;min-width:0}#cinematic-progress{width:55px}
  .cinematic-shade,.cinematic-story[data-cinematic-panel] .cinematic-shade{inset:0;height:auto;background:linear-gradient(270deg,rgba(6,13,24,.96),rgba(6,13,24,.8) 35%,rgba(6,13,24,.15) 68%),linear-gradient(0deg,rgba(6,13,24,.9),transparent 25%)}
  .cinematic-story[data-cinematic-panel="1"] .cinematic-shade,.cinematic-story[data-cinematic-panel="2"] .cinematic-shade{background:linear-gradient(90deg,rgba(6,13,24,.96),rgba(6,13,24,.8) 35%,rgba(6,13,24,.15) 68%),linear-gradient(0deg,rgba(6,13,24,.9),transparent 25%)}
  .cinematic-story[data-cinematic-panel="3"] .cinematic-shade{background:linear-gradient(0deg,rgba(6,13,24,.96),rgba(6,13,24,.78) 32%,transparent 82%)}
}
@media(prefers-reduced-motion:reduce){.cinematic-story.is-cinematic-enabled:not(.is-static){height:calc(100svh - var(--jm-header-height))}.cinematic-stage{position:relative;top:0}.cinematic-panel,.cinematic-poster,#cinematic-canvas{transition:none}.cinematic-scroll-cue,#cinematic-progress,#cinematic-progress-label{display:none}}
