:root {
  color-scheme: dark;
  --dev-ink: #060b10;
  --dev-text: #f5f5f1;
  --dev-muted: #a9b0b7;
  --dev-gold: #cba660;
  --dev-line: #ffffff26;
  --dev-paper: #f1f2ef;
  --dev-paper-ink: #10161a;
  --dev-green: #466457;
  --dev-sans: "Instrument Sans", Arial, sans-serif;
  --dev-mono: "IBM Plex Mono", monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 28px; }
body { margin: 0; background: var(--dev-ink); color: var(--dev-text); font-family: var(--dev-sans); letter-spacing: 0; -webkit-font-smoothing: antialiased; }
body, button, a { letter-spacing: 0; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
a:focus-visible, button:focus-visible, [tabindex="0"]:focus-visible { outline: 2px solid var(--dev-gold); outline-offset: 5px; }
.gp-header { min-height: 104px; position: absolute; z-index: 10; top: 0; left: 0; width: 100%; display: flex; align-items: center; justify-content: space-between; padding: 25px 5.2%; }
.gp-brand { flex: 0 0 auto; color: var(--dev-text); font-size: 21px; font-weight: 600; line-height: 1; }
.gp-brand span { display: block; margin-top: 8px; color: var(--dev-gold); font: 9px/1 var(--dev-mono); }
.gp-header nav { display: flex; align-items: center; gap: 30px; font: 10px/1.3 var(--dev-mono); text-transform: uppercase; }
.gp-header nav a { transition: color .2s ease; }
.gp-header nav a:hover, .gp-footer a:hover { color: var(--dev-gold); }
.gp-header nav .gp-nav-contact { border: 1px solid #ffffff55; border-radius: 30px; padding: 13px 18px; }
.gp-nav-contact .gp-arrow-icon { margin-left: 12px; color: var(--dev-gold); }
.gp-arrow-icon, .gp-down-icon { width: 13px; height: 13px; flex: 0 0 auto; vertical-align: -2px; fill: none; stroke: currentColor; stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round; }
.gp-down-icon { width: 14px; height: 14px; }
.gp-hero { min-height: 745px; padding: 173px 7.2% 46px; position: relative; display: flex; align-items: center; border-bottom: 1px solid var(--dev-line); overflow: hidden; }
.gp-hero-inner { width: min(100%, 1130px); position: relative; z-index: 1; margin: 0 auto; }
.gp-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 24px; color: var(--dev-muted); font-size: 13px; line-height: 1.5; }
.gp-breadcrumb a { display: inline-flex; align-items: center; min-height: 44px; color: var(--dev-text); text-decoration: underline; text-underline-offset: 4px; }
.gp-eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 28px; color: var(--dev-muted); font: 10px/1.5 var(--dev-mono); text-transform: uppercase; }
.eyebrow-mark { width: 5px; height: 5px; flex: 0 0 auto; background: var(--dev-gold); }
.gp-hero h1 { margin: 0; max-width: 1040px; font-size: 104px; line-height: .98; font-weight: 500; }
.gp-hero h1 span { color: var(--dev-gold); }
.gp-hero-question { display: inline-block; font-size: 68px; transition: opacity .12s linear, transform .12s linear; }
.gp-hero-bottom { max-width: 1060px; margin-top: 44px; display: flex; align-items: end; justify-content: space-between; gap: 36px; }
.gp-hero-lede { max-width: 550px; margin: 0; color: #c3c8ca; font-size: 19px; line-height: 1.55; }
.gp-scroll-link { color: var(--dev-muted); font: 9px/1.6 var(--dev-mono); text-transform: uppercase; }
.gp-scroll-link .gp-down-icon { margin-left: 14px; color: var(--dev-gold); }
.gp-hero-index { position: absolute; right: 5.2%; bottom: 27px; color: #7d858b; font: 8px/1.4 var(--dev-mono); text-transform: uppercase; }
.gp-section { padding: 112px 7.2%; }
.gp-section-inner { width: min(100%, 1120px); margin: 0 auto; }
.gp-paper { color: var(--dev-paper-ink); background: var(--dev-paper); }
.gp-section-heading { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 24px 48px; margin-bottom: 54px; }
.gp-section-heading .gp-eyebrow { grid-column: 1/-1; margin-bottom: -2px; color: #5f696d; }
.gp-section-heading h2, .gp-closing h2 { margin: 0; font-size: 64px; line-height: 1.02; font-weight: 500; }
.gp-section-heading h2 span { color: #687179; }
.gp-saas-copy { max-width: 680px; margin-left: auto; font-size: 17px; line-height: 1.7; color: #3d484c; }
.gp-saas-copy p { margin: 0 0 20px; }
.gp-intro { margin: 0; font-size: 20px; line-height: 1.55; }
.gp-saas-copy .gp-intro { margin-bottom: 24px; color: #172126; font-size: 22px; }
.gp-model { margin-top: 70px; padding: 24px 28px 19px; border-top: 1px solid #10161a37; border-bottom: 1px solid #10161a37; }
.gp-model-label, .network-caption, .decision-topline, .decision-foot, .demo-toolbar, .demo-preview-heading { display: flex; justify-content: space-between; gap: 20px; font: 9px/1.5 var(--dev-mono); text-transform: uppercase; }
.gp-model-label { color: #5f696d; }
.model-status { display: flex; align-items: center; gap: 8px; color: var(--dev-green); }
.model-status i, .demo-product i, .preview-indicator i { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.gp-network { min-height: 207px; position: relative; display: grid; grid-template-columns: 1fr 1.15fr 1fr; align-items: center; gap: 20px; }
.network-client, .network-vendor { min-height: 82px; padding: 18px 20px; display: flex; flex-direction: column; justify-content: center; gap: 8px; position: relative; z-index: 2; background: var(--dev-paper); border: 1px solid #10161a35; }
.network-client small, .network-vendor small { color: #6b7376; font: 8px/1.5 var(--dev-mono); }
.network-client strong, .network-vendor strong { font-size: 15px; font-weight: 500; }
.network-links { height: 140px; position: relative; }
.network-line { position: absolute; left: 0; width: 100%; height: 1px; transform-origin: left; background: #466457; transition: opacity .12s linear; }
.network-line.line-one { top: 28px; transform: rotate(16deg) scaleX(.45); }
.network-line.line-two { top: 70px; transform: scaleX(1); }
.network-line.line-three { top: 112px; transform: rotate(-16deg) scaleX(.42); }
.network-line::after { content: ""; position: absolute; top: -3px; right: 0; width: 6px; height: 6px; border: 1px solid var(--dev-green); background: var(--dev-paper); border-radius: 50%; }
.network-node { position: absolute; z-index: 2; min-width: 25px; padding: 4px 6px; background: var(--dev-paper); color: #466457; border: 1px solid #4664576b; font: 10px/1.4 var(--dev-mono); text-align: center; }
.network-node.node-one { top: 10px; left: 25%; }.network-node.node-two { top: 60px; left: 38%; }.network-node.node-three { top: 112px; left: 24%; }
.js-motion .gp-model .network-line { opacity: calc(1 - var(--software-shift, 0)); }
.js-motion .gp-model .network-line.line-one { transform: rotate(16deg) scaleX(calc(clamp(0, var(--model-progress, 0), 1) * .45)); }
.js-motion .gp-model .network-line.line-two { transform: scaleX(calc(clamp(0, var(--model-progress, 0), 1) * .63)); }
.js-motion .gp-model .network-line.line-three { transform: rotate(-16deg) scaleX(calc(clamp(0, var(--model-progress, 0), 1) * .42)); }
.js-motion .gp-model .network-node { opacity: calc(clamp(0, (var(--model-progress, 0) - .08) * 3.3, 1) * (1 - var(--software-shift, 0))); transition: opacity .12s linear; }
.js-motion .gp-model .network-node.node-two { opacity: calc(clamp(0, (var(--model-progress, 0) - .36) * 3.3, 1) * (1 - var(--software-shift, 0))); }
.js-motion .gp-model .network-node.node-three { opacity: calc(clamp(0, (var(--model-progress, 0) - .68) * 3.3, 1) * (1 - var(--software-shift, 0))); }
.js-motion .gp-model .network-vendor { opacity: calc(1 - var(--software-shift, 0)); transform: translateX(calc(var(--software-shift, 0) * 12px)); transition: opacity .2s linear, transform .2s linear; }
.network-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 18px; }
.network-steps p { margin: 0; padding-top: 12px; border-top: 1px solid #10161a28; }
.network-steps small { display: block; margin-bottom: 6px; color: #466457; font: 10px/1.4 var(--dev-mono); }
.network-steps span { color: #485358; font-size: 13px; line-height: 1.45; }
.js-motion .network-steps p { opacity: calc(clamp(0, (var(--model-progress, 0) - (var(--step-index, 0) * .3)) * 5, 1) * (1 - var(--software-shift, 0))); transform: translateY(calc((1 - clamp(0, (var(--model-progress, 0) - (var(--step-index, 0) * .3)) * 5, 1)) * 5px)); }
.js-motion .network-steps p:nth-child(1) { --step-index: 0; }.js-motion .network-steps p:nth-child(2) { --step-index: 1; }.js-motion .network-steps p:nth-child(3) { --step-index: 2; }
.js-motion .gp-hero-question { opacity: var(--hero-question-progress, 0); transform: translateY(calc((1 - var(--hero-question-progress, 0)) * 10px)); }
.network-caption { color: #737b7e; font-size: 9px; }
.gp-section-close { margin: 50px 0 0; font-size: 21px; line-height: 1.5; color: #5b6468; }
.gp-section-close strong { color: #172126; font-weight: 500; }
.gp-economics { padding-bottom: 60px; }
.economics-heading { grid-template-columns: 1fr minmax(190px, .42fr); align-items: end; }
.economics-heading .gp-eyebrow { grid-column: 1/-1; }
.economics-heading h2 { color: var(--dev-text); }
.heading-aside { margin: 0 0 7px; color: var(--dev-gold); font-size: 15px; line-height: 1.5; }
.gp-economics-grid { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: clamp(44px, 8vw, 110px); }
.economics-copy { color: #c4c9cc; font-size: 16px; line-height: 1.7; }
.economics-copy p { margin: 0 0 19px; }
.economics-copy .gp-intro { margin-bottom: 22px; color: var(--dev-text); font-size: 20px; }
.gp-source-note { margin-top: 30px !important; padding-top: 18px; border-top: 1px solid var(--dev-line); color: var(--dev-muted); font: 10px/1.7 var(--dev-mono); }
.gp-source-note a { color: var(--dev-gold); text-decoration: underline; text-decoration-color: #cba6606b; text-underline-offset: 3px; }
.gp-source-note a:hover { text-decoration-color: currentColor; }
.gp-source-note a span { white-space: nowrap; }
.gp-decision { padding: 23px 24px 18px; border: 1px solid var(--dev-line); background: #0b1218; }
.decision-topline { color: var(--dev-muted); font-size: 8px; }
.decision-origin { display: flex; align-items: center; gap: 12px; margin: 43px 0 0; font-size: 16px; }
.decision-dot { width: 9px; height: 9px; background: var(--dev-gold); border-radius: 50%; box-shadow: 0 0 0 6px #cba66017; }
.decision-routes { height: 75px; display: grid; grid-template-columns: repeat(3, 1fr); position: relative; }
.decision-routes i { width: 1px; height: 76px; margin: 0 auto; background: #cba66070; transform: rotate(34deg); transform-origin: top; }
.decision-routes i:nth-child(2) { transform: none; }.decision-routes i:nth-child(3) { transform: rotate(-34deg); }
.decision-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.decision-options article { min-height: 142px; padding: 15px 12px; border-top: 2px solid var(--dev-gold); background: #111a21; }
.decision-options article:nth-child(2) { border-color: var(--dev-green); }.decision-options article:nth-child(3) { border-color: #87919a; }
.decision-options small, .ownership-step p, .preview-title small { color: var(--dev-gold); font: 8px/1.5 var(--dev-mono); }
.decision-options article:nth-child(2) small { color: #91ac9d; }.decision-options article:nth-child(3) small { color: #b5bdc2; }
.decision-options h3 { margin: 14px 0 8px; font-size: 17px; font-weight: 500; }
.decision-options p { margin: 0; color: var(--dev-muted); font-size: 11px; line-height: 1.5; }
.decision-foot { margin-top: 22px; color: #8c969c; font-size: 7px; }
.gp-transition-line { margin: 92px 0 0; min-height: 130px; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; border-top: 1px solid var(--dev-line); border-bottom: 1px solid var(--dev-line); }
.gp-transition-line > span:first-child { color: var(--dev-gold); font: 9px var(--dev-mono); }
.gp-transition-line p { color: var(--dev-muted); font-size: 17px; line-height: 1.5; }
.gp-transition-line p strong { color: var(--dev-text); font-weight: 500; }
.transition-arrow { width: 90%; height: 1px; justify-self: end; position: relative; background: #cba66082; }
.transition-arrow::after { content: ""; position: absolute; right: 0; top: -4px; width: 8px; height: 8px; border-top: 1px solid var(--dev-gold); border-right: 1px solid var(--dev-gold); transform: rotate(45deg); }
.gp-ownership { background: #0b1117; border-top: 1px solid var(--dev-line); border-bottom: 1px solid var(--dev-line); }
.offer-heading { display: block; max-width: 900px; margin-bottom: 64px; }
.offer-heading .gp-eyebrow { margin-bottom: 24px; }
.offer-heading h2 { font-size: 64px; }
.offer-heading h2 span { color: var(--dev-gold); }
.offer-heading .gp-intro { max-width: 700px; margin-top: 29px; color: #c1c7ca; }
.gp-ownership-diagram { border-top: 1px solid var(--dev-line); border-bottom: 1px solid var(--dev-line); }
.ownership-flow { display: grid; grid-template-columns: 1fr 74px 1fr 74px 1fr; align-items: stretch; }
.ownership-step { padding: 28px 20px 31px 0; }
.ownership-step:nth-of-type(2) { padding-left: 14px; }.ownership-step:nth-of-type(3) { padding-left: 14px; }
.ownership-number { color: #78838a; font: 9px var(--dev-mono); }
.ownership-step p { margin: 37px 0 13px; font-size: 10px; }
.ownership-step:nth-of-type(2) p { color: #92aa9d; }.ownership-step:nth-of-type(3) p { color: #d3d8d9; }
.ownership-step h3 { min-height: 65px; margin: 0 0 23px; font-size: 28px; line-height: 1.2; font-weight: 500; }
.ownership-step ul { list-style: none; padding: 0; margin: 0; color: #aab2b6; font-size: 13px; line-height: 1.55; }
.ownership-step li { padding: 12px 0; border-top: 1px solid var(--dev-line); }
.ownership-connector { align-self: center; height: 1px; position: relative; background: #cba66088; }
.ownership-connector::after { content: ""; position: absolute; right: 0; top: -4px; width: 8px; height: 8px; border-top: 1px solid var(--dev-gold); border-right: 1px solid var(--dev-gold); transform: rotate(45deg); }
.ownership-caption { display: flex; align-items: center; gap: 16px; padding: 20px 0; color: var(--dev-muted); font: 8px/1.5 var(--dev-mono); }
.ownership-caption span:nth-of-type(3) { color: var(--dev-gold); }.caption-rule { height: 1px; flex: 1; background: var(--dev-line); }
.gp-offer-note { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; margin: 35px 0 0; }
.gp-offer-note p { margin: 0; color: #b0b8bc; font-size: 14px; line-height: 1.65; }
.gp-offer-note p:first-child { color: var(--dev-text); font-size: 17px; }
.gp-demo { background: var(--dev-paper); color: var(--dev-paper-ink); }
.demo-heading { display: block; max-width: 900px; margin-bottom: 48px; }
.demo-heading .gp-eyebrow { margin-bottom: 25px; color: #5f696d; }
.demo-heading h2 { font-size: 64px; }
.demo-heading h2 span { color: #657077; }
.demo-heading .gp-intro { max-width: 690px; margin-top: 25px; color: #556064; font-size: 17px; }
.gp-demo-shell { border: 1px solid #10161a33; background: #fafbf9; box-shadow: 0 18px 50px #10161a12; }
.demo-toolbar { min-height: 54px; align-items: center; padding: 0 22px; border-bottom: 1px solid #10161a22; color: #566166; font-size: 10px; }
.demo-product { display: flex; align-items: center; gap: 9px; }.demo-product i { color: var(--dev-green); }
.illustrative-badge { padding: 6px 9px; border: 1px solid #46645765; color: #375448; font-size: 10px; }
.demo-body { display: grid; grid-template-columns: minmax(250px, .78fr) minmax(0, 1.4fr); min-height: 430px; }
.demo-prompts { padding: 24px 18px 24px 22px; border-right: 1px solid #10161a22; }
.demo-label, .demo-preview-heading { color: #637075; font: 10px/1.5 var(--dev-mono); }
.demo-label { margin: 0 0 16px; }
.demo-tabs { display: grid; gap: 8px; }
.demo-tab { width: 100%; min-height: 93px; display: grid; grid-template-columns: 26px 1fr 12px; align-items: start; gap: 10px; padding: 15px 12px; border: 1px solid transparent; background: transparent; color: #596367; text-align: left; cursor: default; transition: background .2s ease, border-color .2s ease, color .2s ease; }
.demo-tabs-ready .demo-tab { cursor: pointer; }
.demo-tab > span { padding-top: 2px; color: #899195; font: 10px var(--dev-mono); }
.demo-tab strong { font-size: 14px; line-height: 1.45; font-weight: 500; }
.demo-tab i { width: 7px; height: 7px; margin-top: 5px; border-top: 1px solid #71807a; border-right: 1px solid #71807a; transform: rotate(45deg); opacity: 0; }
.demo-tabs-ready .demo-tab:hover { background: #f1f2ef; }.demo-tab[aria-selected="true"] { border-color: #4664574a; background: #edf1ed; color: #17221e; }.demo-tab[aria-selected="true"] > span { color: #466457; }.demo-tab[aria-selected="true"] i { opacity: 1; }
.demo-disclaimer { margin: 22px 5px 0; color: #727b7e; font: 10px/1.6 var(--dev-mono); }
.demo-preview-wrap { min-width: 0; padding: 22px 25px 24px; }
.demo-preview-heading { padding-bottom: 17px; border-bottom: 1px solid #10161a21; }
.preview-indicator { display: flex; align-items: center; gap: 7px; color: var(--dev-green); }
.demo-panel { min-height: 330px; padding-top: 21px; animation: preview-enter .22s ease both; }
.demo-panel[hidden] { display: none; }
.demo-static-request { margin: 0 0 20px; color: #23302d; font-size: 18px; line-height: 1.4; font-weight: 500; }
.demo-tabs-ready .demo-static-request { display: none; }
@keyframes preview-enter { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }
.preview-title { display: flex; align-items: start; justify-content: space-between; gap: 15px; }
.preview-title small { color: #697477; font-size: 10px; }
.preview-title h3 { margin: 7px 0 0; font-size: 22px; font-weight: 500; }
.period-label { flex: 0 0 auto; padding: 6px 8px; border: 1px solid #10161a24; color: #697477; font: 10px/1.4 var(--dev-mono); }
.preview-summary { display: flex; align-items: baseline; gap: 11px; margin: 26px 0 13px; color: #677175; font: 10px var(--dev-mono); }
.preview-summary strong { color: #20302a; font: 600 17px var(--dev-sans); }.preview-summary span { margin-left: auto; }
.mini-table { width: 100%; }
.mini-row { min-height: 42px; display: grid; grid-template-columns: 1.25fr .9fr .85fr; align-items: center; gap: 8px; border-top: 1px solid #10161a1f; color: #2c373a; font-size: 12px; }
.mini-head { min-height: 29px; color: #737c7f; font: 10px var(--dev-mono); }
.mini-row > span:last-child { text-align: right; }.trend-down { color: #8a5940; }.trend-steady { color: #466457; }
.preview-footnote { margin: 19px 0 0; padding-top: 12px; border-top: 1px solid #10161a1c; color: #727b7e; font: 10px/1.6 var(--dev-mono); }
.approval-request { margin: 31px 0 18px; padding: 16px; display: flex; align-items: center; justify-content: space-between; gap: 15px; border: 1px solid #10161a22; background: #fff; }
.approval-request div { display: grid; gap: 5px; }.approval-request small, .approval-review small, .shipment-summary small { color: #788184; font: 10px/1.5 var(--dev-mono); }.approval-request strong { font-size: 13px; font-weight: 500; }.approval-request div span { color: #697477; font-size: 12px; }.approval-request b { white-space: nowrap; font-size: 17px; font-weight: 500; }
.approval-rule { display: flex; align-items: center; gap: 12px; padding: 14px 12px; background: #edf1ed; }.rule-number { color: #466457; font: 10px var(--dev-mono); }.approval-rule p { flex: 1; margin: 0; color: #4b5854; font-size: 12px; line-height: 1.5; }.approval-rule p strong { color: #1d2924; font-weight: 600; }.rule-arrow { width: 23px; height: 1px; position: relative; background: #466457; }.rule-arrow::after { content: ""; position: absolute; right: 0; top: -3px; width: 6px; height: 6px; border-top: 1px solid #466457; border-right: 1px solid #466457; transform: rotate(45deg); }.approval-state { padding: 5px 7px; border: 1px solid #4664575c; color: #466457; font: 10px var(--dev-mono); }
.approval-review { display: flex; align-items: center; gap: 10px; margin-top: 14px; padding: 10px 0; border-bottom: 1px solid #10161a20; }.review-avatar { width: 28px; height: 28px; display: grid; place-items: center; background: #dfe5df; color: #355247; font: 10px var(--dev-mono); border-radius: 50%; }.approval-review div { display: grid; gap: 4px; }.approval-review strong { font-size: 12px; font-weight: 500; }.review-pending { margin-left: auto; color: #8a6b32; font: 10px var(--dev-mono); }
.shipment-summary { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 25px 0 17px; padding: 13px 0; border-top: 1px solid #10161a20; border-bottom: 1px solid #10161a20; }.shipment-summary div { display: grid; gap: 6px; }.shipment-summary strong { font-size: 12px; font-weight: 500; }
.tracking-timeline { list-style: none; margin: 0; padding: 0; }.tracking-timeline li { min-height: 47px; position: relative; display: grid; grid-template-columns: 15px 1fr auto; align-items: center; gap: 10px; }.tracking-timeline li:not(:last-child)::before { content: ""; position: absolute; top: 29px; bottom: -16px; left: 6px; width: 1px; background: #bcc5c1; }.tracking-timeline li > span { width: 13px; height: 13px; z-index: 1; border: 1px solid #9aa49f; background: #fafbf9; border-radius: 50%; }.tracking-timeline li.is-complete > span { border-color: var(--dev-green); background: var(--dev-green); box-shadow: inset 0 0 0 3px #fafbf9; }.tracking-timeline li.is-current > span { border: 3px solid var(--dev-green); }.tracking-timeline li div { display: grid; gap: 4px; }.tracking-timeline li strong { font-size: 12px; font-weight: 500; }.tracking-timeline li small { color: #778084; font-size: 10px; }.tracking-timeline li em { color: #737c7f; font: 10px var(--dev-mono); font-style: normal; }.tracking-timeline li.is-current em { color: var(--dev-green); }
.gp-closing { padding: 112px 7.2% 120px; background: var(--dev-ink); }
.gp-closing .gp-section-inner { max-width: 1120px; }
.gp-closing .gp-eyebrow { margin-bottom: 26px; }
.gp-closing h2 { font-size: 64px; }
.gp-closing h2 span { color: var(--dev-gold); }
.closing-statement { margin: 65px 0 15px; font-size: 44px; font-weight: 500; }
.closing-copy { max-width: 610px; margin: 0; color: #b2b9bd; font-size: 16px; line-height: 1.65; }
.closing-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 27px; margin-top: 33px; }
.gp-primary-cta { min-height: 54px; display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; padding: 0 22px; background: var(--dev-paper); color: #11191d; border-radius: 30px; font-size: 13px; font-weight: 600; transition: background .2s ease, transform .2s ease; }
.gp-primary-cta:hover { background: #dfc991; transform: translateY(-2px); }.gp-primary-cta .gp-arrow-icon { width: 16px; height: 16px; }
.gp-secondary-cta { color: #d8dcdd; font: 9px/1.5 var(--dev-mono); text-transform: uppercase; }.gp-secondary-cta .gp-down-icon { margin-left: 12px; color: var(--dev-gold); vertical-align: -3px; }
.gp-footer { min-height: 108px; padding: 22px 5.2%; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-top: 1px solid var(--dev-line); }
.gp-footer .gp-brand { font-size: 16px; }.gp-footer .gp-brand span { font-size: 7px; }
.gp-footer p { color: var(--dev-muted); font-size: 11px; }
.gp-footer > a:last-child { color: var(--dev-muted); font: 8px var(--dev-mono); text-transform: uppercase; }.gp-footer > a:last-child .gp-arrow-icon { color: var(--dev-gold); margin-left: 8px; }
[data-reveal] { opacity: 1; transform: none; }
.js-motion [data-reveal] { opacity: 0; transform: translateY(14px); transition: opacity .55s ease, transform .55s ease; }
.js-motion [data-reveal].is-visible { opacity: 1; transform: none; }

@media (max-width: 780px) {
  .gp-header { min-height: 81px; padding: 18px 5%; }
  .gp-brand { font-size: 17px; }.gp-brand span { font-size: 8px; margin-top: 6px; }
  .gp-header nav { gap: 15px; font-size: 9px; }
  .gp-header nav .gp-nav-contact { padding: 11px 12px; }.gp-nav-contact .gp-arrow-icon { margin-left: 5px; }
  .gp-hero { min-height: 680px; padding: 140px 6% 60px; }
  .gp-hero h1 { font-size: 68px; }.gp-hero-question { font-size: 46px; }
  .gp-hero-bottom { align-items: start; flex-direction: column; gap: 25px; margin-top: 35px; }
  .gp-hero-lede { max-width: 560px; font-size: 17px; }
  .gp-section { padding: 82px 6%; }
  .gp-section-heading { grid-template-columns: 1fr; gap: 20px; margin-bottom: 40px; }
  .gp-section-heading .gp-eyebrow { grid-column: auto; }
  .gp-section-heading h2, .gp-closing h2 { font-size: 48px; }
  .gp-saas-copy { font-size: 16px; }
  .gp-model { margin-top: 51px; padding: 19px 14px 16px; }
  .gp-network { min-height: 185px; grid-template-columns: .9fr 1fr .9fr; gap: 9px; }
  .network-client, .network-vendor { min-height: 80px; padding: 12px 9px; }.network-client strong, .network-vendor strong { font-size: 12px; }
  .network-node { padding: 3px 4px; font-size: 10px; }.network-caption { font-size: 9px; }
  .network-steps { gap: 12px; }.network-steps small { font-size: 10px; }.network-steps span { font-size: 12px; }
  .economics-heading { grid-template-columns: 1fr; }.heading-aside { margin: 0; }
  .gp-economics-grid { grid-template-columns: 1fr; gap: 34px; }
  .gp-transition-line { margin-top: 64px; grid-template-columns: 85px 1fr 70px; gap: 12px; }.gp-transition-line p { font-size: 15px; }
  .offer-heading h2, .demo-heading h2 { font-size: 48px; }
  .ownership-flow { grid-template-columns: 1fr 34px 1fr 34px 1fr; }
  .ownership-step { padding-right: 9px; }.ownership-step:nth-of-type(2), .ownership-step:nth-of-type(3) { padding-left: 9px; }
  .ownership-step h3 { font-size: 22px; }.ownership-step ul { font-size: 12px; }.ownership-step li { padding: 10px 0; }
  .ownership-connector { align-self: start; margin-top: 177px; }
  .gp-offer-note { gap: 25px; }.gp-demo-shell { box-shadow: none; }
  .demo-body { grid-template-columns: minmax(210px, .82fr) minmax(0, 1.2fr); }
  .demo-prompts { padding: 20px 12px; }.demo-preview-wrap { padding: 20px 15px; }
}

@media (max-width: 560px) {
  .gp-header { align-items: center; padding: 16px 5%; }
  .gp-brand { font-size: 14px; }.gp-brand span { font-size: 7px; }
  .gp-header nav { gap: 0; font-size: 11px; }
  .gp-header nav a:not(.gp-nav-contact) { display: none; }
  .gp-header nav a { white-space: nowrap; }.gp-header nav .gp-nav-contact { min-height: 44px; display: flex; align-items: center; padding: 12px; font-size: 11px; }
  .gp-nav-contact .gp-arrow-icon { display: none; }
  .gp-hero { min-height: 650px; padding: 139px 6% 58px; }
  .gp-eyebrow { gap: 9px; font-size: 9px; }
  .gp-hero h1 { font-size: 56px; line-height: 1.02; }.gp-hero-question { font-size: 38px; }
  .gp-hero-bottom { margin-top: 29px; }.gp-hero-lede { font-size: 16px; }
  .gp-hero-index { right: 6%; font-size: 9px; }
  .gp-section { padding: 70px 6%; }
  .gp-section-heading h2, .gp-closing h2 { font-size: 36px; }
  .gp-intro, .gp-saas-copy .gp-intro, .economics-copy .gp-intro { font-size: 18px; }
  .gp-saas-copy, .economics-copy { font-size: 15px; }
  .gp-model { margin-right: -2%; margin-left: -2%; padding: 17px 10px 14px; }
  .gp-model-label, .network-caption { font-size: 9px; gap: 7px; }
  .gp-network { min-height: 168px; grid-template-columns: .92fr .55fr .92fr; gap: 4px; }
  .network-client, .network-vendor { min-height: 73px; padding: 9px 7px; gap: 6px; }
  .network-client small, .network-vendor small { font-size: 9px; }.network-client strong, .network-vendor strong { font-size: 12px; }
  .network-links { height: 128px; }.network-line.line-one { top: 26px; }.network-line.line-two { top: 64px; }.network-line.line-three { top: 102px; }
  .network-node { font-size: 10px; }.network-node.node-one { left: 0; }.network-node.node-two { left: 13%; }.network-node.node-three { left: 0; }
  .network-steps { grid-template-columns: 1fr; gap: 8px; }.network-steps p { display: grid; grid-template-columns: minmax(118px, .8fr) 1fr; align-items: baseline; gap: 8px; padding-top: 8px; }.network-steps small { margin: 0; font-size: 10px; }.network-steps span { font-size: 12px; }
  .gp-section-close { font-size: 18px; }
  .gp-decision { padding: 18px 13px 14px; }.decision-topline { font-size: 10px; gap: 8px; }.decision-origin { margin-top: 34px; }.decision-routes { height: 62px; }.decision-routes i { height: 62px; }
  .decision-options { gap: 5px; }.decision-options article { min-height: 136px; padding: 12px 7px; }.decision-options small { font-size: 10px; }.decision-options h3 { margin-top: 12px; font-size: 14px; }.decision-options p { font-size: 12px; }.decision-foot { font-size: 10px; }
  .gp-transition-line { min-height: 115px; grid-template-columns: 53px 1fr 30px; gap: 9px; }.gp-transition-line > span:first-child { font-size: 9px; }.gp-transition-line p { font-size: 14px; }.transition-arrow { width: 100%; }
  .offer-heading h2, .demo-heading h2 { font-size: 36px; }.offer-heading .gp-intro { font-size: 17px; }
  .ownership-flow { grid-template-columns: 1fr; }
  .ownership-step, .ownership-step:nth-of-type(2), .ownership-step:nth-of-type(3) { padding: 23px 0 18px; }
  .ownership-step p { margin: 20px 0 9px; }.ownership-step h3 { min-height: 0; margin-bottom: 15px; font-size: 26px; }.ownership-step ul { font-size: 12px; }
  .ownership-step li { padding: 9px 0; }.ownership-connector { width: 1px; height: 29px; margin: 0 auto; background: #cba66088; }.ownership-connector::after { right: -4px; top: auto; bottom: 1px; transform: rotate(135deg); }
  .ownership-caption { gap: 7px; font-size: 9px; }.caption-rule { min-width: 8px; }
  .gp-offer-note { grid-template-columns: 1fr; gap: 18px; }.gp-offer-note p:first-child { font-size: 16px; }.gp-offer-note p { font-size: 13px; }
  .demo-heading .gp-intro { font-size: 16px; }
  .gp-demo-shell { margin: 0 -4%; }.demo-toolbar { min-height: 48px; padding: 0 12px; font-size: 10px; gap: 8px; }.illustrative-badge { font-size: 10px; padding: 5px 6px; }
  .demo-body { display: flex; flex-direction: column; }
  .demo-prompts { padding: 17px 13px 14px; border-right: 0; border-bottom: 1px solid #10161a22; }
  .demo-label { margin-bottom: 8px; font-size: 10px; }
  .demo-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; }
  .demo-tab { min-height: 132px; grid-template-columns: 1fr; align-content: start; gap: 8px; padding: 10px 8px; }
  .demo-tab > span { font-size: 10px; }.demo-tab strong { font-size: 12px; line-height: 1.4; }.demo-tab i { display: none; }
  .demo-disclaimer { margin: 12px 2px 0; font-size: 10px; }
  .demo-preview-wrap { padding: 17px 13px 18px; }.demo-preview-heading { font-size: 10px; }.demo-panel { min-height: 310px; padding-top: 16px; }
  .preview-title h3 { font-size: 18px; }.preview-title small { font-size: 10px; }.period-label { padding: 5px; font-size: 10px; }
  .preview-summary { gap: 7px; font-size: 10px; }.preview-summary strong { font-size: 15px; }.preview-summary span { font-size: 10px; }
  .mini-row { min-height: 43px; grid-template-columns: 1.1fr .72fr .75fr; gap: 4px; font-size: 12px; }.mini-head { min-height: 25px; font-size: 10px; }
  .preview-footnote { font-size: 10px; }.approval-request { margin-top: 23px; padding: 12px 9px; }.approval-request strong { font-size: 12px; }.approval-request div span { font-size: 12px; }.approval-request b { font-size: 14px; }
  .approval-rule { gap: 7px; padding: 12px 7px; }.approval-rule p { font-size: 12px; }.approval-state { font-size: 10px; padding: 5px; }.rule-arrow { width: 15px; }
  .approval-review strong { font-size: 12px; }.review-pending { font-size: 10px; }
  .shipment-summary { gap: 8px; }.shipment-summary small { font-size: 10px; }.shipment-summary strong { font-size: 12px; }.tracking-timeline li { grid-template-columns: 15px 1fr auto; gap: 7px; }.tracking-timeline li strong { font-size: 12px; }.tracking-timeline li small { font-size: 10px; }.tracking-timeline li em { font-size: 10px; }
  .gp-closing { padding: 77px 6% 86px; }.closing-statement { margin-top: 48px; font-size: 29px; }.closing-copy { font-size: 15px; }
  .closing-actions { align-items: flex-start; flex-direction: column; gap: 22px; }.gp-primary-cta { width: 100%; min-height: 52px; font-size: 12px; }
  .gp-footer { min-height: 0; padding: 25px 6%; flex-wrap: wrap; }.gp-footer p { order: 3; width: 100%; margin: 0; font-size: 10px; }
}

@media (max-width: 380px) {
  .demo-tabs { grid-template-columns: 1fr; gap: 6px; }
  .demo-tab { min-height: 64px; grid-template-columns: 20px 1fr; align-items: center; gap: 10px; padding: 12px; }
  .demo-tab strong { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .js-motion [data-reveal] { opacity: 1; transform: none; }
  .js-motion .gp-hero-question { opacity: 1 !important; transform: none !important; }
  .js-motion .gp-model .network-line { opacity: 1 !important; transform: none !important; }
  .js-motion .gp-model .network-line.line-one { transform: rotate(16deg) !important; }
  .js-motion .gp-model .network-line.line-three { transform: rotate(-16deg) !important; }
  .js-motion .gp-model .network-node, .js-motion .network-steps p { opacity: 1 !important; transform: none !important; }
  .js-motion .gp-model .network-vendor { opacity: 1 !important; transform: none !important; }
}
