:root {
  --paper: #f2eee4;
  --paper-light: #f8f5ed;
  --ink: #111820;
  --navy: #102d4b;
  --navy-deep: #091f35;
  --blue-soft: #71849a;
  --line: #c9c5ba;
  --dust: #ddd7ca;
  --mono: 'DM Mono', monospace;
  --sans: 'Archivo', 'DM Sans', Arial, sans-serif;
  --hand: 'Caveat', cursive;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
body::after { content: ''; position: fixed; inset: 0; z-index: 40; pointer-events: none; opacity: .10; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.38'/%3E%3C/svg%3E"); mix-blend-mode: multiply; }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
.topbar { height: 78px; max-width: 1500px; margin: auto; display: flex; align-items: center; justify-content: space-between; padding: 0 5vw; position: relative; z-index: 5; }
.wordmark { display: flex; gap: 10px; align-items: center; font: 700 10px/1.2 var(--mono); letter-spacing: .025em; }
.brand-icon { display: grid; place-items: center; width: 27px; height: 27px; background: var(--navy); color: var(--paper); font-size: 16px; transform: rotate(-5deg); }
.wordmark small { font-size: 7px; letter-spacing: .13em; color: #686c70; }
.desktop-nav { display: flex; align-items: center; gap: 30px; font: 9px var(--mono); letter-spacing: .07em; text-transform: uppercase; }
.desktop-nav > a:not(.nav-cta), .nav-dropdown-trigger { padding: 7px 0; position: relative; }
.desktop-nav > a:not(.nav-cta)::after, .nav-dropdown-trigger::after { content: ''; position: absolute; left: 0; right: 100%; bottom: 0; height: 1px; background: var(--navy); transition: right .22s ease; }
.desktop-nav > a:not(.nav-cta):hover::after, .nav-dropdown:hover > .nav-dropdown-trigger::after, .nav-dropdown:focus-within > .nav-dropdown-trigger::after { right: 0; }
.nav-dropdown { position: relative; }
.nav-dropdown-trigger { display: inline-flex; align-items: center; gap: 6px; }
.nav-dropdown-trigger > span { font: 11px var(--sans); transition: transform .18s ease; }
.nav-dropdown:hover .nav-dropdown-trigger > span, .nav-dropdown:focus-within .nav-dropdown-trigger > span { transform: rotate(180deg); }
.nav-dropdown-menu { position: absolute; top: 100%; left: -18px; min-width: 178px; padding: 9px; display: flex; flex-direction: column; gap: 2px; border: 1px solid var(--line); background: var(--paper-light); box-shadow: 3px 4px 0 rgba(16,45,75,.12); opacity: 0; visibility: hidden; transform: translateY(5px); transition: opacity .16s ease, transform .16s ease, visibility .16s ease; }
.nav-dropdown:hover .nav-dropdown-menu, .nav-dropdown:focus-within .nav-dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.nav-dropdown-menu a { padding: 11px 10px; font: 9px var(--mono); letter-spacing: .06em; color: var(--ink); transition: background .16s ease, color .16s ease; }
.nav-dropdown-menu a:hover, .nav-dropdown-menu a:focus-visible { background: #e8e3d8; color: var(--navy); }
.nav-cta { background: var(--navy); color: var(--paper-light); padding: 13px 16px; border: 1px solid var(--navy); transition: background .2s, color .2s; }
.nav-cta:hover { background: transparent; color: var(--navy); }
.nav-cta span { margin-left: 9px; }
.menu-toggle, .mobile-menu { display: none; }
.hero { max-width: 1500px; min-height: 640px; margin: 0 auto; position: relative; overflow: hidden; background: var(--paper-light); padding: 75px 7vw 70px; isolation: isolate; }
.hero::before { content: ''; position: absolute; z-index: -1; top: -4%; right: -1%; width: 48%; height: 111%; background: var(--navy); clip-path: polygon(8% 0,100% 0,100% 100%,5% 100%,7% 93%,1% 88%,8% 82%,3% 74%,11% 67%,5% 60%,10% 52%,2% 45%,9% 36%,3% 28%,10% 19%,5% 12%); }
.hero-copy { position: relative; z-index: 2; width: 56%; max-width: 710px; }
.eyebrow, .section-kicker, .solution-type, .flow-line, .hero-foot, .contact-card > span, .contact-card small, footer > a:last-child { font: 9px var(--mono); letter-spacing: .12em; }
.eyebrow { display: flex; align-items: center; gap: 9px; color: #686d72; margin: 0 0 28px; }
.status-dot { width: 7px; height: 7px; background: var(--navy); }
.hero h1 { max-width: 760px; font-size: clamp(56px, 7vw, 94px); line-height: .99; letter-spacing: -.075em; font-weight: 800; margin: 0; }
.hero h1 span { color: var(--navy); position: relative; white-space: nowrap; }
.hero h1 span::after { content: ''; position: absolute; left: -2%; width: 104%; height: 9px; bottom: -8px; background: var(--navy); clip-path: polygon(0 61%,25% 48%,44% 59%,69% 41%,100% 53%,100% 72%,62% 68%,32% 84%,0 78%); }
.hero-sub { font-size: clamp(17px, 1.8vw, 22px); line-height: 1.5; letter-spacing: -.02em; max-width: 500px; margin: 26px 0 10px; }
.hero-description { font-size: 13px; color: #5f6366; margin: 0; max-width: 445px; line-height: 1.75; }
.hero-actions { display: flex; align-items: center; gap: 24px; margin-top: 27px; }
.button { display: inline-flex; align-items: center; gap: 22px; padding: 14px 17px; font: 9px var(--mono); letter-spacing: .1em; text-transform: uppercase; transition: transform .2s, background .2s; }
.button:hover { transform: translateY(-2px); }
.button-dark { background: var(--navy); color: var(--paper-light); border: 1px solid var(--navy); box-shadow: 3px 3px 0 #8793a0; }
.button-dark:hover { background: var(--navy-deep); }
.button-dark span { font-size: 14px; }
.text-link { font: 9px var(--mono); letter-spacing: .08em; text-transform: uppercase; border-bottom: 1px solid var(--ink); padding: 0 0 6px; }
.text-link span { margin-left: 8px; }
.hero-visual { position: absolute; z-index: 1; right: 0; top: 0; width: 47%; height: 100%; overflow: hidden; }
.hero-foot { position: absolute; z-index: 3; bottom: 22px; left: 7vw; right: 7vw; display: flex; justify-content: space-between; color: #656b71; font-size: 8px; }
.hero-foot i { font-style: normal; color: var(--navy); padding: 0 8px; }
.section { padding: 103px 9vw; max-width: 1500px; margin: 0 auto; }
.section-kicker { display: flex; justify-content: space-between; border-bottom: 1px solid var(--line); padding-bottom: 13px; color: #686e73; font-size: 8px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 30px; padding: 50px 0 43px; }
.section-heading h2, .customers h2 { font-size: clamp(42px, 5.2vw, 68px); line-height: 1.03; letter-spacing: -.065em; font-weight: 800; margin: 0; }
.section-heading h2 { color: var(--navy); }
.section-heading > p { max-width: 300px; font-size: 13px; line-height: 1.75; color: #676d72; margin: 0 0 5px; }
.problem-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); }
.problem-grid article { padding: 20px 18px 0 0; margin-right: 18px; border-right: 1px solid var(--line); }
.problem-grid article:last-child { border: 0; }
.index { display: inline-grid; place-items: center; width: 27px; height: 27px; border: 1px solid var(--navy); border-radius: 50%; color: var(--navy); font: 9px var(--mono); }
.problem-grid h3 { font-size: 15px; line-height: 1.35; letter-spacing: -.025em; margin: 20px 0 9px; font-weight: 700; }
.problem-grid p { font-size: 12px; line-height: 1.8; color: #62676a; margin: 0; max-width: 250px; }
.solution { padding-top: 87px; padding-bottom: 92px; background: #e8e3d8; max-width: 1460px; position: relative; clip-path: polygon(0 0,100% 0,100% 99%,82% 100%,63% 99%,43% 100%,23% 99%,0 100%); }
.solution-heading { padding: 46px 0 36px; }
.solution-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }
.solution-card { color: inherit; text-decoration: none; cursor: pointer; min-height: 275px; border: 1px solid #aaa79e; background: var(--paper-light); padding: 23px; display: flex; flex-direction: column; position: relative; transition: transform .22s, background .22s; }
.solution-card::after { content: ''; position: absolute; left: 15px; right: 15px; bottom: 13px; height: 1px; background: #c8c3b9; transform: rotate(-.3deg); }
.solution-card:hover { transform: translateY(-4px) rotate(-.25deg); }
.solution-card.featured { background: var(--navy); color: var(--paper-light); border-color: var(--navy); }
.solution-card.featured::after { background: #75869a; }
.solution-top { display: flex; justify-content: space-between; align-items: center; font: 9px var(--mono); color: #7e8282; }
.featured .solution-top { color: #d2d0c9; }
.solution-symbol { display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid currentColor; border-radius: 50%; font: 16px var(--sans); color: var(--navy); }
.featured .solution-symbol { color: var(--paper-light); }
.solution-type { font-size: 8px; color: #777d81; margin: 28px 0 8px; }
.featured .solution-type { color: #c6c7c4; }
.solution-card h3 { font-size: 22px; line-height: 1.18; letter-spacing: -.04em; font-weight: 700; margin: 0 0 10px; }
.solution-card > p:last-of-type { font-size: 12px; line-height: 1.8; color: #62676a; max-width: 370px; margin: 0; }
.featured.solution-card > p:last-of-type { color: #e4e1d8; }
.flow-line { display: flex; align-items: center; gap: 13px; margin-top: 29px; font-size: 8px; color: #545d65; }
.flow-line b { height: 1px; flex: 1; background: #8e9291; position: relative; }
.flow-line b::after { content: ''; position: absolute; right: 0; top: -3px; width: 6px; height: 6px; border-right: 1px solid #6a737b; border-top: 1px solid #6a737b; transform: rotate(45deg); }
.statement { max-width: 1150px; margin: 0 auto; padding: 95px 9vw; position: relative; }
.statement-mark { font-size: 58px; line-height: .7; color: var(--navy); }
.statement p { font-size: clamp(27px, 3.8vw, 46px); line-height: 1.2; letter-spacing: -.05em; max-width: 850px; margin: 10px 0 25px; font-weight: 700; }
.statement > a { font: 9px var(--mono); letter-spacing: .07em; text-transform: uppercase; border-bottom: 1px solid var(--navy); padding-bottom: 6px; }
.statement > a span { margin-left: 8px; }
.customers { padding-top: 80px; padding-bottom: 96px; }
.client-logos { display: grid; grid-template-columns: repeat(3, 1fr); align-items: center; min-height: 142px; border-bottom: 1px solid var(--line); }
.client-logo { min-height: 125px; display: flex; align-items: center; justify-content: center; padding: 20px; border-right: 1px solid var(--line); position: relative; }
.client-logo:last-child { border: 0; }
.anscer img { width: min(100%, 190px); height: auto; object-fit: contain; }
.terafac img { width: 110px; height: 110px; object-fit: contain; }
.hiro img { width: min(100%, 210px); height: auto; object-fit: contain; }
.customer-proof { max-width: 740px; font-size: 13px; line-height: 1.85; color: #62676a; margin: 22px 0 0; }
.contact { max-width: 1460px; margin: 0 auto 20px; background: var(--navy); color: var(--paper-light); padding: 43px 9vw 61px; position: relative; clip-path: polygon(0 0,100% 0,100% 100%,0 98%); }
.contact .section-kicker { border-color: #5e7185; color: #d3d0c6; }
.contact-grid { display: grid; grid-template-columns: 1fr .75fr; gap: 8%; align-items: end; padding-top: 50px; }
.contact h2 { font-size: clamp(46px, 5.8vw, 74px); line-height: 1.02; letter-spacing: -.065em; font-weight: 800; margin: 0; }
.contact-grid p { font-size: 13px; line-height: 1.75; color: #d2d3d1; max-width: 360px; margin-top: 18px; }
.contact-card { display: flex; flex-direction: column; gap: 19px; padding: 25px; border: 1px solid #a9b4bf; background: #163959; transition: background .2s, transform .2s; }
.contact-card:hover { background: #1c466e; transform: translateY(-3px); }
.contact-card > span { color: #d5d4ca; font-size: 8px; }
.contact-card strong { font-weight: 600; font-size: 21px; letter-spacing: -.035em; }
.contact-card strong b { float: right; font-weight: 400; }
.contact-card small { color: #d2d3d1; font-size: 9px; letter-spacing: .025em; }
footer { min-height: 104px; padding: 20px 5vw; display: flex; align-items: center; justify-content: space-between; gap: 15px; }
footer > span { font-size: 10px; color: #6c7174; }
footer > a:last-child, footer > a:nth-last-child(2) { font-size: 8px; }
.menu-toggle { background: none; border: 0; padding: 10px; }
.menu-toggle span { width: 21px; height: 1px; background: var(--ink); display: block; margin: 6px; }

.reveal { opacity: 0; transform: translateY(18px); transition: opacity .55s ease, transform .55s cubic-bezier(.2,.7,.2,1); }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: .08s; }
.reveal-delay-2 { transition-delay: .16s; }
.reveal-delay-3 { transition-delay: .24s; }
:focus-visible { outline: 3px solid #9eb4c8; outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *,*::before,*::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; } .reveal { opacity: 1; transform: none; } }
@media(max-width:800px) {
  .topbar { height: 72px; padding: 0 23px; }
  .desktop-nav { gap: 14px; font-size: 8px; }
  .desktop-nav .nav-cta { padding: 10px 11px; }
  .hero { min-height: 620px; padding: 64px 7vw 52px; }
  .hero::before { width: 48%; }
  .hero-copy { width: 61%; }
  .hero h1 { font-size: clamp(50px, 8vw, 72px); }
  .hero-visual { width: 47%; }
  .section { padding: 84px 7vw; }
  .section-heading { display: block; padding: 43px 0 37px; }
  .section-heading > p { margin-top: 20px; }
  .problem-grid { grid-template-columns: repeat(2,1fr); row-gap: 27px; }
  .problem-grid article:nth-child(2) { border-right: 0; }
  .solution-grid { gap: 9px; }
  .solution-card { padding: 18px; min-height: 290px; }
  .solution-card h3 { font-size: 19px; }
  .flow-line { gap: 8px; font-size: 7px; }
  .client-logo { padding: 14px; }
  .anscer img { max-width: 160px; }
  .hiro img { max-width: 180px; }
  .contact-grid { gap: 30px; grid-template-columns: 1fr; }
  .contact-card { max-width: 500px; }
  .role-details { gap: 25px; }
}
@media(max-width:560px) {
  .topbar { height: 65px; padding: 0 18px; }
  .desktop-nav { display: none; }
  .menu-toggle { display: block; }
  .mobile-menu { position: absolute; top: 63px; left: 10px; right: 10px; z-index: 10; background: var(--paper-light); padding: 18px 22px 21px; border: 1px solid var(--line); display: none; flex-direction: column; gap: 18px; font: 10px var(--mono); text-transform: uppercase; }
  .mobile-menu.open { display: flex; }
  .mobile-solution-group { display: flex; flex-direction: column; gap: 14px; padding-left: 13px; border-left: 1px solid var(--line); }
  .mobile-solution-group .mobile-solution-label { margin-left: -13px; color: var(--navy); }
  .mobile-solution-group > a:not(.mobile-solution-label) { color: #59636b; font-size: 9px; }
  .mobile-talk-link { display: inline-flex; align-self: flex-start; background: var(--navy); color: var(--paper-light); padding: 12px 15px; }
  .hero { min-height: 690px; padding: 48px 7vw 48px; }
  .hero::before { width: 100%; height: 44%; top: auto; bottom: 0; right: 0; clip-path: polygon(0 10%,10% 6%,22% 12%,39% 5%,53% 10%,68% 3%,82% 8%,100% 2%,100% 100%,0 100%); }
  .eyebrow { font-size: 7px; }
  .hero-copy { width: 100%; }
  .hero h1 { font-size: 50px; max-width: 430px; }
  .hero h1 br { display: none; }
  .hero-sub { font-size: 16px; max-width: 340px; }
  .hero-description { font-size: 12px; max-width: 320px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 19px; }
  .hero-visual { top: auto; bottom: 22px; right: 0; width: 100%; height: 43%; }
  .hero-foot { font-size: 6px; left: 7vw; right: 7vw; bottom: 12px; }
  .hero-foot span:last-child { max-width: 100px; text-align: right; }
  .section { padding: 70px 7vw; }
  .section-heading h2,.customers h2 { font-size: 39px; }
  .problem-grid { gap: 24px 8px; }
  .problem-grid article { padding-right: 10px; margin-right: 8px; }
  .problem-grid h3 { font-size: 13px; margin-top: 17px; }
  .problem-grid p { font-size: 11px; }
  .solution { margin: 0 8px; padding-top: 65px; padding-bottom: 70px; }
  .solution-heading h2 { font-size: 40px; }
  .solution-grid { grid-template-columns: 1fr; gap: 10px; }
  .solution-card { min-height: 225px; padding: 21px; }
  .solution-card h3 { font-size: 21px; }
  .flow-line { flex-wrap: wrap; line-height: 1.8; justify-content: flex-start; margin-top: 22px; }
  .flow-line b { display: none; }
  .statement { padding: 68px 7vw; }
  .statement::before { top: 49px; right: 7vw; font-size: 7px; }
  .statement p { font-size: 29px; }
  .customers { padding-top: 65px; padding-bottom: 75px; }
  .client-logos { grid-template-columns: repeat(3,1fr); min-height: 100px; }
  .client-logo { min-height: 95px; padding: 8px; border-bottom: 0; }
  .anscer img { max-width: 100%; }
  .terafac img { width: 70px; height: 70px; }
  .hiro img { max-width: 100%; }
  .contact { margin: 0 8px 12px; padding: 37px 7vw 42px; }
  .contact h2 { font-size: 44px; }
  .contact-card { padding: 19px; }
  .contact-card strong { font-size: 19px; }
  footer { padding: 18px; flex-wrap: wrap; gap: 15px; }
  footer > span { display: none; }
  footer > a:last-child, footer > a:nth-last-child(2) { font-size: 7px; }
}

/* Fieldrun editorial treatment */
.brand-icon { display: block; flex: 0 0 34px; width: 34px; height: 34px; background: transparent; transform: none; }
.brand-name { display: grid; grid-template-columns: auto auto; align-items: baseline; font: 800 15px/.92 var(--sans); letter-spacing: .04em; color: var(--navy); }
.brand-name > span { margin-left: 1px; font: 600 21px/.75 var(--hand); letter-spacing: -.04em; text-transform: lowercase; transform: rotate(-6deg); }
.brand-name small { grid-column: 1 / -1; margin-top: 5px; font: 8px var(--mono); letter-spacing: .16em; color: #66717a; }
.hero { background: #e9e3d7; }
.hero::before { content: ''; inset: 0; z-index: 1; width: auto; height: auto; right: 0; top: 0; background: linear-gradient(90deg,rgba(242,238,228,.98) 0%,rgba(242,238,228,.94) 25%,rgba(242,238,228,.75) 39%,rgba(242,238,228,.16) 58%,rgba(9,31,53,.08) 100%); clip-path: none; }
.hero::after { content: ''; position: absolute; z-index: 3; left: 0; right: 0; bottom: -1px; height: 13px; background: var(--paper); clip-path: polygon(0 24%,6% 36%,12% 19%,20% 32%,28% 18%,37% 38%,45% 16%,54% 31%,63% 17%,72% 34%,81% 20%,90% 33%,100% 15%,100% 100%,0 100%); }
.hero-copy { width: 58%; }
.hero-visual { z-index: 0; inset: 0; width: 100%; height: 100%; overflow: hidden; }
.hero-visual img { display: block; width: 100%; height: 110%; object-fit: cover; object-position: center; transform: translate3d(0,var(--hero-parallax,0px),0) scale(1.03); filter: saturate(.76) contrast(1.03); }
.hero-foot { color: #525e68; }
.hero h1 { font-weight: 800; }
.hero-sub { max-width: 460px; }

.solution-grid { perspective: 1100px; }
.solution-card { min-height: 330px; transform-origin: center top; backface-visibility: hidden; }
.solution-card.featured { min-height: 400px; }
.solution-card::before { content: ''; position: absolute; z-index: 0; top: 0; right: 0; width: 39px; height: 34px; background: linear-gradient(135deg,transparent 48%,rgba(16,45,75,.12) 49%,var(--paper) 52%); }
.solution-card.featured::before { background: linear-gradient(135deg,transparent 48%,rgba(242,238,228,.14) 49%,#183a5a 52%); }
.solution-card > * { position: relative; z-index: 1; }
.solution-card.featured > .chip-stage { position: relative; z-index: 1; }
.edge-card { overflow: hidden; }
.chip-stage { position: relative; height: 150px; margin: 10px -8px 13px; overflow: hidden; perspective: 760px; transform-style: preserve-3d; isolation: isolate; background: radial-gradient(ellipse at 50% 54%,#234766 0%,#163652 54%,#102d4b 100%); border: 1px solid #40607c; }
.chip-stage::before { content: ''; position: absolute; inset: 0; opacity: .42; background: repeating-linear-gradient(0deg,transparent 0 17px,#7990a2 18px,transparent 19px 33px),repeating-linear-gradient(90deg,transparent 0 23px,#7990a2 24px,transparent 25px 41px); mask-image: radial-gradient(ellipse at center,#000 0%,transparent 76%); }
.chip-stage::after { content: ''; position: absolute; inset: 0; opacity: .48; background-image: radial-gradient(#e4dfd2 1px,transparent 1.5px); background-size: 9px 9px; mask-image: linear-gradient(90deg,#000,transparent 34%,transparent 66%,#000); }
.edge-chip { position: absolute; z-index: 2; width: 96px; height: 96px; left: 50%; top: 53%; transform: translate(-50%,-50%) rotateX(calc(57deg + var(--chip-tilt-y,0deg))) rotateZ(calc(45deg + var(--chip-tilt-x,0deg))); transform-style: preserve-3d; transition: transform .32s cubic-bezier(.2,.7,.2,1); filter: drop-shadow(0 17px 7px #06192b99); }
.chip-surface { position: absolute; inset: 0; display: grid; place-items: center; border: 2px solid #d8d2c4; background: linear-gradient(135deg,#e7dfce 0%,#8e9eaa 44%,#d1c8b6 100%); box-shadow: 0 0 0 7px #102d4b,0 0 0 9px #7f95a8,0 0 0 15px #102d4b,0 0 0 17px #526f88; transform-style: preserve-3d; }
.chip-surface::before { content: ''; position: absolute; inset: -13px; border: 1px dashed #c8d0d2; transform: translateZ(-7px); opacity: .8; }
.chip-surface::after { content: ''; position: absolute; inset: 14px; border: 1px solid #5f7280; background: repeating-linear-gradient(0deg,transparent 0 8px,#596d7c 9px,transparent 10px 15px),repeating-linear-gradient(90deg,transparent 0 8px,#596d7c 9px,transparent 10px 15px); opacity: .65; }
.chip-brand { position: relative; z-index: 2; color: var(--navy-deep); font: 800 22px var(--sans); letter-spacing: -.08em; transform: translateZ(9px); }
.chip-core { position: absolute; z-index: 2; width: 29px; height: 29px; border: 1px solid #102d4b; background: radial-gradient(circle,#f4efe5 0 2px,#183958 3px 5px,#f4efe5 6px 7px,#254967 8px); transform: translateZ(11px); animation: core-pulse 2.8s ease-in-out infinite; }
.chip-caption { position: absolute; z-index: 3; bottom: 3px; right: 4px; color: #102d4b; font: 5px var(--mono); letter-spacing: .12em; transform: translateZ(12px); }
.chip-orbit { position: absolute; z-index: 1; left: 50%; top: 52%; width: 170px; height: 70px; margin: -35px 0 0 -85px; border: 1px dashed #d8d4c8; border-radius: 50%; transform: rotateX(64deg) rotateZ(-22deg); opacity: .62; }
.orbit-two { width: 205px; height: 89px; margin: -44px 0 0 -102px; transform: rotateX(66deg) rotateZ(38deg); opacity: .35; }
.model-token { position: absolute; z-index: 3; padding: 3px 5px; border: 1px solid #8fa0aa; background: #102d4b; color: #f4efe5; font: 7px var(--mono); letter-spacing: .04em; animation: token-float 3.4s ease-in-out infinite; }
.token-a { top: 17%; left: 18%; }
.token-b { top: 22%; right: 13%; animation-delay: -.8s; }
.token-c { bottom: 15%; left: 25%; animation-delay: -1.6s; }
.signal { position: absolute; z-index: 4; width: 5px; height: 5px; border-radius: 50%; background: #f5e2a7; box-shadow: 0 0 9px 3px #efca7466; animation: packet-run 2.2s linear infinite; }
.signal-one { left: 24%; top: 29%; }.signal-two { right: 22%; top: 69%; animation-delay: -.7s; }.signal-three { left: 72%; top: 25%; animation-delay: -1.4s; }
@keyframes token-float { 0%,100%{translate:0 0} 50%{translate:0 -5px} }
@keyframes packet-run { 0%{transform:translate(0,0);opacity:.1} 20%{opacity:1} 80%{opacity:.9} 100%{transform:translate(18px,-13px);opacity:0} }
@keyframes core-pulse { 0%,100%{filter:brightness(.95)} 50%{filter:brightness(1.4);box-shadow:0 0 14px #f5e2a7aa} }

.reveal { opacity: 0; transform: translateY(26px) rotateX(-3deg); transform-origin: center top; clip-path: inset(0 0 9% 0); transition: opacity .72s ease, transform .82s cubic-bezier(.18,.7,.15,1), clip-path .82s cubic-bezier(.18,.7,.15,1); }
.reveal.is-visible { opacity: 1; transform: translateY(0) rotateX(0); clip-path: inset(0 0 0 0); }
.solution-card.reveal { transition-duration: .8s; }

@media(max-width:800px) {
  .hero-copy { width: 65%; }
  .hero-visual { inset: 0; width: 100%; height: 100%; }
  .hero::before { inset: 0; width: auto; height: auto; background: linear-gradient(90deg,rgba(242,238,228,.98) 0%,rgba(242,238,228,.92) 32%,rgba(242,238,228,.42) 55%,rgba(9,31,53,.05) 100%); clip-path: none; }
  .solution-card.featured { min-height: 400px; }
}
@media(max-width:560px) {
  .brand-icon { width: 30px; height: 30px; flex-basis: 30px; }
  .brand-name { font-size: 13px; }
  .brand-name > span { font-size: 19px; }
  .hero { min-height: 690px; }
  .hero::before { inset: 0; width: auto; height: auto; top: 0; bottom: 0; right: 0; background: linear-gradient(180deg,rgba(242,238,228,.98) 0%,rgba(242,238,228,.94) 38%,rgba(242,238,228,.42) 59%,rgba(9,31,53,.2) 100%); clip-path: none; }
  .hero-visual { top: 0; bottom: 0; width: 100%; height: 100%; }
  .hero-visual img { object-position: 56% center; }
  .hero-foot { color: var(--paper-light); bottom: 22px; }
  .hero-foot i { color: #e1d8c6; }
  .solution-card.featured { min-height: 385px; }
  .chip-stage { height: 140px; }
  .edge-chip { width: 82px; height: 82px; }
  .chip-orbit { width: 145px; margin-left: -72px; }
  .orbit-two { width: 170px; margin-left: -85px; }
  .token-a { left: 9%; }.token-b { right: 7%; }.token-c { left: 15%; }
}
@media (prefers-reduced-motion: reduce) {
  .edge-chip,.model-token,.signal,.chip-core { animation: none !important; }
  .hero-visual img { transform: none !important; }
}
.hero-foot em { font: 500 18px/.8 var(--hand); font-style: normal; letter-spacing: .01em; color: var(--navy); }
@media(max-width:560px) { .hero-foot em { color: var(--paper-light); font-size: 16px; } }

/* Fieldrun: paper, ink, and painted machinery */
.brand-name small { display: none; }
.hero { background: #e8e1d4; }
.hero::before { background: linear-gradient(90deg,rgba(232,225,212,.15),rgba(9,31,53,.06)); }
.hero-copy { width: 60%; max-width: 760px; padding: 28px 34px 34px 0; }
.hero-copy::before { content: ''; position: absolute; z-index: -1; top: -28px; bottom: -34px; left: -7vw; right: -8%; background: rgba(244,239,228,.97); clip-path: polygon(0 0,100% 0,99% 7%,100% 15%,98.8% 23%,100% 31%,99% 40%,100% 48%,98.8% 56%,100% 64%,99% 73%,100% 81%,98.7% 90%,100% 100%,0 100%); }
.hero h1 { color: #101820; font-size: clamp(52px, 6.3vw, 84px); line-height: 1.02; letter-spacing: -.07em; }
.hero h1 .hero-title-line { display: block; width: fit-content; white-space: nowrap; }
.hero h1 .hero-title-second { margin-top: .21em; }
.hero h1 .hero-title-line::after { display: none; }
.hero h1 .hero-title-second em { position: relative; color: var(--navy); font-style: normal; white-space: nowrap; }
.hero h1 .hero-title-second em::after { content: ''; position: absolute; left: 0; right: -4%; height: 7px; bottom: -9px; background: var(--navy); clip-path: polygon(0 55%,20% 35%,42% 53%,66% 31%,100% 46%,98% 74%,68% 63%,39% 82%,0 72%); transform: rotate(-1deg); }
.hero-sub { color: #202a32; }
.hero-description { color: #434a4f; }
.hero-foot { color: #28343c; }
.hero-foot i { color: #102d4b; }
.problem { position: relative; }
.problem::after { content: 'REAL SYSTEMS / REAL CONDITIONS'; position: absolute; right: 9vw; top: 82px; font: 8px var(--mono); letter-spacing: .12em; color: #71777a; transform: rotate(2deg); }
.problem .section-heading { align-items: start; }
.problem .section-heading h2 { max-width: 740px; }
.problem .section-heading > p { max-width: 360px; }
.problem-grid { border-top: 1px solid #b9b3a8; }
.problem-grid article { min-height: 240px; border-color: #c1bbaf; }
.problem-grid h3 { max-width: 230px; font-size: 16px; line-height: 1.3; }
.problem-grid p { max-width: 300px; color: #4f5559; }
.problem-grid .index { border-radius: 0; transform: rotate(-5deg); background: #eee8db; }
.solution { background-color: #e3ddd1; background-image: radial-gradient(ellipse at 10% 20%,rgba(255,255,255,.32),transparent 38%),linear-gradient(115deg,transparent 0 71%,rgba(16,45,75,.035) 71.2%,transparent 73%); }
.solution-card { background-color: #f2eee4; border-color: #b6afa3; box-shadow: 2px 2px 0 rgba(16,45,75,.08); }
.solution-card:nth-child(2) { transform: rotate(.18deg); }
.solution-card:nth-child(2):hover { transform: translateY(-4px) rotate(.1deg); }
.solution-card h3 { font-size: clamp(24px,2.4vw,31px); color: var(--navy); }
.solution-card.featured h3 { color: var(--paper-light); }
.solution-card .solution-type { letter-spacing: .16em; }
.adapt-card { overflow: hidden; }
.adapt-visual { position: relative; margin: auto -23px -23px; padding: 11px 12px 9px; background: #0b1d2d; transform: rotate(-.35deg); border-top: 1px solid #a8a294; }
.adapt-visual img { display: block; width: 100%; height: 95px; object-fit: cover; object-position: center; filter: sepia(.13) contrast(1.08); }
.adapt-visual::after { content: ''; position: absolute; inset: 11px 12px 30px; pointer-events: none; background: linear-gradient(90deg,rgba(8,23,37,.13),transparent 46%,rgba(8,23,37,.18)); mix-blend-mode: screen; }
.adapt-visual figcaption { margin-top: 7px; color: #e9e2d4; font: 7px var(--mono); letter-spacing: .1em; }
.adapt-visual figcaption i { padding: 0 5px; color: #dbbd8a; font-style: normal; }
.arena-strip { display: flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 18px; flex-wrap: wrap; }
.arena-strip span { padding: 5px 7px; border: 1px solid #b9b3a8; color: var(--navy); font: 8px var(--mono); }
.arena-strip span:last-child { margin-left: auto; border: 0; padding-right: 0; color: #6b7174; font-size: 6px; }
.edge-card .solution-type { margin-top: 12px; }
.solution-card.featured::before { background: linear-gradient(135deg,transparent 48%,rgba(242,238,228,.14) 49%,#183a5a 52%); }
.statement { background-image: radial-gradient(ellipse at 82% 35%,rgba(16,45,75,.06),transparent 47%); }
.statement-mark { font-family: var(--hand); transform: rotate(-8deg); }
.customer-proof { color: #4d555b; }
.contact { background-image: linear-gradient(125deg,#102d4b,#0a2239 68%,#193959); }
@media(max-width:800px) {
  .hero-copy { width: 72%; }
  .hero-copy::before { right: -5%; }
  .problem::after { display: none; }
  .problem-grid article { min-height: 0; }
}
@media(max-width:560px) {
  .hero { min-height: 720px; padding-top: 56px; }
  .hero::before { background: linear-gradient(180deg,rgba(9,31,53,.06) 0%,rgba(9,31,53,.03) 56%,rgba(9,31,53,.24) 100%); }
  .hero-copy { width: 100%; padding: 19px 0 25px; }
  .hero-copy::before { top: -19px; bottom: -25px; left: -7vw; right: -7vw; clip-path: polygon(0 0,100% 0,99% 15%,100% 30%,99% 47%,100% 64%,98.8% 80%,100% 100%,0 100%); }
  .hero h1 { font-size: clamp(41px, 11vw, 60px); line-height: 1.02; }
  .hero h1 .hero-title-line { white-space: normal; }
  .hero h1 .hero-title-second { margin-top: .18em; }
  .hero-sub { font-size: 18px; }
  .hero-foot { color: #f2eee4; }
  .hero-foot i, .hero-foot em { color: #f2eee4; }
  .adapt-visual img { height: 88px; }
  .arena-strip span:last-child { margin-left: 0; }
}

/* Careers role emphasis */
.role-focus { display: grid; grid-template-columns: 1fr 1.2fr; column-gap: 24px; row-gap: 8px; align-items: start; margin: 21px 0 4px; padding: 17px 20px 18px; color: var(--paper-light); background: var(--navy); clip-path: polygon(0 0,100% 0,100% 96%,76% 100%,48% 98%,23% 100%,0 97%); }
.role-focus > span { grid-column: 1 / -1; color: #d6d0c3; font: 8px var(--mono); letter-spacing: .14em; }
.role-focus strong { font-size: 17px; line-height: 1.3; letter-spacing: -.025em; }
.role-focus p { max-width: 450px; margin: 0; color: #e0ddd5; font-size: 11px; line-height: 1.7; }

/* Restore the homepage's original clean navy-and-paper art direction. */
.homepage-original::after { opacity: 0; }
.homepage-original .hero { min-height: 640px; padding: 75px 7vw 70px; background: var(--paper-light); }
.homepage-original .hero::before { content: ''; position: absolute; z-index: -1; top: -4%; right: -1%; left: auto; width: 48%; height: 111%; background: var(--navy); clip-path: polygon(8% 0,100% 0,100% 100%,5% 100%,7% 93%,1% 88%,8% 82%,3% 74%,11% 67%,5% 60%,10% 52%,2% 45%,9% 36%,3% 28%,10% 19%,5% 12%); }
.homepage-original .hero::after { display: none; }
.homepage-original .hero-copy { width: 56%; max-width: 710px; padding: 0; }
.homepage-original .hero-copy::before { display: none; }
.homepage-original .hero h1 { max-width: 760px; font-size: clamp(56px,7vw,94px); line-height: .99; letter-spacing: -.075em; }
.homepage-original .hero h1 .hero-title-line { display: block; width: auto; white-space: normal; color: var(--ink); }
.homepage-original .hero h1 .hero-title-second { margin-top: .12em; }
.homepage-original .hero h1 .hero-title-line::after { display: none; }
.homepage-original .hero h1 .hero-title-second em { position: relative; color: var(--navy); font-style: normal; white-space: nowrap; }
.homepage-original .hero h1 .hero-title-second em::after { content: ''; position: absolute; left: -2%; width: 104%; height: 9px; bottom: -8px; background: var(--navy); clip-path: polygon(0 61%,25% 48%,44% 59%,69% 41%,100% 53%,100% 72%,62% 68%,32% 84%,0 78%); }
.homepage-original .hero-visual { z-index: 1; top: 0; right: 0; bottom: auto; left: auto; width: 47%; height: 100%; overflow: hidden; }
.homepage-original .hero-visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transform: none; filter: none; }
.homepage-original .hero-foot { color: #656b71; }
.homepage-original .hero-foot i { color: var(--navy); }
.homepage-original .problem::after { display: none; }
.homepage-original .problem .section-heading { display: flex; justify-content: space-between; align-items: end; }
.homepage-original .problem .section-heading > p { max-width: 300px; margin: 0 0 5px; }
.homepage-original .problem-grid { grid-template-columns: repeat(4,1fr); row-gap: 0; border-top: 1px solid var(--line); }
.homepage-original .problem-grid article { min-height: 0; padding: 20px 18px 0 0; margin-right: 18px; border-right: 1px solid var(--line); }
.homepage-original .problem-grid article:nth-child(2) { border-right: 1px solid var(--line); }
.homepage-original .problem-grid article:last-child { border: 0; }
.homepage-original .problem-grid .index { border-radius: 50%; transform: none; background: transparent; }
.homepage-original .problem-grid h3 { max-width: none; font-size: 15px; line-height: 1.35; margin: 20px 0 9px; }
.homepage-original .problem-grid p { max-width: 250px; color: #62676a; }
.homepage-original .solution { margin: 0 auto; padding-top: 87px; padding-bottom: 92px; background-color: #e8e3d8; background-image: none; clip-path: polygon(0 0,100% 0,100% 99%,82% 100%,63% 99%,43% 100%,23% 99%,0 100%); }
.homepage-original .solution-card { min-height: 330px; transform: none; box-shadow: none; background-color: var(--paper-light); }
.homepage-original .solution-card:hover { transform: translateY(-4px); }
.homepage-original .solution-card:nth-child(2) { transform: none; }
.homepage-original .solution-card:nth-child(2):hover { transform: translateY(-4px); }
.homepage-original .solution-card::before { top: 0; right: 0; width: 39px; height: 34px; background: linear-gradient(135deg,transparent 48%,rgba(16,45,75,.12) 49%,var(--paper) 52%); }
.homepage-original .solution-card.featured { background: var(--navy); }
.homepage-original .solution-card.featured::before { background: linear-gradient(135deg,transparent 48%,rgba(242,238,228,.14) 49%,#183a5a 52%); }
.homepage-original .solution-card h3 { font-size: 22px; color: var(--ink); }
.homepage-original .solution-card.featured h3 { color: var(--paper-light); }
.homepage-original .adapt-visual { background: #0b1d2d; }
.homepage-original .statement { background-image: none; }
.homepage-original .customers { padding-top: 80px; padding-bottom: 96px; }
.homepage-original .customer-proof { color: #62676a; }
.homepage-original .contact { background-color: var(--navy); background-image: none; }
.homepage-original .contact-card { border-radius: 0; box-shadow: none; }
@media(max-width:800px) {
  .homepage-original .hero { min-height: 620px; padding: 64px 7vw 52px; }
  .homepage-original .hero::before { top: -4%; right: -1%; bottom: auto; width: 48%; height: 111%; background: var(--navy); clip-path: polygon(8% 0,100% 0,100% 100%,5% 100%,7% 93%,1% 88%,8% 82%,3% 74%,11% 67%,5% 60%,10% 52%,2% 45%,9% 36%,3% 28%,10% 19%,5% 12%); }
  .homepage-original .hero-copy { width: 61%; }
  .homepage-original .hero h1 { font-size: clamp(50px,8vw,72px); }
  .homepage-original .hero-visual { top: 0; right: 0; bottom: auto; left: auto; width: 47%; height: 100%; }
  .homepage-original .problem-grid { grid-template-columns: repeat(2,1fr); row-gap: 27px; }
  .homepage-original .problem-grid article:nth-child(2) { border-right: 0; }
  .homepage-original .solution-grid { gap: 9px; }
  .homepage-original .solution-card { min-height: 290px; }
}
@media(max-width:560px) {
  .homepage-original .hero { min-height: 690px; padding: 48px 7vw; }
  .homepage-original .hero::before { top: auto; right: 0; bottom: 0; width: 100%; height: 44%; background: var(--navy); clip-path: polygon(0 10%,10% 6%,22% 12%,39% 5%,53% 10%,68% 3%,82% 8%,100% 2%,100% 100%,0 100%); }
  .homepage-original .hero-copy { width: 100%; }
  .homepage-original .hero h1 { font-size: 50px; max-width: 430px; }
  .homepage-original .hero h1 .hero-title-line { white-space: normal; }
  .homepage-original .hero h1 .hero-title-second { margin-top: .12em; }
  .homepage-original .hero-sub { font-size: 16px; max-width: 340px; }
  .homepage-original .hero-description { font-size: 12px; max-width: 320px; }
  .homepage-original .hero-visual { top: auto; right: 0; bottom: 22px; left: auto; width: 100%; height: 43%; }
  .homepage-original .hero-visual img { object-position: 56% center; }
  .homepage-original .hero-foot { color: var(--paper-light); }
  .homepage-original .hero-foot i, .homepage-original .hero-foot em { color: var(--paper-light); }
  .homepage-original .problem-grid { gap: 24px 8px; }
  .homepage-original .problem-grid article { padding-right: 10px; margin-right: 8px; }
  .homepage-original .problem-grid h3 { font-size: 13px; margin-top: 17px; }
  .homepage-original .problem-grid p { font-size: 11px; }
  .homepage-original .solution { margin: 0 8px; padding-top: 65px; padding-bottom: 70px; }
  .homepage-original .solution-grid { grid-template-columns: 1fr; gap: 10px; }
  .homepage-original .solution-card { min-height: 225px; padding: 21px; }
  .homepage-original .solution-card h3 { font-size: 21px; }
  .homepage-original .customers { padding-top: 65px; padding-bottom: 75px; }
}

/* Homepage media: fully visible artwork, robot demos, and a quiet logo marquee. */
.homepage-original .adapt-visual { margin: 15px 0 0; padding: 0; width: 100%; border: 0; background: transparent; transform: none; }
.homepage-original .adapt-visual img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: contain; filter: none; }
.homepage-original .adapt-visual::after { display: none; }
.homepage-original .adapt-visual figcaption { margin-top: 8px; color: #66717a; font: 7px var(--mono); letter-spacing: .1em; }
.homepage-original .edge-media-grid { display: grid; grid-template-columns: 1.18fr 1fr; gap: 8px; margin: 4px 0 3px; }
.homepage-original .edge-media-grid figure { min-width: 0; margin: 0; padding: 5px; background: rgba(4,18,31,.32); border: 1px solid #486078; }
.homepage-original .edge-media-grid img { display: block; width: 100%; height: 93px; object-fit: contain; }
.homepage-original .edge-media-grid figcaption { margin: 4px 1px 1px; color: #d5d3cd; font: 6px var(--mono); letter-spacing: .08em; }
.homepage-original .edge-card .chip-stage { height: 104px; margin-top: 7px; }
.homepage-original .edge-card .solution-type { margin-top: 12px; }
.homepage-original .demo-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.homepage-original .demo-card { margin: 0; padding: 10px; background: var(--paper-light); border: 1px solid #c2bcae; box-shadow: 3px 3px 0 rgba(16,45,75,.08); }
.homepage-original .demo-frame { position: relative; display: grid; place-items: center; width: 100%; height: 300px; overflow: hidden; background: #0b1f33; }
.homepage-original .demo-frame img { display: block; width: 100%; height: 100%; object-fit: contain; }
.homepage-original .demo-stamp { position: absolute; left: 10px; bottom: 10px; padding: 6px 8px; color: var(--paper-light); background: rgba(7,28,47,.88); font: 7px var(--mono); letter-spacing: .1em; }
.homepage-original .demo-card > figcaption { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 13px 5px 6px; }
.homepage-original .demo-card > figcaption strong { color: var(--navy); font-size: 17px; }
.homepage-original .demo-card > figcaption span { color: #656c70; font-size: 11px; }
.homepage-original .logo-marquee { width: 100%; overflow: hidden; border-bottom: 1px solid var(--line); mask-image: linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); }
.homepage-original .logo-track { display: flex; width: max-content; animation: trust-marquee 29s linear infinite; }
.homepage-original .logo-marquee:hover .logo-track { animation-play-state: paused; }
.homepage-original .logo-set { display: flex; flex: 0 0 auto; align-items: center; gap: 24px; padding: 0 12px; }
.homepage-original .logo-set .client-logo { flex: 0 0 220px; min-height: 140px; border-right: 1px solid var(--line); }
.homepage-original .logo-set .client-logo:last-child { border-right: 0; }
.homepage-original .logo-set .anscer img { width: 100%; max-width: 180px; }
.homepage-original .logo-set .terafac img { width: 100px; height: 100px; }
.homepage-original .logo-set .hiro img { width: 100%; max-width: 200px; }
.homepage-original .logo-set .mars-rover img { display: block; width: 145px; height: 120px; object-fit: contain; }
.homepage-original .customer-proof { max-width: none; margin-top: 23px; display: flex; align-items: flex-start; gap: 20px; color: #62676a; }
.homepage-original .customer-proof > span { flex: 0 0 auto; padding-top: 3px; color: #70767a; font: 8px var(--mono); letter-spacing: .12em; }
.homepage-original .customer-proof ul { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.homepage-original .customer-proof li { padding: 8px 10px; border: 1px solid #c7c1b5; color: var(--navy); background: rgba(248,245,237,.6); font-size: 11px; }
@keyframes trust-marquee { to { transform: translateX(-50%); } }
@media(max-width:800px) {
  .homepage-original .demo-frame { height: 240px; }
  .homepage-original .logo-set { gap: 12px; }
  .homepage-original .logo-set .client-logo { flex-basis: 185px; min-height: 120px; padding: 14px; }
  .homepage-original .customer-proof { flex-direction: column; gap: 10px; }
}
@media(max-width:560px) {
  .homepage-original .edge-media-grid img { height: 90px; }
  .homepage-original .demo-grid { grid-template-columns: 1fr; gap: 12px; }
  .homepage-original .demo-frame { height: auto; aspect-ratio: 4 / 3; }
  .homepage-original .demo-card:nth-child(2) .demo-frame { aspect-ratio: 1.62 / 1; }
  .homepage-original .demo-card > figcaption { display: block; }
  .homepage-original .demo-card > figcaption span { display: block; margin-top: 4px; }
  .homepage-original .logo-set .client-logo { flex-basis: 150px; min-height: 102px; padding: 8px; }
  .homepage-original .logo-set .terafac img { width: 75px; height: 75px; }
  .homepage-original .logo-set .mars-rover img { width: 125px; height: 100px; }
}
@media(prefers-reduced-motion:reduce) {
  .homepage-original .logo-track { animation: none; }
}

/* Product navigation and dedicated solution pages */
.homepage-original .fieldarena-visual { position: relative; z-index: 1; margin: -23px -23px 16px; overflow: hidden; border-bottom: 1px solid #bdb8ad; background: #e6e1d6; }
.homepage-original .fieldarena-visual img { display: block; width: 100%; height: auto; aspect-ratio: 2.7 / 1; object-fit: contain; }
.homepage-original .solution-link { display: inline-flex; align-items: center; gap: 15px; width: fit-content; margin-top: auto; padding: 17px 0 2px; border-bottom: 1px solid currentColor; color: var(--navy); font: 8px var(--mono); letter-spacing: .1em; }
.homepage-original .solution-link span { font-size: 12px; transition: transform .2s ease; }
.homepage-original .solution-link:hover span { transform: translate(3px,-3px); }
.homepage-original .featured .solution-link { color: var(--paper-light); }
.homepage-original .edge-media-grid { grid-template-columns: 1fr; }
.homepage-original .edge-inference-preview { max-width: 100%; }
.homepage-original .logo-set .client-logo { animation: trust-stamp 12s ease-in-out infinite; }
.homepage-original .logo-set .client-logo:nth-child(2) { animation-delay: -2.6s; }
.homepage-original .logo-set .client-logo:nth-child(3) { animation-delay: -5.2s; }
.homepage-original .logo-set .client-logo:nth-child(4) { animation-delay: -7.8s; }
.homepage-original .logo-marquee:hover .client-logo { animation-play-state: paused; }
@keyframes trust-stamp { 0%,100% { transform: translateY(0) rotate(0) scale(1); } 12% { transform: translateY(-4px) rotate(-1.2deg) scale(1.025); } 24% { transform: translateY(0) rotate(0) scale(1); } }
.product-page-body { min-height: 100vh; }
.product-page-hero { max-width: 1460px; margin: 0 auto; padding: 72px 8vw 38px; background: var(--paper-light); }
.product-page-copy { max-width: 880px; margin-bottom: 36px; }
.product-eyebrow { margin: 0 0 17px; color: #69727a; font: 8px var(--mono); letter-spacing: .15em; }
.product-page-copy h1 { max-width: 850px; margin: 0; color: var(--navy); font-size: clamp(42px,6vw,76px); line-height: 1.02; letter-spacing: -.065em; }
.product-page-copy > p:not(.product-eyebrow) { max-width: 700px; margin: 18px 0 22px; color: #4d555b; font-size: 15px; line-height: 1.75; }
.product-page-copy .button { margin-top: 4px; }
.product-page-image { margin: 0; padding: 10px; border: 1px solid #c9c4b8; background: #e5e0d6; }
.product-page-image img { display: block; width: 100%; height: auto; object-fit: contain; }
.product-page-image figcaption, .fieldedge-product-media figcaption { margin: 8px 2px 1px; color: #69727a; font: 7px var(--mono); letter-spacing: .12em; }
.product-page-body .product-details { padding-top: 76px; padding-bottom: 88px; }
.product-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-top: 34px; }
.product-feature-grid article { min-height: 170px; padding: 19px 20px 22px; border: 1px solid #c5bfb3; background: var(--paper-light); }
.product-feature-grid article > span { color: #6d7780; font: 8px var(--mono); }
.product-feature-grid h2 { margin: 20px 0 8px; color: var(--navy); font-size: 22px; letter-spacing: -.04em; }
.product-feature-grid p { margin: 0; color: #535a5f; font-size: 12px; line-height: 1.75; }
.product-cta { max-width: 1400px; margin: 0 auto 20px; padding: 34px 8vw 40px; display: flex; justify-content: space-between; align-items: center; gap: 24px; background: var(--navy); color: var(--paper-light); clip-path: polygon(0 0,100% 1%,100% 100%,74% 98%,42% 100%,0 98%); }
.product-cta > span { color: #c6cbd0; font: 8px var(--mono); letter-spacing: .14em; }
.product-cta a { font-size: 18px; font-weight: 600; }
.product-cta b { margin-left: 10px; font-weight: 400; }
.fieldadapt-page-hero { display: block; }
.fieldadapt-page-hero .product-page-copy { max-width: 980px; margin: 0 auto; }
.fieldadapt-page-hero .product-page-copy h1 { max-width: 900px; font-size: clamp(48px,6.4vw,78px); }
.fieldadapt-page-image { max-width: 1180px; margin: 34px auto 0; padding: 0; border: 0; background: transparent; }
.fieldadapt-page-image img { width: 100%; height: auto; object-fit: contain; -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 4%, #000 96%, transparent 100%), linear-gradient(to bottom, transparent 0%, #000 7%, #000 93%, transparent 100%); -webkit-mask-composite: source-in; mask-image: linear-gradient(to right, transparent 0%, #000 4%, #000 96%, transparent 100%), linear-gradient(to bottom, transparent 0%, #000 7%, #000 93%, transparent 100%); mask-composite: intersect; }
.fieldedge-product-media { display: grid; grid-template-columns: 1.35fr .9fr; gap: 13px; align-items: stretch; }
.fieldedge-product-media figure { min-width: 0; margin: 0; padding: 10px; display: flex; flex-direction: column; justify-content: center; border: 1px solid #b9b3a8; background: #e8e3d8; }
.fieldedge-product-media img { display: block; width: 100%; height: 100%; max-height: 390px; object-fit: contain; }
.product-demo-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin-top: 42px; }
.product-demo-pair figure { margin: 0; padding: 10px; border: 1px solid #c5bfb3; background: var(--paper-light); }
.product-demo-pair img { display: block; width: 100%; height: 280px; object-fit: contain; background: #0b1f33; }
.product-demo-pair figcaption { padding: 10px 3px 3px; color: var(--navy); font: 7px var(--mono); letter-spacing: .1em; }
@media(max-width:900px) {
  .desktop-nav { gap: 15px; }
  .product-page-hero { padding-right: 6vw; padding-left: 6vw; }
  .fieldadapt-page-image { margin-top: 27px; }
}
@media(max-width:700px) {
  .product-page-hero { padding: 50px 7vw 28px; }
  .product-page-copy h1 { font-size: clamp(40px,10vw,58px); }
  .product-page-copy > p:not(.product-eyebrow) { font-size: 13px; }
  .product-feature-grid { grid-template-columns: 1fr; gap: 9px; }
  .product-feature-grid article { min-height: 0; }
  .product-feature-grid h2 { margin-top: 13px; }
  .product-cta { display: block; margin: 0 9px 14px; padding: 27px 7vw 32px; }
  .product-cta a { display: block; margin-top: 12px; font-size: 16px; }
  .fieldadapt-page-image { max-width: 100%; margin-top: 24px; }
  .fieldedge-product-media { grid-template-columns: 1fr; }
  .fieldedge-product-media img { max-height: 260px; }
  .product-demo-pair { grid-template-columns: 1fr; margin-top: 25px; }
  .product-demo-pair img { height: auto; aspect-ratio: 4 / 3; }
}
@media(prefers-reduced-motion:reduce) {
  .homepage-original .logo-set .client-logo { animation: none; }
}

/* Keep hero copy clear of the artwork at tablet and desktop widths. */
.homepage-original .hero-copy { width: 52%; max-width: 710px; }
.homepage-original .hero-visual { right: 0; width: 46%; }
.homepage-original .hero-visual img { -webkit-mask-image: linear-gradient(90deg,transparent 0%,#000 5%); mask-image: linear-gradient(90deg,transparent 0%,#000 5%); }
@media(max-width:800px) and (min-width:561px) {
  .homepage-original .hero-copy { width: 52%; }
  .homepage-original .hero h1 { font-size: clamp(43px,6.5vw,56px); }
  .homepage-original .hero-visual { top: 0; right: 0; bottom: auto; width: 46%; height: 100%; }
  .homepage-original .hero-visual img { height: 100%; }
}
@media(max-width:560px) {
  .homepage-original .hero { display: flex; flex-direction: column; min-height: 0; padding-bottom: 0; }
  .homepage-original .hero-copy { width: 100%; }
  .homepage-original .hero-visual { position: relative; inset: auto; width: 100%; height: auto; aspect-ratio: 1.45 / 1; margin-top: 24px; }
  .homepage-original .hero-visual img { position: absolute; inset: 0; width: 100%; height: 100%; -webkit-mask-image: none; mask-image: none; }
  .homepage-original .hero-foot { bottom: 12px; }
}

/* Painterly homepage palette: canvas texture and a unified illustrated product set. */
.homepage-original::after { opacity: .065; }
.homepage-original .hero { background-color: #eee6d8; background-image: radial-gradient(ellipse at 18% 24%,rgba(255,255,255,.42),transparent 48%),repeating-linear-gradient(93deg,rgba(77,60,39,.018) 0 1px,transparent 1px 5px); }
.homepage-original .problem { background-image: radial-gradient(ellipse at 88% 45%,rgba(160,118,70,.055),transparent 40%); }
.homepage-original .solution { background-color: #e4d9c8; background-image: radial-gradient(ellipse at 14% 26%,rgba(255,255,255,.34),transparent 42%),repeating-linear-gradient(2deg,rgba(81,65,48,.025) 0 1px,transparent 1px 6px); }
.homepage-original .solution-card { --card-accent: #315777; min-height: 0; overflow: hidden; border: 1px solid rgba(77,64,47,.28); background-color: #eee6d8; background-image: radial-gradient(ellipse at 84% 92%,rgba(115,83,49,.06),transparent 42%),repeating-linear-gradient(88deg,rgba(68,54,38,.02) 0 1px,transparent 1px 6px); transition: transform .3s ease, border-color .3s ease, background-color .3s ease; }
.homepage-original .arena-card { --card-accent: #315777; background-color: #e8e2d6; }
.homepage-original .adapt-card { --card-accent: #9a5b43; background-color: #ece1d2; }
.homepage-original .edge-card { --card-accent: #a07d49; background-color: #e5e0d3; }
.homepage-original .solution-card:hover { transform: translateY(-5px) rotate(-.2deg); border-color: var(--card-accent); }
.homepage-original .solution-card::before { top: 0; right: 0; left: 0; width: 100%; height: 6px; background: var(--card-accent); clip-path: polygon(0 23%,12% 38%,24% 16%,39% 43%,54% 19%,69% 35%,84% 12%,100% 28%,100% 73%,80% 62%,62% 81%,43% 58%,27% 80%,10% 64%,0 76%); opacity: .88; }
.homepage-original .solution-card::after { left: 17px; right: 17px; bottom: 12px; height: 2px; background: var(--card-accent); clip-path: polygon(0 32%,23% 0,45% 35%,68% 10%,100% 28%,100% 57%,70% 51%,43% 76%,19% 43%,0 68%); opacity: .58; transform: rotate(-.2deg); }
.homepage-original .solution-card .solution-top { color: color-mix(in srgb,var(--card-accent) 70%,#625b52); }
.homepage-original .solution-card .solution-symbol { color: var(--card-accent); border-radius: 42% 58% 45% 55%; transform: rotate(-5deg); }
.homepage-original .solution-card .solution-type { color: var(--card-accent); }
.homepage-original .solution-card h3 { color: #17232d; }
.homepage-original .solution-card > p:last-of-type { color: #4e5558; }
.homepage-original .product-card-visual { position: relative; z-index: 1; margin: -23px -23px 16px; overflow: hidden; aspect-ratio: 1.76 / 1; border-bottom: 1px solid rgba(67,56,43,.25); background: #d5ccbd; }
.homepage-original .product-card-visual img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.88) contrast(.97); }
.homepage-original .product-card-visual::after { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .16; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)' opacity='.45'/%3E%3C/svg%3E"); mix-blend-mode: multiply; }
.homepage-original .solution-link { position: relative; z-index: 1; color: var(--card-accent); border-color: color-mix(in srgb,var(--card-accent) 55%,transparent); }
.homepage-original .flow-line { color: #55544e; }
.homepage-original .flow-line b { background: #a99b84; }
.homepage-original .statement { background-image: radial-gradient(ellipse at 82% 35%,rgba(132,96,58,.055),transparent 45%); }
.homepage-original .customers { background-image: radial-gradient(ellipse at 28% 55%,rgba(150,116,73,.045),transparent 48%); }
.homepage-original .contact { background-color: #273a4d; background-image: repeating-linear-gradient(2deg,rgba(231,222,205,.025) 0 1px,transparent 1px 7px); }
.homepage-original .button-dark { box-shadow: 3px 3px 0 #9a8b73; }
@media(max-width:560px) {
  .homepage-original .product-card-visual { margin: -21px -21px 15px; }
}

/* FieldArena product page: a native dashboard preview instead of a screenshot. */
.fieldarena-hero { display: grid; grid-template-columns: minmax(270px,.72fr) minmax(0,1.28fr); gap: clamp(28px,4vw,60px); align-items: center; max-width: 1520px; padding: 48px clamp(24px,5vw,76px) 42px; }
.fieldarena-hero .product-page-copy { margin: 0; }
.fieldarena-hero .product-page-copy h1 { max-width: 510px; font-size: clamp(42px,4.5vw,64px); line-height: 1.01; letter-spacing: -.065em; }
.fieldarena-hero .product-page-copy > p:not(.product-eyebrow) { max-width: 460px; margin: 20px 0 24px; font-size: 14px; line-height: 1.7; }
.fieldarena-hero-notes { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 40px; color: #5e6871; font: 8px var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.fieldarena-hero-notes b { color: #9a7950; font-size: 12px; font-weight: 400; }
.fieldarena-console { min-width: 0; padding: 18px 20px 12px; border: 1px solid #c8c3b8; background: #faf8f2; color: #17212a; box-shadow: 0 14px 34px rgba(28,36,43,.08); }
.console-topline { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding-bottom: 13px; border-bottom: 1px solid #d8d4cb; color: #5c6468; font: 7px var(--mono); letter-spacing: .12em; }
.console-topline i { display: inline-block; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: #55785f; vertical-align: 1px; }
.console-selectors { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 13px 0; }
.console-selectors > div { min-width: 0; padding: 8px 10px; border: 1px solid #d8d4cb; background: #f7f5ee; }
.console-selectors small, .console-section-heading small, .inference-panel > small { display: block; margin-bottom: 5px; color: #737a7e; font: 7px var(--mono); letter-spacing: .1em; }
.console-selectors strong { display: flex; justify-content: space-between; gap: 8px; font-size: 10px; font-weight: 500; }
.console-selectors strong span { color: #6a737b; }
.rollout-strip { position: relative; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 5px; padding-bottom: 15px; }
.rollout-strip figure { position: relative; margin: 0; min-width: 0; height: clamp(52px,7.5vw,94px); overflow: hidden; background: #d8d5cc; }
.rollout-strip img { display: block; width: 100%; height: 100%; object-fit: cover; filter: grayscale(.72) contrast(1.02); }
.rollout-strip figure span { position: absolute; right: 5px; bottom: 4px; color: white; font: 7px var(--mono); text-shadow: 0 1px 4px #000; }
.rollout-track { position: absolute; right: 0; bottom: 4px; left: 0; height: 2px; background: #d5d7d8; }
.rollout-track span { display: block; width: 62%; height: 100%; background: #315f9d; }
.console-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(155px,.8fr); gap: 14px; padding-top: 8px; border-top: 1px solid #e0ddd5; }
.console-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 8px; margin-bottom: 9px; }
.console-section-heading h2, .inference-panel h2 { margin: 0; color: #19232c; font-size: 13px; letter-spacing: -.03em; }
.console-section-heading > span { color: #747b7f; font: 7px var(--mono); letter-spacing: .08em; }
.comparison-row { display: grid; grid-template-columns: .75fr 1.4fr .72fr; align-items: center; gap: 7px; min-height: 27px; border-top: 1px solid #e5e2dc; font-size: 8px; }
.comparison-row > b { font-size: 9px; font-weight: 600; }
.comparison-row > span:nth-child(2) { display: flex; align-items: center; gap: 6px; color: #777e81; font-size: 7px; }
.comparison-row a { color: #476c9d; font-size: 7px; text-align: right; text-decoration: none; }
.comparison-row a:hover { text-decoration: underline; }
.comparison-head { min-height: 20px; color: #7c8285; font-size: 7px; }
.outcome-line { display: inline-block; width: 20px; height: 4px; background: #9ab4d5; }
.outcome-line.short { width: 15px; }.outcome-line.shorter { width: 12px; }.outcome-line.tiny { width: 9px; }
.inference-panel { padding: 10px; background: #f0eee8; }
.inference-panel dl { margin: 12px 0 9px; }
.inference-panel dl > div { display: flex; justify-content: space-between; gap: 7px; padding: 7px 0; border-top: 1px solid #dad7cf; font-size: 7px; }
.inference-panel dt { color: #697176; }.inference-panel dd { margin: 0; color: #27323a; text-align: right; }
.inference-panel dd b { display: inline-block; width: 5px; height: 5px; margin-right: 3px; border-radius: 50%; background: #63836a; }
.inference-panel > a { color: #476c9d; font-size: 8px; text-decoration: none; }
.inference-panel > a:hover { text-decoration: underline; }
.console-foot { display: flex; justify-content: space-between; gap: 8px; margin-top: 10px; padding-top: 9px; border-top: 1px solid #ddd9d0; color: #85898a; font: 6px var(--mono); letter-spacing: .07em; text-transform: uppercase; }
@media(max-width:1050px) {
  .fieldarena-hero { grid-template-columns: minmax(235px,.7fr) minmax(0,1.3fr); gap: 25px; padding-right: 4vw; padding-left: 4vw; }
  .fieldarena-console { padding: 14px; }
}
@media(max-width:760px) {
  .fieldarena-hero { grid-template-columns: 1fr; gap: 28px; padding: 40px 6vw 32px; }
  .fieldarena-hero .product-page-copy { max-width: 650px; }
  .fieldarena-hero .product-page-copy h1 { max-width: 640px; font-size: clamp(42px,8vw,62px); }
  .fieldarena-hero-notes { margin-top: 25px; }
  .fieldarena-console { width: 100%; }
}
@media(max-width:480px) {
  .fieldarena-console { padding: 11px; }
  .console-topline { font-size: 6px; }
  .console-grid { grid-template-columns: 1fr; }
  .inference-panel { display: grid; grid-template-columns: 1fr auto; align-items: center; column-gap: 10px; }
  .inference-panel > small { grid-column: 1; }
  .inference-panel h2 { grid-column: 1; }
  .inference-panel dl { grid-column: 1 / -1; }
  .inference-panel > a { grid-column: 2; grid-row: 1 / 3; }
}

/* Give the robot-F mark a tactile stamp treatment and a stronger header presence. */
.topbar .wordmark {
  gap: 13px;
  padding: 5px 12px 5px 5px;
  border: 1px solid rgba(16,45,75,.22);
  background: linear-gradient(112deg, rgba(248,245,237,.94), rgba(224,213,194,.82));
  box-shadow: 3px 3px 0 rgba(154,121,80,.72);
  transform: rotate(-.35deg);
  transition: transform .2s ease, box-shadow .2s ease;
}
.topbar .wordmark:hover {
  transform: translateY(-2px) rotate(0);
  box-shadow: 4px 5px 0 rgba(154,121,80,.78);
}
.topbar .brand-icon {
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
  padding: 5px;
  border: 1px solid rgba(16,45,75,.88);
  border-radius: 43% 57% 49% 51%;
  background-color: #eee3d0;
  background-image: radial-gradient(ellipse at 26% 20%, rgba(255,255,255,.68), transparent 45%), repeating-linear-gradient(103deg, rgba(93,72,48,.035) 0 1px, transparent 1px 5px);
  box-shadow: inset 0 0 0 2px rgba(248,245,237,.55), 2px 2px 0 rgba(16,45,75,.2);
  transform: rotate(-3deg);
}
.topbar .brand-name {
  font-size: 21px;
  letter-spacing: .035em;
}
.topbar .brand-name > span {
  font-size: 28px;
}
@media(max-width:560px) {
  .topbar .wordmark { gap: 10px; padding: 4px 9px 4px 4px; }
  .topbar .brand-icon { flex-basis: 46px; width: 46px; height: 46px; }
  .topbar .brand-name { font-size: 18px; }
  .topbar .brand-name > span { font-size: 24px; }
}
