:root{--color-ink:#E8EDF5;--color-ink-2:#C7D2E3;--color-muted:#8A9BB0;
  --color-hot:#FF7A2F;--color-hot-in:#E5483A;--color-cold:#00D4FF;--color-cold-out:#BFE9FF;
  --mat-ghost:#BFE9FF;}
.vtabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 clamp(14px,2.4vh,21px);}
.vtab{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;border-radius:100px;border:1px solid var(--border);font-size:13px;font-weight:600;color:var(--text);transition:border-color .3s var(--ease),color .3s var(--ease),transform .3s var(--ease);}
.vtab:hover{border-color:var(--bc);color:var(--cyan);transform:translateY(-2px);}
.vtab:active{transform:translateY(0);}
.vtab[aria-pressed="true"]{background:var(--grad);border-color:transparent;color:var(--on-grad);}
.vtab:disabled{opacity:.45;cursor:not-allowed;transform:none;}
.demo3d-stage.is-live{border-color:var(--cyan);}
.demo3d-load[hidden]{display:none;}
.demo3d-stage canvas{touch-action:pan-y;cursor:pointer;}
.demo3d-stage.is-live canvas{touch-action:none;cursor:grab;}
.demo3d-stage.is-live canvas:active{cursor:grabbing;}
.hots{position:absolute;inset:0;pointer-events:none;z-index:4;}
.vtools{position:absolute;top:14px;left:16px;z-index:5;display:flex;gap:8px;flex-wrap:wrap;}
.vtools .demo3d-wind{position:static;}
.hot.hot--hot i{background:var(--color-hot);box-shadow:0 0 0 4px var(--hot-a18);}
.hot.hot--hot i::after{border-color:var(--hot-a55);}
.hot.hot--cold i{background:var(--color-cold);}
.hot b{opacity:1;transform:none;}
.vspec{display:flex;flex-direction:column;gap:clamp(12px,1.2vw,18px);min-width:0;padding:clamp(20px,1.9vw,30px);background:var(--bg1);border:1px solid var(--border);border-radius:clamp(12px,2vw,24px);}
.vspec h3{font-family:var(--fd);font-size:clamp(28px,2.6vw,40px);line-height:.98;letter-spacing:.01em;font-weight:400;}
.vspec .vlead{margin-top:8px;color:var(--muted);font-size:13.5px;line-height:1.5;}
.vspec dl{flex:1 1 auto;display:grid;grid-auto-rows:1fr;}
.vspec dl div{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:30px;padding:5px 0;border-top:1px solid var(--border);}
.vspec dl div:last-child{border-bottom:1px solid var(--border);}
.vspec dt{font-family:var(--fm);font-size:13px;color:var(--muted);}
.vspec dd{font-weight:600;font-size:13.5px;line-height:1.25;text-align:right;font-variant-numeric:tabular-nums;color:var(--text);}
.vspec .vnote{font-size:13px;color:var(--dim);line-height:1.45;}
.reel{padding:clamp(55px,12vh,144px) 0 clamp(21px,3vh,34px);}
.hwork{padding-top:clamp(21px,3vh,34px);}
.hw-track{scroll-padding-left:var(--pad);}
.hw-card--sq{width:clamp(197px,27.6vw,407px);}
.hw-card--sq .hw-media{aspect-ratio:1/1;}
.hw-card--sq .hw-meta{flex-wrap:wrap;gap:2px 12px;}
.stack-sub{max-width:52ch;margin-top:18px;color:var(--muted);font-size:clamp(15px,1.2vw,18px);line-height:1.6;}
.mani{padding-bottom:clamp(44px,8vh,89px);}
.how-nda{max-width:70ch;margin-top:clamp(28px,5vh,55px);color:var(--muted);font-size:14.5px;line-height:1.6;}
.how-nda b{color:var(--text);font-weight:600;}
.reel-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.618fr);gap:clamp(34px,4vw,55px);align-items:center;}
.reel-side{display:grid;gap:21px;justify-items:start;align-content:center;}
.reel-sub{color:var(--muted);font-size:clamp(15px,1.2vw,18px);line-height:1.6;max-width:30ch;}
.reel-g .reel-frame{margin:0;aspect-ratio:1.618/1;}
.demo3d{padding:clamp(34px,6vh,89px) 0 clamp(55px,12vh,144px);}
.vhead,.vgrid{display:grid;grid-template-columns:minmax(0,1.618fr) minmax(0,1fr);gap:clamp(34px,4vw,55px);}
.vhead{align-items:end;margin-bottom:clamp(21px,3.4vh,34px);}
.vhead .vtabs{margin:0;gap:8px;}
.vhead .vtab{padding:11px 17px;}
.vgrid{align-items:stretch;}
.vgrid .demo3d-stage{width:100%;}
@media (min-width:1001px) and (max-width:1360px){
.vhead .vtab{padding:10px 12px;font-size:12px;}
.vhead .vtabs{gap:6px;}
.vspec{padding:18px 20px;gap:10px;}
.vspec dl div{min-height:26px;padding:3px 0;}
}
.vgrid .demo3d-stage{margin:0;aspect-ratio:1.618/1;}
.proof,.hwork,.footer{background:none;}
#glow{position:fixed;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none;}
.stack{max-width:var(--max);margin:0 auto;padding:0 var(--pad) clamp(55px,10vh,89px);}
.stack .stk{top:calc(var(--nav-h) + clamp(21px,5vh,55px));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.618fr);height:auto;background:var(--bg1);border:1px solid var(--border);border-radius:clamp(12px,2vw,24px);}
.stack .stk::before{content:none;}
.stack .stk-media{position:relative;inset:auto;order:2;width:100%;aspect-ratio:1.618/1;}
.stack .stk-media img,.stack .stk-media video{position:absolute;inset:0;}
.stack .stk-in{order:1;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:flex-start;justify-content:center;gap:clamp(14px,2vh,21px);max-width:none;margin:0;padding:clamp(21px,2.6vw,34px);}
.stack .stk-title{margin-bottom:12px;font-size:clamp(38px,4.4vw,68px);line-height:.9;}
.stack .stk-line{color:var(--muted);font-size:14.5px;}
.stack .stk-side{gap:14px;padding-bottom:0;}
.stack .stk-gap{height:21svh;}
@media (max-width:1000px){
.stack .stk{position:static;grid-template-columns:minmax(0,1fr);}
.stack .stk-media{order:0;}
.stack .stk-gap{height:21px;}
}
.stage-ctl{position:absolute;right:16px;bottom:14px;z-index:5;display:flex;align-items:center;gap:8px;}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--cyan);background:var(--ground-a6);border:1px solid var(--bc);border-radius:50%;transition:background .25s var(--ease),transform .25s var(--ease);}
.icon-btn:hover{background:var(--cyan-a16);transform:scale(1.06);}
.icon-btn:active{transform:scale(.96);}
.icon-btn[aria-pressed="true"]{background:var(--grad);color:var(--on-grad);border-color:transparent;}
.icon-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.icon-btn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;}
.max-scrim{position:fixed;inset:0;z-index:9000;background:var(--ground-a86);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
.max-scrim[hidden]{display:none;}
.reel-g .reel-frame.is-max,.vgrid .demo3d-stage.is-max{position:fixed;left:5vw;top:5vh;top:5dvh;z-index:9001;width:90vw;height:90vh;height:90dvh;margin:0;aspect-ratio:auto;}
.reel-g .reel-frame.is-max{background:var(--bg);opacity:1;transform:none;transition:none;}
.vgrid .demo3d-stage.is-max{background:radial-gradient(ellipse at 50% 100%,var(--cyan-a5),transparent 70%),var(--bg1);}
.reel-frame.is-max video{object-fit:contain;}
html.has-max{overflow-y:clip;}
.demo3d-stage.is-max .vtabs{position:absolute;top:14px;left:50%;z-index:5;margin:0;gap:8px;flex-wrap:nowrap;transform:translateX(-50%);}
.demo3d-stage.is-max .vtab{padding:10px 16px;}
.demo3d-stage.is-max .vtab:not([aria-pressed="true"]){background:var(--ground-a6);}
.demo3d-wind.ar-btn{position:static;background:var(--grad);border-color:transparent;color:var(--on-grad);}
.demo3d-wind.ar-btn:hover{background:var(--grad);filter:brightness(1.1);}
.demo3d-wind.ar-btn:disabled{background:var(--bg2);color:var(--muted);cursor:not-allowed;}
.ar-panel{position:absolute;inset:0;z-index:6;display:grid;place-items:center;padding:16px;background:var(--ground-a84);}
.ar-panel[hidden]{display:none;}
.ar-card{position:relative;display:flex;align-items:center;gap:21px;max-width:440px;padding:21px;background:var(--bg2);border:1px solid var(--bc);border-radius:16px;}
.ar-qr{flex:none;width:136px;height:136px;padding:10px;background:var(--qr);border-radius:10px;}
.ar-qr svg{display:block;width:100%;height:100%;}
.ar-copy h4{font-family:var(--fd);font-size:28px;font-weight:400;line-height:1;letter-spacing:.01em;}
.ar-copy p{margin-top:8px;color:var(--muted);font-size:13.5px;line-height:1.5;}
.ar-copy .ar-small{font-size:13px;color:var(--dim);}
.ar-x{position:absolute;top:8px;right:10px;width:30px;height:30px;font-size:20px;line-height:1;color:var(--muted);border-radius:50%;}
.ar-x:hover{color:var(--cyan);}
.ar-host{position:fixed;left:0;bottom:0;width:1px;height:1px;opacity:.01;pointer-events:none;}
.demo3d-wind:focus-visible,.ar-x:focus-visible,.vtab:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;}
.q-top{padding:clamp(55px,10vh,89px) 0;border-bottom:1px solid var(--border);}
.q-top-g{display:grid;grid-template-columns:minmax(0,1.618fr) minmax(0,1fr);gap:clamp(34px,4vw,55px);align-items:center;}
.q-pull{font-family:var(--fd);font-size:clamp(38px,5vw,76px);line-height:.98;letter-spacing:.005em;font-weight:400;margin-top:18px;}
.q-side{display:grid;gap:21px;}
.q-text{color:var(--muted);font-size:clamp(14.5px,1.05vw,16px);line-height:1.7;}
.q-by{display:grid;gap:4px;padding-left:21px;border-left:2px solid var(--cyan);}
.q-by b{font-weight:600;font-size:18px;}
.q-by span{color:var(--muted);font-size:14px;}
.entity-sec{padding:clamp(50px,9vh,120px) 0;}
.ent-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--gap);align-items:center;}
.ent-grid p.ent-lead{margin-top:clamp(16px,2.4vh,21px);color:var(--muted);font-size:clamp(15px,1.2vw,18px);line-height:1.65;max-width:46ch;}
.ent-ch{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;list-style:none;}
.ent-ch a{display:inline-flex;padding:10px 20px;border:1px solid var(--border);border-radius:100px;font-size:13px;font-weight:600;text-decoration:none;transition:border-color .3s var(--ease),color .3s var(--ease);}
.ent-ch a:hover{border-color:var(--bc);color:var(--cyan);}
.founder{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,8fr);gap:clamp(20px,2.4vw,34px);align-items:center;margin:0;padding:clamp(16px,1.6vw,21px);background:var(--bg1);border:1px solid var(--border);border-radius:clamp(12px,2vw,24px);}
.founder img{display:block;width:100%;height:auto;border-radius:12px;}
.founder b{display:block;font-family:var(--fd);font-size:clamp(28px,2.6vw,40px);font-weight:400;line-height:1;letter-spacing:.01em;}
.founder span{display:block;margin-top:6px;font-family:var(--fb);font-size:13px;color:var(--cyan);}
.founder p{margin-top:clamp(12px,1.6vh,16px);color:var(--muted);font-size:14.5px;line-height:1.6;}
.ent{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(21px,3.4vh,34px);}
.ent div{flex:1 1 auto;padding:16px 20px;background:var(--bg1);border:1px solid var(--border);border-radius:14px;display:grid;gap:6px;align-content:start;}
.ent dt{font-family:var(--fb);font-size:13px;color:var(--muted);}
.ent dd{font-weight:600;font-size:16px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;}
.ent a{text-decoration:none;}
.ent a:hover{color:var(--cyan);}
@media (max-width:1000px){
.reel-g,.vhead,.vgrid,.q-top-g{grid-template-columns:minmax(0,1fr);}
.ent-grid{grid-template-columns:minmax(0,1fr);}
}
@media (max-width:600px){
.demo3d-hint{left:16px;transform:none;max-width:45%;white-space:normal;text-align:left;}
.demo3d-stage.is-max .vtabs{top:60px;left:16px;right:16px;flex-wrap:wrap;transform:none;}
.icon-btn{width:40px;height:40px;}
.ar-panel{padding:10px;overflow:auto;}
.ar-card{gap:14px;padding:16px;}
.ar-qr{width:96px;height:96px;padding:6px;}
.ar-copy h4{font-size:22px;padding-right:18px;}
.ar-copy p{font-size:12.5px;margin-top:6px;}
.vgrid .demo3d-stage{aspect-ratio:4/3;}
.ent div{flex-basis:100%;}
.founder{grid-template-columns:minmax(0,1fr);}
.founder img{max-width:240px;}
.vtab{flex:1 1 auto;justify-content:center;}
}
@media (prefers-reduced-motion:reduce){
.vtab,.icon-btn{transition:none;}
}

