/* Foundation */
:root {
    --color-primary:#2454dd;
    --color-secondary:#153478;
    --color-accent:#c1edb7;
    --color-text:#192329;
    --color-muted:#5e6870;
    --color-border:#dce1e0;
    --color-surface:#f1f4f3;
    --color-background:#fafbf8;
    --radius-sm:5px;
    --radius-md:12px;
    --radius-lg:20px;
    --shadow-sm:0 8px 24px #20333c08;
    --shadow-md:0 18px 50px #20333c12;
    --space:8px
}
*,*::before,*::after {
    box-sizing:border-box
}
html {
    scroll-behavior:smooth;
    scroll-padding-top:110px
}
body {
    margin:0;
    color:var(--color-text);
    background:var(--color-background);
    font-family:"Segoe UI",Arial,sans-serif;
    font-size:16px;
    line-height:1.65;
    -webkit-font-smoothing:antialiased
}
a {
    color:inherit;
    text-decoration:none
}
button,input,select,textarea {
    font:inherit
}
button,a,input,select,textarea {
    -webkit-tap-highlight-color:transparent
}
button {
    cursor:pointer
}
button:disabled {
    cursor:default
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible {
    outline:3px solid var(--color-primary);
    outline-offset:5px
}
h1,h2,h3,p {
    margin:0
}
h1,h2,h3 {
    font-weight:550;
    letter-spacing:-.045em;
    line-height:1.12
}
h1 {
    font-size:clamp(44px,4.6vw,68px)
}
h2 {
    font-size:clamp(34px,3.35vw,48px)
}
h3 {
    font-size:23px;
    letter-spacing:-.025em
}
p {
    color:var(--color-muted)
}
p+p {
    margin-top:18px
}
ul,ol {
    margin:0;
    padding:0;
    list-style:none
}
svg {
    display:block;
    max-width:100%
}
[hidden] {
    display:none!important
}
::selection {
    background:#d1e0ff
}
.container {
    width:calc(100% - 112px);
    max-width:1280px;
    margin-inline:auto
}
.section {
    padding-block:108px
}
.eyebrow {
    display:block;
    font-size:11px;
    font-weight:650;
    letter-spacing:.13em;
    text-transform:uppercase;
    color:var(--color-secondary);
    margin-bottom:24px;
    line-height:1.5
}
.status-dot {
    display:inline-block;
    width:7px;
    height:7px;
    border-radius:50%;
    background:#368263;
    vertical-align:middle;
    margin-right:8px;
    flex-shrink:0
}
.serif-accent {
    font-family:Georgia,"Times New Roman",serif;
    font-weight:400;
    font-style:italic;
    letter-spacing:-.055em;
    color:var(--color-primary)
}
.muted {
    color:#7a8488
}
.lead {
    font-size:20px;
    line-height:1.55;
    color:#303d43;
    margin-block:26px 18px
}
.button-row {
    display:flex;
    flex-wrap:wrap;
    gap:12px
}
.button {
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:26px;
    padding:15px 23px;
    border:1px solid var(--color-primary);
    border-radius:var(--radius-sm);
    background:var(--color-primary);
    color:white;
    font-size:13px;
    font-weight:600;
    line-height:1.5;
    transition:background .2s,transform .2s,box-shadow .2s
}
.button:hover {
    background:#1943bd;
    box-shadow:0 5px 14px #2454dd20;
    transform:translateY(-2px)
}
.button span {
    font-size:18px;
    line-height:1
}
.button-outline {
    border-color:#cbd1d0;
    color:var(--color-text);
    background:transparent
}
.button-outline:hover {
    color:var(--color-primary);
    background:white
}
.button-small {
    padding:11px 17px;
    font-size:12px;
    gap:20px
}
.text-link {
    display:inline-flex;
    gap:25px;
    align-items:center;
    font-size:14px;
    font-weight:600;
    margin-top:24px;
    border-bottom:1px solid #bec6c8;
    padding-bottom:7px;
    transition:color .2s,border-color .2s
}
.text-link:hover {
    color:var(--color-primary);
    border-color:var(--color-primary)
}
.text-link span {
    font-size:20px
}
.section-heading {
    margin-bottom:48px
}
.heading-row {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:64px
}
.heading-row>p {
    max-width:355px;
    font-size:16px;
    padding-bottom:4px
}
.surface-section {
    background:var(--color-surface);
    border-block:1px solid var(--color-border)
}
.sr-only {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0
}
.skip-link {
    position:fixed;
    top:8px;
    left:16px;
    z-index:1000;
    background:white;
    padding:12px 20px;
    transform:translateY(-150%)
}
.skip-link:focus {
    transform:translateY(0)
}
/* Navigation */
.site-header {
    position:sticky;
    top:0;
    z-index:50;
    background:#fafbf8f5;
    border-bottom:1px solid var(--color-border);
    backdrop-filter:blur(14px)
}
.header-inner {
    height:87px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:36px
}
.brand {
    font-size:36px;
    letter-spacing:-2.3px;
    font-weight:750;
    line-height:1
}
.brand-dot {
    color:var(--color-primary)
}
.navigation {
    display:flex;
    align-items:center;
    gap:27px
}
.navigation>a:not(.button) {
    font-size:12px;
    font-weight:550;
    position:relative;
    padding-block:15px;
    white-space:nowrap
}
.navigation>a:not(.button)::after {
    content:"";
    height:2px;
    position:absolute;
    bottom:7px;
    left:0;
    right:0;
    background:var(--color-primary);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .2s
}
.navigation>a:hover::after,.navigation>a.active::after {
    transform:scaleX(1)
}
.menu-toggle {
    display:none
}
/* Hero: a diagram built from real HTML and vector connections. */
.hero {
    position:relative;
    overflow:hidden;
    background:radial-gradient(ellipse at 79% 35%,#e9eff980,transparent 53%)
}
.hero-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    min-height:680px;
    padding-block:64px 48px;
    gap:24px
}
.hero-copy {
    position:relative;
    z-index:2
}
.hero-copy>.eyebrow {
    font-size:10px;
    letter-spacing:.115em;
    margin-bottom:29px
}
.hero-copy h1 {
    line-height:1.05;
    letter-spacing:-.058em
}
.hero-description {
    font-size:21px;
    line-height:1.5;
    color:#414c51;
    margin-top:29px;
    letter-spacing:-.015em
}
.hero-detail {
    max-width:425px;
    font-size:14px;
    line-height:1.8;
    margin-top:16px
}
.hero-copy .button-row {
    margin-top:30px
}
.hero-footnote {
    display:flex;
    gap:14px;
    align-items:center;
    margin-top:38px;
    color:var(--color-muted);
    font-size:11px;
    line-height:1.55
}
.hero-footnote strong {
    font-weight:500;
    color:var(--color-text)
}
.mini-orbit {
    font-size:35px;
    line-height:1;
    color:#798782
}
.hero-baseline {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding-block:21px;
    border-top:1px solid var(--color-border);
    font-size:9px;
    letter-spacing:.12em;
    color:var(--color-muted)
}
.hero-baseline a {
    font-size:11px;
    letter-spacing:0
}
.hero-baseline a span {
    margin-left:22px;
    font-size:17px
}
.ecosystem {
    position:relative;
    width:100%;
    aspect-ratio:600/570;
    background-image:radial-gradient(#8b9baa35 .8px,transparent .8px);
    background-size:20px 20px;
    isolation:isolate
}
.orbit {
    position:absolute;
    border:1px solid #ced8e560;
    border-radius:50%;
    z-index:-1;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%)
}
.orbit-one {
    width:63%;
    height:66%
}
.orbit-two {
    width:93%;
    height:98%
}
.visual-coordinate {
    position:absolute;
    color:#78838d;
    font:8px Consolas,monospace;
    letter-spacing:.09em
}
.coordinate-top {
    top:0;
    left:24%
}
.coordinate-bottom {
    bottom:0;
    right:9%
}
.coordinate-bottom .status-dot {
    width:5px;
    height:5px
}
.connection-map {
    position:absolute;
    width:100%;
    height:100%;
    inset:0;
    fill:none;
    stroke:#bcc9db;
    stroke-width:1.4
}
.connection-map .flow-line {
    stroke:#698fe7;
    stroke-width:1.5;
    stroke-dasharray:4 12;
    animation:data-flow 16s linear infinite
}
.system-card {
    position:absolute;
    background:#fffffff5;
    border:1px solid #d9e0e7;
    box-shadow:0 10px 30px #263f6410;
    border-radius:9px;
    padding:17px;
    animation:gentle-float 9s ease-in-out infinite
}
.system-card strong {
    display:block;
    font-size:14px;
    font-weight:600;
    line-height:1.4;
    letter-spacing:-.02em
}
.card-overline {
    display:block;
    font-size:7px;
    letter-spacing:.1em;
    color:#707f8c;
    margin-bottom:8px
}
.visual-icon {
    display:inline-flex;
    width:27px;
    height:27px;
    background:#edf2fc;
    color:#3864d9;
    border-radius:6px;
    align-items:center;
    justify-content:center;
    font:17px Consolas,monospace;
    margin-bottom:11px
}
.business-card {
    top:12%;
    left:1%;
    width:33%;
    transform:rotate(-5deg)
}
.tiny-ui {
    display:flex;
    align-items:flex-end;
    height:33px;
    gap:5px;
    margin-top:12px;
    border-bottom:1px solid #e1e7f0;
    padding-bottom:7px
}
.tiny-ui i {
    height:13px;
    flex:1;
    background:#d5e0fa;
    border-radius:2px
}
.tiny-ui i:nth-child(2) {
    height:22px;
    background:#aac1fa
}
.tiny-ui i:nth-child(3) {
    height:17px
}
.tiny-ui i:nth-child(4) {
    height:25px;
    background:#6087ea
}
.card-meta {
    display:block;
    font-size:8px;
    color:#74808b;
    margin-top:9px
}
.ai-card {
    right:5%;
    top:8%;
    width:33%;
    animation-delay:-3s;
    background:#f5f2ff;
    transform:rotate(4deg)
}
.ai-spark {
    font-size:31px;
    display:block;
    color:#8271ba;
    line-height:1;
    margin-bottom:15px
}
.ai-card .card-overline {
    color:#7e7393
}
.ai-pills {
    display:flex;
    gap:4px;
    margin-top:14px
}
.ai-pills span {
    padding:2px 6px;
    border:1px solid #dfd9ef;
    border-radius:3px;
    font-size:7px;
    color:#74668f
}
.core-node {
    position:absolute;
    left:50%;
    top:49%;
    transform:translate(-50%,-50%);
    width:31%;
    aspect-ratio:1;
    background:#fff;
    border:1px solid #b8c9ec;
    border-radius:19px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    box-shadow:0 15px 35px #2653be1a,0 0 0 8px #f8faff9e;
    z-index:3
}
.core-mark {
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    background:var(--color-primary);
    color:white;
    width:48px;
    height:48px;
    border-radius:12px;
    font-size:42px;
    font-weight:600;
    line-height:1;
    padding-bottom:5px;
    margin-bottom:4px
}
.core-mark>span {
    position:absolute;
    right:6px;
    top:4px;
    font-size:17px;
    color:#c1edb7
}
.core-node>strong {
    font-size:23px;
    letter-spacing:-1.2px;
    line-height:1.2
}
.core-node>span:not(.core-mark) {
    font-size:6px;
    letter-spacing:.15em;
    color:#8290a2;
    margin-top:8px
}
.core-status {
    font-size:6px;
    margin-top:12px;
    color:#6c7c88
}
.core-status i {
    display:inline-block;
    width:4px;
    height:4px;
    background:#52997a;
    border-radius:50%;
    margin-right:4px
}
.commerce-card {
    right:-1%;
    top:42%;
    width:29%;
    transform:rotate(4deg);
    animation-delay:-5s
}
.commerce-bars {
    display:flex;
    gap:5px;
    height:30px;
    align-items:flex-end;
    margin-top:15px
}
.commerce-bars i {
    flex:1;
    background:#cee2d8;
    height:30%;
    border-radius:2px
}
.commerce-bars i:nth-child(2) {
    height:55%
}
.commerce-bars i:nth-child(3) {
    height:40%
}
.commerce-bars i:nth-child(4) {
    height:75%;
    background:#82b6a0
}
.commerce-bars i:nth-child(5) {
    height:65%
}
.commerce-bars i:nth-child(6) {
    height:100%;
    background:#418468
}
.workflow-card {
    bottom:4%;
    left:19%;
    width:46%;
    transform:rotate(-3deg);
    animation-delay:-7s
}
.workflow-mini {
    display:flex;
    align-items:center;
    gap:7px;
    margin:13px 0
}
.workflow-mini span {
    border:1px solid #dbe1e6;
    padding:5px 9px;
    font-size:9px;
    border-radius:4px
}
.workflow-mini b {
    font-size:12px;
    color:#9aa9b6
}
.workflow-mini .done {
    background:#e4f2e5;
    border-color:#d8ead9;
    color:#427945
}
.data-node {
    position:absolute;
    left:0;
    top:59%;
    padding:11px 13px;
    background:#fff;
    border:1px solid #dbe1e6;
    border-radius:5px;
    font:8px Consolas,monospace;
    box-shadow:var(--shadow-sm);
    transform:rotate(-5deg)
}
.data-node>span {
    font-size:18px;
    color:#7794b0;
    vertical-align:middle;
    margin-right:8px
}
.data-node i {
    display:inline-block;
    width:5px;
    height:5px;
    background:#6eac88;
    border-radius:50%;
    margin-left:10px
}
.code-node {
    position:absolute;
    bottom:15%;
    right:1%;
    font:9px/1.7 Consolas,monospace;
    color:#84909e;
    transform:rotate(3deg)
}
.code-node span {
    color:#567ace
}
@keyframes data-flow {
    to {
        stroke-dashoffset:-160
    }
}
@keyframes gentle-float {
    0%,100% {
        translate:0 0
    }
    50% {
        translate:0 -7px
    }
}
/* Content sections */
.capability-strip {
    border-block:1px solid var(--color-border);
    background:#f0f3ef
}
.capability-grid {
    display:grid;
    grid-template-columns:repeat(6,1fr);
    padding-block:28px
}
.capability-grid>div {
    padding:0 23px;
    border-right:1px solid #d7ded8
}
.capability-grid>div:first-child {
    padding-left:0
}
.capability-grid>div:last-child {
    padding-right:0;
    border:0
}
.capability-grid>div>span {
    font:9px Consolas,monospace;
    color:#859089
}
.capability-grid h2 {
    font-size:18px;
    font-weight:550;
    letter-spacing:-.03em;
    margin-block:8px 7px
}
.capability-grid p {
    font-size:10px;
    line-height:1.5
}
.split-heading {
    display:grid;
    grid-template-columns:1.1fr 1fr;
    gap:100px
}
.intro-copy {
    padding-top:35px;
    max-width:485px
}
.intro-copy .lead {
    margin-top:0;
    font-size:21px
}
.intro-copy>p:not(.lead) {
    font-size:15px
}
.principles {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:44px;
    padding-top:28px;
    border-top:1px solid var(--color-border)
}
.principles article {
    position:relative;
    padding-top:7px
}
.principle-symbol {
    display:inline-flex;
    color:var(--color-primary);
    font-size:27px;
    line-height:1;
    margin-bottom:24px
}
.principles h3 {
    font-size:19px;
    margin-bottom:14px
}
.principles p {
    font-size:14px;
    max-width:340px
}
.services-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px
}
.service-card {
    padding:31px;
    background:#fafbf9;
    border:1px solid #dce2df;
    border-radius:8px;
    display:flex;
    flex-direction:column;
    transition:transform .25s,box-shadow .25s,border-color .25s
}
.service-card:hover {
    transform:translateY(-4px);
    box-shadow:var(--shadow-md);
    border-color:#b1bfd9
}
.service-top {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:30px
}
.service-top>span:last-child {
    font:10px Consolas,monospace;
    color:#86918a
}
.service-icon {
    display:flex;
    width:43px;
    height:43px;
    align-items:center;
    justify-content:center;
    font:21px Consolas,monospace;
    background:#eaf0ef;
    border:1px solid #dce5e1;
    border-radius:7px;
    color:#556b69
}
.service-card h3 {
    font-size:25px;
    line-height:1.2;
    margin-bottom:16px
}
.service-card>p {
    font-size:14px;
    line-height:1.75;
    min-height:74px
}
.tags {
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:21px;
    margin-bottom:27px
}
.tags li {
    font-size:9px;
    padding:3px 7px;
    border:1px solid #dde3df;
    border-radius:3px;
    color:#626f71
}
.service-link {
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:12px;
    font-weight:600;
    margin-top:auto;
    padding-top:19px;
    border-top:1px solid var(--color-border)
}
.service-link>span {
    font-size:21px;
    color:#63797a
}
.service-highlight {
    background:#ecf0fe;
    border-color:#cfd8f5
}
.service-highlight .service-icon {
    background:#2454dd;
    color:#fff;
    border-color:#2454dd
}
.service-highlight .tags li {
    border-color:#ccd6f1;
    color:#5b6c90
}
.service-highlight .service-link {
    color:#2454dd;
    border-color:#cfd8ef
}
.feature-split {
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:100px
}
.feature-copy>p:not(.eyebrow) {
    max-width:450px
}
.feature-copy>.button {
    margin-top:27px
}
.check-list {
    margin-block:23px 0;
    display:grid;
    gap:9px
}
.check-list li {
    font-size:13px;
    position:relative;
    padding-left:23px;
    color:#4e5c63
}
.check-list li::before {
    content:"↗";
    color:#3763a6;
    position:absolute;
    left:0
}
.diagram-panel {
    border:1px solid var(--color-border);
    border-radius:var(--radius-md);
    background:#f3f5f5;
    box-shadow:var(--shadow-sm)
}
.diagram-top {
    display:flex;
    justify-content:space-between;
    gap:10px;
    font:8px Consolas,monospace;
    letter-spacing:.05em;
    color:#727f85;
    border-bottom:1px solid var(--color-border);
    padding:20px 22px
}
.diagram-top .status-dot {
    width:5px;
    height:5px
}
.ai-workflow {
    background:radial-gradient(ellipse at 60% 30%,#e7e9fb,transparent 75%),#f4f5f8
}
.workflow-track {
    padding:23px 35px;
    display:grid;
    gap:14px;
    position:relative
}
.workflow-track::before {
    content:"";
    position:absolute;
    top:30px;
    bottom:30px;
    left:65px;
    border-left:1px dashed #bac7db
}
.workflow-step {
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    gap:14px;
    background:#fffffff0;
    border:1px solid #dde3ea;
    border-radius:7px;
    padding:15px 16px;
    box-shadow:0 3px 7px #25334e04
}
.step-icon {
    width:31px;
    height:31px;
    display:flex;
    justify-content:center;
    align-items:center;
    flex-shrink:0;
    background:#f1f4f6;
    border-radius:6px;
    font:10px Consolas,monospace;
    color:#768591
}
.workflow-step strong {
    display:block;
    font-size:13px;
    font-weight:600;
    line-height:1.4
}
.workflow-step small {
    display:block;
    font-size:10px;
    color:#7a838e;
    margin-top:3px
}
.workflow-step>span:last-child:not(:first-child) {
    margin-left:auto;
    color:#92a0b3;
    font-size:12px
}
.workflow-step.ai-step {
    background:#e8eafe;
    border-color:#c3c9f1
}
.ai-step .step-icon {
    background:#686ec6;
    color:white;
    font-size:22px
}
.workflow-step .tiny-label {
    font-size:7px!important;
    border:1px solid #c7cee1;
    padding:2px 5px;
    border-radius:3px;
    letter-spacing:.04em
}
.review-step {
    border-color:#bdcfbe;
    background:#f1f7ef
}
.green {
    background:#e1f0e0;
    color:#478353
}
.diagram-note {
    font-size:10px;
    text-align:center;
    padding:0 20px 21px
}
.engineering-section {
    background:#eef2f6;
    border-block:1px solid #dbe2e8
}
.engineering-section .feature-split {
    gap:90px
}
.engineering-section .feature-split>div>p:not(.eyebrow) {
    max-width:445px
}
.engineering-note {
    display:flex;
    align-items:center;
    gap:16px;
    margin-top:38px
}
.engineering-note>span {
    font-size:40px;
    color:#8198b4
}
.engineering-note p {
    font-size:11px
}
.engineering-note strong {
    color:#415567;
    font-weight:500
}
.architecture {
    display:grid;
    gap:12px;
    padding:10px 10px 10px 20px;
    position:relative
}
.architecture::before {
    content:"";
    position:absolute;
    top:50px;
    bottom:50px;
    left:0;
    border-left:1px solid #b3c2d6
}
.architecture>div {
    display:grid;
    grid-template-columns:28px 1fr 24px;
    gap:7px 10px;
    position:relative;
    padding:21px 24px;
    background:#fafcfe;
    border:1px solid #d3dce6;
    border-radius:7px;
    box-shadow:0 5px 0 #dce3eb55
}
.architecture>div::before {
    content:"";
    position:absolute;
    width:20px;
    left:-21px;
    top:40px;
    border-top:1px solid #b3c2d6
}
.architecture>div>span {
    font:9px Consolas,monospace;
    color:#8b9aae;
    grid-row:span 2;
    align-self:center
}
.architecture h3 {
    font-size:17px;
    letter-spacing:-.02em
}
.architecture p {
    font-size:10px;
    grid-column:2;
    color:#7b8997
}
.architecture b {
    grid-column:3;
    grid-row:1/3;
    align-self:center;
    color:#94a3b7;
    font-size:18px;
    font-weight:400
}
.architecture .intelligence-layer {
    background:#e8eafd;
    border-color:#cbd1f1
}
.intelligence-layer h3,.intelligence-layer b {
    color:#5f64a4
}
.commerce-map {
    background:#f1f5f0
}
.commerce-network {
    padding:40px 24px 30px
}
.commerce-network-row {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px
}
.commerce-network-row>span {
    text-align:center;
    background:#fff;
    border:1px solid #d6dfd4;
    border-radius:5px;
    padding:12px 4px;
    font-size:11px;
    color:#53634f
}
.network-connectors {
    height:38px;
    width:69%;
    margin-inline:auto;
    border-inline:1px solid #bfcfbc;
    position:relative
}
.network-connectors::before {
    content:"";
    position:absolute;
    height:100%;
    left:50%;
    border-left:1px solid #bfcfbc
}
.network-connectors::after {
    content:"";
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    border-top:1px solid #bfcfbc
}
.commerce-hub {
    padding:25px 10px;
    background:#e1eadc;
    border:1px solid #c1cfba;
    border-radius:8px;
    text-align:center;
    margin-inline:27px;
    position:relative;
    z-index:1
}
.commerce-hub>span {
    display:block;
    font-size:30px;
    color:#5b7752;
    line-height:1;
    margin-bottom:14px
}
.commerce-hub strong {
    display:block;
    font-size:17px;
    font-weight:550
}
.commerce-hub small {
    display:block;
    font-size:10px;
    color:#73836d;
    margin-top:5px
}
.secondary-nodes {
    margin-top:10px
}
.secondary-nodes>span {
    background:transparent;
    border-style:dashed;
    font-size:10px
}
.network-bottom {
    font-size:10px;
    text-align:center;
    padding:16px 10px;
    border-top:1px solid #dbe3d8;
    color:#72816b
}
.network-bottom .status-dot {
    width:5px;
    height:5px
}
/* Business needs / accessible tabs */
.solutions-tabs {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    border-bottom:1px solid #ccd5d2
}
.solutions-tabs button {
    border:0;
    background:transparent;
    text-align:left;
    padding:22px 20px;
    color:#677570;
    font-size:21px;
    border-bottom:2px solid transparent;
    display:flex;
    align-items:center;
    gap:18px
}
.solutions-tabs button>span {
    font:10px Consolas,monospace;
    color:#919d96
}
.solutions-tabs button>b {
    margin-left:auto;
    font-weight:400;
    font-size:20px
}
.solutions-tabs button[aria-selected=true] {
    color:var(--color-primary);
    border-bottom-color:var(--color-primary);
    background:#e9eeed
}
.solution-panel {
    display:grid;
    grid-template-columns:1.1fr 1fr .6fr;
    gap:40px;
    padding:48px 25px 8px;
    align-items:center;
    min-height:305px
}
.solution-panel .eyebrow {
    font-size:8px;
    margin-bottom:16px
}
.solution-panel h3 {
    font-size:31px
}
.solution-panel p {
    font-size:14px;
    margin-top:16px;
    max-width:360px
}
.solution-panel .text-link {
    font-size:12px
}
.solution-list {
    display:grid;
    gap:0
}
.solution-list li {
    display:flex;
    align-items:center;
    gap:13px;
    padding:16px 0;
    border-bottom:1px solid var(--color-border);
    font-size:12px
}
.solution-list li span {
    font:9px Consolas,monospace;
    color:#929d99
}
.launch-art {
    display:flex;
    align-items:center;
    flex-direction:column;
    color:#6d87b1;
    font:8px Consolas,monospace;
    letter-spacing:.2em;
    gap:7px
}
.launch-path {
    width:150px;
    height:150px;
    border:1px solid #cfd9e3;
    box-shadow:inset 0 0 0 15px #e8eeef,inset 0 0 0 16px #cfd9e3;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font:70px Georgia,serif;
    color:#7994c9;
    background:linear-gradient(135deg,#eef2f0,#dde6f5)
}
/* Concept platform */
.centered {
    text-align:center
}
.centered>p:last-child {
    margin-top:24px;
    font-size:15px
}
.platform-demo {
    display:grid;
    grid-template-columns:174px 1fr;
    border:1px solid #ced6df;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 20px 60px #354e6b12;
    max-width:1080px;
    margin:0 auto;
    transform:perspective(1500px) rotateX(2deg);
    background:#f5f7fa
}
.demo-sidebar {
    background:#edf1f6;
    padding:26px 18px;
    border-right:1px solid #d8dfe7;
    display:flex;
    flex-direction:column;
    gap:7px
}
.demo-logo {
    display:block;
    font-size:33px;
    font-weight:700;
    letter-spacing:-.1em;
    padding-left:10px;
    margin-bottom:17px;
    line-height:1
}
.demo-logo>span {
    font-size:18px;
    color:var(--color-primary);
    vertical-align:top
}
.demo-nav {
    font-size:12px;
    color:#8e9bad;
    border-radius:4px;
    padding:10px
}
.demo-nav>span {
    margin-left:8px;
    color:#697588;
    font-size:10px
}
.demo-nav.selected {
    background:#dce5f9;
    color:#345cad
}
.selected>span {
    color:#345cad
}
.demo-sidebar-bottom {
    margin-top:auto;
    font-size:7px;
    color:#8995a5;
    letter-spacing:.1em;
    padding:30px 10px 0
}
.demo-sidebar-bottom strong {
    font-size:9px;
    font-weight:500;
    letter-spacing:0;
    color:#63738a
}
.demo-main {
    padding:28px;
    min-width:0
}
.demo-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-bottom:24px
}
.demo-header small {
    font-size:7px;
    color:#8894a2;
    letter-spacing:.1em
}
.demo-header h3 {
    font-size:21px;
    margin-top:5px
}
.demo-badge {
    font-size:8px;
    background:white;
    border:1px solid #dce2e9;
    padding:5px 10px;
    border-radius:4px;
    color:#829083;
    white-space:nowrap
}
.demo-badge .status-dot {
    width:5px;
    height:5px;
    margin-right:5px
}
.demo-metrics {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px
}
.demo-metrics>div {
    background:#fff;
    border:1px solid #e0e6ee;
    border-radius:5px;
    padding:18px
}
.demo-metrics small {
    display:block;
    font-size:9px;
    color:#7c8897
}
.demo-metrics strong {
    display:block;
    font-size:29px;
    font-weight:550;
    letter-spacing:-1px;
    margin-block:5px
}
.demo-metrics strong span {
    font-size:20px;
    float:right;
    color:#a1b4d4;
    line-height:2.3
}
.demo-metrics>div>span {
    font-size:7px;
    color:#8a96a4
}
.demo-bottom {
    display:grid;
    grid-template-columns:1.7fr 1fr;
    gap:12px;
    margin-top:13px
}
.demo-chart,.demo-insight {
    border:1px solid #e0e6ee;
    border-radius:5px;
    padding:20px;
    background:#fff
}
.demo-card-heading {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    font-size:10px;
    color:#556172
}
.demo-card-heading>span {
    font-size:7px;
    color:#929dac
}
.chart-grid {
    height:125px;
    background:repeating-linear-gradient(to top,#e8edf5 0,#e8edf5 1px,transparent 1px,transparent 30px);
    margin-top:25px
}
.chart-grid svg {
    width:100%;
    height:100%
}
.chart-axis {
    display:flex;
    justify-content:space-between;
    font-size:7px;
    color:#8594a5;
    margin-top:10px
}
.demo-insight {
    background:#edf0fb;
    border-color:#dce2f5;
    display:flex;
    flex-direction:column
}
.demo-insight .eyebrow {
    font-size:8px;
    color:#7384b2;
    letter-spacing:.08em;
    margin-bottom:18px
}
.demo-insight>strong {
    font-size:15px;
    font-weight:550;
    line-height:1.35
}
.demo-insight>p {
    font-size:10px;
    margin-top:12px;
    color:#7f8ba5;
    line-height:1.8
}
.insight-foot {
    font-size:8px;
    margin-top:auto;
    padding-top:18px;
    color:#6f83b1
}
.insight-foot>span {
    float:right
}
.demo-integrations {
    display:flex;
    gap:18px;
    margin-top:20px;
    align-items:center;
    font-size:8px;
    color:#8a96a3;
    flex-wrap:wrap
}
.demo-integrations b {
    font-size:8px;
    font-weight:500;
    color:#64748a
}
.demo-integrations .status-dot {
    width:5px;
    height:5px
}
.visual-caption {
    text-align:center;
    font-size:10px;
    margin-top:25px;
    color:#7f898f
}
.visual-caption span {
    margin-right:8px
}
.industries-section {
    padding-block:53px;
    background:#eaf0e8;
    border-block:1px solid #dce3d9
}
.industries-section>.container {
    display:grid;
    grid-template-columns:1fr 1.4fr;
    gap:60px;
    align-items:center
}
.industries-section .eyebrow {
    font-size:8px;
    margin-bottom:16px;
    color:#637860
}
.industries-section h2 {
    font-size:30px
}
.industry-list {
    display:flex;
    gap:9px;
    flex-wrap:wrap
}
.industry-list li {
    padding:10px 17px;
    border:1px solid #cbd6c7;
    font-size:11px;
    border-radius:4px;
    background:#f2f6ef80;
    color:#586950
}
.tech-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:0 44px
}
.tech-grid>div {
    padding:28px 0;
    border-top:1px solid var(--color-border)
}
.tech-grid h3 {
    font-size:15px;
    margin-bottom:17px;
    letter-spacing:-.015em
}
.tech-grid p {
    font-size:12px;
    line-height:2.25
}
.tech-grid p>span {
    color:#b7c1c1;
    padding-inline:6px
}
.process-timeline {
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:28px;
    position:relative;
    margin-top:60px
}
.process-timeline::before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:22px;
    border-top:1px solid #cbd5d2
}
.process-timeline li {
    position:relative
}
.process-timeline li>span {
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    border:1px solid #c2ceca;
    background:#f1f4f3;
    border-radius:50%;
    font:11px Consolas,monospace;
    color:#638071;
    margin-bottom:28px
}
.process-timeline li:first-child>span {
    background:#2454dd;
    color:#fff;
    border-color:#2454dd
}
.process-timeline h3 {
    font-size:19px;
    margin-bottom:15px
}
.process-timeline p {
    font-size:13px;
    line-height:1.75;
    max-width:200px
}
.why-section {
    display:grid;
    grid-template-columns:1.2fr 1fr;
    gap:90px;
    align-items:center
}
.why-section>div>p:not(.eyebrow) {
    max-width:435px
}
.why-list>article {
    display:flex;
    gap:23px;
    padding-block:24px;
    border-bottom:1px solid var(--color-border)
}
.why-list>article:first-child {
    padding-top:0
}
.why-list>article>span {
    font:10px Consolas,monospace;
    color:#96a09d;
    padding-top:4px
}
.why-list h3 {
    font-size:19px;
    margin-bottom:10px
}
.why-list p {
    font-size:13px
}
.engagement-section {
    border-top:1px solid var(--color-border);
    background:#f4f5f1
}
.engagement-grid {
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:24px
}
.engagement-grid article {
    border-top:1px solid #cfd7d0;
    padding-top:25px
}
.engagement-grid article>span {
    display:block;
    font:24px Consolas,monospace;
    color:#70877a;
    margin-bottom:25px
}
.engagement-grid h3 {
    font-size:18px;
    line-height:1.3;
    margin-bottom:13px
}
.engagement-grid p {
    font-size:13px
}
.support-callout {
    margin-top:45px;
    padding:29px 32px;
    border:1px solid #d9dfd6;
    background:#eef1e9;
    border-radius:6px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:45px
}
.support-callout h3 {
    font-size:17px;
    margin-bottom:10px
}
.support-callout p {
    font-size:12px;
    max-width:720px
}
.support-callout .text-link {
    flex-shrink:0;
    margin-top:0;
    font-size:12px
}
/* Project brief: local download, no submission endpoint. */
.contact-section {
    position:relative;
    background:radial-gradient(ellipse at 16% 40%,#e7effb70,transparent 60%),#fafbf8;
    border-block:1px solid var(--color-border)
}
.contact-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:100px;
    align-items:center
}
.contact-copy h2 {
    font-size:clamp(38px,3.5vw,52px)
}
.contact-copy>p:not(.eyebrow) {
    max-width:420px;
    font-size:14px;
    margin-top:26px
}
.contact-actions {
    display:flex;
    flex-wrap:wrap;
    gap:8px 25px;
    align-items:center;
    margin-top:27px
}
.contact-actions .text-link {
    font-size:11px;
    margin-top:0
}
.contact-copy .contact-note {
    font-size:11px;
    color:#7b8a90;
    margin-top:36px
}
.brief-card {
    background:white;
    border:1px solid #d9e0e4;
    border-radius:10px;
    padding:32px;
    box-shadow:var(--shadow-md);
    scroll-margin-top:110px
}
.brief-card>.eyebrow {
    font-size:8px;
    margin-bottom:12px
}
.brief-card h3 {
    font-size:25px;
    line-height:1.25
}
.brief-card>p {
    font-size:12px;
    margin-top:12px
}
.brief-card form {
    margin-top:23px
}
.brief-card fieldset {
    border:0;
    padding:0;
    margin:0;
    min-width:0
}
.form-row {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px
}
.brief-card label {
    display:block;
    font-size:11px;
    font-weight:550;
    margin-bottom:6px
}
.brief-card label>span {
    color:#7385a1
}
.brief-card input,.brief-card select,.brief-card textarea {
    display:block;
    width:100%;
    min-width:0;
    background:#fafbf9;
    border:1px solid #d5dcdf;
    border-radius:4px;
    padding:10px 11px;
    margin-bottom:17px;
    color:var(--color-text);
    font-size:13px;
    line-height:1.4
}
.brief-card textarea {
    resize:vertical;
    min-height:92px
}
.brief-card input:focus,.brief-card select:focus,.brief-card textarea:focus {
    border-color:var(--color-primary)
}
.brief-card textarea::placeholder {
    color:#899399
}
.brief-submit {
    width:100%;
    justify-content:space-between;
    font-size:12px
}
.form-status {
    font-size:10px;
    line-height:1.6;
    margin-top:13px;
    color:#7a8690
}
.form-status.success {
    color:#2c724b
}
/* Footer */
.site-footer {
    padding-top:65px;
    background:#f0f3f1
}
.footer-grid {
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr .7fr;
    gap:65px;
    padding-bottom:55px
}
.footer-brand .brand {
    font-size:34px
}
.footer-brand .footer-tagline {
    font-size:10px;
    color:#63726f;
    margin-top:15px
}
.footer-brand>p:last-child {
    font-size:12px;
    max-width:265px;
    margin-top:18px;
    line-height:1.8
}
.footer-grid h2 {
    font-size:12px;
    letter-spacing:0;
    font-weight:650;
    margin-bottom:20px
}
.footer-grid>div:not(:first-child)>a {
    display:block;
    color:#697671;
    font-size:11px;
    margin-bottom:11px
}
.footer-grid a:hover {
    color:var(--color-primary)
}
.footer-bottom {
    border-top:1px solid #d6ded8;
    padding-block:23px;
    display:flex;
    justify-content:space-between;
    gap:20px;
    font-size:9px;
    color:#7e8984
}
.footer-bottom>a {
    color:#667671
}
.legal-page {
    min-height:60vh;
    max-width:850px
}
.legal-page h1 {
    font-size:48px
}
.legal-page .lead {
    font-size:20px
}
.reveal {
    transition:opacity .65s,translate .65s
}
.reveal.pending {
    opacity:0;
    translate:0 18px
}
/* Responsive layouts */
@media(min-width:1600px) {
    .hero-grid {
        min-height:760px;
        gap:55px
    }
    .hero h1 {
        font-size:70px
    }
    .ecosystem {
        max-width:615px
    }
}
@media(max-width:1199px) {
    .container {
        width:calc(100% - 72px)
    }
    .navigation {
        gap:17px
    }
    .navigation>a:not(.button) {
        font-size:11px
    }
    .header-inner {
        gap:25px
    }
    .hero-grid {
        min-height:610px;
        padding-top:50px
    }
    .hero-description {
        font-size:18px
    }
    .hero-detail {
        font-size:13px
    }
    .hero-copy .eyebrow {
        font-size:8px
    }
    .hero-copy .button {
        font-size:11px;
        padding:14px 17px;
        gap:18px
    }
    .system-card {
        padding:13px
    }
    .system-card strong {
        font-size:12px
    }
    .core-mark {
        width:39px;
        height:39px;
        font-size:34px
    }
    .core-node>strong {
        font-size:21px
    }
    .core-status {
        margin-top:8px
    }
    .workflow-mini {
        gap:5px
    }
    .workflow-mini span {
        padding:5px;
        font-size:8px
    }
    .capability-grid>div {
        padding-inline:14px
    }
    .capability-grid p {
        font-size:9px
    }
    .feature-split,.split-heading,.contact-grid,.why-section {
        gap:55px
    }
    .engineering-section .feature-split {
        gap:55px
    }
    .service-card {
        padding:25px
    }
    .service-card h3 {
        font-size:22px
    }
    .service-card>p {
        font-size:13px
    }
    .services-grid {
        gap:14px
    }
    .workflow-track {
        padding-inline:23px
    }
    .workflow-track::before {
        left:53px
    }
    .solution-panel {
        gap:28px;
        padding-inline:10px
    }
    .launch-path {
        width:120px;
        height:120px
    }
    .footer-grid {
        gap:35px
    }
    .contact-actions {
        gap:16px
    }
    .contact-actions .text-link {
        margin-top:0
    }
    .brief-card {
        padding:26px
    }
}
@media(max-width:1023px) {
    .header-inner {
        height:75px
    }
    .brand {
        font-size:32px
    }
    .menu-toggle {
        display:flex;
        align-items:center;
        gap:10px;
        background:transparent;
        border:1px solid #d0d9d3;
        border-radius:4px;
        padding:8px 11px;
        font-size:11px;
        color:var(--color-text)
    }
    .menu-lines {
        position:relative;
        display:block;
        width:16px;
        height:10px;
        border-top:1px solid currentColor;
        border-bottom:1px solid currentColor
    }
    .menu-lines::after {
        content:"";
        position:absolute;
        top:4px;
        left:0;
        right:0;
        border-top:1px solid currentColor
    }
    .navigation {
        display:none;
        position:absolute;
        top:75px;
        left:0;
        right:0;
        background:#fafbf8;
        box-shadow:0 20px 20px #1733240d;
        border-bottom:1px solid var(--color-border);
        padding:20px 36px 30px;
        max-height:calc(100dvh - 75px);
        overflow-y:auto;
        flex-direction:column;
        align-items:stretch;
        gap:0
    }
    .navigation.is-open {
        display:flex;
        animation:menu-in .18s ease-out
    }
    .navigation>a:not(.button) {
        font-size:15px;
        padding:13px 0;
        border-bottom:1px solid #e1e6e0
    }
    .navigation>.button {
        margin-top:20px;
        align-self:flex-start
    }
    .navigation>a::after {
        display:none
    }
    .hero-grid {
        gap:18px;
        min-height:570px;
        padding-block:44px
    }
    .hero h1 {
        font-size:clamp(39px,4.8vw,49px)
    }
    .hero-description {
        font-size:17px
    }
    .hero-detail {
        font-size:12px
    }
    .hero-footnote {
        margin-top:28px
    }
    .hero-copy .button-row {
        gap:8px
    }
    .hero-copy .button {
        padding:12px;
        font-size:10px;
        gap:12px
    }
    .system-card {
        padding:11px
    }
    .system-card strong {
        font-size:11px
    }
    .card-overline {
        font-size:6px
    }
    .card-meta {
        font-size:6px
    }
    .visual-icon {
        width:23px;
        height:23px;
        font-size:15px;
        margin-bottom:8px
    }
    .ai-spark {
        font-size:26px;
        margin-bottom:10px
    }
    .ai-pills {
        gap:3px
    }
    .ai-pills span {
        font-size:6px;
        padding:2px 4px
    }
    .core-mark {
        width:32px;
        height:32px;
        font-size:28px;
        border-radius:7px
    }
    .core-mark>span {
        font-size:13px;
        right:3px
    }
    .core-node {
        border-radius:13px
    }
    .core-node>strong {
        font-size:18px
    }
    .core-node>span:not(.core-mark) {
        font-size:5px;
        margin-top:5px
    }
    .core-status {
        font-size:5px;
        margin-top:7px
    }
    .workflow-mini span {
        font-size:6px;
        padding:4px
    }
    .workflow-mini {
        gap:4px
    }
    .data-node {
        font-size:6px;
        padding:7px 9px
    }
    .data-node>span {
        font-size:14px;
        margin-right:3px
    }
    .code-node {
        font-size:7px
    }
    .visual-coordinate {
        font-size:6px
    }
    .section {
        padding-block:80px
    }
    .capability-grid {
        grid-template-columns:repeat(3,1fr);
        gap:26px 0
    }
    .capability-grid>div:nth-child(4) {
        padding-left:0
    }
    .capability-grid>div:nth-child(3) {
        border:0
    }
    .capability-grid h2 {
        font-size:19px
    }
    .capability-grid p {
        font-size:11px
    }
    .capability-grid>div>span {
        font-size:10px
    }
    .feature-split,.split-heading,.contact-grid,.why-section {
        gap:38px
    }
    .section-heading.heading-row {
        gap:35px
    }
    .heading-row>p {
        max-width:295px;
        font-size:14px
    }
    .intro-copy {
        padding-top:10px
    }
    .intro-copy .lead {
        font-size:18px
    }
    .intro-copy>p:not(.lead) {
        font-size:13px
    }
    .principles {
        gap:28px
    }
    .principles h3 {
        font-size:18px
    }
    .principles p {
        font-size:13px
    }
    .services-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .service-card h3 {
        font-size:25px
    }
    .service-card>p {
        min-height:65px
    }
    .service-card {
        padding:30px
    }
    .workflow-track {
        padding-inline:16px
    }
    .workflow-step {
        padding:13px 10px;
        gap:10px
    }
    .workflow-track::before {
        left:40px
    }
    .workflow-step strong {
        font-size:12px
    }
    .workflow-step small {
        font-size:9px
    }
    .workflow-step .tiny-label {
        font-size:6px!important
    }
    .diagram-top {
        padding:17px 16px;
        font-size:6px
    }
    .diagram-top>span:last-child {
        display:none
    }
    .feature-copy>p:not(.eyebrow),.engineering-section .feature-split>div>p:not(.eyebrow) {
        font-size:14px
    }
    .feature-copy .lead {
        font-size:18px!important
    }
    .check-list li {
        font-size:12px
    }
    .architecture>div {
        padding:19px 15px;
        grid-template-columns:20px 1fr 14px
    }
    .architecture p {
        font-size:9px
    }
    .architecture h3 {
        font-size:16px
    }
    .commerce-network {
        padding-inline:16px
    }
    .commerce-network-row {
        gap:6px
    }
    .commerce-network-row>span {
        font-size:9px;
        padding:10px 3px
    }
    .commerce-hub {
        margin-inline:14px
    }
    .commerce-hub strong {
        font-size:15px
    }
    .network-bottom {
        font-size:8px
    }
    .solutions-tabs button {
        font-size:19px;
        gap:10px;
        padding:19px 12px
    }
    .solution-panel {
        grid-template-columns:1fr 1fr
    }
    .launch-art {
        display:none
    }
    .platform-demo {
        grid-template-columns:130px 1fr
    }
    .demo-sidebar {
        padding:22px 12px
    }
    .demo-main {
        padding:20px
    }
    .demo-metrics>div {
        padding:13px
    }
    .demo-metrics strong {
        font-size:24px
    }
    .demo-metrics strong>span {
        font-size:16px
    }
    .demo-metrics>div>span {
        font-size:6px
    }
    .demo-chart,.demo-insight {
        padding:14px
    }
    .demo-insight>strong {
        font-size:13px
    }
    .demo-card-heading {
        font-size:9px
    }
    .demo-card-heading>span {
        font-size:6px
    }
    .demo-insight>p {
        font-size:9px
    }
    .demo-integrations {
        gap:13px
    }
    .industries-section>.container {
        gap:35px;
        grid-template-columns:1fr 1.4fr
    }
    .industry-list {
        gap:7px
    }
    .industry-list li {
        font-size:10px;
        padding:8px 11px
    }
    .tech-grid {
        gap:0 30px
    }
    .process-timeline {
        gap:20px
    }
    .process-timeline p {
        font-size:12px
    }
    .process-timeline h3 {
        font-size:17px
    }
    .why-list h3 {
        font-size:18px
    }
    .why-list>article {
        gap:15px
    }
    .engagement-grid {
        grid-template-columns:repeat(3,1fr);
        gap:30px
    }
    .support-callout {
        padding:25px;
        gap:30px
    }
    .contact-grid {
        gap:30px
    }
    .brief-card {
        padding:24px
    }
    .brief-card h3 {
        font-size:22px
    }
    .contact-copy h2 {
        font-size:40px
    }
    .form-row {
        grid-template-columns:1fr;
        gap:0
    }
    .footer-grid {
        grid-template-columns:1.3fr 1fr 1fr;
        gap:30px
    }
    .footer-grid>div:last-child {
        grid-column:2/4;
        display:flex;
        flex-wrap:wrap;
        align-items:center;
        gap:0 22px
    }
    .footer-grid>div:last-child h2 {
        width:100%;
        margin-bottom:13px
    }
    .footer-grid>div:last-child>a {
        margin-bottom:0
    }
    .footer-brand {
        grid-row:span 2
    }
    .footer-bottom {
        font-size:8px
    }
}
@media(max-width:767px) {
    .container {
        width:calc(100% - 40px)
    }
    html {
        scroll-padding-top:93px
    }
    h2 {
        font-size:36px
    }
    .section {
        padding-block:65px
    }
    .header-inner {
        height:70px
    }
    .navigation {
        top:70px;
        padding:15px 20px 25px
    }
    .hero-grid {
        grid-template-columns:1fr;
        padding-top:47px;
        gap:20px
    }
    .hero-copy>.eyebrow {
        font-size:8px;
        margin-bottom:24px
    }
    .hero h1 {
        font-size:clamp(41px,8.9vw,62px)
    }
    .hero-description {
        font-size:19px;
        margin-top:25px
    }
    .hero-detail {
        font-size:14px;
        max-width:460px;
        margin-top:16px
    }
    .hero-copy .button {
        padding:14px 18px;
        font-size:12px;
        gap:22px
    }
    .hero-copy .button-row {
        margin-top:25px;
        gap:10px
    }
    .hero-footnote {
        margin-top:27px;
        font-size:10px
    }
    .hero-footnote .mini-orbit {
        font-size:28px
    }
    .ecosystem {
        max-width:520px;
        justify-self:center;
        margin-top:9px
    }
    .system-card {
        padding:15px
    }
    .system-card strong {
        font-size:13px
    }
    .card-overline {
        font-size:7px
    }
    .card-meta {
        font-size:8px
    }
    .visual-icon {
        width:27px;
        height:27px;
        font-size:17px
    }
    .ai-spark {
        font-size:30px
    }
    .ai-pills span {
        font-size:7px;
        padding:2px 4px
    }
    .core-node>strong {
        font-size:22px
    }
    .core-mark {
        width:42px;
        height:42px;
        font-size:35px;
        border-radius:9px
    }
    .core-mark>span {
        font-size:17px
    }
    .core-node>span:not(.core-mark) {
        font-size:6px
    }
    .core-status {
        font-size:6px;
        margin-top:10px
    }
    .workflow-mini span {
        font-size:8px;
        padding:5px 7px
    }
    .workflow-mini {
        gap:5px
    }
    .data-node {
        font-size:8px;
        padding:10px
    }
    .code-node {
        font-size:8px
    }
    .visual-coordinate {
        font-size:7px
    }
    .hero-baseline {
        padding-block:18px;
        font-size:7px
    }
    .hero-baseline>a {
        font-size:9px
    }
    .hero-baseline>a>span {
        margin-left:8px
    }
    .capability-grid {
        padding-block:26px;
        row-gap:24px
    }
    .capability-grid>div {
        padding-inline:12px
    }
    .capability-grid h2 {
        font-size:17px
    }
    .capability-grid p {
        font-size:10px;
        max-width:100px
    }
    .capability-grid>div>span {
        font-size:8px
    }
    .split-heading,.feature-split,.engineering-section .feature-split,.why-section,.contact-grid {
        grid-template-columns:1fr;
        gap:40px
    }
    .section-heading {
        margin-bottom:34px
    }
    .heading-row {
        display:block
    }
    .heading-row>p {
        margin-top:23px;
        max-width:450px;
        font-size:14px
    }
    .intro-copy {
        padding-top:0;
        max-width:none
    }
    .intro-copy .lead {
        font-size:19px
    }
    .intro-copy>p:not(.lead) {
        font-size:14px
    }
    .eyebrow {
        font-size:9px;
        margin-bottom:20px
    }
    .principles {
        grid-template-columns:1fr;
        gap:25px;
        padding-top:15px
    }
    .principles article {
        padding-left:43px
    }
    .principle-symbol {
        position:absolute;
        left:0;
        top:6px;
        font-size:24px
    }
    .principles h3 {
        font-size:20px;
        margin-bottom:10px
    }
    .principles p {
        max-width:100%;
        font-size:14px
    }
    .services-grid {
        gap:14px
    }
    .service-card {
        padding:24px
    }
    .service-card h3 {
        font-size:23px
    }
    .service-top {
        margin-bottom:22px
    }
    .service-card>p {
        font-size:13px;
        min-height:90px
    }
    .tags {
        gap:5px;
        margin-bottom:20px
    }
    .tags li {
        font-size:9px
    }
    .service-link {
        font-size:11px
    }
    .feature-copy>p:not(.eyebrow),.engineering-section .feature-split>div>p:not(.eyebrow) {
        font-size:15px;
        max-width:none
    }
    .feature-copy .lead {
        font-size:19px!important
    }
    .check-list li {
        font-size:13px
    }
    .diagram-top {
        font-size:8px;
        padding:19px 20px
    }
    .diagram-top>span:last-child {
        display:block
    }
    .workflow-track {
        padding:22px 25px;
        gap:14px
    }
    .workflow-step {
        padding:16px 14px;
        gap:15px
    }
    .workflow-step strong {
        font-size:14px
    }
    .workflow-step small {
        font-size:11px
    }
    .workflow-step .tiny-label {
        font-size:7px!important
    }
    .workflow-track::before {
        left:54px
    }
    .diagram-note {
        font-size:11px
    }
    .architecture {
        padding-left:20px;
        padding-right:0
    }
    .architecture>div {
        padding:21px;
        grid-template-columns:23px 1fr 20px
    }
    .architecture h3 {
        font-size:18px
    }
    .architecture p {
        font-size:11px
    }
    .engineering-note {
        margin-top:22px
    }
    .commerce-section .feature-copy {
        grid-row:1
    }
    .commerce-network {
        padding:30px 22px
    }
    .commerce-network-row {
        gap:10px
    }
    .commerce-network-row>span {
        font-size:11px;
        padding:13px 4px
    }
    .commerce-hub {
        margin-inline:20px;
        padding-block:25px
    }
    .commerce-hub strong {
        font-size:19px
    }
    .commerce-hub small {
        font-size:11px
    }
    .network-bottom {
        font-size:10px
    }
    .solution-panel {
        padding:28px 0 0;
        gap:27px;
        grid-template-columns:1fr;
        min-height:0
    }
    .solutions-tabs button {
        font-size:15px;
        gap:7px;
        padding:17px 7px
    }
    .solutions-tabs button>span {
        font-size:8px
    }
    .solutions-tabs button>b {
        display:none
    }
    .solution-panel h3 {
        font-size:30px
    }
    .solution-panel p {
        max-width:450px
    }
    .solution-list li {
        font-size:14px;
        padding-block:14px
    }
    .centered>p:last-child {
        font-size:14px
    }
    .platform-demo {
        grid-template-columns:49px 1fr;
        transform:none;
        border-radius:8px
    }
    .demo-sidebar {
        padding:23px 6px;
        gap:10px
    }
    .demo-logo {
        font-size:24px;
        padding-left:4px;
        margin-bottom:15px
    }
    .demo-logo>span {
        font-size:13px
    }
    .demo-nav {
        padding:6px;
        text-align:center;
        font-size:15px
    }
    .demo-nav>span,.demo-sidebar-bottom {
        display:none
    }
    .demo-main {
        padding:17px 13px
    }
    .demo-header {
        gap:8px;
        margin-bottom:17px
    }
    .demo-header h3 {
        font-size:18px
    }
    .demo-header small {
        font-size:6px
    }
    .demo-badge {
        font-size:6px;
        padding:4px 6px
    }
    .demo-metrics {
        gap:6px
    }
    .demo-metrics>div {
        padding:10px 8px
    }
    .demo-metrics small {
        font-size:8px;
        line-height:1.4;
        min-height:22px
    }
    .demo-metrics strong {
        font-size:22px;
        line-height:1.2;
        margin-top:8px
    }
    .demo-metrics strong>span {
        display:none
    }
    .demo-metrics>div>span {
        display:none
    }
    .demo-bottom {
        grid-template-columns:1fr;
        gap:10px;
        margin-top:10px
    }
    .demo-chart {
        padding:13px
    }
    .demo-card-heading {
        font-size:10px
    }
    .demo-card-heading>span {
        font-size:7px
    }
    .chart-grid {
        height:110px;
        margin-top:20px
    }
    .demo-insight {
        padding:16px
    }
    .demo-insight .eyebrow {
        font-size:8px;
        margin-bottom:10px
    }
    .demo-insight>strong {
        font-size:16px
    }
    .demo-insight>p {
        font-size:11px;
        line-height:1.6;
        margin-top:7px
    }
    .insight-foot {
        font-size:9px;
        padding-top:13px
    }
    .demo-integrations {
        gap:8px 13px;
        margin-top:13px;
        font-size:8px
    }
    .demo-integrations>span {
        width:100%
    }
    .demo-integrations>b {
        font-size:8px
    }
    .visual-caption {
        font-size:10px;
        max-width:320px;
        margin-inline:auto
    }
    .industries-section {
        padding-block:40px
    }
    .industries-section>.container {
        grid-template-columns:1fr;
        gap:25px
    }
    .industries-section h2 {
        font-size:31px
    }
    .industry-list li {
        font-size:11px;
        padding:9px 13px
    }
    .tech-grid {
        grid-template-columns:repeat(2,1fr);
        gap:0 24px
    }
    .tech-grid h3 {
        font-size:15px;
        line-height:1.3
    }
    .tech-grid p {
        font-size:12px
    }
    .tech-grid p>span {
        padding-inline:3px
    }
    .process-timeline {
        grid-template-columns:1fr;
        gap:28px;
        margin-top:35px
    }
    .process-timeline::before {
        left:21px;
        right:auto;
        bottom:0;
        top:0;
        border-left:1px solid #cbd5d2;
        border-top:0
    }
    .process-timeline li {
        padding-left:66px;
        min-height:80px
    }
    .process-timeline li>span {
        position:absolute;
        left:0;
        top:0
    }
    .process-timeline h3 {
        font-size:20px;
        margin-bottom:9px;
        padding-top:3px
    }
    .process-timeline p {
        font-size:14px;
        max-width:none
    }
    .why-section>div>p:not(.eyebrow) {
        max-width:none
    }
    .why-list>article {
        gap:23px
    }
    .why-list h3 {
        font-size:20px
    }
    .why-list p {
        font-size:14px
    }
    .engagement-grid {
        grid-template-columns:repeat(2,1fr);
        gap:27px
    }
    .engagement-grid h3 {
        font-size:18px
    }
    .engagement-grid p {
        font-size:13px
    }
    .engagement-grid article>span {
        margin-bottom:17px
    }
    .support-callout {
        display:block;
        margin-top:32px;
        padding:24px
    }
    .support-callout p {
        font-size:13px
    }
    .support-callout .text-link {
        margin-top:20px
    }
    .contact-copy h2 {
        font-size:43px
    }
    .contact-copy>p:not(.eyebrow) {
        max-width:none
    }
    .contact-copy .contact-note {
        display:none
    }
    .contact-actions {
        gap:16px 24px
    }
    .contact-actions .text-link {
        font-size:12px
    }
    .brief-card {
        padding:28px 24px
    }
    .brief-card h3 {
        font-size:25px
    }
    .brief-card>p {
        font-size:13px
    }
    .brief-card label {
        font-size:12px
    }
    .brief-card input,.brief-card select,.brief-card textarea {
        font-size:16px;
        padding:11px;
        min-height:44px
    }
    .form-row {
        grid-template-columns:1fr 1fr;
        gap:12px
    }
    .brief-submit {
        font-size:13px
    }
    .form-status {
        font-size:11px
    }
    .footer-grid {
        grid-template-columns:1fr 1fr;
        gap:35px 25px;
        padding-bottom:35px
    }
    .footer-brand {
        grid-column:1/3;
        grid-row:auto
    }
    .footer-brand>p:last-child {
        max-width:330px;
        font-size:13px
    }
    .footer-grid>div:last-child {
        grid-column:1/3;
        gap:8px 25px
    }
    .footer-grid>div:not(:first-child)>a {
        font-size:12px
    }
    .footer-grid h2 {
        font-size:13px
    }
    .footer-bottom {
        flex-wrap:wrap;
        font-size:10px;
        gap:14px
    }
    .footer-bottom>span:nth-child(2) {
        display:none
    }
    .legal-page h1 {
        font-size:40px
    }
    .legal-page .lead {
        font-size:18px
    }
    @keyframes menu-in {
        from {
            opacity:0;
            translate:0 -8px
        }
        to {
            opacity:1;
            translate:0 0
        }
    }
}
@media(max-width:479px) {
    .services-grid {
        grid-template-columns:1fr
    }
    .service-card {
        padding:27px
    }
    .service-card h3 {
        font-size:26px
    }
    .service-card>p {
        min-height:0;
        font-size:14px
    }
    .tags li {
        font-size:10px
    }
    .service-link {
        font-size:13px
    }
    .service-top {
        margin-bottom:23px
    }
    .service-card h3 br {
        display:none
    }
    .hero h1 {
        font-size:42px
    }
    .hero-description {
        font-size:18px
    }
    .hero-detail {
        font-size:13px
    }
    .hero-copy .button {
        font-size:11px;
        padding:13px 15px;
        gap:16px
    }
    .system-card {
        padding:11px
    }
    .system-card strong {
        font-size:11px
    }
    .card-overline {
        font-size:6px
    }
    .card-meta {
        font-size:6px
    }
    .visual-icon {
        width:23px;
        height:23px;
        font-size:15px;
        margin-bottom:7px
    }
    .ai-spark {
        font-size:25px;
        margin-bottom:10px
    }
    .ai-pills {
        gap:2px;
        margin-top:11px
    }
    .ai-pills span {
        font-size:6px;
        padding:2px 3px
    }
    .core-mark {
        width:32px;
        height:32px;
        font-size:28px;
        border-radius:7px
    }
    .core-mark>span {
        font-size:13px
    }
    .core-node>strong {
        font-size:18px
    }
    .core-node>span:not(.core-mark) {
        font-size:5px
    }
    .core-status {
        font-size:5px;
        margin-top:7px
    }
    .workflow-mini span {
        font-size:6px;
        padding:4px
    }
    .workflow-mini {
        gap:4px;
        margin-block:10px
    }
    .data-node {
        font-size:6px;
        padding:7px
    }
    .data-node>span {
        font-size:15px
    }
    .code-node {
        font-size:7px
    }
    .visual-coordinate {
        font-size:6px
    }
    .commerce-bars {
        height:22px;
        margin-top:10px
    }
    .tiny-ui {
        height:28px
    }
    .form-row {
        grid-template-columns:1fr;
        gap:0
    }
    .solutions-tabs button {
        font-size:13px;
        padding:15px 5px;
        gap:5px
    }
    .solutions-tabs button>span {
        font-size:7px
    }
    .workflow-step small {
        font-size:10px
    }
    .workflow-step {
        gap:11px
    }
    .workflow-track {
        padding-inline:17px
    }
    .workflow-track::before {
        left:46px
    }
    .diagram-top {
        font-size:7px
    }
    .commerce-network {
        padding-inline:15px
    }
    .commerce-network-row>span {
        font-size:10px
    }
    .commerce-hub strong {
        font-size:17px
    }
    .contact-actions .button {
        font-size:12px
    }
    .hero-baseline>span {
        max-width:150px
    }
    .hero-baseline a {
        font-size:8px
    }
    .demo-badge {
        display:none
    }
    .brief-card {
        padding:25px 21px
    }
}
/* Keep supporting content legible on quiet surfaces. Diagram previews are illustrative. */
.architecture p {
    color:#5f6e7c
}
.diagram-top,.diagram-note {
    color:#5b6973
}
.workflow-step small {
    color:#616d78
}
.workflow-step .tiny-label {
    color:#5c6a7d
}
.commerce-hub small,.network-bottom {
    color:#586c52
}
.visual-caption {
    color:#616d74
}
.brief-card label>span,.form-status {
    color:#5f6d79
}
.footer-bottom {
    color:#606e67
}
@media(max-width:479px) {
    .ecosystem {
        aspect-ratio:auto;
        height:370px;
        margin-top:18px
    }
    .business-card {
        top:5%;
        width:37%
    }
    .ai-card {
        top:4%;
        right:0;
        width:35%
    }
    .core-node {
        top:49%;
        width:32%
    }
    .commerce-card {
        top:54%;
        right:0;
        width:34%
    }
    .commerce-card .visual-icon {
        display:none
    }
    .commerce-card strong {
        font-size:10px;
        line-height:1.4
    }
    .commerce-card strong br {
        display:initial
    }
    .workflow-card {
        left:5%;
        bottom:5%;
        width:53%
    }
    .workflow-card .card-meta,.code-node {
        display:none
    }
    .business-card .card-meta {
        display:none
    }
    .data-node {
        top:57%;
        left:0
    }
    .coordinate-top {
        left:14%;
        top:-10px
    }
    .coordinate-bottom {
        right:12%;
        bottom:0
    }
    .commerce-bars {
        height:24px
    }
    .hero-detail {
        font-size:14px
    }
    .hero-copy .button {
        font-size:12px;
        padding-inline:14px;
        gap:12px
    }
    .capability-grid p {
        font-size:11px
    }
    .solutions-tabs button {
        font-size:14px
    }
    .solutions-tabs button>span {
        display:none
    }
    .contact-actions .text-link {
        font-size:13px
    }
}
@media(max-width:1023px) {
    .site-header:not(.nav-ready) .header-inner {
        height:auto;
        min-height:75px;
        flex-wrap:wrap;
        padding-top:20px
    }
    .site-header:not(.nav-ready) .menu-toggle {
        display:none
    }
    .site-header:not(.nav-ready) .navigation {
        display:flex;
        position:static;
        width:100%;
        padding:0 0 20px;
        box-shadow:none;
        max-height:none;
        border:0
    }
}
@media(max-width:479px) {
    .hero-copy .button-row {
        gap:8px
    }
    .hero-copy .button {
        font-size:11px;
        padding:13px 10px;
        gap:8px
    }
}
/* Accessible contrast for small supporting labels and sequence numbers. */
.capability-grid>div>span,
.service-top>span:last-child,
.architecture>div>span,
.solution-list li span,
.solutions-tabs button>span,
.why-list>article>span,
.tech-grid p>span {
    color: #5f6b6d;
}
.solutions-tabs button {
    color: #586660;
}
.workflow-step:not(.ai-step) .step-icon {
    color: #476252;
}
.workflow-step>span.tiny-label:last-child {
    color: #52627c;
}
.workflow-step small,
.architecture p {
    color: #566372;
}
.industries-section .eyebrow,
.process-timeline li>span {
    color: #50684e;
}
.process-timeline li:first-child>span {
    color: #fff;
}
.contact-copy .contact-note {
    color: #5e6c73;
}
.brief-card textarea::placeholder {
    color: #66737b;
}
@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto
    }
    *,*::before,*::after {
        animation:none!important;
        transition:none!important
    }
    .reveal.pending {
        opacity:1;
        translate:none
    }
}
