:root {
  color-scheme:dark;
  --bg:#101113;
  --panel:#181a1d;
  --line:#303236;
  --text:#f4f4f2;
  --muted:#a4a6aa;
  --orange:#87401d;
  --orange-text:#bd805e;
  --orange-display:#ad6946;
  --max:80rem;
  --header:5.5rem;
  font-family:"Segoe UI",Arial,sans-serif;
  font-synthesis:none;
  /* 16px on phones, growing to the requested 142% desktop scale. */
  font-size:clamp(16px, 1.6vw, 22.72px);
}

* {
  box-sizing:border-box;
}

html {
  scroll-behavior:smooth;
  scroll-padding-top:var(--header);
}

body {
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-size:1rem;
  line-height:1.6;
}

button,input,select,textarea {
  font:inherit;
}

button,a,input,textarea,select {
  -webkit-tap-highlight-color:transparent;
}

button,a {
  touch-action:manipulation;
}

button {
  cursor:pointer;
  color:inherit;
}

a {
  color:inherit;
  text-decoration:none;
}

img {
  max-width:100%;
  display:block;
}

h1,h2,h3,p,figure {
  margin:0;
}

h1,h2,h3 {
  line-height:1.12;
}

h2 {
  font-size:clamp(2.25rem,4vw,3.375rem);
  font-weight:550;
  letter-spacing:-0.15rem;
}

h3 {
  font-weight:600;
}

button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible,summary:focus-visible {
  outline:0.125rem solid #dfa07d;
  outline-offset:0.3125rem;
}

input:focus-visible,select:focus-visible,textarea:focus-visible {
  outline-offset:0.125rem;
}

[hidden] {
  display:none!important;
}

.shell {
  width:calc(100% - 7rem);
  max-width:var(--max);
  margin-inline:auto;
}

.section {
  padding:7rem 0;
}

.orange {
  color:var(--orange-text);
}

.muted {
  color:#989b9f;
}

