/* DPF MACHINE by NS-STEEL 1989 — mobile first
   Tokens come from the logo: #0081C3 / #0274AA, white on black. */
@font-face{font-family:Saira;src:url(../assets/fonts/saira-latin.woff2) format("woff2");font-weight:100 900;font-stretch:50% 125%;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Saira;src:url(../assets/fonts/saira-latin-ext.woff2) format("woff2");font-weight:100 900;font-stretch:50% 125%;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Plex Sans";src:url(../assets/fonts/plex-sans-300.woff2) format("woff2");font-weight:300;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:"Plex Sans";src:url(../assets/fonts/plex-sans-ext-300.woff2) format("woff2");font-weight:300;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF}
@font-face{font-family:"Plex Sans";src:url(../assets/fonts/plex-sans-400.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:"Plex Sans";src:url(../assets/fonts/plex-sans-ext-400.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF}
@font-face{font-family:"Plex Sans";src:url(../assets/fonts/plex-sans-500.woff2) format("woff2");font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:"Plex Sans";src:url(../assets/fonts/plex-sans-ext-500.woff2) format("woff2");font-weight:500;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF}
@font-face{font-family:"Plex Mono";src:url(../assets/fonts/plex-mono-400.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:"Plex Mono";src:url(../assets/fonts/plex-mono-ext-400.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF}

/* theme tokens: dark is the default; the dark set is re-declared on blocks that stay dark in both themes */
:root,.force-dark,:root[data-theme=light] :is(.hero,.flow,.cta,.pre,.sim,.band,.ai__p,.tc,.lb,.vid,body:has(.hero) .hdr:not(.is-s):not(.is-m)){
  --ink:#04070a; --ink2:#080d13; --ink3:#0d141c;
  --ice:#7cd0f6; --glow:rgba(0,129,195,.55);
  --w:#f3f7fa; --steel:#a9b6c1; --steel2:#74838f; --tx:#c7d2db;
  --ln:rgba(190,218,238,.15); --ln2:rgba(190,218,238,.3);
  --glass:rgba(11,18,26,.52); --fld:rgba(190,218,238,.05); --pop:rgba(7,12,18,.92); --zb:#0b121a;
  --hdrbg:rgba(5,9,13,.72); --mnbg:rgba(4,7,10,.97);
  --mark:url(../assets/img/mark.svg); --lgw:block; --lgd:none;
  color-scheme:dark;
}
:root[data-theme=light] :is(.hero,.flow,.cta,.pre,.sim,.band,.ai__p,.tc,.lb,.vid){color:var(--steel)}
:root[data-theme=light]{
  --ink:#f4f7f9; --ink2:#eaeff3; --ink3:#dfe6ec;
  --w:#0a1118; --steel:#45535f; --steel2:#6b7a87; --tx:#26333e;
  --ln:rgba(10,25,40,.12); --ln2:rgba(10,25,40,.28);
  --glass:rgba(255,255,255,.62); --ice:#0274aa; --glow:rgba(0,129,195,.35);
  --fld:rgba(10,25,40,.04); --pop:rgba(255,255,255,.97); --zb:#e6ecf1;
  --hdrbg:rgba(244,247,249,.84); --mnbg:rgba(244,247,249,.98);
  --mark:url(../assets/img/mark-dark.svg); --lgw:none; --lgd:block;
  color-scheme:light;
}
.thm-x,.thm-x *,.thm-x *::before,.thm-x *::after{transition:background-color .35s,color .35s,border-color .35s,fill .35s,stroke .35s!important}
.logo--w{display:var(--lgw)}
.logo--d{display:var(--lgd)}
:root{
  --blue:#0081c3; --blue2:#0274aa;
  --gut:16px; --hdr:64px; --r:14px;
  --disp:Saira,"Arial Narrow",system-ui,sans-serif; --body:"Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif; --mono:"Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --e:cubic-bezier(.2,.75,.2,1);
}
@media(min-width:720px){:root{--gut:32px;--hdr:72px}}
@media(min-width:1200px){:root{--gut:56px;--hdr:78px}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--ink);scrollbar-color:var(--steel2) var(--ink2);scrollbar-width:thin}
body{margin:0;background:var(--ink);color:var(--steel);font:300 1rem/1.65 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background-color .35s,color .35s}
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:var(--ink2)}
::-webkit-scrollbar-thumb{background:var(--steel2);border-radius:8px;border:2px solid var(--ink2)}
img,svg,canvas,video{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3,h4,p,ul,ol,figure,dl,dd{margin:0;padding:0}
ul,ol{list-style:none}
strong{font-weight:500;color:var(--w)}
:focus-visible{outline:2px solid var(--ice);outline-offset:3px;border-radius:4px}
::selection{background:var(--blue);color:#fff}
.skip{position:fixed;left:12px;top:-60px;z-index:999;background:#fff;color:#000;padding:10px 14px;border-radius:8px}
.skip:focus{top:12px}
.wrap{padding-inline:var(--gut);max-width:1680px;margin-inline:auto}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* type */
.d1,.d2,.d3{font-family:var(--disp);font-weight:300;color:var(--w);text-transform:uppercase;font-stretch:104%;letter-spacing:-.005em}
.d1,.d2{overflow-wrap:anywhere}
.d1{font-size:clamp(2.1rem,1.5rem + 5.2vw,5.5rem);line-height:1.03}
.ph .d1{font-size:clamp(1.8rem,1.35rem + 4.2vw,4.6rem);line-height:1.05}
.d2{font-size:clamp(1.85rem,1.3rem + 3.2vw,4rem);line-height:1.06}
.d3{font-size:clamp(1.3rem,1.15rem + .8vw,1.9rem);line-height:1.15;font-weight:400}
.lab{font:400 .72rem/1.4 var(--mono);color:var(--steel);letter-spacing:.06em;text-transform:uppercase}
.lab b{color:var(--ice);font-weight:400}
.lead{font-size:clamp(1.02rem,.96rem + .35vw,1.25rem);line-height:1.6;max-width:62ch;color:var(--tx)}
.mut{color:var(--steel2)}
/* light theme: secondary body text keeps ≥4.5:1 */
[data-theme=light] :is(.mut,.pc__t span,.crumbs,.ftr__l,.pt small,.bc__t .lab){color:var(--steel)}

/* buttons */
.pill{--c:var(--ice);display:inline-flex;align-items:center;gap:.8em;min-height:46px;padding:.45rem .5rem .45rem 1.3rem;border:1px solid var(--c);border-radius:99px;font:500 .78rem/1 var(--disp);letter-spacing:.09em;text-transform:uppercase;color:var(--w);position:relative;overflow:hidden;isolation:isolate;transition:color .3s,border-color .3s;white-space:nowrap}
.pill::before{content:"";position:absolute;inset:0;background:var(--blue);transform:translateX(-125%) skewX(-18deg) scaleX(1.3);transition:transform .5s var(--e);z-index:-1}
.pill:hover::before{transform:none}
.pill:hover{border-color:var(--blue);color:#fff}
.pill i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--ln2);flex:none;transition:transform .35s var(--e),background .3s}
.pill:hover i{transform:translateX(2px);background:rgba(255,255,255,.14)}
.pill svg{width:13px;height:13px}
.pill--s{background:var(--blue2);border-color:var(--blue2);box-shadow:0 0 34px -6px var(--glow);color:#fff}
.pill--s::before{background:var(--blue)}
.pill--g{--c:var(--ln2);padding-left:.5rem;padding-right:1.3rem}
.pill--sm{min-height:38px;padding:.3rem .4rem .3rem 1rem;font-size:.72rem}
.pill--sm i{width:26px;height:26px}
.btns{display:flex;flex-wrap:wrap;gap:.7rem}

@media(max-width:420px){.pill{white-space:normal;line-height:1.25;text-align:left}}
.pd>*,.spl>*,.lu>*,.hd__row>*{min-width:0}

/* header */
.hdr{position:fixed;inset:0 0 auto;z-index:60;height:var(--hdr);display:flex;align-items:center;gap:1rem;padding-inline:var(--gut);border-bottom:1px solid transparent;color:var(--w);transition:background .35s,border-color .35s,transform .4s var(--e)}
.hdr.is-s{background:var(--hdrbg);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);border-color:var(--ln)}
.hdr.is-h{transform:translateY(-100%)}
.hdr::before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:var(--ice);transform:scaleX(var(--p,0));transform-origin:0 50%;pointer-events:none;z-index:2}
.hdr__brand{flex:none}
.hdr__brand img{width:150px;height:auto}
@media(min-width:1200px){.hdr__brand img{width:176px}}
.hdr__nav{display:none}
.hdr__end{margin-left:auto;display:flex;align-items:center;gap:.55rem}
/* segmented language switcher */
.lang{display:none;align-items:stretch;border:1px solid var(--ln2);border-radius:99px;padding:0;font:400 .72rem/1 var(--mono);text-transform:uppercase;letter-spacing:.04em;flex:none}
.lang a{display:grid;place-items:center;min-width:36px;min-height:34px;padding:0 .55em;color:var(--steel);border-radius:99px;transition:color .2s,background-color .2s}
.lang a:hover{color:var(--w)}
.lang a[aria-current]{background:var(--blue2);color:#fff}
.hdr__tel{display:none}
.hdr .pill{min-height:38px;padding:.3rem .4rem .3rem 1rem;font-size:.72rem}
.hdr .pill i{width:26px;height:26px}
.hdr .hdr__tel{padding:.3rem 1rem .3rem .35rem;color:var(--w);letter-spacing:.04em}
.hdr .hdr__tel:hover{color:#fff}
.hdr__tel svg{width:13px;height:13px}
/* theme toggle */
.thm{position:relative;width:44px;height:44px;flex:none;display:none;place-items:center;border:1px solid var(--ln2);border-radius:50%;color:var(--w);transition:border-color .25s,background-color .25s}
.thm:hover{border-color:var(--ice);background:rgba(0,129,195,.12)}
.thm svg{grid-area:1/1;width:18px;height:18px;transition:opacity .35s,transform .55s var(--e)}
.thm__m{opacity:0;transform:rotate(-90deg) scale(.5)}
[data-theme=light] .thm__s{opacity:0;transform:rotate(90deg) scale(.5)}
[data-theme=light] .thm__m{opacity:1;transform:none}
@media(min-width:560px){.hdr .thm{display:grid}}
@media(max-width:389px){.hdr{gap:.6rem}.hdr__brand img{width:118px}.hdr .hdr__c{padding:.3rem .85rem}.hdr .hdr__c i{display:none}}
.burger{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--ln2);border-radius:50%;flex:none}
.burger{position:relative}
.burger span{position:absolute;left:12px;top:21px;width:18px;height:1px;background:var(--w);transition:transform .3s var(--e)}
.burger span:first-child{transform:translateY(-3px)}
.burger span:last-child{transform:translateY(3px)}
.burger[aria-expanded=true] span:first-child{transform:rotate(45deg)}
.burger[aria-expanded=true] span:last-child{transform:rotate(-45deg)}
@media(min-width:560px){.lang{display:flex}}
@media(min-width:1180px){
  .burger{display:none}
  .hdr{display:grid;grid-template-columns:1fr auto 1fr;column-gap:1.1rem}
  .hdr__brand{justify-self:start}
  .hdr__nav{display:flex;justify-self:center;height:28px;align-items:center}
  .hdr__end{justify-self:end;margin-left:0;gap:.75rem}
  .hdr__nav>ul{display:flex;gap:clamp(.8rem,.95vw,1.3rem)}
  .hdr__nav>ul>li{position:relative}
  .hdr__nav>ul>li>a{display:block;padding:.9rem 0;font:400 .72rem/1 var(--disp);letter-spacing:.03em;text-transform:uppercase;color:var(--tx);transition:color .2s;position:relative}
  .hdr .hdr__c{letter-spacing:.06em;padding-left:.9rem}
  .lang a{min-width:34px}
  .hdr .hdr__tel{gap:.5em;padding:.3rem .8rem .3rem .3rem;font-size:.7rem;letter-spacing:.02em}
  .hdr .hdr__tel i{width:24px;height:24px}
  .hdr__nav>ul>li>a:hover,.hdr__nav>ul>li>a[aria-current]{color:var(--w)}
  .hdr__nav>ul>li>a::after{content:"";position:absolute;left:0;right:0;bottom:.35rem;height:1px;background:var(--ice);transform:scaleX(0);transform-origin:0 50%;transition:transform .4s var(--e)}
  .hdr__nav>ul>li>a:hover::after,.hdr__nav>ul>li:focus-within>a::after,.hdr__nav>ul>li>a[aria-current]::after{transform:scaleX(1)}
  .hdr__nav>ul>li>a[aria-current]::after{animation:ulIn .8s .3s var(--e) both}
  .sub{position:absolute;left:-1.2rem;top:100%;min-width:290px;padding:.6rem;background:var(--pop);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--ln);border-radius:12px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .22s,transform .3s var(--e),visibility .22s}
  li:hover>.sub,li:focus-within>.sub{opacity:1;visibility:visible;transform:none}
  .sub a{display:block;padding:.55rem .7rem;border-radius:8px;font-size:.86rem;color:var(--steel);line-height:1.3;transition:background .2s,color .2s}
  .sub a:hover{background:rgba(0,129,195,.16);color:var(--w)}
  .sub--mega{display:grid;grid-template-columns:repeat(4,150px) 240px;gap:.3rem;left:-14rem;padding:.8rem}
  .sub--mega .mm{padding:.5rem;text-align:left;font-size:.76rem;display:block}
  .sub--mega .mm img{height:128px;width:100%;object-fit:contain;margin-bottom:.45rem;transition:transform .4s var(--e)}
  .sub--mega .mm:hover img{transform:translateY(-4px) scale(1.03)}
  .sub--mega .mlist{border-left:1px solid var(--ln);padding-left:.5rem}
}
@media(min-width:1280px){.hdr .hdr__tel{display:inline-flex}}
@keyframes ulIn{from{transform:scaleX(0)}}

/* mobile nav */
.mnav{position:fixed;inset:0;z-index:55;background:var(--mnbg);padding:calc(var(--hdr) + 1rem) var(--gut) 6.5rem;overflow-y:auto;visibility:hidden;opacity:0;transition:opacity .3s,visibility .3s}
.mnav.is-on{visibility:visible;opacity:1}
.mnav>ul>li,.mnav__ft{opacity:0;transform:translateY(16px);transition:opacity .35s,transform .5s var(--e)}
.mnav.is-on>ul>li,.mnav.is-on .mnav__ft{opacity:1;transform:none}
.mnav.is-on>ul>li:nth-child(2){transition-delay:.04s}.mnav.is-on>ul>li:nth-child(3){transition-delay:.08s}.mnav.is-on>ul>li:nth-child(4){transition-delay:.12s}.mnav.is-on>ul>li:nth-child(5){transition-delay:.16s}.mnav.is-on>ul>li:nth-child(6){transition-delay:.2s}.mnav.is-on>ul>li:nth-child(7){transition-delay:.24s}.mnav.is-on>ul>li:nth-child(8){transition-delay:.28s}.mnav.is-on>ul>li:nth-child(9){transition-delay:.32s}.mnav.is-on .mnav__ft{transition-delay:.36s}
.mnav__row{display:flex;align-items:center;gap:.6rem;margin-top:.7rem}
.mnav .thm{display:grid}
.mnav>ul>li{border-bottom:1px solid var(--ln)}
.mnav>ul>li>a,.mnav summary{display:flex;justify-content:space-between;align-items:center;min-height:54px;font:300 1.45rem/1.2 var(--disp);color:var(--w);text-transform:uppercase;list-style:none;cursor:pointer}
.mnav summary::-webkit-details-marker{display:none}
.mnav summary::after{content:"+";font:300 1.3rem var(--mono);color:var(--ice);transition:transform .3s}
.mnav details[open] summary::after{transform:rotate(45deg)}
.mnav details ul{padding:0 0 .8rem}
.mnav details a{display:flex;align-items:center;min-height:42px;color:var(--steel)}
.mnav__ft{margin-top:1.4rem;display:grid;gap:.5rem;font:400 .82rem/1.5 var(--mono)}
.mnav .lang{display:flex}
@media(min-width:1180px){.mnav{display:none}}

/* preloader + page wipe */
.pre{position:fixed;inset:0;z-index:200;background:var(--ink);display:grid;place-items:center;transition:opacity .6s .1s,visibility .7s .1s}
.pre.is-off{opacity:0;visibility:hidden}
.pre__in{width:min(78vw,380px)}
.pre__logo{width:100%;height:auto;opacity:0;transform:translateY(10px);animation:preIn .9s .1s var(--e) forwards}
.pre__bar{display:grid;grid-template-columns:repeat(32,1fr);gap:3px;margin-top:1.5rem}
.pre__bar i{aspect-ratio:1;border-radius:50%;background:rgba(190,218,238,.14);transition:background .2s,box-shadow .2s}
.pre__bar i.on{background:var(--ice);box-shadow:0 0 8px var(--glow)}
.pre__row{display:flex;justify-content:space-between;margin-top:.8rem;font:400 .7rem/1 var(--mono);color:var(--steel2);letter-spacing:.06em}
.pre__row b{color:var(--ice);font-weight:400}
@keyframes preIn{to{opacity:1;transform:none}}
.no-pre .pre{display:none}
.wipe{position:fixed;inset:0;z-index:190;background:var(--blue2);pointer-events:none;clip-path:polygon(0 0,0 0,0 100%,0 100%);}
.wipe.is-in{transition:clip-path .42s var(--e);clip-path:polygon(0 0,120% 0,100% 100%,0 100%)}

/* hero */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;overflow:hidden;background:#000;isolation:isolate}
/* slides get their own stacking context so a slide's z-index never rises above the overlays */
.hero__slides{position:absolute;inset:0;z-index:0;isolation:isolate}
.hs{position:absolute;inset:0}
.hs{overflow:hidden;visibility:hidden;will-change:clip-path}
.hs.is-on{visibility:visible}
.hs img{width:100%;height:100%;object-fit:cover;object-position:62% 50%;filter:saturate(.95) contrast(1.1) brightness(.98);transform:scale(1.04);will-change:transform}
.hs:nth-child(2) img{object-position:60% 50%}
.hs:nth-child(3) img{object-position:72% 50%}
.hero__shade{position:absolute;inset:0;z-index:2;pointer-events:none;background:
 linear-gradient(180deg,rgba(4,7,10,.62) 0,rgba(4,7,10,.12) 22%,rgba(4,7,10,.22) 60%,rgba(4,7,10,.96) 100%),
 linear-gradient(90deg,rgba(4,7,10,.82),rgba(4,7,10,.4) 42%,rgba(4,7,10,0) 72%)}
.hero__tint{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(115deg,#013a59 10%,#0081c3 60%,#012334);mix-blend-mode:color;opacity:.2}
.hero__glow{position:absolute;z-index:2;right:-18%;top:18%;width:70vw;height:70vw;max-width:900px;max-height:900px;border-radius:50%;background:radial-gradient(closest-side,rgba(0,129,195,.42),transparent);mix-blend-mode:screen;pointer-events:none}
.hero__in{position:relative;z-index:3;flex:1;width:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:1.3rem;padding-top:calc(var(--hdr) + 1rem);padding-bottom:1rem}
.hero__copy{display:flex;flex-direction:column;gap:.9rem;max-width:880px}
.matrix{width:clamp(96px,27vw,212px);aspect-ratio:1;margin-left:-3px}
.hero__txt{display:grid}
.ht{grid-area:1/1;visibility:hidden}
.ht.is-on{visibility:visible}
.ht__s{max-width:46ch;margin-top:.8rem;color:#d3dde4;font-size:clamp(.96rem,.9rem + .3vw,1.12rem);line-height:1.55}
.ln{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
.ln>span{display:block}
.hud-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;width:100%}
.hud{position:relative;background:var(--glass);border:1px solid var(--ln);border-radius:var(--r);padding:.75rem .85rem .7rem;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:hidden}
.hud::before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(140deg,rgba(124,208,246,.32),transparent 40%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px;pointer-events:none}
.hud__t{display:flex;justify-content:space-between;align-items:center;font:400 .64rem/1.2 var(--mono);color:var(--steel);letter-spacing:.05em;text-transform:uppercase;gap:.4rem}
.hud__t i{width:6px;height:6px;border-radius:50%;background:var(--ice);box-shadow:0 0 10px var(--ice);flex:none;animation:blink 2.4s infinite}
@keyframes blink{50%{opacity:.25}}
.hud__v{display:flex;align-items:flex-end;gap:.4rem;margin:.55rem 0 .45rem;min-height:38px;color:var(--w)}
.hud__v svg{height:38px;width:auto;overflow:visible}
.hud__u{font:400 .8rem/1 var(--mono);color:var(--ice);padding-bottom:1px}
.hud__g{height:24px;width:100%;display:block}
.hero__bar{position:relative;z-index:3;width:100%;display:flex;align-items:center;gap:.9rem;padding-block:.95rem 1.15rem;padding-left:calc(var(--gut) + 64px);border-top:1px solid var(--ln)}
.hero__idx{display:none;font:400 .72rem/1 var(--mono);color:var(--steel);white-space:nowrap}
@media(min-width:900px){.hero__idx{display:block}}
.hero__idx b{color:var(--w);font-weight:400}
.hero__prog{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.hero__prog button{height:36px;position:relative}
.hero__prog button::before,.hero__prog button i{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--ln2)}
.hero__prog button i{background:var(--ice);right:auto;width:100%;transform:scaleX(0);transform-origin:0 50%;height:2px;margin-top:-.5px}
.hero__prog button span{display:none}
@media(min-width:900px){
  .hero__prog button{height:44px}
  .hero__prog button::before,.hero__prog button i{top:13px}
  .hero__prog button span{display:block;position:absolute;left:0;top:23px;font:400 .64rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--steel2);white-space:nowrap;transition:color .3s}
  .hero__prog button.is-on span{color:#fff}
}
.hero__nav{display:flex;gap:.4rem}
.hero__nav button{width:38px;height:38px;border:1px solid var(--ln2);border-radius:50%;display:grid;place-items:center;transition:background .25s,border-color .25s}
.hero__nav button:hover{background:var(--blue);border-color:var(--blue)}
.hero__nav svg{width:13px;height:13px}
@media(min-width:900px){
  .hero__in{flex-direction:row;align-items:flex-end;justify-content:space-between;padding-bottom:1.6rem}
  .hud-row{grid-template-columns:1fr;width:220px;flex:none;align-self:center;margin-top:5rem}
  .hud{padding:.9rem 1rem .85rem}
  .hud__v{min-height:58px;margin:.8rem 0 .6rem}.hud__v svg{height:58px}.hud__u{font-size:1rem}
  .hud__g{height:30px}
  .hero__bar{padding-block:.8rem 1rem;padding-right:calc(var(--gut) + 64px);padding-left:calc(var(--gut) + 176px)}
  .hero__glow{right:-6%;top:6%;width:52vw;height:52vw}
}
@media(max-height:760px) and (min-width:900px){.matrix{width:130px}.d1{font-size:clamp(2.3rem,1.2rem + 4vw,4.2rem)}}
@media(max-height:680px){.matrix{width:84px}}

/* ticker */
.tick{border-block:1px solid var(--ln);overflow:hidden;background:var(--ink2);position:relative;z-index:2}
.tick__tr{display:flex;width:max-content;animation:tk 60s linear infinite}
.tick{-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.tick:hover .tick__tr{animation-play-state:paused}
.tick ul{display:flex;align-items:center}
.tick li{display:flex;align-items:center;gap:1.4rem;padding:.8rem 0 .8rem 1.4rem;font:400 .72rem/1 var(--mono);letter-spacing:.05em;color:var(--steel);white-space:nowrap;text-transform:uppercase}
.tick li::after{content:"";width:14px;height:14px;flex:none;background:var(--mark) center/contain no-repeat;opacity:.5}
.tick b{color:var(--w);font-weight:400}
@keyframes tk{to{transform:translateX(-50%)}}

/* sections */
.sec{padding-block:clamp(4rem,3rem + 6vw,8.5rem);position:relative}
.sec--t0{padding-top:0}.sec--b0{padding-bottom:0}
.sec--alt{background:var(--ink2)}
.hd{display:grid;gap:.9rem;margin-bottom:clamp(1.8rem,1.4rem + 2vw,3.4rem)}
.hd__row{display:grid;gap:1rem}
.hd__note{max-width:42ch;color:var(--steel)}
@media(min-width:900px){.hd__row{grid-template-columns:1fr auto;align-items:end;gap:3rem}.hd__note{border-left:1px solid var(--ln);padding-left:1.6rem;width:clamp(240px,28vw,400px)}}

/* process: four feature tiles on a signal line + three photos */
.proc__row{position:relative;display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}
.proc__ln{display:none}
.pt{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.7rem;padding:1.2rem .8rem 1.1rem;border:1px solid var(--ln);border-radius:14px;background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);text-align:center;transition:transform .45s var(--e),border-color .3s,background-color .3s}
.pt:hover{transform:translateY(-4px);border-color:var(--ln2)}
.pt svg{width:56px;height:56px;stroke:var(--w);fill:none;stroke-width:1;transition:stroke .3s}
.pt:hover svg{stroke:var(--ice)}
.pt .pt__c{fill:var(--ink2)}
.pt b{font:400 .72rem/1.3 var(--mono);letter-spacing:.06em;color:var(--w);text-transform:uppercase}
.pt small{font-size:.76rem;line-height:1.4;color:var(--steel2);max-width:24ch}
.proc__ph{display:flex;gap:.6rem;margin-top:.6rem;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:.4rem}
.proc__f{flex:0 0 82%;scroll-snap-align:start;aspect-ratio:16/10;border-radius:14px;overflow:hidden;border:1px solid var(--ln);background:var(--ink3)}
.proc__f img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) contrast(1.05) brightness(.82);transition:transform .9s var(--e),filter .5s,opacity .4s}
.proc__f:hover img{transform:scale(1.06);filter:saturate(1) brightness(1)}
@media(min-width:720px){
  .proc__row{gap:1rem}
  .pt{padding:1.6rem 1.2rem 1.4rem}
  .pt svg{width:68px;height:68px}
  .proc__ph{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem;overflow:visible;padding-bottom:0}
}
@media(min-width:1100px){
  .proc__row{grid-template-columns:repeat(4,1fr);gap:2.2rem}
  .proc__ln{display:block;position:absolute;left:12.5%;right:12.5%;top:calc(1.6rem + 34px);height:12px;margin-top:-6px;z-index:0;pointer-events:none}
  .proc__ln svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
  .proc__ln line{stroke:var(--ice);stroke-width:1;stroke-dasharray:4 6;opacity:.7}
  .proc__run{position:absolute;inset:0;animation:procRun 5.5s linear infinite;animation-play-state:paused}
  .proc__ln.is-v .proc__run{animation-play-state:running}
  .proc__run i{position:absolute;left:-4px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--ice);box-shadow:0 0 10px 2px var(--ice),0 0 22px 6px var(--glow)}
}
@keyframes procRun{to{transform:translateX(100%)}}

/* flow */
.flow{position:relative;overflow:hidden;background:#02050a;isolation:isolate}
.flow canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2}
.flow::before{content:"";position:absolute;inset:0;z-index:-3;background:radial-gradient(80% 90% at 80% 20%,#063a5c,transparent 60%),radial-gradient(60% 70% at 15% 90%,#04283f,transparent 60%),#02050a}
.flow::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--ink) 0,rgba(4,7,10,.62) 26%,transparent 46%,transparent 82%,var(--ink) 100%)}
.gcs{display:grid;gap:.8rem}
.gc{position:relative;padding:1.2rem 1.2rem 1.1rem;border-radius:18px;background:rgba(10,18,27,.42);border:1px solid rgba(190,218,238,.2);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);display:grid;gap:.75rem;min-height:290px;grid-template-rows:auto auto auto 1fr;overflow:hidden;transition:transform .5s var(--e),border-color .3s}
.gc:hover{transform:translateY(-6px);border-color:rgba(124,208,246,.55)}
.gc__n{font:400 .7rem/1 var(--mono);color:var(--steel)}
.gc__i{height:74px;width:74px}
.gc__i circle{fill:var(--w)}
.gc h3{font:400 clamp(1.4rem,1.2rem + .8vw,1.9rem)/1.1 var(--disp);color:var(--w);text-transform:uppercase;font-stretch:104%}
.gc p{font-size:.92rem;line-height:1.55;color:#c2ced7;max-width:34ch}
.gc__a{align-self:end;width:42px;height:42px;border:1px solid var(--ln2);border-radius:50%;display:grid;place-items:center;transition:background .3s,transform .3s var(--e)}
.gc__a svg{width:13px;height:13px}
.gc:hover .gc__a{background:var(--blue);transform:rotate(-45deg)}
@media(min-width:760px){.gcs{grid-template-columns:repeat(3,1fr);gap:1.1rem}.gc{padding:1.5rem;min-height:370px}}

/* simulation */
.sim{height:560vh;position:relative;background:var(--ink)}
.sim__st{position:sticky;top:0;height:100svh;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto;gap:.6rem;padding:calc(var(--hdr) + .5rem) var(--gut) 5.2rem;max-width:1680px;margin:0 auto}
.sim__hd .d2{font-size:clamp(1.5rem,1.2rem + 2.2vw,3.2rem)}
.sim__c{position:relative;min-height:0;display:grid;place-items:center}
.sim__c canvas{width:min(100%,62svh);aspect-ratio:1;max-height:100%}
.sim__read{position:absolute;right:0;top:0;width:128px;display:grid;gap:.45rem}
.sim__read .hud{padding:.55rem .65rem}
.sim__read .hud__v{min-height:30px;margin:.35rem 0 0}
.sim__read .hud__v svg{height:30px}
.sim__steps{display:grid;gap:.45rem}
.sim__tk{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}
.sim__tk i{height:2px;background:var(--ln2);transition:background .3s}
.sim__tk i.on{background:var(--ice)}
.sim__now{min-height:5.6em}
.sim__now>b{display:block;font:300 1.2rem/1.2 var(--disp);color:var(--w);text-transform:uppercase;margin:.25rem 0 .2rem}
.sim__now p{font-size:.88rem;line-height:1.45;color:var(--steel)}
.sim__list{display:none}
@media(min-width:980px){
  .sim__st{grid-template-columns:minmax(300px,1fr) minmax(0,1.15fr);grid-template-rows:auto 1fr;column-gap:4vw;padding-bottom:2.5rem}
  .sim__hd{grid-column:1}
  .sim__steps{grid-column:1;grid-row:2;align-self:start;margin-top:1rem}
  .sim__c{grid-column:2;grid-row:1/3}
  .sim__c canvas{width:min(100%,80svh)}
  .sim__read{width:190px}.sim__read .hud{padding:.75rem .9rem}.sim__read .hud__v{min-height:44px}.sim__read .hud__v svg{height:44px}
  .sim__tk,.sim__now{display:none}
  .sim__list{display:block;border-top:1px solid var(--ln)}
  .sim__list li{display:grid;grid-template-columns:2.2rem 1fr;align-items:baseline;padding:.55rem 0;border-bottom:1px solid var(--ln);color:var(--steel2);transition:color .3s,padding .35s var(--e);font-size:.95rem;line-height:1.3}
  .sim__list li>span{font:400 .7rem/1 var(--mono)}
  .sim__list li.on{color:var(--w);padding-left:.5rem}
  .sim__list li.on>span{color:var(--ice)}
  .sim__list li.done{color:var(--steel)}
  .sim__list small{display:none;grid-column:2;color:var(--steel);font-size:.85rem;margin-top:.25rem;line-height:1.45}
  .sim__list li.on small{display:block}
}
@media(max-height:760px) and (min-width:980px){.sim__list li{padding:.34rem 0;font-size:.86rem}}

/* lineup */
.tabs{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--ln);border-radius:12px;overflow:hidden;margin-bottom:1rem}
.tabs button{padding:.8rem .7rem;font:400 .74rem/1.2 var(--disp);letter-spacing:.06em;text-transform:uppercase;color:var(--steel);border-right:1px solid var(--ln);border-bottom:1px solid var(--ln);transition:background .3s,color .3s;text-align:left;min-height:48px}
.tabs button[aria-selected=true]{background:var(--blue2);color:#fff}
@media(min-width:720px){.tabs{grid-template-columns:repeat(4,1fr)}.tabs button{border-bottom:0}}
.lu{display:grid;gap:1rem}
.stage{position:relative;aspect-ratio:1/1;border:1px solid var(--ln);border-radius:var(--r);overflow:hidden;background:radial-gradient(70% 60% at 50% 55%,rgba(0,129,195,.26),transparent 70%),var(--ink2)}
.stage::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--ln) 1px,transparent 1px),linear-gradient(90deg,var(--ln) 1px,transparent 1px);background-size:calc(100%/8) calc(100%/8);opacity:.5}
.stage img{position:absolute;left:50%;bottom:11%;transform:translate(-50%,12px);max-width:74%;width:auto;object-fit:contain;filter:drop-shadow(0 24px 30px rgba(0,0,0,.65));opacity:0;transition:opacity .45s,transform .7s var(--e)}
[data-theme=light] .stage img{filter:drop-shadow(0 22px 26px rgba(10,25,40,.28))}
.stage img.is-on{opacity:1;transform:translate(-50%,0)}
.stage::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent calc(100% - 1px),var(--ice) calc(100% - 1px));opacity:.45;transform:translateY(-100%);animation:scan 8s linear infinite}
@keyframes scan{to{transform:translateY(0)}}
.dim{position:absolute;font:400 .66rem/1 var(--mono);color:var(--ice);display:flex;align-items:center;justify-content:center;z-index:2}
.dim--w{clip-path:inset(0 100% 0 0)}
.dim--h{clip-path:inset(100% 0 0 0)}
.dim.is-d{clip-path:inset(0 0 0 0);transition:clip-path .6s var(--e)}
.dim--w{left:13%;right:13%;bottom:4.5%;height:16px;border-inline:1px solid var(--ice)}
.dim--w::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--ice);opacity:.6}
.dim--w span{position:relative;background:var(--ink2);padding:0 .5em}
.dim--h{left:4.5%;top:11%;bottom:11%;width:16px;border-block:1px solid var(--ice)}
.dim--h::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--ice);opacity:.6}
.dim--h span{position:relative;background:var(--ink2);padding:.5em 0;writing-mode:vertical-rl;transform:rotate(180deg)}
.stage__tag{position:absolute;right:.8rem;top:.8rem;font:400 .66rem/1 var(--mono);color:var(--steel);z-index:2}
.lu__in h3{font:300 clamp(1.6rem,1.3rem + 1.6vw,2.7rem)/1.06 var(--disp);color:var(--w);text-transform:uppercase;font-stretch:104%}
.lu__in>p{margin:.7rem 0 1rem;max-width:52ch}
.sp{border-top:1px solid var(--ln)}
.sp>div{display:grid;grid-template-columns:1fr auto;gap:.2rem 1rem;padding:.62rem 0;border-bottom:1px solid var(--ln);align-items:baseline}
.sp dt{font-size:.88rem;color:var(--steel)}
.sp dd{font:400 .84rem/1.3 var(--mono);color:var(--w);text-align:right}
.sp .bar{grid-column:1/-1;height:2px;background:var(--ln);position:relative;overflow:hidden}
.sp .bar i{position:absolute;inset:0;background:linear-gradient(90deg,var(--blue),var(--ice));transform-origin:0 50%;transform:scaleX(0);transition:transform .8s var(--e)}
.lu__in .btns{margin-top:1.2rem}
@media(min-width:980px){.lu{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(2rem,4vw,5rem);align-items:center}.stage{aspect-ratio:1.14/1}}