.demo3d-stage{border:1px solid var(--border);}
:root{--gap:clamp(34px,4vw,55px);}
a:focus-visible,button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;}
.reel-g,.vhead,.vgrid,.q-top-g,.ent-grid,.split{gap:var(--gap);}
.q-pull{margin-top:0;}
.q-text{font-size:16px;}
.q-by{padding-left:0;border-left:0;}
.stack-sub{font-size:clamp(16px,1.2vw,18px);}
.stack .stk-line{font-size:15.5px;}
.stk-list{max-width:34ch;color:var(--muted);font-size:14px;line-height:1.55;}
.sec-s{font-family:var(--fd);font-size:clamp(38px,4.4vw,68px);line-height:.95;font-weight:400;text-wrap:balance;}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.618fr);align-items:start;}
.why3{padding:clamp(55px,10vh,89px) 0;}
.why3.how{padding-top:0;}
.rows{display:grid;margin:0;padding:0;list-style:none;}
.fact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,8fr);gap:8px clamp(21px,2.6vw,34px);align-items:baseline;padding:clamp(16px,2.4vh,21px) 0;border-top:1px solid var(--border);}
.fact:last-child{border-bottom:1px solid var(--border);}
.fact h3{font-family:var(--fd);font-size:clamp(24px,2.2vw,32px);font-weight:400;line-height:1.05;}
.fact p{color:var(--muted);font-size:15.5px;line-height:1.6;}
.steps .fact{grid-template-columns:3ch minmax(0,4fr) minmax(0,8fr);}
.steps .fact i{font-family:var(--fm);font-style:normal;font-size:14px;color:var(--cyan);font-variant-numeric:tabular-nums;}
.how-nda{margin-top:clamp(21px,3.4vh,34px);font-size:15.5px;}
.ent-ch{gap:21px;}
.ent-ch a{padding:0;border:0;border-radius:0;font-size:15px;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--bc);}
.founder{padding:0;background:none;border:0;border-radius:0;}
.founder span{color:var(--cyan);font-size:14px;}
.founder p{font-size:15.5px;}
.ent{gap:0 var(--gap);padding-top:clamp(14px,2.4vh,21px);border-top:1px solid var(--border);}
.ent div{padding:0;background:none;border:0;border-radius:0;}
.proof-in{gap:8px clamp(21px,3vw,34px);}
.proof-item{color:var(--muted);font-size:14px;}
.proof-lbl{color:var(--text);font-size:14px;}
.hw-cat{font-size:13px;}
.cta-h{font-size:clamp(46px,7vw,112px);line-height:.95;font-weight:400;text-wrap:balance;}
@media (max-width:1000px){.split{grid-template-columns:minmax(0,1fr);}}
@media (max-width:600px){
  .fact,.steps .fact{grid-template-columns:minmax(0,1fr);}
  .ent{gap:14px var(--gap);}
}
p{text-wrap:pretty;}
.hero-sub{max-width:480px;}
.stk-list{max-width:none;}
.stack .stk-title{font-weight:400;}
/* one grid: hero and sectors sit on the same container as every other section */
.hero-bottom{width:100%;max-width:var(--max);margin:0 auto;}
.proof-in{justify-content:space-between;}
.hero-scroll{position:absolute;bottom:30px;left:50%;z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px;font-family:var(--fb);font-size:13px;color:var(--dim);transform:translateX(-50%);}
.hero-scroll::after{content:'';width:1px;height:34px;background:linear-gradient(to bottom,var(--cyan),transparent);animation:drip 2s var(--ease) infinite;}
@media (prefers-reduced-motion:reduce){.hero-scroll::after{animation:none;}}