.sr-only {
  position:absolute;
  width:0.0625rem;
  height:0.0625rem;
  padding:0;
  margin:-0.0625rem;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.skip-link {
  position:fixed;
  top:0.5rem;
  left:0.5rem;
  transform:translateY(-150%);
  z-index:1000;
  padding:0.75rem;
  background:var(--orange);
  color:var(--text);
}

.skip-link:focus {
  transform:translateY(0);
}

.eyebrow {
  display:flex;
  align-items:center;
  gap:0.75rem;
  letter-spacing:0.125rem;
  font-size:0.625rem;
  font-weight:650;
  line-height:1.6;
}

.orange-dash {
  height:0.125rem;
  width:1.5rem;
  background:var(--orange);
  flex-shrink:0;
}

.button {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:1.75rem;
  min-height:3.25rem;
  padding:0.875rem 1.4375rem;
  background:var(--orange);
  border:0.0625rem solid var(--orange);
  border-radius:0.3125rem;
  color:var(--text);
  font-size:0.8125rem;
  font-weight:700;
  line-height:1.4;
  transition:background .2s,transform .2s,border-color .2s;
}

.button:hover {
  background:#994b26;
  border-color:#994b26;
  transform:translateY(-0.125rem);
}

.button>span:last-child:not(:first-child) {
  font-size:1.3125rem;
  line-height:1;
}

.button-small {
  min-height:2.625rem;
  padding:0.5625rem 1.0625rem;
  gap:1.25rem;
  font-size:0.75rem;
}

.button-outline {
  border-color:#52545a;
  background:transparent;
  color:var(--text);
}

.button-outline:hover {
  background:#292b2f;
  border-color:#97999d;
}

.text-link {
  display:inline-flex;
  align-items:center;
  gap:1.1875rem;
  font-size:0.8125rem;
  font-weight:600;
}

.text-link:hover {
  color:var(--orange-text);
}

.text-link>span:last-child {
  font-size:1.25rem;
}

.site-header {
  height:var(--header);
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(16,17,19,.96);
  border-bottom:0.0625rem solid #ffffff17;
  backdrop-filter:blur(1rem);
}

.header-inner {
  height:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.625rem;
}

.brand {
  display:flex;
  align-items:center;
  gap:0.4375rem;
  flex-shrink:0;
}

.brand-mark {
  width:4.0625rem;
  height:2.8125rem;
  object-fit:contain;
}

.brand-type {
  display:flex;
  flex-direction:column;
  gap:0.3125rem;
  width:12rem;
}

.brand-type img {
  width:100%;
  height:auto;
}

.brand-type>span {
  font-size:0.625rem;
  line-height:1;
  letter-spacing:0.1625rem;
  color:#dedfe2;
  padding-left:0.375rem;
}

.brand-type b {
  font-weight:700;
  color:var(--orange-text);
}

.desktop-nav {
  display:flex;
  gap:1.6875rem;
  margin-left:auto;
  align-items:center;
}

.desktop-nav a {
  font-size:0.75rem;
  color:#b6b8bc;
  padding-block:0.75rem;
  transition:color .2s;
  white-space:nowrap;
}

.desktop-nav a:hover,.desktop-nav a[aria-current] {
  color:#fff;
}

.header-actions {
  display:flex;
  align-items:center;
  gap:0.75rem;
}

.language-control select {
  font-size:0.625rem;
  background:transparent;
  color:#babcbe;
  border:0;
  min-height:2.5rem;
  cursor:pointer;
  padding:0.375rem 0.25rem;
}

.language-control option {
  background:#181a1d;
}

.account-link {
  display:grid;
  place-items:center;
  width:2.3125rem;
  height:2.5rem;
  color:#b7b9bd;
}

.account-link svg {
  width:1.0625rem;
  height:1.0625rem;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
}

.account-link:hover {
  color:var(--orange-text);
}

.menu-toggle {
  display:none;
  background:none;
  border:0.0625rem solid var(--line);
  border-radius:0.25rem;
  width:2.75rem;
  height:2.75rem;
  padding:0.75rem;
}

.menu-toggle span {
  display:block;
  height:0.0625rem;
  background:white;
  margin:0.3125rem 0;
  transition:transform .2s;
}

.menu-toggle[aria-expanded=true] span:first-child {
  transform:translateY(0.1875rem) rotate(45deg);
}

.menu-toggle[aria-expanded=true] span:last-child {
  transform:translateY(-0.1875rem) rotate(-45deg);
}

.mobile-nav {
  background:#151618;
  border-bottom:0.0625rem solid var(--line);
  padding:0.75rem 1.5rem;
}

.mobile-nav a {
  display:block;
  padding:0.75rem;
  font-size:1rem;
}

.hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:radial-gradient(ellipse at 73% 38%,#232528 0%,#151618 30%,#101113 65%);
}

.hero-grid {
  position:absolute;
  inset:0;
  z-index:-1;
  background-image:linear-gradient(#ffffff03 0.0625rem,transparent 0.0625rem),linear-gradient(90deg,#ffffff03 0.0625rem,transparent 0.0625rem);
  background-size:5rem 5rem;
  mask-image:linear-gradient(to right,transparent,black);
}

.hero-content {
  display:grid;
  grid-template-columns:1.03fr 1fr;
  align-items:center;
  min-height:40.25rem;
  padding-block:4.5rem 4.375rem;
  gap:1.875rem;
}

.hero-copy {
  z-index:2;
}

.hero-copy .eyebrow {
  color:#dadbde;
  margin-bottom:1.6875rem;
}

h1 {
  font-size:clamp(3.875rem,6.1vw,5.4375rem);
  letter-spacing:-0.3rem;
  font-weight:600;
  line-height:1.04;
  white-space:nowrap;
}

.hero-description {
  max-width:30rem;
  font-size:1rem;
  color:#b2b4b8;
  line-height:1.8;
  margin-top:1.625rem;
}

.hero-actions {
  display:flex;
  align-items:center;
  gap:1.6875rem;
  margin-top:2rem;
}

.hero-note {
  margin-top:1.4375rem;
  display:flex;
  align-items:center;
  gap:0.5625rem;
  font-size:0.6875rem;
  color:#909399;
}

.small-check {
  color:#b0b5b0;
  font-size:0.8125rem;
}

.hero-art {
  min-width:0;
  position:relative;
  height:27.5rem;
  display:flex;
  align-items:center;
  justify-content:center;
  isolation:isolate;
}

.hero-emblem {
  position:relative;
  width:112%;
  max-width:none;
  transform:translate(0,-0.8125rem);
  filter:saturate(.68) brightness(.94) drop-shadow(0 1.5625rem 1.5rem #0009);
  animation:emblem-enter 1.2s ease-out both;
}

.orbit {
  position:absolute;
  border:0.0625rem solid #ffffff0d;
  border-radius:50%;
  width:20.625rem;
  height:20.625rem;
  transform:rotate(-28deg);
  z-index:-1;
}

.orbit-one:before,.orbit-one:after {
  content:"";
  position:absolute;
  inset:-2.1875rem;
  border:0.0625rem solid #ffffff06;
  border-radius:50%;
}

.orbit-one:after {
  inset:-4.4375rem;
}

.orbit-two {
  width:30.3125rem;
  height:10.875rem;
  border-color:#ffffff12;
  transform:rotate(-27deg);
}

.art-coordinate {
  position:absolute;
  top:1.875rem;
  left:1rem;
  font-family:Consolas,monospace;
  font-size:0.5rem;
  letter-spacing:0.15625rem;
  color:#6f7379;
}

.art-cross {
  position:absolute;
  font-family:Consolas,monospace;
  color:#73777e;
  font-size:1.25rem;
  font-weight:200;
}

.cross-one {
  left:0.4375rem;
  top:4.0625rem;
}

.cross-two {
  right:0.375rem;
  bottom:4.0625rem;
}

.orange-trace {
  position:absolute;
  width:41.25rem;
  height:0.0625rem;
  transform:rotate(-36deg);
  background:linear-gradient(to right,transparent,#87401d40,#87401d70,transparent);
  z-index:-1;
}

.hero-art:before {
  content:"";
  position:absolute;
  inset:-5.625rem -11.25rem -8.75rem 1.5625rem;
  z-index:-2;
  background:linear-gradient(132deg,transparent 31%,#ffffff04 31.2%,#0002 43%,#ffffff05 43.15%,transparent 43.4%,transparent 72%,#87401d1a 72.15%,transparent 72.3%);
}

.art-caption {
  position:absolute;
  bottom:4.75rem;
  display:flex;
  align-items:center;
  gap:1rem;
  font-size:0.625rem;
  letter-spacing:0.25rem;
  color:#b1b4ba;
}

.art-caption i {
  width:0.1875rem;
  height:0.1875rem;
  background:var(--orange);
  border-radius:100%;
}

.art-base {
  position:absolute;
  bottom:0.75rem;
  left:1.875rem;
  right:0;
  display:flex;
  justify-content:space-between;
  font-family:Consolas,monospace;
  font-size:0.4375rem;
  letter-spacing:0.10625rem;
  color:#6e7279;
  border-top:0.0625rem solid #ffffff0a;
  padding-top:0.8125rem;
}

.value-strip {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  padding:1.875rem 0 2.125rem;
  border-top:0.0625rem solid var(--line);
}

.value-strip>div {
  display:flex;
  gap:1.25rem;
  align-items:flex-start;
}

.value-strip>div+div {
  border-left:0.0625rem solid var(--line);
  padding-left:2.8125rem;
}

.value-number {
  color:var(--orange-text);
  font-size:0.625rem;
  font-family:Consolas,monospace;
  padding-top:0.1875rem;
}

.value-strip strong {
  display:block;
  font-size:0.875rem;
  font-weight:600;
  line-height:1.5;
}

.value-strip small {
  display:block;
  font-size:0.75rem;
  color:#8e9297;
  margin-top:0.1875rem;
}

.solutions-section {
  border-top:0.0625rem solid #242629;
  background:#141517;
}

.section-heading {
  display:flex;
  justify-content:space-between;
  gap:3.75rem;
  align-items:flex-end;
  margin-bottom:2.875rem;
}

.section-heading .eyebrow {
  margin-bottom:1.25rem;
}

.section-heading>p {
  max-width:21.5625rem;
  color:var(--muted);
  font-size:0.875rem;
  line-height:1.85;
  padding-bottom:0.3125rem;
}

.solution-finder {
  display:grid;
  grid-template-columns:.8fr 1.3fr;
  gap:1.875rem;
}

.solution-tabs {
  display:flex;
  flex-direction:column;
  gap:0.625rem;
}

.solution-tab {
  display:flex;
  align-items:center;
  text-align:left;
  gap:1.25rem;
  width:100%;
  padding:1.4375rem 1.5rem;
  background:#1a1b1e;
  border:0.0625rem solid #2c2e32;
  border-radius:0.375rem;
  min-height:6.4375rem;
  transition:background .2s,border-color .2s;
}

.solution-tab:hover {
  background:#222427;
  border-color:#696b70;
}

.solution-tab[aria-selected=true] {
  background:linear-gradient(110deg,#87401d0c,#1b1c1f);
  border-color:#8f5d43;
  box-shadow:inset 0.1875rem 0 var(--orange);
}

.solution-tab strong {
  display:block;
  font-size:0.9375rem;
  font-weight:550;
}

.solution-tab small {
  display:block;
  color:#92959a;
  font-size:0.6875rem;
  margin-top:0.25rem;
}

.tab-icon {
  display:grid;
  place-items:center;
  border:0.0625rem solid #414348;
  border-radius:0.375rem;
  width:2.3125rem;
  height:2.3125rem;
  font-size:1.5rem;
  line-height:1;
  color:#a9acb0;
  flex-shrink:0;
}

.code-icon {
  font-size:0.875rem;
}

.solution-tab[aria-selected=true] .tab-icon {
  color:var(--orange-text);
  border-color:#73513e;
  background:#87401d08;
}

.tab-arrow {
  margin-left:auto;
  color:#777b80;
  font-size:1.3125rem;
}

.solution-tab[aria-selected=true] .tab-arrow {
  color:var(--orange-text);
}

.solution-panel {
  padding:1.875rem 2.125rem 1.6875rem;
  border:0.0625rem solid #36383c;
  background:radial-gradient(ellipse at top right,#303236 0%,#1d1f22 58%);
  border-radius:0.4375rem;
  min-width:0;
}

.solution-panel-top {
  display:flex;
  justify-content:space-between;
  gap:1.25rem;
  margin-bottom:1.25rem;
}

.mini-label {
  font-size:0.5625rem;
  color:#9fa3a8;
  font-weight:600;
  letter-spacing:0.09375rem;
}

.solution-panel-top .mini-label {
  color:#ce966f;
}

.solution-counter {
  font-family:Consolas,monospace;
  font-size:0.5625rem;
  color:#9a9da3;
}

.solution-panel h3 {
  font-size:1.75rem;
  letter-spacing:-0.05rem;
  margin-bottom:0.8125rem;
}

.solution-panel>p {
  color:#aaadb3;
  line-height:1.75;
  font-size:0.875rem;
  max-width:35rem;
  min-height:4.3125rem;
}

.workflow-preview {
  border:0.0625rem solid #393c40;
  background:#121416;
  border-radius:0.3125rem;
  margin:1.3125rem 0 1.1875rem;
  padding:0.875rem 1.125rem 1.25rem;
}

.workflow-heading {
  display:flex;
  align-items:center;
  gap:0.4375rem;
  font-size:0.5625rem;
  color:#b2b6bd;
}

.status-dot {
  width:0.3125rem;
  height:0.3125rem;
  background:#87a792;
  border-radius:100%;
}

.example-label {
  margin-left:auto;
  font-size:0.4375rem;
  letter-spacing:0.06875rem;
  color:#868b92;
}

.workflow-nodes {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:1.25rem;
  gap:0.5rem;
}

.workflow-nodes>span {
  display:flex;
  align-items:center;
  gap:0.5rem;
}

.workflow-nodes i {
  font-style:normal;
  display:grid;
  place-items:center;
  width:1.75rem;
  height:1.75rem;
  border:0.0625rem solid #614333;
  border-radius:0.3125rem;
  color:#f18b58;
  background:#302116;
  font-size:0.9375rem;
}

.workflow-nodes b {
  font-size:0.625rem;
  font-weight:500;
  line-height:1.4;
  max-width:5.625rem;
}

.workflow-nodes em {
  font-style:normal;
  color:#5b626b;
  font-size:1rem;
}

.deliverable-heading {
  font-size:0.5rem;
  letter-spacing:0.09375rem;
  color:#979ca3;
}

.deliverables {
  display:flex;
  flex-wrap:wrap;
  gap:0.5rem 1.25rem;
  margin:0.5625rem 0 1.375rem;
  padding:0;
  list-style:none;
}

.deliverables li {
  font-size:0.75rem;
  color:#d0d2d7;
}

.deliverables li:before {
  content:"✓";
  color:var(--orange-text);
  margin-right:0.4375rem;
}

.solution-panel .text-link {
  font-size:0.8125rem;
}

.industry-line {
  border-top:0.0625rem solid #303236;
  margin-top:2.75rem;
  padding-top:1.5625rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.625rem;
}

.industry-line>span {
  font-size:0.5rem;
  letter-spacing:0.10625rem;
  color:#8f949c;
}

.industry-line p {
  display:flex;
  align-items:center;
  gap:1.375rem;
  font-size:0.75rem;
  color:#b8bbc0;
}

.industry-line i {
  font-style:normal;
  color:#575b63;
}

.approach-section {
  background:#e8e7e3;
  color:#202226;
}

.approach-section .muted {
  color:#777975;
}

.approach-section .section-heading>p {
  color:#686a66;
}

.process-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1.875rem;
  padding:0;
  margin:3.375rem 0 0;
  list-style:none;
}

.process-step {
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-top:0.0625rem solid #bdbeba;
  padding-top:1.25rem;
  margin-bottom:1.75rem;
}

.process-step span {
  font-size:2.375rem;
  letter-spacing:-0.125rem;
  font-weight:350;
  color:#8a8d87;
  line-height:1;
}

.process-step i {
  font-size:1.5625rem;
  color:#858a81;
  font-style:normal;
}

.process-grid li:first-child .process-step span,.process-grid li:first-child .process-step i {
  color:#bd3b06;
}

.process-grid h3 {
  font-size:1.1875rem;
  letter-spacing:-0.03125rem;
  margin-bottom:0.9375rem;
}

.process-grid li>p {
  font-size:0.8125rem;
  line-height:1.8;
  color:#636762;
  min-height:6.75rem;
}

.process-output {
  border-top:0.0625rem solid #cdcfca;
  margin-top:1.25rem;
  padding-top:1.0625rem;
}

.process-output small {
  display:block;
  letter-spacing:0.09375rem;
  font-size:0.5rem;
  color:#737a70;
}

.process-output strong {
  display:block;
  font-size:0.75rem;
  font-weight:650;
  margin-top:0.4375rem;
  line-height:1.6;
}

.approach-note {
  display:flex;
  gap:0.75rem;
  align-items:center;
  border-top:0.0625rem solid #c7c9c3;
  margin-top:2.625rem;
  padding-top:1.25rem;
  color:#686e63;
  font-size:0.6875rem;
}

.approach-note>span {
  color:#b6410f;
}

.software-section {
  background:#101113;
}

.featured-product {
  display:grid;
  grid-template-columns:1fr 1.25fr;
  border:0.0625rem solid #383b3e;
  border-radius:0.5rem;
  background:#191b1e;
  overflow:hidden;
}

.featured-copy {
  padding:2.3125rem 2.375rem;
}

.product-eyebrow {
  display:flex;
  gap:0.875rem;
  align-items:center;
  flex-wrap:wrap;
  font-size:0.5rem;
  letter-spacing:0.1rem;
  color:#a6aab0;
}

.development-badge {
  display:flex;
  align-items:center;
  gap:0.375rem;
  letter-spacing:0;
  font-size:0.5625rem;
  border:0.0625rem solid #645035;
  color:#d6b88c;
  border-radius:1.25rem;
  padding:0.1875rem 0.5rem;
  line-height:1.4;
}

.development-badge i {
  width:0.25rem;
  height:0.25rem;
  background:#d3a467;
  border-radius:50%;
}

.featured-copy h3 {
  font-size:2.75rem;
  letter-spacing:-0.11875rem;
  margin-top:1.5rem;
}

.featured-copy .product-tagline {
  color:#e2e3e6;
  font-size:0.9375rem;
  margin-top:0.75rem;
}

.featured-copy>p:not(.product-tagline) {
  font-size:0.875rem;
  line-height:1.8;
  color:#a2a6ae;
  margin-top:0.9375rem;
  max-width:22.5rem;
}

.product-tags {
  display:flex;
  gap:0.5rem;
  flex-wrap:wrap;
  margin-top:1.1875rem;
}

.product-tags span {
  padding:0.1875rem 0.5625rem;
  font-size:0.5rem;
  color:#9da3ac;
  border:0.0625rem solid #383c43;
  border-radius:0.1875rem;
}

.featured-copy .button {
  margin-top:1.625rem;
  min-height:2.75rem;
  font-size:0.6875rem;
  gap:2.0625rem;
}

.featured-visual {
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:2rem 0 2rem 0.3125rem;
  background:radial-gradient(ellipse at center,#263344,#151c25 75%);
  position:relative;
}

.product-window-bar {
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:#8b96a5;
  font-size:0.4375rem;
  letter-spacing:0.0875rem;
  background:#141b25;
  border:0.0625rem solid #394452;
  border-radius:0.4375rem 0 0 0;
  padding:0.75rem 0.9375rem;
  border-bottom:0;
  margin-left:1.25rem;
}

.window-dots {
  display:flex;
  gap:0.25rem;
}

.window-dots i {
  width:0.25rem;
  height:0.25rem;
  border-radius:50%;
  background:#536070;
}

.featured-visual>img {
  width:calc(100% - 1.25rem);
  margin-left:1.25rem;
  aspect-ratio:1942/809;
  object-fit:cover;
  object-position:left center;
  border:0.0625rem solid #394452;
  border-top:0;
  border-right:0;
  box-shadow:0 1.875rem 3.125rem #0005;
}

.featured-visual>p {
  font-size:0.625rem;
  color:#8793a3;
  text-align:center;
  margin-top:1rem;
  padding-inline:0.9375rem;
}

.product-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1.125rem;
  margin-top:1.25rem;
}

.product-card {
  padding:1.5625rem 1.5625rem 1.375rem;
  border:0.0625rem solid #303236;
  border-radius:0.375rem;
  background:#17191b;
  transition:transform .2s,border-color .2s;
  display:flex;
  flex-direction:column;
}

.product-card:hover {
  transform:translateY(-0.25rem);
  border-color:#6e5143;
}

.product-card-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:1.625rem;
  height:2.6875rem;
}

.product-card-top>img {
  width:3.375rem;
  height:2.6875rem;
  object-fit:contain;
}

.product-symbol {
  font-size:1.9375rem;
  line-height:1;
}

.nodex-symbol {
  color:#aaaefc;
  font-weight:600;
  letter-spacing:-0.1875rem;
}

.nodex-symbol span {
  color:#f3b460;
  font-size:1.25rem;
}

.pattern-symbol {
  color:#7fc0b4;
}

.warehouse-symbol {
  color:#e2ab66;
  font-size:2.375rem;
}

.product-arrow {
  font-size:1.4375rem;
  color:#777d86;
}

.product-card:hover .product-arrow {
  color:var(--orange-text);
}

.product-card h3 {
  font-size:1.3125rem;
  letter-spacing:-0.0375rem;
  margin-top:0.625rem;
}

.product-card .mini-label {
  font-size:0.4375rem;
  letter-spacing:0.0875rem;
}

.product-card>p {
  font-size:0.8125rem;
  line-height:1.8;
  color:#9ea3ab;
  margin-top:0.875rem;
  margin-bottom:1.25rem;
}

.product-card-link {
  font-size:0.75rem;
  color:#c7cbd0;
  margin-top:auto;
  padding-top:0.9375rem;
  border-top:0.0625rem solid #2c3034;
}

.about-section {
  padding:4.6875rem 0;
  background:#1a1c1f;
  border-top:0.0625rem solid #303337;
  border-bottom:0.0625rem solid #303337;
}

.about-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6.25rem;
  align-items:center;
}

.about-intro h2 {
  font-size:2.375rem;
  letter-spacing:-0.0875rem;
  margin-top:1.1875rem;
}

.about-intro>p:last-child {
  font-size:0.875rem;
  color:#a6abb2;
  line-height:1.85;
  max-width:30.625rem;
  margin-top:1.4375rem;
}

.founder-quote {
  padding-left:2.25rem;
  border-left:0.0625rem solid #3b3f45;
  position:relative;
}

.quote-mark {
  display:block;
  color:var(--orange-text);
  font-family:Georgia,serif;
  font-size:3.625rem;
  height:2.625rem;
  line-height:1;
}

.founder-quote blockquote {
  margin:0.3125rem 0 1.5rem;
  font-size:1.125rem;
  font-weight:350;
  line-height:1.75;
  color:#dedfe2;
  letter-spacing:-0.009375rem;
}

.founder-quote figcaption {
  display:flex;
  align-items:center;
  gap:0.8125rem;
}

.founder-quote figcaption img {
  width:2.75rem;
  height:2.75rem;
  border-radius:50%;
  object-fit:cover;
  background:#333941;
}

.founder-quote strong {
  display:block;
  font-size:0.6875rem;
  font-weight:600;
}

.founder-quote small {
  display:block;
  font-size:0.5625rem;
  color:#91979f;
  margin-top:0.125rem;
}

.faq-grid {
  display:grid;
  grid-template-columns:.9fr 1.2fr;
  gap:5.9375rem;
}

.faq-grid h2 {
  margin-top:1.25rem;
  font-size:2.75rem;
}

.faq-grid>div>p:last-child {
  color:#949aa2;
  font-size:0.75rem;
  margin-top:1.25rem;
}

.faq-list {
  border-top:0.0625rem solid #353a40;
}

.faq-list details {
  border-bottom:0.0625rem solid #353a40;
}

.faq-list summary {
  list-style:none;
  display:flex;
  justify-content:space-between;
  gap:1.25rem;
  padding:1.4375rem 0;
  cursor:pointer;
  font-size:0.875rem;
  font-weight:500;
}

.faq-list summary::-webkit-details-marker {
  display:none;
}

.faq-list summary i {
  font-size:1.3125rem;
  font-style:normal;
  color:var(--orange-text);
  line-height:1;
}

.faq-list details[open] summary i {
  transform:rotate(45deg);
}

.faq-list details p {
  font-size:0.875rem;
  color:#a0a7b0;
  line-height:1.9;
  padding:0 2rem 1.5rem 0;
}

.contact-section {
  background:radial-gradient(ellipse at 10% 75%,#342015 0%,#1a1b1e 38%,#1a1b1e 100%);
  border-block:0.0625rem solid #383a3e;
}

.contact-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5.625rem;
  align-items:start;
}

.contact-copy h2 {
  font-size:clamp(3.125rem,5vw,4.5rem);
  letter-spacing:-0.1875rem;
  line-height:1.04;
  margin-top:1.4375rem;
}

.contact-copy>p {
  font-size:0.875rem;
  color:#a8abb1;
  line-height:1.8;
  margin-top:1.5625rem;
  max-width:22.8125rem;
}

.contact-expectations {
  margin-top:2.6875rem;
}

.contact-expectations h3 {
  font-size:0.9375rem;
  font-weight:500;
}

.contact-expectations ol {
  padding:0;
  margin:1.25rem 0;
  list-style:none;
  counter-reset:contact;
}

.contact-expectations li {
  counter-increment:contact;
  display:flex;
  gap:0.875rem;
  align-items:flex-start;
  font-size:0.8125rem;
  color:#a9adb4;
  margin-top:0.8125rem;
  max-width:21.875rem;
}

.contact-expectations li:before {
  content:counter(contact);
  font-size:0.5625rem;
  border:0.0625rem solid #5c5047;
  display:grid;
  place-items:center;
  min-width:1.3125rem;
  height:1.3125rem;
  border-radius:50%;
  color:#ccad97;
}

.contact-email {
  display:inline-flex;
  gap:1.875rem;
  color:#e7c3aa;
  font-size:0.875rem;
  border-bottom:0.0625rem solid #705239;
  padding:0.8125rem 0;
  margin-top:1.25rem;
}

.contact-email:hover {
  color:#dfa07d;
}

.brief-form {
  padding:1.875rem;
  background:#202226;
  border:0.0625rem solid #414349;
  border-radius:0.4375rem;
  box-shadow:0 0.9375rem 2.1875rem #0001;
}

.form-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:0.625rem;
  margin-bottom:1.5625rem;
}

.form-heading h3 {
  font-size:1.1875rem;
  letter-spacing:-0.03125rem;
}

.form-heading>span {
  color:#858c96;
  font-size:0.4375rem;
  letter-spacing:0.0875rem;
}

.field-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0.875rem;
}

.brief-form label {
  display:block;
  font-size:0.75rem;
  color:#d5d8dd;
  margin-bottom:1rem;
}

.brief-form label>span:first-child {
  font-weight:550;
}

.brief-form input,.brief-form select,.brief-form textarea {
  display:block;
  width:100%;
  min-height:2.75rem;
  margin-top:0.4375rem;
  padding:0.6875rem 0.75rem;
  border:0.0625rem solid #43464e;
  border-radius:0.25rem;
  background:#181a1e;
  color:#e3e5e9;
  font-size:0.875rem;
  line-height:1.5;
  transition:border-color .2s;
}

.brief-form textarea {
  min-height:5.9375rem;
  resize:vertical;
}

.brief-form input::placeholder,.brief-form textarea::placeholder {
  color:#828995;
}

.brief-form input:hover,.brief-form select:hover,.brief-form textarea:hover {
  border-color:#6e737d;
}

.optional {
  color:#8d939e;
  margin-left:0.4375rem;
  font-size:0.5625rem;
}

.privacy-note {
  font-size:0.6875rem;
  color:#a0a6af;
  margin-top:0;
  line-height:1.8;
}

.inline-button {
  padding:0;
  color:#c4c9d1;
  background:none;
  border:0;
  font-size:inherit;
  text-decoration:underline;
  text-underline-offset:0.1875rem;
}

.form-submit {
  width:100%;
  justify-content:space-between;
  margin-top:1.25rem;
  font-size:0.75rem;
}

.form-note {
  text-align:center;
  font-size:0.6875rem;
  color:#a1a6af;
  line-height:1.7;
  margin-top:0.8125rem;
}

.site-footer {
  padding:2.6875rem 0 1.3125rem;
  background:#101113;
}

.footer-main {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
  padding-bottom:2.25rem;
}

.footer-brand .brand-type {
  width:12.1875rem;
}

.footer-main>p {
  font-size:0.6875rem;
  letter-spacing:0.06875rem;
  color:#9298a0;
}

.back-top {
  font-size:0.625rem;
  color:#c2c7cc;
  display:flex;
  gap:1.25rem;
  align-items:center;
}

.back-top>span:last-child {
  font-size:1.25rem;
}

.footer-bottom {
  border-top:0.0625rem solid #2a2e33;
  padding-top:1.1875rem;
  display:flex;
  justify-content:space-between;
  gap:1.25rem;
  font-size:0.5rem;
  color:#898f98;
}

.footer-bottom>div {
  display:flex;
  gap:1.4375rem;
}

.footer-bottom button {
  border:0;
  background:none;
  color:inherit;
  padding:0;
  font-size:inherit;
}

.footer-bottom button:hover,.footer-bottom a:hover {
  color:#e6e8eb;
}

dialog {
  background:#1c1f23;
  color:var(--text);
  border:0.0625rem solid #4e535c;
  border-radius:0.625rem;
  padding:2rem;
  width:calc(100% - 2rem);
  max-width:41.25rem;
  max-height:85dvh;
  box-shadow:0 1.875rem 6.25rem #0008;
}

dialog::backdrop {
  background:#050709bd;
  backdrop-filter:blur(0.4375rem);
}

.dialog-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}

.dialog-close {
  display:grid;
  place-items:center;
  flex-shrink:0;
  width:2.625rem;
  height:2.625rem;
  border:0.0625rem solid #444a54;
  background:#252a31;
  border-radius:50%;
  font-size:1.5625rem;
  font-weight:300;
}

.brief-dialog h2 {
  font-size:2.125rem;
  margin-top:0.9375rem;
  letter-spacing:-0.075rem;
}

.brief-dialog>p {
  font-size:0.75rem;
  color:#acb4c0;
  line-height:1.8;
  margin-top:1.125rem;
}

#brief-preview {
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  background:#11151a;
  border:0.0625rem solid #373f4b;
  padding:1.25rem;
  font-size:0.75rem;
  line-height:1.8;
  font-family:inherit;
  border-radius:0.3125rem;
  max-height:33dvh;
  overflow-y:auto;
  color:#d7dce4;
}