/* product cards */
.pcs{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}
.pc{position:relative;display:flex;flex-direction:column;border:1px solid var(--ln);border-radius:var(--r);overflow:hidden;background:var(--ink2);transition:border-color .3s,transform .5s var(--e)}
.pc:hover{border-color:var(--ice);transform:translateY(-4px)}
.pc::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(124,208,246,.35),inset 0 0 26px rgba(0,129,195,.2);opacity:0;transition:opacity .35s;z-index:3}
.pc:hover::after{opacity:1}
.pc__i{position:relative;aspect-ratio:1/1;overflow:hidden;background:radial-gradient(60% 55% at 50% 60%,rgba(0,129,195,.24),transparent 72%),var(--ink3)}
.pc__i img{position:absolute;left:9%;top:9%;width:82%;height:82%;object-fit:contain;transition:transform .7s var(--e),filter .5s,opacity .4s;filter:drop-shadow(0 14px 16px rgba(0,0,0,.6))}
[data-theme=light] .pc__i img{filter:drop-shadow(0 14px 16px rgba(10,25,40,.22))}
.pc:hover .pc__i img{transform:scale(1.05);filter:drop-shadow(0 14px 22px rgba(0,129,195,.6))}
.pc__go{position:absolute;left:50%;bottom:.7rem;z-index:2;transform:translate(-50%,calc(100% + 1rem));opacity:0;transition:transform .5s var(--e),opacity .3s;background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}
.pc:hover .pc__go,.pc:focus-visible .pc__go{transform:translate(-50%,0);opacity:1}
@media(hover:none){.pc__go{display:none}}
.pc__t{padding:.8rem .9rem 1rem;border-top:1px solid var(--ln)}
.pc__t b{display:block;font:400 .92rem/1.2 var(--disp);color:var(--w);text-transform:uppercase;letter-spacing:.02em}
.pc__t span{display:block;font-size:.8rem;line-height:1.35;color:var(--steel2);margin-top:.25rem}
@media(min-width:760px){.pcs{grid-template-columns:repeat(4,1fr);gap:1rem}.pc__t{padding:1rem 1.1rem 1.2rem}.pc__t b{font-size:1.02rem}}

