@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("assets/fonts/inter-latin.woff2") format("woff2");
}

@font-face {
  font-family: "Outfit";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/fonts/outfit-bold-latin.woff2") format("woff2");
}

:root { --paper:#f7f4f4; --ink:#1a1a1a; --blue:#1246ae; --warm:#a89f92; --footer:#0f0f0f; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:var(--paper); color:var(--ink); font-family:"Inter",sans-serif; margin:0; overflow-x:hidden; }
a { color:inherit; }
img { display:block; max-width:100%; }
h1,h2,h3,p,figure { margin:0; }
h1,h2,h3,.vision-copy { font-family:Georgia,"Times New Roman",serif; font-weight:400; }

.site-header { align-items:center; background:#fffefc; box-shadow:0 0 77px rgb(42 53 153 / 15%); display:flex; height:64px; justify-content:space-between; left:0; padding:0 5vw; position:absolute; right:0; top:0; z-index:10; }
.variant-toggle { background:transparent; border:0; cursor:default; height:64px; left:0; min-height:44px; min-width:44px; padding:0; position:absolute; top:0; width:64px; }
.brand { display:block; height:36.591px; overflow:hidden; text-decoration:none; width:222px; }
.brand-lockup { display:block; height:100%; position:relative; width:100%; }
.brand-mark { height:21.864px; left:9.67px; position:absolute; top:8px; width:25.227px; }
.brand-mark img { max-width:none; position:absolute; }
.brand-mark .brand-union { bottom:15.38%; height:auto; left:13.33%; right:6.67%; top:0; width:auto; }
.brand-mark .brand-base { height:100%; inset:0; width:100%; }
.brand-mark .brand-vector { bottom:0; height:100%; left:13.33%; right:0; top:0; width:86.67%; }
.brand-wordmark { font-family:"Outfit",sans-serif; font-size:20.182px; font-weight:700; left:46.67px; letter-spacing:0; line-height:16.818px; position:absolute; top:9.68px; white-space:nowrap; }
.desktop-nav { align-items:center; display:flex; gap:30px; }
.desktop-nav a { font-size:14px; letter-spacing:1px; line-height:22.4px; text-decoration:none; }
.nav-contact { background:#1a1a1a; border-radius:5px; color:#fff; padding:7.5px 20px 7.9px; }
.menu-btn { background:transparent; border:0; cursor:pointer; display:none; height:44px; min-height:44px; min-width:44px; padding:10px; width:44px; }
.menu-btn span { background:currentColor; display:block; height:1px; margin:5px 0; width:22px; }

.hero { background:#f7f4f4; height:805px; overflow:hidden; position:relative; }
.hero::after { background:linear-gradient(180.08deg,#f9f6f0 .44%,rgb(246 246 246 / 0%) 90.51%); content:""; height:228px; left:-7px; opacity:.88; pointer-events:none; position:absolute; top:64px; width:calc(100% + 7px); }
.hero-art { background-image:url("assets/figma-106/72b676755d023ede62355f1b8555e1a3f895ff17.png"); background-position:center; background-repeat:no-repeat; background-size:cover; height:895.633px; left:-3.36px; position:absolute; top:-4.3px; transform:rotate(-.4deg); width:1434.007px; }
.hero-content { left:8.75vw; max-width:663px; position:absolute; top:378px; z-index:1; }
.hero h1 { font-size:64px; letter-spacing:-.78px; line-height:64px; white-space:nowrap; }
.hero h1 span { color:var(--blue); }
.hero-content > p { font-size:18px; line-height:25px; margin-top:41px; max-width:663px; opacity:.88; }
.hero-actions,.join-actions { display:flex; gap:13.99px; margin-top:52.99px; }
.button { align-items:center; border-radius:5px; display:inline-flex; font-size:15px; font-weight:500; gap:7.99px; height:45px; justify-content:center; line-height:24px; padding:0 27px; text-decoration:none; white-space:nowrap; }
.button-dark { background:#1a1a1a; border:1px solid #8d8d8d; color:#dfedff; min-width:204px; }
.button-blue { background:linear-gradient(#6182bf,#869ebb); border:1px solid rgb(255 255 255 / 37%); color:#fff; min-width:109px; }
.button-arrow { height:17px; width:17px; }
.button-arrow-dark { display:none; }

.vision { display:grid; grid-template-columns:19.236vw minmax(0,1fr); height:275px; margin-left:8.542vw; margin-top:2px; position:relative; width:89.306vw; z-index:2; }
.vision-art { border:.5px solid #bbb; height:275px; overflow:hidden; position:relative; width:100%; }
.vision-art img { height:166.98%; left:-92.94%; max-width:none; position:absolute; top:-.68%; width:193.05%; }
.vision-copy { align-items:center; background:rgb(0 0 0 / 86%); color:#fff5e7; display:flex; font-size:24px; height:275px; line-height:36px; min-width:0; padding:69px 5.903vw; width:100%; }
.vision-copy p { max-width:798px; width:100%; }

.approach { background:#f7f5f4; color:#1a1a1a; height:857px; position:relative; }
.approach-card { background:#f3f1ef; height:857px; left:2.222vw; overflow:hidden; position:absolute; top:0; width:95.556vw; }
.approach-heading { left:6.667vw; max-width:640px; position:absolute; top:65.25px; z-index:2; }
.eyebrow { color:#b8542e; font-family:"Inter",sans-serif; font-size:12px; font-weight:600; letter-spacing:1.68px; line-height:19.2px; text-transform:uppercase; }
.approach h2 { font-size:48px; letter-spacing:-.46px; line-height:51.52px; margin-top:14.6px; white-space:nowrap; }
.approach h2 span { color:var(--warm); }
.approach-stage { height:100%; inset:0; position:absolute; z-index:1; }
.inference-copy { border-left:.65px solid #777; height:193px; left:4.583vw; padding-left:27px; position:absolute; top:559px; width:30.208vw; }
.inference-copy::before { background:#777; content:""; height:98px; left:-2px; position:absolute; top:0; width:3px; }
.inference-copy h3 { font-size:36px; letter-spacing:-.2px; line-height:32px; position:absolute; top:-5px; white-space:nowrap; }
.inference-copy p { color:#555; font-size:21px; line-height:25px; max-width:22.153vw; position:absolute; top:105px; }
.device-media { height:679.373px; left:35.886vw; mix-blend-mode:darken; overflow:hidden; position:absolute; top:88.48px; width:56.302vw; }
.device-media video,.device-poster { height:100%; inset:0; object-fit:cover; position:absolute; width:100%; }
.device-poster { transition:opacity .45s ease-out; z-index:2; }
.device-media video { transform:scaleX(1.008); transform-origin:center; z-index:1; }
.device-media.video-is-playing .device-poster { opacity:0; }

.join { align-items:center; background:#faf9f7; display:flex; height:611px; justify-content:center; overflow:hidden; padding:100px 160px; position:relative; }
.join-backdrop { background-image:linear-gradient(180deg,#f8f6f2,rgb(255 255 255 / 0%)),url("assets/figma-106/44bb1f778fc81f63a631cc5326e944364119210d.png"); background-position:center bottom; background-size:cover; inset:0; position:absolute; }
.join-card { align-items:center; background:linear-gradient(#f0efed,rgb(241 240 237 / 70%)); border:.5px solid #666460; color:#1a1a1a; display:flex; flex-direction:column; max-width:720px; padding:64.75px 32.5px 60.49px; position:relative; text-align:center; width:720px; }
.join-card .eyebrow { color:#628aa8; }
.join h2 { font-size:40px; letter-spacing:-.4px; line-height:64px; margin-top:15.3px; }
.join-card > p:not(.eyebrow) { color:#776f63; font-size:17px; line-height:27.2px; max-width:480px; }
.join-actions { gap:14px; margin-top:14.7px; }
.join-actions .button-dark { color:#fff; min-width:136px; padding:0 30px; }
.join-actions .button-blue { min-width:109px; }
.role-tooltip-wrap { position:relative; }
.role-tooltip-trigger { cursor:pointer; font-family:inherit; }
.role-tooltip { background:#161616; border:1px solid rgb(255 255 255 / 22%); border-radius:5px; bottom:57px; box-shadow:0 8px 24px rgb(0 0 0 / 18%); color:#f7f4f4; font-size:13px; left:50%; line-height:20px; opacity:0; padding:10px 13px; pointer-events:none; position:absolute; transform:translate(-50%,4px); user-select:text; visibility:hidden; white-space:nowrap; z-index:5; }
.role-tooltip::after { border-left:6px solid transparent; border-right:6px solid transparent; border-top:6px solid #161616; content:""; left:50%; position:absolute; top:100%; transform:translateX(-50%); }
.role-tooltip-wrap[data-open="true"] .role-tooltip { opacity:1; pointer-events:auto; transform:translate(-50%,0); visibility:visible; }
.role-tooltip-email { color:#d3e1ff; text-decoration:underline; text-underline-offset:2px; }

footer { background:var(--footer); color:#b3aa9c; height:406px; }
.footer-main { display:grid; gap:60px; grid-template-columns:1.4fr 1fr; height:336px; margin:0 auto; max-width:1072px; padding:72px 0 64px; }
.footer-main > div:first-child { display:flex; flex-direction:column; gap:21.6px; }
.footer-brand { color:#fff; display:block; font-family:Georgia,serif; font-size:22px; font-weight:700; letter-spacing:-.44px; line-height:35.2px; text-decoration:none; }
.footer-main p { font-size:16px; line-height:25.6px; max-width:380px; }
.footer-email { align-items:center; align-self:flex-start; display:inline-flex; font-size:16px; gap:12px; line-height:25.6px; min-height:44.4px; padding-top:4.4px; text-decoration:none; }
.footer-email-icon-wrap { align-items:center; border:1px solid #383229; display:flex; height:40px; justify-content:center; width:40px; }
.footer-email-icon { height:16px; width:16px; }
.footer-main nav { align-content:start; display:grid; gap:10px; grid-template-columns:repeat(2,minmax(90px,1fr)); }
.footer-main nav p { color:#fff; font-family:Georgia,serif; font-size:16px; grid-column:1 / -1; line-height:25.6px; margin-bottom:6px; }
.footer-main nav a { font-size:14px; line-height:22.4px; text-decoration:none; }
.footer-bottom { border-top:.5px solid rgb(255 255 255 / 50%); display:flex; font-size:13px; height:70px; justify-content:space-between; line-height:20.8px; padding:24.5px 184px 24px; }
.footer-bottom span:last-child { display:flex; gap:24px; }
.footer-bottom a { text-decoration:none; }

html[data-variant="dark"] { --paper:#000; --ink:#fff; --warm:#a89f92; --footer:#1a1a1a; color-scheme:dark; }
html[data-variant="dark"] body { background:#000; }
html[data-variant="dark"] .site-header { background:#fffefc; color:#111; }
html[data-variant="dark"] .hero { background:#000; }
html[data-variant="dark"] .hero-art { background-image:url("assets/figma-105/hero-cinematic-2k.jpg"); height:1362.71px; left:-377px; top:-234px; transform:rotate(179.33deg) scaleY(-1); width:2181.85px; }
html[data-variant="dark"] .hero-content { left:74px; top:360px; }
html[data-variant="dark"] .hero h1 { color:#fff; }
html[data-variant="dark"] .hero h1 span { color:#d3e1ff; }
html[data-variant="dark"] .hero-content > p { color:#fff; }
html[data-variant="dark"] .hero-actions .button-dark { background:#edf0f6; border-color:#fff; color:#5b85bb; }
html[data-variant="dark"] .hero-actions .button-blue { background:linear-gradient(#3e537c,#6d7d91); }
html[data-variant="dark"] .hero-actions .button-arrow-light { display:none; }
html[data-variant="dark"] .hero-actions .button-arrow-dark { display:block; }
html[data-variant="dark"] .vision { margin-top:0; }
html[data-variant="dark"] .vision-art img { visibility:visible; z-index:2; }
html[data-variant="dark"] .vision-art::before { background:url("assets/figma-105/a6e6403cdcf3577034010bb72a83e78fd7031292.png") center/cover; content:""; inset:0; position:absolute; z-index:1; }
html[data-variant="dark"] .vision-copy { background:linear-gradient(90deg,#000,rgb(0 0 0 / 0%)); }
html[data-variant="dark"] .approach { background:url("assets/figma-105/38f9a248bcf246c96716b924d685fecceddf42ca.png") center bottom/cover; height:846px; margin-top:2px; }
html[data-variant="dark"] .approach-card { background:linear-gradient(#f3f1ef,rgb(234 233 229 / 90%)); height:820px; left:33px; top:13px; width:calc(100% - 64px); }
html[data-variant="dark"] .approach-heading { top:78.25px; }
html[data-variant="dark"] .inference-copy { top:572px; }
html[data-variant="dark"] .device-media { top:101.48px; }
html[data-variant="dark"] .join { background:#000; }
html[data-variant="dark"] .join { margin-top:-7px; }
html[data-variant="dark"] .join-backdrop { background-image:linear-gradient(180deg,rgb(255 255 255 / 0%),#f8f6f2),url("assets/figma-105/e86e3c68173afa66a54ad0875bd7020cae6edbf4.png"); }

:focus-visible { outline:2px solid #2766df; outline-offset:3px; }

@media (min-width:1441px) {
  .hero-art { left:-6px; width:calc(100vw + 12px); }
  html[data-variant="dark"] .hero-art { left:-430px; width:calc(100vw + 860px); }
}

@media (min-width:1024px) and (max-width:1199px) {
  .footer-main { padding-left:28px; padding-right:28px; }
}

@media (max-width:1023px) {
  .site-header { padding:0 16px; }
  .variant-toggle { width:44px; }
  .brand { height:34px; transform:scale(.82); transform-origin:left center; width:222px; }
  .desktop-nav { display:none; }
  .menu-btn { display:block; margin-left:auto; }
  .mobile-menu:not([hidden]) { background:#f8f6f2; box-shadow:0 12px 18px rgb(0 0 0 / 10%); display:flex; flex-direction:column; left:0; padding:6px 20px 16px; position:absolute; right:0; top:64px; }
  html[data-variant="dark"] .mobile-menu:not([hidden]) { background:#20242a; color:#fff; }
  .mobile-menu a { border-bottom:1px solid rgb(30 30 30 / 13%); font-size:15px; padding:14px 0; text-decoration:none; }
  .hero { height:748px; }
  .hero-art { background-position:center top; height:748px; left:-390px; top:0; transform:none; width:1180px; }
  html[data-variant="dark"] .hero-art { background-position:center; height:748px; left:calc(50% - 600px); top:0; transform:rotate(179.33deg) scaleY(-1); width:1200px; }
  .hero::after { height:180px; }
  .hero-content,html[data-variant="dark"] .hero-content { left:32px; max-width:calc(100% - 64px); right:32px; top:230px; }
  .hero h1 { font-size:48px; letter-spacing:-.5px; line-height:48px; white-space:normal; }
  .hero-content > p { font-size:16px; line-height:23px; margin-top:30px; }
  .hero-actions { flex-direction:row; margin-top:30px; }
  .button { font-size:14px; padding:0 18px; }
  .hero-actions .button-dark { min-width:174px; }
  .hero-actions .button-blue { min-width:92px; }
  .vision,html[data-variant="dark"] .vision { display:block; height:auto; margin:0 16px; top:0; width:auto; }
  .vision-art { height:190px; width:100%; }
  .vision-art img { height:100%; inset:0; object-fit:cover; object-position:center; width:100%; }
  html[data-variant="dark"] .vision-art { aspect-ratio:1; height:auto; width:min(277px,100%); }
  html[data-variant="dark"] .vision-art img { height:166.98%; inset:auto; left:-92.94%; max-width:none; object-fit:fill; top:-.68%; width:193.05%; }
  .vision-copy { font-size:20px; height:auto; line-height:30px; min-height:270px; padding:38px 28px; width:100%; }
  .vision-copy p { width:auto; }
  .approach,html[data-variant="dark"] .approach { height:850px; }
  .approach-card,html[data-variant="dark"] .approach-card { height:818px; left:16px; top:16px; width:calc(100% - 32px); }
  .approach-heading,html[data-variant="dark"] .approach-heading { left:32px; top:52px; }
  .approach h2 { font-size:38px; line-height:42px; white-space:normal; }
  .device-media,html[data-variant="dark"] .device-media { height:365px; left:24px; top:220px; width:calc(100% - 48px); }
  .inference-copy,html[data-variant="dark"] .inference-copy { bottom:62px; height:150px; left:42px; top:auto; width:calc(100% - 84px); }
  .inference-copy h3 { font-size:30px; line-height:32px; }
  .inference-copy p { font-size:17px; line-height:23px; max-width:none; top:66px; width:100%; }
  .join { height:590px; padding:70px 20px; }
  .join-card { height:auto; padding:52px 24px; width:100%; }
  .join-actions { flex-direction:column; width:100%; }
  .join-actions .button { width:100%; }
  .role-tooltip-wrap { width:100%; }
  .role-tooltip { bottom:55px; max-width:100%; white-space:normal; width:max-content; }
  footer { height:auto; }
  .footer-main { gap:42px; grid-template-columns:1fr; height:auto; padding:58px 28px; }
  .footer-bottom { align-items:flex-start; flex-direction:column; gap:18px; height:auto; padding:24px 28px; }
}

@media (min-width:480px) and (max-width:1023px) {
  .hero-actions .button { font-size:15px; padding:0 27px; }
  .hero-actions .button-dark { min-width:204px; width:204px; }
  .hero-actions .button-blue { min-width:109px; width:109px; }
}

@media (min-width:768px) and (max-width:1023px) {
  .vision,html[data-variant="dark"] .vision { display:grid; grid-template-columns:19.236vw minmax(0,1fr); height:275px; margin-left:8.542vw; margin-right:0; width:89.306vw; }
  .vision-art { height:275px; }
  .vision-copy { height:275px; min-height:275px; padding:38px 4vw; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .button,.device-poster { transition:none; }
  .device-media video { display:none; }
  .device-poster { opacity:1 !important; }
}
