/* RELAY: one continuous atmosphere, a scroll-driven product film. */
.relay-page{background:#08090a;isolation:isolate}
.relay-atmosphere{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.relay-atmosphere .relay-network{z-index:0}
.relay-atmosphere-shade{position:absolute;inset:0;background:radial-gradient(ellipse at 40% 35%,#08090a88 0%,#08090a20 55%,#08090a66 100%)}
.relay-demo,.relay-header,main,.relay-footer{position:relative}
.relay-demo{background:#08090a65;font-size:12px}
.relay-hero{isolation:auto;min-height:calc(100svh - 142px);overflow:visible}
.relay-hero-shade{z-index:-1;background:linear-gradient(90deg,#08090ac9 0%,#08090a72 36%,#08090a00 80%)}
.relay-hero-copy{padding-block:90px 160px}
.relay-hero h1{letter-spacing:-.055em;font-size:clamp(52px,6.1vw,92px);max-width:1150px}
.relay-hero h1 span{color:#b0b2b4}
.relay-hero-description{color:#bec0c1}
.relay-header-contact,.relay-button,.relay-text-link{transition:background .25s,color .25s,border-color .25s,transform .25s}
.relay-button:hover{transform:translateY(-2px)}
.relay-button:active{transform:translateY(0)}
.relay-motion{background:#08090acd;font-size:13px}
.relay-film{height:260svh;position:relative;border-bottom:1px solid #ffffff25;--film-progress:0}
.relay-film-stage{height:100svh;position:sticky;top:0;overflow:hidden;background:radial-gradient(ellipse at 55% 65%,#08090a00 0%,#08090a48 55%,#08090a85 100%);isolation:isolate}
.relay-film-heading{position:relative;z-index:3;padding-top:6svh;pointer-events:none}
.relay-film-heading h2{font-size:clamp(34px,4vw,62px);font-weight:500;letter-spacing:-.05em;line-height:1.13;margin-top:18px;max-width:920px}
.relay-film-heading h2 span{color:#a9abad}
.relay-laptop-view{position:absolute;inset:22% 0 13%;z-index:2;pointer-events:none;mask-image:linear-gradient(transparent,#000 3%,#000 93%,transparent)}
.relay-laptop-view canvas{display:block;width:100%;height:100%}
.relay-film-foot{position:absolute;z-index:4;bottom:5svh;left:0;right:0;display:grid;grid-template-columns:1.3fr 1fr auto;gap:40px;align-items:center}
.relay-film-caption{max-width:360px}
.relay-film-caption>p:last-child{font-size:16px;line-height:1.65;margin-top:8px;color:#c1c3c5}
.relay-film-meter{display:grid;gap:15px;color:#888b8e;font:12px Consolas,monospace}
.relay-film-meter>.relay-film-steps{display:flex;justify-content:space-between;gap:16px;height:auto;background:none;overflow:visible}
.relay-film-meter>.relay-film-track{height:1px;background:#ffffff26;overflow:hidden}
.relay-film[data-phase="0"] .relay-film-steps span:nth-child(1),.relay-film[data-phase="1"] .relay-film-steps span:nth-child(2),.relay-film[data-phase="2"] .relay-film-steps span:nth-child(3){color:#e5e8eb}
.relay-film-meter i{display:block;height:100%;background:#eceeef;transform:scaleX(var(--film-progress));transform-origin:left}
.relay-film-word{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);font-size:clamp(100px,22vw,330px);font-weight:800;line-height:1;letter-spacing:-.08em;z-index:0;color:#f0f1f203;white-space:nowrap;pointer-events:none}
.relay-film-fallback{display:none;position:absolute;top:31%;left:50%;transform:translateX(-50%);width:min(760px,calc(100% - 48px));padding:25px;border:1px solid #ffffff2b;background:#0c0e11;box-shadow:0 25px 100px #0008;z-index:1}
.relay-film-fallback>span{font:12px Consolas,monospace;color:#92979f}
.relay-film-fallback pre{font:clamp(13px,1.3vw,18px)/1.9 Consolas,monospace;color:#c9cdd3;white-space:pre-wrap;margin:20px 0}
.relay-film-fallback>div{border-top:1px solid #ffffff24;padding-top:20px}
.relay-film-fallback strong{font-size:18px;font-weight:500}
.relay-film-fallback p{font-size:14px;line-height:1.8;color:#a1a5aa;margin-top:10px}
.relay-film.is-webgl .relay-film-fallback{display:none}
.relay-film.is-fallback .relay-film-fallback{display:block}
.relay-film.is-fallback{height:auto}
.relay-film.is-fallback .relay-film-stage{height:820px;position:relative}
.relay-section{padding-block:130px}
.relay-section-heading h2{letter-spacing:-.042em;line-height:1.16}
.relay-solutions{background:linear-gradient(90deg,#08090a8c,#08090a35)}
.relay-solution-list{grid-template-columns:1fr;border:none}
.relay-solution-list article,.relay-solution-list article+article{position:relative;display:grid;grid-template-columns:.18fr .72fr 1fr .7fr;gap:36px;padding:43px 0;border-right:0;border-top:1px solid #ffffff2b;align-items:start}
.relay-solution-list h3{margin:0;font-size:clamp(25px,2.6vw,38px);letter-spacing:-.04em}
.relay-solution-list article>p{margin:0;max-width:420px;color:#b5b7ba;line-height:1.85}
.relay-solution-list ul{margin:0}
.relay-solution-list li:first-child{border-top:none;padding-top:0}
.relay-solution-list li{border-color:#ffffff18}
.relay-number{padding-top:9px;color:#a0a3a7}
.relay-system{background:#101215d9;color:#f0f1f3;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25}
.relay-system .relay-kicker{color:#969ba3}
.relay-system .relay-section-heading>p:last-child{color:#acb1b8}
.relay-scenario-tabs{border-color:#ffffff2b;gap:14px}
.relay-scenario-tabs button{color:#adb2b9;padding-inline:25px;transition:background .25s,color .25s}
.relay-scenario-tabs button[aria-selected=true]{background:#edeff2;color:#101215}
.relay-scenario-tabs button:hover{border-color:#ffffff44}
.relay-scenario{gap:72px;grid-template-columns:.8fr 1.2fr;align-items:center}
.relay-scenario-intro h3{font-size:clamp(30px,3.3vw,46px);letter-spacing:-.044em}
.relay-scenario-intro>p{color:#acb1b8}
.relay-scenario-intro .relay-scenario-status{color:#969da7;min-height:45px;font-size:14px}
.relay-system .relay-button-dark{background:#edeff2;color:#101215}
.relay-system .relay-button-dark:hover{background:#c6cbd2}
.relay-route{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.relay-route li{min-height:194px;padding:27px 24px;display:grid;grid-template-columns:18px 1fr;gap:12px;background:#11151bee;border:1px solid #353a42;transition:border-color .35s,background .35s,transform .35s}
.relay-route li,.relay-route li>div{min-width:0}.relay-route h4{overflow-wrap:anywhere}
.relay-route li:not(:last-child):before{display:none}
.relay-route-number{justify-self:end;color:#858d98;font-size:12px}
.relay-route li>div{grid-column:1/-1;align-self:center}
.relay-route h4{font-size:17px;color:#e0e4e8}
.relay-route p{font-size:14px;color:#9ca5b0}
.relay-route-state{grid-column:1/-1;padding:0;font-size:12px;color:#808a97}
.relay-route-node{background:#151920;border-color:#7a8594;transition:box-shadow .35s,border-color .35s,background .35s}
.relay-route li.is-current{border-color:#c6ced8;background:#1b212a;transform:translateY(-3px)}
.relay-route li.is-current .relay-route-node{background:#fff;border-color:#fff;box-shadow:0 0 18px #fff5}
.relay-route li.is-done{border-color:#768394;background:#151b23}
.relay-route li.is-done .relay-route-node{background:#e8edf4;border-color:#e8edf4;box-shadow:inset 0 0 0 4px #151b23}
.relay-route li.is-current .relay-route-state,.relay-route li.is-done .relay-route-state{color:#d5dde7}
.relay-system-notes{border-color:#ffffff2b}
.relay-system-notes p{color:#9ba3ad}
.relay-approach-list{gap:28px}
.relay-approach-list li{border-color:#ffffff40}
.relay-approach-list h3{font-size:22px;line-height:1.4}
.relay-approach-list p{color:#afb2b6;font-size:15px}
.relay-contact{background:#090b0edb;border-color:#ffffff25}
.relay-contact h2{letter-spacing:-.045em}
.relay-contact-note{color:#9299a2}
#relay-brief input,#relay-brief textarea,#relay-brief select{background:#11151ae6;border-color:#4b515a;transition:border-color .2s}
#relay-brief input:hover,#relay-brief textarea:hover,#relay-brief select:hover{border-color:#8993a0}
#relay-brief input:focus,#relay-brief textarea:focus,#relay-brief select:focus{border-color:#cbd2dc}
.relay-footer{background:linear-gradient(90deg,#08090a8c,#08090a00)}
.relay-reveal{opacity:1}
.relay-motion-ready .relay-reveal{opacity:0;transform:translateY(24px);transition:opacity .85s,transform .85s;transition-delay:var(--reveal-delay,0ms)}
.relay-motion-ready .relay-reveal.is-visible{opacity:1;transform:none}
@media(max-width:1100px){
 .relay-solution-list article,.relay-solution-list article+article{grid-template-columns:.15fr .7fr 1.1fr;gap:24px}
 .relay-solution-list ul{grid-column:3}
 .relay-scenario{gap:45px}
 .relay-route li{padding:22px 18px}
}
@media(max-width:760px){
 .relay-demo{align-items:center;font-size:12px;padding-block:10px}
 .relay-demo span{max-width:none;text-align:right;flex:1}
 .relay-header{height:82px}
 .relay-hero{min-height:calc(100svh - 122px)}
 .relay-hero-copy{padding-top:72px;padding-bottom:155px}
 .relay-hero h1{font-size:clamp(34px,8.4vw,60px);line-height:1.12}
 .relay-hero h1 span{color:#bfc1c4}
 .relay-hero-description{font-size:16px;line-height:1.8}
 .relay-hero-shade{background:linear-gradient(180deg,#08090a35,#08090a90 35%,#08090a50)}
 .relay-hero-bottom p{font-size:12px;max-width:180px}
 .relay-motion{font-size:12px;max-width:175px}
 .relay-film{height:205svh}
 .relay-film-stage{height:100svh}
 .relay-film-heading{padding-top:5svh}
 .relay-film-heading h2{font-size:clamp(29px,7.7vw,49px);margin-top:16px;max-width:500px}
 .relay-film-heading h2 span{display:block;max-width:330px}
 .relay-laptop-view{inset:26% 0 19%}
 .relay-film-foot{bottom:4svh;grid-template-columns:1fr auto;gap:16px}
 .relay-film-caption>p:last-child{font-size:14px;max-width:235px}
 .relay-film-meter{grid-column:1/-1;grid-row:2;gap:15px}
 .relay-film-foot>a{font-size:13px}
 .relay-film-word{bottom:21%;font-size:30vw}
 .relay-film-fallback{padding:20px;top:32%}
 .relay-film-fallback pre{font-size:13px}
 .relay-section{padding-block:82px}
 .relay-solution-list article,.relay-solution-list article+article{grid-template-columns:38px 1fr;gap:18px 12px;padding-block:30px}
 .relay-solution-list article>p,.relay-solution-list ul{grid-column:2}
 .relay-solution-list h3{font-size:28px}
 .relay-solution-list li{font-size:14px}
 .relay-scenario-tabs{gap:5px}
 .relay-scenario-tabs button{padding-inline:17px}
 .relay-scenario{grid-template-columns:1fr;gap:28px}
 .relay-route{gap:12px}
 .relay-route li{padding:19px 16px;min-height:192px}
 .relay-route h4{font-size:16px}
 .relay-route-state{grid-column:1/-1}
 .relay-approach-list{gap:32px}
 .relay-approach-list p{font-size:16px}
 .relay-contact-grid{gap:38px}
}
@media(max-width:360px){
 .relay-demo{gap:10px}.relay-demo a{max-width:125px}.relay-demo span{max-width:130px}
 .relay-hero-copy{padding-top:45px}
 .relay-film-heading h2{font-size:27px}
 .relay-film-caption>p:last-child{font-size:13px;max-width:175px}
 .relay-route li{padding:17px 12px;gap:10px;min-height:207px}
 .relay-route h4{font-size:15px}
 .relay-route p{font-size:13px}
 .relay-route-state{font-size:12px}
 .relay-scenario-tabs{gap:3px}
 .relay-scenario-tabs button{flex:1;min-width:0;padding-inline:8px;font-size:13px}
}
@media(max-height:650px) and (min-width:761px){
 .relay-film-heading{padding-top:25px}.relay-film-heading h2{font-size:35px;margin-top:12px}
 .relay-laptop-view{inset:22% 0 17%}.relay-film-foot{bottom:22px}
}
@media(max-height:500px) and (min-width:761px){
 .relay-film-heading{padding-top:30px}
 .relay-film-heading h2{font-size:28px;max-width:280px;margin-top:12px}
 .relay-film-heading>.relay-kicker{font-size:11px;max-width:270px}
 .relay-laptop-view{inset:6% 0 26% 37%}
 .relay-film-foot{gap:18px;bottom:20px}
 .relay-film-caption>p:last-child{font-size:14px;max-width:280px}
}
@media(prefers-reduced-motion:reduce){
 .relay-film{height:auto}.relay-film-stage{position:relative;height:800px;min-height:0}
 .relay-motion-ready .relay-reveal{opacity:1;transform:none}
 .relay-film-meter{display:none}
}
.relay-paused .relay-film{height:auto}
.relay-paused .relay-film-stage{position:relative;height:800px}
.relay-paused .relay-reveal{opacity:1;transform:none;transition:none}