.dialog-actions {
  display:flex;
  gap:0.875rem;
  margin-top:1.25rem;
  flex-wrap:wrap;
}

.dialog-actions .button {
  font-size:0.75rem;
}

.copy-status {
  font-size:0.75rem;
  color:#9dd5b1!important;
}

.copy-status:empty {
  display:none;
}

.policy-dialog {
  max-width:48.75rem;
}

.policy-dialog h2 {
  font-size:1.875rem;
  letter-spacing:-0.0625rem;
}

.policy-language {
  font-size:0.6875rem;
  color:#a5abb4;
  margin:0.625rem 0 1.25rem;
}

.policy-dialog .avs-legal-section {
  margin:1.5rem 0;
  font-size:0.8125rem;
  color:#b4bac3;
}

.policy-dialog .avs-legal-section h2 {
  font-size:1.375rem;
  letter-spacing:-0.025rem;
  margin-bottom:0.9375rem;
  color:#eef0f3;
}

.policy-dialog .avs-legal-section h3 {
  font-size:0.9375rem;
  color:#d7dde5;
  margin:1.25rem 0 0.625rem;
}

.policy-dialog p {
  margin-top:0.75rem;
}

.policy-dialog a {
  text-decoration:underline;
}

.noscript-message {
  padding:1.5625rem;
  text-align:center;
  background:#33261c;
}

