html.wiz-site{--ink:#172d36;--blue:#2d819f;--body:#52636a;--portrait-paper:#f1f2ef;scroll-padding-top:125px}
.hero-page{padding-top:0}
.hero-header{position:sticky;top:18px;margin:28px auto -112px;height:84px;width:calc(100% - 112px);max-width:1256px;border:1px solid #e4e4e4;border-radius:11px;background:#fff;box-shadow:0 8px 30px #0000000d;color:#111;z-index:20}
.hero-header .header-inner{width:calc(100% - 58px);max-width:none;gap:24px}
.hero-header .brand img{width:104px!important}
.hero-header #main-nav{gap:21px}
.hero-header #main-nav a{font-size:13px;color:#111}
.hero-header #main-nav>a:first-child{color:#111}
.hero-header #main-nav a:hover{color:#111;border-color:#111}
.hero-header .portrait-header-cta{display:inline-flex}
.hero-header .portrait-header-cta>span{border-radius:4px 0 0 4px;background:#111;color:#fff;padding:12px 15px;font-size:12px;min-height:38px;font-weight:600}
.hero-header .portrait-header-cta>i{border-radius:0 4px 4px 0;background:#111;color:#fff;margin:0;width:32px;height:38px;font-size:16px}
.hero-header .portrait-header-cta:hover>span,.hero-header .portrait-header-cta:hover>i{background:#333}
.hero-header .nav-project-link{color:#111;border-color:#dedede;background:transparent}
.hero-header .nav-project-link:disabled{color:#737373;opacity:1}
.hero-header .nav-project-link:hover:not(:disabled){background:#f3f3f3;color:#111}
.hero-hero{background:#07162e;color:#fff;position:relative;overflow:hidden;isolation:isolate;min-height:850px}
.hero-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 6% 40%,#123c7bbb 0,transparent 46%),radial-gradient(ellipse at 106% 87%,#143e8da3 0,transparent 46%),linear-gradient(110deg,#07142d 30%,#030f21 56%,#102957 100%);z-index:-2}
.hero-hero::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:37px;background:white;border-radius:39px 39px 0 0;z-index:3}
.hero-orb{position:absolute;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(29px)}
.hero-orb-blue{width:500px;height:570px;right:-22px;top:121px;background:radial-gradient(ellipse,#1d56cd95 12%,#235bdc6b 52%,transparent 72%);transform:rotate(24deg)}
.hero-orb-cyan{width:550px;height:330px;right:-230px;top:290px;background:radial-gradient(ellipse,#00bac880 6%,#1ea7c65c 44%,transparent 73%);transform:rotate(-38deg)}
.hero-hero-inner{position:relative;display:grid;grid-template-columns:1.04fr 1fr;gap:56px;max-width:1256px!important;padding-top:205px;padding-bottom:80px;align-items:start}
.hero-copy{min-width:0;padding-top:0}
.hero-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:49px;padding:14px 18px;border:1px solid transparent;border-radius:4px;font-size:14px;font-weight:500;line-height:1.4;text-decoration:none}
.hero-button span{font-size:18px;font-weight:400}
.hero-button-primary{background:#31c1e7;color:#06233d;border-color:#31c1e7}
.hero-button-primary:hover{background:#80e0f7;border-color:#80e0f7}
.hero-button-outline{background:#07193040;color:#f0f6ff;border-color:#c1d3eb8a}
.hero-button-outline:hover{background:#234d7a60;border-color:#b9d6f4}
.hero-page .site-company{padding-top:72px}
.hero-page .portrait-contact-main{padding-top:96px}
.hero-page .portrait-contact-layout{padding-top:67px}
@media(min-width:1500px){.hero-hero-inner{padding-top:225px;gap:72px}
}
@media(max-width:1200px){.hero-header{width:calc(100% - 70px)}
.hero-header .header-inner{gap:18px;width:calc(100% - 42px)}
.hero-header #main-nav{gap:16px}
.hero-header #main-nav a{font-size:12px}
.hero-header .portrait-header-cta>span{padding-inline:12px}
.hero-hero-inner{gap:36px;padding-top:187px}
.hero-button{font-size:13px;gap:17px}
}
@media(max-width:1100px){.hero-hero-inner{grid-template-columns:1fr;gap:48px;padding-top:180px}
.hero-copy{max-width:700px}
.hero-orb-blue{top:850px}
.hero-orb-cyan{top:1100px}
}
@media(max-width:1000px){.hero-header{width:calc(100% - 48px)}
.hero-header .header-inner{gap:14px}
.hero-header #main-nav{gap:12px}
.hero-header .portrait-header-cta{display:none}
}
@media(max-width:900px){.hero-header{height:80px;margin-top:22px;margin-bottom:-102px;top:14px}
.hero-header .header-inner{width:calc(100% - 44px)}
.hero-header #main-nav{border:1px solid #dedede;border-radius:8px}
.hero-header #main-nav a{font-size:14px}
}
@media(max-width:740px){.hero-header{width:calc(100% - 32px);margin-top:16px;margin-bottom:-96px;top:10px;border-radius:8px}
.hero-header .header-inner{width:calc(100% - 34px)}
.hero-header .brand img{width:89px!important}
.hero-header #main-nav{left:-17px;right:-17px;padding:16px 21px}
.hero-hero-inner{width:calc(100% - 48px)!important;padding-top:152px;padding-bottom:65px;gap:46px}
.hero-hero::after{height:29px;border-radius:29px 29px 0 0}
.hero-page .portrait-contact-main{padding-top:103px}
.hero-page .portrait-contact-layout{padding-top:30px}
}
@media(max-width:500px){.hero-hero-inner{width:calc(100% - 44px)!important;padding-top:142px;gap:40px}
.hero-hero-actions{gap:10px;margin-top:24px}
.hero-button{font-size:13px;padding:13px 14px;gap:15px}
.hero-header .brand img{width:83px!important}
.hero-header .header-inner{gap:10px}
}
html.wiz-site .site-header.hero-header{height:84px;background:#fff;border:1px solid #e4e4e4;box-shadow:0 8px 30px #0000000d;color:#111}
html.wiz-site .hero-header #main-nav a{color:#111}
html.wiz-site .hero-header #main-nav>a:first-child{color:#111}
@media(max-width:900px){html.wiz-site .site-header.hero-header{height:80px}
html.wiz-site .hero-header .menu-toggle{border-color:#d5d5d5}
html.wiz-site .hero-header .menu-toggle span{background:#111}
html.wiz-site .hero-header #main-nav{background:#fff;border-color:#dedede;box-shadow:0 20px 35px #00000014}
}
.hero-architecture{position:relative;isolation:isolate;display:flex;flex-direction:column;gap:28px;width:100%;height:auto;min-width:0;margin:0;padding-bottom:4px}
.hero-depth-scene{position:absolute;inset:-24px;z-index:0;pointer-events:none}
.hero-depth-scene canvas{display:block;width:100%;height:100%}
.hero-connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;pointer-events:none;z-index:1}
.hero-connections path{fill:none;stroke:#8bd5e9;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;opacity:.7}
.hero-system-node{position:relative;align-self:flex-start;width:68%;min-height:0;padding:18px 19px 16px;border:1px solid #8aa6c55c;border-radius:10px;background:linear-gradient(115deg,#193c62,#28528b);color:#eef7ff;z-index:2;box-shadow:0 10px 24px #020d262e}
.hero-node-models,.hero-node-integration{align-self:flex-end}
.hero-node-data{width:68%;background:linear-gradient(115deg,#173b59,#2b568e)}
.hero-node-models{width:72%;background:linear-gradient(115deg,#1c4269,#2a568e)}
.hero-node-apps{width:76%}
.hero-node-integration{width:70%}
.hero-node-title{display:flex;align-items:center;gap:11px;min-height:32px}
.hero-node-icon{display:flex;flex:none;color:#def5ff}
.hero-node-icon svg{display:block;width:32px;height:32px;fill:currentColor;stroke:none}
.hero-architecture-end{position:relative;align-self:flex-end;display:flex;gap:clamp(18px,2.4vw,32px);width:max-content;margin-top:32px;z-index:2}
.hero-architecture-end>span{width:72px;height:72px;min-width:72px;flex:0 0 72px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;padding:0;font-size:14px;font-weight:500;line-height:1;background:#23496e;border:1px solid #8ba8c4;color:#f0f9ff;box-shadow:0 7px 16px #03132f35}
.hero-architecture-end>span:last-child{background:#167f9a;color:#fff;border-color:#87e3f0}
.hero-architecture figcaption{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:7px;font-size:12px;line-height:1.65;color:#b6c8e1;z-index:2}
.hero-motion-toggle{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:5px 9px;border:1px solid #91b5d34d;border-radius:4px;font:inherit;color:#dfedf7;background:#0c244040;cursor:pointer;white-space:nowrap}
.hero-motion-toggle[hidden]{display:none}
.hero-motion-toggle:hover{background:#1c4368}
.hero-motion-toggle:focus-visible{outline:2px solid #8bd5e9;outline-offset:3px}
@media(max-width:1100px){.hero-architecture{max-width:600px;margin:0 auto}
}
@media(max-width:740px){.hero-architecture{max-width:520px}
}
@media(max-width:500px){.hero-system-node{width:84%;padding:17px 15px 15px}
.hero-node-title{gap:9px}
.hero-architecture figcaption{gap:10px}
}
@media(max-width:370px){.hero-system-node{width:94%;padding:16px 13px 14px}
.hero-architecture figcaption{font-size:10px}
}
.hero-badge{margin:0;color:#c9d9e9!important;font-size:13px;line-height:1.5;font-weight:400;letter-spacing:.1px}
.hero-copy h1{font-size:clamp(52px,4.7vw,68px);line-height:1.08;letter-spacing:-2.2px;font-weight:400!important;color:#fbfcff;margin-top:22px}
.hero-copy h1 strong{font-weight:600;white-space:nowrap}
.hero-introduction{margin-top:30px;max-width:510px}
.hero-introduction>p{font-size:20px;line-height:1.6;color:#edf3fa!important}
.hero-introduction>span{display:block;margin-top:16px;font-size:16px;line-height:1.6;color:#c0d1e3}
.hero-hero-actions .hero-button{font-size:15px}
.hero-node-title h2{font-size:19px!important;line-height:1.35!important;letter-spacing:-.2px!important;font-weight:500!important;color:#fff;white-space:normal}
.hero-node-data .hero-node-title h2{font-size:21px!important}
.hero-system-node>p{font-size:15px;line-height:1.55;color:#dce8f6!important;margin-top:12px;max-width:32ch}
@media(min-width:1500px){.hero-copy h1{font-size:68px}
}
@media(max-width:1200px){.hero-copy h1{font-size:56px}
.hero-introduction>p{font-size:19px}
}
@media(max-width:1100px){.hero-copy h1{font-size:64px}
.hero-introduction{max-width:620px}
}
@media(max-width:740px){.hero-copy h1{font-size:clamp(46px,8.2vw,60px);letter-spacing:-1.8px}
.hero-introduction>p{font-size:19px}
}
@media(max-width:500px){.hero-copy h1{font-size:48px}
.hero-badge{font-size:12px}
.hero-hero-actions .hero-button{font-size:14px}
.hero-system-node{width:88%}
.hero-node-apps{width:92%}
.hero-node-title h2{font-size:18px!important}
.hero-node-data .hero-node-title h2{font-size:20px!important}
}
@media(max-width:370px){.hero-copy h1{font-size:42px;letter-spacing:-1.5px}
.hero-introduction>p{font-size:18px}
.hero-system-node,.hero-node-apps{width:94%}
.hero-node-title h2{font-size:17px!important}
.hero-node-data .hero-node-title h2{font-size:19px!important}
.hero-hero-actions .hero-button{font-size:13px}
}
.hero-hero-inner{
  align-items: center;
  padding-top: 180px;
  padding-bottom: 72px;
}
.hero-architecture{ gap: 22px; }
.hero-architecture .hero-system-node{
  padding: 16px 20px;
  border-color: #8aa6c55c;
  background: linear-gradient(115deg, #193c62, #28528b);
  color: #f4f8fd;
  box-shadow: 0 10px 24px #020d262e;
}
.hero-architecture .hero-node-title h2{ color: #f4f8fd; font-size: 20px!important; }
.hero-architecture .hero-node-icon{ color: #c6edff; }
.hero-architecture .hero-system-node > p{
  max-width: none;
  margin-top: 10px;
  color: #e0ecf8!important;
}
.hero-architecture-end{ margin-top: 18px; }
.hero-architecture-end > span{
  background: #23496e;
  border-color: #8ba8c4;
  color: #f0f9ff;
  box-shadow: 0 7px 18px #03132f24;
}
.hero-architecture-end > span:last-child{
  background: #167f9a;
  border-color: #87e3f0;
  color: #ffffff;
}
.hero-architecture figcaption{ margin-top: 0; }
.hero-offices{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  width: 100%;
  max-width: 460px;
  margin-top: 32px;
  padding-top: 22px;
  border-top: 1px solid #adc9e52e;
}
.hero-office{ display: grid; grid-template-columns: 20px minmax(0, 1fr); align-items: start; gap: 10px; }
.hero-office > svg{ width: 20px; height: 20px; margin-top: 1px; fill: none; stroke: #8dc9e6; stroke-width: 1.5; }
.hero-office p{ margin: 0; }
.hero-office strong{ display: block; color: #f4f8fd; font-size: 16px; line-height: 1.4; font-weight: 500; }
.hero-office p > span{ display: block; margin-top: 4px; color: #aec4dc; font-size: 13px; line-height: 1.5; }
@media (min-width: 1500px){.hero-hero-inner{ padding-top: 190px; }
}
@media (max-width: 1100px){.hero-hero-inner{ align-items: start; padding-top: 180px; }
}
@media (max-width: 740px){.hero-hero-inner{ padding-top: 152px; padding-bottom: 65px; }
}
@media (max-width: 500px){.hero-hero-inner{ padding-top: 142px; }
.hero-architecture .hero-system-node{ padding: 16px 15px; }
.hero-architecture .hero-node-title h2{ font-size: 18px!important; }
.hero-offices{ gap: 18px; margin-top: 28px; padding-top: 20px; }
.hero-office{ grid-template-columns: 18px minmax(0, 1fr); gap: 8px; }
.hero-office > svg{ width: 18px; height: 18px; }
.hero-office p > span{ font-size: 12px; }
}