/* split */
.spl{display:grid;gap:1.6rem}
@media(min-width:900px){.spl{grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:start}.spl--c{align-items:center}}
.ul{border-top:1px solid var(--ln)}
.ul li{position:relative;padding:.72rem 0 .72rem 1.5rem;border-bottom:1px solid var(--ln);line-height:1.45;color:var(--tx)}
.ul li::before{content:"";position:absolute;left:0;top:1.12em;width:9px;height:9px;background:linear-gradient(var(--ice),var(--ice)) center/1px 100% no-repeat,linear-gradient(var(--ice),var(--ice)) center/100% 1px no-repeat}
.ul--2{display:grid;gap:0 2rem}
@media(min-width:760px){.ul--2{grid-template-columns:1fr 1fr}}
.ol{counter-reset:o;border-top:1px solid var(--ln)}
.ol li{counter-increment:o;display:grid;grid-template-columns:2.4rem 1fr;gap:.4rem;padding:.75rem 0;border-bottom:1px solid var(--ln);color:var(--tx);line-height:1.45}
.ol li::before{content:counter(o,decimal-leading-zero);font:400 .72rem/1.9 var(--mono);color:var(--ice)}
.pic{position:relative;overflow:hidden;border-radius:var(--r);border:1px solid var(--ln);background:var(--ink3)}
.pic img{width:100%;height:100%;object-fit:cover;transition:opacity .4s}
/* lazy images fade in instead of flashing */
.js :is(.pic,.gal a,.bc__i,.pc__i,.tc,.proc__f) img:not(.loaded){opacity:0}
.pic--w{aspect-ratio:16/9}.pic--t{aspect-ratio:4/5}.pic--s{aspect-ratio:1/1}
.prose p+p{margin-top:.9rem}
.prose{max-width:66ch}
.prose h2,.prose h3{font:400 1.25rem/1.25 var(--disp);color:var(--w);text-transform:uppercase;margin:1.8rem 0 .7rem}