.noscript-message a {
  text-decoration:underline;
}

@keyframes emblem-enter {
  from {
    opacity:0;
    transform:translate(0.75rem,0.125rem);
  }
  to {
    opacity:1;
    transform:translate(0,-0.8125rem);
  }
}

@media(min-width:2272px) {
  .shell {
    max-width:86.25rem;
  }
  .hero-content {
    min-height:43.75rem;
  }
  h1 {
    font-size:6.1875rem;
  }
  .hero-art {
    height:29.375rem;
  }
  .hero-description {
    font-size:1.125rem;
    max-width:32.5rem;
  }
  .hero-actions .text-link {
    font-size:0.875rem;
  }
}

@media(max-width:1690px) {
  .shell {
    width:calc(100% - 4.5rem);
  }
  .desktop-nav {
    gap:1.125rem;
  }
  .brand-type {
    width:10.25rem;
  }
  .brand-mark {
    width:3.0625rem;
  }
  .brand-type>span {
    font-size:0.5rem;
    letter-spacing:0.15625rem;
  }
  .header-inner {
    gap:1.125rem;
  }
  .header-actions {
    gap:0.4375rem;
  }
  .hero-content {
    gap:0.9375rem;
    min-height:38.4375rem;
  }
  h1 {
    font-size:clamp(3.5rem,6.5vw,4.8125rem);
    letter-spacing:-0.25rem;
  }
  .hero-actions {
    gap:1.1875rem;
  }
  .hero-actions .text-link {
    font-size:0.6875rem;
  }
  .hero-actions .button {
    font-size:0.75rem;
    gap:1.25rem;
    padding-inline:1.125rem;
  }
  .hero-art {
    height:25.625rem;
  }
  .art-caption {
    font-size:0.5rem;
    gap:0.75rem;
    letter-spacing:0.1875rem;
    bottom:5.375rem;
  }
  .value-strip>div+div {
    padding-left:1.6875rem;
  }
  .value-strip>div {
    gap:0.8125rem;
  }
  .value-strip strong {
    font-size:0.875rem;
  }
  .value-strip small {
    font-size:0.75rem;
  }
  .solution-finder {
    gap:1.25rem;
    grid-template-columns:.85fr 1.2fr;
  }
  .solution-tab {
    padding:1.4375rem 1.0625rem;
    gap:0.875rem;
  }
  .solution-tab strong {
    font-size:0.8125rem;
  }
  .solution-panel {
    padding:1.6875rem;
  }
  .workflow-preview {
    padding-inline:0.75rem;
  }
  .workflow-nodes b {
    font-size:0.5625rem;
    max-width:4.6875rem;
  }
  .workflow-nodes>span {
    gap:0.3125rem;
  }
  .workflow-nodes i {
    width:1.5rem;
    height:1.5rem;
  }
  .deliverables {
    gap:0.5rem 0.75rem;
  }
  .industry-line p {
    gap:0.875rem;
    font-size:0.6875rem;
  }
  .process-grid {
    gap:1.375rem;
  }
  .process-grid h3 {
    font-size:1.0625rem;
  }
  .featured-copy {
    padding:1.875rem;
  }
  .product-grid {
    gap:0.875rem;
  }
  .product-card {
    padding:1.25rem;
  }
  .product-card h3 {
    font-size:1.1875rem;
  }
  .about-grid {
    gap:3.75rem;
  }
  .faq-grid {
    gap:3.75rem;
  }
  .contact-grid {
    gap:3.125rem;
  }
  .brief-form {
    padding:1.5625rem;
  }
}

