@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/dm-sans-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/dm-sans-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;src:url('assets/manrope-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;src:url('assets/manrope-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{--paper:#F1F0EB;--ink:#17161b;--muted:#5d5862;--line:#d8d3cf;--red:#a83b25;--cobalt:#2a41c8;--cobalt-ink:#1f32a6;--acid:#ccd4f3;--violet:#5c3d78;--blue:#355b8a;--white:#faf8f4;--pad:clamp(22px,5vw,88px);--heading:'Manrope',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:95px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
body.dialog-open{overflow:hidden}
button,input,textarea,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{color:inherit;cursor:pointer}
a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--cobalt);outline-offset:5px}
button{border-radius:0}
img{display:block;width:100%}
svg{display:block}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--heading);font-weight:550;overflow-wrap:anywhere}
::selection{background:var(--acid);color:var(--ink)}
.wrap{padding-inline:var(--pad);max-width:1800px;margin:auto}
.mono,.eyebrow,.section-no,.tag,.project-meta,.micro,.tree-root,.industry-button,.demo-label,.flow-node,.table-head,.table-row,.view-btn,.trust-strip,.process-no,.footer-bottom{font-family:var(--body);font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:550}
.eyebrow{display:flex;align-items:center;gap:12px}
.eyebrow::before{content:'';width:7px;height:7px;background:var(--red)}
.muted{color:var(--muted)}
.arrow{display:inline-block;font-size:23px;line-height:1;transition:transform .3s}
a:hover .arrow,button:hover .arrow{transform:translate(3px,-3px)}
.text-link{display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid currentColor;padding-bottom:8px;font-size:14px;transition:color .25s}
.text-link:hover{color:var(--cobalt)}
.solid-link{background:var(--ink);color:var(--paper);padding:17px 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:14px;border:1px solid var(--ink);transition:background .25s,color .25s}
.solid-link:hover{background:var(--cobalt);border-color:var(--cobalt);color:white}
.skip{position:fixed;left:20px;top:-100px;z-index:100;background:var(--ink);color:white;padding:15px}
.skip:focus{top:12px}
header{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line);background:var(--paper)}
.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px}
.brand-lockup{display:flex;flex-direction:column;align-items:center;width:158px;gap:7px}
.brand-lockup img{width:100%;height:auto}
.brand-lockup>span{font-size:8px;letter-spacing:5.5px;line-height:1;margin-left:5.5px;font-weight:650}
.language-select{position:relative;display:inline-flex;min-width:49px}
.language-current{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:44px;padding:8px 0;gap:16px;font-size:11px;background:transparent;border:0;border-bottom:1px solid var(--ink)}
.language-current svg{width:10px;height:7px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .2s}
.language-current[aria-expanded=true] svg{transform:rotate(180deg)}
.language-options{position:absolute;top:calc(100% + 10px);right:0;width:180px;padding:6px;border:1px solid var(--ink);background:var(--paper);box-shadow:4px 4px 0 rgba(32,34,31,.1);z-index:2}
.language-options[hidden]{display:none}
.language-options button{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;min-height:44px;padding:12px;background:transparent;border:0;font-size:13px;text-align:left}
.language-options button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.language-options button:hover{background:var(--acid);color:var(--ink)}
.language-options button:focus-visible{outline-offset:-2px}
.language-code{font-size:9px;letter-spacing:.08em}
.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}
.brand svg{width:34px;height:35px}
.wordmark{font-family:var(--heading);font-weight:800;font-size:23px;letter-spacing:-1.3px;line-height:.95}
.wordmark small{display:block;font-size:9px;letter-spacing:4.5px;margin-top:6px;font-weight:600}
.navigation{display:flex;align-items:center;gap:32px;font-size:13px}
.navigation>a{position:relative}
.navigation>a::after{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.navigation>a:hover::after{transform:scaleX(1)}
.header-tools{display:flex;align-items:center;gap:25px}
.languages{display:flex;gap:10px}
.languages button{background:none;border:0;padding:5px 0;font-size:10px;color:var(--muted);border-bottom:1px solid transparent}
.languages button[aria-pressed=true]{color:var(--ink);border-color:var(--ink)}
.header-contact{border-bottom:1px solid var(--ink);padding:7px 0;display:flex;gap:24px;align-items:center;font-size:13px}
.menu-toggle{display:none;border:0;background:transparent;padding:10px;font-size:13px}
.hero{padding-top:48px;position:relative;overflow:hidden}
.hero-meta{display:flex;justify-content:space-between;align-items:center}
.hero-meta .micro{color:var(--muted)}
.hero-main{display:grid;grid-template-columns:1.12fr 1fr;min-height:570px;align-items:center;gap:15px}
.hero-copy{position:relative;z-index:2;padding:45px 0 42px;min-width:0}
.hero h1{font-size:clamp(60px,7.1vw,114px);line-height:1.02;letter-spacing:-.075em;max-width:840px}
.hero h1 em{font-style:normal;color:var(--red)}
.hero-description{max-width:420px;color:var(--muted);font-size:16px;margin:27px 0 27px;line-height:1.7}
.hero-cta{display:flex;align-items:center;gap:28px}
.hero-caption{font-size:11px;color:var(--muted);max-width:130px;line-height:1.5}
.service-index{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:0}
.service-index a{padding:30px 26px 30px 0;display:grid;grid-template-columns:30px 1fr auto;align-items:start;gap:14px;transition:color .25s}
.service-index a+a{border-left:1px solid var(--line);padding-left:26px}
.service-index a:hover{color:var(--cobalt)}
.service-index .service-index-no{font-size:11px;color:var(--muted);padding-top:4px}
.service-index-body{display:block;min-width:0}
.service-index strong{display:block;font-weight:550;font-size:18px;letter-spacing:-.015em;margin-bottom:8px}
.service-index-desc{display:block;font-size:12.5px;line-height:1.55;color:var(--muted)}
.service-index .arrow{font-size:22px;color:var(--cobalt)}
.intro{padding-block:112px 100px;display:grid;grid-template-columns:1fr 2fr;gap:40px}
.section-label{display:flex;gap:25px;align-items:baseline}
.section-no{color:var(--cobalt)}
.intro h2{font-size:clamp(30px,3.8vw,60px);line-height:1.2;letter-spacing:-.05em;max-width:890px}
.intro h2>span:not(.motion-word){color:#93968a}
.intro-bottom{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:35px}
.intro-bottom p{max-width:370px;font-size:14px;color:var(--muted)}
.software{background:var(--ink);color:var(--paper);padding-block:85px 90px}
.software .section-no{color:var(--acid)}
.section-top{display:flex;justify-content:space-between;gap:40px;align-items:start;margin-bottom:50px}
.section-top h2{font-size:clamp(40px,5.1vw,80px);letter-spacing:-.06em;line-height:1.06;max-width:760px;margin-top:32px}
.section-top>p{max-width:320px;font-size:14px;align-self:end;color:#aaaea0}
.chapter{color:var(--acid);font-size:10px;letter-spacing:1.4px;text-transform:uppercase}
.tree-head{display:flex;align-items:center;gap:20px;margin-top:60px;margin-bottom:0}
.tree-root{background:var(--acid);color:var(--ink);padding:13px 20px;position:relative}
.tree-root::after{content:'';position:absolute;left:50%;height:26px;bottom:-26px;border-left:1px solid #666d59}
.tree-head>p{font-size:12px;color:#b2b7a7}
.industry-tree{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));position:relative;margin:50px 0 27px;gap:9px}
.industry-tree::before{content:'';position:absolute;left:0;right:calc(100% / 14);top:-24px;border-top:1px solid #666d59}
.industry-button{position:relative;border:1px solid #53574c;background:transparent;color:#c5c8bc;padding:17px 6px;font-size:10px;letter-spacing:.02em;transition:background .25s,color .25s,border-color .25s;min-height:56px}
.industry-button::before{content:'';height:24px;border-left:1px solid #666d59;position:absolute;top:-25px;left:50%}
.industry-button[aria-selected=true]{background:var(--acid);color:var(--ink);border-color:var(--acid)}
.industry-button[aria-selected=true]::before{border-color:var(--acid)}
.industry-button:hover{border-color:var(--acid);color:var(--acid)}
.industry-button[aria-selected=true]:hover{color:var(--ink)}
.solution-panel{border:1px solid #53574c;display:grid;grid-template-columns:1fr 1.15fr;min-height:530px}
.solution-copy{padding:35px;display:flex;flex-direction:column}
.solution-copy .micro{color:var(--acid);margin-bottom:20px}
.solution-copy h3{font-size:clamp(28px,3vw,44px);line-height:1.12;letter-spacing:-.04em;margin-bottom:18px;max-width:420px}
.solution-copy>p{color:#b4b8aa;font-size:14px;max-width:430px}
.outcomes{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px;padding-top:24px;border-top:1px solid #53574c}
.outcomes h4{font-size:11px;letter-spacing:.05em;text-transform:uppercase;font-weight:500;margin:0 0 9px;color:var(--acid)}
.outcomes p{font-size:12px;line-height:1.65;color:#b4b8aa}
.security-callout{display:flex;gap:12px;border-top:1px solid #53574c;margin-top:25px;padding-top:20px}
.security-callout svg{width:20px;height:24px;flex-shrink:0;stroke:var(--acid);fill:none}
.security-callout p{font-size:12px;color:#c4c9b9;line-height:1.7}
.solution-copy .text-link{margin-top:25px;align-self:start;color:var(--paper)}
.demo{background:#e8eade;color:var(--ink);padding:23px;display:flex;flex-direction:column;min-width:0}
.demo-toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #bbc0b0;padding-bottom:18px;gap:15px}
.demo-brand{font-family:var(--heading);font-weight:750;font-size:16px;letter-spacing:-.6px}
.demo-label{color:#626957;font-size:9px;letter-spacing:.05em}
.view-switch{display:flex;border:1px solid #aeb59e;padding:3px;margin:22px 0;align-self:start}
.view-btn{border:0;background:transparent;color:#5a6250;padding:9px 13px;font-size:9px;letter-spacing:.02em}
.view-btn[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.demo-heading{font-size:25px;letter-spacing:-1px;margin-bottom:16px}
.workflow{display:flex;align-items:center;gap:7px;margin:8px 0 25px}
.flow-node{background:#f5f6ef;border:1px solid #bcc3af;flex:1;padding:13px 6px;text-align:center;font-size:8px;letter-spacing:.03em;transition:background .4s}
.flow-arrow{font-size:16px;color:#6b735e}
.workflow.connected .flow-node{background:#d7e99d;border-color:#94a662}
.table-head,.table-row{display:grid;grid-template-columns:1.2fr 1.3fr 1fr;gap:8px;font-size:9px;letter-spacing:.01em;padding:13px 0;border-bottom:1px solid #bec5b2}
.table-head{font-size:8px;color:#666f5b}
.table-row span:last-child{text-align:right}
.table-row .status{color:#536b2d}
.demo-foot{margin-top:auto;padding-top:22px;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:10px;color:#58614b}
.status-dot{width:5px;height:5px;background:#627b38;display:inline-block;margin-right:6px}
.demo-note{font-size:10px;color:#a8af9b;margin-top:16px;max-width:900px}
.manufacturing-panel{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr)}
.manufacturing-panel .solution-copy{padding:32px;position:sticky;top:100px;align-self:start}
.manufacturing-demo{background:#e8eade;color:var(--ink);padding:30px;min-width:0}
.manufacturing-demo h4{font-size:clamp(25px,2.4vw,36px);line-height:1.12;letter-spacing:-.05em;margin:16px 0 12px}
.manufacturing-demo h5{font-size:12px;line-height:1.5;font-weight:650;margin:0}
.manufacturing-demo p{font-size:11px;line-height:1.65}
.manufacturing-heading>.micro{font-size:8px;color:#555e4b;letter-spacing:.07em}
.manufacturing-heading>p:last-child{max-width:430px;color:#555e4b}
.niche-explainer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 14px}
.niche-explainer article{border-top:1px solid #aeb59e;padding-top:10px;min-width:0}
.niche-explainer h5{font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:#555e4b}
.niche-explainer p{font-size:10px;line-height:1.55;margin-top:7px;color:#30382b}
.manufacturing-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:25px 0 22px;gap:8px}
.manufacturing-steps li{border-top:2px solid #aeb59e;padding-top:10px;font-size:10px;color:#555e4b}
.manufacturing-steps li>span{display:block;font-size:9px;margin-bottom:5px}
.manufacturing-steps li[aria-current]{border-color:var(--red);color:var(--ink);font-weight:650}
.manufacturing-steps li.is-complete{border-color:#637b3d;color:#405326}
.manufacturing-stations{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.manufacturing-stations article{border:1px solid #b5bca8;padding:18px;min-width:0}
.machine-record{background:#252a25;color:#f1f0e9}
.manufacturing-stations .record-source{font-size:9px;color:#5a6450;margin-top:5px;min-height:30px}
.machine-record .record-source{color:#c3cdb5}
.machine-counter{display:flex;align-items:center;gap:12px;margin:12px 0}
.machine-counter strong{font-family:var(--heading);font-size:clamp(30px,3.8vw,52px);font-weight:500;line-height:1;letter-spacing:-.06em;font-variant-numeric:tabular-nums}
.machine-counter>span{font-size:8px;line-height:1.8}
.machine-counts{display:flex;gap:20px;padding-top:12px;border-top:1px solid #606951}
.machine-counts dt{font-size:9px;color:#c3cdb5}
.machine-counts dd{font-size:16px;margin:4px 0 0;font-variant-numeric:tabular-nums}
.office-record{background:#f4f4ed;transition:background .3s,border-color .3s}
.office-record.is-synced{background:#dce7bc;border-color:#637b3d}
.office-state{border-top:1px solid #b5bca8;padding-top:12px;color:#555e4b}
.marking-check{display:grid;grid-template-columns:110px 1fr;gap:18px;margin-top:12px;border:1px solid #ad5346;padding:16px;background:#f1e2d9;transition:background .3s,border-color .3s}
.marking-label{background:#faf9f2;border:1px solid #b5a99d;padding:12px 8px;display:flex;flex-direction:column;justify-content:center;gap:8px;text-align:center;align-self:start}
.marking-bars{display:block;height:35px;background:repeating-linear-gradient(90deg,#292c26 0 2px,transparent 2px 4px,#292c26 4px 5px,transparent 5px 8px,#292c26 8px 11px,transparent 11px 14px)}
.marking-label strong{font-family:monospace;font-size:13px;letter-spacing:1px}
.marking-check dl{margin:8px 0}
.marking-check dl>div{display:flex;justify-content:space-between;gap:10px;font-size:9px;margin:3px 0}
.marking-check dd{margin:0;font-family:monospace;white-space:nowrap}
.marking-check p{font-size:10px;color:#863b2f}
.marking-check.is-verified{background:#dce7bc;border-color:#637b3d}
.marking-check.is-verified p{color:#405326}
.manufacturing-action{margin-top:20px}
.manufacturing-action>p{min-height:3.3em}
.manufacturing-action>div{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:14px}
.manufacturing-next{border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:13px 15px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;text-align:left;max-width:100%}
.manufacturing-next:hover{background:#3d4536}
.manufacturing-reset{border:0;border-bottom:1px solid #69735d;padding:5px 0;background:transparent;font-size:10px;color:#465039}
.manufacturing-complete{background:#dce7bc;padding:12px 15px;font-size:11px;color:#405326}
.manufacturing-connection{border-block:1px solid #b5bca8;padding:12px 0;margin-top:22px;color:#555e4b}
.manufacturing-evidence{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}
.manufacturing-evidence section{min-width:0}
.manufacturing-evidence section>p{font-size:9px;color:#555e4b;margin-top:8px}
.batch-history table{width:100%;border-collapse:collapse;font-size:9px;text-align:left;margin-top:15px;table-layout:fixed}
.batch-history th,.batch-history td{padding:10px 5px 10px 0;border-bottom:1px solid #b5bca8;vertical-align:top;overflow-wrap:anywhere}
.batch-history th{font-weight:500}
.batch-history thead th{font-size:8px;color:#555e4b}
.batch-pending{color:#68715b}
.analytics-scope{display:flex;gap:4px;margin:12px 0}
.analytics-scope button{padding:7px 8px;border:1px solid #aeb59e;background:transparent;font-size:9px;color:var(--ink);min-width:0}
.analytics-scope button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.analytics-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.analytics-counts dt{font-size:8px;color:#555e4b}
.analytics-counts dd{margin:5px 0;font-size:21px;font-variant-numeric:tabular-nums}
.yield-value{display:flex;gap:10px;align-items:baseline;margin-top:12px;flex-wrap:wrap}
.yield-value strong{font-size:29px;font-weight:500;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.yield-value span{font-size:9px}
.manufacturing-demo .analytics-formula{font-family:monospace;font-size:9px;margin-top:3px}
.manufacturing-trail{margin-top:24px;padding-top:17px;border-top:1px solid #b5bca8}
.manufacturing-trail summary{font-size:11px;cursor:pointer}
.manufacturing-trail ol{list-style:none;padding:0;margin:14px 0 0;border-left:1px solid #a1ab91}
.manufacturing-trail li{font-size:10px;line-height:1.7;padding:0 0 12px 14px;position:relative}
.manufacturing-trail li::before{content:'';position:absolute;left:-3px;top:6px;width:5px;height:5px;background:#627b38}
.manufacturing-protection{display:flex;align-items:start;gap:10px;margin-top:15px}
.manufacturing-protection svg{width:18px;height:22px;flex-shrink:0;stroke:#465039;fill:none}
.manufacturing-protection p{font-size:10px;color:#465039}
.manufacturing-demo .manufacturing-disclaimer{font-size:9px;color:#555e4b;margin-top:12px}
.manufacturing-advance .manufacturing-stations,.manufacturing-advance .marking-check,.manufacturing-advance .manufacturing-trail li:last-child{animation:manufacturing-reveal .4s ease both}
.manufacturing-trail summary:focus-visible{outline:2px solid var(--red);outline-offset:5px}
@keyframes manufacturing-reveal{from{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:none}}
.niche-workspace{min-width:0}
.niche-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.niche-card{padding:18px;border:1px solid #b5bca8;background:#f4f4ed;min-width:0}
.niche-card>strong{display:block;font-size:26px;font-weight:500;line-height:1.3;letter-spacing:-.04em;margin:12px 0 7px;font-variant-numeric:tabular-nums}
.niche-card>p{color:#555e4b;font-size:10px}
.is-linked{background:#dce7bc;border-color:#637b3d}
.niche-connector{text-align:center;padding:12px;border-block:1px solid #b5bca8;margin-block:12px;color:#465039}
.stock-ledger{padding:20px;background:#252a25;color:#f1f0e9}
.stock-ledger dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.stock-ledger dt{font-size:10px;color:#c3cdb5}
.stock-ledger dd{margin:8px 0 0;font-size:40px;line-height:1;font-family:var(--heading);font-variant-numeric:tabular-nums}
.storefronts .niche-card{position:relative;padding-top:28px}
.storefronts .niche-card::before{content:'';position:absolute;top:0;left:0;right:0;height:7px;background:repeating-linear-gradient(90deg,#666e58 0 15px,transparent 15px 30px)}
.order-strip{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin-top:18px;padding:13px 0;border-block:1px solid #b5bca8;font-size:11px}
.order-strip strong{font-size:10px;font-weight:500;text-align:right}
.pick-ticket,.handover-note{border:1px solid #b5bca8;padding:18px;margin-top:12px}
.pick-ticket{border-style:dashed}
.pick-ticket p,.handover-note p{margin-top:7px}
.niche-access-test{margin-top:18px;padding-top:15px;border-top:1px solid #b5bca8}
.niche-access-test>span{display:block;font-size:9px;color:#555e4b;margin-bottom:8px}
.niche-access-test button,.restricted-matter button{background:transparent;border:1px solid #7d876e;color:#303b28;padding:9px 12px;font-size:10px;text-align:left}
.niche-notice{margin:12px 0;border-left:3px solid #9c4637;padding:8px 12px;background:#f1e2d9;color:#753729}
.niche-result{border-top:1px solid #b5bca8;margin-top:15px;padding-top:15px}
.niche-result p{margin-top:7px;color:#465039}
.niche-role{border-block:1px solid #b5bca8;padding:12px 0;margin:18px 0}
.niche-role p{font-size:9px;color:#555e4b;margin-bottom:8px}
.niche-role [role=group]{display:flex;gap:5px;flex-wrap:wrap}
.niche-role button{background:transparent;border:1px solid #aeb59e;padding:9px 11px;font-size:10px;text-align:left;color:var(--ink)}
.niche-role button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.dispatch-route{padding:22px;background:#252a25;color:#f1f0e9}
.route-heading{display:flex;justify-content:space-between;gap:15px;align-items:baseline}
.route-heading>span{font-size:9px;color:#d0daae}
.route-drawing{display:flex;align-items:center;margin:32px 10px 12px}
.route-drawing i{width:12px;height:12px;border:2px solid #d0daae;background:#252a25;transform:rotate(45deg);flex-shrink:0}
.route-drawing>span{height:2px;flex:1;background:repeating-linear-gradient(90deg,#d0daae 0 7px,transparent 7px 13px)}
.route-endpoints{display:flex;justify-content:space-between;font-size:11px}
.dispatch-route>p{font-size:8px;color:#c3cdb5;margin-top:18px}
.driver-board{margin:20px 0;padding:0;border:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}
.driver-board legend{font-size:11px;margin-bottom:10px}
.driver-board label{border:1px solid #aeb59e;padding:13px;display:flex;align-items:start;gap:10px;cursor:pointer;background:#f4f4ed}
.driver-board label.is-selected{border-color:#637b3d;background:#dce7bc}
.driver-board input{accent-color:#536737;margin-top:4px;flex-shrink:0}
.driver-board strong,.driver-board small{display:block}
.driver-board strong{font-size:13px}
.driver-board small{font-size:9px;margin-top:5px;color:#555e4b}
.niche-view-note{font-size:9px;color:#555e4b;margin-top:10px}
.production-board{border:1px solid #aeb59e;padding:18px;background:#f4f4ed;margin-bottom:15px}
.station-lane{margin-top:20px}
.station-lane>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:10px;margin-bottom:8px}
.station-lane>div:first-child strong{font-weight:600;flex-shrink:0}
.station-lane>div:first-child span{text-align:right;font-size:9px;color:#555e4b}
.schedule-track{display:flex;gap:6px;min-height:58px;background:repeating-linear-gradient(90deg,#e3e6d9 0 1px,transparent 1px 25%);border:1px solid #c1c8b3;padding:7px}
.job-block{display:grid;place-items:center;min-width:0;flex:1;font-size:11px;background:#252a25;color:#f1f0e9}
.job-block.is-waiting{border:1px dashed #7d876e;background:#e8eade;color:var(--ink)}
.job-block.is-held{background:#f1e2d9;border:1px solid #ad5346;color:#863b2f}
.job-block.is-moved{background:#dce7bc;border:1px solid #637b3d;color:#405326}
.empty-track{font-size:16px;color:#737b66;align-self:center;margin-left:12px}
.invoice-desk>h5{margin-bottom:15px}
.invoice-paper{border:1px solid #b5bca8;background:#faf9f2;padding:18px;position:relative;min-width:0}
.invoice-paper>p{font-size:9px;color:#555e4b;margin-bottom:8px}
.invoice-paper>strong{display:block;font-size:28px;font-weight:500;margin:20px 0 14px;letter-spacing:-.05em;overflow-wrap:anywhere}
.paper-lines{height:45px;background:repeating-linear-gradient(0deg,transparent 0 13px,#d2d6c7 13px 14px);margin-bottom:12px}
.invoice-paper>span{display:block;font-size:9px;color:#555e4b;border-top:1px solid #b5bca8;padding-top:10px}
.invoice-paper.is-duplicate{background:#ece5dd;border-color:#ad5346}
.invoice-paper.is-duplicate>span{color:#863b2f}
.invoice-match{font-size:9px;margin-top:12px;color:#555e4b}
.crm-board>h5{margin-bottom:15px}
.crm-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.crm-lanes>section{min-width:0;min-height:190px;background:#dfe3d3;padding:10px;border-top:2px solid #879473}
.crm-lanes h6{font-size:10px;margin:0 0 18px;font-weight:500}
.deal-card{background:#faf9f2;padding:12px;border:1px solid #b5bca8;box-shadow:0 3px 0 #c6ccba;overflow-wrap:anywhere}
.deal-card>span{display:block;font-size:8px;color:#555e4b;margin-bottom:12px}
.deal-card>strong{font-size:12px;font-weight:600}
.deal-card p{font-size:9px;margin-top:8px}
.lane-empty{font-size:14px;color:#737b66}
.follow-up,.matter-deadline{display:flex;align-items:center;gap:18px;padding:18px;border:1px solid #b5bca8;margin-top:16px}
.calendar-date{border:1px solid #929d80;background:#faf9f2;display:block;font-size:32px;text-align:center;min-width:70px;font-weight:500;line-height:1.2;padding:10px 7px;flex-shrink:0}
.calendar-date small{display:block;border-top:1px solid #b5bca8;margin-top:7px;padding-top:5px;font-size:8px;letter-spacing:.05em}
.follow-up p,.matter-deadline p{margin-top:7px;font-size:10px}
.matter-folder{border:1px solid #b5bca8;border-top:7px solid #929d80;padding:20px;background:#f4f4ed}
.matter-deadline{border:0;border-bottom:1px solid #b5bca8;padding:0 0 20px;margin:20px 0}
.document-versions>div{display:flex;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid #c1c8b3;font-size:10px}
.document-versions strong{font-weight:500;font-size:9px;text-align:right}
.document-versions .is-current{background:#dce7bc;padding-inline:10px;border-color:#637b3d}
.matter-reminder{font-size:10px;color:#465039;margin-top:16px}
.restricted-matter{padding:35px 22px;text-align:center;background:#252a25;color:#f1f0e9}
.restricted-matter>svg{width:28px;height:32px;fill:none;stroke:#d0daae;margin-bottom:15px}
.restricted-matter p{margin:12px 0 18px;color:#c3cdb5}
.restricted-matter button{color:#f1f0e9;border-color:#b5bca8}
.niche-advance .niche-workspace{animation:manufacturing-reveal .4s ease both}
@media(max-width:600px){.niche-two{gap:9px}.niche-card,.invoice-paper{padding:14px}.niche-card>strong{font-size:23px}.driver-board{grid-template-columns:1fr}.crm-lanes{grid-template-columns:1fr;gap:10px}.crm-lanes>section{min-height:70px}.crm-lanes h6{margin-bottom:12px}.deal-card{padding:12px;max-width:none}.deal-card>span{margin-bottom:5px}.invoice-paper>strong{font-size:25px}.stock-ledger{padding:16px}.stock-ledger dd{font-size:34px}.stock-ledger dt{font-size:9px}.station-lane>div:first-child{flex-direction:column;gap:3px}.station-lane>div:first-child span{text-align:left}.order-strip{align-items:start}.calendar-date{min-width:58px;font-size:28px}.follow-up{padding:14px;gap:12px}.niche-access-test button{max-width:100%}.invoice-paper h5{overflow-wrap:anywhere}.matter-folder{padding:16px}}
@media(max-width:1100px){.manufacturing-panel{grid-template-columns:1fr}.manufacturing-panel .solution-copy{position:static;max-width:none}.manufacturing-panel .solution-copy>p{max-width:750px}.manufacturing-demo{padding:30px}.manufacturing-evidence{gap:30px}.manufacturing-panel .solution-copy h3{max-width:none}}
@media(max-width:480px){.manufacturing-panel .solution-copy,.manufacturing-demo{padding:20px}.niche-explainer{grid-template-columns:1fr;gap:8px}.manufacturing-stations{gap:8px}.manufacturing-stations article{padding:12px}.machine-counter{flex-wrap:wrap;gap:8px}.machine-counts{gap:12px}.marking-check{grid-template-columns:85px 1fr;padding:12px;gap:12px}.marking-check dl>div{flex-direction:column;gap:0;margin-top:6px}.manufacturing-evidence{grid-template-columns:1fr;gap:25px}.manufacturing-steps li{font-size:9px}.manufacturing-demo h5{font-size:11px}.manufacturing-next{font-size:10px}.manufacturing-next .arrow{flex-shrink:0}}
.engagement{display:grid;grid-template-columns:1fr 1fr 1fr;margin-top:40px;gap:40px;border-top:1px solid #53574c;padding-top:26px}
.engagement h3{font-size:14px;margin-bottom:8px}
.engagement p{font-size:12px;color:#a8af9b;max-width:340px}
.work{padding-block:100px}
.work .section-top>p{color:var(--muted)}
.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 30px}
.project{display:block;min-width:0}
.project:first-child{grid-column:1 / -1}
.project-image{position:relative;overflow:hidden;background:#d9dbd1;padding:32px 32px 0;aspect-ratio:1.42;display:flex;align-items:start}
.project:first-child .project-image{aspect-ratio:2.15;padding:45px 8% 0;background:#dcd6cd}
.project:nth-child(3) .project-image{background:#d9c7ab}
.project:nth-child(4) .project-image{background:#d7dce0}
.project:nth-child(5) .project-image{background:#c9ccbf}
.browser-frame{width:100%;background:#fafaf7;transform:translateY(12px);transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.browser-bar{height:24px;display:flex;align-items:center;gap:4px;padding-inline:12px;font-size:7px;color:#777e6e}
.browser-bar i{width:4px;height:4px;border:1px solid #a0a596;border-radius:50%}
.browser-bar span{margin:auto}
.browser-frame img{height:auto}
.project:hover .browser-frame{transform:translateY(-5px)}
.project-open{position:absolute;right:18px;bottom:18px;display:grid;place-items:center;background:var(--paper);width:45px;height:45px;transition:background .25s}
.project:hover .project-open{background:var(--acid)}
.project-info{display:flex;justify-content:space-between;gap:15px;align-items:baseline;margin-top:18px}
.project-info h3{font-size:23px;letter-spacing:-.8px}
.project-meta{font-size:9px;color:var(--muted);text-align:right}
.portfolio-note{font-size:11px;color:var(--muted);margin-top:35px;border-top:1px solid var(--line);padding-top:18px}
.work-tabs{display:flex;border-bottom:1px solid var(--line);gap:35px;margin-bottom:35px}
.work-tabs button{border:0;border-bottom:2px solid transparent;background:none;padding:15px 0;display:flex;gap:35px;font-size:15px;color:var(--muted);margin-bottom:-1px}
.work-tabs button span{font-size:9px;color:var(--muted);align-self:start;padding-top:3px}
.work-tabs button[aria-selected=true]{border-bottom-color:var(--red);color:var(--ink)}
.software-library{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.software-project{min-width:0;border:1px solid var(--line);background:#e8eade}
.software-project-image{padding:22px 22px 0;overflow:hidden;border-bottom:1px solid var(--line)}
.software-project-top{display:flex;justify-content:space-between;gap:15px;margin-bottom:20px}
.software-project-top .micro{font-size:9px}
.software-screen{background:var(--white);overflow:hidden;aspect-ratio:1600 / 1060;border:1px solid #c5cabb}
.software-screen img{width:100%;height:auto}
.screen-navigation{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:62px;font-size:11px}
.screen-navigation>div{display:flex;align-items:center;gap:12px}
.screen-navigation button{border:0;background:transparent;padding:10px;font-size:20px}
.screen-navigation button:hover{color:var(--red)}
.software-project-body{background:var(--paper);padding:30px}
.software-project-body h3{font-size:32px;letter-spacing:-.04em;margin-bottom:16px}
.software-project-body>p{font-size:14px;color:var(--muted);max-width:530px;min-height:88px}
.software-project-body ul{list-style:none;padding:0;margin:25px 0 30px}
.software-project-body li{border-top:1px solid var(--line);padding:10px 0;font-size:12px}
.access-note{display:block;color:var(--muted);font-size:9px;letter-spacing:.04em;text-transform:uppercase;margin-top:12px}
.marketing-library{border:1px solid var(--line);padding:45px;max-width:900px}
.marketing-library h3{font-size:36px;letter-spacing:-.05em;line-height:1.15;margin:25px 0 20px}
.marketing-library p{font-size:14px;max-width:650px;color:var(--muted);margin-bottom:28px}
#demo-dialog{border:1px solid var(--line);padding:0;background:var(--paper);color:var(--ink);width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto}
#demo-dialog::backdrop{background:rgba(20,25,18,.65);backdrop-filter:blur(4px)}
.request-dialog-inner{padding:35px 40px 40px;position:relative}
.dialog-close{display:block;margin-left:auto;margin-bottom:28px;background:none;border:0;border-bottom:1px solid var(--ink);font-size:12px;padding:6px 0}
.request-dialog-inner .eyebrow{font-size:9px}
.request-dialog-inner h2{font-size:48px;letter-spacing:-.055em;line-height:1.1;margin:18px 0}
.dialog-intro{font-size:13px;color:var(--muted);max-width:550px;margin-bottom:28px}
#demo-request{display:grid;gap:18px}
#demo-request label{display:grid;gap:7px;font-size:11px}
#demo-request input:not([type=checkbox]),#demo-request select,#demo-request textarea{border:1px solid #aeb39f;padding:12px;background:var(--white);color:var(--ink);width:100%;min-width:0;border-radius:0;font-size:14px}
#demo-request textarea{resize:vertical}
#demo-request .request-consent{display:flex;align-items:start;gap:10px;font-size:11px;line-height:1.6}
.request-consent input{accent-color:var(--ink);flex-shrink:0;margin-top:4px;width:16px;height:16px}
.request-privacy{font-size:11px;color:var(--muted)}
.request-privacy summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.request-privacy p{margin-top:10px;line-height:1.7}
.request-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.request-status{font-size:12px;line-height:1.7;color:#9e3324}
.request-status:empty{display:none}
.request-status.request-success{color:#3f5427}
button:disabled{opacity:.6;cursor:wait}
@media(max-width:800px){.software-library{grid-template-columns:1fr}.software-project-body>p{min-height:0}.software-project-body h3{font-size:34px}.brand-lockup{width:138px}.work-tabs{gap:25px}.work-tabs button{gap:20px}.software-project-top .micro{font-size:8px}}
@media(max-width:480px){.brand-lockup{width:123px;gap:6px}.brand-lockup>span{font-size:7px}.language-select{min-width:42px}.language-current{font-size:10px;gap:10px}.work-tabs{gap:22px}.work-tabs button{gap:10px;font-size:13px}.software-project-image{padding:14px 14px 0}.software-project-body{padding:22px}.software-project-body h3{font-size:29px}.screen-navigation{gap:6px;font-size:10px}.screen-navigation>div{gap:5px}.screen-navigation .micro{font-size:9px}.software-project-top{gap:8px}.marketing-library{padding:25px}.marketing-library h3{font-size:31px}.request-dialog-inner{padding:22px}.request-dialog-inner h2{font-size:38px}.request-dialog-inner .form-row{grid-template-columns:1fr}.request-dialog-inner .solid-link{white-space:normal}}
.project-start{padding-block:80px;border-top:1px solid var(--line)}
.project-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:35px 0}
.project-step{border-top:1px solid var(--ink);padding-top:18px;min-width:0}
.project-step h3{font-size:23px;letter-spacing:-.03em;line-height:1.2;margin:16px 0}
.project-step>p:last-child{font-size:13px;color:var(--muted)}
.partner-library h3{font-size:32px;letter-spacing:-.04em}
.partner-library>p{max-width:650px;font-size:14px;color:var(--muted);margin:15px 0 30px}
.partner-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.partner-logo{display:flex;align-items:center;justify-content:center;min-height:180px;padding:35px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white)}
.partner-logo-dark{background:#242424}
.partner-logo img{max-width:180px;max-height:85px;width:100%;height:auto;object-fit:contain;filter:grayscale(1);transition:filter .3s}
.partner-logo:hover img{filter:none}
.service-example{display:grid;grid-template-columns:1.5fr 1fr;gap:7vw;padding:30px;margin:0 0 60px;background:#e5e7db;border-left:3px solid var(--ink)}
.service-example h3{font-size:27px;line-height:1.2;letter-spacing:-.04em;margin:15px 0}
.service-example p{font-size:13px;color:var(--muted)}
.service-example h4{font-size:13px;margin:0 0 15px}
.service-example>div:last-child{border-left:1px solid #bec5b0;padding-left:28px;align-self:center}
.team,.offices{padding-block:70px;border-top:1px solid var(--line)}
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.team-member{border-top:1px solid var(--ink);padding-top:25px}
.team-monogram{display:flex;align-items:center;justify-content:center;width:78px;height:78px;background:#dfe3d5;font-family:var(--heading);font-size:28px;letter-spacing:-.05em;margin-bottom:35px}
.team-member h3{font-size:23px;letter-spacing:-.04em;margin-bottom:8px}
.team-member p{font-size:12px;color:var(--muted)}
.office-map{margin:0;border:1px solid var(--line);background:#e6e9df}
.office-map svg{width:100%;height:auto}
.office-map figcaption{padding:14px 20px;font-size:11px;color:var(--muted);border-top:1px solid var(--line)}
.map-route{fill:none;stroke:#9b7053;stroke-width:1.2;stroke-dasharray:.004 .006}
.map-city circle{fill:var(--red)}
.map-city .map-halo{fill:var(--paper);stroke:var(--red);stroke-width:1}
.map-city text{font-family:var(--body);font-size:16px;fill:var(--ink);paint-order:stroke;stroke:#e6e9df;stroke-width:5px;stroke-linejoin:round}
.office-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;padding-top:25px}
.office-list h3{font-size:30px;letter-spacing:-.04em;margin-top:8px}
.direct-contact{margin-top:35px;display:grid;gap:14px}
.direct-contact p{font-size:12px;color:#f5d6cd;max-width:360px}
.direct-contact a{width:fit-content;font-size:clamp(15px,2.1vw,25px);border-bottom:1px solid #e9907c}
.direct-contact a:last-child{display:flex;align-items:center;gap:15px;font-size:12px}
.enquiry-note a,.request-privacy a{text-decoration:underline;text-underline-offset:3px}
.enquiry .request-consent{display:flex;align-items:flex-start;gap:10px}
.enquiry .request-consent input{width:16px;height:16px;margin-top:4px;padding:0;flex-shrink:0;accent-color:var(--ink)}
.enquiry .request-status{color:var(--paper);border:1px solid #e9907c;padding:12px}
.enquiry .request-status:empty{display:none}
.policy-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:25px;border-bottom:1px solid var(--line)}
.policy-languages{display:flex;gap:15px;font-size:12px}
.policy-languages a[aria-current=page]{border-bottom:1px solid var(--ink)}
.policy{padding-block:70px;max-width:1000px}
.policy h1{font-size:clamp(38px,6vw,72px);line-height:1.08;letter-spacing:-.05em;margin:25px 0}
.policy-intro{font-size:17px;margin:25px 0 45px}
.policy-section{padding:25px 0;border-top:1px solid var(--line)}
.policy-section h2{font-size:24px;letter-spacing:-.03em;margin-bottom:15px}
.policy-section p{color:var(--muted);font-size:15px;line-height:1.8}
.policy a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.project-steps{grid-template-columns:1fr}.team-grid,.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-example{grid-template-columns:1fr;gap:25px}.service-example>div:last-child{border-left:0;border-top:1px solid #bec5b0;padding:20px 0 0}.map-city text{font-size:21px}}
@media(max-width:480px){.team-grid{grid-template-columns:1fr}.team-member{display:grid;grid-template-columns:60px 1fr;column-gap:18px}.team-monogram{grid-row:span 2;width:60px;height:60px;margin:0}.team-member h3{font-size:22px}.partner-logo{min-height:125px;padding:22px}.office-list{grid-template-columns:1fr;gap:18px}.office-list article{border-bottom:1px solid var(--line);padding-bottom:18px}.office-list h3{font-size:26px}.service-example{padding:22px}.service-example .micro{font-size:9px}.policy-header{flex-wrap:wrap}.map-city text{font-size:26px}}
.security{background:#dfe3d5;padding-block:90px}
.security-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:9vw;margin-top:45px}
.security h2{font-size:clamp(40px,5vw,76px);letter-spacing:-.06em;line-height:1.07}
.security-intro{font-size:14px;color:#606856;margin:25px 0 30px;max-width:410px}
.permission-lab{border:1px solid #adb59e;padding:22px;max-width:450px}
.permission-lab .micro{margin-bottom:15px}
.permission-roles{display:flex;gap:6px;margin-bottom:18px}
.role-button{border:1px solid #aab39a;background:transparent;padding:9px 12px;font-size:11px}
.role-button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.permission-row{display:flex;justify-content:space-between;padding:11px 0;border-top:1px solid #b5bea7;font-size:11px}
.permission-row span:last-child{font-family:monospace;font-size:11px}
.permission-denied{color:#973b29}
.permission-note{font-size:10px;color:#606856;margin-top:15px}
.access-model{width:100%;border-collapse:collapse;table-layout:fixed;margin-top:4px}
.access-model caption{text-align:left;margin-bottom:12px}
.access-model th[scope=col]{text-align:right;font-size:8px;letter-spacing:.02em;text-transform:uppercase;color:#6b755c;font-weight:600;padding:0 0 10px 6px;white-space:nowrap}
.access-model th[scope=row]{text-align:left;font-weight:500;font-size:12px;line-height:1.25;padding:11px 10px 11px 0;border-top:1px solid #b5bea7;overflow-wrap:break-word;hyphens:auto}
.access-model td{text-align:right;font-family:monospace;font-size:8px;letter-spacing:0;padding:11px 0 11px 6px;border-top:1px solid #b5bea7;vertical-align:top;white-space:nowrap}
.access-model th[scope=col],.access-model .permission-allowed,.access-model .permission-denied{width:23%}
.access-model thead td,.access-model thead th{border-top:0}
.permission-allowed{color:var(--ink)}
.security-items{border-top:1px solid #adb59e}
.security-item{padding:22px 0;border-bottom:1px solid #adb59e;display:grid;grid-template-columns:35px 1fr;gap:15px}
.security-item>span{font-size:10px;color:#6b755c;margin-top:6px}
.security-item h3{font-size:20px;letter-spacing:-.6px;margin-bottom:7px}
.security-item p{font-size:13px;color:#606856;max-width:440px}
.security-disclaimer{font-size:10px;color:#606856;margin-top:20px;max-width:500px}
.other-services{padding-block:100px}
.offering{display:grid;grid-template-columns:.95fr 1fr .95fr;gap:50px;border-top:1px solid var(--line);padding:45px 0 65px}
.offering h2{font-size:clamp(34px,3.2vw,50px);line-height:1.08;letter-spacing:-.05em;margin-top:24px}
.offering-content{padding-top:35px}
.offering-content>p{font-size:14px;color:var(--muted);margin-bottom:24px;max-width:390px}
.offering ul{list-style:none;padding:0;margin:0 0 30px}
.offering li{padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}
.site-specimen{background:#dedfd6;padding:25px;align-self:stretch;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.type-art{font-size:clamp(45px,5vw,80px);font-family:Georgia,serif;letter-spacing:-.07em;line-height:1}
.type-art em{color:var(--red)}
.specimen-line{height:1px;background:#a9afa0;margin:30px 0 18px}
.specimen-bottom{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.08em}
.marketing-art{background:var(--red);color:var(--paper)}
.marketing-art .type-art{font-family:var(--heading);font-weight:650;font-size:clamp(40px,4.2vw,65px);letter-spacing:-.055em}
.marketing-art .specimen-line{background:rgba(255,255,255,.5)}
.target{width:110px;height:110px;border:1px solid rgba(255,255,255,.5);border-radius:50%;position:absolute;top:20px;right:-20px}
.target::before,.target::after{content:'';position:absolute;border:1px solid rgba(255,255,255,.5);border-radius:50%;inset:17px}
.target::after{inset:35px}
.process{border-top:1px solid var(--line);padding-block:70px 100px}
.process-list{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:40px}
.process-no{font-size:48px;letter-spacing:-3px;color:#989e8c;border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:20px}
.process-list h3{font-size:18px;margin-bottom:12px}
.process-list p{font-size:13px;color:var(--muted);max-width:260px}
.contact{background:var(--red);color:var(--paper);padding-block:80px}
.contact .section-no{color:var(--paper);opacity:.65}
.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:10vw;margin-top:45px}
.contact h2{font-size:clamp(48px,6.1vw,95px);letter-spacing:-.065em;line-height:1.03}
.contact-copy>p{max-width:360px;margin-top:26px;font-size:14px;color:#f5d6cd}
.enquiry{display:grid;gap:18px}
.enquiry label{font-size:11px;display:grid;gap:7px}
.enquiry input,.enquiry select,.enquiry textarea{width:100%;min-width:0;padding:12px 0;border:0;border-bottom:1px solid #e9907c;background:transparent;color:var(--paper);outline-offset:5px;font-size:14px;border-radius:0}
.enquiry option{color:var(--ink);background:var(--paper)}
.enquiry textarea{resize:vertical;min-height:75px}
.enquiry input::placeholder,.enquiry textarea::placeholder{color:#eab1a1}
.enquiry .solid-link{width:100%;margin-top:6px}
.enquiry-note{font-size:10px;color:#f5d6cd}
.enquiry-consent{font-size:11px;line-height:1.6}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.footer{padding-block:50px 25px}
.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:45px}
.footer-links{display:flex;gap:25px;font-size:12px}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid var(--line);font-size:9px;color:var(--muted)}
.reveal{opacity:1;transform:none}
.motion-ready .reveal:not(.in-view){opacity:0;transform:translateY(38px)}
.motion-ready .reveal{transition:opacity .85s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms),transform 1.1s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms)}
.panel-enter{animation:panel-in .45s cubic-bezier(.2,.8,.2,1)}
@keyframes panel-in{from{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:none}}
.no-script{padding:80px}
@media(min-width:1500px){.hero-main{min-height:670px}.system-art{height:600px}.art-stage{width:400px;height:410px}.hero h1{font-size:120px}}
@media(max-width:1100px){.navigation{gap:20px}.header-contact{display:none}.hero-main{grid-template-columns:1.15fr 1fr}.hero h1{font-size:clamp(60px,8vw,90px)}.art-stage{width:290px;height:310px}.system-art{height:450px}.annotation-one{right:-10px}.annotation-two{bottom:50px}.solution-copy{padding:25px}.demo{padding:20px}.industry-button{font-size:9px}.offering{gap:25px}.security-grid{gap:45px}}
@media(max-width:800px){:root{--pad:25px}.header-inner{height:75px}.menu-toggle{display:block}.header-tools{gap:18px}.navigation{display:flex;position:absolute;top:75px;left:0;right:0;background:var(--paper);padding:30px 25px 45px;border-bottom:1px solid var(--ink);flex-direction:column;align-items:start;gap:25px;font-size:24px;visibility:hidden;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .34s ease,transform .34s cubic-bezier(.22,.61,.36,1),visibility 0s linear .34s}.navigation.open{visibility:visible;opacity:1;transform:none;pointer-events:auto;transition:opacity .34s ease,transform .34s cubic-bezier(.22,.61,.36,1),visibility 0s}.navigation>a{opacity:0;transform:translateY(8px);transition:opacity .3s ease,transform .3s ease}.navigation.open>a{opacity:1;transform:none}.navigation.open>a:nth-child(1){transition-delay:.05s}.navigation.open>a:nth-child(2){transition-delay:.1s}.navigation.open>a:nth-child(3){transition-delay:.15s}.navigation.open>a:nth-child(4){transition-delay:.2s}.hero-meta .micro{display:none}.hero-main{min-height:auto;grid-template-columns:1fr}.hero-copy{padding-bottom:0}.hero h1{font-size:clamp(60px,11vw,90px);max-width:680px}.hero-description{max-width:460px}.system-art{height:420px;max-width:550px;width:100%;justify-self:center}.art-stage{width:310px;height:320px}.annotation-one{right:25px}.annotation-two{left:10px;bottom:50px}.service-index a{gap:8px;padding:20px 10px 20px 0;grid-template-columns:20px 1fr auto}.service-index a+a{padding-left:14px}.service-index strong{font-size:12px}.intro{grid-template-columns:1fr;padding-block:75px;gap:25px}.section-top{flex-direction:column;gap:20px;margin-bottom:35px}.section-top>p{align-self:start;max-width:470px}.section-top h2{font-size:52px}.industry-tree{grid-template-columns:repeat(4,1fr);gap:9px;margin-top:35px}.industry-tree::before,.industry-button::before,.tree-root::after{display:none}.industry-button{font-size:10px}.solution-panel{grid-template-columns:1fr}.solution-copy{padding:30px}.demo{min-height:420px;padding:30px}.outcomes{margin-top:25px}.engagement{gap:20px}.work{padding-block:75px}.work-grid{gap:35px 20px}.project-image{padding:20px 20px 0}.project:first-child .project-image{padding:25px 25px 0;aspect-ratio:1.6}.project-info{flex-direction:column;gap:5px}.project-meta{text-align:left}.pricing-grid{grid-template-columns:1fr}.security-grid{grid-template-columns:1fr;gap:40px}.permission-lab{max-width:none}.security-intro{max-width:550px}.security h2{max-width:600px}.offering{grid-template-columns:1fr 1fr}.offering-heading{grid-column:1 / -1}.offering h2{font-size:48px;max-width:500px}.offering-content{padding-top:0}.site-specimen{min-height:280px}.process-list{grid-template-columns:1fr 1fr;gap:35px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact h2{max-width:620px}.footer-top{align-items:start}.footer-links{flex-wrap:wrap;justify-content:end;max-width:210px;gap:15px}.footer-bottom{flex-wrap:wrap}}
@media(max-width:480px){:root{--pad:20px}.hero{padding-top:30px}.wordmark{font-size:20px}.brand{gap:9px}.brand svg{width:28px}.header-tools{gap:12px}.languages{gap:8px}.hero h1{font-size:58px}.hero-description{font-size:14px}.hero-cta{gap:16px}.hero-caption{font-size:10px}.solid-link{padding:16px 18px;gap:20px;font-size:12px}.system-art{height:360px}.art-stage{width:255px;height:275px}.art-plate{padding:15px;gap:8px}.art-logo{width:80px}.annotation-one{top:25px;right:0;font-size:8px}.annotation-two{bottom:40px;font-size:8px}.art-coordinate{font-size:8px}.art-instruction{font-size:8px}.service-index{grid-template-columns:1fr}.service-index a,.service-index a+a{padding:17px 0;border-left:0}.service-index a+a{border-top:1px solid var(--line)}.service-index strong{font-size:14px}.intro h2{font-size:34px}.intro-bottom{grid-template-columns:1fr;gap:20px}.section-top h2{font-size:44px}.software{padding-block:65px}.tree-head{align-items:start;gap:15px;margin-top:30px}.tree-root{padding:12px;font-size:9px;white-space:nowrap}.tree-head>p{font-size:11px}.industry-tree{grid-template-columns:repeat(2,1fr);margin-top:22px}.industry-button:last-child{grid-column:1 / -1}.solution-copy{padding:22px}.solution-copy h3{font-size:32px}.outcomes{gap:18px}.demo{padding:20px;min-height:410px}.demo-toolbar{gap:8px}.demo-label{font-size:8px;text-align:right}.flow-node{font-size:7px;padding:13px 4px}.table-head,.table-row{font-size:8px}.engagement{grid-template-columns:1fr;gap:24px}.work-grid{grid-template-columns:1fr}.project:first-child{grid-column:auto}.project:first-child .project-image,.project-image{aspect-ratio:1.45;padding:20px 20px 0}.project-info{flex-direction:row;align-items:baseline}.project-meta{max-width:130px;text-align:right}.project-info h3{font-size:21px}.security{padding-block:65px}.security h2{font-size:46px}.offering{grid-template-columns:1fr;gap:30px;padding-bottom:50px}.offering-heading{grid-column:auto}.site-specimen{min-height:320px}.type-art{font-size:80px}.marketing-art .type-art{font-size:65px}.other-services{padding-block:65px 20px}.process{padding-block:55px 65px}.process-list{gap:26px 20px}.process-list h3{font-size:16px}.process-list p{font-size:12px}.process-no{font-size:38px}.contact{padding-block:60px}.contact h2{font-size:57px}.form-row{grid-template-columns:1fr}.footer-top{flex-direction:column}.footer-links{justify-content:start;max-width:none}.footer-bottom{font-size:8px}.art-cell{font-size:8px}}
@media(max-width:480px){html[lang=de] .hero h1{font-size:clamp(42px,12vw,58px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready .reveal:not(.in-view){opacity:1;transform:none}.art-stage{transform:rotateX(54deg) rotateZ(-34deg)!important}}

.hero{padding-top:30px}
.hero-meta{gap:20px}
.signature-edition{display:flex;align-items:center;gap:16px;white-space:nowrap}
.signature-edition span{font-size:9px;letter-spacing:.13em}
.hero-main{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);min-height:660px;gap:0}
.hero-copy{padding-block:65px;z-index:3}
.hero h1{font-size:clamp(62px,7vw,112px)}
.hero h1 em{color:var(--violet)}
.hero-description{max-width:395px}
.hero-caption{max-width:120px}
.signature-scene{position:relative;width:100%;height:660px;isolation:isolate}
.signature-media{position:absolute;margin:0;inset:0 3% 30px;transform:translate3d(var(--head-x,0px),var(--head-y,0px),0) rotate(var(--head-turn,0deg));transition:transform .7s cubic-bezier(.2,.8,.2,1);mask-image:linear-gradient(to right,transparent,#000 2.5%,#000 97.5%,transparent),linear-gradient(to bottom,transparent,#000 2%,#000 98%,transparent);mask-composite:intersect;background:var(--paper);z-index:1}
.signature-media img,.signature-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.signature-video{opacity:0;transition:opacity .5s}
.signature-playing .signature-video{opacity:1}
.signature-controls{position:absolute;bottom:2px;inset-inline:7%;display:flex;align-items:center;justify-content:space-between;gap:15px;z-index:4}
.signature-caption{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.signature-toggle{display:flex;align-items:center;gap:8px;min-height:44px;background:transparent;border:0;border-bottom:1px solid var(--line);font-size:10px;padding:8px 0}
.signature-toggle[hidden]{display:none}
.signature-toggle>span:first-child{color:var(--violet);font-size:10px}
.signature-status:not(.sr-only){position:absolute;bottom:48px;left:7%;z-index:4;font-size:10px;max-width:80%;background:var(--paper);padding:5px}
.hero-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-block:20px 24px}
.hero-scroll{display:inline-flex;align-items:center;gap:16px;font-size:11px}
.hero-scroll>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;color:var(--violet);transition:transform .3s}
.hero-scroll:hover>span{transform:translateY(3px)}
.hero-disciplines{font-size:9px;letter-spacing:.07em;color:var(--muted);text-transform:uppercase;text-align:right}
.intro h2>span:not(.motion-word){color:#8e7c9a}
.security{background:#e7e2eb}
.security-intro,.permission-note,.security-item p,.security-disclaimer{color:#5f5865}
.permission-lab,.security-items,.security-item{border-color:#bcb2c4}
.permission-row{border-color:#c3b9ca}
.site-specimen{background:#e3dee6}
.marketing-art{background:var(--red)}
@media(min-width:1600px){.hero-main{min-height:750px}.signature-scene{height:750px}}
@media(min-width:801px) and (max-width:1100px){.hero-main{min-height:580px}.signature-scene{height:580px}.hero h1{font-size:clamp(60px,7.2vw,80px)}.hero-caption{display:none}.signature-caption{max-width:130px}}
@media(max-width:800px){
  .hero{padding-top:25px}.hero-meta .micro{display:block}.hero-meta>.micro:first-child{font-size:9px}.signature-edition{gap:8px}.signature-edition span{display:none}
  .hero-main{grid-template-columns:1fr;min-height:0}.hero-copy{padding-block:35px 8px;max-width:660px}.hero h1{font-size:clamp(56px,10.5vw,86px)}.hero-description{max-width:460px;margin-block:22px}.hero-caption{max-width:130px}
  .signature-scene{height:auto;max-width:580px;margin:10px auto 0}
  .signature-scene::before{content:'';display:block;aspect-ratio:800/862}
  .signature-media{inset:0 2% auto;height:auto;aspect-ratio:800/862}
  .signature-controls{position:relative;inset:auto;margin-top:10px;padding-bottom:18px}
  .signature-status:not(.sr-only){position:relative;inset:auto;max-width:100%;padding-bottom:12px}
  .hero-footer{padding-block:16px;gap:15px}.hero-disciplines{display:none}.intro{padding-top:70px}
}
@media(max-width:480px){
  .hero h1{font-size:clamp(51px,13vw,64px)}html[lang=de] .hero h1{font-size:clamp(40px,10.5vw,53px)}.hero-description{font-size:14px}.hero-cta{flex-wrap:wrap;gap:14px}.hero-caption{max-width:135px}
  .signature-scene{margin-top:8px}.signature-controls{gap:10px}.signature-caption{font-size:8px;max-width:160px}.signature-toggle{font-size:10px}
}
@media(prefers-reduced-motion:reduce){.signature-video{display:none}.signature-toggle{display:none}}

::view-transition-old(root){animation:page-out .24s ease both}
::view-transition-new(root){animation:page-in .5s cubic-bezier(.22,1,.36,1) both}
@keyframes page-out{to{opacity:0;transform:translateY(-12px)}}
@keyframes page-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.reading-progress{position:fixed;inset:0 0 auto;height:2px;z-index:45;background:var(--cobalt);transform:scaleX(var(--reading,0));transform-origin:left;pointer-events:none}
.navigation>a[aria-current=location]::after{transform:scaleX(1)}
.flow-section{position:relative}
.flow-section:not(.hero)::before{content:'';position:absolute;inset:0 auto auto 0;width:100%;height:1px;background:currentColor;opacity:.22;transform:scaleX(clamp(0,calc(var(--flow,0) * 2.4),1));transform-origin:left;pointer-events:none}
.flow-section .section-label{transition:color .5s}
.flow-section .site-specimen .type-art{transform:translateY(calc((.5 - var(--flow,.5)) * 36px))}
@media(max-width:800px){.flow-section .site-specimen .type-art{transform:none}}
@media(prefers-reduced-motion:reduce){
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
  .flow-section .site-specimen .type-art{transform:none}
  .flow-section::before{transform:none!important}
}

.scroll-choreography .reveal,.scroll-choreography .reveal:not(.in-view){opacity:1;transform:none;transition:none}
.scroll-choreography .motion-heading{perspective:900px}
.motion-word{display:inline-block;vertical-align:top;overflow:clip;padding-bottom:.16em;margin-bottom:-.16em;max-width:100%}
.motion-word>span{display:inline-block;overflow-wrap:anywhere;max-width:100%}
.scroll-choreography .motion-word>span{--word-progress:clamp(0,calc(var(--motion,1) * 1.65 - var(--word-step,0) * .65),1);transform:translateY(calc((1 - var(--word-progress)) * 112%)) rotateZ(calc((1 - var(--word-progress)) * 6deg));transform-origin:left bottom}
.scroll-choreography [data-scroll-scene]{--arrival:var(--motion,1);--distance:calc(1 - var(--arrival));transform-origin:center top}
.scroll-choreography [data-scroll-scene="slide"]{transform:translateY(calc(var(--distance) * 65px));clip-path:inset(0 0 calc(var(--distance) * 55%) 0)}
.scroll-choreography [data-scroll-scene="unfold"]{transform:perspective(1400px) translateY(calc(var(--distance) * 95px)) rotateX(calc(var(--distance) * -9deg)) scale(calc(.92 + var(--arrival) * .08));clip-path:inset(0 calc(var(--distance) * 7%) calc(var(--distance) * 22%) round calc(var(--distance) * 36px))}
.scroll-choreography [data-scroll-scene="card"]{transform:perspective(1100px) translateY(calc(var(--distance) * (65px + var(--motion-index,0) * 18px))) rotateX(calc(var(--distance) * -12deg));clip-path:inset(0 0 calc(var(--distance) * 35%) 0)}
.scroll-choreography [data-scroll-scene="image"]{transform:perspective(1200px) scale(calc(.84 + var(--arrival) * .16)) rotateX(calc(var(--distance) * 14deg));clip-path:inset(calc(var(--distance) * 12%) calc(var(--distance) * 9%) round calc(var(--distance) * 60px))}
.scroll-choreography .site-specimen .type-art{transform:translateY(calc((.5 - var(--passage,.5)) * 100px)) rotate(calc((.5 - var(--passage,.5)) * -8deg))}
.scroll-choreography .marketing-art .target{transform:translate(-50%,-50%) rotate(calc(var(--passage,0) * 95deg)) scale(calc(.8 + var(--passage,0) * .4))}
.scroll-choreography .office-map .map-route{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--motion,1))}
.scroll-choreography .office-map .map-halo{transform-box:fill-box;transform-origin:center;scale:calc(.3 + var(--motion,1) * .7)}
.scroll-choreography [data-scroll-scene][data-motion-focus="true"]{--arrival:1;transform:none;clip-path:none}
@media(min-width:1000px) and (min-height:700px){
  .scroll-choreography .process{display:grid;grid-template-columns:1fr 1.15fr;align-items:start;gap:7vw;padding-top:100px}
  .scroll-choreography .process>.section-top{position:sticky;top:130px;margin-bottom:0}
  .scroll-choreography .process-list{display:block;margin-top:0;padding-bottom:15vh}
  .scroll-choreography .process-list>div{position:sticky;top:calc(125px + var(--motion-index,0) * 35px);min-height:310px;margin-bottom:18vh;padding:28px 32px 38px;background:var(--paper);border:1px solid var(--line);box-shadow:0 -12px 30px rgba(35,33,38,.04);clip-path:none}
  .scroll-choreography .process-list p{max-width:420px;font-size:15px}
  .scroll-choreography .process-list h3{font-size:26px}
  .scroll-choreography .process-no{font-size:60px;color:var(--violet);padding-bottom:18px;margin-bottom:22px}
  .scroll-choreography .security-grid>div:first-child{position:sticky;top:120px}
}
@media(max-width:800px){
  .scroll-choreography [data-scroll-scene="unfold"]{transform:perspective(1000px) translateY(calc(var(--distance) * 45px)) rotateX(calc(var(--distance) * -5deg)) scale(calc(.95 + var(--arrival) * .05))}
  .scroll-choreography .site-specimen .type-art{transform:translateY(calc((.5 - var(--passage,.5)) * 45px))}
}
@media(prefers-reduced-motion:reduce){
  .motion-word{display:inline;overflow:visible}
  .motion-word>span,.scroll-choreography [data-scroll-scene],.scroll-choreography .site-specimen .type-art,.scroll-choreography .marketing-art .target{transform:none!important;clip-path:none!important}
  .scroll-choreography .office-map .map-route{stroke-dashoffset:0}
}


.signature-poster,.signature-video{background:var(--paper)}
.motion-ready .signature-scene{animation:head-arrive 1.15s cubic-bezier(.22,1,.36,1) both}
@keyframes head-arrive{from{opacity:0;transform:translateY(24px) scale(.975)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.signature-media,.signature-scene{transform:none!important;animation:none!important}}

/* === Software record story (purposeful dark field on light site) === */
.software-story{--sline:#53574c;--smut:#b4b8aa}
.software-story .section-top{margin-bottom:40px}
.software-story .section-top h2{max-width:800px}
.software-story .section-top>p{color:var(--smut);align-self:end}
.story-index{display:flex;flex-wrap:wrap;gap:10px 24px;border-block:1px solid var(--sline);padding:20px 0;margin-bottom:6px}
.story-index a{font-size:12px;color:var(--smut);display:flex;align-items:center;gap:10px;min-height:34px}
.story-index a:hover{color:var(--paper)}
.story-index a>span:first-child{color:var(--acid);font-size:11px}
.story-chapters{display:grid}
.story-chapter{display:grid;grid-template-columns:1fr 1.05fr;gap:7vw;border-top:1px solid var(--sline);padding-block:80px;position:relative;min-height:620px;scroll-margin-top:100px}
.story-chapter:first-child{border-top:0}
.story-chapter::before{content:'';position:absolute;inset:-1px auto auto 0;width:100%;height:2px;background:var(--chapter-color,var(--acid));transform:scaleX(var(--chapter,0));transform-origin:left}
.story-copy{padding-top:4px;max-width:510px}
.story-chapter-label{display:flex;flex-wrap:wrap;gap:18px;color:var(--chapter-color,var(--acid));font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:24px}
.story-chapter-label>span{color:var(--smut)}
.story-copy h3{font-size:clamp(32px,3.6vw,52px);letter-spacing:-.04em;line-height:1.08;margin-bottom:22px}
.story-problem{font-size:15px;color:var(--smut);line-height:1.8}
.story-benefit{margin-top:26px;border-left:2px solid var(--chapter-color,var(--acid));padding-left:18px}
.story-benefit h4{font-size:15px;font-weight:550;letter-spacing:-.01em;line-height:1.4;margin:0 0 8px}
.story-benefit p{font-size:12px;line-height:1.7;color:var(--smut)}
.story-compare{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;margin-top:26px;text-align:left;background:transparent;color:var(--chapter-color,var(--acid));border:1px solid var(--sline);padding:15px 18px;font:inherit;font-size:12px;cursor:pointer;min-height:48px;transition:border-color .25s}
.story-compare:hover,.story-compare[aria-pressed=true]{border-color:var(--chapter-color,var(--acid))}
.story-compare:focus-visible{outline:2px solid var(--chapter-color,var(--acid));outline-offset:4px}
.story-stage{align-self:start;min-width:0}
.record-visual{margin:0;border:1px solid var(--sline);background:#1d1c27;padding:24px}
.record-visual-top{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px}
.record-visual-top .micro{color:var(--chapter-color,var(--acid));font-size:9px}
.record-state{display:flex;gap:10px;font-size:9px;border:1px solid var(--sline);padding:7px 11px;flex-shrink:0}
.record-state .state-before{color:var(--smut);opacity:.6}
.record-state .state-after{color:var(--chapter-color,var(--acid))}
.story-chapter.show-before .state-before{opacity:1;color:var(--chapter-color,var(--acid))}
.story-chapter.show-before .state-after{opacity:.5;color:var(--smut)}
.record-art{min-height:236px;display:grid;align-content:center;gap:16px}
.record-card{border:1px solid var(--chapter-color,var(--acid));background:#15141d;padding:16px 18px}
.record-card .record-tag{display:block;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--chapter-color,var(--acid));margin-bottom:13px}
.record-card ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.record-card li{display:flex;justify-content:space-between;gap:16px;font-size:12px;border-bottom:1px solid var(--sline);padding-bottom:8px}
.record-card li:last-child{border-bottom:0;padding-bottom:0}
.record-card li span{color:var(--smut)}
.record-card li b{font-weight:500}
.record-single{display:grid;justify-items:center;gap:16px}
.record-single .record-card{width:min(100%,330px)}
.record-stamp{font-size:11px;color:var(--chapter-color,var(--acid));border:1px solid var(--chapter-color,var(--acid));padding:7px 15px;letter-spacing:.08em}
.record-scatter{display:grid;gap:14px}
.scatter-arrow{justify-self:center;color:var(--smut);font-size:18px}
.tool-copies{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.tool-copy{border:1px solid var(--sline);background:#15141d;padding:12px 11px;display:grid;gap:5px}
.tool-copy>span{color:var(--smut);font-size:9px}
.tool-copy b{font-weight:500;font-size:12px}
.copy-flag{font-size:8px;color:var(--chapter-color,var(--acid));letter-spacing:.06em;text-transform:uppercase}
.story-chapter.show-before .tool-copy{border-color:var(--chapter-color,var(--acid))}
.record-connected{display:grid;gap:14px;justify-items:center}
.tool-row{display:flex;gap:9px;flex-wrap:wrap;justify-content:center}
.tool-chip{border:1px solid var(--sline);padding:8px 13px;font-size:10px;color:var(--smut)}
.connect-lines{width:1px;height:28px;background:var(--chapter-color,var(--acid));position:relative}
.connect-lines::before{content:'';position:absolute;top:0;left:50%;width:min(240px,46vw);height:1px;background:var(--sline);transform:translateX(-50%)}
.record-connected .record-card{width:min(100%,330px)}
.story-chapter.show-before .connect-lines{background:transparent}
.story-chapter.show-before .connect-lines::before{opacity:.4}
.story-chapter.show-before .record-connected .record-card{border-color:var(--sline)}
.story-chapter.show-before .record-connected .record-stamp{opacity:.4}
.record-access{display:grid;gap:15px}
.record-access .record-card{width:100%}
.role-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.role-list li{display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:11px;border:1px solid var(--sline);padding:11px 14px}
.role-list li span{color:var(--paper)}
.role-list li b{font-weight:400;color:var(--chapter-color,var(--acid));font-size:10px}
.record-visual figcaption{margin-top:20px;padding-top:14px;border-top:1px solid var(--sline);font-size:9px;color:var(--smut);text-align:center;letter-spacing:.04em;line-height:1.6}
.story-evidence{padding:70px 0;border-top:1px solid var(--sline)}
.evidence-heading{display:grid;grid-template-columns:1fr 1fr;gap:16px 7vw;align-items:end}
.evidence-heading>.micro{grid-column:1/-1;color:var(--acid)}
.evidence-heading h3{font-size:clamp(28px,3.4vw,46px);line-height:1.15;letter-spacing:-.03em}
.evidence-heading>p:last-child{color:var(--smut);font-size:14px;line-height:1.8}
.evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:40px}
.evidence-grid article{border-top:1px solid var(--acid);padding-top:22px}
.evidence-grid strong{display:block;font-size:22px;font-weight:550;letter-spacing:-.02em}
.evidence-grid small{display:block;font-size:11px;color:var(--smut);margin-top:5px;font-weight:400}
.evidence-grid h4{font-size:14px;font-weight:550;margin:16px 0 10px}
.evidence-grid p{font-size:12px;line-height:1.75;color:var(--smut)}
.software-story .engagement{border-top:1px solid var(--sline);border-bottom:0;margin-top:0;padding-top:42px}
.software-story .engagement h3{color:var(--paper);font-size:18px;margin-bottom:10px}
.software-story .engagement p{color:var(--smut);font-size:13px;line-height:1.8}
.story-consultation{margin-top:38px;background:var(--paper);color:var(--ink);border-color:var(--paper)}
.story-consultation:hover{background:var(--cobalt);color:var(--white);border-color:var(--cobalt)}
.scroll-choreography .story-chapter{--chapter:0}
.story-chapter.show-before{--chapter:0!important}
@media(min-width:1000px) and (min-height:720px){.story-stage{position:sticky;top:110px}.story-chapter{min-height:740px}.story-copy{padding-bottom:40px}}
@media(max-width:999px),(max-height:719px){.story-chapter{min-height:0}.story-stage{position:static}}
@media(max-width:800px){.story-chapter{grid-template-columns:1fr;min-height:0;padding-block:55px;gap:32px}.story-copy{max-width:660px}.story-copy h3{font-size:clamp(34px,6.6vw,46px)}.story-stage{max-width:600px;width:100%;justify-self:center}.evidence-heading{grid-template-columns:1fr}.evidence-grid{grid-template-columns:1fr;gap:28px}.story-evidence{padding-block:55px}.software-story{padding-block:70px}.story-index{gap:6px 20px}.tool-copies{grid-template-columns:1fr}}
@media(max-width:480px){.story-copy h3{font-size:36px}.story-chapter-label{font-size:9px;gap:14px}.record-visual{padding:18px}.story-index a{font-size:11px}}


/* === Signature-hue color fields (echo the head's cobalt & violet lighting) === */
.process{background:var(--cobalt);color:var(--paper);border-top:0}
.process .section-no{color:var(--paper);opacity:.65}
.process .section-label .micro{color:#c3ccf4}
.process h2{color:var(--paper)}
.process-list>div{background:var(--paper);border:1px solid var(--line);padding:24px 22px 30px}
@media(max-width:620px){.process-list{grid-template-columns:1fr;gap:18px}.process-list>div{padding:22px 20px 26px}}

.offices{background:var(--violet);color:var(--paper);border-top:0}
.offices .section-no{color:var(--paper);opacity:.65}
.offices .section-label .micro{color:#dcccea}
.offices h2{color:var(--paper)}
.offices .section-top>p{color:#e7ddee}
.office-map{border-color:rgba(255,255,255,.3)}
.office-list .micro{color:#d8c8e7}
.office-list h3{color:var(--paper)}
.office-tel{display:inline-block;margin-top:12px;font-size:14px;letter-spacing:.01em;color:var(--paper);border-bottom:1px solid rgba(255,255,255,.45);width:fit-content;transition:border-color .2s ease}
.office-tel:hover{border-bottom-color:var(--paper)}
.office-presence h3{color:var(--paper)}
.office-presence .micro{color:#d8c8e7}

/* Regional click-to-call in the contact block (red field) */
.contact-phones{margin-top:6px}
.contact-phones-title{color:#f6d9d0;margin-bottom:14px}
.contact-phones ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.contact-phones li{display:flex;flex-direction:column;gap:4px}
.contact-phones li .micro{color:#f2c6bc}
.contact-phones a{width:fit-content;font-size:clamp(16px,2.2vw,22px);border-bottom:1px solid #e9907c;color:var(--paper);transition:border-color .2s ease}
.contact-phones a:hover{border-bottom-color:var(--paper)}
.contact-social{margin-top:4px}

/* Welcome entry sequence (optional, brief, skippable) */
.welcome-running{overflow:hidden}
.welcome-sequence{position:fixed;inset:0;z-index:200;display:grid;place-items:center;background:var(--paper);animation:welcome-fade .5s ease forwards;animation-delay:1.35s}
.welcome-panel{position:absolute;top:0;bottom:0;width:50%;background:var(--ink);animation:welcome-part .95s cubic-bezier(.76,0,.24,1) forwards}
.welcome-panel-left{left:0;transform-origin:left}
.welcome-panel-right{right:0;transform-origin:right}
.welcome-panel-left{animation-name:welcome-part-left}
.welcome-panel-right{animation-name:welcome-part-right}
.welcome-orbit{position:absolute;width:min(62vmin,420px);height:min(62vmin,420px);border:1px solid var(--line);border-radius:50%;border-top-color:var(--cobalt);animation:welcome-spin 1.8s linear}
.welcome-identity{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;opacity:0;animation:welcome-rise .7s ease forwards .55s}
.welcome-identity img{width:min(42vw,236px);height:auto}
.welcome-identity span{letter-spacing:.5em;font-size:11px;color:var(--muted);text-transform:uppercase}
.welcome-identity i{width:38px;height:2px;background:var(--red)}
.welcome-index{position:absolute;top:28px;left:var(--pad);font-size:11px;letter-spacing:.3em;color:var(--muted)}
.welcome-skip{position:absolute;top:22px;right:var(--pad);padding:10px 16px;font-size:11px;letter-spacing:.08em;background:transparent;color:var(--ink);border:1px solid var(--ink);cursor:pointer}
.welcome-skip:hover{background:var(--ink);color:var(--paper)}
@keyframes welcome-fade{to{opacity:0;visibility:hidden}}
@keyframes welcome-part-left{0%,45%{transform:scaleX(1)}100%{transform:scaleX(0)}}
@keyframes welcome-part-right{0%,45%{transform:scaleX(1)}100%{transform:scaleX(0)}}
@keyframes welcome-spin{to{transform:rotate(360deg)}}
@keyframes welcome-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){.welcome-sequence{display:none}}

/* Blog */
.blog-header{position:sticky;top:0;z-index:100;border-bottom:1px solid var(--line);background:var(--paper);transition:transform .22s cubic-bezier(.22,.61,.36,1)}
.blog-header.is-hidden{transform:translateY(-100%)}
.blog-header:focus-within{transform:none;transition:none}
@media(prefers-reduced-motion:reduce){.blog-header{transition:none}}
.blog-header .header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:18px}
.blog-header .brand{font-weight:600;letter-spacing:.02em;text-decoration:none;color:var(--ink)}
.blog-nav{display:flex;gap:22px;align-items:center;font-size:14px}
.blog-nav a{text-decoration:none;color:var(--ink)}
.blog-nav a:hover{color:var(--cobalt)}
@media(max-width:800px){.blog-header .header-inner{height:auto;display:grid;grid-template-columns:1fr auto;gap:14px;padding-block:14px}.blog-nav{grid-column:1/-1;grid-row:2;justify-content:space-between;gap:12px}.blog-lang{grid-column:2;grid-row:1}}
.blog-lang{display:flex;gap:8px;font-size:11px}
.blog-lang a{text-decoration:none;color:var(--muted);border:1px solid var(--line);padding:4px 8px}
.blog-lang a[aria-current="true"]{color:var(--paper);background:var(--ink);border-color:var(--ink)}
.blog-main{min-height:60vh}
.blog-intro{padding-block:clamp(40px,7vw,90px)}
.blog-intro h1{font-family:var(--heading);font-size:clamp(32px,5vw,56px);line-height:1.04;margin:0 0 18px}
.blog-lead{max-width:62ch;color:var(--muted);font-size:clamp(16px,2vw,19px)}
.blog-grid{display:grid;gap:4px;padding-bottom:clamp(50px,8vw,100px)}
.blog-empty{color:var(--muted);padding:40px 0}
.blog-card{display:grid;grid-template-columns:minmax(0,300px) 1fr;gap:clamp(18px,3vw,36px);align-items:center;color:inherit;border-top:1px solid var(--line);padding:28px 0}
.blog-card:last-child{border-bottom:1px solid var(--line)}
.blog-card-cover{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--line)}
.blog-card-cover img,.blog-card-cover svg,.blog-cover img,.blog-cover svg{display:block;width:100%;height:100%;object-fit:cover}
.blog-card-cover img,.blog-card-cover svg{transition:transform .22s cubic-bezier(.22,.61,.36,1)}
@media(hover:hover) and (pointer:fine){.blog-card:hover .blog-card-cover img,.blog-card:hover .blog-card-cover svg{transform:scale(1.04)}}
.blog-card h2 a{color:inherit;text-decoration:none}
.blog-card .blog-card-meta{display:flex;gap:14px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.blog-card .blog-lang-tag{color:var(--cobalt)}
.blog-card h2{font-family:var(--heading);font-size:clamp(22px,3vw,30px);line-height:1.12;margin:0 0 10px;max-width:24ch}
.blog-card p{margin:0 0 12px;max-width:60ch;color:var(--muted)}
.blog-card p.blog-card-meta{margin-bottom:12px}
@media(max-width:700px){.blog-card{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.blog-card-cover img,.blog-card-cover svg{transition:none}.blog-card:hover .blog-card-cover img,.blog-card:hover .blog-card-cover svg{transform:none}}
.blog-article{padding-block:clamp(24px,4vw,48px)}
.blog-article .blog-breadcrumb{font-size:12px;color:var(--muted);margin-bottom:18px}
.blog-article .blog-breadcrumb a{color:var(--muted)}
.blog-article-head{position:static;z-index:auto;border:0;max-width:820px;margin-inline:auto;margin-bottom:24px}
.blog-article .blog-card-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.blog-article h1{font-family:var(--heading);font-size:clamp(26px,3.4vw,38px);line-height:1.15;margin:0 0 14px;max-width:none;text-wrap:balance}
.blog-article .blog-lead{font-size:clamp(16px,1.6vw,18px);line-height:1.55;color:var(--muted);max-width:none;margin:0}
.blog-cover{margin:28px 0 32px}
.blog-cover img,.blog-cover svg{aspect-ratio:16/9;height:auto}
.blog-cover svg{aspect-ratio:12/5}
.blog-cover figcaption{font-size:12px;color:var(--muted);margin-top:8px}
.blog-article .blog-content,.blog-article .blog-sources,.blog-article .blog-comments,.blog-article .blog-byline,.blog-article .blog-tags,.blog-article .blog-back{max-width:68ch;margin-inline:auto}
.blog-content{max-width:68ch}
.blog-content p{margin:0 0 20px;font-size:17px;line-height:1.72}
.blog-content h2{font-family:var(--heading);font-size:clamp(22px,3vw,30px);margin:40px 0 14px}
.blog-content h3{font-family:var(--heading);font-size:20px;margin:30px 0 10px}
.blog-content ul,.blog-content ol{margin:0 0 20px;padding-left:22px}
.blog-content li{margin-bottom:8px;line-height:1.65}
.blog-content blockquote{margin:0 0 24px;padding:4px 0 4px 22px;border-left:3px solid var(--cobalt);color:var(--ink)}
.blog-content blockquote cite{display:block;margin-top:8px;font-size:13px;color:var(--muted);font-style:normal}
.blog-sources{margin-top:46px;padding-top:24px;border-top:1px solid var(--line);max-width:68ch}
.blog-sources h2{font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
.blog-sources ol{padding-left:18px;font-size:14px}
.blog-sources a{color:var(--cobalt);word-break:break-word}
.blog-byline{margin-top:30px;font-size:13px;color:var(--muted)}
.blog-comments{margin-top:60px;padding-top:30px;border-top:1px solid var(--line);max-width:68ch}
.blog-comments h2{font-family:var(--heading);font-size:24px;margin:0 0 20px}
.blog-comments-empty{color:var(--muted)}
.blog-comments-list{list-style:none;margin:0 0 36px;padding:0;display:grid;gap:20px}
.blog-comment{border:1px solid var(--line);padding:18px 20px}
.blog-comment-head{display:flex;justify-content:space-between;gap:12px;margin:0 0 8px;font-size:12px}
.blog-comment-name{font-weight:600;color:var(--ink)}
.blog-comment-head time{color:var(--muted)}
.blog-comment-body{margin:0;line-height:1.6}
.blog-comment-form,.blog-subscribe-form{display:grid;gap:14px;margin-top:10px;border:1px solid var(--line);padding:24px}
.blog-subscribe-form{margin-top:30px;background:var(--white)}
.blog-comment-form h3,.blog-subscribe-form h3{font-family:var(--heading);font-size:18px;margin:0}
.blog-comment-form .form-row{display:grid;gap:14px}
@media(min-width:640px){.blog-comment-form .form-row{grid-template-columns:1fr 1fr}}
.blog-comment-form label,.blog-subscribe-form label{display:grid;gap:6px;font-size:13px}
.blog-comment-form input,.blog-comment-form textarea,.blog-subscribe-form input{font-family:inherit;font-size:15px;padding:11px 12px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.blog-comment-form textarea{resize:vertical}
.blog-form-note{font-size:12px;color:var(--muted);line-height:1.6;margin:0}
.blog-form-note a{color:var(--cobalt)}
.blog-footer{border-top:1px solid var(--line);padding-block:40px;margin-top:60px}
.blog-footer .footer-inner{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;font-size:13px;color:var(--muted)}
.blog-footer a{color:var(--muted)}