/* stats */
.st{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ln);border-left:1px solid var(--ln)}
.st>div{border-right:1px solid var(--ln);border-bottom:1px solid var(--ln);padding:1rem .9rem 1.05rem;display:grid;gap:.7rem;align-content:space-between;min-height:128px}
.st .dn{color:var(--w)}
.st .dn svg{height:clamp(30px,5vw,56px);width:auto;max-width:100%}
.dn.is-pz{animation:pz .6s ease-out}
@keyframes pz{35%{color:var(--ice);filter:drop-shadow(0 0 6px var(--ice)) drop-shadow(0 0 14px var(--glow))}}
.st span{font:400 .68rem/1.3 var(--mono);color:var(--steel);text-transform:uppercase;letter-spacing:.05em;overflow-wrap:break-word}
.st>div{min-width:0}
@media(min-width:760px){.st{grid-template-columns:repeat(4,1fr)}.st>div{padding:1.4rem;min-height:170px}}
.award{display:grid;gap:1rem;align-items:center;padding:1.3rem;border:1px solid var(--ln);border-radius:var(--r);margin-top:1rem;background:linear-gradient(120deg,rgba(0,129,195,.2),transparent 60%)}
.award p{max-width:64ch}
@media(min-width:900px){.award{grid-template-columns:auto 1fr auto;gap:2.4rem;padding:1.6rem 2rem}}
.award svg{width:58px;height:58px;stroke:var(--ice);fill:none;stroke-width:1}