/* footer: brand on the short side, links on the long side, the wordmark closes the page */
.footer{padding:clamp(55px,10vh,89px) 0 clamp(21px,3.4vh,34px);}
.footer-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.618fr);gap:var(--gap);align-items:start;}
.footer-brand .logo-mark{margin:0 12px 0 0;}
.footer-brand .logo-word{margin:0;}
.footer-brand p{margin-top:21px;max-width:34ch;font-size:15.5px;line-height:1.6;}
.footer-cols{display:grid;grid-template-columns:repeat(4,auto);justify-content:space-between;gap:34px var(--gap);}
.fcol-h{margin-bottom:14px;color:var(--text);font-size:14px;font-weight:600;}
.fcol a,.fcol span.txt{margin-bottom:8px;color:var(--muted);font-size:14.5px;}
.fcol a:hover{color:var(--cyan);}
.footer-bottom{margin-top:clamp(34px,6vh,55px);padding-top:21px;border-top:1px solid var(--border);font-size:13px;}
.footer-legal{gap:21px;}
@media (max-width:1000px){
  .footer-top{grid-template-columns:minmax(0,1fr);}
  .proof-in{justify-content:flex-start;}
}
@media (max-width:700px){
  .hero-scroll{display:none;}
  .footer-cols{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;}
  .fcol:last-child{grid-column:1/-1;}
  .footer-bottom{justify-content:flex-start;text-align:left;}
}
/* the picture leads the hero: the headline stays in the clear space at lower left */
.hero-h1{font-size:clamp(52px,6.2vw,112px);line-height:.94;font-weight:400;}
@media (max-width:700px){
  .hero-img{height:64%;object-position:58% 50%;-webkit-mask-image:linear-gradient(to bottom,black 78%,transparent);mask-image:linear-gradient(to bottom,black 78%,transparent);}
}

/* the opening of What we do sits centred over the cards, and the card text sits in the middle of its panel */
.stack-head{flex-direction:column;align-items:center;justify-content:center;gap:21px;text-align:center;}
.stack-sub{max-width:84ch;margin-left:auto;margin-right:auto;text-wrap:balance;}
.stack .stk{align-items:stretch;}
.mani-top{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:center;gap:0 .3em;font-size:clamp(34px,5.4vw,84px);}
.mani-top .mani-line{display:block;font-size:inherit;}
.mani-sub{margin-top:clamp(8px,1.4vh,14px);font-size:clamp(24px,2.8vw,44px);line-height:1.1;}
.split{align-items:center;}
.how-nda{grid-column:2;}
@media (max-width:1000px){.how-nda{grid-column:auto;}}
.vhead .sec-h{font-size:clamp(38px,5.2vw,80px);}
