@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/assets/fonts/inter-latin-ext-variable.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/assets/fonts/inter-latin-variable.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/dm-mono-regular-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/dm-mono-regular-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/dm-mono-medium-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/dm-mono-medium-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Noto Sans Symbols 2';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/noto-sans-symbols-2.woff2') format('woff2');
  unicode-range: U+2192-2194, U+2197, U+2304;
}

:root {
  --ink: #101922;
  --muted: #536b7b;
  --line: #d7e3eb;
  --paper: #f6f9fb;
  --white: #fff;
  --night: #061522;
  --night-2: #0a1d2d;
  --cyan: #00c8f4;
  --blue: #0a92f2;
  --accent: #007fca;
  --max: 1520px;
  --footer-h: 470px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: #03080c; }
body { margin: 0; color: var(--ink); background: #03080c; font: 400 16px/1.6 Inter, Arial, sans-serif; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
:is(span,b,i)[aria-hidden="true"],a > i:not(:empty) { font-family: 'Noto Sans Symbols 2','Segoe UI Symbol','Apple Symbols',sans-serif; }
::selection { background: var(--cyan); color: #07110d; }
:focus-visible { outline: 2px solid var(--cyan); outline-offset: 4px; }

.page-stage { min-height: 100vh; margin-bottom: var(--footer-h); position: relative; z-index: 2; background: var(--paper); box-shadow: 0 35px 100px rgba(0,0,0,.45); }
.page-stage main { overflow: hidden; }
.site-footer { height: var(--footer-h); padding: 56px max(28px,calc((100vw - var(--max) + 120px)/2)) 24px; position: fixed; inset: auto 0 0; z-index: 1; color: #b6c5ce; background: #03080c; }
.footer-top { display: grid; grid-template-columns: 245px 1fr auto; gap: 50px; align-items: start; }
.footer-identity { display: flex; flex-direction: column; align-items: flex-start; }
.footer-identity img { width: 112px; height: auto; }
.footer-identity strong { max-width: 220px; margin-top: 15px; color: #e7f4fb; font-size: 13px; line-height: 1.35; font-weight: 600; }
.footer-identity span { max-width: 220px; margin-top: 5px; color: #6f8797; font-size: 11px; line-height: 1.45; }
.footer-top h2 { max-width: 680px; margin: 0; color: #edf7fc; font-size: clamp(29px,3.3vw,50px); line-height: 1.03; font-weight: 500; letter-spacing: -.05em; }
.footer-top > a { min-width: 205px; min-height: 50px; padding: 0 17px; display: flex; align-items: center; justify-content: space-between; border: 1px solid rgba(0,200,244,.5); color: #e7f8ff; font-size: 13px; }
.footer-top > a span { color: var(--cyan); }
.footer-grid { margin-top: 38px; padding-top: 30px; display: grid; grid-template-columns: repeat(3,1fr); gap: 50px; border-top: 1px solid rgba(166,205,226,.13); }
.footer-grid > div { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.footer-grid strong { margin-bottom: 7px; color: #688496; font: 500 10px 'DM Mono',monospace; text-transform: uppercase; letter-spacing: .12em; }
.footer-grid a,.footer-grid span { color: #a9bac5; font-size: 13px; }
.footer-grid a:hover { color: white; }
.footer-social { margin-top: 4px; }.footer-social a { min-height: 38px; padding: 0 12px; display: inline-flex; flex-direction: row; align-items: center; gap: 9px; color: #d8e7ee; border: 1px solid rgba(166,205,226,.18); background: rgba(255,255,255,.025); }.footer-social a:hover { border-color: rgba(0,200,244,.5); background: rgba(0,200,244,.06); }.footer-social svg { width: 17px; height: 17px; display: block; fill: var(--cyan); }.footer-social span { color: inherit; font-size: 11px; }
.footer-bottom { margin-top: 28px; padding-top: 18px; display: flex; justify-content: space-between; border-top: 1px solid rgba(166,205,226,.13); color: #657d8c; font: 500 10px 'DM Mono',monospace; letter-spacing: .07em; text-transform: uppercase; }
.footer-bottom nav { display: flex; gap: 24px; }

.site-header { height: 84px; max-width: var(--max); margin: auto; padding: 0 30px; position: sticky; top: 0; z-index: 50; display: grid; grid-template-columns: 305px 1fr auto; gap: 24px; align-items: center; color: #dce8ef; background: rgba(6,15,23,.97); border-bottom: 1px solid rgba(0,200,244,.2); backdrop-filter: blur(18px); }
.brand { display: flex; align-items: center; }
.brand img { width: 96px; height: auto; display: block; }
.brand > span { margin-left: 15px; padding-left: 15px; border-left: 1px solid rgba(0,200,244,.3); color: #8ba2b1; font-size: 10px; line-height: 1.3; font-weight: 500; letter-spacing: .035em; white-space: nowrap; }
.primary-nav { min-height: 50px; padding: 5px; display: flex; justify-content: center; align-items: center; gap: 2px; border: 1px solid rgba(128,181,211,.17); background: rgba(10,29,43,.7); }
.primary-nav > a { min-height: 38px; padding: 0 clamp(10px,1.15vw,18px); position: relative; display: flex; align-items: center; border: 0; color: #a8b7c1; background: transparent; cursor: pointer; font-size: 12px; transition: color .2s ease,background .2s ease,transform .2s ease; }
.primary-nav > a::after { content: ''; height: 1px; position: absolute; left: 14px; right: 14px; bottom: 3px; background: var(--cyan); transform: scaleX(0); transform-origin: left; transition: transform .22s ease; }
.primary-nav > a:hover,.primary-nav > a:focus-visible,.primary-nav > a[aria-expanded="true"] { color: white; background: rgba(0,200,244,.09); transform: translateY(-1px); }
.primary-nav > a:hover::after,.primary-nav > a:focus-visible::after,.primary-nav > a[aria-expanded="true"]::after { transform: scaleX(1); }
.nav-shutter-trigger { gap: 7px; }
.nav-shutter-trigger > span { color: var(--cyan); font-size: 12px; line-height: 1; transition: transform .2s ease; }
.nav-shutter-trigger[aria-expanded="true"] > span { transform: rotate(180deg); }
.header-cta { min-height: 50px; padding: 0 18px; display: flex; align-items: center; gap: 24px; border: 1px solid rgba(0,200,244,.5); color: #e3f7ff; background: rgba(0,127,202,.08); font-size: 12px; }
.header-cta span { color: var(--cyan); }
.header-cta:hover { color: #04110d; background: var(--cyan); }
.header-cta:hover span { color: #04110d; }
.menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid rgba(143,191,218,.2); background: none; cursor: pointer; }
.menu-toggle i { width: 18px; height: 1px; margin: 4px auto; display: block; background: #dce8ef; }
.mega-menu { max-height: calc(100vh - 83px); padding: 34px clamp(24px,3.3vw,50px) 22px; position: absolute; top: 83px; left: 0; right: 0; display: grid; grid-template-columns: 1.12fr 1.48fr 1fr 1fr; gap: 24px clamp(20px,2.5vw,40px); overflow-y: auto; overscroll-behavior: contain; background: linear-gradient(135deg,rgba(4,14,23,.995),rgba(7,23,36,.995)); border: 1px solid rgba(0,200,244,.24); box-shadow: 0 36px 100px rgba(0,0,0,.62); visibility: hidden; opacity: 0; transform: translateY(-12px) scale(.995); transform-origin: top; pointer-events: none; transition: opacity .2s ease,transform .24s cubic-bezier(.2,.75,.25,1),visibility 0s linear .24s; }
.mega-menu.open { visibility: visible; opacity: 1; transform: translateY(0) scale(1); pointer-events: auto; transition-delay: 0s; }
.mega-lead > span { color: var(--cyan); font: 500 10px 'DM Mono',monospace; letter-spacing: .13em; text-transform: uppercase; }
.mega-lead h2 { max-width: 360px; margin: 15px 0 13px; color: white; font-size: clamp(24px,2vw,30px); line-height: 1.06; font-weight: 500; letter-spacing: -.045em; }
.mega-lead > p { max-width: 370px; margin: 0; color: #8298a7; font-size: 13px; line-height: 1.68; }
.mega-principles { margin: 22px 0 24px; display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.mega-principles span { padding: 7px 8px; color: #688596; border: 1px solid rgba(143,191,218,.12); font: 500 8px 'DM Mono',monospace; letter-spacing: .08em; }
.mega-lead > a { padding-bottom: 6px; display: inline-flex; gap: 20px; border-bottom: 1px solid rgba(0,200,244,.4); color: #d7e7ef; font-size: 13px; }
.mega-lead > a b { color: var(--cyan); font-weight: 400; }
.mega-group { min-width: 0; display: flex; flex-direction: column; align-items: stretch; }
.mega-group .mega-title { width: 100%; min-height: 42px; padding-bottom: 11px; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid rgba(143,191,218,.18); color: #e3eef4; }
.mega-title > span { display: flex; align-items: center; gap: 9px; font-size: 13px; font-weight: 600; }
.mega-title > span small { color: var(--cyan); font: 500 8px 'DM Mono',monospace; }
.mega-title > b { color: #688698; font-size: 9px; font-weight: 500; transition: color .2s ease,transform .2s ease; }
.mega-title:hover > b { color: var(--cyan); transform: translateX(3px); }
.mega-group > p { min-height: 57px; margin: 12px 0 8px; color: #6f8796; font-size: 11px; line-height: 1.55; }
.mega-links { display: flex; flex-direction: column; }
.mega-links > a { min-height: 51px; margin-inline: -9px; padding: 8px 9px; display: flex; justify-content: space-between; align-items: center; gap: 10px; color: #9aafbb; border-bottom: 1px solid rgba(143,191,218,.09); transition: color .18s ease,background .18s ease,transform .18s ease; }
.mega-links > a > span { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.mega-links > a b { color: #c9d8e0; font-size: 11.5px; line-height: 1.3; font-weight: 550; }
.mega-links > a small { color: #627d8e; font-size: 9.5px; line-height: 1.35; }
.mega-links > a i { color: #426b80; font-size: 11px; font-style: normal; opacity: 0; transform: translateX(-5px); transition: opacity .18s ease,transform .18s ease,color .18s ease; }
.mega-links > a:hover,.mega-links > a:focus-visible { color: white; background: rgba(0,200,244,.055); transform: translateX(3px); }
.mega-links > a:hover b,.mega-links > a:focus-visible b { color: white; }
.mega-links > a:hover i,.mega-links > a:focus-visible i { color: var(--cyan); opacity: 1; transform: translateX(0); }
.mega-company { min-height: 48px; padding-top: 14px; grid-column: 1/-1; display: flex; flex-wrap: wrap; align-items: center; gap: 11px 28px; border-top: 1px solid rgba(143,191,218,.14); }
.mega-company > span { margin-right: auto; color: #557587; font: 500 9px 'DM Mono',monospace; letter-spacing: .12em; text-transform: uppercase; }
.mega-company a { color: #90a6b3; font-size: 11px; transition: color .18s ease; }
.mega-company a:hover { color: white; }
.mega-menu { --menu-accent: #00c8f4; padding: 0; display: block; }
.mega-menu[data-active-menu="technology"] { --menu-accent: #4d9dff; }
.mega-menu[data-active-menu="operations"] { --menu-accent: #00dfc4; }
.mega-menu[data-active-menu="company"] { --menu-accent: #7fdfff; }
.mega-panel { min-height: 465px; padding: 38px clamp(32px,5vw,76px) 34px; display: none; grid-template-columns: minmax(270px,.72fr) minmax(0,1.8fr); gap: clamp(44px,6vw,100px); }
.mega-panel.active { display: grid; }
.mega-panel-lead { display: flex; flex-direction: column; align-items: flex-start; }
.mega-panel-lead > span { color: var(--menu-accent); font: 500 9px 'DM Mono',monospace; letter-spacing: .13em; text-transform: uppercase; }
.mega-panel-lead h2 { max-width: 430px; margin: 17px 0 13px; color: #eff9ff; font-size: clamp(28px,2.5vw,38px); line-height: 1.03; font-weight: 500; letter-spacing: -.05em; }
.mega-panel-lead > p { max-width: 440px; margin: 0; color: #78909f; font-size: 13px; line-height: 1.68; }
.mega-panel-lead > div { margin: 23px 0; display: flex; flex-wrap: wrap; gap: 6px; }
.mega-panel-lead > div small { padding: 6px 8px; color: #6e8999; border: 1px solid rgba(143,191,218,.14); font: 500 8px 'DM Mono',monospace; }
.mega-panel-lead > a { margin-top: auto; padding-bottom: 6px; display: flex; gap: 24px; color: #d6e8f1; border-bottom: 1px solid color-mix(in srgb,var(--menu-accent) 45%,transparent); font-size: 12px; }
.mega-panel-lead > a b { color: var(--menu-accent); font-weight: 400; }
.mega-panel-links { align-content: start; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid rgba(143,191,218,.14); border-left: 1px solid rgba(143,191,218,.14); }
.mega-panel-links > a { min-height: 88px; padding: 14px 15px; display: grid; grid-template-columns: 27px 1fr auto; gap: 10px; align-items: start; color: #9ab0bc; border-right: 1px solid rgba(143,191,218,.14); border-bottom: 1px solid rgba(143,191,218,.14); transition: background .18s ease,transform .18s ease; }
.mega-panel-links > a em { color: #4f6f82; font: 500 8px 'DM Mono',monospace; font-style: normal; }
.mega-panel-links > a > span { min-width: 0; display: flex; flex-direction: column; gap: 5px; }
.mega-panel-links > a b { color: #d1e0e7; font-size: 12px; line-height: 1.3; font-weight: 550; }
.mega-panel-links > a small { color: #658091; font-size: 10px; line-height: 1.4; }
.mega-panel-links > a i { color: var(--menu-accent); font-size: 11px; font-style: normal; opacity: 0; transform: translateX(-5px); transition: opacity .18s ease,transform .18s ease; }
.mega-panel-links > a:hover,.mega-panel-links > a:focus-visible { z-index: 1; background: color-mix(in srgb,var(--menu-accent) 6%,transparent); transform: translateY(-2px); }
.mega-panel-links > a:hover i,.mega-panel-links > a:focus-visible i { opacity: 1; transform: translateX(0); }
.mega-panel-links > .intelligence-menu-link { grid-column: 1 / -1; }
.mobile-nav { display: none; }

.hero-grid { position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(108,174,213,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(108,174,213,.075) 1px,transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(90deg,#000,transparent 80%); }
.home-hero,.service-hero { max-width: var(--max); min-height: calc(100vh - 84px); margin: auto; position: relative; display: grid; grid-template-columns: minmax(470px,.92fr) minmax(560px,1.08fr); color: #eaf5fb; background: var(--night); border-inline: 1px solid rgba(108,174,213,.12); overflow: hidden; }
.home-hero-copy,.service-hero-copy { padding: clamp(70px,8vw,130px) clamp(32px,5vw,82px) 55px; position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: center; }
.eyebrow,.section-kicker { margin: 0 0 27px; color: var(--accent); font: 500 11px 'DM Mono',monospace; letter-spacing: .13em; text-transform: uppercase; }
.home-hero .eyebrow,.service-hero .eyebrow,.inverse .section-kicker,.cta-section > p { color: var(--cyan); }
.home-hero h1 { margin: 0; color: #f1f8fc; font-size: clamp(64px,7.4vw,118px); line-height: .83; font-weight: 500; letter-spacing: -.075em; }
.home-hero h1 em { color: transparent; font-style: normal; -webkit-text-stroke: 1px rgba(177,226,247,.78); }
.service-hero h1 { max-width: 850px; margin: 0; color: #f2f8fb; font-size: clamp(50px,5.25vw,84px); line-height: .97; font-weight: 500; letter-spacing: -.065em; }
.lead { max-width: 710px; margin: 30px 0 0; color: #a9bdc9; font-size: clamp(17px,1.3vw,20px); line-height: 1.72; }
.breadcrumb { margin-bottom: 28px; display: flex; gap: 9px; color: #5d7484; font: 500 8px 'DM Mono',monospace; text-transform: uppercase; letter-spacing: .1em; }
.breadcrumb a:hover { color: var(--cyan); }
.hero-actions { margin-top: 35px; display: flex; flex-wrap: wrap; gap: 10px; }
.button { min-height: 54px; padding: 0 19px; display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; border: 1px solid rgba(150,194,218,.28); font-size: 14px; font-weight: 600; }
.button.primary { color: #061018; background: #edf7fc; border-color: #edf7fc; }
.button.primary:hover { background: var(--cyan); border-color: var(--cyan); }
.button.secondary { color: #becdd6; }
.button.secondary:hover { border-color: rgba(0,200,244,.55); color: white; }
.hero-proof { max-width: 690px; margin-top: 47px; padding-top: 18px; display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; border-top: 1px solid rgba(143,191,218,.16); }
.hero-proof span { color: #7891a1; font-size: 11px; line-height: 1.5; }
.hero-proof b { display: block; margin-bottom: 4px; color: #d0e0e9; font-size: 12px; }

.hero-visual { --px: 0; --py: 0; --scene-a: #00c8f4; --scene-b: #0a92f2; --scene-c: #83eaff; min-height: 680px; margin: 34px 32px 34px 0; position: relative; align-self: stretch; display: flex; flex-direction: column; overflow: hidden; isolation: isolate; color: var(--scene-a); background: radial-gradient(circle at 72% 38%,rgba(0,200,244,.14),transparent 34%),linear-gradient(145deg,#061a29,#040c14 68%); border: 1px solid rgba(91,179,225,.24); box-shadow: inset 0 0 80px rgba(0,0,0,.26),0 30px 70px rgba(0,0,0,.18); transition: background .7s ease,color .5s ease; }
.hero-visual::before { content: ''; position: absolute; inset: 0; z-index: -1; opacity: .8; pointer-events: none; background: linear-gradient(112deg,transparent 0 47%,color-mix(in srgb,var(--scene-a) 7%,transparent) 47.1% 47.3%,transparent 47.4%),radial-gradient(circle at calc(70% + var(--px)*4%),calc(42% + var(--py)*4%),color-mix(in srgb,var(--scene-b) 12%,transparent),transparent 43%); }
.hero-visual::after { content: ''; width: 42%; height: 1px; position: absolute; right: -8%; top: 30%; z-index: 0; background: linear-gradient(90deg,transparent,var(--scene-a),transparent); box-shadow: 0 0 22px var(--scene-a); opacity: .25; transform: rotate(-34deg); }
.hero-visual[data-active-scene="fea"] { --scene-a: #5aa7ff; --scene-b: #004cff; --scene-c: #ff3b75; background: radial-gradient(circle at 59% 50%,rgba(255,40,103,.13),transparent 18%),radial-gradient(circle at 42% 38%,rgba(0,117,255,.18),transparent 36%),linear-gradient(155deg,#09172c,#050914 72%); }
.hero-visual[data-active-scene="twin"] { --scene-a: #04ead1; --scene-b: #067aff; --scene-c: #b8fff4; background: radial-gradient(ellipse at 52% 52%,rgba(0,234,209,.18),transparent 33%),conic-gradient(from 210deg at 50% 50%,#03141c,#062238,#07101b,#03141c); }
.hero-visual[data-active-scene="ai"] { --scene-a: #72dcff; --scene-b: #725cff; --scene-c: #d3c3ff; background: radial-gradient(circle at 52% 45%,rgba(116,91,255,.2),transparent 36%),linear-gradient(135deg,#0a1025,#07172a 55%,#090b18); }
.hero-visual[data-active-scene="product"] { --scene-a: #00c8f4; --scene-b: #0878e8; --scene-c: #a8ecff; background: linear-gradient(118deg,#04121e 0 42%,#08273b 42.2% 42.5%,#06121d 42.7%),radial-gradient(circle at 50% 50%,rgba(0,200,244,.16),transparent 40%); }
.hero-visual[data-active-scene="mechanical"] { --scene-a: #65d9ff; --scene-b: #006fc8; --scene-c: #e4f8ff; background: repeating-radial-gradient(circle at 50% 50%,rgba(101,217,255,.035) 0 1px,transparent 1px 45px),linear-gradient(145deg,#081b28,#040b11); }
.hero-visual[data-active-scene="physics"] { --scene-a: #61d7ff; --scene-b: #5c67ff; --scene-c: #d1c5ff; background: radial-gradient(ellipse at 50% 50%,rgba(91,103,255,.2),transparent 32%),linear-gradient(160deg,#061b2b,#0b0c24 70%); }
.hero-visual[data-active-scene="embedded"] { --scene-a: #00e8bd; --scene-b: #0086e8; --scene-c: #d5fff4; background: linear-gradient(90deg,rgba(0,232,189,.035) 1px,transparent 1px),linear-gradient(rgba(0,232,189,.035) 1px,transparent 1px),radial-gradient(circle at 50% 50%,rgba(0,134,232,.18),transparent 35%),#04151a; background-size: 28px 28px,28px 28px,auto,auto; }
.hero-visual[data-active-scene="production"] { --scene-a: #4ed5ff; --scene-b: #0a8af0; --scene-c: #ffca68; background: linear-gradient(150deg,#071725,#08151e 60%,#171307); }
.hero-visual[data-active-scene="platform"] { --scene-a: #00cbff; --scene-b: #1768f2; --scene-c: #b7efff; background: radial-gradient(ellipse at 50% 70%,rgba(0,203,255,.2),transparent 37%),linear-gradient(180deg,#07172b,#040a13); }
.hero-visual[data-active-scene="data"] { --scene-a: #38e7ff; --scene-b: #1965ff; --scene-c: #c3f8ff; background: linear-gradient(120deg,rgba(25,101,255,.13),transparent 38%),radial-gradient(circle at 70% 30%,rgba(56,231,255,.12),transparent 35%),#04111d; }
.hero-visual[data-active-scene="operations"] { --scene-a: #00e0cb; --scene-b: #1688ff; --scene-c: #f3cf66; background: radial-gradient(circle at 68% 62%,rgba(243,207,102,.08),transparent 17%),linear-gradient(135deg,#04191b,#06142a); }
.hero-visual[data-active-scene="compliance"] { --scene-a: #67dfff; --scene-b: #0c78ed; --scene-c: #c9f7ff; background: linear-gradient(160deg,rgba(12,120,237,.2),transparent 38%),radial-gradient(circle at 50% 48%,rgba(103,223,255,.12),transparent 32%),#050f1b; }
.visual-topline { min-height: 54px; padding: 0 19px; position: relative; z-index: 3; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid rgba(120,187,222,.14); color: #6e8797; font: 500 9px 'DM Mono',monospace; letter-spacing: .12em; }
.visual-topline b { display: flex; align-items: center; gap: 9px; color: var(--scene-a); font-weight: 500; }
.visual-topline b i { width: 6px; height: 6px; display: block; border-radius: 50%; background: currentColor; box-shadow: 0 0 14px currentColor; animation: statusPulse 2s ease-in-out infinite; }
.visual-stage { min-height: 0; position: relative; z-index: 2; flex: 1; opacity: 1; transform: perspective(1000px) rotateX(calc(var(--py)*-1.2deg)) rotateY(calc(var(--px)*1.8deg)) scale(1.015); transform-origin: center; transition: opacity .35s ease,transform .35s ease-out; }
.hero-visual.changing .visual-stage,.hero-visual.changing .visual-readout { opacity: 0; transform: scale(.98); }
.scene-art { width: 100%; height: 100%; position: absolute; inset: 0; overflow: visible; }
.scene-grid { fill: none; stroke: currentColor; stroke-width: .7; opacity: .055; }
.scene-glow { opacity: .48; }
.scene-model { fill: none; stroke: currentColor; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 8px color-mix(in srgb,currentColor 30%,transparent)); }
.scene-model circle,.scene-model rect { vector-effect: non-scaling-stroke; }
.instrument-overlay { pointer-events: none; color: #6f93a6; fill: currentColor; stroke: currentColor; }
.instrument-overlay text { font: 500 10px 'DM Mono',monospace; letter-spacing: .07em; }
.instrument-header { opacity: .66; }
.instrument-axis { opacity: .28; fill: currentColor; stroke: currentColor; stroke-width: .8; }
.instrument-axis text { stroke: none; font-size: 9px; letter-spacing: .03em; }
.instrument-legend { fill: #708e9e; stroke: none; }
.instrument-legend text { font-size: 8px; letter-spacing: 0; }
.instrument-legend text:first-child { fill: var(--scene-c); font-size: 8px; text-transform: uppercase; }
.instrument-equation rect { fill: rgba(2,12,20,.76); stroke: color-mix(in srgb,var(--scene-a) 32%,transparent); }
.instrument-equation text { fill: var(--scene-c); stroke: none; font-size: 10px; letter-spacing: .03em; }
.instrument-clock { fill: var(--scene-a); stroke: none; opacity: .75; }
.instrument-clock circle { filter: drop-shadow(0 0 5px var(--scene-a)); animation: statusPulse 1.8s ease-in-out infinite; }
.instrument-clock text { fill: #7894a4; font-size: 9px; letter-spacing: .04em; }
.scalar-field { stroke: none; mix-blend-mode: screen; filter: blur(2px); }
.scalar-field > *:nth-child(1) { fill: #1768f2; opacity: .08; }
.scalar-field > *:nth-child(2) { fill: #00d8d6; opacity: .09; }
.scalar-field > *:nth-child(3) { fill: #ff3b75; opacity: .12; }
.scalar-cfd { animation: fieldBreathe 6s ease-in-out infinite; transform-origin: 420px 320px; }
.scalar-fea { animation: stressField 3.2s ease-in-out infinite; transform-origin: 420px 312px; }
.vector-field { fill: none; stroke: var(--scene-c); stroke-width: 1.2; opacity: .32; animation: flowAdvance 4s linear infinite; stroke-dasharray: 7 8; }
.mesh-fine { fill: none; stroke: var(--scene-c); stroke-width: .55; opacity: .15; }
.inset-plot rect { fill: rgba(2,11,18,.74); stroke: color-mix(in srgb,var(--scene-a) 28%,transparent); }
.inset-plot path,.trace-live,.trace-reference,.limit-line,.scope-trace path,.spc-chart path { fill: none; vector-effect: non-scaling-stroke; }
.trace-reference { stroke: #718794; stroke-width: 1.1; stroke-dasharray: 4 5; }
.trace-live { stroke: var(--scene-c); stroke-width: 1.7; filter: drop-shadow(0 0 4px color-mix(in srgb,var(--scene-a) 55%,transparent)); stroke-dasharray: 420; animation: traceDraw 5s ease-in-out infinite; }
.uncertainty-field > path:first-child { fill: rgba(91,92,255,.13); stroke: rgba(138,160,255,.25); }
.trace-matrix { fill: none; stroke: var(--scene-c); opacity: .3; stroke-dasharray: 3 6; }.trace-matrix circle { fill: var(--scene-c); stroke: none; }
.tolerance-stack { fill: none; stroke: var(--scene-c); stroke-width: 1; opacity: .58; }.tolerance-stack text { fill: #89a8b8; stroke: none; font: 500 10px 'DM Mono',monospace; }
.limit-line,.deadline-line { stroke: #ffca68; stroke-width: 1; stroke-dasharray: 5 6; opacity: .62; }
.scope-trace { fill: none; stroke: var(--scene-c); stroke-width: 1.5; opacity: .7; }.scope-trace path:first-child { stroke-dasharray: 700; animation: traceDraw 4.5s linear infinite; }
.spc-chart { fill: none; stroke: var(--scene-c); opacity: .7; }.spc-chart circle { fill: #dff8ff; stroke: var(--scene-a); }.spc-chart .trace-live { stroke-dasharray: 520; }
.latency-bars rect,.quality-bars rect,.queue-density rect { fill: color-mix(in srgb,var(--scene-a) 12%,transparent); stroke: color-mix(in srgb,var(--scene-c) 55%,transparent); transform-box: fill-box; transform-origin: bottom; animation: barResolve 4.4s ease-in-out infinite; }
.latency-bars rect:nth-child(2),.quality-bars rect:nth-child(2),.queue-density rect:nth-child(2) { animation-delay: -.8s; }.latency-bars rect:nth-child(3),.quality-bars rect:nth-child(3),.queue-density rect:nth-child(3) { animation-delay: -1.6s; }
.latency-bars text { fill: #7894a4; stroke: none; font: 500 8px 'DM Mono',monospace; }
.quality-bars .limit-line { fill: none; }
.evidence-chain { fill: none; stroke: var(--scene-c); stroke-width: 1.2; opacity: .75; }.evidence-chain circle { fill: #071924; }.evidence-chain g { animation: nodePulse 2.8s ease-in-out infinite; }
.flow-lines { opacity: .66; stroke-dasharray: 9 13; animation: flowAdvance 5s linear infinite; }
.vehicle-form { fill: rgba(7,25,39,.76); stroke: var(--scene-c); stroke-width: 1.8; animation: modelFloat 7s ease-in-out infinite; }
.vehicle-form circle { fill: rgba(1,8,14,.9); }
.pressure-field { opacity: .28; stroke-dasharray: 4 7; }
.scan-slice,.audit-scan,.solver-sweep { stroke: var(--scene-c); opacity: .6; animation: scanTravel 5.2s ease-in-out infinite; }
.fea-body { fill: color-mix(in srgb,var(--scene-b) 8%,transparent); stroke: var(--scene-a); }
.stress-rings { stroke: var(--scene-c); opacity: .65; animation: stressPulse 3s ease-out infinite; transform-origin: 420px 312px; }
.load-arrows { stroke: var(--scene-c); stroke-width: 2; animation: loadPulse 2.2s ease-in-out infinite; }
.twin-orbits { opacity: .36; stroke-dasharray: 7 11; transform-origin: 402px 306px; animation: orbitSpin 22s linear infinite; }
.turbine { fill: color-mix(in srgb,var(--scene-a) 12%,transparent); stroke: var(--scene-c); transform-origin: 402px 306px; animation: orbitSpin 15s linear infinite; }
.twin-ghost { opacity: .26; stroke-dasharray: 3 8; }
.orbit-nodes circle,.ai-nodes circle,.interface-points circle,.platform-nodes circle,.signal-pulses circle,.ops-tokens circle { fill: var(--scene-c); stroke: none; filter: drop-shadow(0 0 11px var(--scene-a)); animation: nodePulse 2.4s ease-in-out infinite; }
.ai-links { opacity: .38; stroke-dasharray: 4 8; animation: flowAdvance 8s linear infinite; }
.ai-nodes { fill: var(--scene-a); stroke: none; }
.ai-nodes .n1 { fill: var(--scene-c); animation-delay: -.8s; }.ai-nodes .n2 { animation-delay: -1.6s; }
.physics-wave { stroke: var(--scene-c); opacity: .72; stroke-dasharray: 10 8; animation: flowAdvance 7s linear infinite; }
.exploded-product { fill: color-mix(in srgb,var(--scene-a) 6%,transparent); stroke: var(--scene-c); animation: assemblyBreathe 5s ease-in-out infinite; transform-origin: center; }
.assembly-axis { opacity: .24; stroke-dasharray: 5 10; }
.mech-rings { fill: color-mix(in srgb,var(--scene-a) 5%,transparent); transform-origin: 400px 310px; animation: orbitSpin 28s linear infinite; }
.mech-section,.dimension { opacity: .35; stroke-dasharray: 4 8; }
.field-contours { opacity: .74; stroke-dasharray: 8 12; animation: flowAdvance 11s linear infinite; }
.phase-orbit { stroke: var(--scene-c); opacity: .38; transform-origin: 405px 310px; animation: orbitSpin 18s linear infinite reverse; }
.board { fill: color-mix(in srgb,var(--scene-a) 4%,transparent); stroke: var(--scene-c); }
.chip-pins { opacity: .55; }.signal-pulses circle:nth-child(2),.ops-tokens circle:nth-child(2),.platform-nodes circle:nth-child(2) { animation-delay: -.8s; }.signal-pulses circle:nth-child(3),.ops-tokens circle:nth-child(3),.platform-nodes circle:nth-child(3) { animation-delay: -1.6s; }
.production-line rect { fill: color-mix(in srgb,var(--scene-a) 7%,transparent); }.robot-arm { stroke: var(--scene-c); stroke-width: 2; transform-origin: 223px 347px; animation: robotMove 5.5s ease-in-out infinite; }.inspection { opacity: .65; stroke-dasharray: 5 7; }
.platform-layers { fill: color-mix(in srgb,var(--scene-a) 5%,transparent); stroke: var(--scene-c); animation: layersFloat 5s ease-in-out infinite; }.platform-columns { opacity: .28; stroke-dasharray: 4 8; }
.data-columns { opacity: .5; }.data-streams { stroke: var(--scene-c); stroke-dasharray: 7 13; animation: flowAdvance 5s linear infinite; }.data-focus { fill: color-mix(in srgb,var(--scene-a) 9%,transparent); stroke: var(--scene-c); animation: nodePulse 3s ease-in-out infinite; }
.ops-path { opacity: .5; stroke-dasharray: 8 12; animation: flowAdvance 6s linear infinite; }.ops-nodes { fill: color-mix(in srgb,var(--scene-a) 7%,transparent); stroke: var(--scene-c); }
.shield { fill: color-mix(in srgb,var(--scene-b) 6%,transparent); stroke: var(--scene-a); }.compliance-check { stroke: var(--scene-c); stroke-width: 5; stroke-dasharray: 230; animation: checkDraw 4s ease-in-out infinite; }
.visual-readout { min-height: 78px; padding: 12px 20px; position: absolute; z-index: 4; left: 18px; right: 18px; bottom: 74px; display: grid; grid-template-columns: 50px 1fr auto; align-items: center; gap: 14px; color: #dff8ff; background: linear-gradient(90deg,rgba(3,13,22,.88),rgba(3,13,22,.58)); border: 1px solid rgba(136,210,242,.16); border-left: 2px solid var(--scene-a); backdrop-filter: blur(16px); transition: opacity .3s ease,transform .3s ease; }
.visual-readout > span { color: var(--scene-a); font: 400 30px/1 'DM Mono',monospace; }
.visual-readout div:nth-child(2) { display: flex; flex-direction: column; }
.visual-readout small { color: #597687; font: 500 8px 'DM Mono',monospace; letter-spacing: .14em; }
.visual-readout strong { margin-top: 4px; font-size: 14px; font-weight: 500; }
.visual-signals { display: flex; gap: 6px; }
.visual-signals span { min-width: 74px; min-height: 35px; padding: 5px 8px; display: flex; flex-direction: column; justify-content: center; color: #86a7b8; border: 1px solid rgba(136,210,242,.14); font: 500 8px 'DM Mono',monospace; letter-spacing: .06em; }
.visual-signals span i { margin-bottom: 3px; color: #4f7082; font-size: 7px; font-style: normal; text-transform: uppercase; }
.visual-signals span b { color: #a9c7d5; font-weight: 500; white-space: nowrap; }
.visual-footer { min-height: 60px; padding: 10px 14px; position: relative; z-index: 5; display: flex; justify-content: space-between; gap: 10px; align-items: center; border-top: 1px solid rgba(120,187,222,.14); background: rgba(3,11,18,.86); backdrop-filter: blur(14px); }
.visual-selector { display: flex; flex-wrap: wrap; gap: 5px; }
.visual-selector button,.visual-toggle { min-height: 36px; padding: 0 11px; border: 1px solid transparent; color: #7891a1; background: transparent; cursor: pointer; font-size: 10px; }
.visual-selector button span { margin-right: 7px; color: #536e80; font: 500 8px 'DM Mono',monospace; }
.visual-selector button.active { color: #e4f8ff; border-color: color-mix(in srgb,var(--scene-a) 45%,transparent); background: color-mix(in srgb,var(--scene-a) 8%,transparent); }
.visual-toggle { border-color: rgba(120,187,222,.18); text-transform: uppercase; font: 500 8px 'DM Mono',monospace; white-space: nowrap; }
.visual-toggle:hover { color: white; border-color: color-mix(in srgb,var(--scene-a) 45%,transparent); }
.hero-visual.paused * { animation-play-state: paused !important; }
.hero-visual.single-scene .scene-art * { animation: none !important; }.hero-visual.single-scene .visual-stage { transform: none; }.hero-visual.single-scene .visual-toggle { display: none; }
@keyframes statusPulse { 50% { opacity: .35; box-shadow: 0 0 4px currentColor; } }
@keyframes flowAdvance { to { stroke-dashoffset: -210; } }
@keyframes modelFloat { 50% { transform: translateY(-8px); } }
@keyframes scanTravel { 0%,100% { transform: translateX(-90px); opacity: .1; } 50% { transform: translateX(260px); opacity: .7; } }
@keyframes stressPulse { 0% { transform: scale(.7); opacity: .8; } 80%,100% { transform: scale(1.18); opacity: 0; } }
@keyframes loadPulse { 50% { transform: translateY(12px); opacity: .4; } }
@keyframes orbitSpin { to { transform: rotate(360deg); } }
@keyframes nodePulse { 50% { opacity: .35; filter: drop-shadow(0 0 2px var(--scene-a)); } }
@keyframes assemblyBreathe { 50% { transform: scale(1.045); } }
@keyframes robotMove { 50% { transform: rotate(-8deg); } }
@keyframes layersFloat { 50% { transform: translateY(-10px); } }
@keyframes checkDraw { 0%,15% { stroke-dashoffset: 230; opacity: .2; } 55%,100% { stroke-dashoffset: 0; opacity: 1; } }
@keyframes fieldBreathe { 50% { transform: translateX(9px) scaleX(1.025); opacity: .82; } }
@keyframes stressField { 0%,100% { transform: scale(.93); opacity: .58; } 50% { transform: scale(1.04); opacity: 1; } }
@keyframes traceDraw { 0% { stroke-dashoffset: 420; opacity: .25; } 45%,100% { stroke-dashoffset: 0; opacity: .85; } }
@keyframes barResolve { 50% { transform: scaleY(.93); opacity: .62; } }

.focus-section,.service-directory,.process-section,.deliverable-section,.decision-section,.clarity-section,.content-section,.related-section,.contact-grid { max-width: var(--max); margin: auto; border-inline: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.focus-section,.service-directory,.process-section,.deliverable-section,.content-section { padding: clamp(80px,8.5vw,135px) clamp(28px,5vw,80px); }
.focus-heading { display: grid; grid-template-columns: .34fr 1.1fr .68fr; gap: clamp(30px,5vw,78px); align-items: start; }
.focus-heading h2,.section-heading h2,.clarity-section h2,.decision-section h2 { margin: 0; color: #111b23; font-size: clamp(38px,4.3vw,66px); line-height: 1.03; font-weight: 500; letter-spacing: -.055em; }
.focus-heading > p:last-child,.section-heading > p:last-child,.clarity-section > div:last-child > p { margin: 0; color: var(--muted); font-size: 16px; line-height: 1.78; }
.focus-grid { margin-top: 70px; display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--line); }
.focus-grid a { min-height: 360px; padding: 28px; display: flex; flex-direction: column; border-right: 1px solid var(--line); background: var(--white); transition: transform .25s ease,box-shadow .25s ease; }
.focus-grid a:last-child { border-right: 0; }
.focus-grid a:hover { z-index: 2; transform: translateY(-8px); box-shadow: 0 26px 55px rgba(18,35,47,.12); }
.focus-grid span,.service-card > span,.deliverable-grid > article > span,.situation-grid span,.engagement-grid span { color: #6c7f8b; font: 500 9px 'DM Mono',monospace; }
.focus-grid h3 { margin: 80px 0 15px; font-size: 28px; font-weight: 500; letter-spacing: -.04em; }
.focus-grid p { margin: 0; color: var(--muted); font-size: 15px; line-height: 1.7; }
.focus-grid small { margin-top: 22px; padding-top: 18px; display: block; border-top: 1px solid var(--line); color: #536b7b; font-size: 13px; line-height: 1.7; }
.focus-grid strong { margin-top: auto; color: var(--accent); font-size: 13px; }

.section-heading { display: grid; grid-template-columns: .34fr 1.1fr .62fr; gap: clamp(28px,5vw,76px); align-items: start; }
.section-heading.inverse h2 { color: #f0f8fc; }
.section-heading.inverse > p:last-child { color: #8498a6; }
.directory-tabs { margin-top: 60px; display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--line); }
.directory-tabs button { min-height: 66px; padding: 0 19px; display: flex; justify-content: space-between; align-items: center; border: 0; border-right: 1px solid var(--line); color: #5b7180; background: #fff; cursor: pointer; font-size: 14px; }
.directory-tabs button:last-child { border-right: 0; }
.directory-tabs b { min-width: 25px; height: 25px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; color: #71838f; font: 500 8px 'DM Mono',monospace; }
.directory-tabs button.active { color: #0d1a22; background: #edf7fc; box-shadow: inset 0 -2px 0 var(--blue); }
.directory-panel { display: none; grid-template-columns: repeat(4,1fr); border-left: 1px solid var(--line); border-top: 1px solid var(--line); }
.directory-panel.active { display: grid; }
.service-card { min-height: 415px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #fff; }
.service-card:hover { background: #edf7fc; }
.service-card h3 { margin: 62px 0 14px; font-size: 22px; line-height: 1.18; font-weight: 500; letter-spacing: -.035em; }
.service-card p { margin: 0; color: #5a7180; font-size: 14px; line-height: 1.68; }
.service-card-includes { margin-top: 20px; padding-top: 17px; border-top: 1px solid var(--line); }
.service-card-includes small { color: #637d8d; font: 500 10px 'DM Mono',monospace; letter-spacing: .09em; text-transform: uppercase; }
.service-card-includes ul { margin: 10px 0 0; padding: 0; list-style: none; }
.service-card-includes li { margin-top: 7px; padding-left: 13px; position: relative; color: #4f6675; font-size: 12.5px; line-height: 1.5; }
.service-card-includes li::before { content: ''; width: 4px; height: 4px; position: absolute; left: 0; top: .58em; border-radius: 50%; background: var(--blue); }
.service-card strong { margin-top: auto; color: var(--accent); font-size: 12px; }

.digital-thread-section { max-width: var(--max); margin: auto; padding: clamp(85px,8.5vw,135px) clamp(28px,5vw,80px); color: #eaf7fc; background: radial-gradient(circle at 74% 26%,rgba(0,200,244,.11),transparent 27%),linear-gradient(145deg,#071827,#04101a 68%); border-inline: 1px solid rgba(104,186,226,.16); border-bottom: 1px solid rgba(104,186,226,.16); }
.thread-heading,.constellation-heading { display: grid; grid-template-columns: .34fr 1.05fr .64fr; gap: clamp(28px,5vw,76px); align-items: start; }
.thread-heading h2,.constellation-heading h2 { margin: 0; font-size: clamp(40px,4.6vw,70px); line-height: 1.01; font-weight: 500; letter-spacing: -.06em; }
.thread-heading > p:last-child { margin: 0; color: #8ea7b5; font-size: 16px; line-height: 1.76; }
.thread-system { margin-top: 58px; overflow: hidden; border: 1px solid rgba(105,190,232,.25); background: #04121d; box-shadow: 0 34px 90px rgba(0,0,0,.24); }
.thread-system-bar { min-height: 70px; padding: 13px 18px; display: grid; grid-template-columns: 1fr auto auto; gap: 30px; align-items: center; border-bottom: 1px solid rgba(105,190,232,.18); }.thread-system-bar > span,.thread-system-bar small,.thread-system-bar em { color: #557587; font: 500 8px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }.thread-system-bar > div { display: flex; align-items: center; gap: 16px; }.thread-system-bar strong { color: var(--cyan); font: 500 9px 'DM Mono',monospace; letter-spacing: .06em; }.thread-system-bar em { color: #ffca68; font-style: normal; }
.thread-stage-nav { display: grid; grid-template-columns: repeat(6,1fr); border-bottom: 1px solid rgba(105,190,232,.2); }.thread-stage-nav button { min-height: 92px; padding: 15px; position: relative; display: grid; grid-template-columns: 25px 1fr; gap: 5px; align-items: end; text-align: left; color: #718b99; background: rgba(4,18,29,.96); border: 0; border-right: 1px solid rgba(105,190,232,.15); cursor: pointer; }.thread-stage-nav button:last-child { border-right: 0; }.thread-stage-nav span { color: #526f80; font: 500 8px 'DM Mono',monospace; }.thread-stage-nav b { font-size: 12px; font-weight: 500; }.thread-stage-nav i { height: 2px; position: absolute; left: 0; right: 100%; bottom: 0; background: var(--cyan); transition: right .22s ease; }.thread-stage-nav button.active { color: #e4f5fc; background: linear-gradient(180deg,rgba(0,200,244,.08),rgba(0,200,244,.025)); }.thread-stage-nav button.active span { color: var(--cyan); }.thread-stage-nav button.active i { right: 0; }
.thread-workspace { display: grid; grid-template-columns: minmax(0,1.38fr) minmax(295px,.62fr); }
.thread-panels { min-width: 0; }.thread-panel { min-height: 660px; padding: clamp(28px,4vw,54px); display: none; flex-direction: column; }.thread-panel.active { display: flex; }.thread-panel header > span,.thread-panel header > small,.thread-artifacts span,.thread-panel dt,.thread-object-model header span,.thread-object-core small,.thread-integrity span { color: var(--cyan); font: 500 8px 'DM Mono',monospace; letter-spacing: .09em; text-transform: uppercase; }.thread-panel header > small { margin: 42px 0 13px; display: block; color: #607e8f; }.thread-panel h3 { max-width: 900px; margin: 0; color: #eef9fd; font-size: clamp(34px,3.8vw,59px); line-height: 1.02; font-weight: 500; letter-spacing: -.055em; }
.thread-artifacts { margin-top: auto; padding-top: 50px; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(105,190,232,.15); }.thread-artifacts section { min-height: 135px; padding: 17px; border-right: 1px solid rgba(105,190,232,.15); border-bottom: 1px solid rgba(105,190,232,.15); }.thread-artifacts section:first-child { border-left: 1px solid rgba(105,190,232,.15); }.thread-artifacts p { margin: 18px 0 0; color: #9fb3be; font-size: 12px; line-height: 1.65; }
.thread-panel dl { margin: 20px 0 0; display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }.thread-panel dl div { padding-top: 17px; border-top: 1px solid rgba(105,190,232,.14); }.thread-panel dt { color: #ffca68; }.thread-panel dd { margin: 10px 0 0; color: #839daa; font-size: 12px; line-height: 1.65; }
.thread-object-model { min-width: 0; padding: 27px; display: flex; flex-direction: column; background: radial-gradient(circle at 50% 24%,rgba(0,200,244,.11),transparent 22%),#061725; border-left: 1px solid rgba(105,190,232,.18); }.thread-object-model header { display: flex; justify-content: space-between; gap: 18px; }.thread-object-model header b { max-width: 145px; color: #7896a6; font: 500 8px 'DM Mono',monospace; line-height: 1.45; text-align: right; }.thread-object-core { margin: 55px 0 42px; padding: 26px; position: relative; border: 1px solid rgba(0,200,244,.35); background: rgba(0,200,244,.035); }.thread-object-core::before,.thread-object-core::after { content: ''; width: 10px; height: 10px; position: absolute; border-color: var(--cyan); border-style: solid; }.thread-object-core::before { left: -1px; top: -1px; border-width: 1px 0 0 1px; }.thread-object-core::after { right: -1px; bottom: -1px; border-width: 0 1px 1px 0; }.thread-object-core strong { margin: 22px 0 12px; display: block; color: #e2f3fa; font-size: 24px; line-height: 1.08; font-weight: 500; letter-spacing: -.04em; }.thread-object-core p { margin: 0; color: #7f99a7; font-size: 12px; line-height: 1.65; }
.thread-object-flow { margin: auto 0 0; padding: 0; list-style: none; }.thread-object-flow li { min-height: 70px; padding: 13px 0; position: relative; display: grid; grid-template-columns: 34px 1fr; gap: 12px; border-top: 1px solid rgba(105,190,232,.14); }.thread-object-flow li::after { content: ''; width: 1px; position: absolute; left: 16px; top: 38px; bottom: -17px; background: rgba(0,200,244,.28); }.thread-object-flow li:last-child::after { display: none; }.thread-object-flow li > span { width: 33px; height: 33px; position: relative; z-index: 1; display: grid; place-items: center; color: var(--cyan); background: #061725; border: 1px solid rgba(0,200,244,.35); border-radius: 50%; font: 500 8px 'DM Mono',monospace; }.thread-object-flow b { color: #c3d8e2; font-size: 12px; font-weight: 500; }.thread-object-flow small { margin-top: 5px; display: block; color: #658292; font-size: 10px; line-height: 1.45; }
.thread-integrity { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(105,190,232,.18); background: #05131f; }.thread-integrity article { min-height: 205px; padding: 22px; border-right: 1px solid rgba(105,190,232,.15); }.thread-integrity article:last-child { border-right: 0; }.thread-integrity b { margin: 55px 0 12px; display: block; color: #d6e8f0; font-size: 17px; line-height: 1.15; font-weight: 500; }.thread-integrity p { margin: 0; color: #718d9b; font-size: 11px; line-height: 1.65; }

.constellation-section { max-width: var(--max); margin: auto; padding: clamp(85px,8.5vw,135px) clamp(28px,5vw,80px); background: #edf6fb; border-inline: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.constellation-heading h2 { color: #111b23; }.constellation-heading > p:last-child { margin: 0; color: var(--muted); font-size: 16px; line-height: 1.76; }
.constellation-layout { margin-top: 75px; display: grid; grid-template-columns: minmax(0,1fr) 340px; border: 1px solid #c9dce7; background: #f8fbfd; }
.constellation-map { min-height: 680px; position: relative; overflow: hidden; background: radial-gradient(circle at 50% 50%,rgba(0,200,244,.1),transparent 18%),linear-gradient(rgba(0,127,202,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,127,202,.035) 1px,transparent 1px); background-size: auto,38px 38px,38px 38px; border-right: 1px solid #c9dce7; }
.constellation-map > svg { width: 100%; height: 100%; position: absolute; inset: 0; fill: none; stroke: #9ab9c9; stroke-width: .7; opacity: .42; }.constellation-map > svg circle { stroke-dasharray: 5 10; }.constellation-map line.domain-engineering { stroke: #009ce5; }.constellation-map line.domain-technology { stroke: #5b6dff; }.constellation-map line.domain-operations { stroke: #00aa95; }
.constellation-core { width: 126px; height: 126px; position: absolute; left: 50%; top: 50%; z-index: 2; display: grid; place-content: center; text-align: center; color: white; background: radial-gradient(circle at 40% 30%,#12425e,#061522 72%); border: 1px solid rgba(0,200,244,.45); border-radius: 50%; box-shadow: 0 0 0 12px rgba(0,200,244,.035),0 20px 55px rgba(0,35,55,.25); transform: translate(-50%,-50%); }.constellation-core span { color: var(--cyan); font: 500 10px 'DM Mono',monospace; letter-spacing: .12em; }.constellation-core b { margin-top: 5px; font-size: 11px; line-height: 1.45; font-weight: 500; letter-spacing: .08em; }
.domain-marker { position: absolute; z-index: 2; color: #527180; font: 500 9px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }.domain-marker.engineering { left: 6%; top: 7%; color: #0585c2; }.domain-marker.technology { right: 5%; top: 7%; color: #5564d7; }.domain-marker.operations { right: 5%; bottom: 6%; color: #008d7c; }
.constellation-node { width: 126px; min-height: 55px; padding: 7px 9px; position: absolute; left: var(--node-x); top: var(--node-y); z-index: 3; display: grid; grid-template-columns: 22px 1fr; gap: 5px; align-items: center; text-align: left; color: #294453; background: rgba(255,255,255,.9); border: 1px solid #bed2dd; cursor: pointer; transform: translate(-50%,-50%); transition: color .2s ease,background .2s ease,border .2s ease,box-shadow .2s ease,transform .2s ease; }.constellation-node span { color: #738d9b; font: 500 8px 'DM Mono',monospace; }.constellation-node b { font-size: 10px; line-height: 1.3; font-weight: 600; }.constellation-node:hover,.constellation-node:focus-visible,.constellation-node.active { z-index: 4; color: white; background: #071827; border-color: var(--cyan); box-shadow: 0 12px 35px rgba(0,78,116,.22); transform: translate(-50%,-50%) scale(1.06); }.constellation-node.active span { color: var(--cyan); }
.constellation-detail { min-height: 680px; padding: 31px; display: flex; flex-direction: column; background: #fff; }.constellation-detail > span { color: var(--accent); font: 500 9px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }.constellation-detail h3 { margin: 110px 0 18px; font-size: 32px; line-height: 1.03; font-weight: 500; letter-spacing: -.045em; }.constellation-detail > p { margin: 0; color: #597180; font-size: 14px; line-height: 1.72; }.constellation-detail dl { margin: 35px 0; }.constellation-detail dl > div { padding: 15px 0; border-top: 1px solid var(--line); }.constellation-detail dt { color: #658090; font: 500 9px 'DM Mono',monospace; letter-spacing: .08em; text-transform: uppercase; }.constellation-detail dd { margin: 6px 0 0; color: #334c5b; font-size: 12.5px; line-height: 1.6; }.constellation-detail > a { margin-top: auto; padding: 16px 0; display: flex; justify-content: space-between; color: var(--accent); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 12px; font-weight: 600; }

.simple-dark,.engage-section { max-width: var(--max); margin: auto; padding: clamp(80px,8.5vw,135px) clamp(28px,5vw,80px); color: white; background: var(--night); border-inline: 1px solid rgba(143,191,218,.13); border-bottom: 1px solid rgba(143,191,218,.13); }
.engagement-grid,.situation-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid rgba(143,191,218,.15); }
.engagement-grid article,.situation-grid article { min-height: 240px; padding: 25px; border-right: 1px solid rgba(143,191,218,.15); }
.engagement-grid article:last-child,.situation-grid article:last-child { border-right: 0; }
.engagement-grid h3 { margin: 74px 0 13px; color: #e4f1f7; font-size: 20px; font-weight: 500; }
.engagement-grid p,.situation-grid p { color: #93a8b5; font-size: 14px; line-height: 1.7; }
.engagement-grid small { margin-top: 17px; padding-top: 16px; display: block; border-top: 1px solid rgba(143,191,218,.13); color: #b4c5ce; font-size: 13px; line-height: 1.65; }
.situation-grid p { margin: 60px 0 0; color: #c1d0d8; font-size: 17px; line-height: 1.55; }
.situation-grid article { min-height: 355px; display: flex; flex-direction: column; }
.situation-grid article > div { margin-top: auto; padding-top: 20px; border-top: 1px solid rgba(143,191,218,.14); }
.situation-grid article strong { display: block; color: var(--cyan); font: 500 10px 'DM Mono',monospace; letter-spacing: .08em; text-transform: uppercase; }
.situation-grid article small { margin-top: 9px; display: block; color: #9cb0bc; font-size: 13px; line-height: 1.65; }

.decision-section { min-height: 570px; padding: clamp(80px,8vw,130px) clamp(28px,5vw,80px); display: grid; grid-template-columns: 1fr 1fr; gap: 9vw; background: #fff; }
.decision-list { border-top: 1px solid var(--line); }
.decision-list p { min-height: 112px; margin: 0; display: grid; grid-template-columns: 45px 1fr; gap: 12px; align-items: center; border-bottom: 1px solid var(--line); color: #3c4b55; font-size: 14px; line-height: 1.5; }
.decision-list span { color: #71838f; font: 500 8px 'DM Mono',monospace; }
.decision-copy strong { display: block; color: #263640; font: 500 16px/1.45 Inter,sans-serif; }
.decision-copy small { margin-top: 6px; display: block; color: #607583; font: 400 13px/1.6 Inter,sans-serif; }
.company-strip { max-width: var(--max); margin: auto; display: grid; grid-template-columns: 1.55fr .65fr .9fr 1fr; border-inline: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.company-strip > div { min-height: 140px; padding: 26px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--line); background: #f1f4f2; }
.company-strip > div:last-child { border-right: 0; }
.company-strip span { color: #667f90; font: 500 10px 'DM Mono',monospace; text-transform: uppercase; letter-spacing: .1em; }
.company-strip b { font-size: 18px; line-height: 1.35; font-weight: 500; }

.clarity-section { min-height: 570px; padding: clamp(80px,8vw,130px) clamp(28px,5vw,80px); display: grid; grid-template-columns: 1fr .72fr; gap: 9vw; background: #fff; }
.clarity-section dl { margin: 38px 0 0; border-top: 1px solid var(--line); }
.clarity-section dl > div { padding: 17px 0; display: grid; grid-template-columns: 115px 1fr; gap: 20px; border-bottom: 1px solid var(--line); }
.clarity-section dt { color: #5f7a8b; font: 500 10px 'DM Mono',monospace; text-transform: uppercase; letter-spacing: .09em; }
.clarity-section dd { margin: 0; color: #334b59; font-size: 14px; line-height: 1.68; }
.technical-rail-section { max-width: var(--max); margin: auto; padding: clamp(78px,7.5vw,118px) clamp(28px,5vw,80px); display: grid; grid-template-columns: minmax(280px,.65fr) minmax(0,1.55fr); gap: clamp(45px,7vw,110px); color: #e8f6fc; background: radial-gradient(circle at 12% 28%,rgba(0,200,244,.1),transparent 24%),linear-gradient(150deg,#061725,#07111a 70%); border-inline: 1px solid rgba(112,190,228,.16); border-bottom: 1px solid rgba(112,190,228,.16); }
.technical-rail-intro { position: sticky; top: 114px; align-self: start; }.technical-rail-intro > span { margin-top: 25px; display: inline-block; color: var(--cyan); font: 500 9px 'DM Mono',monospace; letter-spacing: .11em; text-transform: uppercase; }.technical-rail-intro h2 { max-width: 475px; margin: 18px 0 0; color: #edf9ff; font-size: clamp(31px,3vw,46px); line-height: 1.08; font-weight: 500; letter-spacing: -.045em; }
.rail-status { margin-top: 46px; padding: 16px 0; display: grid; grid-template-columns: 16px 1fr; border-top: 1px solid rgba(120,190,226,.18); border-bottom: 1px solid rgba(120,190,226,.18); }.rail-status i { width: 7px; height: 7px; margin-top: 5px; display: block; border-radius: 50%; color: #00e0bd; background: currentColor; box-shadow: 0 0 12px currentColor; animation: statusPulse 2s ease-in-out infinite; }.rail-status b { color: #cbe1eb; font-size: 12px; font-weight: 550; }.rail-status small { grid-column: 2; margin-top: 4px; color: #668294; font: 500 8px 'DM Mono',monospace; letter-spacing: .06em; }
.technical-rail-data { min-width: 0; }.rail-data-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(120,190,226,.18); border-left: 1px solid rgba(120,190,226,.18); }.rail-data-grid article { min-height: 240px; padding: 24px; border-right: 1px solid rgba(120,190,226,.18); border-bottom: 1px solid rgba(120,190,226,.18); }.rail-data-grid article > span { color: #5c8195; font: 500 9px 'DM Mono',monospace; letter-spacing: .08em; text-transform: uppercase; }.rail-data-grid ul { margin: 76px 0 0; padding: 0; list-style: none; }.rail-data-grid li { margin-top: 9px; padding-left: 15px; position: relative; color: #a4bac5; font-size: 13px; line-height: 1.55; }.rail-data-grid li::before { content: ''; width: 5px; height: 5px; position: absolute; left: 0; top: .58em; border: 1px solid var(--cyan); transform: rotate(45deg); }
.rail-lifecycle { margin-top: 25px; padding: 25px; border: 1px solid rgba(120,190,226,.18); background: rgba(2,12,20,.38); }.rail-lifecycle-head { min-height: 115px; display: grid; grid-template-columns: .34fr .72fr 1fr; gap: 24px; align-items: start; }.rail-lifecycle-head > span { color: #5c8195; font: 500 9px 'DM Mono',monospace; letter-spacing: .08em; text-transform: uppercase; }.rail-lifecycle-head strong { color: #e5f5fc; font-size: 21px; line-height: 1.1; font-weight: 500; }.rail-lifecycle-head p { margin: 0; color: #819ba9; font-size: 13px; line-height: 1.65; }
.rail-phase-track { display: grid; grid-template-columns: repeat(5,minmax(90px,1fr)); }.rail-phase-track button { min-height: 92px; padding: 14px 10px; position: relative; display: grid; grid-template-columns: 24px 1fr; gap: 6px; align-items: end; text-align: left; color: #688596; background: transparent; border: 0; border-top: 1px solid rgba(120,190,226,.2); cursor: pointer; }.rail-phase-track button::after { content: ''; height: 1px; position: absolute; left: 0; right: 100%; top: -1px; background: var(--cyan); transition: right .25s ease; }.rail-phase-track button.active::after { right: 0; }.rail-phase-track button i { width: 6px; height: 6px; position: absolute; left: 0; top: -3px; border: 1px solid #58788a; border-radius: 50%; background: #07131d; }.rail-phase-track button.active i { border-color: var(--cyan); background: var(--cyan); box-shadow: 0 0 10px var(--cyan); }.rail-phase-track button span { color: #58788a; font: 500 8px 'DM Mono',monospace; }.rail-phase-track button b { font-size: 10px; line-height: 1.3; font-weight: 550; }.rail-phase-track button.active { color: #e4f5fc; }
.capability-list { margin-top: 68px; border-top: 1px solid #bdc9d0; }
.capability-row { min-height: 330px; padding: 34px 0; display: grid; grid-template-columns: 62px 1fr 180px; gap: 28px; align-items: start; border-bottom: 1px solid #bdc9d0; }
.capability-row > span { color: #627f91; font: 500 10px 'DM Mono',monospace; }
.capability-row h3 { margin: 0; font-size: 25px; font-weight: 500; letter-spacing: -.035em; }
.capability-row > div > p { max-width: 880px; margin: 13px 0 0; color: #586f7e; font-size: 15px; line-height: 1.72; }
.capability-detail { max-width: 850px; margin-top: 22px; padding-top: 18px; display: grid; grid-template-columns: 130px 1fr; gap: 20px; border-top: 1px solid #d7dfe3; }
.capability-detail strong { color: var(--accent); font: 500 10px 'DM Mono',monospace; letter-spacing: .08em; text-transform: uppercase; }
.capability-detail p { margin: 0; color: #384f5d; font-size: 13.5px; line-height: 1.7; }
.capability-context { max-width: 960px; margin-top: 22px; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.capability-context span { padding: 17px; display: block; color: #526a79; background: #edf6fb; border-left: 2px solid #079ee8; font-size: 13px; line-height: 1.65; }
.capability-context b { margin-bottom: 7px; display: block; color: #087fc0; font: 500 10px 'DM Mono',monospace; letter-spacing: .08em; text-transform: uppercase; }
.capability-row > a { align-self: end; padding-top: 15px; border-top: 1px solid var(--line); color: var(--accent); font-size: 12px; font-weight: 600; }
.capability-row > a b { float: right; }

.operating-detail { max-width: var(--max); margin: auto; padding: clamp(80px,8.5vw,135px) clamp(28px,5vw,80px); background: #edf6fb; border-inline: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.operating-intro { display: grid; grid-template-columns: .34fr 1.1fr .62fr; gap: clamp(28px,5vw,76px); align-items: start; }
.operating-intro h2 { margin: 0; color: #111b23; font-size: clamp(38px,4.3vw,66px); line-height: 1.03; font-weight: 500; letter-spacing: -.055em; }
.operating-intro > p:last-child { margin: 0; color: var(--muted); font-size: 16px; line-height: 1.78; }
.operating-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid #cad7d1; background: #f8faf9; }
.operating-grid article { min-height: 335px; padding: 25px; display: flex; flex-direction: column; border-right: 1px solid #cad7d1; }
.operating-grid article:last-child { border-right: 0; }
.operating-grid span { color: #697d76; font: 500 9px 'DM Mono',monospace; }
.operating-grid h3 { margin: 66px 0 13px; color: #152a38; font-size: 22px; font-weight: 500; }
.operating-grid p { margin: 0; color: #536d7d; font-size: 14px; line-height: 1.7; }
.operating-grid small { margin-top: auto; padding-top: 17px; border-top: 1px solid #d5e1e8; color: #3d5969; font-size: 13px; line-height: 1.65; }

.trust-section { max-width: var(--max); margin: auto; padding: clamp(80px,8.5vw,135px) clamp(28px,5vw,80px); color: #eaf6fc; background: radial-gradient(circle at 85% 5%,rgba(0,156,231,.15),transparent 28%),#071827; border-inline: 1px solid rgba(0,200,244,.15); border-bottom: 1px solid rgba(0,200,244,.15); }
.trust-intro { display: grid; grid-template-columns: .34fr 1.1fr .62fr; gap: clamp(28px,5vw,76px); align-items: start; }
.trust-intro h2 { margin: 0; font-size: clamp(38px,4.3vw,66px); line-height: 1.03; font-weight: 500; letter-spacing: -.055em; }
.trust-intro > p:last-child { margin: 0; color: #98afbd; font-size: 16px; line-height: 1.78; }
.trust-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid rgba(117,190,228,.2); }
.trust-grid article { min-height: 390px; padding: 26px; display: flex; flex-direction: column; border-right: 1px solid rgba(117,190,228,.2); }
.trust-grid article:last-child { border-right: 0; }
.trust-grid span { color: #5d8399; font: 500 10px 'DM Mono',monospace; letter-spacing: .08em; }
.trust-grid h3 { margin: 70px 0 15px; color: #edf9ff; font-size: 24px; font-weight: 500; }
.trust-grid p { margin: 0; color: #a7bac5; font-size: 14px; line-height: 1.72; }
.trust-grid small { margin-top: auto; padding-top: 18px; border-top: 1px solid rgba(117,190,228,.16); color: #88a9ba; font-size: 13px; line-height: 1.65; }
.trust-note { margin: 28px 0 0; padding: 18px 20px; color: #8ca9b9; background: rgba(1,12,20,.36); border-left: 2px solid var(--cyan); font-size: 13px; line-height: 1.7; }
.trust-note strong { color: #ccebf8; }

.domain-console { max-width: var(--max); margin: auto; padding: clamp(85px,8.5vw,135px) clamp(28px,5vw,80px); color: #eaf6fc; border-inline: 1px solid rgba(104,186,226,.16); border-bottom: 1px solid rgba(104,186,226,.16); }
.bfsi-console { background: radial-gradient(circle at 82% 13%,rgba(0,200,244,.12),transparent 25%),linear-gradient(145deg,#061725,#041019 72%); }.airline-console { background: radial-gradient(circle at 12% 18%,rgba(33,123,255,.15),transparent 25%),linear-gradient(150deg,#07192a,#030b13 75%); }
.domain-console-heading { display: grid; grid-template-columns: .3fr 1.05fr .65fr; gap: clamp(28px,5vw,76px); align-items: start; }.domain-console-heading h2 { margin: 0; font-size: clamp(42px,4.7vw,72px); line-height: 1; font-weight: 500; letter-spacing: -.06em; }.domain-console-heading > p:last-child { margin: 0; color: #8da5b3; font-size: 15px; line-height: 1.78; }
.domain-console-shell,.airline-board { margin-top: 65px; border: 1px solid rgba(105,190,232,.22); background: #04111b; box-shadow: 0 30px 80px rgba(0,0,0,.23); }
.domain-console-tabs { display: grid; grid-template-columns: repeat(6,1fr); border-bottom: 1px solid rgba(105,190,232,.18); }.domain-console-tabs button,.airline-event-tabs button { min-height: 94px; padding: 14px; display: flex; flex-direction: column; justify-content: space-between; color: #7892a1; background: transparent; border: 0; border-right: 1px solid rgba(105,190,232,.16); cursor: pointer; text-align: left; }.domain-console-tabs button:last-child,.airline-event-tabs button:last-child { border-right: 0; }.domain-console-tabs button span,.airline-event-tabs button span { color: #547284; font: 500 8px 'DM Mono',monospace; letter-spacing: .08em; }.domain-console-tabs button b,.airline-event-tabs button b { color: #a9bec9; font-size: 13px; font-weight: 500; }.domain-console-tabs button.active { background: rgba(0,200,244,.085); box-shadow: inset 0 -2px var(--cyan); }.domain-console-tabs button.active b,.domain-console-tabs button.active span { color: var(--cyan); }
.domain-console-panels { min-height: 555px; }.domain-console-panel { min-height: 555px; padding: clamp(28px,4vw,55px); display: none; }.domain-console-panel.active { display: block; animation: bfsiResolve .4s cubic-bezier(.2,.75,.25,1); }.domain-console-panel header { display: grid; grid-template-columns: 150px 1fr; column-gap: 35px; }.domain-console-panel header > span { color: var(--cyan); font: 500 9px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }.domain-console-panel h3 { max-width: 900px; margin: 0; color: #eef9fd; font-size: clamp(36px,4vw,62px); line-height: 1; font-weight: 500; letter-spacing: -.055em; }.domain-console-panel header > p { max-width: 820px; margin: 23px 0 0; grid-column: 2; color: #8ca5b3; font-size: 15px; line-height: 1.75; }
.domain-control-grid { margin-top: 52px; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(105,190,232,.15); border-left: 1px solid rgba(105,190,232,.15); }.domain-control-grid section { min-height: 150px; padding: 18px; border-right: 1px solid rgba(105,190,232,.15); border-bottom: 1px solid rgba(105,190,232,.15); }.domain-control-grid .domain-evidence { min-height: 105px; grid-column: 1/-1; }.domain-control-grid span { color: #5c7a8b; font: 500 8px 'DM Mono',monospace; letter-spacing: .09em; text-transform: uppercase; }.domain-control-grid p { max-width: 720px; margin: 16px 0 0; color: #afc2cc; font-size: 13px; line-height: 1.7; }.domain-control-grid section:nth-child(2) span { color: #ffca68; }.domain-evidence p { color: #7bdcf4; font-family: 'DM Mono',monospace; font-size: 10px; }
.domain-kpis { margin-top: 18px; padding: 18px 20px; display: grid; grid-template-columns: 90px 1fr 90px 1fr; gap: 10px 18px; border: 1px solid rgba(105,190,232,.16); background: rgba(2,12,20,.5); }.domain-kpis span { color: var(--cyan); font: 500 8px 'DM Mono',monospace; text-transform: uppercase; }.domain-kpis b { color: #829aa8; font-size: 10px; font-weight: 500; }
@keyframes bfsiResolve { from { opacity: 0; clip-path: inset(0 8% 0 0); } to { opacity: 1; clip-path: inset(0); } }

.airline-board-top { min-height: 54px; padding: 0 17px; display: flex; align-items: center; justify-content: space-between; color: #567486; border-bottom: 1px solid rgba(105,190,232,.16); font: 500 8px 'DM Mono',monospace; letter-spacing: .1em; }.airline-board-top b { color: #69dcff; font-weight: 500; }.airline-event-tabs { display: grid; grid-template-columns: repeat(4,1fr); border-bottom: 1px solid rgba(105,190,232,.18); }.airline-event-tabs button.active { background: linear-gradient(180deg,rgba(32,117,255,.13),rgba(0,200,244,.04)); box-shadow: inset 0 -2px #61a6ff; }.airline-event-tabs button.active span { color: #61a6ff; }.airline-event-tabs button.active b { color: #e3f4fb; }
.airline-event-panels { min-height: 600px; }.airline-event-panel { min-height: 600px; display: none; grid-template-columns: minmax(270px,.62fr) minmax(0,1.38fr); }.airline-event-panel.active { display: grid; animation: airlineDispatch .45s cubic-bezier(.2,.75,.25,1); }.airline-event-status { padding: 31px; display: flex; flex-direction: column; background: linear-gradient(155deg,#08243a,#05121e); border-right: 1px solid rgba(105,190,232,.16); }.airline-event-status > span { color: #61a6ff; font: 500 8px 'DM Mono',monospace; letter-spacing: .09em; }.airline-event-status > strong { max-width: 390px; margin-top: 55px; color: #edf8fd; font-size: clamp(29px,3vw,43px); line-height: 1.03; font-weight: 500; letter-spacing: -.05em; }.airline-event-status > div { padding: 15px 0; margin-top: auto; display: flex; justify-content: space-between; gap: 16px; border-top: 1px solid rgba(105,190,232,.14); }.airline-event-status > div + div { margin-top: 0; }.airline-event-status small { color: #557487; font: 500 7px 'DM Mono',monospace; }.airline-event-status div b { color: #9fc4d5; font: 500 8px 'DM Mono',monospace; }
.airline-event-work { display: grid; grid-template-columns: 1fr 1fr; }.airline-event-work section { min-height: 300px; padding: 28px; border-right: 1px solid rgba(105,190,232,.14); border-bottom: 1px solid rgba(105,190,232,.14); }.airline-event-work section:nth-child(2n) { border-right: 0; }.airline-event-work section:nth-child(n+3) { border-bottom: 0; }.airline-event-work span { color: #61a6ff; font: 500 8px 'DM Mono',monospace; letter-spacing: .08em; text-transform: uppercase; }.airline-event-work p { margin: 75px 0 0; color: #96abb7; font-size: 13px; line-height: 1.72; }.airline-event-work section:nth-child(3) span { color: #ffca68; }
.airline-service-lanes { margin-top: 18px; display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid rgba(105,190,232,.16); }.airline-service-lanes article { min-height: 245px; padding: 23px; border-right: 1px solid rgba(105,190,232,.16); }.airline-service-lanes article:last-child { border-right: 0; }.airline-service-lanes span { color: #61a6ff; font: 500 8px 'DM Mono',monospace; text-transform: uppercase; }.airline-service-lanes h3 { margin: 70px 0 13px; color: #dcecf4; font-size: 19px; font-weight: 500; }.airline-service-lanes p { margin: 0; color: #7f98a6; font-size: 12px; line-height: 1.65; }
@keyframes airlineDispatch { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

.regulated-references { margin-top: 65px; display: grid; grid-template-columns: minmax(250px,.55fr) minmax(0,1.45fr); gap: clamp(35px,6vw,85px); }.regulated-references header > span { color: var(--cyan); font: 500 8px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }.regulated-references h3 { margin: 20px 0 18px; color: #e5f3f9; font-size: 30px; line-height: 1.05; font-weight: 500; letter-spacing: -.045em; }.regulated-references header p { color: #849ca9; font-size: 12px; line-height: 1.7; }.regulated-references > div { border-top: 1px solid rgba(105,190,232,.16); }.regulated-references a { min-height: 112px; padding: 17px 0; display: grid; grid-template-columns: 35px 1fr 1.3fr auto; gap: 15px; align-items: center; border-bottom: 1px solid rgba(105,190,232,.16); }.regulated-references a > span { color: #547486; font: 500 8px 'DM Mono',monospace; }.regulated-references a > b { color: #bad0da; font-size: 12px; font-weight: 550; }.regulated-references a > p { margin: 0; color: #718b99; font-size: 11px; line-height: 1.55; }.regulated-references a > i { color: var(--cyan); font-style: normal; }

.process-track { margin-top: 70px; display: grid; grid-template-columns: repeat(auto-fit,minmax(155px,1fr)); }
.process-track article { min-height: 325px; padding-right: 24px; display: flex; flex-direction: column; }
.process-track article > span { color: #657f90; font: 500 10px 'DM Mono',monospace; }
.process-track article > i { height: 1px; margin: 15px 0 38px; display: block; position: relative; background: linear-gradient(90deg,var(--blue),#d7e1e6); }
.process-track article > i::before { content: ''; width: 7px; height: 7px; position: absolute; left: 0; top: -3px; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 6px rgba(10,146,242,.09); }
.process-track h3 { margin: 0; font-size: 21px; font-weight: 500; }
.process-track p { max-width: 230px; color: #5a7180; font-size: 13px; line-height: 1.65; }
.process-track small { max-width: 230px; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--line); color: #4f6775; font-size: 13px; line-height: 1.6; }
.process-track small b { margin-bottom: 5px; display: block; color: var(--accent); font: 500 10px 'DM Mono',monospace; letter-spacing: .08em; text-transform: uppercase; }
.deliverable-section { background: #fff; }
.deliverable-grid { margin-top: 68px; display: grid; grid-template-columns: repeat(2,1fr); border-left: 1px solid var(--line); border-top: 1px solid var(--line); }
.deliverable-grid article { min-height: 270px; padding: 27px; display: grid; grid-template-columns: 48px 1fr; grid-template-rows: auto auto 1fr; column-gap: 15px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.deliverable-grid h3 { margin: 0; font-size: 22px; font-weight: 500; }
.deliverable-grid p { grid-column: 2; color: #5d7483; font-size: 14px; line-height: 1.65; }
.deliverable-grid small { grid-column: 2; align-self: end; padding-top: 15px; border-top: 1px solid var(--line); color: #405b6a; font-size: 13px; line-height: 1.65; }
.tech-row { margin-top: 50px; padding-top: 28px; display: grid; grid-template-columns: 220px 1fr; gap: 35px; border-top: 1px solid var(--line); }
.tech-row > strong { color: #5c7889; font: 500 10px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }
.tech-row > div { display: flex; flex-wrap: wrap; gap: 8px; }
.tech-row span { min-height: 38px; padding: 0 14px; display: inline-flex; align-items: center; border: 1px solid var(--line); color: #415d6d; background: #f8fbfd; font-size: 12px; }
.related-section { padding: 50px clamp(28px,5vw,80px); display: grid; grid-template-columns: .34fr 1fr; align-items: center; background: #edf6fb; }
.related-section .section-kicker { margin: 0; }
.related-section > div { display: flex; flex-wrap: wrap; gap: 10px; }
.related-section a { min-height: 46px; padding: 0 15px; display: inline-flex; align-items: center; gap: 25px; border: 1px solid #d1dfe8; background: white; font-size: 13px; }
.related-section a span { color: var(--accent); }

.cta-section { max-width: var(--max); min-height: 450px; margin: auto; padding: clamp(75px,8vw,125px) clamp(28px,5vw,80px); position: relative; overflow: hidden; color: white; background: linear-gradient(135deg,#075c98,#073654); border-inline: 1px solid rgba(0,200,244,.22); }
.cta-section::after { content: ''; width: 470px; height: 470px; position: absolute; right: -8%; top: -45%; border: 1px solid rgba(0,200,244,.2); border-radius: 50%; box-shadow: 0 0 0 75px rgba(0,200,244,.04),0 0 0 150px rgba(0,146,242,.025); }
.cta-section h2 { max-width: 980px; margin: 22px 0 38px; position: relative; z-index: 2; font-size: clamp(39px,4.8vw,72px); line-height: 1; font-weight: 500; letter-spacing: -.06em; }
.cta-section > a { min-width: 230px; min-height: 54px; padding: 0 17px; position: relative; z-index: 3; display: inline-flex; justify-content: space-between; align-items: center; color: #04121c; background: var(--cyan); font-size: 14px; font-weight: 600; }

.intelligence-teaser { max-width: var(--max); margin: auto; display: grid; grid-template-columns: .82fr 1.18fr; color: #e8f5fb; background: linear-gradient(145deg,#071b2a,#040c13 75%); border-inline: 1px solid rgba(108,174,213,.14); border-bottom: 1px solid rgba(108,174,213,.14); }
.intelligence-teaser-copy { min-height: 610px; padding: clamp(60px,6vw,90px) clamp(28px,5vw,75px); display: flex; flex-direction: column; justify-content: center; border-right: 1px solid rgba(108,174,213,.14); }
.intelligence-teaser-copy h2 { max-width: 620px; margin: 0; color: #f1f9fd; font-size: clamp(42px,4.7vw,72px); line-height: 1; font-weight: 500; letter-spacing: -.06em; }
.intelligence-teaser-copy > p:not(.section-kicker) { max-width: 610px; margin: 25px 0 34px; color: #8ea4b2; font-size: 16px; line-height: 1.75; }
.intelligence-teaser-copy > a { width: max-content; padding-bottom: 7px; display: flex; gap: 35px; color: #d9edf6; border-bottom: 1px solid rgba(0,200,244,.45); font-size: 13px; }
.intelligence-teaser-copy > a span { color: var(--cyan); }
.intelligence-teaser-grid { display: grid; grid-template-columns: 1fr 1fr; }
.intelligence-teaser-grid > a { min-height: 305px; padding: 27px; display: flex; flex-direction: column; border-right: 1px solid rgba(108,174,213,.14); border-bottom: 1px solid rgba(108,174,213,.14); transition: background .2s ease,transform .2s ease; }
.intelligence-teaser-grid > a:nth-child(2n) { border-right: 0; }
.intelligence-teaser-grid > a:hover { z-index: 1; background: rgba(0,200,244,.06); transform: translateY(-3px); }
.intelligence-teaser-grid span { color: #4f7185; font: 500 8px 'DM Mono',monospace; letter-spacing: .09em; text-transform: uppercase; }
.intelligence-teaser-grid h3 { max-width: 350px; margin: 80px 0 20px; color: #d8e8f0; font-size: 24px; line-height: 1.12; font-weight: 500; letter-spacing: -.035em; }
.intelligence-teaser-grid small { margin-top: auto; color: var(--cyan); font-size: 11px; }

.intelligence-page { --intel-line: rgba(104,176,213,.16); }
.intelligence-hero { max-width: var(--max); min-height: 730px; margin: auto; padding: clamp(80px,8vw,125px) clamp(28px,5.2vw,80px); display: grid; grid-template-columns: 1.35fr .65fr; gap: clamp(60px,9vw,150px); align-items: center; color: white; background: radial-gradient(circle at 75% 35%,rgba(0,200,244,.14),transparent 28%),linear-gradient(140deg,#061522,#030a10); border-inline: 1px solid var(--intel-line); }
.intelligence-hero h1 { max-width: 900px; margin: 0; font-size: clamp(65px,7vw,112px); line-height: .89; font-weight: 500; letter-spacing: -.073em; }
.intelligence-hero h1 em { color: transparent; font-style: normal; -webkit-text-stroke: 1px rgba(154,221,247,.75); }
.intelligence-hero > div > p:not(.eyebrow) { max-width: 760px; margin: 30px 0 0; color: #9bb0bd; font-size: clamp(17px,1.35vw,20px); line-height: 1.72; }
.intelligence-hero aside { padding: 26px; border: 1px solid rgba(114,191,230,.18); background: rgba(5,18,29,.7); }
.intelligence-hero aside > span { color: var(--cyan); font: 500 9px 'DM Mono',monospace; letter-spacing: .12em; text-transform: uppercase; }
.intelligence-hero aside > p { margin: 17px 0 28px; color: #859ba9; font-size: 13px; line-height: 1.7; }
.intelligence-hero aside dl { margin: 0; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(114,191,230,.14); }
.intelligence-hero aside dl div { padding: 17px 9px 0 0; }
.intelligence-hero aside dt { color: #e2f5fc; font: 500 17px 'DM Mono',monospace; }
.intelligence-hero aside dd { margin: 5px 0 0; color: #617d8d; font-size: 9px; line-height: 1.4; }
.intelligence-guides,.research-method { max-width: var(--max); margin: auto; padding: clamp(80px,8vw,125px) clamp(28px,5vw,80px); background: #f5f8fa; border-inline: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.intelligence-heading { display: grid; grid-template-columns: .3fr 1fr .6fr; gap: clamp(28px,5vw,75px); align-items: start; }
.intelligence-heading h2 { margin: 0; font-size: clamp(42px,4.4vw,68px); line-height: 1.01; font-weight: 500; letter-spacing: -.06em; }
.intelligence-heading > p:last-child { margin: 0; color: #5d7483; font-size: 15px; line-height: 1.75; }
.intelligence-heading.inverse h2 { color: #edf8fd; }.intelligence-heading.inverse > p:last-child { color: #7f97a5; }
.intelligence-guide-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(2,1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.intelligence-guide-card { min-height: 440px; padding: 28px; display: flex; flex-direction: column; background: white; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: transform .2s ease,box-shadow .2s ease; }
.intelligence-guide-card:hover { z-index: 2; transform: translateY(-6px); box-shadow: 0 25px 60px rgba(20,42,57,.12); }
.intelligence-guide-card > span { color: #5d7b8d; font: 500 9px 'DM Mono',monospace; text-transform: uppercase; letter-spacing: .1em; }
.intelligence-guide-card h3 { max-width: 610px; margin: 66px 0 17px; font-size: clamp(29px,2.6vw,41px); line-height: 1.03; font-weight: 500; letter-spacing: -.05em; }
.intelligence-guide-card > p { max-width: 650px; margin: 0; color: #5f7482; font-size: 14px; line-height: 1.72; }
.intelligence-guide-card > div { margin-top: 25px; display: flex; flex-wrap: wrap; gap: 6px; }
.intelligence-guide-card small { padding: 5px 7px; color: #567184; border: 1px solid #d7e4ea; font-size: 9px; }
.intelligence-guide-card strong { margin-top: auto; padding-top: 24px; color: var(--accent); font-size: 12px; }
.intelligence-labs { max-width: var(--max); margin: auto; padding: clamp(80px,8vw,125px) clamp(28px,5vw,80px); color: white; background: #06131e; border-inline: 1px solid var(--intel-line); border-bottom: 1px solid var(--intel-line); }
.lab-card-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid rgba(109,183,221,.16); }
.lab-card { min-height: 650px; padding: 25px; display: flex; flex-direction: column; border-right: 1px solid rgba(109,183,221,.16); transition: background .2s ease,transform .2s ease; }
.lab-card:last-child { border-right: 0; }.lab-card:hover { background: rgba(0,200,244,.05); }
.lab-card > span { color: var(--cyan); font: 500 9px 'DM Mono',monospace; }
.lab-card-visual { height: 250px; margin: 32px 0 25px; position: relative; overflow: hidden; border: 1px solid rgba(109,183,221,.16); background: linear-gradient(rgba(0,200,244,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,200,244,.035) 1px,transparent 1px),#04111b; background-size: 24px 24px; }
.lab-card-visual svg { width: 100%; height: 190px; display: block; fill: none; stroke: #5d8194; stroke-width: 1; }.lab-card-visual text { stroke: none; fill: #5e7c8d; font: 500 7px 'DM Mono',monospace; letter-spacing: .08em; }.lab-card-visual .mini-axis { opacity: .35; }.lab-card-visual circle { fill: #dffaff; stroke: var(--cyan); }
.mini-mesh-coarse { stroke: #58798a; }.mini-mesh-fine { stroke: var(--cyan); stroke-width: .65; }.mini-transfer { stroke: #ffca68; stroke-width: 1.3; }.mini-convergence { stroke: #67f2cf; stroke-width: 1.7; }.mini-convergence path:last-of-type { stroke: #5b7180; stroke-dasharray: 3 4; }
.mini-physical { stroke: var(--cyan); stroke-width: 2; }.mini-estimate { stroke: #7084ff; stroke-width: 2; stroke-dasharray: 5 4; }.mini-samples { stroke: #4d7185; }.mini-latency { stroke: #ffca68; }
.mini-valid-region { fill: rgba(0,200,244,.055); stroke: rgba(0,200,244,.25); stroke-dasharray: 4 4; }.mini-band { fill: rgba(87,109,255,.16); stroke: none; }.mini-prediction { stroke: #7a8fff; stroke-width: 2; }.mini-evidence circle { fill: #dffaff; stroke: var(--cyan); }.mini-query { stroke: #ffca68; stroke-dasharray: 4 4; }.mini-query-point { fill: #ffca68 !important; stroke: #ffca68 !important; }
.lab-card-signal { min-height: 59px; padding: 9px 12px; position: absolute; inset: auto 0 0; display: flex; flex-direction: column; justify-content: center; background: rgba(2,12,20,.94); border-top: 1px solid rgba(109,183,221,.15); border-left: 2px solid var(--cyan); }.lab-card-signal span,.lab-card-consequence span { color: #587687; font: 500 7px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }.lab-card-signal b { margin-top: 4px; color: #d8f4fb; font: 500 10px 'DM Mono',monospace; }
.lab-card h3 { margin: 0 0 14px; color: #e6f4fa; font-size: 25px; line-height: 1.1; font-weight: 500; letter-spacing: -.04em; }
.lab-card p { margin: 0; color: #8098a6; font-size: 13px; line-height: 1.7; }.lab-card-consequence { margin-top: 20px; padding-top: 14px; display: flex; flex-direction: column; border-top: 1px solid rgba(109,183,221,.13); }.lab-card-consequence b { margin-top: 7px; color: #9cb2be; font-size: 11px; line-height: 1.55; font-weight: 500; }.lab-card strong { margin-top: auto; padding-top: 20px; color: var(--cyan); font-size: 11px; }
.research-method-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); }
.research-method-grid article { min-height: 330px; padding: 25px; display: flex; flex-direction: column; background: white; border-right: 1px solid var(--line); }.research-method-grid article:last-child { border-right: 0; }
.research-method-grid span { color: var(--accent); font: 500 9px 'DM Mono',monospace; }.research-method-grid h3 { margin: 90px 0 13px; font-size: 23px; line-height: 1.1; font-weight: 500; letter-spacing: -.035em; }.research-method-grid p { margin: 0; color: #5d7483; font-size: 13px; line-height: 1.7; }

.intelligence-article { max-width: var(--max); margin: auto; background: #f7fafb; border-inline: 1px solid var(--line); }
.article-hero { min-height: 700px; padding: clamp(80px,8vw,125px) clamp(28px,6vw,92px) 65px; display: flex; flex-direction: column; justify-content: center; color: white; background: radial-gradient(circle at 78% 25%,rgba(0,200,244,.13),transparent 27%),#061522; border-bottom: 1px solid var(--intel-line); }
.article-hero h1 { max-width: 1150px; margin: 0; font-size: clamp(57px,6.6vw,105px); line-height: .93; font-weight: 500; letter-spacing: -.072em; }
.article-hero > p:not(.eyebrow) { max-width: 900px; margin: 28px 0 0; color: #9db1bd; font-size: clamp(17px,1.4vw,20px); line-height: 1.72; }
.article-principles { margin-top: 48px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(121,190,226,.18); }
.article-principles span { padding: 18px 16px 0 0; color: #8299a6; font-size: 11px; }.article-principles b { margin-right: 9px; color: var(--cyan); font: 500 8px 'DM Mono',monospace; }
.article-layout { display: grid; grid-template-columns: 260px 1fr; gap: clamp(50px,7vw,110px); padding: 0 clamp(28px,6vw,92px); }
.article-index { height: max-content; padding: 70px 0; position: sticky; top: 84px; display: flex; flex-direction: column; }
.article-index > span { margin-bottom: 16px; color: #688393; font: 500 9px 'DM Mono',monospace; text-transform: uppercase; letter-spacing: .1em; }
.article-index a { padding: 10px 0; color: #5e7482; border-bottom: 1px solid var(--line); font-size: 11px; }.article-index a:hover { color: var(--accent); }.article-index small { margin-top: 25px; color: #8aa0ad; font-size: 9px; line-height: 1.6; }
.article-content { max-width: 930px; padding: 20px 0 100px; }
.article-content > section { padding: 72px 0; border-bottom: 1px solid var(--line); scroll-margin-top: 100px; }
.article-content > section > span { color: var(--accent); font: 500 9px 'DM Mono',monospace; text-transform: uppercase; letter-spacing: .1em; }
.article-content h2 { max-width: 820px; margin: 18px 0 20px; font-size: clamp(36px,3.7vw,56px); line-height: 1.02; font-weight: 500; letter-spacing: -.055em; }
.article-content section > p { max-width: 830px; margin: 0; color: #536b7b; font-size: 17px; line-height: 1.8; }
.article-content ul { margin: 32px 0 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; list-style: none; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.article-content li { min-height: 80px; padding: 15px 17px; color: #405a6b; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 13px; line-height: 1.55; }
.article-boundary { margin-top: 30px; padding-inline: 32px !important; background: #071725; }.article-boundary h2 { color: #eff8fc; }.article-boundary p { color: #8da3b0 !important; }
.article-sources > a { min-height: 78px; padding: 14px 0; display: grid; grid-template-columns: 35px 1fr auto; gap: 12px; align-items: center; border-top: 1px solid var(--line); }.article-sources > a:last-child { border-bottom: 1px solid var(--line); }.article-sources > a > b { color: #688394; font: 500 8px 'DM Mono',monospace; }.article-sources > a > span { display: flex; flex-direction: column; }.article-sources strong { color: #223543; font-size: 13px; font-weight: 600; }.article-sources small { color: #718794; font-size: 10px; }.article-sources i { color: var(--accent); font-style: normal; }
.article-next { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); }.article-next a { min-height: 150px; padding: 24px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--line); }.article-next a:last-child { border-right: 0; }.article-next span { color: #718694; font: 500 8px 'DM Mono',monospace; text-transform: uppercase; }.article-next strong { max-width: 360px; color: #1f3543; font-size: 14px; line-height: 1.45; font-weight: 550; }

.lab-hero { max-width: var(--max); min-height: 560px; margin: auto; padding: clamp(75px,8vw,120px) clamp(28px,6vw,92px); display: flex; flex-direction: column; justify-content: center; color: white; background: radial-gradient(circle at 78% 38%,rgba(0,200,244,.16),transparent 30%),#061522; border-inline: 1px solid var(--intel-line); }
.lab-hero h1 { max-width: 1100px; margin: 0; font-size: clamp(56px,6.3vw,98px); line-height: .94; font-weight: 500; letter-spacing: -.07em; }.lab-hero > p:not(.eyebrow) { max-width: 860px; margin: 28px 0 0; color: #9bb0bd; font-size: 18px; line-height: 1.72; }
.interactive-lab { max-width: var(--max); margin: auto; padding: clamp(55px,6vw,90px) clamp(28px,5vw,80px); background: #edf4f7; border-inline: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.lab-notice { margin-bottom: 22px; padding: 14px 17px; display: grid; grid-template-columns: 180px 1fr; gap: 25px; border: 1px solid #bfd7e2; background: #f8fcfd; }.lab-notice span { color: var(--accent); font: 500 9px 'DM Mono',monospace; text-transform: uppercase; letter-spacing: .1em; }.lab-notice p { margin: 0; color: #607886; font-size: 12px; line-height: 1.55; }
.lab-workspace { min-height: 620px; display: grid; grid-template-columns: 300px 1fr; background: #061522; border: 1px solid rgba(67,137,174,.45); box-shadow: 0 35px 80px rgba(20,49,66,.15); }
.lab-controls { padding: 28px 24px; display: flex; flex-direction: column; gap: 32px; border-right: 1px solid rgba(121,190,226,.16); }
.lab-controls label { display: grid; grid-template-columns: 1fr auto; gap: 12px; color: #a8bdc8; font-size: 11px; }.lab-controls output { color: var(--cyan); font: 500 10px 'DM Mono',monospace; }.lab-controls input { width: 100%; grid-column: 1/-1; accent-color: var(--cyan); }
.lab-results { min-width: 0; padding: clamp(20px,3vw,42px); display: flex; flex-direction: column; }
.lab-plot { min-height: 390px; position: relative; border: 1px solid rgba(121,190,226,.14); background: linear-gradient(rgba(0,200,244,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(0,200,244,.045) 1px,transparent 1px),#04101a; background-size: 42px 42px; }.lab-plot svg { width: 100%; height: 100%; position: absolute; inset: 0; }.lab-axis { stroke: #35576b; stroke-width: 1; }.lab-reference { fill: none; stroke: #788e9b; stroke-width: 1.5; stroke-dasharray: 5 7; }.lab-series { fill: none; stroke: var(--cyan); stroke-width: 2.2; }.lab-series-secondary { fill: none; stroke: #5b84ff; stroke-width: 2; }.lab-band { fill: rgba(68,125,255,.14); stroke: none; }.lab-point { fill: #e6fbff; stroke: var(--cyan); stroke-width: 2; }.lab-query { stroke: #ffcc66; stroke-width: 1.5; stroke-dasharray: 4 5; }.lab-annotation { fill: #718c9c; font: 9px 'DM Mono',monospace; }
.lab-metrics { margin-top: 17px; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(121,190,226,.14); border-left: 1px solid rgba(121,190,226,.14); }.lab-metrics article { min-height: 85px; padding: 13px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid rgba(121,190,226,.14); border-bottom: 1px solid rgba(121,190,226,.14); }.lab-metrics span { color: #577688; font: 500 8px 'DM Mono',monospace; text-transform: uppercase; }.lab-metrics strong { color: #dff8ff; font-size: 18px; font-weight: 500; }.lab-metrics small { color: #698494; font-size: 9px; }
.lab-table { margin-top: 14px; }.lab-table table { width: 100%; color: #7f99a7; border-collapse: collapse; font: 9px 'DM Mono',monospace; }.lab-table th,.lab-table td { padding: 7px; border-bottom: 1px solid rgba(121,190,226,.11); text-align: right; }.lab-table th:first-child,.lab-table td:first-child { text-align: left; }.lab-table th { color: #4e7185; font-weight: 500; }
.lab-legend { margin-top: 15px; display: flex; flex-wrap: wrap; gap: 18px; color: #688493; font-size: 9px; }.lab-legend span { display: flex; align-items: center; gap: 7px; }.lab-legend i { width: 18px; height: 2px; display: block; background: var(--cyan); }.lab-legend i.estimate { background: #5b84ff; }.lab-legend i.uncertainty { height: 8px; background: rgba(68,125,255,.28); }
.lab-explanation { max-width: var(--max); margin: auto; display: grid; grid-template-columns: repeat(3,1fr); background: white; border-inline: 1px solid var(--line); border-bottom: 1px solid var(--line); }.lab-explanation article { min-height: 350px; padding: 27px; border-right: 1px solid var(--line); }.lab-explanation article:last-child { border-right: 0; }.lab-explanation span { color: var(--accent); font: 500 9px 'DM Mono',monospace; }.lab-explanation h2 { margin: 90px 0 15px; font-size: 25px; line-height: 1.1; font-weight: 500; letter-spacing: -.04em; }.lab-explanation p { color: #5b7281; font-size: 14px; line-height: 1.75; }

.editorial-hero { max-width: var(--max); min-height: 650px; margin: auto; padding: clamp(85px,10vw,155px) clamp(28px,5vw,80px); color: white; background: radial-gradient(circle at 85% 25%,rgba(45,150,183,.18),transparent 28%),var(--night); border-inline: 1px solid rgba(143,191,218,.13); }
.editorial-hero h1 { max-width: 1150px; margin: 0; font-size: clamp(58px,7vw,110px); line-height: .95; font-weight: 500; letter-spacing: -.072em; }
.editorial-hero > p:not(.eyebrow) { max-width: 820px; margin: 30px 0 38px; color: #a4b8c4; font-size: 19px; line-height: 1.72; }
.company-detail-section { max-width: var(--max); margin: auto; padding: clamp(80px,8.5vw,135px) clamp(28px,5vw,80px); background: #f4f8fa; border-inline: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.company-detail-heading { display: grid; grid-template-columns: .32fr 1.06fr .62fr; gap: clamp(28px,5vw,76px); align-items: start; }.company-detail-heading h2 { margin: 0; color: #111b23; font-size: clamp(39px,4.5vw,68px); line-height: 1.01; font-weight: 500; letter-spacing: -.058em; }.company-detail-heading > p:last-child { margin: 0; color: #607685; font-size: 15px; line-height: 1.76; }
.company-detail-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid #c9d6dd; border-left: 1px solid #c9d6dd; }.company-detail-grid article { min-height: 330px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid #c9d6dd; border-bottom: 1px solid #c9d6dd; background: #fbfdfe; }.company-detail-grid article > span,.company-profile-grid article > span,.company-approach-grid article > span,.company-outcomes span,.company-path > span { color: var(--accent); font: 500 9px 'DM Mono',monospace; letter-spacing: .09em; text-transform: uppercase; }.company-detail-grid h3 { margin: 78px 0 16px; color: #19303e; font-size: 24px; line-height: 1.08; font-weight: 500; letter-spacing: -.04em; }.company-detail-grid p { margin: 0; color: #5a7180; font-size: 13px; line-height: 1.72; }
.company-profile-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid #c9d6dd; border-left: 1px solid #c9d6dd; }.company-profile-grid article { min-height: 275px; padding: 24px; border-right: 1px solid #c9d6dd; border-bottom: 1px solid #c9d6dd; background: white; }.company-profile-grid h3 { margin: 65px 0 14px; color: #19303e; font-size: 23px; line-height: 1.1; font-weight: 500; letter-spacing: -.04em; }.company-profile-grid p { margin: 0; color: #5d7482; font-size: 13px; line-height: 1.7; }
.company-approach-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid #c9d6dd; border-left: 1px solid #c9d6dd; counter-reset: approach; }.company-approach-grid article { min-height: 300px; padding: 24px; position: relative; border-right: 1px solid #c9d6dd; border-bottom: 1px solid #c9d6dd; background: white; }.company-approach-grid article::after { content: '→'; position: absolute; right: 20px; top: 20px; color: #93a8b4; }.company-approach-grid article:nth-child(3n)::after,.company-approach-grid article:last-child::after { display: none; }.company-approach-grid h3 { margin: 78px 0 14px; color: #19303e; font-size: 27px; font-weight: 500; letter-spacing: -.045em; }.company-approach-grid p { margin: 0; color: #5a7180; font-size: 13px; line-height: 1.72; }
.company-outcomes { margin-top: 24px; display: grid; grid-template-columns: repeat(3,1fr); color: #dcebf2; background: #071827; border: 1px solid rgba(104,186,226,.18); }.company-outcomes article { min-height: 190px; padding: 22px; display: flex; flex-direction: column; border-right: 1px solid rgba(104,186,226,.16); }.company-outcomes article:last-child { border-right: 0; }.company-outcomes span { color: var(--cyan); }.company-outcomes b { max-width: 330px; margin-top: auto; font-size: 17px; line-height: 1.28; font-weight: 500; }
.company-path { margin-top: 24px; padding: 23px; display: grid; grid-template-columns: 190px 1fr; gap: 25px; color: #d9e9f1; background: #071827; border: 1px solid rgba(104,186,226,.18); }.company-path > span { color: var(--cyan); }.company-path ol { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4,1fr); list-style: none; }.company-path li { min-height: 110px; padding: 0 18px; border-left: 1px solid rgba(104,186,226,.16); }.company-path b { color: #dcebf2; font-size: 14px; font-weight: 500; }.company-path small { margin-top: 35px; display: block; color: #758e9c; font-size: 11px; line-height: 1.55; }
.career-linkedin { max-width: var(--max); min-height: 590px; margin: auto; display: grid; grid-template-columns: minmax(280px,.6fr) minmax(0,1.4fr); color: #eaf7fc; background: radial-gradient(circle at 14% 50%,rgba(0,119,181,.3),transparent 30%),linear-gradient(145deg,#071827,#031019); border-inline: 1px solid rgba(104,186,226,.18); border-bottom: 1px solid rgba(104,186,226,.18); }.career-linkedin-mark { padding: 42px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid rgba(104,186,226,.18); }.career-linkedin-mark svg { width: clamp(120px,14vw,200px); height: auto; fill: #0a9ddb; }.career-linkedin-mark span { color: #6e8b9a; font: 500 9px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }.career-linkedin-copy { padding: clamp(55px,7vw,105px); display: flex; flex-direction: column; justify-content: center; }.career-linkedin-copy h2 { max-width: 900px; margin: 18px 0 24px; font-size: clamp(42px,5vw,76px); line-height: .98; font-weight: 500; letter-spacing: -.06em; }.career-linkedin-copy > p:not(.section-kicker) { max-width: 720px; margin: 0; color: #8ea6b3; font-size: 16px; line-height: 1.76; }.career-linkedin-copy > a { max-width: 380px; min-height: 54px; margin-top: 34px; padding: 0 17px; display: flex; align-items: center; justify-content: space-between; color: #e8f7fd; border: 1px solid rgba(10,157,219,.7); font-size: 13px; }.career-linkedin-copy > a span { color: var(--cyan); }
.contact-grid { display: grid; grid-template-columns: repeat(3,1fr); background: #fff; }
.contact-grid > * { min-height: 330px; padding: 28px; display: flex; flex-direction: column; border-right: 1px solid var(--line); }
.contact-grid > *:last-child { border-right: 0; }
.contact-grid span { color: var(--accent); font: 500 10px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }
.contact-grid h2 { margin: 85px 0 15px; font-size: 24px; font-weight: 500; letter-spacing: -.03em; }
.contact-grid p { color: #5f7685; font-size: 14px; line-height: 1.72; }

.reveal { opacity: 0; transform: translateY(28px); transition: opacity .75s ease,transform .75s cubic-bezier(.2,.75,.25,1); }
.reveal.visible { opacity: 1; transform: translateY(0); }

@media (max-width: 1180px) {
  :root { --footer-h: 520px; }
  .page-stage { margin-bottom: var(--footer-h); }
  .site-footer { height: var(--footer-h); }
  .site-header { grid-template-columns: 150px 1fr auto; gap: 14px; }
  .brand > span { display: none; }
  .mega-panel { grid-template-columns: minmax(245px,.72fr) minmax(0,1.8fr); gap: 34px; }
  .home-hero,.service-hero { grid-template-columns: 1fr; }
  .home-hero-copy,.service-hero-copy { min-height: 670px; }
  .hero-visual { min-height: 610px; margin: 0 28px 40px; }
  .focus-heading,.section-heading { grid-template-columns: .36fr 1fr; }
  .focus-heading > p:last-child,.section-heading > p:last-child { grid-column: 2; }
  .directory-panel { grid-template-columns: repeat(3,1fr); }
  .operating-intro { grid-template-columns: .36fr 1fr; }
  .operating-intro > p:last-child { grid-column: 2; }
  .operating-grid { grid-template-columns: repeat(2,1fr); }
  .operating-grid article:nth-child(2) { border-right: 0; }
  .operating-grid article { border-bottom: 1px solid #cad7d1; }
  .trust-intro { grid-template-columns: .36fr 1fr; }
  .trust-intro > p:last-child { grid-column: 2; }
  .trust-grid { grid-template-columns: repeat(2,1fr); }
  .trust-grid article { border-bottom: 1px solid rgba(117,190,228,.2); }
  .trust-grid article:nth-child(2) { border-right: 0; }
  .intelligence-hero { grid-template-columns: 1fr; }
  .intelligence-hero aside { max-width: 760px; }
  .intelligence-heading { grid-template-columns: .34fr 1fr; }
  .intelligence-heading > p:last-child { grid-column: 2; }
  .research-method-grid { grid-template-columns: 1fr 1fr; }
  .research-method-grid article:nth-child(2) { border-right: 0; }
  .research-method-grid article { border-bottom: 1px solid var(--line); }
  .article-layout { grid-template-columns: 210px 1fr; gap: 45px; }
  .lab-workspace { grid-template-columns: 250px 1fr; }
  .thread-heading,.constellation-heading { grid-template-columns: .34fr 1fr; }
  .thread-heading > p:last-child,.constellation-heading > p:last-child { grid-column: 2; }
  .constellation-layout { grid-template-columns: 1fr; }
  .constellation-map { border-right: 0; border-bottom: 1px solid #c9dce7; }
  .constellation-detail { min-height: 360px; }
  .constellation-detail h3 { margin-top: 52px; }
  .technical-rail-section { grid-template-columns: minmax(240px,.58fr) minmax(0,1.42fr); gap: 45px; }
  .rail-lifecycle-head { grid-template-columns: 1fr 1fr; }
  .rail-lifecycle-head p { grid-column: 1/-1; }
  .domain-console-heading { grid-template-columns: .34fr 1fr; }
  .domain-console-heading > p:last-child { grid-column: 2; }
  .domain-console-tabs { grid-template-columns: repeat(3,1fr); }
  .domain-console-tabs button:nth-child(-n+3) { border-bottom: 1px solid rgba(105,190,232,.16); }
  .domain-console-tabs button:nth-child(3) { border-right: 0; }
  .regulated-references { grid-template-columns: minmax(220px,.48fr) minmax(0,1.52fr); gap: 42px; }
  .company-detail-heading { grid-template-columns: .34fr 1fr; }
  .company-detail-heading > p:last-child { grid-column: 2; }
  .company-detail-grid,.company-profile-grid,.company-approach-grid { grid-template-columns: repeat(2,1fr); }
  .company-approach-grid article:nth-child(3n)::after { display: block; }
  .company-approach-grid article:nth-child(2n)::after { display: none; }
  .company-path { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  .site-header { height: 70px; padding: 0 17px; grid-template-columns: 1fr auto; backdrop-filter: none; }
  .brand img { width: 88px; }
  .brand > span,.primary-nav,.header-cta { display: none; }
  .menu-toggle { display: block; }
  .menu-toggle[aria-expanded="true"] i:first-child { transform: translateY(2.5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] i:last-child { transform: translateY(-2.5px) rotate(-45deg); }
  .mega-menu { display: none; }
  .mobile-nav { padding: 19px; position: fixed; inset: 70px 0 0; z-index: 60; overflow-y: auto; overscroll-behavior: contain; color: white; background: #061019; visibility: hidden; opacity: 0; transform: translateY(-8px); transition: opacity .2s ease,transform .2s ease,visibility 0s linear .2s; }
  .mobile-nav.open { display: grid; visibility: visible; opacity: 1; transform: translateY(0); transition-delay: 0s; }
  .mobile-nav > div { padding: 13px 0 18px; display: flex; flex-direction: column; border-bottom: 1px solid rgba(143,191,218,.14); }
  .mobile-nav > div > p { margin: 1px 7px 12px; color: #647e8e; font-size: 11px; line-height: 1.55; }
  .mobile-nav a { padding: 8px 12px 8px 20px; display: flex; flex-direction: column; color: #94a9b7; font-size: 13px; transition: color .18s ease,background .18s ease; }
  .mobile-nav a:hover,.mobile-nav a:focus-visible { color: white; background: rgba(0,200,244,.06); }
  .mobile-nav a b { color: #c6d6de; font-size: 12px; font-weight: 550; }
  .mobile-nav a small { margin-top: 2px; color: #617b8b; font-size: 10px; line-height: 1.4; }
  .mobile-nav .mobile-title { padding: 11px 7px; display: flex; flex-direction: row; justify-content: space-between; color: #e1edf4; font-size: 15px; font-weight: 600; }
  .mobile-nav .mobile-title span { color: var(--cyan); font-size: 9px; font-weight: 500; text-transform: uppercase; letter-spacing: .06em; }
  .thread-system-bar { grid-template-columns: 1fr auto; }
  .thread-system-bar em { grid-column: 1/-1; }
  .thread-stage-nav { grid-template-columns: repeat(3,1fr); }
  .thread-stage-nav button:nth-child(-n+3) { border-bottom: 1px solid rgba(105,190,232,.15); }
  .thread-stage-nav button:nth-child(3) { border-right: 0; }
  .thread-workspace { grid-template-columns: 1fr; }
  .thread-panel { min-height: 610px; }
  .thread-object-model { min-height: 520px; border-left: 0; border-top: 1px solid rgba(105,190,232,.18); }
  .technical-rail-section { grid-template-columns: 1fr; }
  .technical-rail-intro { position: static; }
  .domain-console-heading { grid-template-columns: 1fr; gap: 20px; }
  .domain-console-heading > p:last-child { grid-column: auto; }
  .domain-console-panel header { grid-template-columns: 1fr; gap: 13px; }
  .domain-console-panel header > p { grid-column: auto; }
  .airline-event-panel.active { grid-template-columns: 1fr; }
  .airline-event-status { min-height: 420px; border-right: 0; border-bottom: 1px solid rgba(105,190,232,.16); }
  .regulated-references { grid-template-columns: 1fr; gap: 28px; }
  .career-linkedin { grid-template-columns: 1fr; }
  .career-linkedin-mark { min-height: 250px; padding: 30px; flex-direction: row; align-items: flex-end; border-right: 0; border-bottom: 1px solid rgba(104,186,226,.18); }
  .career-linkedin-mark svg { width: 120px; }
}

@media (max-width: 760px) {
  :root { --footer-h: 800px; }
  .site-footer { height: var(--footer-h); padding: 42px 20px 20px; }
  .footer-top { grid-template-columns: 1fr; gap: 20px; }
  .footer-top h2 { font-size: 31px; }
  .footer-top > a { width: 100%; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
  .footer-grid > div:last-child { grid-column: 1/-1; }
  .footer-bottom { align-items: flex-start; flex-direction: column; gap: 14px; }
  .site-header { height: 70px; padding: 0 17px; grid-template-columns: 1fr auto; }
  .brand img { width: 88px; }
  .brand > span { display: none; }
  .primary-nav,.header-cta { display: none; }
  .menu-toggle { display: block; }
  .menu-toggle[aria-expanded="true"] i:first-child { transform: translateY(2.5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] i:last-child { transform: translateY(-2.5px) rotate(-45deg); }
  .mega-menu { display: none; }
  .mobile-nav { padding: 19px; position: fixed; inset: 70px 0 0; z-index: 60; overflow-y: auto; color: white; background: #061019; visibility: hidden; opacity: 0; transform: translateY(-8px); transition: .2s ease; }
  .mobile-nav.open { display: grid; visibility: visible; opacity: 1; transform: translateY(0); }
  .mobile-nav > div { padding: 10px 0 15px; display: flex; flex-direction: column; border-bottom: 1px solid rgba(143,191,218,.14); }
  .mobile-nav a { padding: 8px 12px 8px 20px; color: #94a9b7; font-size: 13px; }
  .mobile-nav .mobile-title { padding: 11px 7px; color: #e1edf4; font-size: 15px; font-weight: 600; }
  .home-hero,.service-hero { min-height: auto; border-inline: 0; }
  .home-hero-copy,.service-hero-copy { min-height: auto; padding: 75px 19px 45px; }
  .home-hero h1 { font-size: clamp(62px,22vw,86px); }
  .service-hero h1 { font-size: clamp(47px,14vw,67px); }
  .lead { font-size: 17px; }
  .hero-actions { flex-direction: column; }
  .button { width: 100%; }
  .hero-proof { grid-template-columns: 1fr; }
  .hero-visual { min-height: 620px; margin: 0 10px 28px; }
  .visual-topline { font-size: 8px; }
  .visual-stage { min-height: 430px; transform: none; }
  .visual-readout { min-height: 70px; left: 10px; right: 10px; bottom: 112px; grid-template-columns: 38px 1fr; }
  .visual-readout > span { font-size: 24px; }
  .visual-signals { grid-column: 1/-1; }
  .visual-signals span { flex: 1; justify-content: center; }
  .visual-footer { align-items: flex-end; }
  .visual-selector { flex: 1; }
  .visual-selector button { flex: 1 1 calc(50% - 5px); text-align: left; }
  .focus-heading,.section-heading { grid-template-columns: 1fr; gap: 20px; }
  .focus-heading > p:last-child,.section-heading > p:last-child { grid-column: auto; }
  .focus-grid { grid-template-columns: 1fr; }
  .focus-grid a { min-height: 285px; border-right: 0; border-bottom: 1px solid var(--line); }
  .focus-grid h3 { margin-top: 60px; }
  .digital-thread-section,.constellation-section,.technical-rail-section { padding-inline: 19px; }
  .thread-heading,.constellation-heading { grid-template-columns: 1fr; gap: 20px; }
  .thread-heading > p:last-child,.constellation-heading > p:last-child { grid-column: auto; }
  .thread-system { margin-top: 42px; }
  .thread-system-bar { padding: 16px; grid-template-columns: 1fr; gap: 8px; }
  .thread-system-bar > div { align-items: flex-start; flex-direction: column; gap: 5px; }
  .thread-system-bar em { grid-column: auto; }
  .thread-stage-nav { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: rgba(0,200,244,.45) rgba(105,190,232,.08); }
  .thread-stage-nav button { min-width: 138px; flex: 0 0 138px; border-bottom: 0 !important; scroll-snap-align: start; }
  .thread-stage-nav button:nth-child(3) { border-right: 1px solid rgba(105,190,232,.15); }
  .thread-panel { min-height: 0; padding: 27px 20px; }
  .thread-panel header > small { margin-top: 30px; }
  .thread-panel h3 { font-size: 37px; }
  .thread-artifacts { margin-top: 55px; padding-top: 0; grid-template-columns: 1fr; }
  .thread-artifacts section { min-height: 0; border-left: 1px solid rgba(105,190,232,.15); }
  .thread-panel dl { grid-template-columns: 1fr; gap: 17px; }
  .thread-object-model { min-height: 560px; padding: 22px; }
  .thread-object-model header { flex-direction: column; }
  .thread-object-model header b { max-width: none; text-align: left; }
  .thread-object-core { margin-top: 38px; }
  .thread-integrity { grid-template-columns: 1fr; }
  .thread-integrity article { min-height: 185px; border-right: 0; border-bottom: 1px solid rgba(105,190,232,.15); }
  .thread-integrity article:last-child { border-bottom: 0; }
  .constellation-layout { margin-top: 50px; }
  .constellation-map { min-height: 0; padding: 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .constellation-map > svg,.constellation-core,.domain-marker { display: none; }
  .constellation-node { width: auto; min-height: 70px; position: static; transform: none; }
  .constellation-node:hover,.constellation-node:focus-visible,.constellation-node.active { transform: translateY(-2px); }
  .constellation-detail { min-height: 430px; padding: 23px; }
  .constellation-detail h3 { margin-top: 65px; }
  .rail-data-grid { grid-template-columns: 1fr; }
  .rail-data-grid article { min-height: 205px; }
  .rail-data-grid ul { margin-top: 48px; }
  .rail-lifecycle { padding: 18px; }
  .rail-lifecycle-head { grid-template-columns: 1fr; gap: 12px; }
  .rail-lifecycle-head p { grid-column: auto; }
  .rail-phase-track { display: flex; overflow-x: auto; scrollbar-width: thin; }
  .rail-phase-track button { min-width: 128px; }
  .directory-tabs { grid-template-columns: 1fr; }
  .directory-tabs button { border-right: 0; border-bottom: 1px solid var(--line); }
  .directory-panel { grid-template-columns: 1fr; }
  .service-card { min-height: 365px; }
  .engagement-grid,.situation-grid { grid-template-columns: 1fr; }
  .engagement-grid article { min-height: 265px; border-right: 0; border-bottom: 1px solid rgba(143,191,218,.15); }
  .situation-grid article { min-height: 330px; border-right: 0; border-bottom: 1px solid rgba(143,191,218,.15); }
  .engagement-grid h3,.situation-grid p { margin-top: 48px; }
  .decision-section,.clarity-section { grid-template-columns: 1fr; gap: 48px; min-height: 0; }
  .company-strip { grid-template-columns: 1fr; }
  .company-strip > div { border-right: 0; border-bottom: 1px solid var(--line); }
  .capability-row { min-height: 0; padding: 27px 0; grid-template-columns: 34px 1fr; gap: 14px; }
  .capability-row > div,.capability-row > a { grid-column: 2; }
  .capability-row > a { margin-top: 5px; }
  .capability-detail { grid-template-columns: 1fr; gap: 8px; }
  .capability-context { grid-template-columns: 1fr; }
  .operating-intro { grid-template-columns: 1fr; gap: 20px; }
  .operating-intro > p:last-child { grid-column: auto; }
  .operating-grid { grid-template-columns: 1fr; }
  .operating-grid article,.operating-grid article:nth-child(2) { min-height: 300px; border-right: 0; }
  .trust-intro { grid-template-columns: 1fr; gap: 20px; }
  .trust-intro > p:last-child { grid-column: auto; }
  .trust-grid { grid-template-columns: 1fr; }
  .trust-grid article,.trust-grid article:nth-child(2) { min-height: 340px; border-right: 0; }
  .domain-console { padding-inline: 19px; }
  .domain-console-shell,.airline-board { margin-top: 45px; }
  .domain-console-tabs,.airline-event-tabs { display: flex; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: rgba(0,200,244,.45) rgba(105,190,232,.08); }
  .domain-console-tabs button,.airline-event-tabs button { min-width: 150px; flex: 0 0 150px; border-bottom: 0 !important; scroll-snap-align: start; }
  .domain-console-tabs button:nth-child(3) { border-right: 1px solid rgba(105,190,232,.16); }
  .domain-console-panels,.domain-console-panel { min-height: 0; }
  .domain-console-panel { padding: 27px 20px; }
  .domain-console-panel h3 { font-size: 37px; }
  .domain-control-grid { grid-template-columns: 1fr; }
  .domain-control-grid section { min-height: 0; }
  .domain-control-grid .domain-evidence { min-height: 0; grid-column: auto; }
  .domain-kpis { grid-template-columns: 78px 1fr; }
  .airline-board-top { align-items: flex-start; flex-direction: column; justify-content: center; gap: 5px; }
  .airline-event-panels,.airline-event-panel { min-height: 0; }
  .airline-event-status { min-height: 400px; padding: 24px; }
  .airline-event-work { grid-template-columns: 1fr; }
  .airline-event-work section { min-height: 240px; border-right: 0; border-bottom: 1px solid rgba(105,190,232,.14) !important; }
  .airline-event-work section:last-child { border-bottom: 0 !important; }
  .airline-event-work p { margin-top: 52px; }
  .airline-service-lanes { grid-template-columns: 1fr; }
  .airline-service-lanes article { min-height: 230px; border-right: 0; border-bottom: 1px solid rgba(105,190,232,.16); }
  .airline-service-lanes article:last-child { border-bottom: 0; }
  .regulated-references { margin-top: 50px; }
  .regulated-references a { grid-template-columns: 30px 1fr auto; gap: 10px; }
  .regulated-references a > p { grid-column: 2/-1; }
  .process-track { grid-template-columns: 1fr; }
  .process-track article { min-height: 275px; padding-right: 0; }
  .deliverable-grid { grid-template-columns: 1fr; }
  .deliverable-grid article { min-height: 245px; }
  .tech-row { grid-template-columns: 1fr; }
  .related-section { grid-template-columns: 1fr; gap: 20px; }
  .related-section > div { flex-direction: column; }
  .contact-grid { grid-template-columns: 1fr; }
  .contact-grid > * { min-height: 250px; border-right: 0; border-bottom: 1px solid var(--line); }
  .contact-grid h2 { margin-top: 58px; }
  .editorial-hero { min-height: 570px; padding-inline: 19px; }
  .editorial-hero h1 { font-size: clamp(55px,17vw,80px); }
  .intelligence-teaser { grid-template-columns: 1fr; }
  .intelligence-teaser-copy { min-height: 520px; border-right: 0; border-bottom: 1px solid rgba(108,174,213,.14); }
  .intelligence-teaser-grid { grid-template-columns: 1fr; }
  .intelligence-teaser-grid > a { min-height: 250px; border-right: 0; }
  .intelligence-teaser-grid h3 { margin-top: 55px; }
  .intelligence-hero { min-height: 650px; padding-inline: 19px; gap: 50px; }
  .intelligence-hero h1 { font-size: clamp(58px,17vw,82px); }
  .intelligence-hero aside dl { grid-template-columns: 1fr; }
  .intelligence-heading { grid-template-columns: 1fr; gap: 20px; }
  .intelligence-heading > p:last-child { grid-column: auto; }
  .intelligence-guide-grid { grid-template-columns: 1fr; }
  .intelligence-guide-card { min-height: 430px; }
  .lab-card-grid { grid-template-columns: 1fr; }
  .lab-card { min-height: 620px; border-right: 0; border-bottom: 1px solid rgba(109,183,221,.16); }
  .research-method-grid { grid-template-columns: 1fr; }
  .research-method-grid article,.research-method-grid article:nth-child(2) { border-right: 0; }
  .article-hero { min-height: 650px; padding-inline: 19px; }
  .article-hero h1 { font-size: clamp(52px,15vw,76px); }
  .article-principles { grid-template-columns: 1fr 1fr; }
  .article-layout { grid-template-columns: 1fr; padding-inline: 19px; }
  .article-index { padding: 35px 0 0; position: static; }
  .article-content { padding-top: 0; }
  .article-content > section { padding: 58px 0; }
  .article-content section > p { font-size: 16px; }
  .article-content ul { grid-template-columns: 1fr; }
  .article-boundary { padding-inline: 19px !important; }
  .article-next { grid-template-columns: 1fr; }
  .article-next a { min-height: 125px; border-right: 0; border-bottom: 1px solid var(--line); }
  .lab-hero { min-height: 520px; padding-inline: 19px; }
  .lab-hero h1 { font-size: clamp(51px,15vw,75px); }
  .interactive-lab { padding-inline: 10px; }
  .lab-notice { grid-template-columns: 1fr; gap: 7px; }
  .lab-workspace { grid-template-columns: 1fr; }
  .lab-controls { border-right: 0; border-bottom: 1px solid rgba(121,190,226,.16); }
  .lab-results { padding: 14px; }
  .lab-plot { min-height: 310px; }
  .lab-metrics { grid-template-columns: 1fr; }
  .lab-explanation { grid-template-columns: 1fr; }
  .lab-explanation article { min-height: 285px; border-right: 0; border-bottom: 1px solid var(--line); }
  .lab-explanation h2 { margin-top: 55px; }
  .company-detail-heading { grid-template-columns: 1fr; gap: 20px; }
  .company-detail-heading > p:last-child { grid-column: auto; }
  .company-detail-grid,.company-profile-grid,.company-approach-grid,.company-outcomes { grid-template-columns: 1fr; }
  .company-detail-grid article { min-height: 285px; }
  .company-profile-grid article,.company-approach-grid article { min-height: 255px; }
  .company-approach-grid article::after { display: none !important; }
  .company-outcomes article { min-height: 165px; border-right: 0; border-bottom: 1px solid rgba(104,186,226,.16); }
  .company-outcomes article:last-child { border-bottom: 0; }
  .company-path ol { grid-template-columns: 1fr; }
  .company-path li { min-height: 105px; padding: 18px 0; border-left: 0; border-top: 1px solid rgba(104,186,226,.16); }
  .company-path small { margin-top: 18px; }
  .career-linkedin-mark { min-height: 210px; padding: 22px; }
  .career-linkedin-mark svg { width: 96px; }
  .career-linkedin-copy { padding: 55px 19px; }
  .career-linkedin-copy h2 { font-size: 44px; }
}

@media (max-width: 480px) {
  .hero-visual { min-height: 590px; }
  .visual-stage { min-height: 400px; }
  .instrument-header text:last-child,.instrument-equation { display: none; }
  .instrument-legend { opacity: .85; }
  .visual-readout { bottom: 108px; }
  .visual-signals { width: 100%; }
  .visual-signals span { min-width: 0; padding-inline: 5px; }
  .visual-footer { padding-inline: 8px; }
  .visual-toggle { padding-inline: 7px; }
  .constellation-map { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { opacity: 1; transform: none; transition: none; }
  .hero-visual * { animation: none !important; }
  .visual-stage,.visual-readout { transition: none; }
  .constellation-node,.rail-phase-track button::after { transition: none; }
  .rail-status i { animation: none !important; }
  .domain-console-panel.active,.airline-event-panel.active { animation: none !important; }
}

/* Compliance page scrollbar — this bundle is loaded only by /compliance-risk. */
html {
  scrollbar-width: thin;
  scrollbar-color: #22a9d6 #061522;
}

html::-webkit-scrollbar {
  width: 12px;
}

html::-webkit-scrollbar-track {
  background: #061522;
  border-left: 1px solid rgba(91, 176, 211, .12);
}

html::-webkit-scrollbar-thumb {
  min-height: 64px;
  background: linear-gradient(180deg, #45c5e9 0%, #168dbb 52%, #0c6288 100%);
  border: 3px solid #061522;
  border-radius: 999px;
  box-shadow: inset 0 0 0 1px rgba(205, 244, 255, .28);
}

html::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #79ddf4 0%, #25afd8 52%, #12769e 100%);
}

html::-webkit-scrollbar-thumb:active {
  background: #76daf0;
}

html::-webkit-scrollbar-corner {
  background: #061522;
}

/* Compliance & BFSI — illustrative KYC case study */
.kyc-case-study{position:relative;overflow:hidden;padding:clamp(82px,9vw,138px) clamp(22px,6vw,92px);background:#071725;color:#f6fbff;border-top:1px solid rgba(116,195,231,.16)}
.kyc-case-study:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 84% 8%,rgba(39,167,221,.14),transparent 34%),linear-gradient(120deg,transparent 0 48%,rgba(120,204,239,.035) 48% 49%,transparent 49% 100%);pointer-events:none}
.kyc-case-study>*{position:relative;z-index:1;max-width:1380px;margin-inline:auto}
.kyc-case__header{display:grid;grid-template-columns:minmax(0,.95fr) minmax(340px,.7fr);gap:clamp(36px,8vw,130px);align-items:end}
.kyc-case__header .section-kicker,.kyc-case__workflow .section-kicker,.kyc-case__comparison .section-kicker,.kyc-case__close .section-kicker{color:#75d6f3}
.kyc-case__header h2{margin:16px 0 0;font-size:clamp(48px,6.1vw,94px);line-height:.94;letter-spacing:-.055em;font-weight:540}
.kyc-case__lead{margin:0;color:#b4c9d5;font-size:clamp(18px,1.55vw,24px);line-height:1.6}
.kyc-case__signal{display:grid;grid-template-columns:150px minmax(260px,.75fr) minmax(300px,1fr);gap:28px;align-items:start;margin-top:64px;padding:28px 0;border-top:1px solid rgba(117,214,243,.38);border-bottom:1px solid rgba(117,214,243,.16)}
.kyc-case__signal span{color:#75d6f3;text-transform:uppercase;font-size:11px;letter-spacing:.18em}
.kyc-case__signal strong{font-size:21px;line-height:1.35;font-weight:560}
.kyc-case__signal p{margin:0;color:#92adbb;line-height:1.65}
.kyc-case__entities{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:54px;border:1px solid rgba(140,203,230,.16)}
.kyc-case__entities article{min-height:460px;padding:30px 24px;border-right:1px solid rgba(140,203,230,.16);background:rgba(9,32,48,.64)}
.kyc-case__entities article:last-child{border-right:0}
.kyc-case__entities article:nth-child(even){background:rgba(13,41,59,.68)}
.kyc-case__entities article>span{display:block;color:#67cae9;font-size:10px;letter-spacing:.15em;text-transform:uppercase}
.kyc-case__entities h3{margin:54px 0 17px;font-size:clamp(24px,2vw,32px);line-height:1.02;letter-spacing:-.035em}
.kyc-case__entities p{margin:0;color:#a8bfcb;font-size:15px;line-height:1.65}
.kyc-case__entities ul{margin:36px 0 0;padding:0;list-style:none}
.kyc-case__entities li{position:relative;padding:12px 0 12px 18px;border-top:1px solid rgba(145,205,231,.12);color:#d7e5eb;font-size:13px;line-height:1.45}
.kyc-case__entities li:before{content:"";position:absolute;left:0;top:18px;width:5px;height:5px;border-radius:50%;background:#60d2ef}
.kyc-case__workflow{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(480px,1.45fr);gap:clamp(48px,8vw,130px);margin-top:clamp(90px,10vw,150px)}
.kyc-case__workflow-intro h3,.kyc-case__comparison-head h3,.kyc-case__close h3{margin:14px 0 22px;font-size:clamp(34px,4vw,58px);line-height:1;letter-spacing:-.045em}
.kyc-case__workflow-intro>p:last-child{max-width:500px;color:#9db5c1;line-height:1.65}
.kyc-case__workflow ol{margin:0;padding:0;list-style:none;border-top:1px solid rgba(117,214,243,.25)}
.kyc-case__workflow li{display:grid;grid-template-columns:88px 1fr;gap:24px;padding:25px 0;border-bottom:1px solid rgba(117,214,243,.14)}
.kyc-case__workflow li>b{color:#6dd5f2;font:500 12px/1.4 monospace;letter-spacing:.12em}
.kyc-case__workflow li span{color:#9eb5c0;line-height:1.55}
.kyc-case__workflow li strong{display:block;margin-bottom:4px;color:#f5fbff;font-size:20px;font-weight:560}
.kyc-case__comparison{margin-top:clamp(90px,10vw,150px)}
.kyc-case__comparison-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:34px}
.kyc-case__comparison-head h3{max-width:680px;margin-bottom:0}
.kyc-case__table-wrap{overflow-x:auto;border-top:1px solid rgba(117,214,243,.35)}
.kyc-case__comparison table{width:100%;min-width:900px;border-collapse:collapse;text-align:left}
.kyc-case__comparison th,.kyc-case__comparison td{padding:19px 20px;border-bottom:1px solid rgba(129,194,221,.14);font-size:14px;line-height:1.45;vertical-align:top}
.kyc-case__comparison thead th{color:#70d1ef;font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:560}
.kyc-case__comparison tbody th{width:13%;color:#f3f9fc;font-size:16px;font-weight:560}
.kyc-case__comparison td{color:#a7bdc8}
.kyc-case__comparison tbody tr:hover{background:rgba(44,149,192,.06)}
.kyc-case__close{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(340px,1.1fr);gap:clamp(42px,9vw,150px);align-items:center;margin-top:84px;padding:50px;border:1px solid rgba(117,214,243,.2);background:linear-gradient(120deg,rgba(19,63,84,.56),rgba(8,31,47,.38))}
.kyc-case__close h3{margin-bottom:0}
.kyc-case__close>p{margin:0;color:#c3d5dd;font-size:clamp(17px,1.5vw,22px);line-height:1.65}
.kyc-case__disclaimer{display:grid;grid-template-columns:minmax(230px,.65fr) minmax(340px,1.25fr) auto;gap:32px;align-items:center;margin-top:30px;padding:27px 0;border-top:1px solid rgba(117,214,243,.12);color:#859eaa;font-size:12px;line-height:1.6}
.kyc-case__disclaimer strong{color:#dce9ee;font-size:13px}
.kyc-case__disclaimer a{white-space:nowrap;color:#75d6f3;text-decoration:none;font-weight:600}
@media(max-width:1080px){.kyc-case__entities{grid-template-columns:repeat(2,minmax(0,1fr))}.kyc-case__entities article{min-height:390px;border-bottom:1px solid rgba(140,203,230,.16)}.kyc-case__entities article:nth-child(2n){border-right:0}.kyc-case__entities article:last-child{grid-column:1/-1;min-height:auto}.kyc-case__disclaimer{grid-template-columns:1fr 1.5fr}.kyc-case__disclaimer a{grid-column:1/-1}}
@media(max-width:760px){.kyc-case__header,.kyc-case__workflow,.kyc-case__close{grid-template-columns:1fr}.kyc-case__signal{grid-template-columns:1fr;gap:14px}.kyc-case__entities{grid-template-columns:1fr}.kyc-case__entities article,.kyc-case__entities article:nth-child(2n){min-height:auto;border-right:0}.kyc-case__entities article:last-child{grid-column:auto}.kyc-case__entities h3{margin-top:35px}.kyc-case__comparison-head{display:block}.kyc-case__close{padding:32px 24px}.kyc-case__disclaimer{grid-template-columns:1fr}.kyc-case__disclaimer a{grid-column:auto}.kyc-case__header h2{font-size:clamp(46px,14vw,70px)}}

/* Responsive layout polish — global v22 */
:where(
  .home-hero,.service-hero,.footer-top,.footer-grid,.section-heading,.focus-heading,
  .operating-intro,.trust-intro,.intelligence-heading,.company-detail-heading,
  .focus-grid,.directory-panel,.engagement-grid,.situation-grid,.operating-grid,
  .trust-grid,.process-track,.deliverable-grid,.contact-grid,.rail-data-grid,
  .intelligence-guide-grid,.lab-card-grid,.research-method-grid,.company-detail-grid,
  .company-profile-grid,.company-approach-grid,.company-outcomes,.company-path,
  .kyc-case__header,.kyc-case__signal,.kyc-case__entities,.kyc-case__workflow,
  .kyc-case__close,.kyc-case__disclaimer
) > * { min-width: 0; }

:where(p,li,dd,figcaption,.lead,.service-card,.mobile-nav a,.footer-grid a,.footer-grid span) {
  overflow-wrap: break-word;
}

img,video,canvas,iframe { max-width: 100%; }

.page-compliance .service-hero h1,
.page-airline .service-hero h1 {
  font-size: clamp(48px,4.35vw,70px);
  line-height: 1;
  text-wrap: balance;
}

.page-compliance .clarity-section h2,
.page-airline .clarity-section h2 {
  font-size: clamp(36px,3.25vw,52px);
  line-height: 1.06;
  text-wrap: balance;
}

.page-compliance .technical-rail-intro h2 {
  font-size: clamp(32px,3vw,46px);
  line-height: 1.06;
  text-wrap: balance;
}

@media (max-width: 1024px) {
  .decision-section {
    grid-template-columns: minmax(180px,.65fr) minmax(0,1.35fr);
    align-items: start;
  }

  .directory-panel,
  .engagement-grid,
  .situation-grid,
  .focus-grid,
  .contact-grid,
  .lab-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }

  .service-card,
  .engagement-grid article,
  .situation-grid article,
  .focus-grid a,
  .contact-grid > *,
  .lab-card,
  .kyc-case__entities article { min-height: 0; }

  .directory-panel .service-card:nth-child(2n),
  .engagement-grid article:nth-child(2n),
  .situation-grid article:nth-child(2n),
  .focus-grid a:nth-child(2),
  .contact-grid > *:nth-child(2),
  .lab-card:nth-child(2n) { border-right: 0; }

  .engagement-grid article,
  .situation-grid article,
  .focus-grid a,
  .contact-grid > * { border-bottom: 1px solid var(--line); }

  .engagement-grid article:nth-last-child(-n+2),
  .situation-grid article:nth-last-child(-n+2) { border-bottom: 0; }

  .engagement-grid article,
  .situation-grid article { border-bottom-color: rgba(143,191,218,.15); }

  .focus-grid a:last-child,
  .contact-grid > *:last-child,
  .lab-card:last-child {
    grid-column: 1 / -1;
    border-right: 0;
    border-bottom: 0;
  }

  .lab-card:last-child { border-top: 1px solid rgba(109,183,221,.16); }

  .process-track { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .process-track article,
  .deliverable-grid article,
  .operating-grid article,
  .trust-grid article { min-height: 0; }

  .kyc-case__entities article { align-self: start; }
}

@media (max-width: 900px) {
  :root { --footer-h: 560px; }
  .page-stage {
    margin-bottom: var(--footer-h);
    box-shadow: 0 35px 100px rgba(0,0,0,.45);
  }
  .site-footer {
    height: var(--footer-h);
    min-height: 0;
    position: fixed;
    inset: auto 0 0;
    padding: 48px 24px 24px;
  }

  .footer-top { grid-template-columns: minmax(170px,.45fr) minmax(0,1fr); gap: 28px; }
  .footer-top > a { width: 100%; grid-column: 1 / -1; }

  .clarity-section {
    min-height: 0;
    grid-template-columns: 1fr;
    gap: 42px;
    align-items: start;
  }

  .clarity-section dl > div {
    grid-template-columns: minmax(90px,115px) minmax(0,1fr);
  }

  .capability-row {
    min-height: 0;
    grid-template-columns: 48px minmax(0,1fr);
    gap: 18px;
  }

  .capability-row > div,.capability-row > a { grid-column: 2; }
  .capability-row > a {
    width: min(100%,230px);
    justify-self: start;
  }

  .lab-metrics { grid-template-columns: repeat(auto-fit,minmax(155px,1fr)); }
  .lab-explanation { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .lab-explanation article { min-height: 0; border-bottom: 1px solid var(--line); }
  .lab-explanation article:nth-child(2) { border-right: 0; }
  .lab-explanation article:last-child {
    grid-column: 1 / -1;
    border-right: 0;
    border-bottom: 0;
  }

  .intelligence-teaser { grid-template-columns: 1fr; }
  .intelligence-teaser-copy {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(108,174,213,.14);
  }

  .cta-section { min-height: 0; }

  .home-hero-copy,.service-hero-copy {
    min-height: 0;
    padding-top: clamp(76px,11vw,96px);
    padding-bottom: 48px;
  }

  .hero-visual { min-height: clamp(500px,72svh,560px); }

  .kyc-case__header,
  .kyc-case__signal,
  .kyc-case__workflow,
  .kyc-case__close { grid-template-columns: minmax(0,1fr); }

  .kyc-case__header { gap: 32px; }
  .kyc-case__signal { gap: 14px; }
  .kyc-case__workflow,.kyc-case__close { gap: clamp(32px,6vw,48px); }
  .kyc-case__close { padding: 36px 30px; }

  .airline-event-panels,
  .airline-event-panel,
  .airline-event-status,
  .airline-event-work section { min-height: 0; }

  .airline-event-status { padding: clamp(24px,4vw,31px); }
  .airline-event-work section { padding: 24px; }
  .airline-event-work p { margin-top: 32px; }
  .airline-service-lanes { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .airline-service-lanes article { min-height: 0; }
  .airline-service-lanes article:nth-child(2) { border-right: 0; }
  .airline-service-lanes article:last-child {
    grid-column: 1 / -1;
    border-top: 1px solid rgba(105,190,232,.16);
  }

  .intelligence-guide-grid { grid-template-columns: 1fr; }
  .intelligence-guide-card { min-height: 0; }

  .contact-grid > * { padding: 26px; }
  .contact-grid h2 { margin-top: 52px; }
}

@media (max-width: 760px) {
  :root { --footer-h: 800px; }
  .site-footer { height: var(--footer-h); padding: 42px 19px 22px; }

  .focus-section,
  .service-directory,
  .process-section,
  .deliverable-section,
  .content-section,
  .digital-thread-section,
  .constellation-section,
  .simple-dark,
  .engage-section,
  .technical-rail-section,
  .operating-detail,
  .trust-section,
  .domain-console,
  .intelligence-guides,
  .research-method,
  .intelligence-labs,
  .company-detail-section { padding: 68px 19px; }

  .decision-section,.clarity-section { padding: 68px 19px; gap: 36px; }
  .cta-section { min-height: 0; padding: 68px 19px; }
  .related-section { padding: 42px 19px; }
  .kyc-case-study { padding: 68px 19px; }

  .focus-heading h2,
  .section-heading h2,
  .clarity-section h2,
  .decision-section h2,
  .operating-intro h2,
  .trust-intro h2,
  .intelligence-heading h2,
  .company-detail-heading h2 {
    font-size: clamp(35px,10.5vw,46px);
    line-height: 1.02;
    letter-spacing: -.05em;
  }

  .home-hero-copy,.service-hero-copy { min-height: 0; padding: 64px 19px 42px; }
  .home-hero h1 { font-size: clamp(58px,19vw,76px); line-height: .88; }
  .service-hero h1 { font-size: clamp(42px,12vw,58px); line-height: .98; }
  .lead { margin-top: 25px; font-size: 16px; line-height: 1.68; }
  .breadcrumb { margin-bottom: 22px; }
  .hero-actions { margin-top: 29px; gap: 8px; }
  .button { min-height: 52px; gap: 18px; }
  .hero-proof { margin-top: 36px; }

  .hero-visual { min-height: 500px; margin: 0 9px 24px; }
  .visual-stage { min-height: 340px; }
  .visual-topline,.visual-readout,.visual-footer,.visual-selector,.visual-signals {
    min-width: 0;
    max-width: 100%;
  }

  .focus-grid,
  .directory-panel,
  .engagement-grid,
  .situation-grid,
  .operating-grid,
  .trust-grid,
  .process-track,
  .deliverable-grid,
  .contact-grid,
  .lab-card-grid { grid-template-columns: 1fr; }

  .focus-grid a,
  .contact-grid > *,
  .lab-card:last-child { grid-column: auto; }

  .focus-grid a,
  .service-card,
  .engagement-grid article,
  .situation-grid article,
  .operating-grid article,
  .trust-grid article,
  .process-track article,
  .deliverable-grid article,
  .rail-data-grid article,
  .contact-grid > *,
  .intelligence-guide-card,
  .lab-card,
  .research-method-grid article,
  .lab-explanation article,
  .company-detail-grid article,
  .company-profile-grid article,
  .company-approach-grid article,
  .company-outcomes article { min-height: 0; }

  .focus-grid a,
  .service-card,
  .engagement-grid article,
  .situation-grid article,
  .operating-grid article,
  .trust-grid article,
  .contact-grid > *,
  .intelligence-guide-card,
  .research-method-grid article,
  .company-detail-grid article,
  .company-profile-grid article,
  .company-approach-grid article { padding: 24px 22px; }

  .focus-grid h3,
  .service-card h3,
  .engagement-grid h3,
  .operating-grid h3,
  .trust-grid h3,
  .contact-grid h2,
  .intelligence-guide-card h3,
  .research-method-grid h3,
  .company-detail-grid h3,
  .company-profile-grid h3,
  .company-approach-grid h3 {
    margin-top: 36px;
  }

  .focus-grid h3 { font-size: 25px; }
  .service-card h3 { font-size: 21px; }
  .situation-grid p { margin-top: 34px; }
  .situation-grid article > div { margin-top: 26px; }
  .focus-grid strong,
  .service-card strong,
  .operating-grid small,
  .trust-grid small,
  .intelligence-guide-card strong { margin-top: 26px; }

  .engagement-grid small { margin-top: 22px; }
  .rail-data-grid ul { margin-top: 32px; }
  .rail-phase-track {
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 1px;
    overscroll-behavior-inline: contain;
  }
  .rail-phase-track button { flex: 0 0 128px; scroll-snap-align: start; }
  .domain-console-tabs,.airline-event-tabs,.kyc-case__table-wrap {
    scroll-padding-inline: 1px 24px;
    overscroll-behavior-inline: contain;
  }
  .domain-console-tabs button,.airline-event-tabs button {
    scroll-snap-stop: always;
  }

  .process-track { gap: 28px; }
  .process-track article { padding: 0 0 8px; }
  .process-track article > i { margin-bottom: 25px; }
  .process-track small { margin-top: 22px; }

  .deliverable-grid article {
    padding: 23px 20px;
    grid-template-rows: auto auto auto;
  }
  .deliverable-grid small { margin-top: 18px; align-self: auto; }

  .intelligence-guide-card h3 { font-size: clamp(27px,8vw,36px); }
  .lab-card { padding: 22px; }
  .lab-card-visual { height: 220px; margin: 26px 0 22px; }
  .lab-card-visual svg { height: 160px; }
  .lab-card strong { margin-top: 24px; }
  .research-method-grid h3 { margin-top: 38px; }

  .intelligence-teaser-copy { min-height: 0; padding: 68px 19px; }
  .intelligence-teaser-grid > a { min-height: 0; padding: 24px 22px; }
  .intelligence-teaser-grid h3 { margin-top: 36px; }

  .editorial-hero,
  .intelligence-hero,
  .article-hero,
  .lab-hero {
    min-height: 0;
    padding: 72px 19px 60px;
  }

  .editorial-hero h1,
  .intelligence-hero h1,
  .article-hero h1,
  .lab-hero h1 {
    font-size: clamp(44px,12.5vw,64px);
    line-height: .96;
    letter-spacing: -.06em;
  }

  .intelligence-hero { gap: 34px; }
  .article-principles { margin-top: 38px; }
  .article-content > section { padding: 50px 0; }
  .article-content h2 { font-size: clamp(33px,9vw,43px); }
  .article-boundary { padding-inline: 20px !important; }

  .clarity-section dl > div { grid-template-columns: 1fr; gap: 7px; }

  .lab-explanation h2 { margin-top: 36px; }
  .lab-explanation article:last-child { grid-column: auto; }
  .company-outcomes b { margin-top: 28px; }
  .company-path li { min-height: 0; }
  .company-path small { margin-top: 13px; }
  .career-linkedin { min-height: 0; }
  .career-linkedin-mark { min-height: 130px; padding: 20px; }
  .career-linkedin-mark svg { width: 86px; }
  .career-linkedin-copy { padding: 44px 19px; }
  .career-linkedin-copy h2 { font-size: clamp(34px,10vw,40px); }

  .kyc-case__header h2 { font-size: clamp(41px,12vw,58px); }
  .kyc-case__signal { margin-top: 44px; }
  .kyc-case__entities { margin-top: 42px; }
  .kyc-case__entities article { padding: 25px 21px; }
  .kyc-case__entities h3 { margin-top: 32px; }
  .kyc-case__entities ul { margin-top: 24px; }
  .kyc-case__workflow { margin-top: 76px; gap: 32px; }
  .kyc-case__workflow li { grid-template-columns: 54px 1fr; gap: 14px; }
  .kyc-case__comparison { margin-top: 76px; }
  .kyc-case__close { margin-top: 66px; padding: 29px 21px; }

  .airline-service-lanes { grid-template-columns: 1fr; }
  .airline-service-lanes article,
  .airline-service-lanes article:nth-child(2),
  .airline-service-lanes article:last-child {
    min-height: 0;
    grid-column: auto;
    border-right: 0;
    border-bottom: 1px solid rgba(105,190,232,.16);
  }
  .airline-service-lanes article:last-child { border-bottom: 0; }

  .page-compliance .service-hero h1,
  .page-airline .service-hero h1 {
    font-size: clamp(38px,10.3vw,46px);
    line-height: 1.02;
  }

  .page-compliance .clarity-section h2,
  .page-airline .clarity-section h2 {
    font-size: clamp(31px,8.6vw,38px);
    line-height: 1.08;
  }
}

@media (max-width: 600px) {
  .capability-row { grid-template-columns: 1fr; gap: 0; }
  .capability-row > span,
  .capability-row > div,
  .capability-row > a { grid-column: 1; }
  .capability-row > span { margin-bottom: 7px; }
}

/* Homepage overlapping capability pages — v29 */
.page-home { overflow-x: clip; }
.page-home .page-stage { overflow: clip; }
.page-home .page-stage main { overflow: visible; }
.page-home #industries { scroll-margin-top: 84px; }

.shutter-hero {
  --shutter-header-height: 84px;
  --shutter-engineering-y: 0px;
  --shutter-technology-y: 0px;
  --book-page-step: clamp(18px,1.5vw,22px);
  --book-page-radius: clamp(4px,.45vw,7px);
  max-width: var(--max);
  margin: auto;
  position: relative;
  isolation: isolate;
  color: #eaf6fb;
  background: #030b12;
  border-inline: 1px solid rgba(112,190,226,.16);
}

.shutter-hero__sticky {
  min-height: max(620px,calc(100svh - var(--shutter-header-height)));
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: #030b12;
}

.shutter-slide {
  --panel-accent: #00c8f4;
  --panel-accent-rgb: 0,200,244;
  min-height: max(620px,calc(100svh - var(--shutter-header-height)));
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: #eaf6fb;
  background:
    radial-gradient(circle at 80% 20%,rgba(var(--panel-accent-rgb),.12),transparent 30%),
    linear-gradient(135deg,#061522 0%,#071b2a 58%,#04101a 100%);
  border-bottom: 1px solid rgba(var(--panel-accent-rgb),.2);
}

.shutter-slide--technology {
  --panel-accent: #70a8ff;
  --panel-accent-rgb: 112,168,255;
  background:
    radial-gradient(circle at 74% 24%,rgba(92,112,255,.18),transparent 32%),
    linear-gradient(137deg,#071326 0%,#0b1d38 58%,#06101f 100%);
}

.shutter-slide--managed {
  --panel-accent: #26dec9;
  --panel-accent-rgb: 38,222,201;
  background:
    radial-gradient(circle at 78% 28%,rgba(38,222,201,.13),transparent 31%),
    linear-gradient(137deg,#06171d 0%,#082635 58%,#04141d 100%);
}

.shutter-slide__texture {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .72;
  background-image:
    linear-gradient(rgba(var(--panel-accent-rgb),.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(var(--panel-accent-rgb),.055) 1px,transparent 1px),
    linear-gradient(115deg,transparent 0 64%,rgba(var(--panel-accent-rgb),.08) 64.1% 64.25%,transparent 64.35%);
  background-size: 56px 56px,56px 56px,100% 100%;
  mask-image: linear-gradient(90deg,#000 0%,rgba(0,0,0,.72) 62%,transparent 100%);
}

.shutter-slide::after {
  content: '01';
  position: absolute;
  right: clamp(30px,5vw,78px);
  bottom: -12vh;
  z-index: -1;
  color: transparent;
  -webkit-text-stroke: 1px rgba(var(--panel-accent-rgb),.1);
  font-size: clamp(260px,31vw,500px);
  line-height: .72;
  font-weight: 600;
  letter-spacing: -.1em;
  opacity: .55;
  transform: translateX(12%);
  pointer-events: none;
}
.shutter-slide--technology::after { content: '02'; }
.shutter-slide--managed::after { content: '03'; }

.shutter-slide__rail { display: none; }

.shutter-slide__content {
  min-height: inherit;
  padding:
    clamp(46px,6vh,76px)
    clamp(38px,4.3vw,68px)
    104px
    clamp(38px,4.3vw,68px);
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(300px,.9fr) minmax(430px,1.1fr);
  gap: clamp(36px,5.8vw,90px);
  align-items: center;
}

.shutter-slide__story { min-width: 0; }
.shutter-slide__eyebrow {
  margin: 0 0 clamp(20px,2.8vh,30px);
  color: var(--panel-accent);
  font: 500 10px/1.3 'DM Mono',monospace;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.shutter-slide__story h1,
.shutter-slide__story h2 {
  max-width: 720px;
  margin: 0;
  color: #eff9fd;
  font-size: clamp(48px,5.35vw,82px);
  line-height: .96;
  font-weight: 500;
  letter-spacing: -.065em;
  text-wrap: balance;
}

.shutter-slide__story > p:not(.shutter-slide__eyebrow) {
  max-width: 680px;
  margin: clamp(20px,2.7vh,29px) 0 0;
  color: #9cb2bf;
  font-size: clamp(14px,1.08vw,17px);
  line-height: 1.66;
}

.shutter-slide__sequence {
  margin: clamp(22px,3.2vh,34px) 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}

.shutter-slide__sequence li {
  min-height: 30px;
  padding: 0 22px 0 0;
  display: inline-flex;
  align-items: center;
  gap: 18px;
  color: #b8cbd4;
  font: 500 9px/1 'DM Mono',monospace;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.shutter-slide__sequence li:not(:last-child)::after {
  content: '→';
  color: var(--panel-accent);
}

.shutter-slide__cta {
  width: min(100%,290px);
  min-height: 50px;
  margin-top: clamp(22px,3vh,32px);
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  color: #eef9fd;
  border: 1px solid rgba(var(--panel-accent-rgb),.5);
  background: rgba(var(--panel-accent-rgb),.045);
  font-size: 12px;
  font-weight: 600;
  transition: color .2s ease,background .2s ease,border-color .2s ease;
}

.shutter-slide__cta span { color: var(--panel-accent); }
.shutter-slide__cta:hover,
.shutter-slide__cta:focus-visible {
  color: #031017;
  background: var(--panel-accent);
  border-color: var(--panel-accent);
}
.shutter-slide__cta:hover span,
.shutter-slide__cta:focus-visible span { color: inherit; }

.shutter-capabilities {
  min-width: 0;
  border: 1px solid rgba(var(--panel-accent-rgb),.22);
  background: rgba(2,10,17,.5);
  box-shadow: 0 28px 70px rgba(0,0,0,.18);
}

.shutter-capabilities > header {
  min-height: 44px;
  padding: 0 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #7793a3;
  border-bottom: 1px solid rgba(var(--panel-accent-rgb),.18);
  font: 500 9px/1 'DM Mono',monospace;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.shutter-capabilities > header b {
  color: var(--panel-accent);
  font-weight: 500;
}

.shutter-capabilities__grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
}

.shutter-capabilities__grid > a {
  min-height: 74px;
  padding: 12px 13px;
  display: grid;
  grid-template-columns: 23px minmax(0,1fr) auto;
  gap: 9px;
  align-items: start;
  color: #9db1bd;
  border-right: 1px solid rgba(var(--panel-accent-rgb),.14);
  border-bottom: 1px solid rgba(var(--panel-accent-rgb),.14);
  transition: color .18s ease,background .18s ease;
}

.shutter-capabilities__grid > a:nth-child(2n) { border-right: 0; }
.shutter-capabilities__grid > a:nth-last-child(-n+2) { border-bottom: 0; }
.shutter-slide--managed .shutter-capabilities__grid > a:last-child {
  grid-column: 1 / -1;
  border-right: 0;
  border-bottom: 0;
}
.shutter-slide--managed .shutter-capabilities__grid > a:nth-last-child(2) { border-bottom: 1px solid rgba(var(--panel-accent-rgb),.14); }

.shutter-capabilities__grid em {
  color: color-mix(in srgb,var(--panel-accent) 72%,#486677);
  font: 500 8px/1.4 'DM Mono',monospace;
  font-style: normal;
}

.shutter-capabilities__grid a > span {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.shutter-capabilities__grid b {
  color: #d7e7ee;
  font-size: 11px;
  line-height: 1.32;
  font-weight: 600;
}

.shutter-capabilities__grid small {
  color: #6f8998;
  font-size: 9px;
  line-height: 1.35;
}

.shutter-capabilities__grid i {
  color: var(--panel-accent);
  font-size: 10px;
  font-style: normal;
  opacity: 0;
  transform: translateX(-4px);
  transition: opacity .18s ease,transform .18s ease;
}

.shutter-capabilities__grid > a:hover,
.shutter-capabilities__grid > a:focus-visible {
  color: white;
  background: rgba(var(--panel-accent-rgb),.075);
}
.shutter-capabilities__grid > a:hover i,
.shutter-capabilities__grid > a:focus-visible i { opacity: 1; transform: translateX(0); }

.shutter-hero__controls,
.shutter-hero__scroll-cue { display: none; }

.shutter-hero.is-ready { height: 340svh; }
.shutter-hero.is-ready .shutter-hero__sticky {
  height: calc(100svh - var(--shutter-header-height));
  min-height: 0;
  position: sticky;
  top: var(--shutter-header-height);
}

.shutter-hero.is-ready .shutter-slide {
  min-height: 0;
  position: absolute;
  inset: 0;
}
.shutter-hero.is-ready .shutter-slide--engineering {
  inset: 0 calc(var(--book-page-step) + var(--book-page-step)) calc(var(--book-page-step) + var(--book-page-step)) 0;
  z-index: 3;
  transform: translate3d(0,var(--shutter-engineering-y),0);
  will-change: transform;
}
.shutter-hero.is-ready .shutter-slide--technology {
  inset: 0 var(--book-page-step) var(--book-page-step) 0;
  z-index: 2;
  transform: translate3d(0,var(--shutter-technology-y),0);
  will-change: transform;
}
.shutter-hero.is-ready .shutter-slide--managed {
  inset: 0;
  z-index: 1;
  transform: none;
}

.shutter-hero.is-ready .shutter-slide--engineering,
.shutter-hero.is-ready .shutter-slide--technology {
  background-clip: padding-box;
  border: 1px solid rgba(var(--panel-accent-rgb),.42);
  border-radius: var(--book-page-radius);
  box-shadow:
    0 2px 0 rgba(235,249,255,.08) inset,
    0 24px 54px rgba(0,0,0,.58),
    0 46px 96px rgba(0,0,0,.38);
}

.shutter-hero.is-ready .shutter-slide--managed {
  border: 1px solid rgba(var(--panel-accent-rgb),.24);
}

.shutter-hero.is-ready .shutter-slide--engineering::before,
.shutter-hero.is-ready .shutter-slide--technology::before {
  content: '';
  height: clamp(7px,.75vw,10px);
  position: absolute;
  inset: auto 0 0;
  z-index: 8;
  pointer-events: none;
  background: linear-gradient(180deg,rgba(var(--panel-accent-rgb),.13),rgba(1,8,14,.9));
  border-top: 1px solid rgba(var(--panel-accent-rgb),.44);
  border-radius: 0 0 var(--book-page-radius) var(--book-page-radius);
  box-shadow: 0 18px 38px rgba(0,0,0,.6);
}

.shutter-hero.is-ready .shutter-slide__content {
  min-height: 100%;
  padding-right: clamp(38px,4.3vw,68px);
}

.shutter-hero.is-ready .shutter-slide:not(.is-active) { pointer-events: none; }

.shutter-hero.is-ready .shutter-hero__controls {
  min-height: 47px;
  position: absolute;
  left: clamp(18px,2.5vw,38px);
  right: clamp(42px,4vw,62px);
  bottom: calc(17px + var(--book-page-step) + var(--book-page-step));
  z-index: 12;
  display: flex;
  align-items: stretch;
  color: #8ca4b2;
  gap: 4px;
  background: transparent;
  border: 0;
  backdrop-filter: blur(12px);
}

.shutter-hero__controls button {
  min-width: 0;
  padding: 0 13px;
  display: flex;
  align-items: center;
  gap: 9px;
  color: #7893a2;
  border: 1px solid rgba(126,190,219,.18);
  background: rgba(2,10,16,.72);
  cursor: pointer;
  font-size: 10px;
}

.shutter-hero__controls button span {
  color: #526f80;
  font: 500 8px/1 'DM Mono',monospace;
}
.shutter-hero__controls button b { font-weight: 550; }
.shutter-hero__controls button[aria-current="step"] {
  color: #eaf6fb;
  background: rgba(0,200,244,.08);
}
.shutter-hero__controls button[aria-current="step"] span { color: var(--cyan); }
.shutter-hero__controls > a {
  margin-left: auto;
  padding: 0 14px;
  display: flex;
  align-items: center;
  gap: 18px;
  color: #b9cbd4;
  background: rgba(2,10,16,.72);
  border: 1px solid rgba(126,190,219,.18);
  font-size: 10px;
}
.shutter-hero__controls > a span { color: var(--cyan); }
.shutter-hero__controls button:hover,
.shutter-hero__controls button:focus-visible,
.shutter-hero__controls > a:hover,
.shutter-hero__controls > a:focus-visible { color: white; background: rgba(255,255,255,.055); }

.shutter-hero.is-ready .shutter-hero__scroll-cue {
  margin: 0;
  position: absolute;
  top: 50%;
  right: calc(12px + var(--book-page-step) + var(--book-page-step));
  z-index: 13;
  display: flex;
  align-items: center;
  gap: 11px;
  color: #7994a3;
  font: 500 8px/1 'DM Mono',monospace;
  letter-spacing: .12em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  transform: translateY(-50%);
}

.shutter-hero__scroll-cue i {
  width: 1px;
  height: 48px;
  display: block;
  position: relative;
  overflow: hidden;
  background: rgba(151,200,223,.2);
}
.shutter-hero__scroll-cue i::after {
  content: '';
  width: 1px;
  height: 22px;
  position: absolute;
  inset: -22px 0 auto;
  background: var(--cyan);
  animation: shutterScrollCue 1.8s ease-in-out infinite;
}

@keyframes shutterScrollCue {
  0% { transform: translateY(0); opacity: 0; }
  28% { opacity: 1; }
  100% { transform: translateY(70px); opacity: 0; }
}

@media (max-width: 1180px) {
  .shutter-slide__content {
    grid-template-columns: minmax(270px,.82fr) minmax(390px,1.18fr);
    gap: clamp(26px,3.5vw,48px);
  }
  .shutter-slide__story h1,.shutter-slide__story h2 { font-size: clamp(43px,5vw,64px); }
  .shutter-capabilities__grid > a { min-height: 70px; padding: 10px 11px; }
}

@media (max-width: 900px) {
  .page-home #industries { scroll-margin-top: 70px; }
  .shutter-hero {
    --shutter-header-height: 70px;
  }
  .shutter-slide__content {
    padding-left: clamp(26px,3.5vw,38px);
    grid-template-columns: minmax(240px,.78fr) minmax(340px,1.22fr);
    gap: 24px;
  }
  .shutter-slide__story h1,.shutter-slide__story h2 { font-size: clamp(40px,5.4vw,51px); }
  .shutter-slide__story > p:not(.shutter-slide__eyebrow) { font-size: 13px; }
  .shutter-capabilities__grid small { display: none; }
  .shutter-capabilities__grid > a { min-height: 56px; align-items: center; }
  .shutter-slide__cta { min-height: 46px; }
  .shutter-hero__controls button b { display: none; }
}

@media (max-width: 760px) {
  .shutter-hero {
    --book-page-step: 10px;
    --book-page-radius: 6px;
  }
  .shutter-hero__sticky,
  .shutter-slide { min-height: max(620px,calc(100svh - var(--shutter-header-height))); }
  .shutter-slide__content {
    padding:
      clamp(28px,4.8vh,45px)
      17px
      78px
      17px;
    display: grid;
    grid-template-columns: minmax(0,1fr);
    align-content: center;
    gap: clamp(19px,3.5vh,29px);
  }
  .shutter-hero.is-ready .shutter-slide__content {
    padding-right: 17px;
  }
  .shutter-slide__eyebrow { margin-bottom: 14px; font-size: 8px; }
  .shutter-slide__story h1,.shutter-slide__story h2 {
    font-size: clamp(38px,11.9vw,53px);
    line-height: .94;
  }
  .shutter-slide__story > p:not(.shutter-slide__eyebrow) {
    margin-top: 15px;
    font-size: 12px;
    line-height: 1.52;
  }
  .shutter-slide__sequence { margin-top: 14px; }
  .shutter-slide__sequence li { min-height: 22px; padding-right: 12px; gap: 10px; font-size: 7px; }
  .shutter-slide__cta { width: min(100%,240px); min-height: 42px; margin-top: 15px; font-size: 10px; }
  .shutter-capabilities > header { min-height: 31px; padding-inline: 10px; font-size: 7px; }
  .shutter-capabilities__grid > a {
    min-height: 42px;
    padding: 7px 8px;
    grid-template-columns: 17px minmax(0,1fr) auto;
    gap: 5px;
  }
  .shutter-capabilities__grid em { font-size: 6.5px; }
  .shutter-capabilities__grid b { font-size: 8.5px; line-height: 1.22; }
  .shutter-capabilities__grid i { font-size: 8px; }
  .shutter-hero.is-ready .shutter-hero__controls {
    min-height: 41px;
    left: calc(9px + var(--book-page-step));
    right: calc(28px + var(--book-page-step));
    bottom: calc(9px + var(--book-page-step) + var(--book-page-step));
  }
  .shutter-hero__controls button { flex: 0 0 38px; justify-content: center; padding: 0 7px; }
  .shutter-hero__controls > a { padding: 0 9px; font-size: 8px; gap: 8px; background: rgba(2,10,16,.72); }
  .shutter-hero.is-ready .shutter-hero__scroll-cue { right: calc(6px + var(--book-page-step) + var(--book-page-step)); }
  .shutter-hero__scroll-cue span { display: none; }
  .shutter-hero__scroll-cue i { height: 36px; }
}

@media (max-width: 420px) {
  .shutter-slide__story h1,.shutter-slide__story h2 { font-size: clamp(36px,10.9vw,46px); }
  .shutter-slide__content { gap: 17px; }
  .shutter-slide__story > p:not(.shutter-slide__eyebrow) { font-size: 11.5px; }
  .shutter-slide__cta { min-height: 40px; }
  .shutter-capabilities__grid b { font-size: 8px; }
  .shutter-hero__controls > a { font-size: 0; }
  .shutter-hero__controls > a span { font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .shutter-slide__cta,
  .shutter-capabilities__grid > a,
  .shutter-capabilities__grid i { transition: none; }
  .shutter-hero__scroll-cue i::after { animation: none; }
  .shutter-hero.is-ready { height: auto; }
  .shutter-hero.is-ready .shutter-hero__sticky { height: auto; position: relative; top: auto; }
  .shutter-hero.is-ready .shutter-slide { min-height: max(620px,calc(100svh - var(--shutter-header-height))); position: relative; inset: auto; transform: none; }
  .shutter-hero.is-ready .shutter-hero__controls,
  .shutter-hero.is-ready .shutter-hero__scroll-cue { display: none; }
}

/* Industries information architecture and landing pages — v26 */
.primary-nav > .nav-shutter-trigger {
  min-height: 38px;
  padding: 0 clamp(14px,1.45vw,24px);
  position: relative;
  display: flex;
  align-items: center;
  border: 0;
  color: #a8b7c1;
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  transition: color .2s ease,background .2s ease,transform .2s ease;
}

.primary-nav > .nav-shutter-trigger::after {
  content: '';
  height: 1px;
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 3px;
  background: var(--cyan);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .22s ease;
}

.primary-nav > .nav-shutter-trigger:hover,
.primary-nav > .nav-shutter-trigger:focus-visible,
.primary-nav > .nav-shutter-trigger[aria-expanded="true"] {
  color: white;
  background: rgba(0,200,244,.09);
  transform: translateY(-1px);
}

.primary-nav > .nav-shutter-trigger:hover::after,
.primary-nav > .nav-shutter-trigger:focus-visible::after,
.primary-nav > .nav-shutter-trigger[aria-expanded="true"]::after { transform: scaleX(1); }

.mega-menu[data-active-menu="capabilities"] { --menu-accent: #00c8f4; }
.mega-menu[data-active-menu="industries"] { --menu-accent: #4d9dff; }
.mega-menu[data-active-menu="company"] { --menu-accent: #7fdfff; }

.mega-panel.mega-panel-capabilities {
  grid-template-columns: minmax(230px,.52fr) minmax(0,2.48fr);
  gap: clamp(35px,4vw,64px);
}

.mega-capability-groups {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  border-top: 1px solid rgba(143,191,218,.14);
  border-left: 1px solid rgba(143,191,218,.14);
}

.mega-capability-group {
  min-width: 0;
  padding: 15px;
  border-right: 1px solid rgba(143,191,218,.14);
  border-bottom: 1px solid rgba(143,191,218,.14);
}

.mega-capability-group > a {
  min-height: 83px;
  display: grid;
  grid-template-columns: 27px 1fr auto;
  gap: 10px;
  align-items: start;
  color: #d8e6ed;
  border-bottom: 1px solid rgba(143,191,218,.14);
}

.mega-capability-group > a em,
.mega-capability-group nav a em {
  color: #527385;
  font: 500 8px 'DM Mono',monospace;
  font-style: normal;
}

.mega-capability-group > a span { display: flex; flex-direction: column; gap: 5px; }
.mega-capability-group > a b { color: #eff9ff; font-size: 13px; font-weight: 560; }
.mega-capability-group > a small { color: #668191; font-size: 9.5px; line-height: 1.42; }
.mega-capability-group > a i { color: var(--menu-accent); font-size: 11px; font-style: normal; }
.mega-capability-group nav { display: flex; flex-direction: column; }

.mega-capability-group nav a {
  min-height: 42px;
  padding: 7px 4px;
  display: grid;
  grid-template-columns: 22px minmax(0,1fr) auto;
  gap: 7px;
  align-items: center;
  color: #8fa7b4;
  border-bottom: 1px solid rgba(143,191,218,.08);
  font-size: 10px;
  line-height: 1.35;
  transition: color .18s ease,background .18s ease,transform .18s ease;
}

.mega-capability-group nav a i {
  color: var(--menu-accent);
  font-style: normal;
  opacity: 0;
  transform: translateX(-4px);
  transition: opacity .18s ease,transform .18s ease;
}

.mega-capability-group nav a:hover,
.mega-capability-group nav a:focus-visible {
  color: white;
  background: rgba(0,200,244,.045);
  transform: translateX(2px);
}

.mega-capability-group nav a:hover i,
.mega-capability-group nav a:focus-visible i { opacity: 1; transform: translateX(0); }

.mega-panel-industries .mega-panel-links { grid-template-columns: repeat(2,minmax(0,1fr)); }
.mega-panel-industries .mega-panel-links > a { min-height: 142px; padding: 20px; }
.mega-panel-industries .mega-panel-links > a b { font-size: 15px; }
.mega-panel-industries .mega-panel-links > a small { max-width: 310px; font-size: 10.5px; line-height: 1.52; }

.industries-home {
  max-width: var(--max);
  margin: auto;
  padding: clamp(82px,8vw,126px) clamp(28px,5vw,80px) clamp(70px,7vw,105px);
  position: relative;
  overflow: hidden;
  color: #dceaf1;
  background: linear-gradient(145deg,#071a29 0%,#06121d 56%,#081a28 100%);
  border-inline: 1px solid rgba(104,180,220,.16);
  border-bottom: 1px solid rgba(104,180,220,.16);
}

.industries-home::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(108,174,213,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(108,174,213,.045) 1px,transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(120deg,#000,transparent 72%);
}

.industries-home__intro {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: .34fr minmax(0,1.15fr) minmax(260px,.58fr);
  gap: clamp(30px,5vw,78px);
  align-items: start;
}

.industries-home__intro .section-kicker { color: var(--cyan); }
.industries-home__intro h2 {
  max-width: 760px;
  margin: 0;
  color: #f0f8fc;
  font-size: clamp(42px,4.8vw,72px);
  line-height: .99;
  font-weight: 500;
  letter-spacing: -.06em;
  text-wrap: balance;
}

.industries-home__intro > p:last-child {
  margin: 0;
  color: #89a0ae;
  font-size: 15px;
  line-height: 1.78;
}

.industries-home__grid {
  margin-top: clamp(52px,6vw,82px);
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-top: 1px solid rgba(137,197,226,.2);
  border-left: 1px solid rgba(137,197,226,.2);
}

.industry-card {
  min-width: 0;
  display: grid;
  grid-template-rows: auto 1fr;
  color: #dceaf1;
  background: rgba(5,18,29,.72);
  border-right: 1px solid rgba(137,197,226,.2);
  border-bottom: 1px solid rgba(137,197,226,.2);
  transition: background .25s ease,transform .25s ease,box-shadow .25s ease;
}

.industry-card:hover,
.industry-card:focus-visible {
  z-index: 2;
  background: #0a2132;
  transform: translateY(-7px);
  box-shadow: 0 28px 65px rgba(0,0,0,.3);
}

.industry-card__media {
  aspect-ratio: 16/10;
  margin: 0;
  position: relative;
  overflow: hidden;
  background: #081521;
}

.industry-card__media::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg,transparent 48%,rgba(4,14,22,.7));
}

.industry-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: saturate(.83) contrast(1.04);
  transition: transform .7s cubic-bezier(.2,.75,.25,1),filter .35s ease;
}

.industry-card:hover img,
.industry-card:focus-visible img { transform: scale(1.035); filter: saturate(.98) contrast(1.05); }
.industry-card__media span { position: absolute; left: 20px; bottom: 17px; z-index: 1; color: #d5e7ef; font: 500 8px 'DM Mono',monospace; letter-spacing: .11em; text-transform: uppercase; }

.industry-card__body {
  min-height: 238px;
  padding: 25px 22px 21px;
  display: flex;
  flex-direction: column;
}

.industry-card__body h3 { margin: 0 0 14px; color: #f1f8fb; font-size: clamp(21px,1.75vw,27px); line-height: 1.06; font-weight: 520; letter-spacing: -.04em; }
.industry-card__body p { margin: 0; color: #829aa8; font-size: 13px; line-height: 1.68; }
.industry-card__cta { margin-top: auto; padding-top: 22px; display: flex; justify-content: space-between; align-items: center; color: #dcecf4; border-top: 1px solid rgba(137,197,226,.14); font-size: 12px; font-weight: 600; }
.industry-card__cta b { color: var(--cyan); font-size: 16px; font-weight: 400; transition: transform .2s ease; }
.industry-card:hover .industry-card__cta b,.industry-card:focus-visible .industry-card__cta b { transform: translateX(4px); }

.industries-home__distinction {
  margin-top: 26px;
  padding: 19px 0 0;
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 24px;
  align-items: end;
  border-top: 1px solid rgba(137,197,226,.14);
}

.industries-home__distinction div { display: grid; grid-template-columns: 105px 1fr; gap: 15px; align-items: center; }
.industries-home__distinction span { color: #5f8092; font: 500 9px 'DM Mono',monospace; letter-spacing: .11em; text-transform: uppercase; }
.industries-home__distinction strong { color: #c8d9e2; font-size: 13px; font-weight: 520; }
.industries-home__distinction a { color: var(--cyan); font-size: 12px; }

.industry-hero {
  max-width: var(--max);
  min-height: calc(100vh - 84px);
  margin: auto;
  position: relative;
  display: grid;
  grid-template-columns: minmax(520px,.95fr) minmax(500px,1.05fr);
  color: #eaf5fb;
  background: var(--night);
  border-inline: 1px solid rgba(108,174,213,.12);
  border-bottom: 1px solid rgba(108,174,213,.12);
  overflow: hidden;
}

.industry-hero__copy {
  padding: clamp(70px,7vw,112px) clamp(32px,5vw,80px) 55px;
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.industry-hero h1 {
  max-width: 790px;
  margin: 0;
  color: #f1f8fc;
  font-size: clamp(50px,5.25vw,80px);
  line-height: .96;
  font-weight: 500;
  letter-spacing: -.065em;
  text-wrap: balance;
}

.industry-hero__signals {
  max-width: 740px;
  margin-top: 42px;
  padding-top: 17px;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 15px;
  border-top: 1px solid rgba(143,191,218,.17);
}

.industry-hero__signals span { color: #7891a1; font-size: 10.5px; line-height: 1.48; }
.industry-hero__signals b { margin-bottom: 4px; display: block; color: #d4e3ea; font-size: 11.5px; font-weight: 600; }

.industry-hero__media {
  min-height: 680px;
  margin: 34px 32px 34px 0;
  position: relative;
  align-self: stretch;
  overflow: hidden;
  border: 1px solid rgba(91,179,225,.24);
  background: #071521;
  box-shadow: inset 0 0 80px rgba(0,0,0,.25),0 30px 70px rgba(0,0,0,.18);
}

.industry-hero__media::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg,rgba(4,13,21,.28),transparent 38%),linear-gradient(180deg,transparent 64%,rgba(4,13,21,.78));
}

.industry-hero__media img { width: 100%; height: 100%; display: block; object-fit: cover; filter: saturate(.84) contrast(1.04); }
.industry-hero__media figcaption { position: absolute; left: 24px; right: 24px; bottom: 22px; z-index: 1; display: flex; justify-content: space-between; gap: 20px; color: #d9e9f1; font: 500 8px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }
.industry-hero__media figcaption span:last-child { color: var(--cyan); }

.industry-section {
  max-width: var(--max);
  margin: auto;
  padding: clamp(78px,8vw,126px) clamp(28px,5vw,80px);
  border-inline: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.industry-section__heading {
  display: grid;
  grid-template-columns: .32fr minmax(0,1.1fr) minmax(250px,.58fr);
  gap: clamp(28px,5vw,76px);
  align-items: start;
}

.industry-section__heading h2 {
  margin: 0;
  color: #111b23;
  font-size: clamp(38px,4.3vw,64px);
  line-height: 1.02;
  font-weight: 500;
  letter-spacing: -.055em;
  text-wrap: balance;
}

.industry-section__heading > p:last-child { margin: 0; color: var(--muted); font-size: 15px; line-height: 1.78; }

.industry-priorities {
  margin-top: clamp(52px,6vw,78px);
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}

.industry-priorities article {
  min-height: 280px;
  padding: 25px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: #fff;
}

.industry-priorities span,.industry-support-grid span,.industry-flow__steps span { color: #688190; font: 500 9px 'DM Mono',monospace; letter-spacing: .07em; }
.industry-priorities h3 { margin: auto 0 14px; color: #17242d; font-size: 22px; line-height: 1.08; font-weight: 530; letter-spacing: -.035em; }
.industry-priorities p { margin: 0; color: #587080; font-size: 13px; line-height: 1.68; }

.industry-support { color: #d9e7ee; background: linear-gradient(145deg,#071a29,#051019); border-color: rgba(108,174,213,.16); }
.industry-support .industry-section__heading h2 { color: #eff8fc; }
.industry-support .industry-section__heading > p:last-child { color: #829aa8; }
.industry-support .section-kicker { color: var(--cyan); }
.industry-support-grid { margin-top: clamp(52px,6vw,78px); display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid rgba(137,197,226,.18); border-left: 1px solid rgba(137,197,226,.18); }

.industry-support-grid article {
  min-height: 390px;
  padding: 27px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid rgba(137,197,226,.18);
  border-bottom: 1px solid rgba(137,197,226,.18);
  background: rgba(9,29,44,.56);
}

.industry-support-grid h3 { margin: 68px 0 14px; color: #f0f8fc; font-size: 31px; font-weight: 510; letter-spacing: -.045em; }
.industry-support-grid > article > p { margin: 0; color: #8199a7; font-size: 13px; line-height: 1.7; }
.industry-support-grid ul { margin: auto 0 0; padding: 22px 0 0; list-style: none; border-top: 1px solid rgba(137,197,226,.14); }
.industry-support-grid li { padding: 5px 0 5px 14px; position: relative; color: #afc0c9; font-size: 11px; line-height: 1.5; }
.industry-support-grid li::before { content: ''; width: 4px; height: 4px; position: absolute; left: 0; top: 12px; background: var(--cyan); }

.industry-flow { background: #eef5f9; }
.industry-flow__steps { margin-top: clamp(48px,5vw,68px); display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); border-top: 1px solid #cedde6; border-left: 1px solid #cedde6; }
.industry-flow__steps article { min-height: 205px; padding: 21px; display: flex; flex-direction: column; border-right: 1px solid #cedde6; border-bottom: 1px solid #cedde6; background: rgba(255,255,255,.55); }
.industry-flow__steps h3 { margin: auto 0 10px; color: #18303e; font-size: 17px; line-height: 1.15; font-weight: 550; letter-spacing: -.025em; }
.industry-flow__steps p { margin: 0; color: #617786; font-size: 11.5px; line-height: 1.58; }

.industry-capabilities { background: #fff; }
.industry-capability-grid { margin-top: clamp(52px,6vw,78px); display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.industry-capability-grid a { min-height: 196px; padding: 23px; display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: background .2s ease,transform .2s ease; }
.industry-capability-grid a:hover,.industry-capability-grid a:focus-visible { z-index: 1; background: #f1f7fa; transform: translateY(-4px); }
.industry-capability-grid span { color: #6c8492; font: 500 8px 'DM Mono',monospace; letter-spacing: .08em; text-transform: uppercase; }
.industry-capability-grid h3 { margin: auto 0 12px; color: #17242d; font-size: 20px; line-height: 1.1; font-weight: 530; letter-spacing: -.035em; }
.industry-capability-grid p { margin: 0; color: #5d7381; font-size: 12px; line-height: 1.6; }
.industry-capability-grid b { margin-top: 17px; color: var(--accent); font-size: 11px; font-weight: 600; }

.industry-boundary {
  max-width: var(--max);
  margin: auto;
  padding: clamp(58px,6vw,84px) clamp(28px,5vw,80px);
  display: grid;
  grid-template-columns: .48fr minmax(0,1.52fr);
  gap: clamp(32px,6vw,95px);
  color: #d7e6ed;
  background: #081925;
  border-inline: 1px solid rgba(108,174,213,.16);
  border-bottom: 1px solid rgba(108,174,213,.16);
}

.industry-boundary .section-kicker { margin: 0; color: var(--cyan); }
.industry-boundary__copy { padding-left: 28px; border-left: 1px solid rgba(137,197,226,.2); }
.industry-boundary h2 { max-width: 810px; margin: 0 0 19px; color: #f0f8fb; font-size: clamp(29px,3vw,44px); line-height: 1.06; font-weight: 510; letter-spacing: -.045em; }
.industry-boundary p { max-width: 920px; margin: 0; color: #879eab; font-size: 14px; line-height: 1.78; }

.industry-switcher {
  max-width: var(--max);
  margin: auto;
  padding: 42px clamp(28px,5vw,80px);
  display: grid;
  grid-template-columns: .32fr 1fr;
  gap: 30px;
  align-items: center;
  background: #edf6fb;
  border-inline: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.industry-switcher .section-kicker { margin: 0; }
.industry-switcher nav { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid #ccdce5; border-left: 1px solid #ccdce5; }
.industry-switcher a { min-height: 54px; padding: 10px 13px; display: flex; justify-content: space-between; align-items: center; gap: 10px; color: #405b6a; background: #fff; border-right: 1px solid #ccdce5; border-bottom: 1px solid #ccdce5; font-size: 11px; }
.industry-switcher a[aria-current="page"] { color: #061522; background: #c9f4ff; }
.industry-switcher a span { color: var(--accent); }

@media (max-width: 1180px) {
  .mega-panel.mega-panel-capabilities { grid-template-columns: minmax(215px,.45fr) minmax(0,2.55fr); gap: 28px; }
  .mega-capability-group { padding: 12px; }
  .mega-capability-group nav a { min-height: 40px; font-size: 9.5px; }
  .industries-home__intro,.industry-section__heading { grid-template-columns: .34fr 1fr; }
  .industries-home__intro > p:last-child,.industry-section__heading > p:last-child { grid-column: 2; }
  .industries-home__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .industry-card__body { min-height: 210px; }
  .industry-hero { min-height: auto; grid-template-columns: 1fr; }
  .industry-hero__copy { min-height: 620px; }
  .industry-hero__media { min-height: 660px; margin: 0 28px 40px; }
  .industry-priorities,.industry-capability-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .industry-flow__steps { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 1024px) {
  .mega-panel.mega-panel-capabilities { grid-template-columns: 1fr; }
  .mega-panel-capabilities .mega-panel-lead { display: none; }
  .industries-home__distinction { grid-template-columns: 1fr 1fr; }
  .industries-home__distinction a { grid-column: 1 / -1; }
  .industry-support-grid { grid-template-columns: 1fr; }
  .industry-support-grid article { min-height: 300px; }
  .industry-support-grid h3 { margin-top: 48px; }
}

@media (max-width: 900px) {
  .industry-hero__copy { min-height: 0; padding-top: clamp(76px,11vw,96px); padding-bottom: 48px; }
  .industry-hero__media { min-height: clamp(500px,72svh,590px); }
}

@media (max-width: 760px) {
  .industries-home,.industry-section { padding: 68px 19px; }
  .industries-home__intro,.industry-section__heading { grid-template-columns: 1fr; gap: 20px; }
  .industries-home__intro > p:last-child,.industry-section__heading > p:last-child { grid-column: auto; }
  .industries-home__intro h2,.industry-section__heading h2 { font-size: clamp(37px,11.4vw,48px); line-height: 1.02; }
  .industries-home__grid { margin-top: 44px; grid-template-columns: 1fr; }
  .industry-card__body { min-height: 218px; padding: 23px 20px 20px; }
  .industry-card__body h3 { font-size: 25px; }
  .industries-home__distinction { grid-template-columns: 1fr; gap: 15px; }
  .industries-home__distinction div { grid-template-columns: 95px 1fr; }
  .industries-home__distinction a { grid-column: auto; padding-top: 13px; }
  .industry-hero__copy { padding: 64px 19px 42px; }
  .industry-hero h1 { font-size: clamp(43px,12.5vw,60px); line-height: .98; }
  .industry-hero__signals { grid-template-columns: 1fr; }
  .industry-hero__media { min-height: 440px; margin: 0 9px 24px; }
  .industry-hero__media figcaption { left: 17px; right: 17px; bottom: 16px; flex-direction: column; gap: 5px; }
  .industry-priorities,.industry-capability-grid { grid-template-columns: 1fr; }
  .industry-priorities article { min-height: 240px; }
  .industry-support-grid { margin-top: 44px; }
  .industry-support-grid article { min-height: 0; padding: 24px 21px; }
  .industry-support-grid h3 { margin-top: 42px; }
  .industry-support-grid ul { margin-top: 44px; }
  .industry-flow__steps { grid-template-columns: 1fr; }
  .industry-flow__steps article { min-height: 175px; }
  .industry-capability-grid a { min-height: 180px; }
  .industry-boundary { padding: 52px 19px; grid-template-columns: 1fr; gap: 25px; }
  .industry-boundary__copy { padding: 24px 0 0; border-left: 0; border-top: 1px solid rgba(137,197,226,.2); }
  .industry-switcher { padding: 38px 19px; grid-template-columns: 1fr; }
  .industry-switcher nav { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 480px) {
  .industry-card__media { aspect-ratio: 4/3; }
  .industry-hero__signals { margin-top: 32px; }
  .industry-hero__media { min-height: 365px; }
  .industry-switcher nav { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .industry-card,.industry-card img,.industry-card__cta b { transition: none; }
  .industry-card:hover,.industry-card:focus-visible { transform: none; }
  .industry-card:hover img,.industry-card:focus-visible img { transform: none; }
}

@media (max-width: 480px) {
  .site-footer { padding: 38px 17px 20px; }
  .footer-top { grid-template-columns: 1fr; gap: 18px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 22px; }
  .footer-grid > div:last-child { grid-column: 1 / -1; }
  .footer-bottom nav { flex-wrap: wrap; gap: 12px 22px; }

  .focus-section,
  .service-directory,
  .process-section,
  .deliverable-section,
  .content-section,
  .digital-thread-section,
  .constellation-section,
  .simple-dark,
  .engage-section,
  .technical-rail-section,
  .operating-detail,
  .trust-section,
  .domain-console,
  .intelligence-guides,
  .research-method,
  .intelligence-labs,
  .company-detail-section { padding: 58px 17px; }

  .decision-section,.clarity-section,.cta-section { padding: 58px 17px; }
  .related-section { padding: 36px 17px; }
  .kyc-case-study { padding: 58px 17px; }

  .home-hero-copy,.service-hero-copy { padding: 58px 17px 38px; }
  .home-hero h1 { font-size: clamp(52px,19.5vw,68px); }
  .service-hero h1 { font-size: clamp(39px,12vw,50px); }
  .hero-visual { min-height: 480px; margin: 0 7px 20px; }
  .visual-stage { min-height: 320px; }

  .focus-grid,
  .directory-panel,
  .engagement-grid,
  .situation-grid,
  .operating-grid,
  .trust-grid,
  .intelligence-guide-grid,
  .lab-card-grid,
  .research-method-grid,
  .company-detail-grid,
  .company-profile-grid,
  .company-approach-grid { margin-top: 46px; }

  .focus-grid a,
  .service-card,
  .engagement-grid article,
  .situation-grid article,
  .operating-grid article,
  .trust-grid article,
  .contact-grid > *,
  .intelligence-guide-card,
  .lab-card,
  .research-method-grid article,
  .company-detail-grid article,
  .company-profile-grid article,
  .company-approach-grid article { padding-inline: 20px; }

  .article-principles { grid-template-columns: 1fr; }
  .article-principles span { padding: 13px 0; border-bottom: 1px solid rgba(121,190,226,.12); }
  .article-sources > a { grid-template-columns: 28px 1fr; }
  .article-sources i { grid-column: 2; }
  .lab-hero h1 {
    max-width: 100%;
    overflow-wrap: anywhere;
    text-wrap: balance;
  }
}

@media (max-width: 360px) {
  :root { --footer-h: 990px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-grid > div:last-child { grid-column: auto; }
}

/* Global accessibility and responsive rhythm — v24 */
.skip-link {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 200;
  padding: 11px 15px;
  color: #04111b;
  background: var(--cyan);
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 2px;
  font-size: 13px;
  font-weight: 700;
  transform: translateY(calc(-100% - 18px));
  transition: transform .16s ease;
}

.skip-link:focus { transform: translateY(0); }
.page-stage main:focus { outline: 0; }

.kyc-case__scroll-hint {
  margin: 0 0 12px;
  display: none;
  align-items: center;
  gap: 9px;
  color: #7fa0ae;
  font: 500 10px/1.5 'DM Mono',monospace;
  letter-spacing: .04em;
  text-transform: uppercase;
}

@media (max-width: 1024px) {
  .capability-row {
    grid-template-columns: 48px minmax(0,1fr);
    gap: 18px;
  }

  .capability-row > div,
  .capability-row > a { grid-column: 2; }

  .capability-row > a {
    width: min(100%,230px);
    justify-self: start;
  }
}

@media (min-width: 901px) and (max-width: 1024px) {
  .home-hero-copy,.service-hero-copy { min-height: 0; }
  .hero-visual { min-height: 560px; }
}

@media (min-width: 761px) and (max-width: 900px) {
  .thread-panel { min-height: 520px; }
  .thread-object-model { min-height: 480px; }
  .thread-object-core { margin: 34px 0 30px; }

  .rail-data-grid article { min-height: 220px; padding: 21px; }
  .rail-data-grid ul { margin-top: 48px; }
  .rail-lifecycle-head { min-height: 94px; }
  .rail-phase-track button { min-height: 76px; }

  .intelligence-guide-grid { margin-top: 48px; }
  .intelligence-guide-card { padding: 24px; }
  .intelligence-guide-card h3 { margin-top: 42px; }
  .intelligence-guide-card > div { margin-top: 20px; }
  .intelligence-guide-card strong { padding-top: 20px; }

  .research-method-grid article { min-height: 250px; padding: 22px; }
  .research-method-grid h3 { margin-top: 44px; }
}

@media (max-width: 900px), (max-height: 560px) {
  body {
    min-height: 100vh;
    min-height: 100svh;
    display: flex;
    flex-direction: column;
  }

  .page-stage {
    width: 100%;
    flex: 1 0 auto;
    order: 1;
    margin-bottom: 0;
    box-shadow: none;
  }

  .site-footer {
    width: 100%;
    height: auto;
    min-height: 0;
    flex: 0 0 auto;
    order: 2;
    position: relative;
    inset: auto;
  }
}

@media (max-width: 900px) {
  .capability-list { margin-top: 52px; }
  .capability-row { padding-block: 22px; }
  .capability-detail { margin-top: 18px; padding-top: 14px; }
  .capability-context { margin-top: 17px; }
  .capability-context span { padding: 15px; }

  .kyc-case__signal { margin-top: 38px; }
  .kyc-case__entities { margin-top: 38px; }
  .kyc-case__workflow,.kyc-case__comparison { margin-top: 62px; }
  .kyc-case__close { margin-top: 54px; }
  .kyc-case__disclaimer { margin-top: 22px; }
  .kyc-case__scroll-hint { display: flex; }

  .domain-control-grid { margin-top: 40px; }
  .domain-console-panel { padding: 22px; }
  .regulated-references { margin-top: 42px; }
}

@media (max-width: 760px) {
  .decision-section {
    grid-template-columns: minmax(0,1fr);
    align-items: start;
  }

  .decision-list,.decision-copy {
    width: 100%;
    min-width: 0;
  }

  .decision-list p {
    min-height: 0;
    grid-template-columns: 36px minmax(0,1fr);
    padding: 20px 0;
  }

  .constellation-map {
    padding: 16px;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 6px;
  }

  .constellation-node { min-height: 70px; padding: 7px; }
  .constellation-detail { min-height: 0; }
  .constellation-detail h3 { margin-top: 40px; }
  .constellation-detail dl { margin: 24px 0; }

  .directory-tabs {
    margin-top: 48px;
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    overscroll-behavior-inline: contain;
  }

  .directory-tabs button {
    min-height: 66px;
    flex: 0 0 min(190px,72vw);
    border-right: 1px solid var(--line);
    border-bottom: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  .service-card { padding: 20px; }
  .service-card h3 { margin-top: 24px; }
  .service-card-includes { margin-top: 14px; padding-top: 12px; }
  .service-card strong { margin-top: 18px; }

  .thread-artifacts { margin-top: 32px; }
  .thread-object-model { min-height: 0; }
  .thread-object-core { margin: 24px 0; }
  .thread-integrity article { min-height: 0; }
  .thread-integrity b { margin-top: 30px; }

  .technical-rail-section { gap: 32px; }
  .rail-data-grid article { padding: 20px; }
  .rail-data-grid ul { margin-top: 19px; }
  .rail-lifecycle-head { min-height: 0; }
  .rail-phase-track button { min-height: 74px; }

  .intelligence-guide-grid { margin-top: 48px; }
  .intelligence-guide-card { padding: 22px; }
  .intelligence-guide-card h3 { margin-top: 38px; }
  .intelligence-guide-card > div { margin-top: 19px; }
  .intelligence-guide-card strong { margin-top: 20px; padding-top: 0; }

  .process-track { margin-top: 48px; gap: 20px; }
  .process-track article > i { margin: 10px 0 16px; }
  .process-track small { margin-top: 15px; padding-top: 12px; }
}

@media (max-width: 600px) {
  .capability-row { grid-template-columns: 1fr; gap: 0; }
  .capability-row > span,
  .capability-row > div,
  .capability-row > a { grid-column: 1; }
  .capability-row > span { margin-bottom: 7px; }
}

/* Homepage corporate image shutters — v30 */
.shutter-slide--corporate {
  background: #02090f;
}

.shutter-slide--corporate .shutter-slide__texture {
  z-index: 1;
  opacity: .24;
  mix-blend-mode: screen;
  mask-image: linear-gradient(90deg,#000 0%,rgba(0,0,0,.72) 46%,transparent 84%);
}

.shutter-slide--corporate::after {
  z-index: 1;
  bottom: -9vh;
  opacity: .24;
  -webkit-text-stroke-color: rgba(var(--panel-accent-rgb),.16);
}

.shutter-slide__media {
  margin: 0;
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  background: #02090f;
}

.shutter-slide__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 52% center;
  filter: saturate(.82) contrast(1.04) brightness(.78);
  transform: scale(1.006);
}

.shutter-slide__media--technology img { object-position: 54% center; }
.shutter-slide__media--managed-services img { object-position: 56% center; }

.shutter-slide__media::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg,rgba(2,9,15,.99) 0%,rgba(2,9,15,.91) 28%,rgba(2,9,15,.58) 52%,rgba(2,9,15,.12) 76%,rgba(2,9,15,.3) 100%),
    linear-gradient(0deg,rgba(2,9,15,.97) 0%,rgba(2,9,15,.68) 21%,transparent 52%),
    linear-gradient(180deg,rgba(2,9,15,.34),transparent 26%);
}

.shutter-slide__media-grid {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  opacity: .22;
  background-image:
    linear-gradient(rgba(var(--panel-accent-rgb),.11) 1px,transparent 1px),
    linear-gradient(90deg,rgba(var(--panel-accent-rgb),.11) 1px,transparent 1px);
  background-size: clamp(62px,7.5vw,108px) clamp(62px,7.5vw,108px);
  mask-image: linear-gradient(90deg,transparent 0 45%,#000 74%,transparent 100%);
}

.shutter-slide__media-meta {
  padding: 8px 11px;
  position: absolute;
  top: clamp(22px,3vw,42px);
  right: clamp(24px,3.8vw,58px);
  z-index: 3;
  color: rgba(221,241,249,.78);
  border: 1px solid rgba(var(--panel-accent-rgb),.34);
  background: rgba(2,9,15,.48);
  backdrop-filter: blur(12px);
  font: 500 8px/1 'DM Mono',monospace;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.shutter-slide__media figcaption {
  position: absolute;
  top: clamp(62px,7.7vw,102px);
  right: clamp(24px,3.8vw,58px);
  z-index: 3;
  display: grid;
  justify-items: end;
  gap: 5px;
  color: #e6f4f9;
  text-align: right;
  text-shadow: 0 2px 18px rgba(0,0,0,.72);
}

.shutter-slide__media figcaption span {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .02em;
}

.shutter-slide__media figcaption b {
  color: rgba(198,221,232,.7);
  font: 500 8px/1.35 'DM Mono',monospace;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.shutter-hero .shutter-slide--corporate .shutter-slide__content--corporate {
  min-height: 100%;
  padding:
    clamp(38px,5vh,62px)
    clamp(32px,4.3vw,68px)
    102px
    clamp(32px,4.3vw,68px);
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(300px,.74fr) minmax(420px,1.26fr);
  grid-template-rows: minmax(0,1fr) auto;
  column-gap: clamp(34px,5vw,76px);
  row-gap: clamp(18px,2.5vh,28px);
  align-items: center;
}

.shutter-slide--corporate .shutter-slide__story {
  max-width: 680px;
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  position: relative;
  z-index: 2;
}

.shutter-slide--corporate .shutter-slide__eyebrow {
  margin-bottom: clamp(17px,2.3vh,24px);
  display: flex;
  align-items: center;
  gap: 12px;
}

.shutter-slide--corporate .shutter-slide__eyebrow::before {
  content: '';
  width: 26px;
  height: 1px;
  flex: 0 0 auto;
  background: var(--panel-accent);
  box-shadow: 0 0 16px rgba(var(--panel-accent-rgb),.4);
}

.shutter-slide--corporate .shutter-slide__story h1,
.shutter-slide--corporate .shutter-slide__story h2 {
  max-width: 650px;
  font-size: clamp(45px,4.75vw,72px);
  line-height: .98;
  letter-spacing: -.058em;
  text-shadow: 0 7px 34px rgba(0,0,0,.48);
}

.shutter-slide--corporate .shutter-slide__story > p:not(.shutter-slide__eyebrow) {
  max-width: 590px;
  margin-top: clamp(17px,2.3vh,24px);
  color: #a9bdc7;
  text-shadow: 0 2px 18px rgba(0,0,0,.72);
}

.shutter-slide--corporate .shutter-slide__sequence {
  margin-top: clamp(16px,2.25vh,23px);
}

.shutter-slide--corporate .shutter-slide__sequence li {
  color: #c4d3da;
}

.shutter-slide--corporate .shutter-slide__cta {
  width: min(100%,270px);
  min-height: 47px;
  margin-top: clamp(17px,2.2vh,23px);
  border-color: rgba(var(--panel-accent-rgb),.58);
  background: rgba(3,12,19,.64);
  backdrop-filter: blur(12px);
}

.shutter-slide--corporate .shutter-capabilities--dock {
  min-width: 0;
  grid-column: 1 / -1;
  grid-row: 2;
  align-self: end;
  display: grid;
  grid-template-columns: clamp(106px,11.5vw,160px) minmax(0,1fr);
  border: 1px solid rgba(var(--panel-accent-rgb),.28);
  background: rgba(2,9,15,.76);
  box-shadow: 0 18px 54px rgba(0,0,0,.26);
  backdrop-filter: blur(18px) saturate(1.08);
}

.shutter-slide--corporate .shutter-capabilities--dock > header {
  min-height: 100%;
  padding: 13px 15px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  border: 0;
  border-right: 1px solid rgba(var(--panel-accent-rgb),.2);
}

.shutter-slide--corporate .shutter-capabilities--dock > header span {
  max-width: 86px;
  line-height: 1.45;
}

.shutter-slide--corporate .shutter-capabilities--dock > header b {
  font-size: 15px;
  letter-spacing: -.04em;
}

.shutter-slide--corporate .shutter-capabilities__grid {
  min-width: 0;
  grid-template-columns: repeat(4,minmax(0,1fr));
}

.shutter-slide--corporate.shutter-slide--managed .shutter-capabilities__grid {
  grid-template-columns: repeat(5,minmax(0,1fr));
}

.shutter-slide--corporate .shutter-capabilities__grid > a {
  min-height: 48px;
  padding: 9px 10px;
  grid-template-columns: 18px minmax(0,1fr) 10px;
  gap: 7px;
  align-items: center;
  background: rgba(255,255,255,.008);
}

.shutter-slide--corporate .shutter-capabilities__grid small { display: none; }
.shutter-slide--corporate .shutter-capabilities__grid b { font-size: 10px; line-height: 1.25; }
.shutter-slide--corporate .shutter-capabilities__grid em { font-size: 7px; }
.shutter-slide--corporate .shutter-capabilities__grid i {
  opacity: .45;
  transform: none;
}

.shutter-slide--corporate .shutter-capabilities__grid > a:hover,
.shutter-slide--corporate .shutter-capabilities__grid > a:focus-visible {
  background: rgba(var(--panel-accent-rgb),.09);
}

.shutter-slide--corporate .shutter-capabilities__grid > a:hover i,
.shutter-slide--corporate .shutter-capabilities__grid > a:focus-visible i { opacity: 1; }

@media (max-width: 1180px) {
  .shutter-hero .shutter-slide--corporate .shutter-slide__content--corporate {
    grid-template-columns: minmax(270px,.76fr) minmax(360px,1.24fr);
    column-gap: clamp(25px,3.7vw,46px);
  }
  .shutter-slide--corporate .shutter-slide__story h1,
  .shutter-slide--corporate .shutter-slide__story h2 { font-size: clamp(42px,4.8vw,61px); }
  .shutter-slide--corporate .shutter-capabilities--dock { grid-template-columns: 104px minmax(0,1fr); }
  .shutter-slide--corporate .shutter-capabilities--dock > header { padding: 11px 12px; }
  .shutter-slide--corporate .shutter-capabilities__grid > a { min-height: 46px; padding: 8px; }
  .shutter-slide--corporate .shutter-capabilities__grid b { font-size: 9px; }
}

@media (max-width: 900px) {
  .shutter-hero .shutter-slide--corporate .shutter-slide__content--corporate {
    padding-left: clamp(24px,3.5vw,36px);
    padding-right: clamp(24px,3.5vw,36px);
    grid-template-columns: minmax(250px,.82fr) minmax(300px,1.18fr);
    column-gap: 24px;
  }
  .shutter-slide--corporate .shutter-slide__story h1,
  .shutter-slide--corporate .shutter-slide__story h2 { font-size: clamp(39px,5.35vw,49px); }
  .shutter-slide__media figcaption { display: none; }
  .shutter-slide--corporate .shutter-capabilities--dock { grid-template-columns: 88px minmax(0,1fr); }
  .shutter-slide--corporate .shutter-capabilities--dock > header { padding: 10px; }
  .shutter-slide--corporate .shutter-capabilities__grid > a { grid-template-columns: 15px minmax(0,1fr) 8px; gap: 5px; }
}

@media (max-width: 760px) {
  .shutter-slide__media img {
    object-position: 61% center;
    filter: saturate(.78) contrast(1.03) brightness(.62);
  }
  .shutter-slide__media::before {
    background:
      linear-gradient(90deg,rgba(2,9,15,.98) 0%,rgba(2,9,15,.9) 48%,rgba(2,9,15,.52) 100%),
      linear-gradient(0deg,rgba(2,9,15,.98) 0%,rgba(2,9,15,.78) 25%,transparent 58%),
      linear-gradient(180deg,rgba(2,9,15,.48),transparent 28%);
  }
  .shutter-slide__media-grid { opacity: .15; }
  .shutter-slide__media-meta {
    top: 16px;
    right: 17px;
    padding: 6px 8px;
    font-size: 7px;
  }
  .shutter-hero .shutter-slide--corporate .shutter-slide__content--corporate {
    padding: clamp(27px,4.7vh,42px) 17px 78px;
    display: grid;
    grid-template-columns: minmax(0,1fr);
    grid-template-rows: minmax(0,1fr) auto;
    row-gap: 15px;
    align-content: stretch;
  }
  .shutter-slide--corporate .shutter-slide__story {
    max-width: min(100%,520px);
    grid-column: 1;
    grid-row: 1;
  }
  .shutter-slide--corporate .shutter-slide__eyebrow { margin-bottom: 13px; }
  .shutter-slide--corporate .shutter-slide__story h1,
  .shutter-slide--corporate .shutter-slide__story h2 { font-size: clamp(37px,11.4vw,50px); }
  .shutter-slide--corporate .shutter-slide__story > p:not(.shutter-slide__eyebrow) {
    max-width: 560px;
    margin-top: 14px;
    font-size: 11.5px;
    line-height: 1.48;
  }
  .shutter-slide--corporate .shutter-slide__sequence { margin-top: 12px; }
  .shutter-slide--corporate .shutter-slide__cta { min-height: 40px; margin-top: 13px; }
  .shutter-slide--corporate .shutter-capabilities--dock {
    grid-column: 1;
    grid-row: 2;
    display: block;
  }
  .shutter-slide--corporate .shutter-capabilities--dock > header {
    min-height: 29px;
    padding: 0 9px;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    border-right: 0;
    border-bottom: 1px solid rgba(var(--panel-accent-rgb),.18);
  }
  .shutter-slide--corporate .shutter-capabilities--dock > header span { max-width: none; }
  .shutter-slide--corporate .shutter-capabilities--dock > header b { font-size: 10px; }
  .shutter-slide--corporate .shutter-capabilities__grid,
  .shutter-slide--corporate.shutter-slide--managed .shutter-capabilities__grid {
    padding: 0 0 2px;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(142px,58vw);
    grid-template-columns: none;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--panel-accent-rgb),.44) rgba(255,255,255,.04);
  }
  .shutter-slide--corporate .shutter-capabilities__grid > a,
  .shutter-slide--corporate .shutter-capabilities__grid > a:nth-child(2n),
  .shutter-slide--corporate .shutter-capabilities__grid > a:nth-last-child(-n+2),
  .shutter-slide--corporate.shutter-slide--managed .shutter-capabilities__grid > a:last-child,
  .shutter-slide--corporate.shutter-slide--managed .shutter-capabilities__grid > a:nth-last-child(2) {
    min-height: 42px;
    border-right: 1px solid rgba(var(--panel-accent-rgb),.14);
    border-bottom: 0;
    scroll-snap-align: start;
  }
  .shutter-slide--corporate.shutter-slide--managed .shutter-capabilities__grid > a:last-child { grid-column: auto; }
  .shutter-slide--corporate .shutter-capabilities__grid b { font-size: 8.5px; }
}

@media (max-width: 420px) {
  .shutter-slide--corporate .shutter-slide__story h1,
  .shutter-slide--corporate .shutter-slide__story h2 { font-size: clamp(35px,10.6vw,44px); }
  .shutter-slide--corporate .shutter-slide__story > p:not(.shutter-slide__eyebrow) { font-size: 11px; }
  .shutter-slide--corporate .shutter-capabilities__grid { grid-auto-columns: minmax(136px,62vw); }
}

@media (prefers-reduced-motion: reduce) {
  .shutter-slide__media img { transform: none; }
  .shutter-slide--corporate .shutter-capabilities__grid { scroll-behavior: auto; }
}

/* --------------------------------------------------------------------------
   CX24 v31 — static editorial heroes for every page except the homepage
   The media frame and every source asset share an exact 3:2 ratio. Images are
   contained, never scaled past their responsive source, and never animated.
   -------------------------------------------------------------------------- */

.page-hero {
  --page-hero-accent: #00c8f4;
  --page-hero-line: rgba(128,193,224,.17);
  max-width: var(--max);
  min-height: calc(100svh - 84px);
  margin: auto;
  padding: clamp(54px,6.4vw,98px) clamp(28px,4.3vw,66px);
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(430px,.92fr) minmax(500px,1.08fr);
  gap: clamp(34px,4.8vw,74px);
  align-items: center;
  color: #eaf5fb;
  background:
    radial-gradient(circle at 78% 28%,rgba(0,200,244,.095),transparent 31%),
    linear-gradient(138deg,#06131f 0%,#040b12 68%,#071521 100%);
  border-inline: 1px solid rgba(108,174,213,.12);
  border-bottom: 1px solid rgba(108,174,213,.12);
  overflow: hidden;
}

.page-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .34;
  background-image:
    linear-gradient(rgba(108,174,213,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(108,174,213,.055) 1px,transparent 1px);
  background-size: 62px 62px;
  mask-image: linear-gradient(90deg,#000 0%,rgba(0,0,0,.45) 54%,transparent 92%);
}

.page-hero__copy {
  min-width: 0;
  position: relative;
  z-index: 2;
}

.page-hero__copy .breadcrumb { margin-bottom: 25px; }
.page-hero__copy .eyebrow { margin-bottom: 23px; color: var(--page-hero-accent); }

.page-hero h1 {
  max-width: 820px;
  margin: 0;
  color: #f2f8fb;
  font-size: clamp(48px,4.85vw,78px);
  line-height: .97;
  font-weight: 500;
  letter-spacing: -.064em;
  text-wrap: balance;
}

.page-hero h1 em {
  color: transparent;
  font-style: normal;
  -webkit-text-stroke: 1px rgba(154,221,247,.78);
}

.page-hero__copy > p:not(.eyebrow),
.page-hero__copy > .lead {
  max-width: 720px;
  margin: 27px 0 0;
  color: #9fb4c0;
  font-size: clamp(16px,1.16vw,19px);
  line-height: 1.72;
}

.page-hero__copy > .button { margin-top: 34px; }
.page-hero .hero-actions { margin-top: 32px; }

.page-hero__media {
  width: 100%;
  aspect-ratio: 3 / 2;
  margin: 0;
  position: relative;
  overflow: hidden;
  align-self: center;
  background: #06131e;
  border: 1px solid rgba(121,192,226,.27);
  box-shadow: 0 32px 75px rgba(0,0,0,.32),inset 0 0 0 1px rgba(255,255,255,.025);
}

.page-hero__media::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg,rgba(2,8,13,.10) 0%,transparent 40%,rgba(2,8,13,.64) 100%),
    linear-gradient(90deg,rgba(2,8,13,.16),transparent 24%);
}

.page-hero__media::after {
  content: '';
  width: 72px;
  height: 2px;
  position: absolute;
  top: 18px;
  right: 18px;
  z-index: 2;
  background: linear-gradient(90deg,transparent,var(--page-hero-accent));
  opacity: .78;
}

.page-hero__media picture {
  width: 100%;
  height: 100%;
  display: block;
}

.page-hero__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center;
  image-rendering: auto;
  filter: saturate(.86) contrast(1.035);
}

.page-hero__media figcaption {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 17px;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  gap: 18px;
  color: #d7e7ef;
  font: 500 8px 'DM Mono',monospace;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.page-hero__media figcaption span:last-child { color: var(--page-hero-accent); text-align: right; }

.page-hero__signals,
.page-hero .industry-hero__signals {
  max-width: 740px;
  margin-top: 34px;
  padding-top: 17px;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 15px;
  border-top: 1px solid var(--page-hero-line);
}

.page-hero__signals span,
.page-hero .industry-hero__signals span { color: #7891a1; font-size: 10.5px; line-height: 1.48; }

.page-hero__signals b,
.page-hero .industry-hero__signals b { margin-bottom: 4px; display: block; color: #d4e3ea; font-size: 11.5px; font-weight: 600; }

.page-hero .article-principles {
  max-width: 760px;
  margin-top: 32px;
  grid-template-columns: repeat(2,minmax(0,1fr));
}

.page-hero .article-principles span { min-height: 62px; }

.page-hero__context {
  max-width: 730px;
  margin-top: 32px;
  padding: 19px 20px;
  color: #8ea5b2;
  background: rgba(8,26,39,.54);
  border: 1px solid var(--page-hero-line);
}

.page-hero__context > span {
  display: block;
  color: var(--page-hero-accent);
  font: 500 8px 'DM Mono',monospace;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.page-hero__context > p { margin: 11px 0 17px; font-size: 12px; line-height: 1.62; }
.page-hero__context dl { margin: 0; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--page-hero-line); }
.page-hero__context dl div { padding: 13px 8px 0 0; }
.page-hero__context dt { color: #e2f5fc; font: 500 13px 'DM Mono',monospace; }
.page-hero__context dd { margin: 4px 0 0; color: #668392; font-size: 8px; line-height: 1.35; }

.page-hero--article h1 { font-size: clamp(44px,4.55vw,72px); }
.page-hero--editorial h1 { font-size: clamp(48px,5vw,80px); }
.page-hero--lab h1 { font-size: clamp(50px,5.2vw,82px); }
.page-hero--industry { --page-hero-accent: #63daf4; }
.page-hero--intelligence,
.page-hero--article,
.page-hero--lab { --page-hero-accent: #67dfff; }

@media (max-width: 1180px) {
  .page-hero {
    min-height: auto;
    padding-block: clamp(64px,8vw,92px);
    grid-template-columns: minmax(390px,.9fr) minmax(430px,1.1fr);
    gap: 34px;
  }
  .page-hero h1 { font-size: clamp(46px,5.15vw,66px); }
  .page-hero--article h1 { font-size: clamp(42px,4.75vw,62px); }
}

@media (max-width: 1024px) {
  .page-hero {
    padding: 72px clamp(27px,5vw,52px) 48px;
    grid-template-columns: minmax(0,1fr);
    gap: 44px;
  }
  .page-hero__copy { max-width: 900px; }
  .page-hero__media { max-width: 920px; }
  .page-hero h1,
  .page-hero--article h1,
  .page-hero--editorial h1,
  .page-hero--lab h1 { font-size: clamp(50px,7.4vw,76px); }
}

@media (max-width: 760px) {
  .page-hero {
    min-height: auto;
    padding: 54px 18px 22px;
    gap: 34px;
    border-inline: 0;
  }
  .page-hero::before { background-size: 46px 46px; }
  .page-hero__copy .breadcrumb { margin-bottom: 20px; flex-wrap: wrap; line-height: 1.5; }
  .page-hero__copy .eyebrow { margin-bottom: 18px; }
  .page-hero h1,
  .page-hero--article h1,
  .page-hero--editorial h1,
  .page-hero--lab h1 { font-size: clamp(42px,12.4vw,60px); line-height: .98; }
  .page-hero__copy > p:not(.eyebrow),
  .page-hero__copy > .lead { margin-top: 22px; font-size: 16px; line-height: 1.65; }
  .page-hero .hero-actions { margin-top: 27px; flex-direction: column; }
  .page-hero .button { width: 100%; }
  .page-hero__media { width: 100%; max-width: none; }
  .page-hero__media::after { top: 13px; right: 13px; width: 52px; }
  .page-hero__media figcaption { left: 13px; right: 13px; bottom: 12px; font-size: 6.7px; }
  .page-hero__signals,
  .page-hero .industry-hero__signals { grid-template-columns: 1fr; gap: 12px; }
  .page-hero .article-principles { grid-template-columns: 1fr; }
  .page-hero__context { padding: 17px; }
}

@media (max-width: 420px) {
  .page-hero { padding-inline: 15px; }
  .page-hero h1,
  .page-hero--article h1,
  .page-hero--editorial h1,
  .page-hero--lab h1 { font-size: clamp(39px,11.8vw,51px); }
  .page-hero__media figcaption span:first-child { display: none; }
  .page-hero__media figcaption { justify-content: flex-end; }
}

@media (prefers-reduced-motion: reduce) {
  .page-hero,
  .page-hero *,
  .page-hero *::before,
  .page-hero *::after { animation: none !important; transition: none !important; }
}

/* --------------------------------------------------------------------------
   CX24 v32 — message-led heroes with contextual imagery in the background
   The copy owns the first viewport. The full 3:2 image remains uncropped and
   sits inside a graded background field as supporting evidence for the page.
   -------------------------------------------------------------------------- */

.page-hero {
  --page-hero-accent: #25d4f3;
  --page-hero-line: rgba(142,210,235,.22);
  max-width: var(--max);
  min-height: max(720px,calc(100svh - 84px));
  margin: 0 auto;
  padding: clamp(88px,10vh,126px) clamp(30px,6vw,94px) clamp(68px,9vh,108px);
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: flex-end;
  color: #eef8fc;
  background: #030b12;
  border-inline: 1px solid rgba(116,190,221,.12);
  border-bottom: 1px solid rgba(116,190,221,.16);
  overflow: hidden;
}

.page-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: 1;
  mask-image: none;
  background:
    linear-gradient(90deg,
      rgba(2,8,14,.99) 0%,
      rgba(2,9,15,.965) 29%,
      rgba(3,11,18,.82) 48%,
      rgba(3,11,18,.30) 73%,
      rgba(2,8,14,.56) 100%),
    linear-gradient(180deg,
      rgba(2,8,14,.30) 0%,
      rgba(2,8,14,.03) 39%,
      rgba(2,8,14,.88) 100%);
}

.page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: .26;
  background-image:
    linear-gradient(rgba(129,207,235,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(129,207,235,.08) 1px,transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(90deg,rgba(0,0,0,.72),transparent 60%);
}

.page-hero__copy {
  width: min(100%,920px);
  max-width: 920px;
  min-width: 0;
  margin-right: auto;
  padding-left: clamp(21px,2.4vw,38px);
  position: relative;
  z-index: 3;
  border-left: 1px solid rgba(37,212,243,.60);
  text-shadow: 0 2px 22px rgba(0,0,0,.42);
}

.page-hero__copy::before {
  content: '';
  width: 1px;
  height: clamp(48px,7vh,76px);
  position: absolute;
  left: -1px;
  top: 0;
  background: linear-gradient(180deg,#b7f4ff,var(--page-hero-accent),transparent);
  box-shadow: 0 0 28px rgba(37,212,243,.28);
}

.page-hero__copy .breadcrumb {
  margin: 0 0 clamp(30px,4.5vh,48px);
  color: rgba(203,225,235,.66);
}

.page-hero__copy .eyebrow {
  margin: 0 0 clamp(18px,2.8vh,28px);
  color: var(--page-hero-accent);
  letter-spacing: .17em;
}

.page-hero h1,
.page-hero--article h1,
.page-hero--editorial h1,
.page-hero--lab h1 {
  max-width: 900px;
  margin: 0;
  color: #f4fbfe;
  font-size: clamp(50px,5.35vw,86px);
  line-height: .98;
  font-weight: 500;
  letter-spacing: -.06em;
  text-wrap: balance;
}

.page-hero h1 em {
  color: #9beaff;
  font-style: normal;
  -webkit-text-stroke: 0;
}

.page-hero__copy > p:not(.eyebrow),
.page-hero__copy > .lead {
  max-width: 760px;
  margin: clamp(24px,3.4vh,34px) 0 0;
  color: #becfd8;
  font-size: clamp(17px,1.28vw,20px);
  line-height: 1.66;
}

.page-hero__copy > .button { margin-top: 34px; }
.page-hero .hero-actions { margin-top: clamp(28px,4vh,40px); }

.page-hero__media {
  width: 100%;
  max-width: none;
  height: 100%;
  aspect-ratio: auto;
  margin: 0;
  position: absolute;
  inset: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 38%,rgba(23,151,191,.13),transparent 34%),
    #030b12;
  border: 0;
  box-shadow: none;
}

.page-hero__media::before { display: none; }

.page-hero__media::after {
  width: clamp(64px,7vw,106px);
  height: 1px;
  top: clamp(24px,3.4vw,50px);
  right: clamp(24px,3.8vw,58px);
  z-index: 2;
  opacity: .72;
  background: linear-gradient(90deg,transparent,var(--page-hero-accent));
}

.page-hero__media picture {
  width: 100%;
  height: 100%;
  display: block;
}

.page-hero__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: right center;
  image-rendering: auto;
  opacity: .76;
  filter: saturate(.78) contrast(1.08) brightness(.86);
  transform: none;
}

.page-hero__media figcaption {
  width: min(34vw,430px);
  position: absolute;
  top: clamp(36px,4.8vw,70px);
  right: clamp(24px,3.8vw,58px);
  bottom: auto;
  left: auto;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 7px;
  color: rgba(224,241,247,.76);
  font: 500 8px 'DM Mono',monospace;
  letter-spacing: .13em;
  text-align: right;
  text-transform: uppercase;
}

.page-hero__media figcaption span:last-child {
  color: var(--page-hero-accent);
  text-align: right;
}

.page-hero__signals,
.page-hero .industry-hero__signals {
  max-width: 780px;
  margin-top: clamp(28px,4vh,42px);
  padding-top: 19px;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 16px;
  border-top: 1px solid rgba(142,210,235,.24);
}

.page-hero__signals span,
.page-hero .industry-hero__signals span {
  color: #94aab5;
  font-size: 10.5px;
  line-height: 1.5;
}

.page-hero__signals b,
.page-hero .industry-hero__signals b {
  margin-bottom: 5px;
  display: block;
  color: #e3f0f5;
  font-size: 11.5px;
  font-weight: 600;
}

.page-hero .article-principles {
  max-width: 780px;
  margin-top: 30px;
  grid-template-columns: repeat(2,minmax(0,1fr));
}

.page-hero .article-principles span {
  min-height: 0;
  background: rgba(4,15,23,.54);
  border-color: rgba(142,210,235,.18);
  backdrop-filter: blur(8px);
}

.page-hero__context {
  max-width: 760px;
  margin-top: 30px;
  padding: 20px 22px;
  color: #9db0ba;
  background: rgba(4,15,23,.66);
  border: 1px solid rgba(142,210,235,.20);
  backdrop-filter: blur(10px);
}

.page-hero__context > span { color: var(--page-hero-accent); }
.page-hero__context > p { color: #aebfc8; }
.page-hero__context dt { color: #eff9fc; }
.page-hero__context dd { color: #829aa6; }

@media (min-width: 1025px) and (max-height: 760px) {
  .page-hero {
    min-height: calc(100svh - 70px);
    padding-block: 58px;
  }
  .page-hero h1,
  .page-hero--article h1,
  .page-hero--editorial h1,
  .page-hero--lab h1 { font-size: clamp(46px,4.8vw,70px); }
  .page-hero__copy .breadcrumb { margin-bottom: 26px; }
  .page-hero__copy > p:not(.eyebrow),
  .page-hero__copy > .lead { margin-top: 22px; }
  .page-hero .hero-actions { margin-top: 26px; }
}

@media (max-width: 1024px) {
  .page-hero {
    min-height: auto;
    padding: clamp(330px,49vw,470px) clamp(26px,5.2vw,54px) clamp(54px,7vw,76px);
    display: block;
  }

  .page-hero::before {
    background:
      linear-gradient(180deg,
        rgba(2,8,14,.14) 0%,
        rgba(2,8,14,.12) 27%,
        rgba(2,8,14,.80) 52%,
        rgba(2,8,14,.99) 74%,
        #02080e 100%),
      linear-gradient(90deg,rgba(2,8,14,.62),rgba(2,8,14,.12) 76%);
  }

  .page-hero::after {
    background-size: 58px 58px;
    mask-image: linear-gradient(180deg,rgba(0,0,0,.58),transparent 58%);
  }

  .page-hero__copy {
    width: min(100%,840px);
    max-width: 840px;
  }

  .page-hero h1,
  .page-hero--article h1,
  .page-hero--editorial h1,
  .page-hero--lab h1 { font-size: clamp(48px,7.8vw,74px); }

  .page-hero__media img {
    object-position: center top;
    opacity: .72;
  }

  .page-hero__media figcaption {
    width: min(50vw,430px);
    top: 38px;
    right: clamp(26px,5.2vw,54px);
  }
}

@media (max-width: 760px) {
  .page-hero {
    min-height: auto;
    padding: clamp(246px,70vw,340px) 18px 46px;
    border-inline: 0;
  }

  .page-hero::before {
    background:
      linear-gradient(180deg,
        rgba(2,8,14,.08) 0%,
        rgba(2,8,14,.08) 23%,
        rgba(2,8,14,.72) 39%,
        rgba(2,8,14,.98) 55%,
        #02080e 100%);
  }

  .page-hero__copy {
    width: 100%;
    max-width: none;
    padding: 23px 0 0;
    border-top: 1px solid rgba(37,212,243,.48);
    border-left: 0;
  }

  .page-hero__copy::before {
    width: clamp(54px,18vw,82px);
    height: 1px;
    top: -1px;
    left: 0;
    background: linear-gradient(90deg,#b7f4ff,var(--page-hero-accent),transparent);
  }

  .page-hero__copy .breadcrumb {
    margin-bottom: 25px;
    flex-wrap: wrap;
    line-height: 1.5;
  }

  .page-hero__copy .eyebrow { margin-bottom: 17px; }

  .page-hero h1,
  .page-hero--article h1,
  .page-hero--editorial h1,
  .page-hero--lab h1 {
    font-size: clamp(40px,11.5vw,56px);
    line-height: 1;
  }

  .page-hero__copy > p:not(.eyebrow),
  .page-hero__copy > .lead {
    margin-top: 21px;
    color: #b7c8d0;
    font-size: 16px;
    line-height: 1.62;
  }

  .page-hero .hero-actions {
    margin-top: 27px;
    flex-direction: column;
  }

  .page-hero .button { width: 100%; }

  .page-hero__media::after {
    top: 16px;
    right: 18px;
    width: 52px;
  }

  .page-hero__media figcaption {
    width: min(68vw,320px);
    top: 28px;
    right: 18px;
    font-size: 6.8px;
  }

  .page-hero__signals,
  .page-hero .industry-hero__signals {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .page-hero .article-principles { grid-template-columns: 1fr; }
  .page-hero__context { padding: 17px; }
}

@media (max-width: 420px) {
  .page-hero { padding-inline: 15px; }
  .page-hero h1,
  .page-hero--article h1,
  .page-hero--editorial h1,
  .page-hero--lab h1 { font-size: clamp(38px,11.2vw,49px); }
  .page-hero__media figcaption span:first-child { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .page-hero,
  .page-hero *,
  .page-hero *::before,
  .page-hero *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}

/* CX24 v33 — team-led credibility and proof-in-practice architecture */
.proof-home,
.team-proof,
.industry-proof,
.case-proof-summary,
.case-entity-deep,
.case-evidence-matrix,
.case-team-model,
.case-practice,
.case-monitoring,
.case-deliverables,
.case-boundary {
  max-width: var(--max);
  margin-inline: auto;
  border-inline: 1px solid var(--line);
}

.proof-home {
  padding: clamp(88px,9vw,140px) clamp(24px,6vw,92px);
  color: #edf8fd;
  background:
    radial-gradient(circle at 86% 12%,rgba(0,200,244,.13),transparent 32%),
    linear-gradient(rgba(91,170,207,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(91,170,207,.045) 1px,transparent 1px),
    linear-gradient(145deg,#061522,#081d2c 68%,#06131f);
  background-size: auto,56px 56px,56px 56px,auto;
  border-color: rgba(117,187,219,.16);
}
.proof-home__intro { display:grid; grid-template-columns:minmax(0,.95fr) minmax(320px,.65fr); gap:clamp(42px,8vw,130px); align-items:end; }
.proof-home__intro .section-kicker { grid-column:1/-1; margin-bottom:-3px; color:var(--cyan); }
.proof-home__intro h2 { max-width:850px; margin:0; font-size:clamp(45px,5.4vw,82px); line-height:.96; font-weight:520; letter-spacing:-.055em; }
.proof-home__intro > p:last-child { max-width:620px; margin:0; color:#9db5c1; font-size:clamp(16px,1.35vw,20px); line-height:1.72; }
.proof-home__case { margin-top:clamp(48px,6vw,82px); padding:clamp(28px,4vw,54px); display:grid; grid-template-columns:minmax(0,1.35fr) minmax(260px,.62fr); gap:30px clamp(35px,6vw,90px); color:inherit; border:1px solid rgba(103,211,244,.3); background:linear-gradient(125deg,rgba(14,56,77,.74),rgba(5,24,38,.85)); transition:border-color .22s ease,background .22s ease,transform .22s ease; }
.proof-home__case:hover,.proof-home__case:focus-visible { border-color:rgba(103,211,244,.72); background:linear-gradient(125deg,rgba(18,68,91,.82),rgba(5,24,38,.92)); transform:translateY(-3px); }
.proof-home__case-copy > span,.proof-home__team article > span { color:#72d8f4; font:500 9px 'DM Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
.proof-home__case-copy h3 { max-width:760px; margin:18px 0 20px; font-size:clamp(34px,4.1vw,62px); line-height:.98; font-weight:530; letter-spacing:-.05em; }
.proof-home__case-copy p { max-width:780px; margin:0; color:#bdd0d9; font-size:15px; line-height:1.75; }
.proof-home__case-copy small { margin-top:22px; display:block; color:#76919f; font-size:11px; }
.proof-home__case-signals { margin:0; display:grid; grid-template-columns:repeat(3,1fr); align-content:start; border-top:1px solid rgba(117,214,243,.24); border-left:1px solid rgba(117,214,243,.17); }
.proof-home__case-signals div { min-width:0; padding:22px 15px; border-right:1px solid rgba(117,214,243,.17); border-bottom:1px solid rgba(117,214,243,.17); }
.proof-home__case-signals dt { color:#f0fbff; font-size:clamp(27px,2.6vw,42px); line-height:1; letter-spacing:-.04em; }
.proof-home__case-signals dd { margin:9px 0 0; color:#7894a3; font-size:10px; line-height:1.45; }
.proof-home__case-cta { grid-column:1/-1; padding-top:22px; display:flex; justify-content:space-between; gap:20px; border-top:1px solid rgba(117,214,243,.16); color:#d9edf5; font-size:13px; font-weight:600; }
.proof-home__case-cta span { color:var(--cyan); }
.proof-home__team { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:34px; border-top:1px solid rgba(120,191,222,.18); border-left:1px solid rgba(120,191,222,.18); }
.proof-home__team article { min-width:0; min-height:300px; padding:28px; border-right:1px solid rgba(120,191,222,.18); border-bottom:1px solid rgba(120,191,222,.18); }
.proof-home__team h3 { margin:78px 0 15px; color:#edf7fb; font-size:25px; line-height:1.08; font-weight:520; letter-spacing:-.04em; }
.proof-home__team p { margin:0; color:#829ba8; font-size:13px; line-height:1.72; }

.team-proof { padding:clamp(82px,8vw,130px) clamp(24px,6vw,92px); background:#f1f6f8; }
.team-proof__intro { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(330px,.64fr); gap:18px clamp(46px,8vw,128px); align-items:end; }
.team-proof__intro .section-kicker { grid-column:1/-1; margin-bottom:0; }
.team-proof__intro h2 { max-width:920px; margin:0; color:#122a38; font-size:clamp(40px,4.8vw,72px); line-height:.97; font-weight:520; letter-spacing:-.052em; }
.team-proof__intro > p:last-child { max-width:620px; margin:0; color:#5c7482; font-size:16px; line-height:1.75; }
.team-proof__grid { margin-top:58px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #c7d7df; border-left:1px solid #c7d7df; }
.team-proof__grid--four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.team-proof__grid article { min-width:0; min-height:315px; padding:26px; border-right:1px solid #c7d7df; border-bottom:1px solid #c7d7df; background:rgba(255,255,255,.7); }
.team-proof__grid article > span,.team-proof__footer span { color:var(--accent); font:500 9px 'DM Mono',monospace; letter-spacing:.11em; text-transform:uppercase; }
.team-proof__grid h3 { margin:80px 0 17px; color:#19303e; font-size:clamp(23px,2vw,29px); line-height:1.08; font-weight:520; letter-spacing:-.04em; }
.team-proof__grid p { margin:0; color:#5d7380; font-size:13px; line-height:1.73; }
.team-proof__footer { min-height:150px; padding:28px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:35px; align-items:center; color:#dcebf2; background:#071925; border:1px solid rgba(85,166,204,.22); border-top:0; }
.team-proof__footer > div:first-child { max-width:900px; display:flex; flex-direction:column; gap:9px; }
.team-proof__footer strong { color:#dceaf0; font-size:15px; line-height:1.58; font-weight:520; }
.team-proof__footer > a,.team-proof__links a { min-height:49px; padding:0 15px; display:flex; align-items:center; justify-content:space-between; gap:30px; color:#e4f5fb; border:1px solid rgba(0,200,244,.45); font-size:12px; }
.team-proof__footer a b { color:var(--cyan); font-weight:400; }
.team-proof__links { display:flex; flex-wrap:wrap; gap:8px; }
.team-proof--technology .section-kicker,.team-proof--technology .team-proof__grid article > span { color:#256fc6; }
.team-proof--operations .section-kicker,.team-proof--operations .team-proof__grid article > span { color:#007f75; }
.team-proof--compliance .team-proof__footer { background:linear-gradient(125deg,#092238,#071722); }

.industry-proof { padding:clamp(80px,8vw,125px) clamp(24px,6vw,92px); display:grid; grid-template-columns:minmax(0,1.25fr) minmax(300px,.55fr); gap:clamp(42px,8vw,125px); align-items:center; color:#edf8fc; background:linear-gradient(135deg,#071a2a,#09283a); border-color:rgba(101,183,219,.18); }
.industry-proof__copy h2 { max-width:870px; margin:0; font-size:clamp(42px,5vw,75px); line-height:.97; font-weight:520; letter-spacing:-.052em; }
.industry-proof__copy > p:not(.section-kicker) { max-width:760px; margin:25px 0 0; color:#9db5c1; font-size:16px; line-height:1.75; }
.industry-proof__signals { margin-top:34px; display:flex; flex-wrap:wrap; gap:8px; }
.industry-proof__signals span { padding:10px 13px; color:#8fa9b7; border:1px solid rgba(112,207,239,.2); font:500 9px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }
.industry-proof__signals b { margin-right:5px; color:#75dbf5; font-size:13px; }
.industry-proof__copy > a { max-width:340px; min-height:52px; margin-top:30px; padding:0 16px; display:flex; align-items:center; justify-content:space-between; gap:30px; border:1px solid rgba(0,200,244,.5); color:#e8f8fd; font-size:13px; }
.industry-proof__copy > a b { color:var(--cyan); font-weight:400; }
.industry-proof__boundary { padding:30px; border:1px solid rgba(108,198,232,.22); background:rgba(2,13,22,.34); }
.industry-proof__boundary span { color:#6ed7f2; font:500 9px 'DM Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
.industry-proof__boundary strong { margin:42px 0 14px; display:block; color:#eef8fb; font-size:25px; line-height:1.12; font-weight:520; letter-spacing:-.035em; }
.industry-proof__boundary p { margin:0; color:#87a2af; font-size:13px; line-height:1.72; }

.page-hero--case-study .page-hero__copy { z-index:3; }
.page-hero--case-study h1 { max-width:980px; }
.page-hero--case-study .page-hero__signals { margin-top:36px; }
.case-proof-summary { padding:clamp(75px,8vw,120px) clamp(24px,6vw,92px); display:grid; grid-template-columns:minmax(0,1.1fr) minmax(290px,.58fr); gap:42px clamp(48px,8vw,130px); background:#f5f9fb; }
.case-proof-summary__lead h2,.case-section-heading h2 { max-width:930px; margin:0; color:#142d3b; font-size:clamp(42px,5vw,76px); line-height:.97; font-weight:520; letter-spacing:-.052em; }
.case-proof-summary__lead > p:last-child,.case-section-heading > p:last-child { max-width:790px; margin:25px 0 0; color:#5c7381; font-size:16px; line-height:1.75; }
.case-proof-summary__metrics { margin:0; display:grid; grid-template-columns:repeat(3,1fr); align-self:start; border-top:1px solid #bed1db; border-left:1px solid #bed1db; }
.case-proof-summary__metrics div { min-width:0; padding:25px 15px; border-right:1px solid #bed1db; border-bottom:1px solid #bed1db; background:#fff; }
.case-proof-summary__metrics dt { color:#123b52; font-size:clamp(30px,3vw,46px); line-height:1; letter-spacing:-.04em; }
.case-proof-summary__metrics dd { margin:9px 0 0; color:#66808e; font-size:10px; line-height:1.45; }
.case-proof-summary__note { grid-column:1/-1; padding:25px 28px; display:grid; grid-template-columns:190px minmax(260px,.6fr) minmax(320px,1fr); gap:25px; align-items:start; border-top:1px solid #bad1dc; border-bottom:1px solid #d1e0e7; background:#fff; }
.case-proof-summary__note span { color:var(--accent); font:500 9px 'DM Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
.case-proof-summary__note strong { color:#1d3543; font-size:18px; font-weight:550; }
.case-proof-summary__note p { margin:0; color:#667d89; font-size:13px; line-height:1.65; }

.case-section-heading { max-width:1380px; margin-inline:auto; }
.case-section-heading.inverse h2 { color:#eef8fc; }
.case-section-heading.inverse > p:last-child { color:#91a9b5; }
.case-entity-deep,.case-team-model,.case-practice,.case-deliverables { padding:clamp(82px,9vw,138px) clamp(24px,6vw,92px); background:#f4f8fa; }
.case-entity-deep__list { margin-top:55px; border-top:1px solid #b9ced8; }
.case-entity-deep details { border-bottom:1px solid #c6d7df; background:rgba(255,255,255,.64); }
.case-entity-deep summary { min-height:102px; padding:22px 24px; display:grid; grid-template-columns:180px 1fr auto; gap:24px; align-items:center; cursor:pointer; list-style:none; }
.case-entity-deep summary::-webkit-details-marker { display:none; }
.case-entity-deep summary span { color:var(--accent); font:500 9px 'DM Mono',monospace; letter-spacing:.11em; text-transform:uppercase; }
.case-entity-deep summary strong { color:#1b3341; font-size:clamp(18px,1.7vw,24px); line-height:1.35; font-weight:540; }
.case-entity-deep summary i { width:34px; height:34px; display:grid; place-items:center; color:#147da9; border:1px solid #b7d0dc; font-style:normal; transition:transform .2s ease; }
.case-entity-deep details[open] summary i { transform:rotate(45deg); }
.case-entity-deep__body { padding:0 24px 30px 228px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.case-entity-deep__body article { min-width:0; padding:22px; border:1px solid #d1dfe5; background:#fff; }
.case-entity-deep__body h3 { margin:0 0 13px; color:#223a47; font-size:17px; font-weight:560; }
.case-entity-deep__body p { margin:0; color:#607784; font-size:13px; line-height:1.72; }

.case-evidence-matrix,.case-monitoring { padding:clamp(82px,9vw,138px) clamp(24px,6vw,92px); color:#edf8fc; background:linear-gradient(145deg,#061522,#092335); border-color:rgba(112,185,219,.17); }
.case-evidence-matrix__grid { max-width:1380px; margin:58px auto 0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid rgba(113,195,229,.18); border-left:1px solid rgba(113,195,229,.18); }
.case-evidence-matrix__grid article { min-width:0; min-height:300px; padding:26px; border-right:1px solid rgba(113,195,229,.18); border-bottom:1px solid rgba(113,195,229,.18); }
.case-evidence-matrix__grid article > span,.case-team-model__grid article > span,.case-deliverables__grid article > span { color:#69d5f2; font:500 9px 'DM Mono',monospace; letter-spacing:.1em; }
.case-evidence-matrix__grid h3 { margin:66px 0 16px; font-size:26px; line-height:1.08; font-weight:530; letter-spacing:-.035em; }
.case-evidence-matrix__grid p { margin:0; color:#9db4c0; font-size:13px; line-height:1.68; }
.case-evidence-matrix__grid small { margin-top:23px; padding-top:14px; display:block; color:#d1e3ea; border-top:1px solid rgba(113,195,229,.13); font-size:11px; line-height:1.55; }

.case-team-model__grid { margin-top:58px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid #bfd0d8; border-left:1px solid #bfd0d8; }
.case-team-model__grid article { min-width:0; min-height:430px; padding:26px; border-right:1px solid #bfd0d8; border-bottom:1px solid #bfd0d8; background:#fff; }
.case-team-model__grid article > span,.case-deliverables__grid article > span { color:var(--accent); }
.case-team-model__grid h3 { margin:62px 0 17px; color:#1d3542; font-size:25px; line-height:1.08; font-weight:530; letter-spacing:-.04em; }
.case-team-model__grid p { margin:0; color:#5d7480; font-size:13px; line-height:1.7; }
.case-team-model__grid ul { margin:27px 0 0; padding:0; list-style:none; }
.case-team-model__grid li { padding:9px 0; color:#314d5b; border-top:1px solid #dbe5e9; font-size:11px; line-height:1.45; }

.case-practice { background:#fff; }
.case-practice__grid { margin-top:58px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(340px,.75fr); gap:22px; }
.case-practice__playbook,.case-practice__sowsof { min-width:0; padding:30px; border:1px solid #cbdbe2; background:#f7fafb; }
.case-practice__playbook > span,.case-practice__sowsof > span,.case-monitoring__columns article > span,.case-file-standard span { color:var(--accent); font:500 9px 'DM Mono',monospace; letter-spacing:.11em; text-transform:uppercase; }
.case-practice__playbook ol { margin:34px 0 0; padding:0; list-style:none; counter-reset:screening; }
.case-practice__playbook li { counter-increment:screening; padding:16px 0 16px 52px; position:relative; color:#435e6c; border-top:1px solid #d5e2e7; font-size:13px; line-height:1.62; }
.case-practice__playbook li::before { content:counter(screening,decimal-leading-zero); position:absolute; left:0; color:#1485b1; font:500 10px 'DM Mono',monospace; }
.case-practice__sowsof article { margin-top:25px; padding:24px; background:#fff; border:1px solid #d5e2e7; }
.case-practice__sowsof h3 { margin:0 0 9px; color:#203946; font-size:23px; font-weight:540; }
.case-practice__sowsof p { margin:0; color:#506a77; font-size:14px; line-height:1.6; }
.case-practice__sowsof small { margin-top:13px; display:block; color:#748994; font-size:11px; line-height:1.55; }

.case-monitoring__columns { max-width:1380px; margin:58px auto 0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.case-monitoring__columns article { min-width:0; padding:30px; border:1px solid rgba(110,194,228,.2); background:rgba(9,34,50,.68); }
.case-monitoring__columns article > span { color:#70d7f3; }
.case-monitoring__columns ul { columns:2; column-gap:30px; margin:30px 0 0; padding:0; list-style:none; }
.case-monitoring__columns li { break-inside:avoid; padding:13px 0 13px 17px; position:relative; color:#aec2cb; border-top:1px solid rgba(112,192,224,.12); font-size:12px; line-height:1.55; }
.case-monitoring__columns li::before { content:''; width:5px; height:5px; position:absolute; top:20px; left:0; border-radius:50%; background:#61d5f2; }

.case-deliverables__grid { margin-top:58px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #c6d7df; border-left:1px solid #c6d7df; }
.case-deliverables__grid article { min-width:0; min-height:260px; padding:25px; border-right:1px solid #c6d7df; border-bottom:1px solid #c6d7df; background:#fff; }
.case-deliverables__grid h3 { margin:61px 0 14px; color:#1c3542; font-size:24px; line-height:1.08; font-weight:530; letter-spacing:-.04em; }
.case-deliverables__grid p { margin:0; color:#607581; font-size:13px; line-height:1.68; }
.case-file-standard { margin-top:30px; padding:30px; display:grid; grid-template-columns:minmax(250px,.48fr) minmax(0,1.52fr); gap:40px; border:1px solid #c2d5de; background:#fff; }
.case-file-standard h3 { margin:37px 0 0; color:#1c3542; font-size:32px; line-height:1.04; font-weight:530; letter-spacing:-.045em; }
.case-file-standard ul { margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; border-top:1px solid #d3e0e5; border-left:1px solid #d3e0e5; }
.case-file-standard li { min-width:0; padding:14px; color:#4f6976; border-right:1px solid #d3e0e5; border-bottom:1px solid #d3e0e5; font-size:11px; line-height:1.45; }

.case-boundary { padding:clamp(75px,8vw,120px) clamp(24px,6vw,92px); display:grid; grid-template-columns:minmax(230px,.42fr) minmax(0,1.2fr); gap:clamp(45px,9vw,150px); color:#dceaf0; background:#06131d; border-color:rgba(110,184,217,.16); }
.case-boundary__label strong { margin-top:48px; display:block; color:#6f8d9b; font:500 12px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.1em; }
.case-boundary__copy h2 { max-width:850px; margin:0; color:#eff8fb; font-size:clamp(40px,4.5vw,68px); line-height:.98; font-weight:520; letter-spacing:-.05em; }
.case-boundary__copy p { max-width:860px; margin:24px 0 0; color:#8fa6b1; font-size:14px; line-height:1.75; }

@media (max-width:1180px) {
  .proof-home__intro,.team-proof__intro { grid-template-columns:1fr; gap:24px; }
  .proof-home__intro .section-kicker,.team-proof__intro .section-kicker { grid-column:auto; }
  .proof-home__case { grid-template-columns:1fr; }
  .team-proof__grid--four,.case-team-model__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .industry-proof { grid-template-columns:minmax(0,1fr) minmax(280px,.5fr); gap:55px; }
  .case-proof-summary { grid-template-columns:1fr; }
  .case-proof-summary__note { grid-template-columns:160px minmax(230px,.55fr) 1fr; }
  .case-entity-deep__body { padding-left:24px; }
}

@media (max-width:900px) {
  .proof-home__team,.team-proof__grid,.case-evidence-matrix__grid,.case-deliverables__grid { grid-template-columns:1fr; }
  .proof-home__team article,.team-proof__grid article,.case-evidence-matrix__grid article,.case-deliverables__grid article { min-height:0; }
  .proof-home__team h3,.team-proof__grid h3,.case-evidence-matrix__grid h3,.case-deliverables__grid h3 { margin-top:38px; }
  .team-proof__footer { grid-template-columns:1fr; }
  .industry-proof,.case-practice__grid,.case-boundary { grid-template-columns:1fr; }
  .industry-proof__boundary strong { margin-top:28px; }
  .case-proof-summary__note { grid-template-columns:1fr; gap:10px; }
  .case-entity-deep summary { grid-template-columns:150px 1fr auto; }
  .case-entity-deep__body { grid-template-columns:1fr; }
  .case-monitoring__columns { grid-template-columns:1fr; }
  .case-file-standard { grid-template-columns:1fr; }
}

@media (max-width:640px) {
  .proof-home,.team-proof,.industry-proof,.case-proof-summary,.case-entity-deep,.case-evidence-matrix,.case-team-model,.case-practice,.case-monitoring,.case-deliverables,.case-boundary { padding-left:17px; padding-right:17px; }
  .proof-home__intro h2,.team-proof__intro h2,.case-proof-summary__lead h2,.case-section-heading h2 { font-size:clamp(39px,11.5vw,56px); }
  .proof-home__case { padding:24px 19px; }
  .proof-home__case-signals { grid-template-columns:1fr; }
  .proof-home__case-copy h3 { font-size:clamp(32px,10vw,45px); }
  .team-proof__grid--four,.case-team-model__grid { grid-template-columns:1fr; }
  .team-proof__grid article,.case-team-model__grid article { min-height:0; }
  .team-proof__grid h3,.case-team-model__grid h3 { margin-top:36px; }
  .team-proof__footer { padding:24px 19px; }
  .team-proof__footer > a,.team-proof__links a { width:100%; }
  .industry-proof__signals { flex-direction:column; align-items:stretch; }
  .case-proof-summary__metrics { grid-template-columns:1fr; }
  .case-entity-deep summary { min-height:0; padding:22px 18px; grid-template-columns:1fr auto; gap:9px 16px; }
  .case-entity-deep summary span { grid-column:1/-1; }
  .case-entity-deep__body { padding:0 18px 22px; }
  .case-evidence-matrix__grid article,.case-deliverables__grid article { padding:22px 19px; }
  .case-practice__playbook,.case-practice__sowsof,.case-monitoring__columns article,.case-file-standard { padding:24px 19px; }
  .case-monitoring__columns ul { columns:1; }
  .case-file-standard ul { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion:reduce) {
  .proof-home__case { transition:none; }
}



/* CX24 v34 — focused single homepage hero */
.page-home .home-single-hero {
  width: 100%;
  max-width: var(--max);
  min-height: calc(100svh - 84px);
  margin: auto;
  position: relative;
  isolation: isolate;
  color: #edf8fd;
  background: #04111b;
  border-inline: 1px solid rgba(111,187,224,.16);
  border-bottom: 1px solid rgba(111,187,224,.2);
  overflow: hidden;
}
.home-single-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(90deg,rgba(3,12,19,.99) 0%,rgba(3,12,19,.96) 35%,rgba(3,12,19,.76) 58%,rgba(3,12,19,.24) 100%),
    linear-gradient(180deg,rgba(3,12,19,.18) 0%,rgba(3,12,19,.22) 54%,rgba(3,12,19,.96) 100%);
}
.home-single-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .2;
  background-image: linear-gradient(rgba(134,204,236,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(134,204,236,.1) 1px,transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(90deg,#000,transparent 60%);
}
.home-single-hero__visual {
  position: absolute;
  inset: 0 0 0 28%;
  z-index: -2;
  display: block;
  overflow: hidden;
  background: radial-gradient(circle at 74% 42%,rgba(35,112,150,.28),transparent 46%);
}
.home-single-hero__visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: right center;
  filter: saturate(.82) contrast(1.04) brightness(.78);
}
.home-single-hero__shell {
  width: 100%;
  min-height: calc(100svh - 84px);
  padding: clamp(54px,6.2vw,94px) clamp(28px,5vw,78px) 68px;
  display: grid;
  grid-template-columns: minmax(0,1.13fr) minmax(330px,.67fr);
  grid-template-rows: minmax(0,1fr) auto;
  column-gap: clamp(42px,5vw,78px);
  row-gap: clamp(42px,5vw,72px);
}
.home-single-hero__copy {
  min-width: 0;
  max-width: 850px;
  align-self: center;
}
.home-single-hero__eyebrow {
  margin: 0 0 30px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: #89a8b9;
  font: 500 10px 'DM Mono',monospace;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.home-single-hero__eyebrow span {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  color: var(--cyan);
  border: 1px solid rgba(0,200,244,.34);
  border-radius: 50%;
}
.home-single-hero__copy h1 {
  max-width: 820px;
  margin: 0;
  color: #f3fbff;
  font-size: clamp(48px,5.25vw,80px);
  line-height: .98;
  font-weight: 500;
  letter-spacing: -.057em;
  text-wrap: balance;
}
.home-single-hero__copy h1 em {
  display: block;
  color: var(--cyan);
  font-style: normal;
}
.home-single-hero__lead {
  max-width: 720px;
  margin: 30px 0 0;
  color: #b4c8d4;
  font-size: clamp(15px,1.15vw,18px);
  line-height: 1.72;
}
.home-single-hero__actions {
  margin-top: 34px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.home-single-hero__actions .button {
  min-width: 205px;
}
.home-single-hero__presence {
  margin: 30px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 13px 34px;
  list-style: none;
}
.home-single-hero__presence li {
  min-width: 128px;
  display: grid;
  gap: 3px;
}
.home-single-hero__presence span {
  color: #668493;
  font: 500 8px 'DM Mono',monospace;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.home-single-hero__presence strong {
  color: #dcebf2;
  font-size: 12px;
  font-weight: 500;
}
.home-single-hero__strengths {
  min-width: 0;
  align-self: center;
  padding: 26px 28px 10px;
  border: 1px solid rgba(131,194,224,.22);
  background: rgba(4,17,27,.78);
  box-shadow: 0 32px 70px rgba(0,0,0,.24);
  backdrop-filter: blur(18px);
}
.home-single-hero__strengths header {
  padding-bottom: 22px;
}
.home-single-hero__strengths header p,
.home-single-hero__capabilities header p {
  margin: 0 0 7px;
  color: var(--cyan);
  font: 500 9px 'DM Mono',monospace;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.home-single-hero__strengths header h2 {
  max-width: 360px;
  margin: 0;
  color: #f0f9fd;
  font-size: clamp(22px,2vw,30px);
  line-height: 1.08;
  font-weight: 500;
  letter-spacing: -.035em;
}
.home-single-hero__strengths article {
  min-width: 0;
  padding: 19px 0;
  display: grid;
  grid-template-columns: 30px minmax(0,1fr);
  gap: 13px;
  border-top: 1px solid rgba(136,195,223,.17);
}
.home-single-hero__strengths article > span {
  color: #4d7183;
  font: 500 9px 'DM Mono',monospace;
}
.home-single-hero__strengths h3 {
  margin: 0;
  color: #dff1f8;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 600;
}
.home-single-hero__strengths article p {
  margin: 7px 0 0;
  color: #8ea8b6;
  font-size: 12px;
  line-height: 1.62;
}
.home-single-hero__capabilities {
  min-width: 0;
  grid-column: 1 / -1;
  border: 1px solid rgba(132,196,226,.2);
  background: rgba(4,15,24,.88);
  backdrop-filter: blur(18px);
}
.home-single-hero__capabilities > header {
  min-height: 64px;
  padding: 12px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  border-bottom: 1px solid rgba(132,196,226,.18);
}
.home-single-hero__capabilities header > div {
  display: flex;
  align-items: baseline;
  gap: 13px;
}
.home-single-hero__capabilities header p {
  margin: 0;
}
.home-single-hero__capabilities header h2 {
  margin: 0;
  color: #eaf7fb;
  font-size: 19px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: -.02em;
}
.home-single-hero__capabilities header > a {
  color: #8faab8;
  font-size: 11px;
}
.home-single-hero__capabilities header > a:hover {
  color: var(--cyan);
}
.home-single-hero__capability-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
}
.home-single-hero__capability-grid > a {
  min-width: 0;
  min-height: 154px;
  padding: 20px;
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  border-right: 1px solid rgba(132,196,226,.18);
  transition: background-color .22s ease;
}
.home-single-hero__capability-grid > a:last-child {
  border-right: 0;
}
.home-single-hero__capability-grid > a:hover {
  background: rgba(0,200,244,.065);
}
.home-single-hero__capability-grid span {
  color: #58798a;
  font: 500 8px 'DM Mono',monospace;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.home-single-hero__capability-grid h3 {
  margin: 9px 0 8px;
  color: #f0f9fd;
  font-size: 19px;
  line-height: 1.1;
  font-weight: 500;
}
.home-single-hero__capability-grid p {
  max-width: 390px;
  margin: 0;
  color: #829eac;
  font-size: 11px;
  line-height: 1.55;
}
.home-single-hero__capability-grid strong {
  margin-top: 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--cyan);
  font-size: 10px;
  font-weight: 600;
}
.home-single-hero__capability-grid i,
.home-single-hero__next i {
  font-style: normal;
}
.home-single-hero__next {
  min-height: 42px;
  padding: 0 18px;
  position: absolute;
  right: clamp(28px,5vw,78px);
  bottom: 13px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: #6f8c9a;
  font: 500 8px 'DM Mono',monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.home-single-hero__next strong {
  color: #c8dce6;
  font-weight: 500;
}
.home-single-hero__next i {
  color: var(--cyan);
  font-size: 14px;
}

@media (max-width: 1180px) {
  .home-single-hero__shell {
    grid-template-columns: minmax(0,1fr) minmax(310px,.72fr);
    column-gap: 36px;
  }
  .home-single-hero__copy h1 { font-size: clamp(46px,5.6vw,68px); }
  .home-single-hero__visual { left: 22%; }
}

@media (max-width: 920px) {
  .page-home .home-single-hero { min-height: auto; }
  .home-single-hero::before {
    background: linear-gradient(180deg,rgba(3,12,19,.42) 0%,rgba(3,12,19,.82) 34%,rgba(3,12,19,.99) 61%,#030c13 100%);
  }
  .home-single-hero::after { mask-image: linear-gradient(180deg,#000,transparent 54%); }
  .home-single-hero__visual {
    inset: 0 0 auto;
    height: min(64vw,560px);
  }
  .home-single-hero__visual img { object-position: center top; }
  .home-single-hero__shell {
    min-height: auto;
    padding-top: clamp(240px,51vw,430px);
    grid-template-columns: minmax(0,1fr);
    grid-template-rows: auto;
    row-gap: 34px;
  }
  .home-single-hero__copy { max-width: 780px; }
  .home-single-hero__strengths {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    align-items: start;
  }
  .home-single-hero__strengths header { grid-column: 1 / -1; }
  .home-single-hero__strengths article {
    padding: 18px 16px 18px 0;
    grid-template-columns: 25px minmax(0,1fr);
    border-right: 1px solid rgba(136,195,223,.17);
  }
  .home-single-hero__strengths article:last-child { padding-left: 16px; padding-right: 0; border-right: 0; }
  .home-single-hero__strengths article:nth-of-type(2) { padding-left: 16px; }
}

@media (max-width: 760px) {
  .home-single-hero__shell {
    padding: clamp(200px,65vw,320px) 20px 70px;
    row-gap: 28px;
  }
  .home-single-hero__visual { height: min(78vw,410px); }
  .home-single-hero__eyebrow { margin-bottom: 21px; line-height: 1.5; }
  .home-single-hero__copy h1 { font-size: clamp(40px,11.2vw,58px); }
  .home-single-hero__lead { margin-top: 23px; font-size: 15px; line-height: 1.66; }
  .home-single-hero__actions { margin-top: 27px; }
  .home-single-hero__actions .button { min-width: 0; flex: 1 1 210px; }
  .home-single-hero__presence { margin-top: 24px; }
  .home-single-hero__strengths {
    padding: 23px 21px 6px;
    display: block;
  }
  .home-single-hero__strengths article,
  .home-single-hero__strengths article:nth-of-type(2),
  .home-single-hero__strengths article:last-child {
    padding: 17px 0;
    border-right: 0;
  }
  .home-single-hero__capabilities > header { align-items: flex-start; }
  .home-single-hero__capabilities header > div { display: block; }
  .home-single-hero__capabilities header h2 { margin-top: 5px; }
  .home-single-hero__capability-grid { grid-template-columns: 1fr; }
  .home-single-hero__capability-grid > a {
    min-height: 0;
    grid-template-columns: minmax(0,1fr) auto;
    grid-template-rows: auto auto auto;
    column-gap: 20px;
    border-right: 0;
    border-bottom: 1px solid rgba(132,196,226,.18);
  }
  .home-single-hero__capability-grid > a:last-child { border-bottom: 0; }
  .home-single-hero__capability-grid h3,
  .home-single-hero__capability-grid p { grid-column: 1; }
  .home-single-hero__capability-grid strong { grid-column: 2; grid-row: 1 / 4; margin: 0; align-self: center; gap: 12px; }
  .home-single-hero__next { right: 20px; }
}

@media (max-width: 520px) {
  .home-single-hero__shell { padding-inline: 17px; }
  .home-single-hero__copy h1 { font-size: clamp(38px,12vw,50px); }
  .home-single-hero__actions { display: grid; grid-template-columns: 1fr; }
  .home-single-hero__actions .button { width: 100%; }
  .home-single-hero__presence { display: grid; grid-template-columns: 1fr 1.4fr; gap: 16px; }
  .home-single-hero__capabilities > header { display: block; }
  .home-single-hero__capabilities header > a { margin-top: 13px; display: inline-block; }
  .home-single-hero__capability-grid p { display: none; }
  .home-single-hero__capability-grid > a { grid-template-rows: auto auto; }
  .home-single-hero__capability-grid strong { grid-row: 1 / 3; }
  .home-single-hero__next span { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .home-single-hero__capability-grid > a { transition: none; }
}

/* CX24 v35 — keep the desktop mega-menu above the revealed footer. */
@media (min-width: 901px) {
  .page-home .page-stage {
    overflow: visible;
  }
}


/* CX24 v36 enterprise refinement */
.enterprise-site-header { grid-template-columns: minmax(225px,300px) minmax(590px,1fr) auto; gap: 16px; }
.enterprise-site-header .primary-nav { padding: 4px; }
.enterprise-site-header .primary-nav > a,
.enterprise-site-header .primary-nav > button { padding-inline: clamp(8px,1vw,15px); white-space: nowrap; }
.enterprise-site-header .primary-nav > .enterprise-nav-link { min-height: 38px; }
.mega-menu[data-active-menu="what-we-do"] { --menu-accent: #00c8f4; }
.site-footer { height: auto; min-height: var(--footer-h); }
.site-footer .footer-top { grid-template-columns: 245px minmax(320px,1fr) auto; }
.site-footer .footer-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.site-footer .footer-bottom { align-items: center; }

.enterprise-home-hero,
.enterprise-industries,
.enterprise-credentials,
.enterprise-capabilities,
.enterprise-proof,
.enterprise-why,
.enterprise-ecosystem,
.enterprise-delivery,
.enterprise-assurance,
.enterprise-insights,
.enterprise-final-cta { max-width: var(--max); margin-inline: auto; border-inline: 1px solid rgba(108,174,213,.14); }
.enterprise-home-hero { min-height: min(820px,calc(100svh - 84px)); position: relative; isolation: isolate; overflow: hidden; color: #eef8fd; background: #04101a; }
.enterprise-home-hero__visual { width: min(63%,960px); position: absolute; inset: 0 0 0 auto; z-index: -3; display: block; }
.enterprise-home-hero__visual img { width: 100%; height: 100%; display: block; object-fit: contain; object-position: right center; opacity: .78; }
.enterprise-home-hero__shade { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,#04101a 0 39%,rgba(4,16,26,.94) 51%,rgba(4,16,26,.58) 73%,rgba(4,16,26,.28)),linear-gradient(180deg,rgba(4,16,26,.08),#04101a 98%); }
.enterprise-home-hero__content { min-height: inherit; padding: clamp(66px,7vw,108px) clamp(28px,5.3vw,82px) 58px; display: grid; grid-template-columns: minmax(0,1.15fr) minmax(300px,.55fr); gap: clamp(42px,6vw,92px); align-items: end; }
.enterprise-home-hero__copy { max-width: 910px; }
.enterprise-kicker { margin: 0 0 22px; color: var(--cyan); font: 500 10px 'DM Mono',monospace; letter-spacing: .12em; text-transform: uppercase; }
.enterprise-home-hero h1 { max-width: 950px; margin: 0; color: #f1f8fc; font-size: clamp(54px,5.65vw,88px); line-height: .97; font-weight: 500; letter-spacing: -.064em; }
.enterprise-home-hero__copy > p:not(.enterprise-kicker) { max-width: 760px; margin: 28px 0 0; color: #afc2cd; font-size: clamp(17px,1.35vw,21px); line-height: 1.66; }
.enterprise-actions { margin-top: 34px; display: flex; flex-wrap: wrap; gap: 10px; }
.enterprise-button { min-height: 55px; min-width: 190px; padding: 0 18px; display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; color: #d8e8f0; border: 1px solid rgba(139,199,229,.34); font-size: 13px; font-weight: 600; }
.enterprise-button:hover { color: white; border-color: var(--cyan); background: rgba(0,200,244,.08); }
.enterprise-button--primary { color: #041018; border-color: var(--cyan); background: var(--cyan); }
.enterprise-button--primary:hover { color: #041018; background: #7ee8ff; }
.enterprise-hero-facts { max-width: 620px; margin: 46px 0 0; padding-top: 18px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; border-top: 1px solid rgba(125,190,221,.2); }
.enterprise-hero-facts div { display: grid; gap: 5px; }
.enterprise-hero-facts dt { color: #698595; font: 500 9px 'DM Mono',monospace; letter-spacing: .09em; text-transform: uppercase; }
.enterprise-hero-facts dd { margin: 0; color: #d8e7ee; font-size: 14px; }
.enterprise-home-hero__proof { padding: 26px; align-self: end; background: rgba(4,18,29,.82); border: 1px solid rgba(113,189,226,.24); backdrop-filter: blur(18px); }
.enterprise-home-hero__proof > span { color: var(--cyan); font: 500 9px 'DM Mono',monospace; letter-spacing: .11em; text-transform: uppercase; }
.enterprise-home-hero__proof h2 { margin: 16px 0 20px; color: #eaf5fa; font-size: clamp(25px,2.1vw,34px); line-height: 1.08; font-weight: 500; letter-spacing: -.045em; }
.enterprise-home-hero__proof ol { margin: 0; padding: 0; list-style: none; }
.enterprise-home-hero__proof li { padding: 15px 0; display: grid; gap: 5px; border-top: 1px solid rgba(119,185,217,.15); }
.enterprise-home-hero__proof strong { color: #d9e8ef; font-size: 12px; font-weight: 600; }
.enterprise-home-hero__proof small { color: #7892a1; font-size: 11px; line-height: 1.58; }

.enterprise-industries,
.enterprise-capabilities,
.enterprise-ecosystem,
.enterprise-delivery,
.enterprise-insights { padding: clamp(76px,8vw,124px) clamp(28px,5vw,80px); background: #f4f8fa; border-bottom: 1px solid var(--line); }
.enterprise-section-heading { display: grid; grid-template-columns: .28fr minmax(0,1fr) minmax(250px,.5fr); gap: clamp(28px,5vw,78px); align-items: start; }
.enterprise-section-heading .enterprise-kicker { margin-top: 9px; color: #087fbb; }
.enterprise-section-heading h2 { max-width: 830px; margin: 0; color: #122a39; font-size: clamp(41px,4.4vw,68px); line-height: 1.01; font-weight: 500; letter-spacing: -.057em; }
.enterprise-section-heading > p:last-child { max-width: 470px; margin: 0; color: #5b7280; font-size: 15px; line-height: 1.72; }
.enterprise-industry-grid { margin-top: 64px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid #cbdbe3; border-left: 1px solid #cbdbe3; }
.enterprise-industry-card { min-height: 390px; position: relative; overflow: hidden; color: white; border-right: 1px solid #cbdbe3; border-bottom: 1px solid #cbdbe3; background: #071521; }
.enterprise-industry-card picture { position: absolute; inset: 0; }
.enterprise-industry-card img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; transition: transform .5s cubic-bezier(.2,.7,.2,1),opacity .3s ease; }
.enterprise-industry-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(3,11,17,.08),rgba(3,11,17,.88) 84%); }
.enterprise-industry-card > div { min-height: 390px; padding: 26px; position: relative; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; }
.enterprise-industry-card span { color: #8ce9ff; font: 500 9px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }
.enterprise-industry-card h3 { margin: auto 0 12px; font-size: clamp(29px,3vw,43px); line-height: 1; font-weight: 500; letter-spacing: -.05em; }
.enterprise-industry-card p { max-width: 610px; margin: 0; color: #b4c6cf; font-size: 13px; line-height: 1.65; }
.enterprise-industry-card strong { margin-top: 22px; display: flex; gap: 22px; color: white; font-size: 12px; font-weight: 600; }
.enterprise-industry-card i { color: var(--cyan); font-style: normal; }
.enterprise-industry-card:hover img { transform: scale(1.035); opacity: .86; }

.enterprise-credentials { padding: 38px clamp(28px,5vw,80px); display: grid; grid-template-columns: .7fr 1.6fr .48fr; gap: 45px; align-items: center; color: white; background: #061522; border-bottom: 1px solid rgba(108,174,213,.18); }
.enterprise-credentials h2 { margin: 0; color: #eef8fd; font-size: 28px; line-height: 1.12; font-weight: 500; letter-spacing: -.04em; }
.enterprise-credentials dl { margin: 0; display: grid; grid-template-columns: repeat(4,1fr); border-left: 1px solid rgba(110,181,217,.18); }
.enterprise-credentials dl div { padding: 12px 18px; border-right: 1px solid rgba(110,181,217,.18); }
.enterprise-credentials dt { color: var(--cyan); font: 500 25px 'DM Mono',monospace; }
.enterprise-credentials dd { margin: 7px 0 0; color: #829aa8; font-size: 10px; line-height: 1.4; }
.enterprise-credentials > p { margin: 0; color: #627d8d; font-size: 10px; line-height: 1.55; }

.enterprise-capabilities { background: #fff; }
.enterprise-capability-grid { margin-top: 65px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.enterprise-capability-grid > a { min-width: 0; display: flex; flex-direction: column; color: #122a39; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #f8fbfc; transition: transform .25s ease,box-shadow .25s ease; }
.enterprise-capability-grid picture { aspect-ratio: 1.45; display: block; overflow: hidden; background: #061522; }
.enterprise-capability-grid img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; transition: transform .45s ease; }
.enterprise-capability-grid > a > div { min-height: 330px; padding: 25px; display: flex; flex-direction: column; }
.enterprise-capability-grid span { color: #087fbb; font: 500 9px 'DM Mono',monospace; letter-spacing: .09em; text-transform: uppercase; }
.enterprise-capability-grid h3 { margin: 42px 0 15px; font-size: clamp(28px,2.6vw,40px); line-height: 1; font-weight: 500; letter-spacing: -.05em; }
.enterprise-capability-grid p { margin: 0; color: #5d7482; font-size: 13px; line-height: 1.68; }
.enterprise-capability-grid strong { margin-top: auto; padding-top: 30px; display: flex; justify-content: space-between; color: #126b96; font-size: 12px; }
.enterprise-capability-grid i { font-style: normal; }
.enterprise-capability-grid > a:hover { z-index: 2; transform: translateY(-5px); box-shadow: 0 26px 60px rgba(16,45,63,.13); }
.enterprise-capability-grid > a:hover img { transform: scale(1.035); }

.enterprise-proof { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); color: white; background: #05131e; border-bottom: 1px solid rgba(108,174,213,.16); }
.enterprise-proof picture { min-height: 620px; display: block; overflow: hidden; }
.enterprise-proof picture img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; opacity: .78; }
.enterprise-proof > div { padding: clamp(58px,7vw,105px) clamp(28px,5vw,80px); display: flex; flex-direction: column; justify-content: center; }
.enterprise-proof h2 { max-width: 760px; margin: 0; color: #eff8fc; font-size: clamp(40px,4.4vw,67px); line-height: 1.01; font-weight: 500; letter-spacing: -.058em; }
.enterprise-proof > div > p:not(.enterprise-kicker) { max-width: 700px; margin: 25px 0 0; color: #8da5b2; font-size: 15px; line-height: 1.73; }
.enterprise-proof dl { margin: 36px 0; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(104,176,213,.17); border-left: 1px solid rgba(104,176,213,.17); }
.enterprise-proof dl div { padding: 18px; border-right: 1px solid rgba(104,176,213,.17); border-bottom: 1px solid rgba(104,176,213,.17); }
.enterprise-proof dt { color: var(--cyan); font: 500 25px 'DM Mono',monospace; }
.enterprise-proof dd { margin: 6px 0 0; color: #8399a6; font-size: 10px; }
.enterprise-proof small { max-width: 680px; margin-top: 20px; color: #607c8c; font-size: 10px; line-height: 1.55; }
.enterprise-text-link { width: max-content; max-width: 100%; padding-bottom: 7px; display: inline-flex; gap: 28px; color: inherit; border-bottom: 1px solid rgba(0,200,244,.55); font-size: 12px; font-weight: 600; }
.enterprise-text-link span { color: var(--cyan); }

.enterprise-why { display: grid; grid-template-columns: minmax(0,1.16fr) minmax(350px,.84fr); background: white; border-bottom: 1px solid var(--line); }
.enterprise-why__copy { padding: clamp(76px,8vw,124px) clamp(28px,5vw,80px); }
.enterprise-why h2 { max-width: 850px; margin: 0; color: #122a39; font-size: clamp(42px,4.6vw,70px); line-height: 1; font-weight: 500; letter-spacing: -.06em; }
.enterprise-why__copy > p:not(.enterprise-kicker) { max-width: 780px; margin: 26px 0 0; color: #5c7482; font-size: 15px; line-height: 1.75; }
.enterprise-why-grid { margin: 48px 0 35px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.enterprise-why-grid article { min-height: 220px; padding: 20px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.enterprise-why-grid span { color: #0a84bd; font: 500 9px 'DM Mono',monospace; }
.enterprise-why-grid h3 { margin: 44px 0 12px; color: #17303f; font-size: 19px; font-weight: 600; }
.enterprise-why-grid p { margin: 0; color: #607784; font-size: 12px; line-height: 1.65; }
.enterprise-why .enterprise-text-link { color: #135f86; }
.enterprise-why > picture { min-height: 100%; display: block; overflow: hidden; background: #071721; }
.enterprise-why > picture img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; opacity: .9; }

.enterprise-ecosystem { color: white; background: #061522; border-bottom-color: rgba(108,174,213,.16); }
.enterprise-ecosystem .enterprise-section-heading h2 { color: #eef8fd; }
.enterprise-ecosystem .enterprise-section-heading > p:last-child { color: #8099a7; }
.enterprise-ecosystem > div { margin-top: 62px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid rgba(108,174,213,.17); border-left: 1px solid rgba(108,174,213,.17); }
.enterprise-ecosystem article { min-height: 310px; padding: 25px; border-right: 1px solid rgba(108,174,213,.17); border-bottom: 1px solid rgba(108,174,213,.17); }
.enterprise-ecosystem article span { color: var(--cyan); font: 500 9px 'DM Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }
.enterprise-ecosystem h3 { margin: 70px 0 18px; color: #e3f0f6; font-size: 26px; line-height: 1.1; font-weight: 500; }
.enterprise-ecosystem article p { margin: 0; color: #849ca9; font-size: 13px; line-height: 2; }

.enterprise-delivery { background: #fff; }
.enterprise-delivery > div { margin: 62px 0 35px; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.enterprise-delivery article { min-height: 330px; padding: 23px; display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.enterprise-delivery article span { color: #0a83bd; font: 500 9px 'DM Mono',monospace; }
.enterprise-delivery h3 { margin: auto 0 17px; color: #17303f; font-size: 25px; line-height: 1.1; font-weight: 500; }
.enterprise-delivery article p { margin: 0; color: #5d7482; font-size: 13px; line-height: 1.67; }
.enterprise-delivery > .enterprise-text-link { color: #135f86; }

.enterprise-assurance { padding: clamp(72px,7vw,108px) clamp(28px,5vw,80px); display: grid; grid-template-columns: minmax(270px,.58fr) minmax(0,1.42fr); gap: clamp(42px,6vw,90px); color: white; background: linear-gradient(140deg,#071b2a,#040c13); border-bottom: 1px solid rgba(108,174,213,.16); }
.enterprise-assurance > div:first-child h2 { max-width: 520px; margin: 0; color: #edf7fb; font-size: clamp(38px,3.8vw,58px); line-height: 1.02; font-weight: 500; letter-spacing: -.055em; }
.enterprise-assurance > div:first-child > p:not(.enterprise-kicker) { max-width: 520px; color: #829aa8; font-size: 14px; line-height: 1.7; }
.enterprise-assurance-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid rgba(108,174,213,.17); border-left: 1px solid rgba(108,174,213,.17); }
.enterprise-assurance-grid article { min-height: 170px; padding: 20px; border-right: 1px solid rgba(108,174,213,.17); border-bottom: 1px solid rgba(108,174,213,.17); }
.enterprise-assurance-grid span { color: #658494; font: 500 8px 'DM Mono',monospace; text-transform: uppercase; letter-spacing: .09em; }
.enterprise-assurance-grid h3 { margin: 42px 0 0; color: #d9eaf1; font-size: 19px; line-height: 1.25; font-weight: 500; }
.enterprise-assurance > p { margin: 0; grid-column: 2; color: #607d8d; font-size: 10px; line-height: 1.65; }
.enterprise-assurance > p strong { color: #91a9b5; }

.enterprise-insights { color: white; background: #05131e; border-bottom-color: rgba(108,174,213,.16); }
.enterprise-insights > header { display: grid; grid-template-columns: 1fr .62fr; gap: 65px; align-items: end; }
.enterprise-insights h2 { max-width: 820px; margin: 0; color: #eff8fc; font-size: clamp(43px,4.5vw,68px); line-height: 1; font-weight: 500; letter-spacing: -.058em; }
.enterprise-insights > header > p { margin: 0; color: #8098a5; font-size: 14px; line-height: 1.73; }
.enterprise-insights > div { margin: 62px 0 35px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid rgba(108,174,213,.17); border-left: 1px solid rgba(108,174,213,.17); }
.enterprise-insights > div > a { min-height: 360px; padding: 23px; display: flex; flex-direction: column; border-right: 1px solid rgba(108,174,213,.17); border-bottom: 1px solid rgba(108,174,213,.17); transition: background .2s ease,transform .2s ease; }
.enterprise-insights > div > a:hover { background: rgba(0,200,244,.055); transform: translateY(-4px); }
.enterprise-insights > div span { color: #5d8194; font: 500 8px 'DM Mono',monospace; letter-spacing: .09em; text-transform: uppercase; }
.enterprise-insights h3 { margin: 75px 0 20px; color: #dcebf2; font-size: clamp(22px,2vw,30px); line-height: 1.1; font-weight: 500; letter-spacing: -.04em; }
.enterprise-insights strong { margin-top: auto; display: flex; justify-content: space-between; color: var(--cyan); font-size: 11px; }

.enterprise-final-cta { min-height: 480px; padding: clamp(76px,8vw,125px) clamp(28px,5vw,80px); color: white; background: radial-gradient(circle at 82% 30%,rgba(0,200,244,.18),transparent 27%),linear-gradient(135deg,#075f9d,#07334f); border-bottom: 1px solid rgba(108,174,213,.2); }
.enterprise-final-cta h2 { max-width: 980px; margin: 0; font-size: clamp(45px,5vw,76px); line-height: .99; font-weight: 500; letter-spacing: -.062em; }
.enterprise-final-cta > p:not(.enterprise-kicker) { max-width: 680px; margin: 24px 0 34px; color: #b5d0de; font-size: 15px; line-height: 1.7; }

@media (max-width: 1280px) {
  .enterprise-site-header { grid-template-columns: 140px minmax(560px,1fr) auto; }
  .enterprise-site-header .brand > span { display: none; }
  .enterprise-site-header .header-cta { padding-inline: 13px; gap: 13px; }
  .enterprise-credentials { grid-template-columns: .6fr 1.5fr; }
  .enterprise-credentials > p { grid-column: 1 / -1; }
}
@media (max-width: 1040px) {
  .enterprise-home-hero__content { grid-template-columns: minmax(0,1fr) 300px; gap: 28px; }
  .enterprise-home-hero h1 { font-size: clamp(48px,6.6vw,70px); }
  .enterprise-section-heading { grid-template-columns: .3fr 1fr; }
  .enterprise-section-heading > p:last-child { grid-column: 2; }
  .enterprise-capability-grid { grid-template-columns: 1fr; }
  .enterprise-capability-grid > a { display: grid; grid-template-columns: minmax(280px,.75fr) minmax(0,1.25fr); }
  .enterprise-capability-grid picture { aspect-ratio: auto; min-height: 360px; }
  .enterprise-delivery > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 900px) {
  .enterprise-site-header { grid-template-columns: 1fr auto; }
  .enterprise-site-header .primary-nav,
  .enterprise-site-header .header-cta { display: none; }
  .enterprise-site-header .menu-toggle { display: flex; }
  .site-footer .footer-top { grid-template-columns: 1fr; }
  .site-footer .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .enterprise-home-hero { min-height: auto; }
  .enterprise-home-hero__visual { width: 100%; height: 55%; inset: 0 0 auto; }
  .enterprise-home-hero__visual img { object-position: center top; }
  .enterprise-home-hero__shade { background: linear-gradient(180deg,rgba(4,16,26,.38),#04101a 48%); }
  .enterprise-home-hero__content { min-height: 900px; padding-top: 240px; grid-template-columns: 1fr; align-items: end; }
  .enterprise-home-hero__proof { max-width: 650px; }
  .enterprise-industry-card > div { min-height: 350px; }
  .enterprise-credentials { grid-template-columns: 1fr; }
  .enterprise-credentials dl { border-top: 1px solid rgba(110,181,217,.18); }
  .enterprise-proof,
  .enterprise-why { grid-template-columns: 1fr; }
  .enterprise-proof picture { min-height: 450px; }
  .enterprise-why > picture { min-height: 560px; }
  .enterprise-ecosystem > div { grid-template-columns: 1fr; }
  .enterprise-ecosystem article { min-height: 230px; }
  .enterprise-assurance { grid-template-columns: 1fr; }
  .enterprise-assurance > p { grid-column: 1; }
  .enterprise-insights > header { grid-template-columns: 1fr; gap: 25px; }
  .enterprise-insights > div { grid-template-columns: 1fr; }
  .enterprise-insights > div > a { min-height: 270px; }
}
@media (max-width: 680px) {
  .site-footer .footer-grid { grid-template-columns: 1fr; }
  .enterprise-home-hero__content { min-height: 920px; padding-inline: 20px; }
  .enterprise-home-hero h1 { font-size: clamp(42px,12vw,58px); }
  .enterprise-actions { display: grid; }
  .enterprise-button { width: 100%; }
  .enterprise-section-heading { grid-template-columns: 1fr; gap: 18px; }
  .enterprise-section-heading > p:last-child { grid-column: 1; }
  .enterprise-industry-grid { grid-template-columns: 1fr; }
  .enterprise-credentials dl { grid-template-columns: repeat(2,1fr); }
  .enterprise-capability-grid > a { display: flex; }
  .enterprise-capability-grid picture { min-height: 260px; }
  .enterprise-capability-grid > a > div { min-height: 280px; }
  .enterprise-proof picture { min-height: 320px; }
  .enterprise-why-grid { grid-template-columns: 1fr; }
  .enterprise-why > picture { min-height: 400px; }
  .enterprise-delivery > div { grid-template-columns: 1fr; }
  .enterprise-delivery article { min-height: 250px; }
  .enterprise-assurance-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .enterprise-industry-card img,
  .enterprise-capability-grid img,
  .enterprise-capability-grid > a,
  .enterprise-insights > div > a { transition: none; }
}
@media (min-width: 901px) {
  .page-home .page-stage { overflow: visible; }
}
/* CX24 v36 shared commercial page structure */
.enterprise-page-guide {
  max-width: var(--max);
  min-height: 72px;
  margin-inline: auto;
  padding: 12px clamp(28px,5vw,80px);
  display: flex;
  align-items: center;
  gap: 8px;
  overflow-x: auto;
  color: #17303f;
  background: #f7fafb;
  border-inline: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  scrollbar-width: thin;
}
.enterprise-page-guide > span {
  margin-right: 12px;
  color: #5c7888;
  font: 500 9px 'DM Mono',monospace;
  letter-spacing: .1em;
  text-transform: uppercase;
  white-space: nowrap;
}
.enterprise-page-guide a {
  min-height: 38px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  color: #466171;
  background: white;
  border: 1px solid #d8e4ea;
  font-size: 11px;
  white-space: nowrap;
}
.enterprise-page-guide a:hover,
.enterprise-page-guide a:focus-visible {
  color: #075f8e;
  border-color: #68bfe5;
}

.enterprise-page-proof,
.enterprise-page-engagement,
.enterprise-industry-commercial,
.enterprise-company-proof,
.enterprise-case-guide {
  max-width: var(--max);
  margin-inline: auto;
  padding: clamp(72px,7.5vw,116px) clamp(28px,5vw,80px);
  border-inline: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.enterprise-page-proof,
.enterprise-company-proof { background: #f3f8fa; }
.enterprise-page-engagement { color: white; background: #061522; border-bottom-color: rgba(108,174,213,.17); }
.enterprise-commercial-heading {
  display: grid;
  grid-template-columns: .28fr minmax(0,1fr) minmax(250px,.5fr);
  gap: clamp(28px,5vw,75px);
  align-items: start;
}
.enterprise-commercial-heading > span {
  margin-top: 8px;
  color: #087fbb;
  font: 500 9px 'DM Mono',monospace;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.enterprise-commercial-heading h2 {
  max-width: 850px;
  margin: 0;
  color: #122b3a;
  font-size: clamp(39px,4.2vw,65px);
  line-height: 1.01;
  font-weight: 500;
  letter-spacing: -.056em;
}
.enterprise-commercial-heading > p {
  max-width: 490px;
  margin: 0;
  color: #5e7482;
  font-size: 14px;
  line-height: 1.74;
}
.enterprise-page-engagement .enterprise-commercial-heading > span { color: var(--cyan); }
.enterprise-page-engagement .enterprise-commercial-heading h2 { color: #edf8fc; }
.enterprise-page-engagement .enterprise-commercial-heading > p { color: #829aa8; }
.enterprise-proof-grid,
.enterprise-engagement-grid {
  margin-top: 58px;
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.enterprise-proof-grid article,
.enterprise-engagement-grid article {
  min-width: 0;
  min-height: 290px;
  padding: 22px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.6);
}
.enterprise-proof-grid span,
.enterprise-engagement-grid span {
  color: #0a84bd;
  font: 500 9px 'DM Mono',monospace;
  letter-spacing: .08em;
}
.enterprise-proof-grid h3,
.enterprise-engagement-grid h3 {
  margin: auto 0 15px;
  color: #18303f;
  font-size: 22px;
  line-height: 1.1;
  font-weight: 550;
  letter-spacing: -.03em;
}
.enterprise-proof-grid p,
.enterprise-engagement-grid p {
  margin: 0;
  color: #5c7482;
  font-size: 12px;
  line-height: 1.68;
}
.enterprise-proof-note {
  max-width: 820px;
  margin: 25px 0 0;
  color: #667e8c;
  font-size: 11px;
  line-height: 1.65;
}
.enterprise-engagement-grid { border-color: rgba(108,174,213,.17); }
.enterprise-engagement-grid article {
  border-color: rgba(108,174,213,.17);
  background: rgba(255,255,255,.015);
}
.enterprise-engagement-grid span { color: var(--cyan); }
.enterprise-engagement-grid h3 { color: #dcecf3; }
.enterprise-engagement-grid p { color: #7f98a6; }

.enterprise-industry-commercial { color: white; background: linear-gradient(145deg,#071b2a,#040c13 78%); border-bottom-color: rgba(108,174,213,.17); }
.enterprise-industry-commercial > header {
  display: grid;
  grid-template-columns: .28fr minmax(0,1fr) minmax(250px,.52fr);
  gap: clamp(28px,5vw,75px);
  align-items: start;
}
.enterprise-industry-commercial > header > span {
  margin-top: 8px;
  color: var(--cyan);
  font: 500 9px 'DM Mono',monospace;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.enterprise-industry-commercial > header h2 {
  max-width: 860px;
  margin: 0;
  color: #eef8fc;
  font-size: clamp(40px,4.3vw,66px);
  line-height: 1.01;
  font-weight: 500;
  letter-spacing: -.057em;
}
.enterprise-industry-commercial > header p {
  margin: 0;
  color: #829aa8;
  font-size: 14px;
  line-height: 1.74;
}
.enterprise-industry-commercial__grid {
  margin-top: 58px;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  border-top: 1px solid rgba(108,174,213,.17);
  border-left: 1px solid rgba(108,174,213,.17);
}
.enterprise-industry-commercial__grid article {
  min-height: 315px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid rgba(108,174,213,.17);
  border-bottom: 1px solid rgba(108,174,213,.17);
}
.enterprise-industry-commercial__grid article > span {
  color: var(--cyan);
  font: 500 9px 'DM Mono',monospace;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.enterprise-industry-commercial__grid h3 {
  margin: 52px 0 16px;
  color: #dcecf3;
  font-size: 28px;
  line-height: 1.08;
  font-weight: 500;
  letter-spacing: -.04em;
}
.enterprise-industry-commercial__grid p {
  margin: 0;
  color: #829aa8;
  font-size: 13px;
  line-height: 1.75;
}
.enterprise-industry-commercial__grid small {
  margin-top: auto;
  padding-top: 24px;
  color: #5f7c8c;
  font-size: 10px;
  line-height: 1.6;
}

.enterprise-company-proof__facts {
  margin-top: 56px;
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.enterprise-company-proof__facts div {
  min-height: 180px;
  padding: 22px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.enterprise-company-proof__facts dt {
  order: 2;
  margin-top: 10px;
  color: #5c7482;
  font-size: 11px;
  line-height: 1.45;
}
.enterprise-company-proof__facts dd {
  margin: 0;
  color: #087fbb;
  font: 500 clamp(25px,2.3vw,36px) 'DM Mono',monospace;
}
.enterprise-company-proof__detail {
  margin-top: 24px;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
}
.enterprise-company-proof__detail article { min-height: 210px; padding: 22px; background: white; }
.enterprise-company-proof__detail h3 { margin: 34px 0 12px; color: #1a3342; font-size: 20px; font-weight: 550; }
.enterprise-company-proof__detail p { margin: 0; color: #5c7482; font-size: 12px; line-height: 1.67; }
.enterprise-company-proof__detail span { color: #0a84bd; font: 500 9px 'DM Mono',monospace; }

.capability-list { align-items: stretch; }
.capability-row { min-width: 0; }
.capability-row > div { min-width: 0; }
.capability-row > div > p,
.capability-detail p,
.operating-card p,
.engage-row p,
.deliverable-grid p,
.deliverable-grid small { overflow-wrap: anywhere; }

@media (max-width: 1040px) {
  .enterprise-commercial-heading,
  .enterprise-industry-commercial > header { grid-template-columns: .3fr 1fr; }
  .enterprise-commercial-heading > p,
  .enterprise-industry-commercial > header p { grid-column: 2; }
  .enterprise-proof-grid,
  .enterprise-engagement-grid,
  .enterprise-company-proof__facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .enterprise-page-guide { padding-inline: 18px; }
  .enterprise-commercial-heading,
  .enterprise-industry-commercial > header { grid-template-columns: 1fr; gap: 18px; }
  .enterprise-commercial-heading > p,
  .enterprise-industry-commercial > header p { grid-column: 1; }
  .enterprise-industry-commercial__grid,
  .enterprise-company-proof__detail { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .enterprise-proof-grid,
  .enterprise-engagement-grid,
  .enterprise-company-proof__facts { grid-template-columns: 1fr; }
  .enterprise-proof-grid article,
  .enterprise-engagement-grid article { min-height: 240px; }
}

/* CX24 v37 shared header fit */
.enterprise-site-header {
  grid-template-columns: 350px minmax(560px,1fr) auto;
}
.enterprise-site-header .brand {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.enterprise-site-header .brand img { flex: 0 0 auto; }
.enterprise-site-header .brand > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: clip;
}
.enterprise-site-header .primary-nav {
  min-width: 0;
  position: relative;
  z-index: 1;
}
@media (max-width: 1280px) {
  .enterprise-site-header { grid-template-columns: 132px minmax(0,1fr) auto; }
  .enterprise-site-header .brand > span { display: none; }
}
@media (max-width: 900px) {
  .enterprise-site-header { grid-template-columns: 1fr auto; }
  .enterprise-site-header .primary-nav,
  .enterprise-site-header .header-cta { display: none; }
}

/* CX24 v38 client area footer access */
:root { --footer-h: 690px; }
.footer-client-area {
  margin-top: 32px;
  padding: 24px 0;
  display: grid;
  grid-template-columns: minmax(240px,.72fr) minmax(480px,1.35fr) auto;
  gap: clamp(24px,3.6vw,58px);
  align-items: center;
  border-top: 1px solid rgba(166,205,226,.13);
  border-bottom: 1px solid rgba(166,205,226,.13);
}
.footer-client-area__copy > span {
  color: var(--cyan);
  font: 500 9px 'DM Mono',monospace;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.footer-client-area__copy h3 {
  margin: 9px 0 6px;
  color: #e8f4f9;
  font-size: clamp(20px,2vw,28px);
  line-height: 1.08;
  font-weight: 500;
  letter-spacing: -.035em;
}
.footer-client-area__copy p {
  max-width: 430px;
  margin: 0;
  color: #718b9a;
  font-size: 10px;
  line-height: 1.6;
}
.footer-client-login {
  display: grid;
  grid-template-columns: minmax(180px,1fr) minmax(160px,.85fr) auto;
  gap: 8px;
  align-items: end;
}
.footer-client-login label {
  min-width: 0;
  display: grid;
  gap: 7px;
  color: #7893a2;
  font: 500 8px 'DM Mono',monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.footer-client-login input {
  width: 100%;
  height: 46px;
  padding: 0 12px;
  color: #e4f0f5;
  border: 1px solid rgba(151,201,226,.19);
  border-radius: 0;
  background: rgba(7,23,34,.9);
  font: 400 11px Inter,Arial,sans-serif;
}
.footer-client-login input::placeholder { color: #4f6b7a; }
.footer-client-login input:focus { outline: 0; border-color: var(--cyan); }
.footer-client-login button {
  min-width: 126px;
  height: 46px;
  padding: 0 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  color: #031018;
  border: 1px solid var(--cyan);
  border-radius: 0;
  background: var(--cyan);
  cursor: pointer;
  font-size: 10px;
  font-weight: 600;
}
.footer-client-login button span { font-size: 15px; }
.footer-client-area__open {
  min-height: 46px;
  padding: 0 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  color: #b5cad5;
  border: 1px solid rgba(0,200,244,.34);
  font-size: 10px;
  white-space: nowrap;
}
.footer-client-area__open span { color: var(--cyan); }
.footer-client-area__open:hover { color: white; border-color: var(--cyan); }
.site-footer .footer-bottom { margin-top: 20px; padding-top: 0; border-top: 0; }

@media (max-width: 1180px) {
  :root { --footer-h: 800px; }
  .footer-client-area { grid-template-columns: 1fr 1.7fr; }
  .footer-client-area__open { grid-column: 1 / -1; justify-self: start; }
}
@media (max-width: 900px) {
  :root { --footer-h: 1020px; }
  .footer-client-area { grid-template-columns: 1fr; align-items: stretch; }
  .footer-client-login { grid-template-columns: 1fr 1fr; }
  .footer-client-login button { grid-column: 1 / -1; }
  .footer-client-area__open { grid-column: auto; justify-self: stretch; }
}
@media (max-width: 680px) {
  :root { --footer-h: 1420px; }
  .footer-client-login { grid-template-columns: 1fr; }
  .footer-client-login button { grid-column: auto; }
}
@media (max-width: 360px) {
  :root { --footer-h: 1540px; }
}

/* CX24 v39 active employee session */
.footer-client-session {
  min-height: 62px;
  padding: 12px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border: 1px solid rgba(101,217,170,.28);
  background: rgba(101,217,170,.035);
}
.footer-client-session > span {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #9fc8b6;
  font: 500 8px 'DM Mono',monospace;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.footer-client-session i {
  width: 7px;
  height: 7px;
  display: block;
  border-radius: 50%;
  background: #65d9aa;
  box-shadow: 0 0 0 5px rgba(101,217,170,.08);
}
.footer-client-session a {
  display: flex;
  align-items: center;
  gap: 25px;
  color: #d4e5ec;
  font-size: 10px;
  white-space: nowrap;
}
.footer-client-session b { color: var(--cyan); font-size: 15px; font-weight: 400; }
.footer-client-area.session-active { border-color: rgba(101,217,170,.18); }

@media (max-width: 680px) {
  .footer-client-session { align-items: flex-start; flex-direction: column; }
  .footer-client-session a { width: 100%; justify-content: space-between; }
}

/* CX24 v42 ultrawide canvas and deterministic type delivery */
@media (min-width: 1281px) {
  .enterprise-site-header {
    grid-template-columns: 362px minmax(560px,1fr) auto;
  }
}

@media (min-width: 1521px) {
  /*
    Extend the existing section surfaces to the viewport edge while keeping
    the established 1520px content geometry centred. This prevents both the
    narrow strip effect and stretched cards on 2K, 4K and ultrawide screens.
  */
  :root { --max: 100%; }

  .enterprise-site-header {
    padding-inline: max(30px,calc(50% - 730px));
  }
  .enterprise-site-header .primary-nav {
    width: 100%;
    max-width: 940px;
    justify-self: center;
  }
  .mega-menu {
    padding-inline: max(50px,calc(50% - 710px));
  }
  .site-footer {
    padding-inline: max(28px,calc((100vw - 1520px + 120px)/2));
  }

  .enterprise-home-hero__content {
    width: 100%;
    max-width: 1520px;
    margin-inline: auto;
  }
  .enterprise-home-hero__visual {
    right: max(0px,calc(50% - 760px));
  }

  .focus-section,
  .service-directory,
  .process-section,
  .deliverable-section,
  .decision-section,
  .clarity-section,
  .content-section,
  .simple-dark,
  .engage-section,
  .technical-rail-section,
  .operating-detail,
  .trust-section,
  .domain-console,
  .related-section,
  .cta-section,
  .intelligence-guides,
  .research-method,
  .intelligence-labs,
  .interactive-lab,
  .editorial-hero,
  .company-detail-section,
  .industry-section,
  .industry-boundary,
  .industry-switcher,
  .enterprise-industries,
  .enterprise-credentials,
  .enterprise-capabilities,
  .enterprise-ecosystem,
  .enterprise-delivery,
  .enterprise-assurance,
  .enterprise-insights,
  .enterprise-final-cta,
  .enterprise-page-guide,
  .enterprise-page-proof,
  .enterprise-page-engagement,
  .enterprise-industry-commercial,
  .enterprise-company-proof,
  .enterprise-case-guide {
    padding-inline: max(80px,calc(50% - 680px));
  }

  .page-hero {
    min-height: clamp(720px,calc(100svh - 84px),920px);
    padding-inline: max(94px,calc(50% - 666px));
  }

  .lab-hero,
  .article-hero,
  .article-layout,
  .proof-home,
  .team-proof,
  .industry-proof,
  .kyc-case-study,
  .case-proof-summary,
  .case-entity-deep,
  .case-evidence-matrix,
  .case-team-model,
  .case-practice,
  .case-monitoring,
  .case-deliverables,
  .case-boundary {
    padding-inline: max(92px,calc(50% - 668px));
  }

  .enterprise-proof {
    grid-template-columns: minmax(0,684px) minmax(0,836px);
    justify-content: center;
  }
  .enterprise-why {
    grid-template-columns: minmax(0,882px) minmax(350px,638px);
    justify-content: center;
  }
  .career-linkedin {
    grid-template-columns: minmax(280px,456px) minmax(0,1064px);
    justify-content: center;
  }
  .contact-grid,
  .lab-explanation,
  .article-next {
    grid-template-columns: repeat(3,minmax(0,506.6667px));
    justify-content: center;
  }
}