@media(max-width:1420px) {
  .desktop-nav {
    display:none;
  }
  .header-actions {
    margin-left:auto;
  }
  .menu-toggle {
    display:block;
  }
  .header-cta {
    margin-inline:0.625rem;
  }
  .hero-content {
    min-height:35rem;
  }
  .hero-copy .eyebrow {
    font-size:0.5rem;
  }
  .hero-description {
    font-size:0.875rem;
    max-width:23.75rem;
  }
  h1 {
    font-size:clamp(3rem,6.8vw,4.0625rem);
    letter-spacing:-0.1875rem;
  }
  .hero-actions {
    flex-wrap:wrap;
    gap:1rem;
  }
  .hero-note {
    font-size:0.6875rem;
  }
  .hero-art {
    height:23.75rem;
  }
  .art-coordinate {
    font-size:0.375rem;
    letter-spacing:0.1rem;
    left:0;
  }
  .orbit {
    width:15.625rem;
    height:15.625rem;
  }
  .orbit-two {
    width:21.875rem;
    height:8.75rem;
  }
  .art-caption {
    font-size:0.375rem;
    letter-spacing:0.125rem;
    bottom:6.25rem;
    gap:0.625rem;
  }
  .art-base {
    font-size:0.3125rem;
    letter-spacing:0.0625rem;
    left:0;
    bottom:2.1875rem;
  }
  .section {
    padding-block:5.3125rem;
  }
  .section-heading {
    gap:2.1875rem;
  }
  .section-heading>p {
    max-width:18.75rem;
    font-size:0.75rem;
  }
  .section-heading h2 {
    font-size:2.5625rem;
  }
  .solution-finder {
    grid-template-columns:.95fr 1.2fr;
    gap:1.125rem;
  }
  .solution-tab {
    padding:1.4375rem 0.875rem;
    gap:0.625rem;
  }
  .tab-icon {
    width:1.875rem;
    height:2rem;
    font-size:1.3125rem;
  }
  .code-icon {
    font-size:0.6875rem;
  }
  .solution-tab strong {
    font-size:0.75rem;
  }
  .solution-tab small {
    font-size:0.625rem;
  }
  .solution-panel {
    padding:1.4375rem;
  }
  .solution-panel h3 {
    font-size:1.5rem;
  }
  .solution-panel>p {
    font-size:0.875rem;
  }
  .solution-panel-top .mini-label {
    font-size:0.4375rem;
  }
  .workflow-heading {
    font-size:0.5rem;
  }
  .example-label {
    font-size:0.3125rem;
  }
  .workflow-nodes {
    gap:0.3125rem;
  }
  .workflow-nodes>span {
    flex-direction:column;
    text-align:center;
    gap:0.5rem;
    flex:1;
  }
  .workflow-nodes b {
    min-height:1.75rem;
  }
  .deliverables {
    flex-direction:column;
    gap:0.375rem;
  }
  .industry-line {
    align-items:flex-start;
    flex-direction:column;
    gap:0.75rem;
  }
  .process-grid {
    grid-template-columns:1fr 1fr;
    gap:2.1875rem;
  }
  .process-grid li>p {
    min-height:4.0625rem;
    max-width:18.75rem;
  }
  .featured-product {
    grid-template-columns:1fr 1fr;
  }
  .featured-copy h3 {
    font-size:2.1875rem;
  }
  .featured-visual>img {
    min-height:14.0625rem;
    object-fit:cover;
    object-position:left;
  }
  .product-window-bar {
    font-size:0.375rem;
  }
  .product-grid {
    grid-template-columns:1fr 1fr;
  }
  .product-card {
    padding:1.5625rem;
  }
  .product-card>p {
    max-width:18.75rem;
  }
  .about-grid {
    gap:2.1875rem;
  }
  .about-intro h2 {
    font-size:1.9375rem;
  }
  .founder-quote {
    padding-left:1.5625rem;
  }
  .founder-quote blockquote {
    font-size:1rem;
  }
  .faq-grid {
    gap:2.5rem;
    grid-template-columns:.9fr 1.2fr;
  }
  .faq-grid h2 {
    font-size:2.375rem;
  }
  .contact-grid {
    gap:2.1875rem;
    grid-template-columns:.9fr 1.2fr;
  }
  .contact-copy h2 {
    font-size:3.625rem;
  }
  .field-row {
    grid-template-columns:1fr;
    gap:0;
  }
  .brief-form {
    padding:1.5rem;
  }
  .form-heading>span {
    display:none;
  }
}

