@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "Manrope", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--blue: #3b9bff;--blue-deep: #1f6fe0;--green: #2fd27a;--green-deep: #14a85e;--grad: linear-gradient(100deg, var(--blue) 0%, #38b6c4 45%, var(--green) 100%);--grad-soft: linear-gradient(100deg, rgba(59,155,255,.16), rgba(47,210,122,.16));--red: #d70000;--maxw: 1240px;--ease: cubic-bezier(.22,.61,.36,1)}:root,[data-theme=dark]{--bg: #080a0f;--bg-2: #0d1017;--surface: #12161f;--surface-2: #171c27;--text: #eef2f8;--text-2: #aab3c4;--text-3: #6b7689;--border: rgba(255,255,255,.09);--border-2: rgba(255,255,255,.16);--hair: rgba(255,255,255,.06);--glow: radial-gradient(52% 52% at 50% 46%, rgba(50,105,200,.4), rgba(25,160,105,.16) 50%, transparent 72%);--scrim: linear-gradient(to top, rgba(8,10,15,.92) 6%, rgba(8,10,15,0) 60%);--shadow: 0 24px 60px -24px rgba(0,0,0,.7)}[data-theme=light]{--bg: #fbfcfe;--bg-2: #f1f4f9;--surface: #ffffff;--surface-2: #f6f8fc;--text: #0b0e15;--text-2: #46505f;--text-3: #828c9c;--border: rgba(12,20,40,.12);--border-2: rgba(12,20,40,.22);--hair: rgba(12,20,40,.07);--blue: #1c7fe6;--green: #12a35a;--glow: radial-gradient(52% 52% at 50% 46%, rgba(80,150,235,.26), rgba(45,190,120,.12) 50%, transparent 72%);--scrim: linear-gradient(to top, rgba(251,252,254,.94) 6%, rgba(251,252,254,0) 60%);--shadow: 0 24px 60px -28px rgba(20,40,80,.28)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background .5s var(--ease),color .5s var(--ease)}::selection{background:#3b9bff52}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(100% - 48px,var(--maxw));margin-inline:auto}.eyebrow{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3);display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:22px;height:1px;background:var(--border-2)}.eyebrow.grad{color:transparent;background:var(--grad);-webkit-background-clip:text;background-clip:text}.eyebrow.grad:before{background:var(--grad)}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.04;letter-spacing:-.02em}.h-xl{font-size:clamp(40px,7vw,92px);font-weight:600}.h-l{font-size:clamp(30px,4.4vw,56px)}.h-m{font-size:clamp(23px,2.6vw,34px)}.lede{font-size:clamp(17px,1.5vw,21px);color:var(--text-2);max-width:60ch}.mono{font-family:var(--font-mono)}.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.btn{font-family:var(--font-display);font-weight:500;font-size:15px;padding:13px 22px;border-radius:9px;cursor:pointer;display:inline-flex;align-items:center;gap:9px;border:1px solid transparent;transition:.2s var(--ease);white-space:nowrap}.btn-primary{background:var(--grad);color:#04110a;box-shadow:0 8px 28px -10px #2fd27a80}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 34px -10px #2fd27a99}.btn-ghost{background:transparent;border-color:var(--border-2);color:var(--text)}.btn-ghost:hover{background:var(--surface-2);border-color:var(--text-3)}.tag{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;padding:5px 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);text-transform:uppercase}section{position:relative}.pad{padding-block:clamp(80px,11vw,160px)}header.nav{position:fixed;inset:0 0 auto;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:14px clamp(18px,4vw,40px);transition:background .3s var(--ease),border-color .3s var(--ease),backdrop-filter .3s;border-bottom:1px solid transparent}header.nav.scrolled{background:color-mix(in srgb,var(--bg) 72%,transparent);backdrop-filter:blur(16px) saturate(1.3);border-bottom:1px solid var(--hair)}.brand{display:flex;align-items:center;gap:11px}.brand img{width:30px;height:30px}.brand .name{font-family:var(--font-display);font-weight:600;font-size:18px;letter-spacing:-.01em}.brand .dot{color:var(--text-3);font-weight:400}.nav-links{display:flex;gap:30px;align-items:center}.nav-links a{font-size:14.5px;color:var(--text-2);transition:color .18s;font-weight:500}.nav-links a:hover{color:var(--text)}.nav-right{display:flex;align-items:center;gap:14px}.theme-toggle{width:38px;height:38px;border-radius:9px;cursor:pointer;border:1px solid var(--border);background:var(--surface);display:grid;place-items:center;color:var(--text-2);transition:.2s var(--ease)}.theme-toggle:hover{color:var(--text);border-color:var(--border-2)}.theme-toggle svg{width:18px;height:18px}[data-theme=light] .theme-toggle .moon{display:none}[data-theme=light] .theme-toggle .sun{display:block}.theme-toggle .sun{display:none}.theme-toggle .moon{display:block}@media(max-width:860px){.nav-links{display:none}}#stage-wrap{height:640vh;position:relative}#sticky{position:sticky;top:0;height:100vh;width:100%;overflow:hidden}#glow{position:absolute;inset:0;background:var(--glow);pointer-events:none;transition:background .5s var(--ease)}#gl{position:absolute;inset:0;width:100%;height:100%;display:block}#scene-cap{position:absolute;left:clamp(18px,4vw,56px);bottom:clamp(40px,8vh,90px);max-width:440px;z-index:6;pointer-events:none}#scene-cap .num{font-family:var(--font-mono);font-size:12px;color:var(--blue);letter-spacing:.15em}#scene-cap h2{font-size:clamp(26px,3.2vw,42px);margin:12px 0 10px}#scene-cap p{color:var(--text-2);font-size:15.5px;max-width:38ch}.cap-state{opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .5s var(--ease);position:absolute;bottom:0;left:0}.cap-state.on{opacity:1;transform:none;position:relative}#overlay{position:absolute;inset:0;z-index:5;pointer-events:none}#leaders{position:absolute;inset:0;width:100%;height:100%}.callout{position:absolute;transform:translate(-50%,-50%);background:color-mix(in srgb,var(--surface) 86%,transparent);backdrop-filter:blur(10px);border:1px solid var(--border-2);border-radius:10px;padding:11px 14px;min-width:168px;opacity:0;transition:opacity .35s var(--ease);box-shadow:var(--shadow)}.callout.on{opacity:1}.callout .c-k{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}.callout .c-t{font-family:var(--font-display);font-size:16px;font-weight:600;margin-top:3px}.callout .c-d{font-size:12.5px;color:var(--text-2);margin-top:4px;line-height:1.45}.callout .c-d b{color:var(--green);font-weight:600}#hero{position:absolute;inset:0;z-index:7;display:flex;flex-direction:column;justify-content:center;padding:clamp(78px,12vh,110px) clamp(18px,4vw,56px) clamp(64px,10vh,96px);transition:opacity .4s var(--ease);overflow:hidden}#hero .inner{max-width:620px;max-height:100%}#hero h1{margin:0 0 clamp(14px,2.2vh,22px);font-size:clamp(34px,min(6.6vw,9vh),84px);line-height:1.02}#hero h1 .brk{display:block;height:0}@media(max-height:720px){#hero h1 .brk{display:inline}#hero .hero-meta{display:none}}@media(max-height:600px){#hero .hero-meta{display:none}}#hero .lede{margin-bottom:clamp(18px,3vh,30px);font-size:clamp(15px,1.4vw,19px)}#hero .hero-cta{display:flex;gap:13px;flex-wrap:wrap;align-items:center}#hero .hero-meta{display:flex;gap:22px;margin-top:clamp(20px,3.4vh,34px);flex-wrap:wrap}#hero .hero-meta .m .v{font-family:var(--font-display);font-size:24px;font-weight:600}#hero .hero-meta .m .l{font-family:var(--font-mono);font-size:11px;color:var(--text-3);letter-spacing:.08em;text-transform:uppercase}@media(max-width:760px){#hero{justify-content:flex-start;padding-top:clamp(84px,13vh,120px)}#hero .inner{max-width:100%;position:relative;padding:18px 18px 26px;margin:-18px -18px 0;border-radius:0 0 20px 20px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 92%,transparent) 0%,color-mix(in srgb,var(--bg) 80%,transparent) 62%,transparent 100%);backdrop-filter:blur(2px)}#hero h1{font-size:clamp(33px,9vw,50px)}#hero .lede{font-size:15px;max-width:100%;margin-bottom:22px}#hero .hero-cta .btn{flex:1 1 auto;justify-content:center}#hero .hero-meta{display:none}#scene-cap{left:0;right:0;bottom:0;max-width:100%;padding:0 clamp(18px,5vw,28px) clamp(36px,7vh,64px)}#scene-cap:before{content:"";position:absolute;left:0;right:0;bottom:0;height:200%;z-index:-1;pointer-events:none;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--bg) 60%,transparent) 42%,color-mix(in srgb,var(--bg) 88%,transparent) 72%,var(--bg) 100%)}#scene-cap p{max-width:100%}#overlay .callout,#leaders{display:none}}.scroll-hint{position:absolute;left:50%;bottom:26px;transform:translate(-50%);font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);z-index:7;display:flex;flex-direction:column;align-items:center;gap:8px;transition:opacity .4s}.scroll-hint .bar{width:1px;height:34px;background:linear-gradient(var(--text-3),transparent);animation:drop 1.8s var(--ease) infinite}@keyframes drop{0%{transform:scaleY(0);transform-origin:top}40%{transform:scaleY(1);transform-origin:top}60%{transform:scaleY(1);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}#loader{position:absolute;inset:0;z-index:9;display:grid;place-items:center;background:var(--bg);transition:opacity .6s}#loader .lbar{width:180px;height:2px;background:var(--border);overflow:hidden;border-radius:2px}#loader .lbar i{display:block;height:100%;width:30%;background:var(--grad);animation:load 1.1s var(--ease) infinite}@keyframes load{0%{transform:translate(-100%)}to{transform:translate(430%)}}#loader.hide{opacity:0;pointer-events:none}.cmp-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:50px;flex-wrap:wrap}.cmp-head .lede{margin-top:18px}.cmp{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:var(--surface)}.cmp-row{display:grid;grid-template-columns:1.1fr 1.3fr 1.3fr;border-top:1px solid var(--hair)}.cmp-row:first-child{border-top:none}.cmp-row>div{padding:20px 24px;display:flex;flex-direction:column;gap:5px;justify-content:center}.cmp-row .feat{font-family:var(--font-display);font-weight:600;font-size:16px}.cmp-row .feat span{display:block;font-family:var(--font-mono);font-size:11px;color:var(--text-3);font-weight:400;letter-spacing:.04em;margin-top:3px}.cmp-col-h{background:var(--surface-2)}.cmp-col-h.ortiz{background:linear-gradient(180deg,rgba(47,210,122,.1),transparent)}.cmp-colhead{display:grid;grid-template-columns:1.1fr 1.3fr 1.3fr;border-bottom:1px solid var(--border)}.cmp-colhead>div{padding:18px 24px;font-family:var(--font-display);font-weight:600;display:flex;align-items:center;gap:10px}.cmp-colhead .ortiz-h{background:linear-gradient(180deg,rgba(47,210,122,.14),transparent)}.cmp .val{font-size:14.5px;color:var(--text);display:flex;gap:9px;align-items:flex-start}.cmp .val.ortiz{color:var(--text)}.cmp .val.acton{color:var(--text-3)}.cmp .ic{flex:none;margin-top:2px}.ic-yes{color:var(--green)}.ic-no{color:var(--text-3);opacity:.7}.cmp .acton-col{border-left:1px solid var(--hair)}.cmp .ortiz-col{border-left:1px solid var(--border);background:linear-gradient(180deg,rgba(47,210,122,.05),transparent)}@media(max-width:760px){.cmp-colhead,.cmp-row{grid-template-columns:1fr}.cmp .acton-col,.cmp .ortiz-col{border-left:none}.cmp-row>div{padding:14px 20px}.cmp-row .feat{padding-top:18px}}#cityflow{background:var(--bg-2);border-block:1px solid var(--hair)}.cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}@media(max-width:900px){.cf-grid{grid-template-columns:1fr;gap:40px}}.cf-copy h2{margin:18px 0 20px}.cf-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px}.cf-stats .s .v{font-family:var(--font-display);font-size:clamp(30px,4vw,46px);font-weight:600;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1}.cf-stats .s .l{font-size:13px;color:var(--text-2);margin-top:8px}.cf-quote{font-family:var(--font-display);font-size:clamp(20px,2vw,26px);line-height:1.4;font-weight:500;letter-spacing:-.01em;margin-top:30px}.cf-quote .by{display:block;font-family:var(--font-mono);font-size:12px;color:var(--text-3);margin-top:16px;letter-spacing:.06em}.cf-map{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:#091523;aspect-ratio:16/10;position:relative;box-shadow:var(--shadow)}.cf-map .map-top{display:flex;align-items:center;gap:8px;padding:13px 16px;border-bottom:1px solid var(--hair)}.cf-map .map-top .dt{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #2fd27a2e}.cf-map .map-top .t{font-family:var(--font-mono);font-size:12px;color:var(--text-2)}.cf-map .map-top .r{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--text-3)}.cf-map .canvas{position:absolute;inset:46px 0 0;overflow:hidden;background:#091523}.cf-map .canvas img{width:100%;height:100%;object-fit:cover;object-position:56% 50%;display:block}.cf-map .grid-bg{position:absolute;inset:0;background-image:linear-gradient(var(--hair) 1px,transparent 1px),linear-gradient(90deg,var(--hair) 1px,transparent 1px);background-size:38px 38px}.cf-map .road{position:absolute;background:var(--border)}.pin{position:absolute;width:11px;height:11px;border-radius:50%;transform:translate(-50%,-50%)}.pin.live{background:var(--green);box-shadow:0 0 #2fd27a80;animation:pulse 2.6s var(--ease) infinite}.pin.idle{background:var(--blue)}.pin.lock{background:var(--text-3)}@keyframes pulse{0%{box-shadow:0 0 #2fd27a73}70%{box-shadow:0 0 0 10px #2fd27a00}to{box-shadow:0 0 #2fd27a00}}.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:56px}@media(max-width:900px){.feat-grid{grid-template-columns:1fr}}.fcard{border:1px solid var(--border);border-radius:16px;padding:30px;background:var(--surface);position:relative;overflow:hidden;transition:border-color .25s,transform .25s var(--ease)}.fcard:hover{border-color:var(--border-2);transform:translateY(-3px)}.fcard .ficon{width:46px;height:46px;border-radius:11px;display:grid;place-items:center;background:var(--grad-soft);border:1px solid var(--border);color:var(--blue);margin-bottom:22px}.fcard .ficon svg{width:23px;height:23px}.fcard h3{font-size:21px;margin-bottom:10px}.fcard p{color:var(--text-2);font-size:14.5px}.fcard .spec{margin-top:20px;padding-top:18px;border-top:1px solid var(--hair);display:flex;flex-direction:column;gap:9px}.fcard .spec .sr{display:flex;justify-content:space-between;font-size:13px}.fcard .spec .sr .k{color:var(--text-3);font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em}.fcard .spec .sr .v{color:var(--text);font-family:var(--font-mono);font-size:12px}#saas{background:var(--bg-2);border-block:1px solid var(--hair)}.saas-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}@media(max-width:960px){.saas-grid{grid-template-columns:1fr;gap:44px}}.saas-copy h2{margin:18px 0 20px}.brand-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.brand-chips .bc{padding:9px 15px;border:1px solid var(--border);border-radius:999px;font-family:var(--font-mono);font-size:13px;color:var(--text-2);background:var(--surface);display:flex;align-items:center;gap:8px}.brand-chips .bc.us{color:var(--text);border-color:var(--green)}.brand-chips .bc .d{width:7px;height:7px;border-radius:50%;background:var(--text-3)}.brand-chips .bc.us .d{background:var(--green)}.api-card{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}.api-card .bar{display:flex;align-items:center;gap:7px;padding:12px 16px;border-bottom:1px solid var(--hair)}.api-card .bar .d{width:11px;height:11px;border-radius:50%;background:var(--border-2)}.api-card .bar .m{margin-left:10px;font-family:var(--font-mono);font-size:12px;color:var(--text-3)}.api-card pre{margin:0;padding:20px 18px;font-family:var(--font-mono);font-size:13px;line-height:1.7;overflow-x:auto;color:var(--text-2)}.api-card .cm{color:var(--text-3)}.api-card .mt{color:var(--blue)}.api-card .st{color:var(--green)}.api-card .kw{color:#c98bff}.api-card .nm{color:var(--text)}#contact{text-align:center}#contact .c-inner{max-width:760px;margin-inline:auto}#contact h2{margin:20px 0 22px}#contact .lede{margin-inline:auto;margin-bottom:36px}.mail-btn{font-family:var(--font-mono);font-size:clamp(16px,2.4vw,24px);font-weight:500;display:inline-flex;align-items:center;gap:14px;padding:18px 30px;border:1px solid var(--border-2);border-radius:12px;background:var(--surface);transition:.25s var(--ease);color:var(--text)}.mail-btn:hover{border-color:var(--green);background:var(--surface-2);transform:translateY(-2px)}.mail-btn .at{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}footer.ft{border-top:1px solid var(--hair);padding:50px 0 40px}.ft-grid{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap}.ft .brand{margin-bottom:14px}.ft .disc{font-size:13px;color:var(--text-3);max-width:46ch;line-height:1.6}.ft .ft-links{display:flex;gap:40px}.ft .ft-links .col{display:flex;flex-direction:column;gap:11px}.ft .ft-links .col .ch{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin-bottom:4px}.ft .ft-links .col a{font-size:14px;color:var(--text-2)}.ft .ft-links .col a:hover{color:var(--text)}.ft .copy{margin-top:40px;padding-top:24px;border-top:1px solid var(--hair);font-family:var(--font-mono);font-size:12px;color:var(--text-3);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.ft .copy .coopwork-attr{display:inline-flex;align-items:center;gap:10px;color:var(--text-3);transition:color .15s}.ft .copy .coopwork-attr span{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.ft .copy .coopwork-attr img{height:28px;width:auto;display:block}.ft .copy .coopwork-attr:hover{color:var(--text)}[data-theme=light] .ft .copy .coopwork-attr img{filter:invert(1)}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