/* triad */
.tri{display:grid;gap:.8rem}
.tc{position:relative;display:block;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;border:1px solid var(--ln);background:var(--ink3)}
.tc img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) brightness(.62);transition:transform 1s var(--e),filter .5s,opacity .4s}
.tc:hover img{transform:scale(1.05);filter:saturate(.95) brightness(.72)}
.tc__t{position:absolute;inset:auto 0 0;padding:1.1rem 1.1rem 1rem;display:grid;gap:.35rem;background:linear-gradient(180deg,transparent,rgba(4,7,10,.86))}
.tc__t b{font:300 1.5rem/1.1 var(--disp);color:var(--w);text-transform:uppercase}
.tc__t span{font-size:.88rem;line-height:1.4;color:var(--tx)}
@media(min-width:800px){.tri{grid-template-columns:repeat(3,1fr);gap:1rem}.tc{aspect-ratio:4/4.6}}

/* band */
.band{position:relative;min-height:62svh;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate}
.band>img{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover;z-index:-2;filter:saturate(.8) brightness(.78)}
.band::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--ink),transparent 28%,transparent 40%,var(--ink))}
.band .wrap{width:100%;padding-block:3rem}

/* offer strip */
.ofr{display:grid;gap:1rem;padding:1.3rem;border-radius:var(--r);background:var(--blue2);color:#fff;position:relative;overflow:hidden}
.ofr h3{font:300 clamp(1.5rem,1.2rem + 1.6vw,2.6rem)/1.05 var(--disp);text-transform:uppercase}
.ofr p{color:#e6f4fb}
.ofr .pill{--c:#fff;color:#fff}
.ofr .pill::before{background:#013a59}
@media(min-width:800px){.ofr{grid-template-columns:1fr auto;align-items:center;padding:1.6rem 2rem}}

/* blog */
.bcs{display:grid;gap:.8rem}
.bc{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--ln);border-radius:var(--r);overflow:hidden;background:var(--ink2);transition:border-color .3s}
.bc:hover{border-color:var(--ice)}
.bc__i{aspect-ratio:16/10;overflow:hidden;background:var(--ink3)}
.bc__i img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) brightness(.86);transition:transform .9s var(--e),filter .4s,opacity .4s}
.bc__m{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
.bc__rt{padding:.22rem .55rem;border:1px solid var(--ln2);border-radius:99px;font:400 .64rem/1.2 var(--mono);color:var(--steel);letter-spacing:.04em;white-space:nowrap}
.bc:hover .bc__i img{transform:scale(1.05);filter:none}
.bc__t{padding:1rem 1.1rem 1.2rem;display:grid;gap:.45rem;align-content:start}
.bc__t b{font:400 1.08rem/1.22 var(--disp);color:var(--w)}
.bc__t p{font-size:.88rem;line-height:1.5}
@media(min-width:720px){.bcs{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1040px){.bcs{grid-template-columns:repeat(3,1fr);gap:1rem}}
.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.2rem}
.chip{padding:.5rem .85rem;min-height:38px;border:1px solid var(--ln2);border-radius:99px;font:400 .72rem/1.3 var(--mono);color:var(--steel);transition:background .25s,color .25s,border-color .25s}
.chip[aria-pressed=true],.chip:hover{background:var(--blue2);border-color:var(--blue2);color:#fff}

/* page hero */
.ph{position:relative;padding:calc(var(--hdr) + clamp(2rem,1rem + 5vw,5rem)) 0 clamp(2rem,1.4rem + 3vw,4rem);overflow:hidden;isolation:isolate;border-bottom:1px solid var(--ln)}
.ph__bg{position:absolute;inset:0;z-index:-2}
.ph__bg img{width:100%;height:100%;object-fit:cover;filter:saturate(.6) brightness(.45)}
.ph::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,7,10,.92),rgba(4,7,10,.3)),linear-gradient(180deg,rgba(4,7,10,.6),rgba(4,7,10,.2) 40%,var(--ink))}
.ph--g::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(60% 90% at 85% 0,rgba(0,129,195,.32),transparent 60%),radial-gradient(#22323f 1px,transparent 1.3px) 0 0/18px 18px}
[data-theme=light] .ph::after{background:linear-gradient(90deg,rgba(244,247,249,.95),rgba(244,247,249,.55)),linear-gradient(180deg,rgba(244,247,249,.55),rgba(244,247,249,.15) 40%,var(--ink))}
[data-theme=light] .ph__bg img{filter:saturate(.5) brightness(1.05)}
[data-theme=light] .ph--g::before{background:radial-gradient(60% 90% at 85% 0,rgba(0,129,195,.18),transparent 60%),radial-gradient(rgba(10,25,40,.16) 1px,transparent 1.3px) 0 0/18px 18px}
.ph .wrap{position:relative}
.crumbs{position:relative;display:flex;flex-wrap:wrap;gap:.3rem .5rem;font:400 .7rem/1.4 var(--mono);color:var(--steel2);margin-bottom:1rem;padding-bottom:.75rem}
.crumbs::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:linear-gradient(90deg,var(--ice),var(--ln2) 45%,transparent);transform-origin:0 50%}
.js .crumbs::after{transform:scaleX(0)}
.js.is-ready .crumbs::after{animation:hl .8s .15s var(--e) forwards}
@keyframes hl{to{transform:scaleX(1)}}
.ph__ix{display:none;position:absolute;right:var(--gut);top:0;font:400 .7rem/1.4 var(--mono);color:var(--steel);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.ph__ix b{color:var(--ice);font-weight:400}
@media(min-width:720px){.ph__ix{display:block}.ph .crumbs{padding-right:clamp(9rem,18vw,15rem)}}
.crumbs a:hover{color:var(--w)}
.crumbs li+li::before{content:"/";margin-right:.5rem;color:var(--ln2)}
.ph .lead{margin-top:.9rem}
.ph__meta{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.1rem}
.ph__meta span{border:1px solid var(--ln2);border-radius:99px;padding:.32rem .7rem;font:400 .7rem/1.2 var(--mono);color:var(--tx)}

/* product page */
.pd{display:grid;gap:1.4rem}
@media(min-width:980px){.pd{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:start}.pd__s{position:sticky;top:calc(var(--hdr) + 1rem)}}
.tb{width:100%;border-collapse:collapse;font-size:.92rem}
.tb th,.tb td{padding:.62rem .7rem .62rem 0;border-bottom:1px solid var(--ln);text-align:left;vertical-align:top;line-height:1.4}
.tb th{font-weight:300;color:var(--steel)}
.tb td{font:400 .84rem/1.45 var(--mono);color:var(--w)}
.tb thead th{font:400 .7rem/1.3 var(--mono);text-transform:uppercase;color:var(--ice);letter-spacing:.05em}
.tb--st{table-layout:fixed}
.tb--st th{width:46%}
.tb td{overflow-wrap:anywhere}
.scr{overflow:auto;max-height:min(80svh,760px);-webkit-overflow-scrolling:touch;border:1px solid var(--ln);border-radius:var(--r);scrollbar-width:thin}
.scr .tb{min-width:760px}
.scr .tb th,.scr .tb td{padding:.7rem .9rem}
.scr .tb tbody tr>*{background:var(--ink)}
.scr .tb tbody tr:nth-child(even)>*{background:var(--zb)}
.scr .tb tbody th{position:sticky;left:0;z-index:1;min-width:190px}
.scr .tb thead th{position:sticky;top:0;z-index:2;background:var(--ink);box-shadow:inset 0 -1px 0 var(--ln2)}
.scr .tb thead th:first-child{left:0;z-index:3}
.cols3{display:grid;gap:1.4rem}
@media(min-width:900px){.cols3{grid-template-columns:repeat(3,1fr);gap:2rem}}
.cols2{display:grid;gap:1.4rem}
@media(min-width:800px){.cols2{grid-template-columns:repeat(2,1fr);gap:2rem}}
.fg h3{font:400 .74rem/1.2 var(--mono);text-transform:uppercase;color:var(--ice);letter-spacing:.05em;margin-bottom:.6rem}

/* docs */
.dcs{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}
.dc{display:block;border:1px solid var(--ln);border-radius:10px;overflow:hidden;transition:border-color .3s,transform .4s var(--e);background:var(--ink2)}
.dc:hover{border-color:var(--ice);transform:translateY(-3px)}
.dc img{width:100%;aspect-ratio:.72;object-fit:cover;object-position:top}
.dc span{display:flex;justify-content:space-between;gap:.5rem;padding:.6rem .7rem;font:400 .72rem/1.3 var(--mono);color:var(--w)}
@media(min-width:760px){.dcs{grid-template-columns:repeat(3,1fr);gap:1rem}}
@media(min-width:1100px){.dcs--6{grid-template-columns:repeat(6,1fr)}}

/* gallery */
.gal{columns:2;column-gap:.5rem}
.gal a{display:block;margin-bottom:.5rem;border-radius:8px;overflow:hidden;break-inside:avoid;position:relative;cursor:zoom-in;background:var(--ink3)}
.gal img{width:100%;transition:transform .8s var(--e),filter .4s,opacity .4s;filter:saturate(.85)}
.gal a:hover img{transform:scale(1.04);filter:none}
.gal a[hidden]{display:none}
@media(min-width:760px){.gal{columns:3;column-gap:.8rem}.gal a{margin-bottom:.8rem}}
@media(min-width:1200px){.gal{columns:4}}
.lb{position:fixed;inset:0;z-index:120;background:rgba(3,6,9,.95);display:none;align-items:center;justify-content:center;padding:1rem}
.lb.is-on{display:flex}
.lb img{max-width:100%;max-height:78svh;border-radius:8px;touch-action:pan-y}
.lb img.is-z{animation:lbIn .45s var(--e)}
@keyframes lbIn{from{opacity:0;transform:scale(.96)}}
.lb__c{position:absolute;left:72px;right:72px;bottom:20px;display:flex;flex-direction:column;align-items:center;gap:.3rem;text-align:center;font:400 .74rem/1.4 var(--mono);color:#c7d2db;pointer-events:none}
.lb__c b{font-weight:400;color:var(--ice);letter-spacing:.06em}
@media(min-width:800px){.lb__c{bottom:24px}}
.lb button{position:absolute;width:46px;height:46px;border:1px solid var(--ln2);border-radius:50%;display:grid;place-items:center;background:rgba(10,16,24,.7);color:#fff}
.lb .x{top:14px;right:14px}.lb .p{left:14px;bottom:16px}.lb .n{right:14px;bottom:16px}
.lb svg{width:14px;height:14px}
@media(min-width:800px){.lb .p{left:20px;bottom:auto;top:50%}.lb .n{right:20px;bottom:auto;top:50%}}

/* form */
.fm{display:grid;gap:.9rem}
.fm__2{display:grid;gap:.9rem}
@media(min-width:640px){.fm__2{grid-template-columns:1fr 1fr}}
.fld{display:grid;gap:.3rem}
.fld label{font:400 .7rem/1.3 var(--mono);color:var(--steel);text-transform:uppercase;letter-spacing:.05em}
.fld input,.fld select,.fld textarea{width:100%;background:var(--fld);border:1px solid var(--ln2);border-radius:10px;padding:.72rem .85rem;color:var(--w);font-size:16px;font-weight:300;transition:border-color .25s,background .25s,box-shadow .25s;min-height:46px}
.fld textarea{min-height:130px;resize:vertical}
.fld select option{background:var(--ink2);color:var(--w)}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:0;border-color:var(--blue);background:rgba(0,129,195,.08);box-shadow:0 0 0 3px rgba(0,129,195,.28)}
/* floating labels (class set by JS) */
.fld.fl{position:relative;display:block}
.fld.fl label{position:absolute;left:.6rem;top:23px;transform:translateY(-50%);max-width:calc(100% - 1.2rem);padding:0 .3rem;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;font-size:.74rem;background:transparent;transition:top .25s var(--e),font-size .25s var(--e),color .25s,background-color .25s;z-index:1}
.fld.fl.is-up label{top:0;font-size:.62rem;background:var(--ink)}
.fld.fl:focus-within label{color:var(--ice)}
.fm__ok{display:none;width:46px;height:46px;color:var(--ice)}
.fm__ok svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.fm__ok circle{stroke-dasharray:70;stroke-dashoffset:70;animation:ok .5s var(--e) forwards}
.fm__ok path{stroke-dasharray:20;stroke-dashoffset:20;animation:ok .4s .35s var(--e) forwards}
@keyframes ok{to{stroke-dashoffset:0}}
.btns.is-ok>button{display:none}
.btns.is-ok .fm__ok{display:block}
.fm__msg{min-height:1.4em;font-size:.9rem;color:var(--ice)}
.fm__msg.err{color:#ff9a8b}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.ccs{display:grid;gap:.7rem}
.cc{padding:1.1rem;border:1px solid var(--ln);border-radius:var(--r);background:var(--ink2);display:grid;gap:.35rem}
.cc b{font:400 .72rem/1.3 var(--mono);text-transform:uppercase;color:var(--ice);letter-spacing:.05em}
.cc a{color:var(--w);overflow-wrap:anywhere}
.cc a:hover{color:var(--ice)}
@media(min-width:760px){.ccs{grid-template-columns:repeat(3,1fr)}}
.map{border:1px solid var(--ln);border-radius:var(--r);overflow:hidden;aspect-ratio:16/10;background:var(--ink2)}
.map iframe{width:100%;height:100%;border:0;filter:grayscale(1) invert(.92) contrast(.9) hue-rotate(170deg)}
[data-theme=light] .map iframe{filter:none}
.vid{position:relative;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;border:1px solid var(--ln);background:#000;display:block;width:100%}
.vid img{width:100%;height:100%;object-fit:cover;filter:brightness(.6) saturate(.7)}
.vid i{position:absolute;left:50%;top:50%;width:72px;height:72px;margin:-36px 0 0 -36px;border-radius:50%;border:1px solid #fff;display:grid;place-items:center;transition:background .3s}
.vid:hover i{background:var(--blue)}
.vid i svg{width:18px;height:18px}
.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* cta + footer */
.cta{position:relative;overflow:hidden;background:#02050a;isolation:isolate}
.cta::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(60% 120% at 88% 40%,rgba(0,129,195,.55),transparent 62%),radial-gradient(#1b2a36 1px,transparent 1.3px) 0 0/16px 16px}
.cta .wrap{padding-block:clamp(3.2rem,2.4rem + 4vw,6rem);display:grid;gap:1.4rem}
@media(min-width:900px){.cta .wrap{grid-template-columns:1fr auto;align-items:end;gap:3rem}}
.ftr{position:relative;overflow:hidden;border-top:1px solid var(--ln);background:var(--ink);padding-top:3rem}
.ftr::before{content:"DPF MACHINE";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:400 14vw/1 var(--disp);letter-spacing:-.01em;white-space:nowrap;text-transform:uppercase;color:var(--w);opacity:.04;pointer-events:none;user-select:none}
.ftr>.wrap{position:relative}
.ftr__g{display:grid;gap:1.8rem}
.ftr__b img{width:190px}
.ftr__b .ftr__st{margin-top:.8rem;font:400 .68rem/1.5 var(--mono);color:var(--steel);letter-spacing:.03em;max-width:none}
.ftr__st time{color:var(--ice)}
.ftr__b p{margin-top:.9rem;font-size:.9rem;max-width:34ch}
.ftr h4{font:400 .7rem/1.2 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ice);margin-bottom:.6rem}
.ftr li{padding:.22rem 0;font-size:.9rem}
.ftr li a:hover{color:var(--w)}
.ftr address{font-style:normal;font-size:.9rem;line-height:1.6}
.ftr address a{color:var(--w);display:inline-block;padding:.12rem 0}
.ftr address a:hover{color:var(--ice)}
.soc{display:flex;gap:.45rem;margin-top:1rem}
.soc a{width:44px;height:44px;border:1px solid var(--ln2);border-radius:50%;display:grid;place-items:center;transition:background .25s,border-color .25s}
.soc a:hover{background:var(--blue);border-color:var(--blue)}
.soc svg{width:16px;height:16px;fill:var(--w);transition:fill .25s}
.soc a:hover svg{fill:#fff}
.ftr__l{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1.5rem;margin-top:2.4rem;padding-block:1rem 5.4rem;border-top:1px solid var(--ln);font:400 .7rem/1.4 var(--mono);color:var(--steel2)}
@media(min-width:760px){.ftr__g{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.ftr__g{grid-template-columns:1.5fr 1fr 1fr 1.2fr 1.2fr}.ftr__l{padding-bottom:1.2rem}}

/* floating controls — same line, bottom corners */
.fab{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom));z-index:70;height:52px}
.top{right:16px;width:52px;border-radius:50%;background:var(--glass);border:1px solid var(--ln2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:grid;place-items:center;color:var(--w);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .3s,transform .4s var(--e),visibility .3s,background .25s}
.top.is-on{opacity:1;visibility:visible;transform:none}
.top:hover{background:var(--blue);color:#fff}
.top::after{content:attr(data-tip);position:absolute;right:calc(100% + 10px);top:50%;padding:.42rem .75rem;border:1px solid var(--ln2);border-radius:99px;background:var(--pop);font:400 .68rem/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--w);white-space:nowrap;pointer-events:none;opacity:0;transform:translate(12px,-50%);transition:opacity .25s,transform .35s var(--e)}
@media(hover:hover){.top:hover::after,.top:focus-visible::after{opacity:1;transform:translate(0,-50%)}}
.top svg.ar{width:14px;height:14px}
.top svg.rg{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);transform:rotate(-90deg)}
.top svg.rg circle{fill:none;stroke:var(--ice);stroke-width:1.5;stroke-dasharray:100;stroke-dashoffset:100}
.ai{left:16px}
.ai__b{height:52px;min-width:52px;border-radius:99px;background:var(--blue2);display:flex;align-items:center;gap:.6rem;padding:0 15px;box-shadow:0 8px 30px -8px var(--glow);color:#fff;transition:background .25s}
.ai__b:hover{background:var(--blue)}
.ai__b svg{width:22px;height:22px;flex:none}
.ai__b span{font:500 .74rem/1 var(--disp);letter-spacing:.07em;text-transform:uppercase;display:none}
@media(min-width:720px){.ai__b span{display:block;padding-right:.3rem}.fab{bottom:20px}.top{right:20px}.ai{left:20px}}
.ai__tip{position:absolute;left:0;bottom:66px;display:flex;align-items:center;gap:.2rem;padding:.3rem .3rem .3rem .4rem;background:var(--pop);border:1px solid var(--ln2);border-radius:14px;box-shadow:0 12px 30px -12px rgba(0,0,0,.5);opacity:0;transform:translateY(8px) scale(.96);transform-origin:20px 100%;transition:opacity .3s,transform .45s var(--e);white-space:nowrap}
.ai__tip.is-on{opacity:1;transform:none}
.ai__tip::after{content:"";position:absolute;left:22px;bottom:-6px;width:10px;height:10px;background:inherit;border-right:1px solid var(--ln2);border-bottom:1px solid var(--ln2);transform:rotate(45deg)}
.ai__tq{padding:.45rem .5rem;font-size:.86rem;color:var(--w);border-radius:10px}
.ai__tq:hover{color:var(--ice)}
.ai__tx{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:var(--steel)}
.ai__tx:hover{color:var(--w);background:rgba(0,129,195,.14)}
.ai__tx svg{width:10px;height:10px}
.ai__p{position:absolute;left:0;bottom:64px;width:min(calc(100vw - 32px),390px);height:min(70svh,560px);background:rgba(7,12,18,.96);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--ln2);border-radius:18px;display:grid;grid-template-rows:auto 1fr auto auto;overflow:hidden;transform-origin:0 100%;opacity:0;visibility:hidden;transform:translateY(12px) scale(.97);transition:opacity .25s,transform .35s var(--e),visibility .25s}
.ai.is-on .ai__p{opacity:1;visibility:visible;transform:none}
.ai__h{display:flex;align-items:center;gap:.7rem;padding:.75rem .9rem;border-bottom:1px solid var(--ln)}
.ai__h img{width:26px;height:26px}
.ai__h b{display:block;font:400 .9rem/1.2 var(--disp);color:var(--w)}
.ai__h small{display:block;font:400 .64rem/1.3 var(--mono);color:var(--steel2)}
.ai__x{margin-left:auto;width:36px;height:36px;border-radius:50%;border:1px solid var(--ln2);display:grid;place-items:center}
.ai__x svg{width:12px;height:12px}
.ai__m{overflow-y:auto;padding:.9rem;display:flex;flex-direction:column;gap:.6rem;font-size:.9rem;line-height:1.45;overscroll-behavior:contain}
.ai__m>div{max-width:88%;padding:.6rem .75rem;border-radius:12px;background:rgba(190,218,238,.07);color:#d6e0e7;animation:aiIn .3s var(--e)}
.ai__m>div.u{align-self:flex-end;background:var(--blue2);color:#fff}
.ai__m a{color:var(--ice);text-decoration:underline;text-underline-offset:2px}
.ai__m ul{margin:.3rem 0 0;display:grid;gap:.15rem}
.ai__m li{padding-left:.9rem;position:relative}
.ai__m li::before{content:"+";position:absolute;left:0;color:var(--ice)}
.ai__dots{display:flex;gap:4px;padding:.8rem .75rem!important}
.ai__dots i{width:6px;height:6px;border-radius:50%;background:var(--ice);animation:dt 1s infinite}
.ai__dots i:nth-child(2){animation-delay:.15s}.ai__dots i:nth-child(3){animation-delay:.3s}
@keyframes dt{50%{transform:translateY(-4px);opacity:.4}}
@keyframes aiIn{from{opacity:0;transform:translateY(6px)}}
.ai__q{display:flex;gap:.35rem;overflow-x:auto;padding:.5rem .9rem;border-top:1px solid var(--ln);scrollbar-width:none}
.ai__q::-webkit-scrollbar{display:none}
.ai__q button{flex:none;padding:.4rem .7rem;border:1px solid var(--ln2);border-radius:99px;font:400 .7rem/1.2 var(--mono);color:var(--steel);transition:background .2s,color .2s;min-height:34px}
.ai__q button:hover{background:var(--blue2);color:#fff}
.ai__f{display:flex;gap:.4rem;padding:.55rem .7rem .7rem}
.ai__f input{flex:1;min-width:0;background:rgba(190,218,238,.06);border:1px solid var(--ln2);border-radius:10px;padding:.55rem .7rem;font-size:16px;font-weight:300;color:var(--w)}
.ai__f input:focus{outline:0;border-color:var(--ice)}
.ai__f button{width:44px;height:44px;border-radius:10px;background:var(--blue2);display:grid;place-items:center;flex:none}
.ai__f svg{width:15px;height:15px}

/* cursor */
.cur{position:fixed;left:0;top:0;width:34px;height:34px;margin:-17px 0 0 -17px;z-index:300;pointer-events:none;border:1px solid rgba(124,208,246,.7);border-radius:50%;opacity:0;transition:width .25s,height .25s,margin .25s,background .25s,opacity .3s;mix-blend-mode:screen}
.cur::before,.cur::after{content:"";position:absolute;background:var(--ice)}
.cur::before{left:50%;top:-5px;bottom:-5px;width:1px}
.cur::after{top:50%;left:-5px;right:-5px;height:1px}
.cur.is-h{width:58px;height:58px;margin:-29px 0 0 -29px;background:rgba(0,129,195,.2)}
.cur b{position:absolute;inset:0;display:grid;place-items:center;font:500 .66rem/1 var(--disp);letter-spacing:.08em;text-transform:uppercase;color:#fff;opacity:0;transition:opacity .2s}
.cur.is-l{width:84px;height:84px;margin:-42px 0 0 -42px;background:rgba(0,129,195,.82);border-color:transparent}
.cur.is-l::before,.cur.is-l::after{opacity:0}
.cur.is-l b{opacity:1}
.cur.is-x{opacity:0!important}
[data-theme=light] .cur{mix-blend-mode:normal;border-color:var(--ice)}
@media(hover:none),(pointer:coarse){.cur{display:none}}

/* reveal */
.js .rv{opacity:0;transform:translateY(22px)}
.js .rv-l{clip-path:inset(0 100% 0 0)}
.js [data-sp] .w{display:inline-block;max-width:100%;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.js [data-sp] .w>span{display:inline-block;transform:translateY(105%)}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .js .rv{opacity:1;transform:none}.js .rv-l{clip-path:none}
  .js [data-sp] .w>span{transform:none}
  .tick__tr{animation:none}
  .stage::after{display:none}
  .proc__run{animation:none!important}
  .js .crumbs::after{transform:none;animation:none}
  .stage img{transform:translate(-50%,0)}
}
@media print{.hdr,.fab,.pre,.wipe,.cur,.mnav,.ftr__l{display:none!important}body{background:#fff;color:#000}.d1,.d2,.d3{color:#000}}