@media(max-width:700px) {
  :root {
    --header:4.625rem;
  }
  .shell {
    width:calc(100% - 2.5rem);
  }
  .header-inner {
    gap:0.75rem;
  }
  .brand-mark {
    display:none;
  }
  .brand-type {
    width:10.25rem;
  }
  .brand-type>span {
    font-size:0.5rem;
    letter-spacing:0.15rem;
  }
  .header-actions {
    gap:0.375rem;
  }
  .header-cta {
    display:none;
  }
  .account-link {
    width:1.875rem;
  }
  .menu-toggle {
    width:2.5rem;
    height:2.5rem;
    padding:0.625rem;
  }
  .language-control select {
    font-size:0.625rem;
    width:2.75rem;
  }
  .hero-content {
    grid-template-columns:1fr;
    padding-top:3.0625rem;
    padding-bottom:1.4375rem;
    gap:0;
    min-height:auto;
  }
  .hero-copy .eyebrow {
    font-size:0.5625rem;
    letter-spacing:0.10625rem;
    margin-bottom:1.375rem;
  }
  h1 {
    font-size:clamp(3.0625rem,10.6vw,4.5rem);
    letter-spacing:-0.18125rem;
    line-height:1.05;
  }
  .hero-description {
    font-size:0.875rem;
    line-height:1.8;
    max-width:28.75rem;
    margin-top:1.4375rem;
  }
  .hero-actions {
    margin-top:1.5625rem;
    gap:1.375rem;
  }
  .hero-actions .button {
    min-height:3.0625rem;
    font-size:0.75rem;
    padding-inline:1.125rem;
  }
  .hero-actions .text-link {
    font-size:0.6875rem;
    gap:0.625rem;
  }
  .hero-note {
    margin-top:1.125rem;
    font-size:0.6875rem;
  }
  .hero-art {
    height:17.5rem;
    width:100%;
    max-width:31.25rem;
    margin:0.625rem auto 0;
  }
  .hero-emblem {
    width:94%;
    max-width:29.375rem;
    transform:translate(0,-0.8125rem);
  }
  .orbit {
    width:12.5rem;
    height:12.5rem;
  }
  .orbit-one:before {
    inset:-1.375rem;
  }
  .orbit-one:after {
    inset:-2.8125rem;
  }
  .orbit-two {
    width:18.75rem;
    height:7.8125rem;
  }
  .art-coordinate {
    top:0.9375rem;
    left:0.3125rem;
    font-size:0.375rem;
  }
  .cross-one {
    top:2.5rem;
    left:0.3125rem;
  }
  .cross-two {
    bottom:3.75rem;
    right:0.3125rem;
  }
  .art-caption {
    bottom:1.875rem;
    font-size:0.5rem;
    letter-spacing:0.16875rem;
    gap:0.75rem;
  }
  .art-base {
    display:none;
  }
  .orange-trace {
    width:30rem;
  }
  .hero-art:before {
    inset:-2.5rem -2.5rem -1.25rem 0;
  }
  .value-strip {
    padding:1.4375rem 0;
    gap:1.25rem;
    grid-template-columns:1fr;
  }
  .value-strip>div {
    align-items:center;
    gap:0.875rem;
  }
  .value-strip>div+div {
    padding-left:0;
    border-left:0;
  }
  .value-strip strong {
    font-size:0.875rem;
  }
  .value-strip small {
    font-size:0.75rem;
  }
  .value-number {
    font-size:0.625rem;
    padding:0;
  }
  .section {
    padding:4.25rem 0;
  }
  .section-heading {
    display:block;
    margin-bottom:1.75rem;
  }
  .section-heading .eyebrow {
    margin-bottom:0.9375rem;
    font-size:0.5rem;
    letter-spacing:0.1rem;
  }
  .section-heading h2 {
    font-size:2.375rem;
    letter-spacing:-0.11875rem;
  }
  .section-heading>p {
    max-width:30rem;
    font-size:0.8125rem;
    margin-top:1.25rem;
    padding-bottom:0;
    line-height:1.8;
  }
  .solution-finder {
    grid-template-columns:1fr;
    gap:1.25rem;
  }
  .solution-tabs {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0.5625rem;
  }
  .solution-tab {
    min-height:6.4375rem;
    padding:0.9375rem 0.75rem;
    display:grid;
    grid-template-columns:1.625rem 1fr;
    gap:0.5625rem;
  }
  .solution-tab[aria-selected=true] {
    box-shadow:inset 0 -0.125rem var(--orange);
  }
  .solution-tab strong {
    font-size:0.6875rem;
    line-height:1.5;
  }
  .solution-tab small {
    font-size:0.5625rem;
    line-height:1.5;
    margin-top:0.3125rem;
  }
  .tab-icon {
    width:1.625rem;
    height:1.8125rem;
    font-size:1.1875rem;
  }
  .code-icon {
    font-size:0.625rem;
  }
  .tab-arrow {
    display:none;
  }
  .solution-panel {
    padding:1.5rem 1.3125rem;
  }
  .solution-panel-top .mini-label {
    font-size:0.4375rem;
  }
  .solution-panel-top {
    margin-bottom:1rem;
  }
  .solution-panel h3 {
    font-size:1.5625rem;
    letter-spacing:-0.04375rem;
  }
  .solution-panel>p {
    font-size:0.875rem;
    min-height:0;
  }
  .workflow-preview {
    padding:0.8125rem 0.75rem 1.125rem;
    margin-block:1.375rem;
  }
  .workflow-heading {
    font-size:0.5rem;
  }
  .example-label {
    font-size:0.3125rem;
    letter-spacing:0.04375rem;
  }
  .workflow-nodes>span {
    flex-direction:column;
  }
  .workflow-nodes b {
    font-size:0.5625rem;
  }
  .workflow-nodes i {
    width:1.75rem;
    height:1.75rem;
  }
  .workflow-nodes {
    margin-top:1.0625rem;
  }
  .deliverables {
    flex-direction:row;
    gap:0.5rem 1rem;
  }
  .deliverables li {
    font-size:0.75rem;
  }
  .solution-panel .text-link {
    font-size:0.8125rem;
  }
  .industry-line {
    margin-top:1.875rem;
    gap:0.9375rem;
  }
  .industry-line p {
    flex-wrap:wrap;
    gap:0.5625rem 0.8125rem;
    font-size:0.6875rem;
  }
  .industry-line>span {
    font-size:0.4375rem;
  }
  .process-grid {
    margin-top:2.0625rem;
    gap:1.8125rem 1.375rem;
  }
  .process-step {
    padding-top:1rem;
    margin-bottom:1.375rem;
  }
  .process-step span {
    font-size:1.9375rem;
  }
  .process-step i {
    font-size:1.25rem;
  }
  .process-grid h3 {
    font-size:1.0625rem;
    line-height:1.3;
  }
  .process-grid li>p {
    font-size:0.8125rem;
    min-height:9.375rem;
  }
  .process-output {
    margin-top:1rem;
    padding-top:0.875rem;
  }
  .process-output strong {
    font-size:0.75rem;
  }
  .process-output small {
    font-size:0.4375rem;
  }
  .approach-note {
    margin-top:1.75rem;
    font-size:0.625rem;
    align-items:flex-start;
  }
  .featured-product {
    grid-template-columns:1fr;
  }
  .featured-copy {
    padding:1.75rem;
  }
  .featured-copy h3 {
    font-size:2.5625rem;
    margin-top:1.4375rem;
  }
  .featured-copy .product-tagline {
    font-size:0.875rem;
  }
  .featured-copy>p:not(.product-tagline) {
    font-size:0.875rem;
    max-width:28.125rem;
  }
  .featured-visual {
    padding:1.5625rem 1.375rem 1.125rem;
    overflow:hidden;
  }
  .product-window-bar {
    margin-left:0;
    border-radius:0.3125rem 0.3125rem 0 0;
    font-size:0.375rem;
  }
  .featured-visual>img {
    margin:0;
    width:100%;
    min-height:0;
    aspect-ratio:1942/809;
    object-fit:contain;
    border-right:0.0625rem solid #394452;
  }
  .featured-visual>p {
    font-size:0.625rem;
    margin-top:0.8125rem;
  }
  .product-grid {
    gap:0.75rem;
    margin-top:0.9375rem;
  }
  .product-card {
    padding:1.3125rem 1.0625rem;
  }
  .product-card-top {
    margin-bottom:1.375rem;
  }
  .product-card .mini-label {
    font-size:0.375rem;
    letter-spacing:0.0625rem;
  }
  .product-card h3 {
    font-size:1.125rem;
    line-height:1.2;
  }
  .product-card>p {
    font-size:0.8125rem;
    line-height:1.8;
    margin-top:0.8125rem;
  }
  .product-card-link {
    font-size:0.75rem;
  }
  .about-section {
    padding:3.5625rem 0;
  }
  .about-grid {
    grid-template-columns:1fr;
    gap:2.125rem;
  }
  .about-intro .eyebrow {
    font-size:0.5rem;
  }
  .about-intro h2 {
    font-size:2.1875rem;
  }
  .about-intro>p:last-child {
    font-size:0.875rem;
  }
  .founder-quote {
    padding-left:1.375rem;
  }
  .founder-quote blockquote {
    font-size:1.0625rem;
    line-height:1.75;
  }
  .faq-grid {
    grid-template-columns:1fr;
    gap:1.75rem;
  }
  .faq-grid h2 {
    font-size:2.375rem;
    letter-spacing:-0.1125rem;
  }
  .faq-grid .eyebrow {
    font-size:0.5rem;
  }
  .faq-grid>div>p:last-child {
    font-size:0.75rem;
  }
  .faq-list summary {
    font-size:0.875rem;
    padding:1.25rem 0;
    align-items:center;
  }
  .faq-list details p {
    font-size:0.875rem;
    padding-right:0.9375rem;
  }
  .contact-grid {
    grid-template-columns:1fr;
    gap:2.3125rem;
  }
  .contact-copy .eyebrow {
    font-size:0.5rem;
  }
  .contact-copy h2 {
    font-size:3.875rem;
    letter-spacing:-0.1875rem;
  }
  .contact-copy>p {
    font-size:0.875rem;
    max-width:25rem;
  }
  .contact-expectations {
    margin-top:1.75rem;
  }
  .contact-expectations li {
    font-size:0.8125rem;
  }
  .contact-email {
    margin-top:0.25rem;
  }
  .brief-form {
    padding:1.5rem 1.3125rem;
  }
  .field-row {
    grid-template-columns:1fr 1fr;
    gap:0.75rem;
  }
  .form-heading h3 {
    font-size:1.25rem;
  }
  .brief-form input,.brief-form select,.brief-form textarea {
    font-size:1rem;
    min-height:2.875rem;
    padding:0.625rem;
  }
  .brief-form input::placeholder,.brief-form textarea::placeholder {
    font-size:0.75rem;
  }
  .brief-form select {
    font-size:0.75rem;
  }
  .brief-form label {
    font-size:0.75rem;
    margin-bottom:1.0625rem;
  }
  .privacy-note {
    font-size:0.6875rem;
  }
  .form-note {
    font-size:0.6875rem;
  }
  .footer-main {
    flex-wrap:wrap;
    gap:1.625rem;
    padding-bottom:1.75rem;
  }
  .footer-main>p {
    order:3;
    flex-basis:100%;
    font-size:0.625rem;
  }
  .footer-brand .brand-type {
    width:10.5rem;
  }
  .footer-bottom {
    flex-direction:column;
    gap:0.9375rem;
    font-size:0.5rem;
  }
  .footer-bottom>div {
    gap:1.5rem;
  }
  .footer-bottom button,.footer-bottom a {
    min-height:2.1875rem;
    display:inline-flex;
    align-items:center;
  }
  .site-footer {
    padding-top:1.9375rem;
  }
  .back-top {
    font-size:0.5625rem;
    gap:0.75rem;
  }
  dialog {
    padding:1.4375rem;
  }
  .brief-dialog h2 {
    font-size:1.8125rem;
  }
  #brief-preview {
    font-size:0.6875rem;
    padding:0.9375rem;
  }
  .dialog-actions {
    gap:0.625rem;
  }
  .dialog-actions .button {
    font-size:0.6875rem;
    min-height:3rem;
    padding:0.75rem 1rem;
  }
  .dialog-top .eyebrow {
    font-size:0.5rem;
  }
  .policy-dialog h2 {
    font-size:1.5rem;
  }
}

