/* Navy, blue-teal and cyan from the squad illustration, balanced by light surfaces. */
:root{--bg:#e5edf1;--ink:#102f3e;--teal:#247e94;--aqua:#65ccde;--muted:#536f7e;--line:#c3d5de;--wash:#dae7ed;--navy:#102f3e}body{background:var(--bg)}header{background:#eaf1f5ed;border-bottom-color:#c3d5de}.wordmark i{background:#afc9d5}.button{background:#163f52;border-color:#163f52}.button:hover{background:#205d73;border-color:#205d73}.hero{background:#dce8ed}.hero .hero-intro{color:#496a7c}.hero .hero-note{color:#5c7d8f}.hero-badge{background:#edf6faeb;border-color:#dcecf3;box-shadow:0 12px 35px #173f5514}.badge-icon{background:#d8eaf2;color:#247e94}.hero-bottom{border-top-color:#bacfd9;color:#54798c}.hero-bottom button{color:#54798c}.hero-art .sculpture{opacity:.96}.principles{background:#d2e2e9;border-bottom-color:#b8d0dc;color:#3b6276}.section-heading>p:last-child{color:#536f7e}.products .product{background:#edf4f8;border-color:#bdd2dd}.products .product.autonomous{background:#cee4ed;border-color:#a9cddc}.product-foot{border-top-color:#b8cfdc}.hybrid{background:#d9e7ee;border-color:#b9d0dd;color:#4b7084}.squad-section{background:#d8e6ec}.squad-base{border-top-color:#abc6d4}.squad-base span{color:#29778e}.squad-base p{color:#527486}.fine{color:#5b7a8c}.workflow-section{background:#e5edf1}.ticket{background:#d8e7ee;border-color:#b6cedc}.ticket-status{border-top-color:#b5cddd}.evidence{background:#cde5ec;color:#236d83}.memory-section{background:#cedfe8}.memory-art{background:#e1edf3;border-color:#b0cadb;box-shadow:0 20px 65px #1747650c}.memory-art:before,.memory-art:after{background:#d6e5ed;border-color:#b9d1df}.knowledge-card{background:#eef5f9;border-color:#c7dae6}.knowledge-icon{background:#d9eaf2;color:#367891}.knowledge-card p{color:#69899b}.mini-network,.knowledge-code{color:#4c95b0}.memory-lock{color:#5c8296}.memory-bottom{color:#527f98}.memory-tags span{background:#bcd9e8;border-color:#9ec4d7;color:#245f7b}.memory-copy>p:not(.eyebrow){color:#4b6f84}.analysis-section{background:#e5edf1}.scan{background:#e1edf3;border-color:#b7d0df;box-shadow:0 16px 45px #163d560b}.repository-preview{background:#e8f1f6;border-color:#c3d9e6}.repo-sidebar{background:#d2e3ed;color:#5a8098}.repo-sidebar .file-selected{background:#b9d6e7;color:#296581}.repo-code{color:#456e87}.repo-code b{color:#8aacbe}.finding-icon{background:#cde3ee;border-color:#abcbdc;color:#287f9d}.finding,.outcomes,.analysis-steps article{border-color:#bfd3df}.faq-section{background:#d7e5ed;border-top-color:#bbd1df}.faq-list details{border-color:#aecad9}.contact-section{background:#173e50;color:#f1f8fc}.contact-section .eyebrow,.contact-section .label{color:#78d2e3}.contact-section>div>p:not(.eyebrow){color:#b2cedd}.contact-section .text-link{color:#8dd8e6}.enquiry{background:#ffffff04;border-color:#527d94}.enquiry select,.enquiry textarea{background:#1d485d;border-color:#5b879f}.enquiry .button{background:#7ccddd;color:#10394b}.enquiry .button:hover{background:#a0e0ea}.enquiry>.fine{color:#aacbdc!important}footer{background:#d4e3eb;border-top:1px solid #bdd1de}footer p,footer>a:not(.brand){color:#51758c}.reference-board .role-insight{background:#e7f1f7;border-color:#bcd4e2}.reference-board .diagram-caption{color:#64869c}
@media(max-width:760px){.hero{background:#dce8ed}.hero-copy .hero-intro{color:#496a7c}}
/* Decorative arrows use SVG geometry, independent of mobile fallback fonts. */
.ui-arrow{display:inline-block;width:20px;height:20px;min-width:20px;flex:0 0 20px;vertical-align:middle;overflow:visible;line-height:1;pointer-events:none}.ui-arrow path{vector-effect:non-scaling-stroke}.with-ui-arrow{display:inline-flex;align-items:center}.with-ui-arrow>span:has(>.ui-arrow){display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0}.button.small .ui-arrow{width:18px;height:18px;min-width:18px;flex-basis:18px}.text-link .ui-arrow,.hero-bottom .ui-arrow,footer .ui-arrow{width:17px;height:17px;min-width:17px;flex-basis:17px}.badge-icon .ui-arrow{width:18px;height:18px;min-width:18px}.mini-orbit .ui-arrow{width:26px;height:26px;min-width:26px}.insight-hint .ui-arrow,.memory-bottom .ui-arrow{width:13px;height:13px;min-width:13px}.workflow-controls .with-ui-arrow,footer .with-ui-arrow{gap:8px}.button,.text-link{overflow:visible}
@media(max-width:760px){.button.small .ui-arrow{width:16px;height:16px;min-width:16px;flex-basis:16px}.actions .ui-arrow{width:18px;height:18px;min-width:18px;flex-basis:18px}}
/* Approved hero direction: Fusion Core. */
.hero{display:flex;align-items:center;min-height:660px;padding:70px 5.5% 110px;background:#dce8ed;isolation:isolate}.hero .hero-copy{position:relative;z-index:2;max-width:700px;padding:25px 0}.hero h1{font-size:clamp(48px,5.1vw,75px);line-height:1.15;letter-spacing:-3.8px;font-weight:550}.hero .hero-art{position:absolute;inset:0 0 0 36%;margin:0;display:block;min-width:0;max-height:none;z-index:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 18%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 18%)}.fusion-core-image{width:100%;height:100%;display:block;object-fit:cover;object-position:62% center;animation:fusion-core-drift 22s ease-in-out infinite alternate}.hero:after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#dce8ed 0%,#dce8ed 32%,#dce8edf0 39%,#dce8ed9c 46%,#dce8ed00 62%);pointer-events:none}.fusion-core-light{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 69% 49%,#70d3e322,transparent 34%);mix-blend-mode:screen;animation:fusion-core-pulse 7s ease-in-out infinite}.hero .hero-bottom{z-index:3}.hero-intro{max-width:410px}.hero-bottom>span{letter-spacing:1.4px;font-size:8px}@keyframes fusion-core-drift{from{transform:scale(1)}to{transform:scale(1.025)}}@keyframes fusion-core-pulse{0%,100%{opacity:.18}50%{opacity:.7}}
@media(min-width:1600px){.hero{min-height:760px;padding-left:max(5.5vw,calc((100vw - 1440px)/2));padding-right:max(5.5vw,calc((100vw - 1440px)/2))}}
@media(max-width:1000px) and (min-width:761px){.hero{min-height:620px;padding-top:55px}.hero h1{font-size:58px;letter-spacing:-3px}.hero-intro{max-width:350px;font-size:15px}}
@media(max-width:760px){.hero{display:flex;flex-direction:column;align-items:stretch;padding:43px 6% 55px;min-height:0;background:#dce8ed}.hero .hero-copy{order:1;padding:0;max-width:100%}.hero h1{font-size:clamp(37px,8.8vw,63px);letter-spacing:-2.2px;white-space:normal;line-height:1.17}.hero .hero-art{order:2;position:relative;inset:auto;margin:25px -6.82% 0;width:113.64%;height:auto;aspect-ratio:3/2;align-self:center;min-height:0;mask-image:linear-gradient(transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 10%,#000 90%,transparent)}.fusion-core-image{height:100%;width:100%;object-fit:cover;object-position:62% center}.hero:after{display:none}.hero .hero-intro{font-size:14px;max-width:380px;line-height:1.8}.hero .hero-note{font-size:9px;margin-top:22px}.hero .hero-bottom{height:45px;left:6%;right:6%}.hero .hero-bottom>span{display:none}.hero .hero-bottom a{font-size:9px}.hero .hero-bottom button{font-size:9px}}
@media(prefers-reduced-motion:reduce){.fusion-core-image,.fusion-core-light{animation:none!important}}

/* One visual rhythm across the engineering story. */
.section{padding-top:88px;padding-bottom:88px}.section-heading{margin-bottom:36px}.section-heading .eyebrow{margin-bottom:20px}.section-heading>p:last-child{margin-top:20px;line-height:1.8}.fine{font-size:11px;line-height:1.7}.product,.memory-art,.scan,.enquiry{border-radius:12px}.delivery-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:28px;padding-top:30px;border-top:1px solid var(--line)}.delivery-principles article{min-width:0}.delivery-principles .label{font-size:9px;letter-spacing:1.1px;color:var(--teal)}.delivery-principles h3{font-size:18px;line-height:1.4;margin:12px 0 10px;font-weight:600;letter-spacing:-.35px}.delivery-principles p{font-size:13px;line-height:1.8;color:var(--muted)}.contact-direct{font-size:11px!important;line-height:1.8;color:#aacbdc!important;margin:16px 0 0!important}.contact-direct a{color:#91dbea;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.contact-section .text-link{margin-top:20px}fusion-workbench{max-width:1120px;margin-inline:auto}.squad-base{margin-top:32px}.analysis-steps article{padding-top:22px;padding-bottom:22px}
@media(max-width:760px){.section{padding-top:60px;padding-bottom:60px}.section-heading{margin-bottom:28px}.section-heading .eyebrow{margin-bottom:16px}.delivery-principles{grid-template-columns:1fr;gap:22px;margin-top:22px;padding-top:25px}.delivery-principles h3{margin:8px 0 6px;font-size:17px}.delivery-principles p{font-size:12px}.fine{font-size:10px}.contact-direct{font-size:11px!important}}

/* Tighter spacing through the main story, with generous opening and contact. */
.section:not(.contact-section){padding-top:66px;padding-bottom:66px}.section-heading{margin-bottom:26px}.section-heading>p:last-child{margin-top:16px}.squad-base{margin-top:24px;padding-top:20px}.squad-section>.fine{margin-top:16px}.delivery-principles{margin-top:18px;padding-top:24px;gap:28px}.outcomes{margin-top:30px;padding-top:24px}.reference-board .diagram-caption{margin-top:10px}
@media(max-width:760px){.section:not(.contact-section){padding-top:46px;padding-bottom:46px}.section-heading{margin-bottom:22px}.section-heading>p:last-child{margin-top:14px}.squad-base{margin-top:22px;gap:18px}.delivery-principles{margin-top:14px;padding-top:20px;gap:20px}.outcomes{margin-top:24px;padding-top:20px;gap:18px}}

/* A short homepage invitation, with enquiries on their own page. */
.contact-invitation{padding:38px 7%;display:flex;align-items:center;justify-content:space-between;gap:26px;background:#cedfe8;border-top:1px solid #bbd1df}.contact-invitation .eyebrow{margin-bottom:10px}.contact-invitation h2{font-size:clamp(24px,2.5vw,34px);letter-spacing:-1.2px}.contact-invitation .button{gap:30px;flex-shrink:0}footer{flex-wrap:wrap}footer .copyright{flex-basis:100%;width:100%;font-size:11px;margin:0;padding-top:18px;border-top:1px solid #b9cfdc;line-height:1.6}.contact-page main{background:#173e50}.contact-page-section{min-height:calc(100svh - 280px);max-width:1440px;gap:8%;align-items:start}.contact-page-section h1{font-size:clamp(46px,5vw,68px);line-height:1.15;letter-spacing:-3px;margin:22px 0 24px}.contact-page-section>div>p:not(.eyebrow){max-width:440px;line-height:1.8}.contact-page .enquiry select,.contact-page .enquiry textarea{font-size:16px}.contact-page .enquiry textarea{resize:vertical;min-height:120px}.contact-page .enquiry .button{min-height:48px}.contact-page-section:before{pointer-events:none}.contact-page header [aria-current=page]{background:#205d73}footer a:not(.brand){min-height:40px;display:inline-flex;align-items:center}
@media(max-width:760px){.contact-invitation{padding:28px 6%;align-items:flex-start;flex-direction:column;gap:20px}.contact-invitation h2{font-size:26px}.contact-invitation .button{min-height:46px}.contact-page-section{padding-top:38px;padding-bottom:42px;gap:26px;min-height:0}.contact-page-section h1{font-size:46px;letter-spacing:-2px;margin:17px 0 18px}.contact-page-section h1 br{display:none}.contact-page-section .enquiry{padding:22px}.contact-page-section .enquiry>.label{margin-bottom:20px!important}footer{gap:10px 24px}footer .brand{margin-bottom:4px}footer p:not(.copyright){margin-bottom:6px}footer .copyright{margin-top:6px;padding-top:16px}}

@media(max-width:760px){header .button.small{min-height:44px}#expand-diagram{min-height:44px}.diagram-zoom-controls>button{min-height:44px;min-width:44px}.diagram-viewer-toolbar{min-height:122px}.diagram-viewer-viewport{height:calc(100dvh - 164px)}.contact-page .contact-page-section h1{word-spacing:0}.contact-page-section .contact-direct{font-size:12px!important}.contact-page-section .enquiry label{font-size:12px}}

/* FAQs have a dedicated page and remain visible in the mobile header. */
.header-actions{display:flex;align-items:center;gap:24px}.header-faq{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:44px;font-size:13px;font-weight:500}.header-faq:hover,.header-faq[aria-current=page]{color:var(--teal)}.header-faq[aria-current=page]{text-decoration:underline;text-underline-offset:6px}.faq-page-section{min-height:0;max-width:1440px;margin:auto;background:transparent;border-top:0;align-items:start}.faq-page{background:#d7e5ed}.faq-page h1{font-size:clamp(38px,4.5vw,60px);line-height:1.15;letter-spacing:-2px;margin-top:22px}.faq-intro{color:var(--muted);font-size:14px;line-height:1.8;margin-top:24px;max-width:360px}.faq-page .faq-list details:first-child{border-top:1px solid #aecad9}.faq-page .faq-list summary{padding:23px 0}.faq-page .faq-list p{font-size:14px;line-height:1.85}
@media(max-width:1000px) and (min-width:761px){header nav{gap:16px;font-size:12px}.header-actions{gap:15px}}
@media(max-width:760px){.header-actions{gap:12px}.header-faq{font-size:12px}.faq-page h1{font-size:38px;letter-spacing:-1.8px;margin-top:18px}.faq-intro{font-size:13px;margin-top:18px}.faq-page-section{gap:24px;min-height:0}.faq-page .faq-list p{font-size:13px}.faq-page .faq-list summary{font-size:14px;line-height:1.6}.faq-page h1 br{display:none}}
@media(max-width:400px){header .wordmark{gap:7px}header .wordmark img{width:26px;height:26px}header .wordmark>span{font-size:18px;gap:7px}header .wordmark strong{font-size:10px;letter-spacing:1px}header .wordmark i{height:17px}.header-actions{gap:7px}header .button.small{padding-inline:10px;gap:9px}header .button.small .ui-arrow{width:14px;height:14px;min-width:14px;flex-basis:14px}.header-faq{min-width:34px;font-size:11px}}

.motion-legend-item{display:inline-flex;align-items:center;gap:8px}
/* Readable mobile instructions and service qualifications. */
@media(max-width:760px){.product.standard .product-foot>p{font-size:13px;line-height:1.8;color:#3f6274}.motion-legend{font-size:11px;line-height:1.65;gap:6px 16px}.motion-legend-item{gap:7px}.motion-legend b{margin-left:0}.diagram-status>span:last-child{font-size:12px}.diagram-view-actions{font-size:11px}.diagram-view-actions>button{font-size:12px}.reference-board .diagram-caption{font-size:10px;line-height:1.7;letter-spacing:.35px}.reference-board .role-insight p{font-size:12px}.squad-section>.fine{font-size:11px;line-height:1.75}}
