/* DEPT® × Apple — styles
   Rules keep the original deck's cascade order: later rules deliberately
   override earlier ones (dark/white themes, mobile `body.m`, the gate),
   so add new rules at the end rather than reordering. */
:root{color-scheme: light;
  --bg:#ffffff;
  --s1:#f5f5f7;          
  --s2:#e8e8ed;          
  --s3:#d2d2d7;          
  --ink:#1d1d1f;         
  --ink2:#6e6e73;        
  --ink3:#86868b;        
  --accent:#FF4B07;        
  --accent-hover:#EB4200;
  --e:cubic-bezier(.28,.11,.32,1);      
  --e-out:cubic-bezier(.4,0,.2,1);
  --r-xl:32px; --r-l:24px; --r-m:16px; --r-s:12px;
  --mx:96px;             
  --font:"Inter", -apple-system, "Helvetica Neue", Helvetica, Arial, sans-serif;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
*,*::before,*::after{box-sizing:border-box}
html,body{height:100%;margin:0;background:var(--bg);overflow:hidden;transition:background .5s var(--e)}
body{font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss03"}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:999px}
h1,h2,h3,h4,p,ul,ol{margin:0}
#stage{transition:transform .7s var(--e);position:fixed;left:50%;top:50%;width:1600px;height:900px;transform-origin:50% 50%;overflow:hidden;overflow:clip;background:transparent}
#views,.view{overflow:clip}
.t-h2{font-weight:700;font-size:52px;line-height:1.1;letter-spacing:-1.82px}
.t-body{font-weight:400;font-size:17px;line-height:1.4;letter-spacing:-.17px}
.eyebrow{font-size:19px;line-height:1.3;color:var(--ink2);margin-bottom:12px;letter-spacing:-.01em}
.muted{color:var(--ink2)}
.col{display:flex;flex-direction:column}
.grow{flex:1;min-height:0}
.mt12{margin-top:12px}
.mt16{margin-top:16px}
.mt24{margin-top:24px}
.mt32{margin-top:32px}
.mt40{margin-top:40px}
.head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.cta{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 24px;border-radius:999px;background:var(--accent);color:#fff;font-size:17px;font-weight:500;letter-spacing:-.425px;transition:background .25s var(--e),transform .25s var(--e);white-space:nowrap}
.cta:hover{background:var(--accent-hover)}
.cta:active{transform:scale(.97)}
.cta.sm{height:36px;padding:0 18px;font-size:14px;letter-spacing:-.14px}
.gnav{background:transparent!important;position:absolute;top:0;left:0;right:0;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--mx);z-index:40;background:rgba(255,255,255,.92)}
.mark{display:flex;align-items:center;height:40px;padding:0;margin:0;border-radius:6px;transition:opacity .3s var(--e)}
.mark img{display:block;width:102px;height:31px}
.mark:hover{opacity:.62}
.chap{position:relative;display:flex;background:var(--s1);border-radius:999px;padding:4px}
.chap .thumb{position:absolute;top:4px;left:4px;height:36px;border-radius:999px;background:#fff;box-shadow:0 .5px .75px rgba(0,0,0,.05),0 1.61px 3.22px rgba(0,0,0,.05);transition:left .6s var(--e),width .6s var(--e),opacity .4s}
.chap button{position:relative;z-index:1;height:36px;padding:0 16px;border-radius:999px;font-size:14px;font-weight:500;letter-spacing:-.14px;color:var(--ink2);transition:color .3s;white-space:nowrap}
.chap button:hover{color:var(--ink)}
.chap button.on{color:var(--ink)}
.chap button .n{color:var(--ink3);margin-right:6px;font-size:14px}
.chap.none .thumb{opacity:0}
.bnav{position:absolute;left:0;right:0;bottom:0;height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--mx);z-index:30;pointer-events:none}
.bnav > *{pointer-events:auto}
.crumb{visibility:hidden;display:flex;align-items:baseline;gap:10px;font-size:14px;color:var(--ink2);min-width:320px;transition:opacity .4s}
.crumb b{color:var(--ink);font-size:14px}
.ctrl{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:540px;display:grid;grid-template-columns:48px 48px 1fr 48px;column-gap:12px;align-items:center;pointer-events:auto}
.ctrl #next{justify-self:start;white-space:nowrap}
.gridbtn svg{width:20px;height:20px}
.gridbtn .ic-grid rect{fill:var(--ink)}
.gridbtn .ic-exp{display:none;fill:none;stroke:var(--ink);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.gridv .gridbtn .ic-grid{display:none}
body.gridv .gridbtn .ic-exp{display:block}
body.gridv .gridbtn{background:var(--ink)}
body.gridv .gridbtn .ic-exp{stroke:#fff}
body.dk .gridbtn .ic-grid rect{fill:#fff}
body.dk .gridbtn .ic-exp{stroke:#fff}
#gridv{position:absolute;inset:0;z-index:28;background:#fff;opacity:0;visibility:hidden;transition:opacity .45s var(--e),visibility 0s .45s;overflow-y:auto;padding:96px var(--mx) 120px}
body.gridv #gridv{opacity:1;visibility:visible;transition:opacity .45s var(--e)}
body.gridv.dk #gridv{background:#000;color:#fff}
body.gridv .owner{opacity:0;pointer-events:none}
body.gridv .gnav{background:rgba(255,255,255,.96)!important}
body.gridv.dk .gnav{background:rgba(0,0,0,.94)!important}
body.gridv .bnav{background:linear-gradient(0deg,rgba(255,255,255,.98) 70%,rgba(255,255,255,0))}
body.gridv.dk .bnav{background:linear-gradient(0deg,rgba(0,0,0,.96) 70%,rgba(0,0,0,0))}
#gridv{scroll-padding:110px 0 120px}
.gv-head{margin-bottom:8px}
.gv-grp{margin-top:28px}
.gv-lab{font-size:14px;font-weight:500;color:var(--ink2);margin-bottom:12px}
.gv-lab b{color:var(--ink);margin-right:6px}
body.dk .gv-lab{color:rgba(255,255,255,.6)}
body.dk .gv-lab b{color:#fff}
.gv-row{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.gv-card{display:flex;flex-direction:column;gap:8px;text-align:left}
.gv-img{display:block;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:var(--s1);box-shadow:0 0 0 1px var(--s2);transition:box-shadow .3s,transform .4s var(--e)}
.gv-img img{width:100%;height:100%;object-fit:cover;display:block}
.gv-t{font-size:12px;line-height:1.3;color:var(--ink2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.dk .gv-t{color:rgba(255,255,255,.6)}
.gv-card:hover .gv-img{transform:translateY(-2px);box-shadow:0 0 0 2px var(--ink),0 10px 24px rgba(0,0,0,.1)}
.gv-card.on .gv-img{box-shadow:0 0 0 3px var(--accent)}
body.m .ctrl{position:static;transform:none;width:auto;display:flex;gap:8px}
body.m .gridbtn{display:none}
.arw{height:48px;min-width:48px;border-radius:999px;background:rgba(232,232,237,.72);display:flex;align-items:center;justify-content:center;gap:0;transition:background .25s,padding .6s var(--e),gap .6s var(--e);padding:0}
.arw:hover{background:#dcdce1}
.arw svg{width:20px;height:20px;fill:var(--ink);flex:none}
.arw[disabled]{opacity:.35;pointer-events:none}
.arw .nx{max-width:0;overflow:hidden;white-space:nowrap;font-size:14px;transition:max-width .7s var(--e),opacity .4s;opacity:0}
.arw.end{padding:0 18px 0 22px;gap:8px}
.arw.end .nx{max-width:260px;opacity:1}
.arw.end .nx small{color:var(--ink2);font-size:14px;margin-right:6px}
.owner{display:flex;align-items:center;justify-content:flex-end;min-width:320px;transition:opacity .4s}
.ow{display:flex;align-items:center;gap:0;height:52px;padding:4px;border-radius:999px;background:transparent;text-align:right;cursor:default;transition:background .5s var(--e),padding .5s var(--e),gap .5s var(--e)}
.ow .meta{display:flex;flex-direction:column;align-items:flex-end;white-space:nowrap;max-width:0;overflow:hidden;opacity:0;transition:max-width .7s var(--e),opacity .35s var(--e)}
.ow:hover,.ow:focus-visible{background:var(--s1);padding-left:22px;gap:14px}
.ow:hover .meta,.ow:focus-visible .meta{max-width:300px;opacity:1;transition:max-width .7s var(--e),opacity .5s var(--e) .15s}
.ow .meta span{font-size:12px;color:var(--ink2);line-height:1.3}
.ow .meta b{font-size:14px;line-height:1.25;font-weight:700;color:var(--ink)}
.ow .avw{position:relative;flex:none}
body.nv .ow:hover{background:#e8e8ed}
.av{width:44px;height:44px;border-radius:50%;flex:none;overflow:hidden;background:linear-gradient(160deg,#ececf0,#d9d9de);display:grid;place-items:end center;box-shadow:0 0 0 2px #fff,0 0 0 3px var(--s2)}
.av svg{width:34px;height:34px;fill:#f9f9fb;margin-bottom:-2px}
.av img{width:100%;height:100%;object-fit:cover}
body.cv .owner{opacity:0;pointer-events:none}
body.hi .crumb,body.hi .owner{opacity:0;pointer-events:none}
#views{position:absolute;inset:0}
.view{position:absolute;inset:0;padding:143px var(--mx) 108px;display:flex;flex-direction:column}
.view.in{animation:vin .85s var(--e) both}
.view.in.back{animation-name:vinb}
.view.in.jump{animation-name:vjump;animation-duration:.9s}
.view.out{animation:vout .45s var(--e-out) both;pointer-events:none}
.view.out.back{animation-name:voutb}
#overview{position:absolute;inset:72px 0 0;z-index:35;background:#fff;padding:40px var(--mx) 64px;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .45s var(--e),transform .6s var(--e),visibility 0s .45s}
body.ov #overview{opacity:1;visibility:visible;transform:none;transition:opacity .5s var(--e),transform .7s var(--e),visibility 0s}
.ovgrid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:1fr 1fr;gap:20px;flex:1;margin-top:28px}
.ovt{position:relative;border-radius:var(--r-l);background:var(--s1);padding:28px;display:flex;flex-direction:column;text-align:left;transition:background .35s var(--e),transform .5s var(--e)}
.ovt:hover{background:#ededf0}
.ovt .n{font-size:14px;color:var(--ink3)}
.ovt .lb{font-size:14px;color:var(--ink2);margin-top:4px}
.ovt .tt{font-weight:700;font-size:25px;line-height:1.16;letter-spacing:-.02em;margin-top:18px;max-width:300px}
.ovt .ft{margin-top:auto;display:flex;align-items:center;justify-content:space-between}
.ovt .mini{display:flex;gap:5px}
.ovt .mini i{width:5px;height:5px;border-radius:50%;background:#c7c7cc}
.ovt.cur{background:#fff;box-shadow:inset 0 0 0 1.5px var(--ink)}
.ovt .av{width:36px;height:36px}
.ovt .av svg{width:28px;height:28px}
body.ov .arw,body.ov .crumb,body.ov .owner{opacity:0;pointer-events:none}
.view.cov{padding:101px 24px 92px}
.ovt .thumbimg{position:absolute;inset:0;border-radius:inherit;overflow:hidden;opacity:0;transition:opacity .4s var(--e)}
.ovt .thumbimg img{width:100%;height:100%;object-fit:cover}
.ovt:hover .thumbimg{opacity:.14}
.ovt > *:not(.thumbimg){position:relative}
body.hi .gnav,body.hi .bnav{opacity:0;pointer-events:none}
.gnav,.bnav{transition:opacity .5s var(--e)}
.view.homev{padding:0;align-items:center;background:transparent}
.home-bar{position:absolute;left:96px;right:96px;top:50px;height:72px;display:flex;align-items:center;justify-content:space-between;z-index:6}
.home-h{margin-top:0;font-weight:700;font-size:80px;line-height:1.02;letter-spacing:-.045em;color:var(--ink);padding:0 .04em .06em}
.view :is(h1,h2):not(.cover *):not(.home *):not(.a2 *):not(.mod *):not(.bres *):not(.pr3-h):not(.cl2-h){font-size:42px!important;line-height:1.1!important;letter-spacing:-.028em!important;max-width:1100px}
#gate{position:absolute;inset:0;z-index:300;background:#fff;display:none}
body.gated #gate{display:block}
body.gated .gnav,body.gated .bnav,body.gated #views{visibility:hidden}
.gate-card{position:absolute;left:24px;right:24px;top:88px;bottom:92px;border-radius:32px;overflow:hidden;
  background:radial-gradient(60% 70% at 70% 25%,rgba(255,255,255,.95) 0%,rgba(255,255,255,0) 60%),radial-gradient(50% 50% at 22% 88%,#e2e2e7 0%,rgba(226,226,231,0) 70%),linear-gradient(160deg,#f3f3f6 0%,#e9e9ee 100%);
  display:flex;flex-direction:column;align-items:center}
.gate-in{margin-top:238px;display:flex;flex-direction:column;align-items:center;width:486px}
.gate-logo{display:block;width:102px;height:31px;background:#000;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.gate-h{margin-top:30px;font-weight:700;font-size:42px;line-height:1.1;letter-spacing:-.028em;color:var(--ink)}
#gateForm{width:100%;margin-top:36px}
#gatePw{width:100%;height:58px;border:0;border-radius:999px;background:#fff;padding:0 26px;font:400 15px var(--font);color:var(--ink);outline:none;box-shadow:0 0 0 1px rgba(0,0,0,.02);transition:box-shadow .25s}
#gatePw::placeholder{color:#a1a1a6}
#gatePw:focus{box-shadow:0 0 0 1px rgba(0,0,0,.08),0 2px 10px rgba(0,0,0,.04)}
.gate-row{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding:0 4px}
.gate-row .cta{height:28px;padding:0 20px;font-size:12px}
.gate-err{font-size:13px;color:#c23b2d}
#gateForm.shake{animation:gshake .45s var(--e)}
.gate-help{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:14px;line-height:1.35;color:var(--ink2)}
.gate-help a{color:var(--ink3);text-decoration:underline;text-underline-offset:3px}
.view.darkv{background:#000;color:var(--ink);--s1:#1D1D1F;--s2:#2c2c2e;--s3:#3a3a3c;--ink:#f5f5f7;--ink2:rgba(255,255,255,.64);--ink3:rgba(255,255,255,.45)}
body.dk #stage{background:#000}
body.dk .gnav{background:rgba(0,0,0,.92)}
body.dk .mark img{filter:invert(1)}
body.dk .chap{background:rgba(255,255,255,.12)}
body.dk .chap button{color:rgba(255,255,255,.72)}
body.dk .chap button:hover{color:#fff}
body.dk .chap button .n{color:rgba(255,255,255,.42)}
body.dk .chap button.on{color:#1d1d1f}
body.dk .chap button.on .n{color:#86868b}
body.dk .arw{background:rgba(255,255,255,.14)}
body.dk .arw:hover{background:rgba(255,255,255,.22)}
body.dk .arw svg{fill:#fff}
body.dk .arw .nx{color:#fff}
body.dk .arw.end .nx small{color:rgba(255,255,255,.6)}
body.dk .ow{background:transparent}
body.dk .ow:hover{background:rgba(255,255,255,.12)}
body.dk .ow .meta span{color:rgba(255,255,255,.6)}
body.dk .ow .meta b{color:#fff}
body.dk .av{box-shadow:0 0 0 2px #000,0 0 0 3px rgba(255,255,255,.2)}
.chap{transition:transform .8s var(--e),opacity .6s var(--e)}
body.pre .chap{transform:translateY(-72px);opacity:0;pointer-events:none}
.mmenu{display:none}
body.m{overflow:hidden}
body.m #stage{left:0;top:0;width:100%;height:100%;height:100dvh;transform:none!important;transition:none}
body.m .gnav{height:60px;padding:0 16px;background:rgba(255,255,255,.94)!important;-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);padding-top:env(safe-area-inset-top,0px);box-sizing:content-box}
body.m.nv .gnav{background:rgba(241,241,241,.94)!important}
body.m.dk .gnav{background:rgba(0,0,0,.9)!important}
body.m .chap{display:none}
body.m .mark img{width:84px;height:auto}
body.m .mmenu{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--s1);margin-left:auto;margin-right:10px}
body.m .mmenu svg{width:18px;height:18px;fill:#1d1d1f}
body.m.dk .mmenu{background:rgba(255,255,255,.14)}
body.m.dk .mmenu svg{fill:#fff}
body.m .bnav{height:auto;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:linear-gradient(0deg,rgba(255,255,255,.96) 60%,rgba(255,255,255,0));justify-content:space-between}
body.m.nv .bnav{background:linear-gradient(0deg,rgba(241,241,241,.96) 60%,rgba(241,241,241,0))}
body.m.dk .bnav{background:linear-gradient(0deg,rgba(0,0,0,.94) 60%,rgba(0,0,0,0))}
body.m .crumb{display:none}
body.m .ctrl{gap:8px;order:2}
body.m .arw{height:42px;min-width:42px}
body.m .arw.end{padding:0 14px 0 16px}
body.m .owner{min-width:0;order:1}
body.m .ow{padding:3px;height:auto}
body.m .ow .meta{display:none}
body.m .view{display:block;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:calc(84px + env(safe-area-inset-top,0px)) 18px 110px!important}
body.m .view > *{margin-bottom:0}
body.m .grow{flex:none!important}
body.m .col{min-height:0}
body.m .team5{grid-template-columns:repeat(2,1fr)!important;gap:12px;margin-top:20px}
body.m .head-row{flex-direction:column;align-items:flex-start!important;gap:16px}
body.m .mt40{margin-top:24px!important}
body.m .view :is(h1,h2):not(.cover *):not(.home *):not(.mod *):not(.bres *){font-size:30px!important;line-height:1.12!important}
body.m .t-body{font-size:16px!important}
body.m .teambox{padding:14px!important;margin-top:16px}
body.m .pc .meta{padding:12px}
body.m .view.cov{padding:calc(76px + env(safe-area-inset-top,0px)) 12px 96px!important;display:flex;flex-direction:column}
body.m .view.homev{padding:0!important}
body.m .home-bar{left:18px;right:18px;height:64px;top:env(safe-area-inset-top,0px)}
body.m .home-h{font-size:38px!important;line-height:1.06!important}
body.m .home-h br{display:none}
body.m #overview{inset:calc(60px + env(safe-area-inset-top,0px)) 0 0;padding:16px 16px 40px;overflow-y:auto;display:block}
body.m .ovgrid{grid-template-columns:1fr;grid-template-rows:none;gap:10px}
body.m .ovt{min-height:120px;padding:20px}
body.m .ovt .tt{font-size:20px;margin-top:10px}
body.m .gate-card{left:12px;right:12px;top:12px;bottom:12px;border-radius:22px}
body.m .gate-in{width:auto;padding:0 22px;margin-top:28vh}
body.m .gate-h{font-size:30px;text-align:center}
body.m .gate-help{bottom:28px;padding:0 20px;font-size:13px}
.hs{position:relative;width:min(100%,560px);aspect-ratio:1/1}
.al-lab{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.bnav .arw{background:#FFF5F0;box-shadow:inset 0 0 0 1px rgba(255,75,7,.08)}
.bnav .arw:hover{background:#FFEBE1}
.bnav .arw svg{fill:var(--ink)}
.bnav .arw .nx{color:var(--ink)}
.bnav .arw.end .nx small{color:var(--ink2)}
.bnav .gridbtn .ic-grid rect{fill:var(--ink)}
.bnav .gridbtn .ic-exp{stroke:var(--ink)}
body.gridv .bnav .gridbtn{background:var(--ink)}
body.gridv .bnav .gridbtn .ic-exp{stroke:#fff}
body.dk .bnav .arw{background:rgba(255,120,70,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
body.dk .bnav .arw:hover{background:rgba(255,120,70,.14)}
body.dk .bnav .arw svg{fill:#fff}
body.dk .bnav .arw .nx{color:#fff}
body.dk .bnav .arw.end .nx small{color:rgba(255,255,255,.6)}
body.dk .bnav .gridbtn .ic-grid rect{fill:#fff}
body.dk .bnav .gridbtn .ic-exp{stroke:#fff}
body.gridv.dk .bnav .gridbtn{background:#fff}
body.gridv.dk .bnav .gridbtn .ic-exp{stroke:#000}
.gv-grp{margin-top:44px}
.gv-grp:first-of-type{margin-top:24px}
.gv-lab{font-size:24px!important;font-weight:700;letter-spacing:-.6px;color:var(--ink)!important;margin-bottom:16px!important;padding-bottom:12px;border-bottom:1px solid var(--s2)}
.gv-lab b{color:var(--accent)!important;margin-right:10px!important;font-size:.7em;vertical-align:.18em;letter-spacing:0}
body.dk .gv-lab{color:#fff!important;border-color:rgba(255,255,255,.14)}
.gridtop{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 16px 0 12px;border-radius:999px;background:var(--s1);font-size:14px;font-weight:500;color:var(--ink);transition:background .25s}
.gridtop:hover{background:#e8e8ed}
.gridtop svg{width:18px;height:18px}
.gridtop .ic-grid rect{fill:var(--ink)}
.gridtop .ic-exp{display:none;fill:none;stroke:var(--ink);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.gridv .gridtop{background:var(--ink);color:#fff}
body.gridv .gridtop .ic-grid{display:none}
body.gridv .gridtop .ic-exp{display:block;stroke:#fff}
body.dk .gridtop{background:rgba(255,255,255,.12);color:#fff}
body.dk .gridtop .ic-grid rect{fill:#fff}
body.dk .gridtop .ic-exp{stroke:#fff}
body.gridv.dk .gridtop{background:#fff;color:#000}
body.gridv.dk .gridtop .ic-exp{stroke:#000}
.ctrl{grid-template-columns:48px 1fr 48px!important;width:540px!important}
body.m .gridtop .gt-l{display:none}
body.m .gridtop{padding:0 10px;height:40px}
.r3-pn{display:none}
.r3-pn.on{display:block;animation:r3fade .45s var(--e) both}
.r3-seg{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--s1)}
.r3-seg button{height:36px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:500;color:var(--ink2);transition:background .3s var(--e),color .3s}
.r3-seg button.on{background:var(--ink);color:#fff}
.r3-ag{display:flex;flex-direction:column}
.r3-ag-e{font-size:19px;letter-spacing:-.01em;color:#fff}
.r3-ag-l{margin-top:44px;display:flex;flex-direction:column}
.r3-ag-l button{display:grid;grid-template-columns:1fr 240px 120px;align-items:center;width:100%;height:74px;border-bottom:1px solid rgba(255,255,255,.12);text-align:left;color:#fff;opacity:.2;transition:opacity 1.2s var(--e)}
.r3-ag-l button:last-child{border-bottom:0}
.r3-ag-l button.on{opacity:1}
.r3-ag-l b{font-size:58px;font-weight:700;letter-spacing:-2px;line-height:1}
.r3-ag-l em{font-style:normal;font-size:15px;color:rgba(255,255,255,.4);text-align:center}
.r3-ag-l span{font-size:26px;font-weight:700;letter-spacing:-.5px;text-align:right;font-variant-numeric:tabular-nums}
.view.gradv,.view.gradv.teamv{background:transparent!important}
.view.gradv.teamv .t-h2{color:#fff}
.gradv .teambox{background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);backdrop-filter:blur(10px);color:#fff}
.gradv .teambox .pc{background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);transition:background .4s var(--e),transform .5s var(--e)}
.gradv .teambox .pc:hover{background:rgba(255,255,255,.08);transform:translateY(-3px)}
.gradv .teambox .pc .hs{background:rgba(255,255,255,.06)}
.gradv .teambox .pc .meta b{color:#fff}
.gradv .teambox .pc .meta span{color:rgba(255,255,255,.55)}
.team5[style*="--n:7"] .pc .hs{aspect-ratio:4/5}
.team5[style*="--n:7"] .pc .meta b{font-size:16px}
.r3-cr{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.r3-cr-c{background:var(--s1);border-radius:var(--r-l);padding:24px;display:flex;flex-direction:column}
.r3-cr-c b{margin-top:auto;font-size:21px;font-weight:700;letter-spacing:-.4px}
.r3-cr-c span{margin-top:6px;font-size:14px;line-height:1.4;color:var(--ink2)}
.r3-cr-v{flex:1;min-height:150px;margin-bottom:24px;border-radius:var(--r-m);background:#fff;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.r3-cr-v.mo::before{content:"";position:absolute;left:22px;right:22px;top:50%;height:2px;background:var(--s2)}
.r3-cr-v.mo i{position:absolute;left:14px;top:calc(50% - 9px);width:18px;height:18px;border-radius:50%;background:var(--ink);animation:r3slide 2.4s var(--e) infinite alternate}
.r3-cr-v.sh i{position:absolute;width:96px;height:96px;border:2px solid var(--ink)}
.r3-cr-v.sh i:first-child{border-radius:22px;border-color:var(--s3)}
.r3-cr-v.sh i:last-child{border-radius:30%/30%;animation:r3breath 3s var(--e) infinite alternate}
.r3-cr-v.ty{font-size:76px;font-weight:700;animation:r3track 3s var(--e) infinite alternate}
.r3-cr-v.hl{flex-direction:column;gap:22px;align-items:stretch;padding:0 26px}
.r3-cr-v.hl i{height:1px;background:var(--ink);transform-origin:left;animation:r3line 2.6s var(--e) infinite}
.r3-cr-v.hl i:nth-child(2){animation-delay:.25s}
.r3-cr-v.hl i:nth-child(3){animation-delay:.5s}
.r3-cr-v.px{display:grid;grid-template-columns:repeat(4,22px);gap:6px;align-content:center}
.r3-cr-v.px i{width:22px;height:22px;border-radius:5px;background:var(--s2);animation:r3cell 3.2s var(--e) infinite;animation-delay:calc(var(--k)*90ms)}
.r3-mg{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.r3-ld-c{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:4px;padding:20px;border-radius:var(--r-l);background:var(--s1);transition:background .35s var(--e),color .35s}
.r3-ld-c b{font-size:17px;font-weight:700;letter-spacing:-.3px}
.r3-ld-c em{font-style:normal;font-size:14px;color:var(--ink2)}
.r3-ld-c.on{background:var(--ink);color:#fff}
.r3-ld-c.on em{color:rgba(255,255,255,.65)}
.r3-ld-d{background:#fff;box-shadow:inset 0 0 0 1px var(--s2);border-radius:var(--r-xl);padding:36px}
.r3-ld-d h3{margin-top:10px;font-size:32px;font-weight:700;letter-spacing:-1px;line-height:1.1}
.r3-ld-d p{margin-top:22px;font-size:19px;line-height:1.45}
.r3-ld-d ul{margin-top:24px;padding:0;list-style:none;border-top:1px solid var(--s2)}
.r3-cd-d{margin-top:auto;background:#fff;box-shadow:inset 0 0 0 1px var(--s2);border-radius:var(--r-l);padding:22px 24px;min-height:200px}
.r3-cd-d h4{font-size:21px;font-weight:700;letter-spacing:-.4px}
.r3-cd-d dl{margin:12px 0 0;display:grid;grid-template-columns:70px 1fr;row-gap:8px;font-size:14px}
.r3-cd-d dt{color:var(--ink3)}
.r3-cd-d dd{margin:0}
.r3-se{display:flex;flex-direction:column}
.r3-se-top{display:flex;align-items:center;gap:18px;padding:18px 26px;border-radius:var(--r-l);background:var(--ink);color:#fff}
.r3-se-top b{font-size:21px}
.r3-se-top > span:last-child{margin-left:auto;font-size:14px;color:rgba(255,255,255,.6)}
.r3-se-w{width:100%;height:44px}
.r3-se-w path{fill:none;stroke:var(--s3);stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-dasharray:4 5;animation:r3dash 1.4s linear infinite reverse}
.r3-se-p{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.r3-se-c{background:var(--s1);border-radius:var(--r-xl);padding:28px 30px}
.r3-se-c h4{font-size:24px;font-weight:700;letter-spacing:-.6px}
.r3-se-c ul{margin:14px 0 0;padding:0;list-style:none}
.r3-se-c li{padding:9px 0 9px 18px;position:relative;font-size:15px;line-height:1.4;border-top:1px solid var(--s2)}
.r3-se-c li::before{content:"";position:absolute;left:0;top:16px;width:6px;height:6px;border-radius:50%;background:var(--ink)}
.r3-sc{display:flex;flex-direction:column;gap:24px;--p:66.6%}
.r3-sc-rail{position:relative;padding:0 12.5%}
.r3-sc-rail input{position:absolute;left:12.5%;right:12.5%;width:75%;top:6px;margin:0;opacity:0;height:24px;cursor:pointer;z-index:3}
.r3-sc-rail::before,.r3-sc-rail::after{content:"";position:absolute;left:12.5%;top:16px;height:4px;border-radius:2px}
.r3-sc-rail::before{right:12.5%;background:var(--s2)}
.r3-sc-rail::after{width:calc(75% * var(--pp,.666));background:var(--ink);transition:width .5s var(--e)}
.r3-sc[data-lv="0"]{--pp:0}
.r3-sc[data-lv="1"]{--pp:.3333}
.r3-sc[data-lv="2"]{--pp:.6667}
.r3-sc[data-lv="3"]{--pp:1}
.r3-sc-stops{position:relative;display:grid;grid-template-columns:repeat(4,1fr);margin:0 -12.5%}
.r3-sc-stops button{position:relative;z-index:4;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:15px}
.r3-sc-stops i{width:28px;height:28px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 2px var(--s3);transition:box-shadow .3s,background .3s}
.r3-sc-stops .on i{box-shadow:inset 0 0 0 2px var(--ink)}
.r3-sc-stops .cur i{background:var(--ink);box-shadow:0 0 0 6px rgba(29,29,31,.1)}
.r3-sc-stops b{font-weight:600}
.r3-sc-stops em{font-style:normal;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}
.r3-sc-cols{flex:1;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.r3-sc-c{background:var(--s1);border-radius:var(--r-l);padding:24px 26px;opacity:.4;transition:opacity .45s var(--e),background .45s,color .45s}
.r3-sc-c.on{opacity:1}
.r3-sc[data-lv="0"] .r3-sc-c[data-l="0"],.r3-sc[data-lv="1"] .r3-sc-c[data-l="1"],.r3-sc[data-lv="2"] .r3-sc-c[data-l="2"],.r3-sc[data-lv="3"] .r3-sc-c[data-l="3"]{background:var(--ink);color:#fff}
.r3-sc-c h4{margin-top:6px;font-size:24px;font-weight:700;letter-spacing:-.6px}
.r3-sc-c ul{margin:14px 0 0;padding:0;list-style:none}
.r3-sc-c li{padding:8px 0;font-size:15px;line-height:1.35;border-top:1px solid var(--s2)}
.r3-sc-c.on[class]{border-color:transparent}
.r3-cl{display:flex;flex-direction:column;justify-content:center}
.view.cov.gradv{padding:0}
.cvx{position:absolute;inset:0}
.cvx-img{position:absolute;left:96px;right:96px;top:171px;height:556px;border-radius:var(--r-xl);overflow:hidden;display:block;cursor:pointer}
.cvx-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 1.6s var(--e)}
.view.in .cvx-img img{transform:none}
.cvx-img:hover img{transform:scale(1.015)}
.cvx-img::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 55%,rgba(0,0,0,.34),rgba(0,0,0,.12) 70%),rgba(0,0,0,.12)}
.cvx-t{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding:0 60px}
.cvx-p{font-size:19px;letter-spacing:-.01em;animation:r3fade .8s var(--e) .25s both}
.cvx-h{display:block;margin-top:8px;font-size:104px!important;font-weight:700;letter-spacing:-4.2px;line-height:1;animation:r3fade .9s var(--e) .35s both}
.cvx-by{position:absolute;right:96px;top:794px;display:flex;align-items:center;gap:22px;color:#fff;font-size:17px;letter-spacing:-.02em;animation:r3fade .8s var(--e) .5s both}
.cvx-by b{font-weight:700}
.cvx-av{width:52px!important;height:52px!important}
body.m .cvx{position:relative;padding:90px 18px 120px}
body.m .cvx-img{position:relative;left:auto;right:auto;top:auto;height:62vh;border-radius:var(--r-l)}
body.m .cvx-h{font-size:52px!important;letter-spacing:-2px}
body.m .cvx-by{position:relative;right:auto;top:auto;margin-top:20px;justify-content:flex-end;font-size:14px}
.chap{background:transparent!important;padding:0!important;gap:52px}
.chap .thumb{display:none!important}
.chap button{height:auto!important;padding:6px 0!important;border-radius:0!important;background:transparent!important;font-size:17px!important;font-weight:400!important;letter-spacing:-.02em!important;color:var(--ink)!important;opacity:.32;transition:opacity .35s var(--e)}
.chap button:hover{opacity:.7}
.chap button.on{opacity:1}
.chap button .n{display:none!important}
body.dk .chap button,body.dk .chap button.on{color:#fff!important}
.gridtop{background:transparent!important;padding:0!important;width:36px;justify-content:center;opacity:.85;transition:opacity .25s}
.gridtop:hover{opacity:1}
.gridtop .gt-l{display:none!important}
.gridtop svg{width:20px!important;height:20px!important}
body.gridv .gridtop .ic-exp{stroke:var(--ink)!important}
body.gridv.dk .gridtop .ic-exp,body.dk .gridtop .ic-exp{stroke:#fff!important}
body:not(.m) .bnav .ctrl{display:none!important}
.r3-qx{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.r3-qx-e{margin-bottom:22px;font-size:19px;letter-spacing:-.01em;color:rgba(255,255,255,.75);animation:r3fade .7s var(--e) .1s both}
.r3-qx-t{max-width:1240px;font-size:84px;font-weight:700;letter-spacing:-3px;line-height:1.04;color:#fff;text-shadow:0 4px 60px rgba(8,12,30,.6);animation:r3fade 1s var(--e) .3s both}
.r3-qx-t span{color:rgba(255,255,255,.55)}
body.m .r3-qx-t{font-size:40px;letter-spacing:-1.4px}
.gradv .eyebrow{color:rgba(255,255,255,.62)}
.gradv .t-h2{color:#fff}
.gradv .t-body.muted{color:rgba(255,255,255,.62)}
.gradv .r3-cr-c{background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);backdrop-filter:blur(8px)}
.gradv .r3-cr-c b{color:#fff}
.gradv .r3-cr-c span{color:rgba(255,255,255,.55)}
.gradv .r3-cr-v{background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.gradv .r3-cr-v.mo::before{background:rgba(255,255,255,.14)}
.gradv .r3-cr-v.mo i{background:#fff;box-shadow:0 0 18px rgba(200,212,255,.6)}
.gradv .r3-cr-v.sh i{border-color:#fff}
.gradv .r3-cr-v.sh i:first-child{border-color:rgba(255,255,255,.22)}
.gradv .r3-cr-v.ty{color:#fff}
.gradv .r3-cr-v.hl i{background:rgba(255,255,255,.85)}
.gradv .r3-cr-v.px i{animation-name:r3cellD}
.cvx-avs{display:flex}
.cvx-avs .cvx-av + .cvx-av{margin-left:-12px}
.gradv .t-body:not(.muted){color:rgba(255,255,255,.9)}
.r3-bp{position:relative;width:100%;max-width:640px;aspect-ratio:640/560;justify-self:center;align-self:center}
body.m .r3-bp{width:100%;height:auto;aspect-ratio:640/560}
body.fb:not(.m) #stage,body.fb:not(.m) #views,body.fb:not(.m) .view.in{overflow:visible!important}
.qbp{position:absolute;inset:0;pointer-events:none}
.qbp-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.tb-l{fill:none;stroke:var(--c);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:.1 7;opacity:.24}
.tb-m{fill:none;stroke:#fff;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:tbDraw 2.6s cubic-bezier(.45,.05,.25,1) forwards;animation-delay:var(--d)}
.tb-s{fill:#0f1626;stroke:var(--c);stroke-width:2.2;opacity:0;transform-box:fill-box;transform-origin:center;animation:tbStop .6s var(--e) forwards;animation-delay:var(--d)}
.view.gradv{--s1:rgba(255,255,255,.05);--s2:rgba(255,255,255,.10);--s3:rgba(255,255,255,.20);--ink:#fff;--ink2:rgba(255,255,255,.62);--ink3:rgba(255,255,255,.42);--accent:#9cc6f2;color:#fff}
.gradv :is(.r3-seg button.on,.r3-ld-c.on,.r3-co-n.on,.r3-qs-t button.on,.r3-os-g button.on,.r3-cw-n.on,.r3-cd-m.on,.r3-hs-c.go,.r3-pu-c:last-child,.r3-sp-c,.r3-se-top,.r3-tk-ld,.r3-tk-b.sh,.r3-tk-b.ld,.r3-tk-chip.ld,.r3-sm-t,.r3-vv-n.on){background:rgba(120,170,235,.20)!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(150,198,245,.7),0 0 30px rgba(120,160,255,.12)!important}
.gradv .r3-sc[data-lv="0"] .r3-sc-c[data-l="0"],.gradv .r3-sc[data-lv="1"] .r3-sc-c[data-l="1"],.gradv .r3-sc[data-lv="2"] .r3-sc-c[data-l="2"],.gradv .r3-sc[data-lv="3"] .r3-sc-c[data-l="3"]{background:rgba(120,170,235,.20);box-shadow:inset 0 0 0 1px rgba(150,198,245,.7)}
.gradv :is(.r3-ld-d,.r3-os-p,.r3-cw-d,.r3-cd-d,.r3-cd-m,.r3-sm-s,.r3-co-n,.r3-vv-n,.r3-de-io.out span,.r3-ld-c,.r3-qs-t button,.r3-os-g button,.r3-cw-n,.r3-hs-c,.r3-pu-c,.r3-se-c,.r3-sc-c,.r3-nb-c,.r3-pf-c,.r3-ev-c,.r3-sm-v,.r3-au-in span,.r3-de-io span,.r3-cw-s span,.r3-cd-slot,.r3-cd-m.wide,.r3-seg){background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);backdrop-filter:blur(8px)}
.gradv .r3-se-w path{stroke:rgba(150,198,245,.45)}
.gradv .r3-sc-stops i{background:#0f1626;box-shadow:inset 0 0 0 2px rgba(150,198,245,.4)}
.gradv .r3-sc-stops .on i{box-shadow:inset 0 0 0 2px #9cc6f2}
.gradv .r3-sc-stops .cur i{background:#9cc6f2;box-shadow:0 0 0 6px rgba(150,198,245,.18)}
.gradv .r3-sc-rail::after{background:#9cc6f2}
.r3-ld-n{font-size:12px;font-weight:700;letter-spacing:.06em;color:rgba(150,198,245,.85)}
.r3-ld-c b{font-size:18px;line-height:1.2}
.r3-ld-tag{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.r3-ld-tag.op{background:#fff;color:#1d1d1f}
.r3-ld-tag.co{background:rgba(120,170,235,.22);color:#cfe3fb;box-shadow:inset 0 0 0 1px rgba(150,198,245,.5)}
.r3-ld-d h3{margin-top:16px!important}
.r3-ld-d{display:grid}
.r3-ld-d .r3-pn{grid-area:1/1;display:block!important;visibility:hidden;opacity:0;animation:none!important;transition:opacity .3s var(--e),visibility 0s .3s}
.r3-ld-d .r3-pn.on{visibility:visible;opacity:1;transition:opacity .3s var(--e)}
.r3-ld-d{align-self:start;max-height:none;padding:34px 36px 38px!important}
.r3-ld-d p{font-size:17px!important;line-height:1.5!important}
.r3-ld-c:focus,.r3-ld-c:focus-visible{outline:none}
body.gated #views{visibility:visible!important}
#gate{background:transparent!important;pointer-events:none}
#gate .gate-card{inset:0!important;border-radius:0!important;background:none!important;display:block!important}
#gate .gate-in{position:absolute;left:50%;top:600px;margin:0 0 0 -210px!important;width:420px;pointer-events:auto;animation:r3fade .8s var(--e) 1.4s both}
#gate .gate-logo{display:none!important}
#gate .gate-h{margin:0!important;font-size:19px!important;font-weight:400!important;letter-spacing:-.01em!important;color:rgba(255,255,255,.75)!important;text-align:center}
#gate #gateForm{margin-top:22px!important}
#gate #gatePw{height:52px!important;background:rgba(255,255,255,.07)!important;color:#fff!important;text-align:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)!important;backdrop-filter:blur(8px)}
#gate #gatePw::placeholder{color:rgba(255,255,255,.45)!important}
#gate #gatePw:focus{box-shadow:inset 0 0 0 1px rgba(156,198,242,.8),0 0 30px rgba(120,160,255,.18)!important}
#gate .gate-row{justify-content:center!important;gap:16px;flex-direction:column;margin-top:18px!important}
#gate .gate-row .cta{height:44px!important;padding:0 28px!important;font-size:15px!important;background:#000!important;color:#fff!important}
#gate .gate-err{color:#ffb4a8!important;min-height:16px;order:2}
#gate .gate-help{bottom:16px!important;color:rgba(255,255,255,.45)!important;font-size:12px!important;pointer-events:auto}
#gate .gate-help a{color:rgba(255,255,255,.7)!important}
body.gated .cv-copy{opacity:0;visibility:hidden}
body.gated .cv-img{animation:none!important;clip-path:inset(100% 0 0 0);opacity:0}
body.gated .cv-out{animation:none!important;opacity:1}
body.gated .cv-glow,body.gated .cv-aura{animation:none!important;opacity:0}
body.unlock .cv-img{animation-delay:.15s!important}
body.unlock .cv-out{animation-delay:1.6s!important}
body.unlock .view.in .cv-glow{animation-delay:1.2s,2.6s!important}
body.unlock .view.in .cv-aura{animation-delay:1.4s,0s,3.2s!important}
body.unlock .cv-copy{animation:r3fade .9s var(--e) 1.5s both}
.view.homev.in,.view.homev.in.back,.view.homev.in.jump{animation:homeFade .9s ease both!important}
body.hi #stage,body.gated #stage,body.unlock #stage{transition:none!important}
#gate .gate-in{animation:homeFade .8s ease 1.4s both!important}
body.unlock .cv-copy{animation:homeFade .9s ease 1.5s both!important}
.cv-apple .cv-img{animation-name:cvFill}
.r3-ag-l > button > span{display:inline-flex;justify-content:flex-end;line-height:1}
.od{display:inline-block;height:1em;overflow:hidden;line-height:1}
.od-s{display:flex;flex-direction:column;transform:translateY(0);transition:transform 1.3s cubic-bezier(.2,.8,.2,1),filter 1.3s ease;transition-delay:calc(var(--i)*90ms);filter:blur(1.5px)}
.od-s i{font-style:normal;height:1em;line-height:1;display:block}
.go .od-s{transform:translateY(calc(var(--n)*-1em));filter:blur(0)}
.od-c{display:inline-block;line-height:1}
.r3-cr-c{display:grid!important;grid-template-rows:1fr auto auto}
.r3-cr-v{flex:none!important;height:auto!important;min-height:0!important}
.r3-cr-c > b{margin-top:0!important}
.r3-cr-c > span{min-height:2.9em}
.r3-cd-d{margin-top:0!important;flex:1;display:grid!important;align-content:start;padding:26px 26px!important;position:relative;overflow:hidden}
.r3-cd-d::before{content:"";position:absolute;left:24px;right:24px;top:0;height:1px;background:linear-gradient(90deg,rgba(156,198,242,0),rgba(156,198,242,.85),rgba(156,198,242,0))}
.r3-cd-d .r3-pn{grid-area:1/1;display:block!important;visibility:hidden;opacity:0;animation:none!important;transition:opacity .3s var(--e),visibility 0s .3s}
.r3-cd-d .r3-pn.on{visibility:visible;opacity:1;transition:opacity .3s var(--e)}
.r3-cd-d h4{font-size:24px!important}
.r3-cd-d dl{margin-top:16px!important;row-gap:12px!important;font-size:15px!important}
.r3-cd-d dl dt,.r3-cd-d dl dd{padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.07)}
.ns2{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:22px;align-items:stretch;max-height:470px}
.ns2-line{position:absolute;left:8%;right:8%;top:62px;height:2px;background:linear-gradient(90deg,rgba(156,198,242,.25),rgba(156,198,242,.6));transform-origin:left;animation:nsLine 1.6s var(--e) .2s both}
.ns2-c{position:relative;z-index:1;display:flex;flex-direction:column;padding:38px 30px 30px;border-radius:var(--r-xl);background:rgba(18,26,44,.85);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);backdrop-filter:blur(8px);animation:r3fade .6s var(--e) both;animation-delay:calc(.3s + var(--i)*.14s)}
.ns2-n{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-size:17px;font-weight:700;color:#fff;background:#0b1120;box-shadow:inset 0 0 0 1.5px rgba(156,198,242,.55)}
.ns2-c em{margin-top:40px;font-style:normal;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#9cc6f2}
.ns2-c h4{margin-top:10px;font-size:28px;font-weight:700;letter-spacing:-.8px;line-height:1.12;color:#fff}
.ns2-c p{margin-top:16px;font-size:15px;line-height:1.5;color:rgba(255,255,255,.6)}
.ns2-c.go{background:rgba(120,170,235,.22);box-shadow:inset 0 0 0 1px rgba(150,198,245,.75),0 0 50px rgba(120,160,255,.18)}
.ns2-c.go .ns2-n{background:#9cc6f2;color:#0b1120;box-shadow:none}
.ns2-c.go em{color:#cfe3fb}
.ns2-c.go p{color:rgba(255,255,255,.8)}
#overview{background:transparent!important;color:#fff}
body.ov #views{opacity:0!important;transition:opacity .3s}
#overview .eyebrow{color:rgba(255,255,255,.55)!important}
#overview .ovgrid{gap:18px}
#overview .ovt{overflow:hidden;padding:0!important;background:rgba(255,255,255,.05)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);color:#fff;transition:background .35s var(--e),box-shadow .35s,transform .45s var(--e)}
#overview .ovt:hover{background:rgba(120,170,235,.14)!important;box-shadow:inset 0 0 0 1px rgba(150,198,245,.55);transform:translateY(-2px)}
#overview .ovt .thumbimg{position:relative!important;inset:auto!important;display:block;height:46%;flex:none;border-radius:0;opacity:1!important;order:-1}
#overview .ovt .thumbimg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,8,11,0) 40%,rgba(5,8,11,.55))}
#overview .ovt .thumbimg img{transition:transform .8s var(--e)}
#overview .ovt:hover .thumbimg img{transform:scale(1.04)}
#overview .ovt .n{margin:18px 22px 0;font-size:12px;font-weight:700;letter-spacing:.08em;color:#9cc6f2!important}
#overview .ovt .lb{display:none}
#overview .ovt .tt{margin:6px 22px 0;font-size:22px!important;color:#fff;max-width:none}
#overview .ovt .ft{margin:auto 22px 18px}
#overview .ovt .mini i{background:rgba(255,255,255,.3)!important}
#overview .ovt .av{box-shadow:0 0 0 2px rgba(255,255,255,.85)}
#overview .ovt.cur{background:rgba(120,170,235,.18)!important;box-shadow:inset 0 0 0 1.5px #9cc6f2,0 0 40px rgba(120,160,255,.15)!important}
#overview .ovt.cur .n::after{content:" · You are here";color:rgba(255,255,255,.6);font-weight:500;letter-spacing:0}
.pr3{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-bottom:40px}
.pr3-k{font-size:15px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9cc6f2;animation:r3fade .8s var(--e) .2s both}
.view .pr3-h{margin-top:28px;max-width:1340px!important;font-size:74px!important;line-height:1.08!important;font-weight:700;letter-spacing:-2.8px!important;color:#fff;animation:r3fade 1s var(--e) .4s both}
.pr3-h span{display:block;text-wrap:balance;color:rgba(255,255,255,.55);animation:r3fade 1s var(--e) .9s both}
.r3-cl{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.cl2-k{font-size:15px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9cc6f2;animation:r3fade .8s var(--e) .2s both}
.view .cl2-h{margin-top:18px;font-size:120px!important;line-height:1!important;font-weight:700;letter-spacing:-5px!important;color:#fff;animation:r3fade 1s var(--e) .35s both}
.cl2-t{margin-top:56px;display:flex;gap:18px}
.cl2-u{width:220px;padding:26px 0 22px;border-radius:var(--r-xl);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);backdrop-filter:blur(8px);animation:r3fade .8s var(--e) both;animation-delay:calc(.7s + var(--i)*.12s)}
.cl2-u.d{background:rgba(120,170,235,.2);box-shadow:inset 0 0 0 1px rgba(150,198,245,.7),0 0 50px rgba(120,160,255,.18)}
.cl2-u b{display:block;font-size:96px;line-height:1;font-weight:700;letter-spacing:-3px;color:#fff;font-variant-numeric:tabular-nums}
.cl2-u span{display:block;margin-top:10px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.cl2-u.d span{color:#cfe3fb}
.cl2-f{margin-top:34px;display:flex;gap:30px;font-size:16px;color:rgba(255,255,255,.6);animation:r3fade .8s var(--e) 1.3s both}
.cl2-f span+span::before{content:"·";margin-right:30px;color:rgba(255,255,255,.3)}
.cl2-f b{color:#fff;font-weight:700}
#gridv{background:transparent!important}
body.gridv #views,body.gridv .bnav .owner{opacity:0!important;transition:opacity .3s}
body.gridv #gridv .gv-head .eyebrow{color:rgba(255,255,255,.55)!important}
#gridv .gv-lab{border-color:rgba(156,198,242,.22)!important}
#gridv .gv-lab b{color:#9cc6f2!important}
#gridv .gv-img{background:rgba(255,255,255,.05)!important;box-shadow:0 0 0 1px rgba(255,255,255,.12)!important;border-radius:14px}
#gridv .gv-card:hover .gv-img{box-shadow:0 0 0 1.5px rgba(150,198,245,.8),0 14px 34px rgba(0,0,0,.35)!important}
#gridv .gv-card.on .gv-img{box-shadow:0 0 0 2px #9cc6f2,0 0 40px rgba(120,160,255,.25)!important}
#gridv .gv-card.on .gv-t{color:#fff!important}
#gridv .gv-card.on .gv-t::before{content:"Current · ";color:#9cc6f2;font-weight:600}
body.gridv .gnav,body.gridv.dk .gnav{background:none!important;backdrop-filter:none}
body.gridv .bnav,body.gridv.dk .bnav{background:none!important}
body.gridv .gridtop,body.gridv.dk .gridtop{background:rgba(255,255,255,.1)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
body.gridv .gridtop .ic-exp,body.gridv.dk .gridtop .ic-exp{stroke:#fff!important}
#gridv{-webkit-mask-image:linear-gradient(180deg,transparent 0,transparent 78px,#000 128px,#000 calc(100% - 90px),transparent);mask-image:linear-gradient(180deg,transparent 0,transparent 78px,#000 128px,#000 calc(100% - 90px),transparent)}
body.gridv .gnav .crumb,body.gridv #chap{opacity:0!important;pointer-events:none;transition:opacity .3s}
.view.whitev{background:#fff!important}
.whitev .r3-qx-t,.whitev .pr3-h{background:linear-gradient(100deg,#05080b 0%,#1a2645 42%,#3a5cc0 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;text-shadow:none!important}
.whitev .r3-qx-t span,.whitev .pr3-h span{background:linear-gradient(100deg,#7d879e 0%,#8e9cc0 50%,#9db3e8 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;opacity:1}
.whitev .pr3-h span{animation:none!important}
.whitev .r3-qx-e{color:#3a5cc0!important;font-weight:600}
.whitev .pr3-k{color:#3a5cc0!important}
.whitev .tb-l{opacity:.5}
.whitev .tb-s{fill:#fff}
body.wh #chap button:not(.on){opacity:.55!important}
body.wh #chap button.on{opacity:1!important;color:#05080b!important}
.pr3{position:absolute!important;inset:0;padding:0 var(--mx)!important;display:flex;flex-direction:column;align-items:center;justify-content:center}
.view .pr3-h{max-width:none!important;font-size:74px!important;line-height:1.12!important;letter-spacing:-2.8px!important;white-space:nowrap}
.pr3-h span{display:block!important;width:max-content;margin:0 auto}
.pr3-k{margin-top:-20px}
.whitev .r3-qx-t,.whitev .pr3-h,.whitev .r3-qx-t span,.whitev .pr3-h span{background:linear-gradient(100deg,#0b0e14 0%,#1a2236 40%,#212C44 70%,#273352 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;opacity:1!important}
.whitev .r3-qx-e,.whitev .pr3-k{color:#212C44!important;font-size:19px!important;font-weight:500!important;letter-spacing:-.01em!important;text-transform:none!important}
body.wh #chap button:not(.on){opacity:.3!important}
body.wh #chap button.on{color:#212C44!important}
.whitev .cl2-k{color:#212C44!important;font-size:19px!important;font-weight:500!important;letter-spacing:-.01em!important;text-transform:none!important}
.whitev .cl2-h{background:linear-gradient(100deg,#0b0e14 0%,#1a2236 40%,#212C44 70%,#273352 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.whitev .cl2-u{background:#f4f6fa!important;box-shadow:inset 0 0 0 1px rgba(33,44,68,.08)!important;backdrop-filter:none}
.whitev .cl2-u b{color:#212C44!important}
.whitev .cl2-u span{color:rgba(33,44,68,.55)!important}
.whitev .cl2-u.d{background:#212C44!important;box-shadow:0 18px 40px rgba(33,44,68,.25)!important}
.whitev .cl2-u.d b{color:#fff!important}
.whitev .cl2-u.d span{color:rgba(255,255,255,.7)!important}
.whitev .cl2-f{color:rgba(33,44,68,.6)!important}
.whitev .cl2-f b{color:#212C44!important}
.whitev .cl2-f span+span::before{color:rgba(33,44,68,.25)!important}
body::before{content:"";position:fixed;inset:0;background:#fff;opacity:0;pointer-events:none;z-index:0;transition:opacity .55s ease}
body.wh::before{opacity:1}
#stage{z-index:1;background:transparent!important}
.view.whitev{background:transparent!important}
.view.whitev.in,.view.whitev.in.back,.view.whitev.in.jump{animation:homeFade .55s ease both!important}
.whitev .r3-qx-e,.whitev .r3-qx-t,.whitev .pr3-k,.whitev .pr3-h,.whitev .pr3-h span,.whitev .cl2-k,.whitev .cl2-h,.whitev .cl2-u,.whitev .cl2-f{animation:homeFade .6s ease both!important;animation-delay:.1s!important;transform:none!important}
.whitev .cl2-u{animation-delay:calc(.15s + var(--i)*.06s)!important}
.r3-qx-b{margin-top:30px;max-width:760px;font-size:19px;line-height:1.55;letter-spacing:-.01em;color:rgba(255,255,255,.62);text-align:center;animation:homeFade .9s ease .8s both}
.view .cl2-h{line-height:1.12!important;padding-bottom:.08em}
.cl2-u b{display:inline-flex!important;justify-content:center}
.rd{position:relative;display:inline-block;height:1em;line-height:1;overflow:hidden;vertical-align:top}
.rd i{display:block;font-style:normal;height:1em;line-height:1}
.view .cl2-u:is(.d,.h,.m,.s) b .rd{display:inline-block!important;margin:0!important;font-size:inherit!important;font-weight:inherit!important;letter-spacing:inherit!important;text-transform:none!important;color:inherit!important;height:1.02em}
.view .cl2-u:is(.d,.h,.m,.s) b .rd i{font-size:inherit!important;color:inherit!important;width:auto;opacity:1}
.rd i.rout{position:absolute;left:0;right:0;top:0;animation:rdOut .8s cubic-bezier(.22,.9,.24,1) forwards}
.rd i.rin{animation:rdIn .8s cubic-bezier(.22,.9,.24,1) both}
.r3-mg{align-items:stretch!important;gap:20px!important}
.r3-mg > *{border-radius:var(--r-xl);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);min-height:0}
.r3-mg > .col{padding:48px 52px;display:flex;flex-direction:column;justify-content:center}
.r3-mg > :not(.col){display:flex;align-items:center;justify-content:center;overflow:hidden}
.r3-mg{grid-template-columns:1fr auto!important}
.r3-mg > .r3-bp{display:block!important;height:100%!important;width:auto!important;max-width:none!important;aspect-ratio:640/560!important;justify-self:end!important;align-self:stretch!important;overflow:visible!important}
.r3-mg > .r3-bp{background:none!important;box-shadow:none!important;scale:.8;isolation:isolate}
.r3-mg > .r3-bp::before{content:"";position:absolute;inset:-12.5%;border-radius:40px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1.25px rgba(255,255,255,.09);z-index:-1;pointer-events:none}
.view .home-body{font-size:12.35px!important;line-height:1.5!important;letter-spacing:0!important;margin-top:14px!important}
body.m .cvx-img{width:100%!important;align-self:stretch!important;height:52vh!important;min-height:300px}
body.m .cvx-h{font-size:40px!important;letter-spacing:-1.4px!important}
body.m .r3-ag-l button{grid-template-columns:1fr auto!important;grid-template-rows:auto auto;height:auto!important;padding:12px 0!important;row-gap:4px}
body.m .r3-ag-l b{font-size:26px!important;letter-spacing:-.8px!important;grid-column:1/-1}
body.m .r3-ag-l em{text-align:left!important;font-size:13px!important}
body.m .r3-ag-l > button > span{font-size:18px!important}
body.m :is(.r3-cr,.r3-hs,.r3-pu,.pr-cards,.ns2,.r3-nb,.r3-mg,.r3-sp,.r3-cw,.cw2-g,.r3-ld,.r3-os,.r3-qs,.r3-cd,.r3-ev,.r3-au,.r3-tk-f,.r3-sm,.r3-se-w,.r3-sc-g,.r3-ly){display:grid!important;grid-template-columns:1fr!important;gap:14px!important;max-height:none!important}
body.m :is(.r3-ld-d,.r3-tk-dw,.r3-cw-d,.r3-cd-side,.r3-qs-p,.r3-os-p){width:auto!important;max-width:100%!important}
body.m .r3-mg > .r3-bp{width:100%!important;height:auto!important;scale:.9;justify-self:center!important}
body.m .view .pr3-h{white-space:normal!important;font-size:36px!important;letter-spacing:-1px!important;line-height:1.15!important}
body.m .pr3{position:relative!important;inset:auto;min-height:70vh;padding:0!important}
body.m .pr3-h span{width:auto!important;display:inline!important}
body.m .view .cl2-h{font-size:52px!important;letter-spacing:-2px!important}
body.m .cl2-t{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px!important;width:100%}
body.m .cl2-u{width:auto!important;padding:18px 0 14px!important}
body.m .cl2-u b{font-size:56px!important}
body.m .cl2-f{flex-direction:column;gap:6px!important;text-align:center;font-size:14px!important}
body.m .cl2-f span+span::before{display:none}
body.m .r3-qx-t{font-size:34px!important;letter-spacing:-1px!important}
body.m .r3-qx-b{font-size:15px!important}
body.m #gate .gate-in{top:420px!important;width:calc(100% - 48px)!important;margin-left:calc(-50% + 24px)!important}
body.m #gate .gate-help{bottom:22px!important}
body.m #gridv{padding-left:20px!important;padding-right:20px!important}
body.m #gridv .gv-row{grid-template-columns:1fr 1fr!important;gap:12px!important}
body.m #gridv .gv-lab{font-size:20px!important}
body.m :is(.r3-se-p,.r3-sc-cols){display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
body.m .r3-cr-v{min-height:160px!important;height:160px!important}
:is(h1,h2,h3,h4,p,li,dd,.t-body){text-wrap:pretty}
.cv-bar{justify-content:flex-start}
.cv-bar{top:0;height:0}
.cv-logo{position:absolute;left:50%;top:calc(var(--vt,0px) + 40px * var(--is,1));width:46px;height:28px;margin:0 0 0 -23px;background:#fff;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}
.cv-apple{position:absolute;left:50%;top:207px;width:258px;height:316px;margin-left:-129px;z-index:5}
.cv-img{position:absolute;inset:0;background:var(--ap) center/100% 100% no-repeat;clip-path:inset(100% 0 0 0);opacity:0;animation:cvFill 1.6s cubic-bezier(.5,0,.2,1) 1.9s forwards}
.cv-out{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;animation:cvOutFade 1.2s var(--e) 3.4s forwards}
.ap-l{fill:none;stroke:rgba(150,198,245,.95);stroke-width:2.2;stroke-dasharray:7 6;vector-effect:non-scaling-stroke}
.ap-draw{stroke-dasharray:1;stroke-dashoffset:1;animation:bpDraw 1.9s cubic-bezier(.45,.05,.25,1) forwards;animation-delay:var(--d)}
.cv-glow,.cv-aura{opacity:0}
.view.in .cv-glow{animation:cvGlowIn 1.4s var(--e) 2.9s forwards,cvGlow 4.8s ease-in-out 4.3s infinite alternate}
.view.in .cv-aura{animation:cvGlowIn 1.8s var(--e) 3.1s forwards,cvSpin 28s linear infinite,cvAura 9s ease-in-out 4.9s infinite alternate}
.cv-glow,.cv-aura{position:absolute;left:50%;top:52%;border-radius:50%;pointer-events:none}
.cv-glow{width:470px;height:510px;margin:-255px 0 0 -235px;background:radial-gradient(closest-side,rgba(255,255,255,.62),rgba(232,238,255,.30) 45%,rgba(255,255,255,.08) 72%,rgba(255,255,255,0));filter:blur(30px);animation:cvGlow 4.8s ease-in-out infinite alternate}
.cv-aura{width:760px;height:760px;margin:-380px 0 0 -380px;background:conic-gradient(from 0deg,rgba(255,255,255,.20),rgba(196,210,255,.22),rgba(255,236,246,.16),rgba(214,250,255,.18),rgba(255,255,255,.20));-webkit-mask-image:radial-gradient(closest-side,#000 30%,transparent 100%);mask-image:radial-gradient(closest-side,#000 30%,transparent 100%);filter:blur(50px);animation:cvSpin 28s linear infinite,cvAura 9s ease-in-out infinite alternate}
.cv-copy{position:absolute;left:0;right:0;top:585px;display:flex;flex-direction:column;align-items:center;text-align:center;z-index:6}
.cv-copy .home-h{color:#fff}
.cv-copy .home-body{color:rgba(255,255,255,.78);max-width:none}
body.m .cv-br{display:none}
.cta.cv-cta{margin-top:30px;background:#000;color:#fff}
.cta.cv-cta:hover{background:#1d1d1f}
body.m .cv-bar{position:relative;left:auto;right:auto;top:auto;padding:22px 18px 0;height:auto;flex-direction:column;gap:22px;align-items:center}
body.m .cv-bar{padding-top:40px}
body.m .cv-logo{position:relative;left:auto;top:auto;margin:0;order:-1}
body.m .cv-apple{position:relative;left:auto;top:auto;margin:40px auto 0;width:220px;height:269px}
body.m .cv-glow{width:480px;height:420px;margin:-210px 0 0 -240px}
body.m .cv-copy{position:relative;top:auto;margin:36px 0 80px;padding:0 24px}
.home-body{margin-top:18px;max-width:600px;font-size:19px;line-height:1.42;letter-spacing:-.018em;color:#6e6e73}
body.hi:not(.m) #stage,body.hi:not(.m) #views,body.hi:not(.m) .view.homev{overflow:visible}
body.m .home-body{font-size:15px;max-width:none;padding:0 24px}
.view.teamv{background:#F1F1F1;padding-top:110px;padding-bottom:104px}
.teambox{flex:1;min-height:0;display:flex;flex-direction:column;background:#fff;border-radius:32px;padding:48px;margin-top:28px}
.teambox .team5{margin-top:0}
body.nv .gnav{background:rgba(241,241,241,.92)}
body.nv #stage{background:#F1F1F1}
body.nv .chap{background:#e8e8ed}
.team5{display:grid;grid-template-columns:repeat(var(--n,5),1fr);gap:20px;flex:1;min-height:0;margin-top:40px;align-content:center}
.pc{position:relative;display:flex;flex-direction:column;text-align:left;border-radius:var(--r-l);background:var(--s1);overflow:hidden;min-height:0;transition:background .35s var(--e)}
.pc{cursor:default}
.pc .meta{display:flex;flex-direction:column;flex:1}
.pc .hs{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--s2)}
.pc .hs img{object-position:50% 20%}
.pc .hs img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--e)}
.pc .meta{padding:16px 18px 18px}
.team5[style*="--n:8"]{gap:14px}
.team5[style*="--n:8"] .pc .hs{aspect-ratio:3/4}
.team5[style*="--n:8"] .pc .meta{padding:14px 14px 16px}
.pc .meta b{display:block;font-size:17px;letter-spacing:-.012em}
.pc .meta span{display:block;font-size:14px;color:var(--ink2);margin-top:2px;line-height:1.35}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:4px;border-radius:4px;background:var(--s2);outline:none;cursor:pointer}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.06),0 3px 10px rgba(0,0,0,.14)}
input[type=range]::-moz-range-thumb{width:28px;height:28px;border:0;border-radius:50%;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.06),0 3px 10px rgba(0,0,0,.14)}
input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--accent)}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}
}
.gnav .chap button{font-size:13.6px!important}
.ctm{order:-1;margin-right:12px;height:34px;min-width:64px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.01em;color:#fff;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);backdrop-filter:blur(10px);transition:background .4s,color .4s,box-shadow .4s}
.ctm.low{background:rgba(242,196,109,.18);box-shadow:inset 0 0 0 1px rgba(242,196,109,.6);color:#ffe2a8}
.ctm.over{background:rgba(255,143,126,.2);box-shadow:inset 0 0 0 1px rgba(255,143,126,.65);color:#ffd0c8}
body.wh .ctm{color:#212C44;background:rgba(33,44,68,.06);box-shadow:inset 0 0 0 1px rgba(33,44,68,.15)}
.owner .ctm{pointer-events:none}
.dg2 > :not(svg){display:none!important}
.dg2-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;font-family:var(--font)}
.dg2-ring{fill:none;stroke:rgba(150,198,245,.35);stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1;animation:bpDraw 1.6s var(--e) forwards;animation-delay:var(--d)}
.dg2-ring.o{stroke-dasharray:.006 .012;stroke-dashoffset:0;opacity:0;animation:bpIn .9s var(--e) forwards;animation-delay:var(--d)}
.dg2-sp{stroke:rgba(150,198,245,.4);stroke-width:1.2;stroke-dasharray:1;stroke-dashoffset:1;animation:bpDraw .8s var(--e) forwards;animation-delay:var(--d)}
.dg2-sp.o{stroke:rgba(150,198,245,.22)}
.dg2-core{fill:rgba(120,170,235,.22);stroke:#9cc6f2;stroke-width:1.5;filter:drop-shadow(0 0 22px rgba(120,160,255,.35))}
.dg2-ct{fill:#fff;font-size:17px;font-weight:700;text-anchor:middle;letter-spacing:-.3px}
.dg2-n{opacity:0;animation:bpIn .6s var(--e) forwards;animation-delay:var(--d)}
.dg2-n circle{fill:#121a2c;stroke:rgba(150,198,245,.55);stroke-width:1.3}
.dg2-n.in circle{fill:#2c3d63;stroke:#9cc6f2}
.dg2-n text{fill:#fff;font-size:12.5px;font-weight:600;text-anchor:middle}
.dg2-n.out text{fill:rgba(255,255,255,.82);font-size:11.5px;font-weight:500}
.dg2-lab{display:none}
.r3-mg > .r3-bp.dg2{scale:.86}
.r3-mg > .r3-bp.dg2::before{inset:-8.2%}
body.m .r3-mg > .r3-bp.dg2{scale:.96}
#pager{position:absolute;left:50%;bottom:34px;transform:translateX(-50%);z-index:30;display:flex;align-items:center;gap:6px;padding:4px;border-radius:999px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);backdrop-filter:blur(10px);opacity:.55;transition:opacity .35s}
#pager:hover{opacity:1}
#pager.hide,body.gated #pager,body.gridv #pager,body.ov #pager,body.m #pager{opacity:0;pointer-events:none}
.pg-b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;transition:background .25s}
.pg-b:hover{background:rgba(255,255,255,.12)}
.pg-b:disabled{opacity:.3;pointer-events:none}
.pg-b svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pg-n{min-width:58px;text-align:center;font-size:12.5px;font-weight:600;letter-spacing:.02em;color:rgba(255,255,255,.75);font-variant-numeric:tabular-nums}
body.wh #pager{background:rgba(33,44,68,.04);box-shadow:inset 0 0 0 1px rgba(33,44,68,.12)}
body.wh .pg-b,body.wh .pg-n{color:#212C44}
body.wh .pg-b:hover{background:rgba(33,44,68,.08)}
.pg-n{display:none!important}
#pager{gap:2px!important}
body.cv .owner{opacity:0!important;visibility:hidden!important;transition:none!important}
body.cv .owner *{transition:none!important}
body:not(.m) .cvx-av{width:44px!important;height:44px!important}
body:not(.m) .cvx-by{translate:-4px 40px}
.r3-ag-l{margin-top:50px!important}
.r3-ag-l button{height:62px!important}
.r3-ag-l b{font-size:46px!important;letter-spacing:-1.6px!important}
.view.gradv .r3-se-top.r3-se-top{background:none!important;box-shadow:none!important;padding:6px 2px!important;border-radius:0!important;backdrop-filter:none!important}
.r3-se-top b{font-size:24px!important;letter-spacing:-.5px}
body.hi .gnav,body.hi .bnav{transition:none!important;visibility:hidden}
body.hi .gnav *,body.hi .bnav *{transition:none!important}
body.hi .mark img{filter:invert(1)}

@keyframes vin{from{opacity:0;transform:translateX(32px)}to{opacity:1;transform:none}}
@keyframes vinb{from{opacity:0;transform:translateX(-32px)}to{opacity:1;transform:none}}
@keyframes vjump{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}
@keyframes vout{to{opacity:0;transform:translateX(-18px)}}
@keyframes voutb{to{opacity:0;transform:translateX(18px)}}
@keyframes gshake{20%,60%{transform:translateX(-8px)}40%,80%{transform:translateX(8px)}}
@keyframes r3fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes r3slide{to{left:calc(100% - 32px)}}
@keyframes r3breath{from{border-radius:22px}to{border-radius:38% 38% 38% 38%/34%}}
@keyframes r3track{from{letter-spacing:4px}to{letter-spacing:-5px}}
@keyframes r3line{0%{transform:scaleX(0)}45%,100%{transform:scaleX(1)}}
@keyframes r3cell{0%,60%,100%{background:var(--s2)}20%{background:var(--ink)}}
@keyframes r3dash{to{stroke-dashoffset:-20}}
@keyframes r3cellD{0%,60%,100%{background:rgba(255,255,255,.08)}20%{background:#fff}}
@keyframes bpDraw{to{stroke-dashoffset:0}}
@keyframes bpIn{to{opacity:1}}
@keyframes tbDraw{to{stroke-dashoffset:0}}
@keyframes tbStop{from{opacity:0;transform:scale(.2)}to{opacity:.4;transform:scale(1)}}
@keyframes homeFade{from{opacity:0}to{opacity:1}}
@keyframes nsLine{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes rdOut{to{transform:translateY(-100%);opacity:0;filter:blur(1.5px)}}
@keyframes rdIn{from{transform:translateY(100%);opacity:0;filter:blur(1.5px)}to{transform:none;opacity:1;filter:none}}
@keyframes cvFill{0%{clip-path:inset(100% 0 0 0);opacity:.2}35%{opacity:1}100%{clip-path:inset(0 0 0 0);opacity:1}}
@keyframes cvOutFade{to{opacity:0}}
@keyframes cvGlowIn{from{opacity:0}to{opacity:1}}
@keyframes cvGlow{from{opacity:.45;transform:scale(.9)}to{opacity:1;transform:scale(1.1)}}
@keyframes cvSpin{to{transform:rotate(360deg)}}
@keyframes cvAura{from{opacity:.6}to{opacity:1}}

/* Day 3 — updated approach (#/day/3) --------------------------------------
   Arrangements for the new content. Everything here is built from the deck's
   existing tokens, card styles, colours and keyframes, and only targets
   classes introduced for day 3, so the round 2 slides render as before. */

/* Cards that enter one after another (timing from "Purpose-built teams") */
.stg > *{animation:r3fade .7s var(--e) both;animation-delay:calc(var(--i)*.25s)}

/* "Security scales to fit" rail with three stops, each on its card's left edge */

/* Responsibility table: "Every Detail" cards as rows, detail panel on the right */
.rt{display:grid;grid-template-columns:1fr 440px;gap:32px;align-items:start}
.rt-t{display:flex;flex-direction:column;gap:4px}
.rt-h,.rt-r.r3-ld-c{display:grid;grid-template-columns:28px 1fr 104px 104px;align-items:center;gap:14px}
.rt-h{padding:0 18px 6px}
.rt-r.r3-ld-c{padding:7px 18px;border-radius:var(--r-s)}
.rt-r b{font-size:17px;line-height:1.3}
.rt-na{padding-left:10px;font-size:15px;color:var(--ink3)}
.rt .r3-ld-d p{margin-top:8px}

/* Roles × asks: pick a role, the asks it leads and supports light up */
.mx{display:grid;grid-template-columns:300px 1fr;gap:32px}
.mx-roles{display:flex;flex-direction:column;gap:6px}
.mx-roles .al-lab{margin-bottom:6px}
.mx-roles .r3-ld-c{flex-direction:row;align-items:center;gap:12px;padding:9px 16px;border-radius:var(--r-s)}
.mx-roles .r3-ld-c b{font-size:15px;line-height:1.3}
.mx-key{margin-top:auto;display:flex;gap:18px;font-size:14px;color:var(--ink2)}
.mx-key span{display:inline-flex;align-items:center;gap:8px}
.mx-g{display:grid;grid-template-columns:repeat(4,1fr);align-content:start;gap:8px}
.mx-c{display:flex;align-items:flex-start;gap:12px;padding:14px 18px;border-radius:var(--r-s);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);font-size:15px;line-height:1.35;opacity:.38;transition:opacity .35s var(--e),background .35s var(--e),box-shadow .35s var(--e)}
.mx-c.lead,.mx-c.sup{opacity:1}
.mx-c.lead{background:rgba(120,170,235,.20);box-shadow:inset 0 0 0 1px rgba(150,198,245,.7)}
.mx-c i{margin-top:5px}
.mx-c i,.mx-key i{flex:none;width:10px;height:10px;border-radius:50%;box-shadow:inset 0 0 0 1.5px rgba(150,198,245,.4)}
.mx-c.sup i,.mx-key i.sup{box-shadow:inset 0 0 0 1.5px #9cc6f2}
.mx-c.lead i,.mx-key i.lead{background:#9cc6f2;box-shadow:none}

/* "Next steps" cards without the date label */
.ns2.q .ns2-c h4{margin-top:40px}

body.m :is(.rt,.mx){grid-template-columns:minmax(0,1fr)}
body.m .rt .r3-ld-d{padding:24px!important}
body.m .rt-h,body.m .rt-r.r3-ld-c{grid-template-columns:1fr 84px 84px;gap:8px;padding-left:12px;padding-right:12px}
body.m :is(.rt-h > span:first-child,.rt-r .r3-ld-n){display:none}
body.m .mx-g{grid-template-columns:1fr}

/* Pared-back cards: sized to their content and set at the foot of the slide,
   text from the top, no rules between lines, an optional chip on top */
.fit{flex:none;margin-top:auto}
.fit :is(.r3-sc-c,.r3-se-c){display:flex;flex-direction:column}
.fit .r3-sc-c li{border-top:0;padding:4px 0}
.fit .r3-se-c li{border-top:0;padding:4px 0 4px 18px}
.fit .r3-se-c li::before{top:12px}
.fit .r3-ld-tag{align-self:flex-start}
.fit .r3-ld-tag + h4{margin-top:14px}
body.m .fit{margin-top:24px}
/* Cards whose number, title and text line up across the row: each card shares the row's
   tracks, so text starts below the tallest title */
.r3-sc-cols.al{row-gap:0}
.r3-sc-cols.al .r3-sc-c{display:grid;grid-row:span 3;grid-template-rows:subgrid;align-content:start;padding-bottom:48px}
body.m .r3-sc-cols.al .r3-sc-c{display:flex;flex-direction:column}

/* TPM vs Producer: two role cards feeding a shared card in the middle */
.tp3{display:grid;grid-template-columns:1fr 64px 1fr 64px 1fr;align-items:stretch}
.tp-k{display:flex;flex-direction:column}
.tp-k p{margin-top:10px;font-size:15px;line-height:1.45;color:var(--ink2)}
.tp-k .al-lab{margin-top:22px}
.tp-k ul{margin-top:10px}
.tp-k li{border-top:0;padding:4px 0 4px 18px}
.tp-k li::before{top:12px}
.tp-k.mid{background:rgba(120,170,235,.20)!important;box-shadow:inset 0 0 0 1px rgba(150,198,245,.7)!important}
.tp-l{align-self:center;width:64px;height:12px;overflow:visible}
.tp-l path{fill:none;stroke:rgba(150,198,245,.6);stroke-width:1.5;stroke-dasharray:4 5;animation:r3dash 1.4s linear infinite}
body.m .tp3{grid-template-columns:1fr;row-gap:12px}
body.m .tp-l{display:none}

/* Roles per RFP as a staffing grid: roles down the side, workstreams across, detail on the right */
.sg-x{position:relative;margin-top:64px}
.sg-x > .r3-seg{position:absolute;left:0;top:0;z-index:2}
.sg-x > .r3-pn.on{height:100%}
.sg{display:grid;grid-template-columns:1fr 620px;gap:32px;height:100%}
.sg-t{padding-top:68px;display:flex;flex-direction:column;gap:6px}
.sg-h,.sg-r{display:grid;grid-template-columns:160px repeat(var(--n),1fr);align-items:center}
.sg-h{padding:0 18px 6px;align-items:end}
.sg-h span:not(.al-lab){white-space:nowrap;padding:0 6px;font-size:13px;font-weight:600;line-height:1.3;color:var(--ink2);text-align:center}
.sg-r{min-height:56px;padding:0 18px;border-radius:var(--r-s);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);transition:background .35s var(--e),box-shadow .35s var(--e)}
.sg-r:has(.sg-d.on){background:rgba(120,170,235,.12);box-shadow:inset 0 0 0 1px rgba(150,198,245,.45)}
.sg-r b{font-size:15px;font-weight:600;line-height:1.3}
.sg-d{justify-self:center;display:grid;place-items:center;width:44px;height:44px;border-radius:50%}
.sg-d i{width:14px;height:14px;border-radius:50%;background:#9cc6f2;transition:box-shadow .3s var(--e),transform .3s var(--e)}
.sg-d:hover i{transform:scale(1.15)}
.sg-d.on i{transform:scale(1.3);background:#fff}
.sg-e{justify-self:center;width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.14)}
.sg .r3-cd-d{min-height:0;overflow:hidden}
.sg-pt{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.sg .r3-cd-d .sg-pt .r3-ld-tag{flex:none;margin-top:2px}
/* Apple-style grouping: a label sits close to its paragraph; groups sit well apart */
.sg .r3-cd-d{padding:32px!important}
.sg .r3-cd-d .al-lab{margin-top:24px}
.sg .r3-cd-d .sg-pt + .al-lab{margin-top:28px}
.sg .r3-cd-d p{margin-top:6px;font-size:15px;line-height:1.55;color:rgba(255,255,255,.75)}
body.m .sg{grid-template-columns:minmax(0,1fr);height:auto}
body.m .sg-x > .r3-seg{position:static;margin-bottom:16px}
body.m .sg-x > .r3-pn.on{height:auto}
body.m .sg-t{padding-top:0}
body.m :is(.sg-h,.sg-r){grid-template-columns:110px repeat(var(--n),1fr);padding:0 10px}
body.m .sg .r3-cd-d{overflow:visible}
body.m .sg-pt{flex-wrap:wrap;gap:8px}
body.m .sg-t{overflow-x:auto}
body.m :is(.sg-h,.sg-r){min-width:max-content;grid-template-columns:110px repeat(var(--n),minmax(96px,1fr))}

/* Where we are: the stages as a centred list; dividers only between rows,
   earlier stages in gray with a link back, the current stage in white */
.cl{width:960px;margin:0;padding:0;list-style:none;text-align:left}
.cl li{display:grid;grid-template-columns:56px 1fr 180px;align-items:start;gap:24px;padding:26px 0}
.cl li + li{border-top:1px solid rgba(255,255,255,.1)}
.cl-n{padding-top:12px;font-size:17px;font-weight:700;color:#fff;opacity:.4}
.cl h3{font-size:42px;font-weight:700;letter-spacing:-1.47px;line-height:1.1;color:#fff;opacity:.45;text-wrap:balance}
.cl p{margin-top:10px;font-size:17px;line-height:1.5;color:rgba(255,255,255,.38)}
.cl li.now p{color:rgba(255,255,255,.62)}
.cl-e{text-align:center}
.cl li.now :is(.cl-n,h3){opacity:1}
.cl .r3-ld-tag{justify-self:end;margin-top:11px}
.cl-a{justify-self:end;margin-top:11px;display:inline-flex;align-items:center;gap:4px;font-size:14px;line-height:24px;letter-spacing:-.01em;color:#9cc6f2;text-decoration:none;text-underline-offset:4px}
.cl-a:hover{text-decoration:underline}
.cl-a svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.m .cl{width:100%}
body.m .cl li{grid-template-columns:32px 1fr;gap:6px 12px;padding:18px 0}
body.m :is(.cl-a,.cl .r3-ld-tag){grid-column:2;justify-self:start;margin-top:4px}
body.m .cl-n{padding-top:4px}
body.m .cl h3{font-size:24px;letter-spacing:-.6px}

/* Responsibility table: chips of one width with the label centred, headers centred over them */
.rt-r .r3-ld-tag,.rt-na{width:96px;justify-content:center}
.rt-na{display:inline-block;padding-left:0;text-align:center}
.rt-h > span:nth-child(n+3){width:96px;text-align:center}
body.m :is(.rt-r .r3-ld-tag,.rt-na,.rt-h > span:nth-child(n+3)){width:80px}

/* Day 3: selected states are an outline only, never a glow */
body.d3 .gradv :is(.r3-seg button.on,.r3-ld-c.on){box-shadow:inset 0 0 0 1px rgba(150,198,245,.7)!important}
body.d3 .gradv .r3-sc-stops .cur i{box-shadow:none}

/* Day 3: balanced headings, and no word left alone on a last line */
body.d3 .view :is(h1,h2,h3,h4,b,.cvx-h,.home-h,.r3-qx-t){text-wrap:balance}
body.d3 .view :is(p,li,dd,em,.mx-c){text-wrap:pretty}

/* Pricing cards: tap to pick a model, bullets instead of rules, links to the staffing splits */
.sc-s{margin-top:18px;display:flex;align-items:center;gap:12px}
.sc-seg{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09)}
.sc-seg a{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 12px;border-radius:999px;font-size:14px;font-weight:500;color:var(--ink2);text-decoration:none;transition:background .25s var(--e),color .25s}
.sc-seg a:hover{background:rgba(255,255,255,.1);color:#fff}
.sc-seg svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sc-f{margin-top:auto;padding-top:24px;display:flex;align-items:baseline;gap:8px}
.sc-f b{font-size:15px;font-weight:600}

/* Day 3: list rows (roles, responsibilities, staffing) carry a lighter label */
body.d3 .view :is(.r3-ld-c b,.sg-r b){font-weight:500}

/* Day 3: quieter chips and labels — sentence case, medium weight, no tracking */
body.d3 .view .r3-ld-tag{height:22px;padding:0 10px;font-size:12px;font-weight:500;letter-spacing:0;text-transform:none}
body.d3 .view .al-lab{font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}
/* What we heard: a little more room at the foot of each card */
.r3-sc-cols.al.tall .r3-sc-c{padding-bottom:76px}
@media (prefers-reduced-motion: reduce){.tp-l path{animation:none}}
/* Day 3 "Owns" and marker chips: white label on a soft white fill, not solid white */
body.d3 .view .r3-ld-tag.op{background:rgba(255,255,255,.2);color:#fff}
/* Day 3 chapter covers: a deeper scrim so the title reads over bright photos */
body.d3 .cvx-img::after{background:radial-gradient(ellipse at 50% 50%,rgba(0,0,0,.52),rgba(0,0,0,.26) 75%),rgba(0,0,0,.14)}
body.d3 .cvx-t{text-shadow:0 2px 24px rgba(0,0,0,.35)}
/* Day 3 radius scale: cards and panels 24, rows and cells 16, chips and controls pill */
body.d3 .view :is(.r3-se-c,.r3-ld-d){border-radius:var(--r-l)}
body.d3 .view :is(.rt-r.r3-ld-c,.mx-roles .r3-ld-c,.mx-c,.sg-r){border-radius:var(--r-m)}
/* Day 3 blue chips: a soft blue fill and label, no outline, to sit beside the white ones */
body.d3 .view .r3-ld-tag.co{background:rgba(120,170,235,.16);color:#b3d3f7;box-shadow:none}
/* Staffing panel: no gradient hairline along the top */
body.d3 .r3-cd-d::before{display:none}
/* Selectable list rows: a little more room above and below */
body.d3 .rt-r.r3-ld-c{padding-top:10px;padding-bottom:10px}
body.d3 .mx-roles .r3-ld-c{padding-top:11px;padding-bottom:11px}
body.d3 .sg-r{min-height:64px}
/* The card a list drives starts level with the list's first row, not its header */
.rt .r3-ld-d{margin-top:25px}
.mx-g{margin-top:27px}
body.m :is(.rt .r3-ld-d,.mx-g){margin-top:0}
body.m .sg-x{margin-top:24px}
@keyframes tlIn{from{opacity:0;transform:translateY(12px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
/* Pricing: three options side by side, price as the headline, nothing to select */
.pz{grid-template-columns:repeat(3,1fr)}
.pz .r3-sc-c{padding:28px;min-height:360px}
.pz h4{font-size:24px;letter-spacing:-.6px}
.pz-p{margin-top:10px;font-size:48px;font-weight:700;letter-spacing:-1.8px;line-height:1}
.pz ul{margin-top:24px}
.pz .r3-sc-c li{position:relative;padding:4px 0 4px 18px}
.pz .r3-sc-c li::before{content:"";position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;background:var(--ink)}
body.m .pz{grid-template-columns:1fr}
body.m .pz .r3-sc-c{min-height:0}
/* TPM vs Producer choreography: Producer, then TPM, then Together rises between them,
   then both lines draw in toward it. Each element's --t is set in the markup. */
.tp3 > .tp-k{animation:tpIn .8s var(--e) var(--t) both}
.tp3 > .tp-k.mid{animation-name:tpUp;animation-duration:.9s}
.tp3 > .tp-l{animation:tpDrawL .7s var(--e) var(--t) both}
.tp3 > .tp-l.r{animation-name:tpDrawR}
@keyframes tpIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes tpUp{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
@keyframes tpDrawL{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
@keyframes tpDrawR{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}
/* Pricing: the three options rise in one after another; each price lands just after its card */
.pz > .r3-sc-c{animation:pzIn .9s var(--e) both;animation-delay:calc(.35s + var(--i) * .22s)}
.pz-p{animation:tlIn 1s var(--e) both;animation-delay:calc(.6s + var(--i) * .22s)}
@keyframes pzIn{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){.tp3 > *,.pz > .r3-sc-c,.pz-p{animation:none!important}}
/* Flexibility and scale: three cards; a line from Confirm into Review, and a dashed circle
   behind Review and Adjust (centred on the gap between them, overhanging above and below).
   The row sits mid-slide rather than at the foot so the circle has room. */
.lp{display:grid;grid-template-columns:1fr 64px 1fr 56px 1fr;align-content:center;align-items:stretch;margin-top:24px}
.lp-pair{grid-column:3/6;display:grid;grid-template-columns:subgrid;position:relative}
.lp-k{position:relative;z-index:1;height:240px;padding:28px!important;animation:tpIn .8s var(--e) var(--t) both}
.lp .r3-sc-c li{position:relative;padding:4px 0 4px 18px;border-top:0}
.lp-k h4{margin-top:14px}
.lp .r3-sc-c li::before{content:"";position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;background:var(--ink)}
.lp > .tp-l{animation:tpDrawL .7s var(--e) var(--t) both}
/* The cards are frosted glass, so the circle would show through them; instead it is masked to
   the 60px above and below the 240px cards, as if passing behind them */
.lp-c{position:absolute;left:50%;top:50%;width:360px;height:360px;margin:-180px 0 0 -180px;overflow:visible;pointer-events:none;animation:lpIn 1s var(--e) var(--t) both;
  -webkit-mask:linear-gradient(#000 0 0) top/100% 60px no-repeat,linear-gradient(#000 0 0) bottom/100% 60px no-repeat;mask:linear-gradient(#000 0 0) top/100% 60px no-repeat,linear-gradient(#000 0 0) bottom/100% 60px no-repeat}
.lp-c circle{fill:none;stroke:rgba(150,198,245,.6);stroke-width:1.5;stroke-dasharray:4 5;animation:r3dash 1.4s linear infinite}
@keyframes lpIn{from{opacity:0;transform:rotate(-40deg) scale(.92)}to{opacity:1;transform:none}}
body.m .lp{grid-template-columns:1fr;row-gap:12px;margin-top:24px}
body.m .lp-pair{grid-column:auto;grid-template-columns:1fr;row-gap:12px}
body.m .lp-k{height:auto}
body.m :is(.lp > .tp-l,.lp-c,.lp-pair > span){display:none}
@media (prefers-reduced-motion: reduce){.lp-k,.lp > .tp-l,.lp-c,.lp-c circle{animation:none!important}}
/* Who owns what: an empty cell is simply empty */
.rt-na:empty{min-height:22px}
/* Black (day 3): pure black instead of the blue gradient, Apple Pro style. Surfaces go
   neutral graphite; blue is kept for meaning only. */
/* Resting surfaces carry no outline (Apple tiles on black are borderless); only a selected item does */
body.d3.blk .gradv :is(.r3-ld-d,.r3-cd-d,.r3-ld-c,.r3-se-c,.r3-sc-c,.r3-seg,.sg-r,.mx-c){background:#161617;box-shadow:none;backdrop-filter:none}
body.d3.blk .gradv :is(.r3-seg button.on,.r3-ld-c.on){background:#2c2c2e!important;box-shadow:none!important}
body.d3.blk .gradv :is(.tp-k.mid,.mx-c.lead){background:#232325!important;box-shadow:none!important}
body.d3.blk .gradv .sg-r:has(.sg-d.on){background:#232325;box-shadow:none}
body.d3.blk #overview,body.d3.blk.gridv.dk #gridv{background:#000}
/* Day 3 opening: the Apple outline draws as a solid line, not dashes */
body.d3 .ap-l{stroke-dasharray:none}
/* Who owns what: the last chip sits as far from the row's right edge as from its top and bottom
   (10px all round); the header keeps the same inset so the columns stay centred over the chips */
body.d3 .rt-r.r3-ld-c{padding-right:10px}
body.d3 .rt-h{padding-right:10px}
body.d3:not(.m) :is(.rt-h,.rt-r.r3-ld-c){grid-template-columns:28px 1fr 96px 96px}
/* Black: no blue. Every accent maps onto Apple's dark-mode label and fill hierarchy:
   primary #fff, secondary rgba(235,235,245,.6), tertiary rgba(235,235,245,.3);
   fills rgba(120,120,128,.36) for emphasis and .24 for quieter chips. */
body.d3.blk{--lbl2:rgba(235,235,245,.6);--lbl3:rgba(235,235,245,.3)}
body.d3.blk .view.gradv{--accent:#fff}
body.d3.blk .gradv .r3-ld-n{color:var(--lbl2)}
body.d3.blk .gradv .r3-ld-tag.op{background:rgba(120,120,128,.36);color:#fff}
body.d3.blk .gradv .r3-ld-tag.co{background:rgba(120,120,128,.24);color:var(--lbl2)}
body.d3.blk .gradv .cl-a{color:#2997FF}
body.d3.blk .gradv :is(.tp-l path,.lp-c circle){stroke:var(--lbl3)}
body.d3.blk .gradv .mx-c i{box-shadow:inset 0 0 0 1.5px var(--lbl3)}
body.d3.blk .gradv :is(.mx-c.sup i,.mx-key i.sup){box-shadow:inset 0 0 0 1.5px #fff}
body.d3.blk .gradv :is(.mx-c.lead i,.mx-key i.lead){background:#fff;box-shadow:none}
/* Staffing dots: neutral at rest (they all mean the same thing); blue marks the one being viewed */
body.d3.blk .gradv .sg-d i{background:rgba(235,235,245,.6)}
body.d3.blk .gradv .sg-d.on i{background:#0A84FF;box-shadow:none}
body.d3.blk .ap-l{stroke:#fff;stroke-width:1.25;shape-rendering:geometricPrecision}
body.d3.blk #overview .ovt .n{color:var(--lbl2)!important}
body.d3.blk #overview .ovt:hover{background:#1c1c1e!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
body.d3.blk #overview .ovt.cur{background:#1c1c1e!important;box-shadow:inset 0 0 0 1.5px #fff!important}
body.d3.blk #gridv .gv-lab{border-color:rgba(84,84,88,.6)!important}
body.d3.blk #gridv .gv-lab b{color:var(--lbl2)!important}
body.d3.blk #gridv .gv-img{box-shadow:none!important}
body.d3.blk #gridv .gv-card:hover .gv-img{box-shadow:0 0 0 calc(1px * var(--is,1)) rgba(255,255,255,.5),0 14px 34px rgba(0,0,0,.35)!important}
/* The stage is scaled to fit the window; --is (1/scale) keeps the outline at 1 screen pixel */
body.d3.blk #gridv .gv-card.on .gv-img{box-shadow:0 0 0 calc(1px * var(--is,1)) #0A84FF!important}
body.d3.blk.m #gridv .gv-card.on .gv-img{box-shadow:0 0 0 1px #0A84FF!important}
body.d3.blk #gridv .gv-card.on .gv-t::before{color:#fff}
/* TPM vs Producer: the shared card carries a white outline */
body.d3 .gradv .tp-k.mid{box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.6)!important}
body.d3.blk .gradv .tp-k.mid{background:#1c1c1e!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.6)!important}
/* Who owns what: Owns in Apple Blue, Supports in Apple Purple, each as a 20% tint with the
   label in the full colour (the accessible dark-mode shades, above 4.5:1); Connects and the
   side card's lead tag stay neutral grey */
body.d3 .view .rt .r3-ld-tag.op{background:rgba(10,132,255,.2);color:#6CB4FF}
body.d3 .view .rt .r3-ld-tag.sp{background:rgba(191,90,242,.2);color:#DA8FFF}
/* Opening slide: a light button with a dark label */
body.d3 .cta.cv-cta{background:#f5f5f7;color:#1d1d1f}
body.d3 .cta.cv-cta:hover{background:#fff}

/* Accessibility (day 3) ---------------------------------------------------- */
.vh{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* A visible keyboard focus ring everywhere, in the system focus blue, following each
   control's own shape (the shell's pill-shaped ring is for pill controls only) */
body.d3 :focus-visible{outline:2px solid #0A84FF;outline-offset:2px}
body.d3 .view :is(.r3-ld-c,.mx-c,.r3-sc-c,.r3-se-c):focus-visible{outline:2px solid #0A84FF!important;outline-offset:2px;border-radius:var(--r-m)}
/* Touch targets of at least 44pt on phones (Apple HIG) */
body.m.d3 :is(.sc-seg a,.cl-a){min-height:44px;display:inline-flex;align-items:center}
body.m.d3 .r3-seg button{height:44px}
/* Reduce Motion: no slides, springs or looping dashes; everything simply appears */
@media (prefers-reduced-motion: reduce){
  body.d3 :is(.view,.view *){animation-duration:.001s!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.001s!important}
}
/* Reduce Transparency: frosted cards become solid */
@media (prefers-reduced-transparency: reduce){
  body.d3 .gradv :is(.r3-ld-d,.r3-cd-d,.r3-ld-c,.r3-se-c,.r3-sc-c,.r3-seg,.sg-r,.mx-c){backdrop-filter:none;background:#1c1c1e}
  body.d3 .gnav{backdrop-filter:none!important;background:#000!important}
}
/* Increase Contrast: secondary text and outlines step up */
@media (prefers-contrast: more){
  body.d3 .view.gradv{--ink2:rgba(255,255,255,.86);--ink3:rgba(255,255,255,.72)}
  body.d3 .gradv :is(.r3-ld-d,.r3-cd-d,.r3-ld-c,.r3-se-c,.r3-sc-c,.sg-r,.mx-c){box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}
  body.d3 .cl li:not(.now) :is(h3,.cl-n){opacity:.75}
}
/* Contrast (WCAG AA, 4.5:1 for text under 24px): de-emphasised text stays quieter than
   primary text but never drops below the threshold */
body.d3 .view.gradv{--ink2:rgba(255,255,255,.72);--ink3:rgba(255,255,255,.58)}
body.d3 .cl li:not(.now) .cl-n{opacity:.5}
body.d3 .cl li:not(.now) p{color:rgba(255,255,255,.5)}
body.d3.blk .gradv .r3-ld-tag.co{color:rgba(235,235,245,.78)}
body.d3 .mx-c{opacity:.5}
body.d3 .mx-c:is(.lead,.sup){opacity:1}
body.d3 .cl li.now p{color:rgba(255,255,255,.72)}
/* Apple Blue is reserved for meaning: who leads and who supports (matrix dots and key, and
   the Owns chips). Everything else stays white and grey. */
body.d3 .view.gradv :is(.mx-c.lead i,.mx-key i.lead){background:#0A84FF;box-shadow:none}
body.d3 .view.gradv :is(.mx-c.sup i,.mx-key i.sup){background:none;box-shadow:inset 0 0 0 1.5px #0A84FF}
/* Apple Blue also marks what you can click: links (Apple's dark-mode link blue, #2997FF,
   above 4.5:1 on black and on the cards) */
body.d3.blk .gradv .sc-seg a{color:#2997FF}
body.d3.blk .gradv .sc-seg a:hover{color:#5eb0ff;background:rgba(41,151,255,.12)}
body.d3.blk .gradv .cl-a:hover{color:#5eb0ff}
/* Pager: a firmer fill so the arrows read on black, no outline */
body.d3 #pager{background:rgba(255,255,255,.16);box-shadow:none;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
body.d3 .pg-b:hover{background:rgba(255,255,255,.18)}
/* Team slide in black: graphite panel and cards, no outlines */
body.d3.blk .gradv .teambox{background:#161617;box-shadow:none;backdrop-filter:none}
body.d3.blk .gradv .teambox .pc{background:#1c1c1e;box-shadow:none}
body.d3.blk .gradv .teambox .pc:hover{background:#232325}
body.d3.blk .gradv .teambox .pc .hs{background:#232325}
/* All-slides grid: a dark scrollbar with no track (the page is light by default) */
body.d3 #gridv{color-scheme:dark;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.28) transparent}
body.d3 #gridv::-webkit-scrollbar{width:8px;background:transparent}
body.d3 #gridv::-webkit-scrollbar-track{background:transparent}
body.d3 #gridv::-webkit-scrollbar-thumb{background:rgba(255,255,255,.28);border-radius:4px}
/* Password page on day 3: the black theme's light button (as on the landing), a borderless
   field with the system focus ring, accessible help text, blue for the link, Apple red for errors */
body.d3 #gate .gate-row .cta{background:#f5f5f7!important;color:#1d1d1f!important}
body.d3 #gate .gate-row .cta:hover{background:#fff!important}
body.d3 #gate #gatePw{background:rgba(118,118,128,.24)!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none}
body.d3 #gate #gatePw:focus{box-shadow:0 0 0 2px #0A84FF!important}
body.d3 #gate #gatePw::placeholder{color:rgba(235,235,245,.6)!important}
body.d3 #gate .gate-help{color:rgba(255,255,255,.6)!important}
body.d3 #gate .gate-help a{color:#2997FF!important}
body.d3 #gate .gate-err{color:#FF6961!important}
/* Where we are / Next steps: the marker chip matches the 14px links beside it */
body.d3 .view .cl .r3-ld-tag{height:28px;padding:0 12px;font-size:14px;margin-top:9px}
/* Prepared for Apple by: no panel behind the team; two rows of four that arrive in turn */
body.d3 .gradv .teambox{background:none!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;margin-top:36px;justify-content:center}
body.d3:not(.m) .team5{grid-template-columns:repeat(4,188px)!important;justify-content:center;align-content:center;gap:20px}
body.d3:not(.m) .team5 .pc .hs{aspect-ratio:1/1}
body.d3 .team5 .pc{animation:tpIn .7s var(--e) both;animation-delay:calc(.2s + var(--i) * .08s)}
@media (prefers-reduced-motion: reduce){body.d3 .team5 .pc{animation:none}}
/* Password page: the email on its own line and more room between the lines */
body.d3 #gate #gateForm{margin-top:28px!important}
body.d3 #gate .gate-row{margin-top:22px!important}
body.d3 #gate .gate-help{font-size:13px!important;line-height:1.7}
body.d3 #gate .gate-help a{display:block;margin-top:2px}
/* Team slide: a centred title */
body.d3 .view.teamv .t-h2{text-align:center;margin-left:auto;margin-right:auto}