@media(max-width:365px) {
  .shell {
    width:calc(100% - 2rem);
  }
  .brand-type {
    width:8.9375rem;
  }
  .brand-type>span {
    font-size:0.4375rem;
    letter-spacing:0.13125rem;
  }
  .header-actions {
    gap:0.125rem;
  }
  .account-link {
    width:1.6875rem;
  }
  h1 {
    font-size:2.75rem;
    letter-spacing:-0.16875rem;
  }
  .hero-actions {
    gap:1.1875rem;
  }
  .hero-actions .button {
    padding-inline:0.875rem;
    font-size:0.6875rem;
  }
  .hero-actions .text-link {
    font-size:0.625rem;
  }
  .hero-note {
    font-size:0.6875rem;
  }
  .solution-tabs {
    grid-template-columns:1fr;
  }
  .solution-tab {
    display:flex;
    min-height:4.6875rem;
    padding:0.9375rem;
  }
  .solution-tab strong {
    font-size:0.75rem;
  }
  .solution-tab small {
    font-size:0.625rem;
  }
  .tab-arrow {
    display:block;
  }
  .process-grid {
    gap:1.5rem 1.125rem;
  }
  .process-grid h3 {
    font-size:0.9375rem;
  }
  .process-grid li>p {
    min-height:10.3125rem;
  }
  .product-card {
    padding-inline:0.8125rem;
  }
  .product-card h3 {
    font-size:1rem;
  }
  .field-row {
    grid-template-columns:1fr;
    gap:0;
  }
  .art-caption {
    font-size:0.4375rem;
    gap:0.625rem;
  }
  .featured-copy {
    padding:1.5rem;
  }
  .product-eyebrow {
    gap:0.625rem;
    letter-spacing:0.0625rem;
  }
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important;
  }
  .hero-emblem {
    transform:translate(0,-0.8125rem);
  }
}

