/* AXIMETRE 3.0.6 — finishing system. Isolated from WordPress themes and Elementor.
 * Every surface belongs to the AXIMETRE shortcode; print reports are untouched. */
.axi-root.axi3-root{
  --axi-premium-surface:#0b1d34;
  --axi-premium-edge:#345877;
  --axi-premium-accent:#79c9ff;
  background:#061426;
  color:#f0f7ff;
  text-rendering:optimizeLegibility;
}
.axi-root.axi3-root>main{background:#071628;overflow-x:clip}
.axi-root.axi3-root :is(.axi-lab-hero,.axi-lab-service-hero,.axi-lab-console-section,.axi-lab-catalog-intro,.axi-lab-workbench-section,.axi-lab-expertise-notes,.axi-contact-section){position:relative}
.axi-root.axi3-root :is(.axi-lab-console-section,.axi-lab-catalog-intro,.axi-lab-workbench-section,.axi-lab-expertise-notes,.axi-contact-section)::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(90deg,rgba(89,150,210,.035) 1px,transparent 1px),linear-gradient(rgba(89,150,210,.026) 1px,transparent 1px);
  background-size:110px 110px;mask-image:linear-gradient(90deg,transparent,black 22%,black 78%,transparent);opacity:.56;
}
.axi-root.axi3-root :is(.axi-lab-console-section,.axi-lab-catalog-intro,.axi-lab-workbench-section,.axi-lab-expertise-notes,.axi-contact-section)>.axi-container{position:relative}
.axi-root.axi3-root :is(.axi-lab-preview,.axi-service-card,.axi-about-expertise,.axi-about-principle,.axi-cap-card){
  box-shadow:0 13px 34px rgba(0,5,18,.2),inset 0 1px 0 rgba(144,213,255,.09);
}
.axi-root.axi3-root :is(.axi-lab-preview,.axi-service-card,.axi-about-expertise,.axi-about-principle,.axi-cap-card):hover{
  box-shadow:0 21px 46px rgba(1,8,27,.35),0 0 0 1px rgba(105,196,255,.12),inset 0 1px 0 rgba(160,230,255,.14);
}
.axi-root.axi3-root :is(.axi-lab-preview,.axi-service-card,.axi-about-expertise,.axi-about-principle,.axi-cap-card):focus-visible{
  outline:3px solid #86e7df!important;outline-offset:4px;
}
.axi-root.axi3-root :is(.axi-lab-button,.axi-btn,.axi-nav-cta){transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease}
.axi-root.axi3-root :is(.axi-lab-button-solid,.axi-btn-primary,.axi-nav-cta):hover{
  box-shadow:0 10px 28px rgba(32,111,232,.34);
}
.axi-root.axi3-root :is(.axi-lab-preview,.axi-about-expertise,.axi-service-card,.axi-about-principle,.axi-about-method-grid article){overflow-wrap:anywhere}
.axi-root.axi3-root :is(#axi-services,#axi-lab-console,#axi-lab-workbench,#axi-about-expertises,#axi-about-scenarios,#axi-about-method){scroll-margin-top:32px}
.axi-root.axi3-root .axi-lab-section-header>p,
.axi-root.axi3-root .axi-lab-catalog-intro>.axi-container>p,
.axi-root.axi3-root .axi-about-section-heading>p{color:#c4d8ec}
.axi-root.axi3-root .axi-lab-expertise-list strong{line-height:1.55}
.axi-root.axi3-root .axi-lab-preview strong{line-height:1.35}
.axi-root.axi3-root .axi-lab-chips button,.axi-root.axi3-root .axi-lab-output-tools button{min-height:44px}
.axi-root.axi3-root .axi-about-serial,.axi-root.axi3-root .axi-about-expertise-top,
.axi-root.axi3-root .axi-about-expertise-cta,.axi-root.axi3-root .axi-about-principle small,
.axi-root.axi3-root .axi-about-case-label,.axi-root.axi3-root .axi-about-case-top,
.axi-root.axi3-root .axi-about-index{font-size:max(11px, .66rem)}
.axi-root.axi3-root .axi-about-expertise p,.axi-root.axi3-root .axi-about-case-output li{font-size:13px;line-height:1.75}

/* Visitors can stop the continuously orbiting atoms and laboratory planets.
 * The animation control stays outside aria-hidden presentation graphics. */
.axi-root.axi3-root .axi-motion-toggle{
  display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:18px;
  padding:8px 13px;border:1px solid #365a7d;background:rgba(12,41,69,.66);
  color:#bcd9f1;font-size:11px;font-weight:650;letter-spacing:.015em;line-height:1.4;
  border-radius:24px;cursor:pointer;
}
.axi-root.axi3-root .axi-motion-toggle:hover,
.axi-root.axi3-root .axi-motion-toggle:focus-visible{color:#fff;background:#18476c;border-color:#76bde9}
.axi-root.axi3-root .axi-motion-icon{display:grid;place-items:center;min-width:22px;height:22px;border:1px solid #5aa9d7;border-radius:50%;color:#80e7e0;font-size:13px;font-weight:850}
.axi-root.axi3-root[data-axi-motion="paused"] *,
.axi-root.axi3-root[data-axi-motion="paused"] *::before,
.axi-root.axi3-root[data-axi-motion="paused"] *::after{animation-play-state:paused!important}
.axi-root.axi3-root .axi3-live-map:hover .axi3-map-node,
.axi-root.axi3-root .axi3-live-map:focus-within .axi3-map-node{animation-play-state:paused}
.axi-root.axi3-root .axi3-map-node{touch-action:manipulation}

/* Distinctive editorial bridge on every service page: real questions and
 * projected deliverables, without misrepresenting a demo as an actual audit. */
.axi-root.axi3-root .axi-decision-section{
  padding:95px 0 105px;
  background:radial-gradient(ellipse at 83% 22%,rgba(39,114,189,.18),transparent 46%),linear-gradient(145deg,#07172a,#0c2540);
  color:#edf7ff;border-top:1px solid #2b4e72;border-bottom:1px solid #2b4e72;
}
.axi-root.axi3-root .axi-decision-heading{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);
  align-items:end;gap:7%;margin-bottom:34px;
}
.axi-root.axi3-root .axi-decision-heading h2{
  color:#f0f8ff;font-size:clamp(33px,3.7vw,59px);
  font-weight:620;line-height:1.09;letter-spacing:-.05em;margin:17px 0 0;
}
.axi-root.axi3-root .axi-decision-heading h2 em{font-style:normal;color:#81c5ff}
.axi-root.axi3-root .axi-decision-heading>p{color:#bad1e9;font-size:14px;line-height:1.9}
.axi-root.axi3-root .axi-decision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.axi-root.axi3-root .axi-decision-card{
  position:relative;display:flex;flex-direction:column;min-width:0;min-height:255px;
  border:1px solid #31597d;background:linear-gradient(160deg,#133456,#0b2037);
  padding:29px 26px 33px;box-shadow:0 14px 34px rgba(0,7,24,.18);
}
.axi-root.axi3-root .axi-decision-card::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,#5eacff,#6ee7e0,transparent);
}
.axi-root.axi3-root .axi-decision-card>span{color:#8bd5f7;font-size:11px;letter-spacing:.16em;font-weight:800}
.axi-root.axi3-root .axi-decision-card h3{
  color:#eef8ff;font-size:clamp(20px,2vw,27px);letter-spacing:-.035em;line-height:1.25;
  margin:29px 0 16px;
}
.axi-root.axi3-root .axi-decision-card p{color:#bed5eb;font-size:14px;line-height:1.83;overflow-wrap:anywhere}
.axi-root.axi3-root .axi-lab-reset{
  flex:0 1 auto;min-height:48px;padding-inline:15px;background:#102f4e;color:#bfe0fc;border-color:#416c94;
}
.axi-root.axi3-root .axi-lab-reset:hover{background:#1c466b;border-color:#85c4ee;color:white}
.axi-root.axi3-root .axi-lab-output .axi-lab-empty strong{line-height:1.5}
.axi-root.axi3-root .axi-lab-result-state{letter-spacing:.09em}

@container axi-page (max-width:1020px){
  .axi-root.axi3-root .axi-decision-heading{grid-template-columns:minmax(0,1fr);gap:17px}
  .axi-root.axi3-root .axi-decision-heading>p{max-width:730px}
}
@container axi-page (max-width:760px){
  .axi-root.axi3-root .axi-decision-grid{grid-template-columns:minmax(0,1fr)}
  .axi-root.axi3-root .axi-decision-card{min-height:0;padding:25px}
  .axi-root.axi3-root .axi-decision-card h3{margin-top:16px}
  .axi-root.axi3-root .axi-decision-section{padding:70px 0}
}
@container axi-page (max-width:620px){
  .axi-root.axi3-root .axi-decision-heading h2{font-size:clamp(29px,7.5cqi,42px)}
  .axi-root.axi3-root .axi-motion-toggle{margin-top:15px}
  .axi-root.axi3-root .axi-lab-workbench-controls .axi-lab-reset{width:100%;flex:auto;justify-content:center}
  .axi-root.axi3-root .axi-decision-card{padding:22px 19px}
  .axi-root.axi3-root .axi-about-case-output>a{min-height:48px}
  .axi-root.axi3-root .axi-nav-dropdown a{font-size:13px}
}
@media(prefers-reduced-motion:reduce){
  .axi-root.axi3-root .axi-motion-toggle{display:none}
  .axi-root.axi3-root :is(.axi-lab-preview,.axi-service-card,.axi-about-expertise,.axi-about-principle,.axi-cap-card,.axi-lab-button,.axi-btn){transition:none!important;transform:none!important}
}

/* AXIMETRE 3.0.8 — approved steel-blue action palette.
 * Only existing blue actions are recolored; secondary, destructive and
 * success states retain their original meaning. Elementor is not styled. */
.axi-root.axi3-root{
  --axi-action-blue:#164A78;
  --axi-action-hover:#216795;
  --axi-action-border:#498AB8;
}
.axi-root.axi3-root :is(.axi-btn-primary,.axi-lab-button-solid,.axi3-quick-line button),
.axi-root.axi3-root .axi-nav .axi-nav-cta{
  background:var(--axi-action-blue);
  border-color:var(--axi-action-border);
  color:#fff;
  box-shadow:0 8px 24px rgba(6,34,65,.21);
}
.axi-root.axi3-root :is(.axi-btn-primary,.axi-lab-button-solid,.axi3-quick-line button):not(:disabled):hover,
.axi-root.axi3-root .axi-nav .axi-nav-cta:hover{
  background:var(--axi-action-hover);
  border-color:#78A9CC;
  color:#fff;
  box-shadow:0 11px 28px rgba(18,69,111,.31);
}
.axi-root.axi3-root :is(.axi-lab-button-solid,.axi3-quick-line button):disabled{
  opacity:.5;
  box-shadow:none;
  cursor:not-allowed;
}
.axi-root.axi3-root .axi3-project-fab{
  background:linear-gradient(125deg,var(--axi-action-blue),#103755);
  border-color:var(--axi-action-border);
  color:#fff;
}
.axi-root.axi3-root .axi3-project-fab:hover{
  background:linear-gradient(125deg,var(--axi-action-hover),var(--axi-action-blue));
  border-color:#78A9CC;
}
.axi-root.axi3-root .axi3-save-report:not(.is-added){
  background:var(--axi-action-blue)!important;
  border-color:var(--axi-action-border)!important;
  color:#fff!important;
}
.axi-root.axi3-root .axi3-save-report:not(.is-added):hover{
  background:var(--axi-action-hover)!important;
  border-color:#78A9CC!important;
}
.axi-root.axi3-root .axi3-app-tabs button.is-selected{
  background:var(--axi-action-blue);
  border-color:var(--axi-action-border);
  color:#fff;
}
.axi-root.axi3-root .axi-about-case-options button.is-active{
  background:linear-gradient(110deg,var(--axi-action-blue),#103755);
  border-color:var(--axi-action-border);
}

/* AXI / DEPTH ORBIT — the eight laboratory cards move through a shallow 3D
 * field, while blue tones breathe asynchronously. Labels stay upright. */
.axi-root.axi3-root .axi3-live-map{perspective:1100px;perspective-origin:50% 46%;transform-style:preserve-3d}
.axi-root.axi3-root .axi3-map-node{
  --axi3-z-shift:0px;
  --axi3-tint-delay:0s;
  transform-style:preserve-3d;
  backface-visibility:hidden;
  border-width:1px;
  border-style:solid;
  animation-name:axi3-depth-orbit,axi3-card-color;
  animation-duration:88s,18s;
  animation-timing-function:linear,ease-in-out;
  animation-iteration-count:infinite,infinite;
  animation-direction:normal,alternate;
  animation-delay:0s,var(--axi3-tint-delay);
}
.axi-root.axi3-root .axi3-map-node::before{
  content:"";position:absolute;inset:1px;border-radius:3px;
  background:linear-gradient(145deg,rgba(154,225,255,.24),transparent 47%,rgba(4,15,34,.24));
  pointer-events:none;
}
.axi-root.axi3-root .axi3-map-node::after{
  content:"";position:absolute;inset:3px -6px -6px 3px;
  border-right:2px solid rgba(76,150,192,.35);
  border-bottom:2px solid rgba(45,104,155,.38);
  border-radius:3px;transform:translateZ(-7px);
  pointer-events:none;
}
.axi-root.axi3-root .axi3-map-node span{
  position:relative;z-index:1;text-shadow:0 1px 6px rgba(0,8,26,.68);
}
.axi-root.axi3-root .axi3-map-node:is(:hover,:focus-visible,.is-active){
  animation-name:axi3-depth-orbit;
}
.axi-root.axi3-root .axi3-map-web{--axi3-z-shift:8px;--axi3-tint-delay:-2s}
.axi-root.axi3-root .axi3-map-apps{--axi3-z-shift:-7px;--axi3-tint-delay:-4s}
.axi-root.axi3-root .axi3-map-telephonie{--axi3-z-shift:15px;--axi3-tint-delay:-6s}
.axi-root.axi3-root .axi3-map-informatique{--axi3-z-shift:-11px;--axi3-tint-delay:-8s}
.axi-root.axi3-root .axi3-map-reseaux{--axi3-z-shift:5px;--axi3-tint-delay:-10s}
.axi-root.axi3-root .axi3-map-cloud{--axi3-z-shift:-5px;--axi3-tint-delay:-12s}
.axi-root.axi3-root .axi3-map-messagerie{--axi3-z-shift:12px;--axi3-tint-delay:-14s}
.axi-root.axi3-root .axi3-map-conseil{--axi3-z-shift:-12px;--axi3-tint-delay:-16s}
@keyframes axi3-depth-orbit{
  0%{transform:translate(-50%,-50%) rotate(var(--axi3-phase)) translateY(calc(0px - var(--axi3-orbit-radius))) rotate(calc(0deg - var(--axi3-phase))) translateZ(calc(14px + var(--axi3-z-shift))) rotateX(0deg)}
  25%{transform:translate(-50%,-50%) rotate(calc(var(--axi3-phase) + 90deg)) translateY(calc(0px - var(--axi3-orbit-radius))) rotate(calc(-90deg - var(--axi3-phase))) translateZ(calc(68px + var(--axi3-z-shift))) rotateX(-5deg)}
  50%{transform:translate(-50%,-50%) rotate(calc(var(--axi3-phase) + 180deg)) translateY(calc(0px - var(--axi3-orbit-radius))) rotate(calc(-180deg - var(--axi3-phase))) translateZ(calc(14px + var(--axi3-z-shift))) rotateX(0deg)}
  75%{transform:translate(-50%,-50%) rotate(calc(var(--axi3-phase) + 270deg)) translateY(calc(0px - var(--axi3-orbit-radius))) rotate(calc(-270deg - var(--axi3-phase))) translateZ(calc(-30px + var(--axi3-z-shift))) rotateX(5deg)}
  100%{transform:translate(-50%,-50%) rotate(calc(var(--axi3-phase) + 360deg)) translateY(calc(0px - var(--axi3-orbit-radius))) rotate(calc(-360deg - var(--axi3-phase))) translateZ(calc(14px + var(--axi3-z-shift))) rotateX(0deg)}
}
@keyframes axi3-card-color{
  0%,100%{background:rgba(11,37,69,.95);border-color:#35699f;box-shadow:0 12px 30px rgba(0,5,20,.4),inset 0 1px 0 rgba(142,218,255,.16)}
  50%{background:rgba(24,77,120,.97);border-color:#69b6dc;box-shadow:0 16px 38px rgba(20,92,150,.46),inset 0 1px 0 rgba(142,227,255,.3)}
}
@media(pointer:coarse){
  .axi-root.axi3-root .axi3-map-node{animation-duration:115s,24s}
}

/* AXIMETRE 3.0.9 — navigation on a single baseline; no framed logo.
 * Restrict horizontal normalization to the desktop menu. Elementor and
 * the stacked tablet/mobile navigation retain their existing behavior. */
.axi-root.axi3-root .axi-brand-mark,
.axi-root.axi3-root .axi-footer .axi-brand-mark{
  background:transparent;
  border:0;
  padding:0;
  box-shadow:none;
}
.axi-root.axi3-root .axi-brand-mark .axi-logo-img{object-fit:contain}
@container axi-page (min-width:981px){
  .axi-root.axi3-root .axi-nav>a:not(.axi-nav-cta),
  .axi-root.axi3-root .axi-nav-services{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding-block:0;
    line-height:1.25;
  }
  .axi-root.axi3-root .axi-nav-group{height:auto;align-self:center}
  .axi-root.axi3-root .axi-nav-services span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:20px;
    padding-left:0;
    margin-left:5px;
    line-height:1;
    vertical-align:middle;
  }
  .axi-root.axi3-root .axi-nav .axi-nav-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    line-height:1.25;
  }
  .axi-root.axi3-root .axi-nav-cta span{line-height:1}
}

/* AXIMETRE 3.0.10 — animated expertise emblems and new editorial introductions.
 * Motion is CSS-only: the existing pause button and prefers-reduced-motion
 * rules apply without new listeners, external assets or API calls. */
.axi-root.axi3-root .axi-brand-mark .axi-logo-img{
  transform-origin:center;
  animation:axi310-logo-awake 9s ease-in-out infinite;
}
.axi-root.axi3-root .axi-lab-service-badge{
  position:relative;
  isolation:isolate;
  transform-style:preserve-3d;
  animation:axi310-badge-breathe 7s ease-in-out infinite;
}
.axi-root.axi3-root .axi-lab-service-badge::before,
.axi-root.axi3-root .axi-lab-service-badge::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  z-index:0;
}
.axi-root.axi3-root .axi-lab-service-badge::before{
  inset:-17px;
  border:1px dashed rgba(108,185,249,.62);
  border-right-color:transparent;
  border-bottom-color:rgba(80,218,221,.3);
  animation:axi310-ring-spin 28s linear infinite;
}
.axi-root.axi3-root .axi-lab-service-badge::after{
  inset:-31px;
  border:2px solid transparent;
  border-top-color:rgba(100,196,248,.9);
  border-left-color:rgba(88,226,219,.26);
  box-shadow:0 0 28px rgba(50,158,228,.12);
  animation:axi310-ring-spin 17s linear infinite reverse;
}
.axi-root.axi3-root .axi-lab-service-badge > span,
.axi-root.axi3-root .axi-lab-service-badge > strong{position:relative;z-index:1}
.axi-root.axi3-root .axi-lab-service-badge > strong{
  display:inline-block;
  transform-origin:50% 50%;
  animation:axi310-symbol-float 5.2s ease-in-out infinite;
  filter:drop-shadow(0 4px 16px rgba(81,188,255,.33));
}
.axi-root.axi3-root [data-axi-symbol="web"],
.axi-root.axi3-root [data-axi-symbol="apps"]{animation-name:axi310-symbol-facet}
.axi-root.axi3-root [data-axi-symbol="telephonie"],
.axi-root.axi3-root [data-axi-symbol="informatique"]{animation-name:axi310-symbol-signal}
.axi-root.axi3-root [data-axi-symbol="reseaux"],
.axi-root.axi3-root [data-axi-symbol="cloud"]{animation-name:axi310-symbol-network}
.axi-root.axi3-root [data-axi-symbol="messagerie"],
.axi-root.axi3-root [data-axi-symbol="conseil"]{animation-name:axi310-symbol-star}
.axi-root.axi3-root .axi-lab-service-hero .axi-motion-toggle{
  display:flex;
  width:max-content;
  max-width:100%;
  margin-top:18px;
}

/* The eight icons on the landing page and the conceptual symbols on the
 * company page now respond visually without moving labels or hit targets. */
.axi-root.axi3-root .axi-lab-preview-icon,
.axi-root.axi3-root .axi-about-symbol,
.axi-root.axi3-root .axi-cap-icon,
.axi-root.axi3-root .axi-card-symbol{
  display:inline-block;
  transform-origin:center;
  animation:axi310-symbol-float 5.8s ease-in-out infinite;
}
.axi-root.axi3-root .axi-lab-preview:nth-child(4n + 2) .axi-lab-preview-icon,
.axi-root.axi3-root .axi-about-principle:nth-child(2) .axi-about-symbol{
  animation-name:axi310-symbol-facet;
  animation-delay:-1.3s;
}
.axi-root.axi3-root .axi-lab-preview:nth-child(4n + 3) .axi-lab-preview-icon,
.axi-root.axi3-root .axi-about-principle:nth-child(3) .axi-about-symbol{
  animation-name:axi310-symbol-signal;
  animation-delay:-2.5s;
}
.axi-root.axi3-root .axi-lab-preview:nth-child(4n + 4) .axi-lab-preview-icon{
  animation-name:axi310-symbol-network;
  animation-delay:-3.2s;
}
.axi-root.axi3-root .axi-service-card:nth-child(even) .axi-card-symbol,
.axi-root.axi3-root .axi-cap-card:nth-child(even) .axi-cap-icon{
  animation-delay:-2s;
}

/* Contact also has a living visual (the original orbital ring), while the
 * text and the contact form remain entirely stationary. */
.axi-root.axi3-root .axi-contact-hero::after{
  transform-origin:center;
  animation:axi310-contact-orbit 9s ease-in-out infinite;
}

.axi-root.axi3-root .axi-lab-presentation{
  position:relative;
  overflow:hidden;
  padding:75px 0 82px;
  background:linear-gradient(117deg,#0b223c 0%,#0b1a2e 58%,#081626 100%);
  border-top:1px solid #2d5276;
  border-bottom:1px solid #294a6c;
  color:#ecf6ff;
}
.axi-root.axi3-root .axi-lab-presentation::before{
  content:"";
  position:absolute;
  width:350px;
  height:350px;
  right:-210px;
  top:-155px;
  border:1px solid rgba(115,191,242,.14);
  border-radius:50%;
  box-shadow:0 0 0 63px rgba(90,175,228,.025),0 0 0 130px rgba(90,175,228,.018);
  pointer-events:none;
}
.axi-root.axi3-root .axi-lab-presentation-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:clamp(25px,6%,95px);
  align-items:start;
}
.axi-root.axi3-root .axi-lab-presentation-heading h2{
  margin:19px 0 0;
  font-size:clamp(30px,3.1vw,48px);
  font-weight:630;
  letter-spacing:-.047em;
  line-height:1.13;
  color:#f1f8ff;
  overflow-wrap:anywhere;
}
.axi-root.axi3-root .axi-lab-presentation-copy p{
  max-width:780px;
  margin:0 0 18px;
  color:#bed5ea;
  font-size:clamp(13px,1.1vw,16px);
  line-height:1.85;
}
.axi-root.axi3-root .axi-lab-presentation-copy p:first-child{color:#e2f1ff;font-weight:530}
.axi-root.axi3-root .axi-lab-presentation-points{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  padding:10px 0 0;
  margin:0;
  list-style:none;
}
.axi-root.axi3-root .axi-lab-presentation-points li{
  display:inline-flex;
  align-items:center;
  min-height:35px;
  max-width:100%;
  padding:8px 11px;
  border:1px solid rgba(97,164,211,.36);
  background:rgba(16,58,94,.6);
  color:#9fdbef;
  font-size:11px;
  font-weight:680;
  line-height:1.35;
}

@keyframes axi310-ring-spin{to{transform:rotate(360deg)}}
@keyframes axi310-badge-breathe{
  0%,100%{box-shadow:0 0 0 20px rgba(48,120,215,.05),0 0 0 50px rgba(48,120,215,.025),0 0 85px rgba(24,109,223,.22)}
  50%{box-shadow:0 0 0 24px rgba(48,120,215,.07),0 0 0 56px rgba(48,120,215,.028),0 0 105px rgba(24,155,223,.31)}
}
@keyframes axi310-symbol-float{
  0%,100%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(-8px) rotate(5deg)}
}
@keyframes axi310-symbol-facet{
  0%,100%{transform:translateY(1px) rotate(-8deg) scale(.97)}
  50%{transform:translateY(-5px) rotate(10deg) scale(1.08)}
}
@keyframes axi310-symbol-signal{
  0%,100%{transform:translateY(0) scale(.97);opacity:.82}
  50%{transform:translateY(-5px) scale(1.12);opacity:1}
}
@keyframes axi310-symbol-network{
  0%,100%{transform:translate(-4px,2px) rotate(-5deg)}
  50%{transform:translate(5px,-5px) rotate(7deg)}
}
@keyframes axi310-symbol-star{
  0%,100%{transform:translateY(0) scale(.95) rotate(-7deg)}
  50%{transform:translateY(-6px) scale(1.12) rotate(12deg)}
}
@keyframes axi310-contact-orbit{
  0%,100%{transform:scale(.99);opacity:.72}
  50%{transform:scale(1.065);opacity:1}
}
@keyframes axi310-logo-awake{
  0%,100%{transform:translateY(0) scale(1);filter:brightness(1)}
  50%{transform:translateY(-2px) scale(1.025);filter:brightness(1.13)}
}

@container axi-page (max-width:900px){
  .axi-root.axi3-root .axi-lab-presentation-grid{
    grid-template-columns:minmax(0,1fr);
    gap:25px;
  }
  .axi-root.axi3-root .axi-lab-presentation{padding:59px 0 66px}
  .axi-root.axi3-root .axi-lab-presentation-heading h2{max-width:740px}
}
@container axi-page (max-width:540px){
  .axi-root.axi3-root .axi-lab-presentation{padding:45px 0 49px}
  .axi-root.axi3-root .axi-lab-presentation-heading h2{font-size:clamp(27px,8cqi,37px)}
  .axi-root.axi3-root .axi-lab-presentation-copy p{line-height:1.74}
  .axi-root.axi3-root .axi-lab-presentation-points{gap:7px}
  .axi-root.axi3-root .axi-lab-service-badge::before{inset:-10px}
  .axi-root.axi3-root .axi-lab-service-badge::after{inset:-19px}
}
@media (prefers-reduced-motion:reduce){
  .axi-root.axi3-root .axi-brand-mark .axi-logo-img,
  .axi-root.axi3-root .axi-lab-service-badge,
  .axi-root.axi3-root .axi-lab-service-badge::before,
  .axi-root.axi3-root .axi-lab-service-badge::after,
  .axi-root.axi3-root .axi-lab-service-badge strong,
  .axi-root.axi3-root .axi-lab-preview-icon,
  .axi-root.axi3-root .axi-about-symbol,
  .axi-root.axi3-root .axi-cap-icon,
  .axi-root.axi3-root .axi-card-symbol,
  .axi-root.axi3-root .axi-contact-hero::after{
    animation:none!important;
    transform:none!important;
  }
}

/* AXIMETRE 3.0.11 — the Project workspace is a real header menu control.
 * It no longer uses a fixed-position button or a document.body portal. */
.axi-root.axi3-root .axi-nav .axi-nav-project{
  appearance:none;
  position:relative;
  display:inline-flex;
  flex:none;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:48px;
  max-width:100%;
  padding:8px 12px;
  margin:0;
  border:1px solid #498ab8;
  border-radius:22px;
  background:#103653;
  color:#eef9ff;
  box-shadow:none;
  font-size:11px;
  font-weight:800;
  letter-spacing:.045em;
  line-height:1.3;
  white-space:nowrap;
  cursor:pointer;
  transition:background .2s,border-color .2s,color .2s;
}
.axi-root.axi3-root .axi-nav .axi-nav-project:hover{
  background:#164a78;
  border-color:#7dc9e6;
  color:#fff;
}
.axi-root.axi3-root .axi-nav .axi-nav-project-icon{
  color:#89dced;
  font-size:15px;
  line-height:1;
}
.axi-root.axi3-root .axi-nav .axi-nav-project strong{
  display:inline-grid;
  place-items:center;
  flex:none;
  min-width:24px;
  min-height:24px;
  padding:3px 6px;
  border-radius:50px;
  background:#53e4de;
  color:#062840;
  font-size:12px;
  font-weight:850;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
@container axi-page (min-width:981px) and (max-width:1180px){
  .axi-root.axi3-root .axi-header-inner{gap:16px}
  .axi-root.axi3-root .axi-nav{gap:clamp(10px,1.4cqi,18px)}
  .axi-root.axi3-root .axi-nav .axi-nav-project{gap:5px;padding-inline:8px;font-size:10px}
  .axi-root.axi3-root .axi-nav .axi-nav-project-icon{display:none}
  .axi-root.axi3-root .axi-nav .axi-nav-cta{padding-inline:12px}
}
@container axi-page (max-width:980px){
  .axi-root.axi3-root .axi-nav .axi-nav-project{
    width:100%;
    justify-content:flex-start;
    min-height:48px;
    padding:10px 12px;
    margin:4px 0 0;
    border-radius:10px;
    font-size:13px;
    background:#123958;
  }
  .axi-root.axi3-root .axi-nav .axi-nav-project strong{margin-left:auto}
}
