/* Shared site chrome, interaction scale and contact page. Product colours stay local. */
@font-face{font-family:Axiom UI;src:url('/assets/2e4538dc4eb334df.woff2') format('woff2');font-weight:300 900;font-style:normal;font-display:swap}
.site-header,.site-footer,.skip-link{font-family:'Axiom UI',sans-serif}.site-header{background:#0d171fee;font-size:15px}.wordmark{display:inline-flex;align-items:baseline;gap:3px;font-weight:500!important;font-size:25px;letter-spacing:-1px}.wordmark span{font-weight:350}.site-header .nav-cta{border-radius:4px!important}.site-header :is(#product-links,#service-links){border-radius:6px}.site-header :is(#product-links,#service-links) a{border-radius:3px}.site-header a,.site-header button{min-height:44px;align-content:center}.site-header .wordmark{align-items:center}#site-navigation a[aria-current=page]{color:#fff;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#8eaab9}#site-navigation .nav-cta[aria-current]{text-decoration:none}#site-navigation .product-menu:has(a[aria-current=page])>.products-toggle{color:#fff}.site-footer{width:min(1200px,calc(100% - 96px));margin-inline:auto;padding:44px 0 30px;border-top:1px solid #ffffff24;color:#a9bcc8;line-height:1.6}.site-footer-top{display:flex;justify-content:space-between;gap:40px;align-items:center}.site-footer p{margin:10px 0 0;font-size:13px;color:#a3b6c2}.site-footer nav{display:flex;flex-wrap:wrap;gap:12px 24px}.site-footer nav a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:#bdccd5;text-decoration:none}.site-footer a:hover,.site-footer a[aria-current=page]{color:#fff;text-decoration:underline;text-underline-offset:5px}.site-footer a.wordmark{text-decoration:none}.site-footer-bottom{display:flex;justify-content:space-between;gap:22px;border-top:1px solid #ffffff18;padding-top:22px;margin-top:30px;font-size:11px;color:#9eb2bf}.ax-button,.geo-button,.nx-button,.rv-button{min-height:48px;border-radius:4px!important;font-size:14px;font-weight:600}.ax-text-link,.text-link,.nx-text-link,.rv-text-link{min-height:44px;align-items:center}.nx-tabs button,.workflow-tabs button,.rv-mode-tabs button{min-height:44px}dialog{overscroll-behavior:contain}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[role=tabpanel]:focus-visible{outline:2px solid #8ab7d5!important;outline-offset:4px!important}.rv-hero a:focus-visible,.rv-hero button:focus-visible,.rv-source-dialog button:focus-visible,.nx-evidence button:focus-visible,.nx-cta a:focus-visible,.ax-about-cta a:focus-visible{outline-color:#315f73!important}.rv-answer p button{min-width:28px;min-height:28px}.ax-context h2 span{color:#58727e!important}.nx-dialog .close-image,.geo-page .close-image,.rv-source-dialog [data-close-source]{min-height:44px;min-width:70px}.ax-contact{background:var(--bg)}.contact-section{padding-block:145px 90px;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.contact-intro h1{font-size:61px;line-height:1.12}.contact-intro>p:not(.ax-eyebrow){font-size:17px;line-height:1.8;margin-top:28px;max-width:460px;color:#aebfca}.contact-intro .contact-small{font-size:14px!important}.contact-topics{border-top:1px solid #ffffff24;margin-top:36px}.contact-topics a{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid #ffffff24;color:#a0b6c4;font-size:12px;text-decoration:none}.contact-topics a span:first-child{font-size:18px;color:#e2eaee;min-width:112px}.contact-topics a span:last-child{margin-left:auto;color:#abc4d2;font-size:20px}.contact-topics a:hover{color:#fff}.contact-form{padding:32px;border:1px solid #415663;background:#17252f}.contact-form h2{font-size:28px;line-height:1.2;margin:0 0 23px}.contact-preview-note{font-size:13px;line-height:1.7;color:#c6d6e0;padding:15px 17px;background:#21343f;border-left:2px solid #86aabd;margin-bottom:27px!important}.contact-form label{display:block;color:#d2dfe7;font-size:13px;margin-bottom:8px}.contact-form label span{color:#9eb3c1;font-size:12px}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;min-width:0;font:16px/1.5 'Axiom UI',sans-serif;border:1px solid #48606e;border-radius:4px!important;background:#0f1c25;color:#e0ebf1;padding:11px 13px;min-height:47px;margin:0 0 21px;color-scheme:dark}.contact-form textarea{resize:vertical;min-height:140px}.contact-form textarea::placeholder{color:#8ea6b6}.contact-field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form .contact-privacy{font-size:11px;color:#9fb5c3;margin-top:15px;line-height:1.6}.contact-form .form-status{font:14px/1.7 'Axiom UI',sans-serif!important;margin:20px 0 0;border-radius:4px;background:#21343f;border-color:#5a7888;color:#e2edf4!important}.contact-form .ax-button{cursor:pointer;font-family:inherit;width:100%}
@media(max-width:1050px){.contact-section{gap:45px}.contact-intro h1{font-size:50px}.contact-form{padding:26px}}
@media(max-width:809px){.wordmark{font-size:23px}.site-footer{width:calc(100% - 40px);padding-block:32px 25px}.site-footer-top{display:block}.site-footer nav{margin-top:22px;gap:4px 22px}.site-footer-bottom{font-size:10px;margin-top:22px;flex-wrap:wrap;gap:8px}.ax-button,.geo-button,.nx-button,.rv-button{font-size:13px}.contact-section{padding-block:113px 60px;grid-template-columns:1fr;gap:33px}.contact-intro h1{font-size:46px}.contact-intro>p:not(.ax-eyebrow){font-size:16px}.contact-form{padding:24px 20px}.contact-form h2{font-size:27px}.contact-topics{margin-top:27px}.contact-field-row{grid-template-columns:1fr;gap:0}}
body .site-header{height:80px;background:#0d171fee;font-family:'Axiom UI',sans-serif}body .site-header .wordmark,body #site-navigation a,body .products-toggle{font-family:'Axiom UI',sans-serif}@media(max-width:809px){body .site-header{height:76px;min-height:76px;padding-block:15px}#site-navigation{top:75px;max-height:calc(100dvh - 76px)}}

/* Keep the expanded footer and both navigation dropdowns comfortable at every width. */
.site-footer nav{max-width:680px;justify-content:flex-end}
@media(max-width:809px){.site-footer nav{justify-content:flex-start;max-width:none}}

/* Clear grouping for the expanded product and services website. */
.site-footer-top{align-items:start}.site-footer nav{display:grid;grid-template-columns:1fr 1.7fr .7fr;gap:38px;max-width:700px}.footer-group{display:flex;flex-direction:column;align-items:start}.site-footer .footer-group h2{font:500 11px/1.5 'Axiom UI',sans-serif!important;text-transform:uppercase;letter-spacing:.12em;color:#b4d2ba!important;margin:0 0 14px}.site-footer .footer-group a{min-height:36px;line-height:1.5;padding-block:6px}.footer-brand{max-width:285px}.contact-small a{text-decoration:underline;text-underline-offset:4px}a,button{touch-action:manipulation}#site-navigation{overscroll-behavior:contain}.service-heading>*,.ax-section-heading>*{min-width:0}
@media(max-width:1000px){.site-footer-top{display:block}.site-footer nav{margin-top:32px;max-width:none;justify-content:stretch;grid-template-columns:1fr 1.5fr 1fr}}
@media(max-width:520px){.site-footer nav{grid-template-columns:1fr 1.4fr;gap:28px 20px}.site-footer .footer-group a{min-height:44px}.footer-group:last-child{grid-column:1/-1;display:flex;flex-direction:row;flex-wrap:wrap;gap:0 24px}.footer-group:last-child h2{width:100%;margin-bottom:4px}}
.contact-small a,.contact-small a:visited{color:var(--mint);padding-block:4px}.contact-small a:hover{color:#fff}.contact-form-note{font-size:14px;line-height:1.7;margin-bottom:24px!important;color:#b8c9d2}

@media(min-width:810px){.ax-about-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:809px){#site-navigation.is-open{box-shadow:0 0 0 100vmax #050a0eb3;clip-path:inset(0 0 -100vmax 0)}}

/* Responsive polish shared by the company, product and service pages. */
html{scroll-padding-top:100px}
main img,main video{max-width:100%}
.rv-shot-toolbar button{min-height:44px;min-width:44px}
.rv-product-shot figcaption,.rv-ingestion figcaption,.contact-form .contact-privacy{font-size:12px}
.ax-founded span{font-size:14px;color:#49616e}
@media(max-width:809px){
  body.navigation-open{overflow:hidden}
  body .site-header{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}
  #site-navigation{padding-bottom:max(20px,env(safe-area-inset-bottom))}
  .ax-eyebrow,.nx-eyebrow,.rv-eyebrow{font-size:10px}
  .about-principle-strip{flex-wrap:wrap;justify-content:flex-start;gap:10px 14px;font-size:10px;line-height:1.8;letter-spacing:.06em}
  .ax-about-hero h1,.contact-intro h1{font-size:clamp(36px,10vw,48px)}
  .ax-story h2,.ax-working h2,.ax-about-cta h2,.nexus-page .nx-cta h2{font-size:clamp(30px,8.5vw,38px)}
  .ax-story h2 br{display:none}
  .about-intro p:first-child{font-size:18px;line-height:1.7}
  .about-intro p:last-child,.ax-story-copy p:not(.ax-story-lead),.ax-working-list p{font-size:16px;line-height:1.8}
  .ax-story,.ax-working{padding-block:52px}
  .ax-story-grid,.ax-working-grid{gap:30px}
  .rv-product-shot figcaption{font-size:12px}
  .rv-shot-toolbar>span,.nx-product-type{font-size:10px}
  .nx-journey-steps small,.nx-journey-note{font-size:12px}
  .service-page .journey-owner>span,.service-page .journey-foundation-label{font-size:11px}
  .site-footer-bottom{font-size:12px;line-height:1.7}
}
@media(min-width:701px) and (max-width:1000px){
  .service-page .journey-stages{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
  .service-page .journey-stages li:last-child{grid-column:1/-1;max-width:540px;justify-self:center}
  .service-page .journey-visual:after{display:none}
  .service-page .journey-visual svg{max-width:170px}
  .service-page .journey-stages li>p{font-size:15px}
  .service-page .journey-stage-title h3{font-size:24px}
  .service-page .journey-stages h4{font-size:20px}
}
@media(max-width:380px){
  .service-page .journey-stages li{grid-template-columns:72px minmax(0,1fr);column-gap:14px}
  .rv-flow-sources ul{grid-template-columns:1fr}
  .rv-product small{font-size:10px;letter-spacing:.06em;padding-left:12px;margin-left:0}
  .rv-product{gap:10px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