/* Preserve supplied artwork proportions at every responsive size. */
img {
  height:auto;
}

html[lang=es] h1,html[lang=fr] h1 {
  font-size:clamp(3.25rem,5.3vw,4.75rem);
  letter-spacing:-0.225rem;
}

html[lang=es] .hero-actions,html[lang=fr] .hero-actions {
  flex-wrap:wrap;
}

html[lang=es] .section-heading,html[lang=fr] .section-heading {
  align-items:flex-start;
}

@media(max-width:1420px) {
  html[lang=es] h1,html[lang=fr] h1 {
    font-size:clamp(2.375rem,5.7vw,3.5625rem);
    letter-spacing:-0.15625rem;
  }
}

@media(max-width:700px) {
  html[lang=es] h1,html[lang=fr] h1 {
    font-size:clamp(2.3125rem,9vw,4rem);
    letter-spacing:-0.125rem;
  }
  .brief-form select {
    font-size:1rem;
  }
  .featured-visual>img {
    height:auto;
  }
}

@media(max-width:365px) {
  html[lang=es] h1,html[lang=fr] h1 {
    font-size:2.125rem;
  }
}

/* Keep the original brand artwork, with a gentler orange treatment. */
.brand-type img, .brand-mark {
  filter:saturate(.72);
}

h1 .orange, .contact-copy h2 .orange {
  color:var(--orange-display);
}

/* Each chapter occupies the screen below the persistent header. Content can
   expand naturally when a smaller viewport or a translation needs more room. */
main > section {
  min-height:calc(100svh - var(--header));
}
.section, .about-section {
  display:grid;
  align-items:center;
}
.hero {
  display:flex;
  flex-direction:column;
}
.hero-content {
  flex:1;
  min-height:0;
}
.value-strip {
  flex-shrink:0;
}

@media (min-width:1421px) {
  .section, .about-section {
    padding-block:clamp(1.75rem, 4svh, 4rem);
  }
  .hero-content {
    padding-block:clamp(1.5rem, 4svh, 4.5rem);
  }
  .section-heading {
    margin-bottom:clamp(1rem, 2.5svh, 2rem);
  }
  .solution-tab {
    min-height:0;
    padding-block:1.1rem;
  }
  .industry-line {
    margin-top:1rem;
    padding-top:1rem;
  }
  .software-section > .shell {
    display:grid;
    grid-template-columns:1.15fr 1fr;
    gap:1.25rem;
  }
  .software-section .section-heading {
    grid-column:1 / -1;
    margin-bottom:.5rem;
  }
  .featured-product {
    grid-template-columns:1fr;
  }
  .featured-copy {
    padding:1.5rem 1.75rem;
  }
  .featured-copy h3 {
    margin-top:1rem;
  }
  .featured-copy > p:not(.product-tagline) {
    max-width:none;
  }
  .featured-copy .button {
    margin-top:1rem;
  }
  .featured-visual {
    padding:1rem 1.25rem;
  }
  .product-window-bar {
    margin-left:0;
    border-radius:.3125rem .3125rem 0 0;
  }
  .featured-visual > img {
    width:100%;
    margin-left:0;
    border-right:1px solid #394452;
  }
  .product-grid {
    grid-template-columns:1fr 1fr;
    margin-top:0;
  }
  .product-card {
    padding:1.25rem;
  }
  .product-card-top {
    margin-bottom:1rem;
  }
}
@media (min-width:1421px) {
  .software-section {
    padding-block:1rem;
  }
  .software-section .section-heading {
    display:block;
  }
  .software-section h2 br {
    display:none;
  }
  .software-section h2 .muted:before {
    content:" ";
  }
  .software-section .section-heading > p {
    max-width:none;
    margin-top:.65rem;
    line-height:1.6;
  }
  .featured-copy {
    padding:1rem 1.5rem;
  }
  .featured-copy h3,
  .featured-copy .product-tagline,
  .featured-copy > p:not(.product-tagline),
  .featured-copy .product-tags,
  .featured-copy .button {
    margin-top:.5rem;
  }
  .featured-visual {
    padding:.5rem 1rem;
  }
  .product-window-bar {
    padding:.4rem .75rem;
  }
  .featured-visual > img {
    height:clamp(8rem, 18svh, 12rem);
    object-fit:contain;
    background:#080e16;
  }
  .featured-visual > p {
    margin-top:.5rem;
  }
}
/* Give the brand lockup more presence in the enlarged desktop header. */
@media (min-width:1001px) and (max-width:1690px) {
  .site-header .brand-type {
    width:12rem;
  }
  .site-header .brand-type > span {
    font-size:.625rem;
    letter-spacing:.17rem;
  }
  .site-header .brand-mark {
    width:3.5rem;
    height:3rem;
  }
}
@media (min-width:1691px) {
  .site-header .brand-type {
    width:14rem;
  }
  .site-header .brand-type > span {
    font-size:.6875rem;
    letter-spacing:.19rem;
  }
  .site-header .brand-mark {
    width:4.75rem;
    height:3.25rem;
  }
}
/* Shorter desktop displays keep the enlarged type, with tighter internal space. */
@media (min-width:1691px) and (max-height:1199px) {
  .solution-panel {
    padding:1.25rem;
  }
  .solution-panel > p {
    min-height:0;
  }
  .solution-panel-top {
    margin-bottom:.75rem;
  }
  .workflow-preview {
    margin-block:1rem;
  }
  .deliverables {
    margin-bottom:1rem;
  }
  .brief-form {
    padding-block:1rem;
  }
  .product-card {
    padding:1rem;
  }
  .product-card-top {
    height:2rem;
    margin-bottom:.5rem;
  }
  .product-card h3 {
    margin-top:.35rem;
  }
  .product-card > p {
    margin-block:.5rem;
  }
  .product-card-link {
    padding-top:.5rem;
  }
}
@media (min-width:1691px) and (max-height:1199px) {
  .software-section {
    padding-block:.625rem;
  }
}
