:root {
  --ink: #112238;
  --ink-deep: #091522;
  --ink-soft: #20364f;
  --paper: #fbfaf7;
  --sand: #f3eee5;
  --mist: #edf3f4;
  --white: #ffffff;
  --slate: #5d6a78;
  --line: #d8ddd9;
  --line-dark: rgba(255, 255, 255, 0.14);
  --blue: #315ecf;
  --blue-dark: #244aa9;
  --mint: #74e0c1;
  --amber: #f5b95f;
  --display: Georgia, "Times New Roman", serif;
  --body: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --shadow-sm: 0 12px 35px rgba(17, 34, 56, 0.08);
  --shadow-lg: 0 28px 80px rgba(7, 19, 32, 0.24);
  --radius-sm: 12px;
  --radius-md: 20px;
  --radius-lg: 32px;
  --container: 1180px;
  --transition: 180ms ease;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; scroll-padding-top: 90px; }

body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--body);
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

body.nav-open { overflow: hidden; }
body.modal-open { overflow: hidden; }

img, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
.ui-icon { display: block; width: 24px; height: 24px; flex: 0 0 auto; overflow: visible; }

h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { text-wrap: balance; }

h1, h2 {
  font-family: var(--display);
  font-weight: 500;
  letter-spacing: -0.04em;
  line-height: 1.04;
}

h1 { font-size: clamp(3rem, 6vw, 5.6rem); }
h2 { font-size: clamp(2.3rem, 4.4vw, 4.25rem); }
h3 { line-height: 1.2; }

p { color: var(--slate); }

:focus-visible {
  outline: 3px solid var(--amber);
  outline-offset: 4px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.skip-link {
  position: fixed;
  z-index: 9999;
  top: 12px;
  left: 12px;
  padding: 10px 16px;
  border-radius: 8px;
  background: var(--white);
  color: var(--ink);
  transform: translateY(-150%);
}
.skip-link:focus { transform: translateY(0); }

.container {
  width: min(calc(100% - 40px), var(--container));
  margin-inline: auto;
}

.section-pad { padding: 120px 0; }
.section-dark { position: relative; overflow: hidden; background: var(--ink); color: var(--white); }
.section-dark p { color: #bdc9d6; }
.section-mist { background: var(--mist); }
.section-sand { background: var(--sand); }

.eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  color: var(--blue-dark);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1.2;
  text-transform: uppercase;
}
.eyebrow > span { width: 22px; height: 2px; background: currentColor; }
.eyebrow-light { color: var(--mint) !important; }

.button {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--blue);
  color: var(--white);
  font-size: 0.93rem;
  font-weight: 750;
  line-height: 1.2;
  transition: transform var(--transition), background var(--transition), border-color var(--transition);
}
.button:hover { transform: translateY(-2px); background: var(--blue-dark); }
.button-small { min-height: 44px; padding: 10px 17px; font-size: 0.82rem; }
.button-light { background: var(--white); color: var(--ink); }
.button-light:hover { background: var(--mint); }
.button-ghost { border-color: rgba(255,255,255,.36); background: transparent; }
.button-ghost:hover { border-color: var(--white); background: rgba(255,255,255,.08); }
.button-dark { background: var(--ink); }
.button-dark:hover { background: var(--ink-soft); }
.button-full { width: 100%; }
.button-group { display: flex; flex-wrap: wrap; gap: 12px; }

.text-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--ink);
  font-weight: 800;
  border-bottom: 1px solid var(--ink);
}
.text-link span { transition: transform var(--transition); }
.text-link:hover span { transform: translateX(5px); }

.site-header {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  border-bottom: 1px solid rgba(255,255,255,.08);
  background: rgba(9, 21, 34, 0.8);
  color: var(--white);
  backdrop-filter: blur(18px);
  transition: background var(--transition), box-shadow var(--transition);
}
.site-header.scrolled { background: rgba(9, 21, 34, 0.96); box-shadow: 0 8px 30px rgba(0,0,0,.12); }
.header-inner { display: flex; min-height: 76px; align-items: center; justify-content: space-between; gap: 28px; }

.brand { display: inline-flex; align-items: center; gap: 12px; flex-shrink: 0; }
.brand img { width: 42px; height: 42px; }
.brand-copy { display: flex; flex-direction: column; line-height: 1.15; }
.brand-copy strong { font-family: var(--display); font-size: 1.18rem; font-weight: 500; letter-spacing: -0.02em; }
.brand-copy small { margin-top: 4px; color: #9eacbb; font-size: 0.58rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }

.primary-nav { display: flex; align-items: center; gap: 5px; }
.nav-link { padding: 12px 13px; border: 0; background: transparent; color: #d9e1e9; cursor: pointer; font-size: 0.84rem; font-weight: 650; }
.nav-link:hover { color: var(--white); }
.nav-dropdown { position: relative; }
.nav-dropdown-trigger { display: flex; align-items: center; gap: 6px; }
.nav-chevron { width: 14px; height: 14px; transition: transform var(--transition); }
.nav-dropdown-trigger[aria-expanded="true"] .nav-chevron { transform: rotate(180deg); }
.nav-dropdown-panel {
  position: absolute;
  top: calc(100% + 16px);
  left: 0;
  display: grid;
  width: 500px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 16px;
  background: #14283f;
  box-shadow: var(--shadow-lg);
  opacity: 0;
  pointer-events: none;
  transform: translateY(-8px);
  transition: opacity var(--transition), transform var(--transition);
}
.nav-dropdown-panel::before { content: ""; position: absolute; top: -18px; left: 0; width: 100%; height: 18px; }
.nav-dropdown-panel.open { opacity: 1; pointer-events: auto; transform: translateY(0); }
.nav-dropdown-panel a { padding: 10px 12px; border-radius: 8px; color: #d9e1e9; font-size: .82rem; }
.nav-dropdown-panel a:hover { background: rgba(255,255,255,.08); color: var(--white); }
.nav-toggle { display: none; width: 46px; height: 46px; padding: 11px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; background: transparent; }
.nav-toggle span:not(.sr-only) { display: block; width: 100%; height: 2px; margin: 4px 0; background: currentColor; transition: transform var(--transition), opacity var(--transition); }

.hero { min-height: 850px; padding: 175px 0 105px; }
.hero-photo-backdrop { position: absolute; inset: 0; z-index: 0; margin: 0; }
.hero-photo-backdrop::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(9,21,34,.97) 0%, rgba(9,21,34,.9) 37%, rgba(9,21,34,.42) 68%, rgba(9,21,34,.2) 100%), linear-gradient(0deg, rgba(9,21,34,.66), transparent 55%); }
.hero-photo-backdrop img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 74px; }
.hero-copy h1 { max-width: 760px; margin-bottom: 28px; }
.hero-lede { max-width: 690px; margin-bottom: 16px; color: #d6dee7 !important; font-size: clamp(1.15rem, 2vw, 1.38rem); line-height: 1.55; }
.hero-support { max-width: 600px; margin-bottom: 34px; color: #8fa1b3 !important; }
.hero .button-group { margin-bottom: 42px; }
.trust-line { display: flex; flex-wrap: wrap; gap: 22px; padding-top: 28px; border-top: 1px solid var(--line-dark); color: #b5c1cd; font-size: .74rem; font-weight: 700; }
.trust-line span { display: flex; align-items: center; gap: 8px; }
.trust-line i { color: var(--mint); font-size: .65rem; font-style: normal; }
.hero-glow { position: absolute; border-radius: 50%; filter: blur(4px); pointer-events: none; }
.hero-glow-one { top: -270px; right: -160px; width: 720px; height: 720px; background: radial-gradient(circle, rgba(79,131,255,.2), transparent 67%); }
.hero-glow-two { bottom: -420px; left: 10%; width: 700px; height: 700px; background: radial-gradient(circle, rgba(116,224,193,.1), transparent 64%); }

.hero-system { position: relative; min-width: 0; }
.system-window { --lead-step: 0; position: relative; z-index: 2; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 20px; background: rgba(16, 38, 60, .86); box-shadow: var(--shadow-lg); backdrop-filter: blur(15px); }
.system-topbar { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 10px; padding: 15px 17px; border-bottom: 1px solid var(--line-dark); color: #c5d0db; font-size: .7rem; font-weight: 700; }
.system-topbar > :last-child { justify-self: end; }
.window-dots { display: flex; gap: 5px; }
.window-dots span { width: 7px; height: 7px; border-radius: 50%; background: rgba(255,255,255,.25); }
.status { display: inline-flex; align-items: center; gap: 6px; padding: 5px 9px; border-radius: 999px; font-size: .62rem; font-weight: 800; }
.status-live { background: rgba(116,224,193,.13); color: var(--mint); }
.status-live i { width: 6px; height: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px rgba(116,224,193,.1); }
.system-topbar .status-live i { animation: agent-live 2s ease-in-out infinite; }
.status-review { margin-left: auto; background: rgba(245,185,95,.14); color: var(--amber); }
.workflow-canvas { position: relative; display: grid; gap: 14px; padding: 34px 26px; }
.workflow-line { position: absolute; top: 58px; bottom: 58px; left: 48px; width: 1px; background: linear-gradient(var(--mint), var(--blue), rgba(255,255,255,.15)); }
.workflow-signal { position: absolute; top: 0; left: 50%; width: 9px; height: 9px; border: 2px solid rgba(9,21,34,.9); border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 5px rgba(116,224,193,.1), 0 0 14px rgba(116,224,193,.7); transform: translate(-50%, calc(var(--lead-step) * 86px)); transition: transform 520ms cubic-bezier(.2,.8,.2,1); }
.workflow-step { position: relative; z-index: 1; display: flex; align-items: center; gap: 14px; min-height: 72px; overflow: hidden; padding: 12px 14px; border: 1px solid rgba(255,255,255,.1); border-radius: 12px; background: rgba(9,21,34,.72); transition: opacity 260ms ease, border-color 260ms ease, background-color 260ms ease, box-shadow 260ms ease, transform 260ms ease; }
.step-icon { display: grid; width: 40px; height: 40px; flex: 0 0 auto; place-items: center; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; background: var(--ink); color: #a9b8c6; font-size: .65rem; font-weight: 800; }
.workflow-step div:nth-child(2) { display: flex; flex-direction: column; min-width: 0; }
.workflow-step small { color: #7f93a6; font-size: .6rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.workflow-step strong { margin-top: 3px; color: #e5ebf0; font-size: .78rem; }
.step-state { margin-left: auto; padding: 5px 7px; border-radius: 999px; background: rgba(255,255,255,.055); color: #71879a; font-size: .5rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.step-workbar { position: absolute; right: 12px; bottom: 5px; left: 12px; overflow: hidden; height: 2px; border-radius: 999px; background: rgba(255,255,255,.045); }
.step-workbar span { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--blue), var(--mint)); }
.active-step { border-color: rgba(79,131,255,.7); background: rgba(14,35,55,.94); box-shadow: inset 0 0 0 1px rgba(79,131,255,.12), 0 8px 30px rgba(0,0,0,.15); transform: translateX(3px); }
.active-step .step-icon { border-color: var(--blue); color: var(--white); }
.active-step .step-state { background: var(--mint); color: var(--ink-deep); }
.active-step .step-workbar span { animation: agent-work 1.65s ease-in-out forwards; }
.step-three.active-step { border-color: rgba(245,185,95,.62); box-shadow: inset 0 0 0 1px rgba(245,185,95,.1), 0 8px 30px rgba(0,0,0,.15); }
.step-three.active-step .step-icon { border-color: var(--amber); }
.step-three.active-step .step-state { background: var(--amber); }
.complete-step .step-state { background: rgba(116,224,193,.12); color: var(--mint); }
.muted-step { opacity: .58; }
.system-footer { display: flex; justify-content: space-between; gap: 18px; padding: 13px 18px; border-top: 1px solid var(--line-dark); color: #879aac; font-size: .63rem; }
.system-footer > :last-child { overflow: hidden; max-width: 58%; color: #a9bac7; text-align: right; text-overflow: ellipsis; white-space: nowrap; }
.floating-card { position: absolute; z-index: 3; display: flex; align-items: center; gap: 11px; padding: 12px 15px; border: 1px solid rgba(255,255,255,.16); border-radius: 12px; background: rgba(25, 50, 75, .96); box-shadow: var(--shadow-lg); }
.floating-card div { display: flex; flex-direction: column; }
.floating-card small { color: #90a3b5; font-size: .56rem; font-weight: 800; text-transform: uppercase; }
.floating-card strong { color: var(--white); font-size: .72rem; }
.floating-card-top { top: -33px; right: -25px; }
.floating-card-bottom { bottom: -35px; left: -30px; }
.pulse-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 6px rgba(116,224,193,.1); }
.mini-icon { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 8px; background: rgba(79,131,255,.14); color: #8fadff; }

.platform-bar { border-top: 1px solid rgba(255,255,255,.08); border-bottom: 1px solid rgba(255,255,255,.1); background: var(--ink-deep); color: var(--white); }
.platform-bar-inner { display: grid; grid-template-columns: 250px 1fr; align-items: center; gap: 34px; min-height: 128px; padding-top: 24px; padding-bottom: 24px; }
.platform-intro { display: flex; flex-direction: column; }
.platform-intro span { color: var(--mint); font-size: .62rem; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.platform-intro strong { margin-top: 6px; color: #dce5ec; font-family: var(--display); font-size: 1.05rem; font-weight: 500; line-height: 1.25; }
.platform-logos { display: grid; grid-template-columns: repeat(6, minmax(82px, 1fr)); align-items: center; gap: 8px; }
.platform-logo { display: flex; min-height: 58px; align-items: center; justify-content: center; gap: 9px; padding: 10px 9px; border: 1px solid rgba(255,255,255,.1); border-radius: 12px; background: rgba(255,255,255,.035); color: #d5dee7; }
.platform-logo img { width: 23px; height: 23px; object-fit: contain; filter: grayscale(1) brightness(0) invert(1); opacity: .88; }
.platform-logo span { font-size: .74rem; font-weight: 750; }
.platform-note { grid-column: 2; margin: -22px 0 0; color: #60758a; font-size: .58rem; text-align: right; }

.section-heading { margin-bottom: 62px; }
.section-heading h2 { margin-bottom: 0; }
.heading-split { display: grid; grid-template-columns: 1.05fr .8fr; align-items: end; gap: 90px; }
.heading-split > div:last-child > :last-child { margin-bottom: 0; }
.section-heading.centered { max-width: 790px; margin-right: auto; margin-left: auto; text-align: center; }
.section-heading.centered .eyebrow { justify-content: center; }
.section-heading.centered h2 { margin-bottom: 24px; }
.section-heading.centered p:last-child { max-width: 650px; margin: 0 auto; font-size: 1.08rem; }
.large-copy { color: var(--ink); font-size: clamp(1.1rem, 1.7vw, 1.3rem); line-height: 1.55; }
.section-dark .large-copy { color: #d9e1e8; }

.editorial-break { position: relative; overflow: hidden; min-height: 460px; margin: 0 0 60px; border-radius: var(--radius-md); background: var(--ink); box-shadow: var(--shadow-sm); }
.editorial-break img { width: 100%; height: 100%; min-height: 460px; object-fit: cover; }
.editorial-break::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(9,21,34,.75), transparent 48%); }
.editorial-break figcaption { position: absolute; z-index: 2; right: 28px; bottom: 25px; left: 28px; display: flex; align-items: center; gap: 14px; color: var(--white); font-size: .82rem; }
.editorial-break figcaption span { padding: 6px 9px; border: 1px solid rgba(255,255,255,.24); border-radius: 999px; color: var(--mint); font-size: .62rem; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }

.friction-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.friction-card { position: relative; min-height: 300px; padding: 38px 38px 42px; border-right: 1px solid var(--line); }
.friction-card:first-child { padding-left: 0; }
.friction-card:last-child { padding-right: 0; border-right: 0; }
.card-number { display: grid; width: 38px; height: 38px; margin-bottom: 32px; place-items: center; border: 1px solid rgba(36,74,169,.2); border-radius: 10px; background: rgba(49,94,207,.07); color: var(--blue-dark); font-size: .66rem; font-weight: 850; letter-spacing: .08em; }
.friction-card h3 { max-width: 280px; margin-bottom: 16px; font-family: var(--display); font-size: 1.48rem; font-weight: 500; }
.friction-card p { margin-bottom: 0; font-size: .91rem; }
.insight-band { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 50px; padding: 26px 0; }
.insight-band p { max-width: 730px; margin: 0; color: var(--ink); font-family: var(--display); font-size: clamp(1.45rem, 2.3vw, 2rem); line-height: 1.3; }
.insight-band a { flex-shrink: 0; font-size: .8rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }

.solution-grid { display: grid; grid-template-columns: .95fr 1fr; align-items: center; gap: 110px; }
.solution-visual { position: relative; display: grid; min-height: 570px; place-items: center; }
.solution-photo { overflow: hidden; min-height: 600px; margin: 0; border-radius: var(--radius-md); box-shadow: var(--shadow-sm); }
.solution-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(9,21,34,.78), transparent 55%); }
.solution-photo > img { width: 100%; height: 100%; min-height: 600px; object-fit: cover; object-position: center; }
.solution-photo figcaption { position: absolute; z-index: 2; right: 25px; bottom: 24px; left: 25px; display: flex; flex-direction: column; color: var(--white); }
.solution-photo figcaption span { color: var(--mint); font-size: .62rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.solution-photo figcaption strong { margin-top: 5px; font-family: var(--display); font-size: 1.2rem; font-weight: 500; }

.agent-org-chart { min-height: 590px; margin: 0; }
.agent-chart-shell { width: 100%; overflow: hidden; border: 1px solid rgba(17,34,56,.16); border-radius: var(--radius-md); background: var(--ink-deep); box-shadow: var(--shadow-sm); color: var(--white); }
.agent-chart-header { display: flex; min-height: 58px; align-items: center; justify-content: space-between; gap: 18px; padding: 0 20px; border-bottom: 1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.035); color: #93a8ba; font-size: .64rem; font-weight: 750; letter-spacing: .05em; text-transform: uppercase; }
.agent-chart-header > div { display: flex; align-items: center; gap: 8px; color: #dce5eb; }
.agent-live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 5px rgba(116,224,193,.1); animation: agent-live 2s ease-in-out infinite; }
.agent-chart-stage { position: relative; height: 500px; background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px); background-size: 44px 44px; }
.agent-chart-stage::after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 45%, rgba(49,94,207,.12), transparent 54%); pointer-events: none; }
.agent-chart-lines { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; overflow: visible; }
.agent-chart-lines path { fill: none; stroke: rgba(151,174,194,.3); stroke-width: 1.4; vector-effect: non-scaling-stroke; }
.agent-signal { fill: var(--mint); filter: drop-shadow(0 0 5px rgba(116,224,193,.9)); opacity: 0; }
.signal-one { animation: agent-signal-vertical 3.6s ease-in-out infinite; }
.signal-two { animation: agent-signal-left 3.6s 1.2s ease-in-out infinite; }
.signal-three { animation: agent-signal-right 3.6s 2.4s ease-in-out infinite; }
.agent-node { position: absolute; z-index: 3; display: grid; min-height: 76px; grid-template-columns: 38px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 12px; border: 1px solid rgba(255,255,255,.13); border-radius: 15px; background: rgba(14,31,48,.94); box-shadow: 0 12px 28px rgba(2,8,14,.22); transition: border-color 260ms ease, background-color 260ms ease, box-shadow 260ms ease, transform 260ms ease; }
.agent-node-icon { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid rgba(116,224,193,.16); border-radius: 10px; background: rgba(116,224,193,.06); color: var(--mint); }
.agent-node-icon .ui-icon { width: 20px; height: 20px; }
.agent-node div { min-width: 0; }
.agent-node small { display: block; margin-bottom: 3px; color: #8298aa; font-size: .55rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.agent-node strong { display: block; color: #eff4f7; font-size: .72rem; line-height: 1.25; }
.agent-state { padding: 4px 6px; border-radius: 999px; background: rgba(255,255,255,.06); color: #8195a6; font-size: .5rem; font-style: normal; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.state-ready { background: rgba(116,224,193,.12); color: var(--mint); }
.agent-owner { top: 18px; left: 50%; width: min(76%, 292px); transform: translateX(-50%); }
.agent-coordinator { top: 126px; left: 50%; width: min(80%, 310px); transform: translateX(-50%); }
.agent-specialists { position: absolute; z-index: 3; top: 270px; right: 18px; left: 18px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.agent-specialists .agent-node { position: relative; min-height: 86px; grid-template-columns: 32px minmax(0, 1fr); padding: 10px; }
.agent-specialists .agent-node-icon { width: 32px; height: 32px; }
.agent-specialists .agent-state { position: absolute; top: 7px; right: 7px; padding: 3px 5px; }
.agent-specialists .agent-node div { padding-top: 11px; }
.agent-workbar { position: absolute; right: 11px; bottom: 7px; left: 11px; overflow: hidden; height: 2px; border-radius: 999px; background: rgba(255,255,255,.06); }
.agent-workbar span { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--blue), var(--mint)); }
.agent-node.is-active { border-color: rgba(116,224,193,.62); background: rgba(20,45,64,.98); box-shadow: 0 14px 36px rgba(2,8,14,.32), 0 0 0 1px rgba(116,224,193,.08), 0 0 28px rgba(116,224,193,.08); }
.agent-coordinator.is-active { transform: translateX(-50%) translateY(-2px); }
.agent-node.is-active .agent-state { background: var(--mint); color: var(--ink-deep); }
.agent-node.is-complete .agent-state { background: rgba(79,131,255,.14); color: #9bb8ff; }
.agent-node.is-active .agent-workbar span { animation: agent-work 1.65s ease-in-out forwards; }
.agent-review-queue { position: absolute; z-index: 3; right: 18px; bottom: 18px; left: 18px; display: grid; min-height: 58px; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; padding: 11px 14px; border: 1px solid rgba(255,255,255,.11); border-radius: 13px; background: rgba(8,21,34,.9); }
.agent-review-queue span { color: var(--mint); font-size: .55rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.agent-review-queue strong { color: #dbe4eb; font-size: .67rem; font-weight: 700; }
.agent-review-queue i { padding: 5px 7px; border: 1px solid rgba(255,190,92,.28); border-radius: 999px; color: #e8b863; font-size: .5rem; font-style: normal; font-weight: 850; text-transform: uppercase; }

@keyframes agent-live { 0%,100% { opacity: .65; box-shadow: 0 0 0 4px rgba(116,224,193,.08); } 50% { opacity: 1; box-shadow: 0 0 0 7px rgba(116,224,193,.14); } }
@keyframes agent-work { 0% { width: 0; } 75%,100% { width: 100%; } }
@keyframes agent-signal-vertical { 0%,15% { opacity: 0; transform: translateY(-20px); } 25% { opacity: 1; } 55% { opacity: 1; transform: translateY(28px); } 65%,100% { opacity: 0; transform: translateY(28px); } }
@keyframes agent-signal-left { 0%,15% { opacity: 0; transform: translate(108px,0); } 25% { opacity: 1; } 55% { opacity: 1; transform: translate(-105px,32px); } 65%,100% { opacity: 0; transform: translate(-105px,32px); } }
@keyframes agent-signal-right { 0%,15% { opacity: 0; transform: translate(-108px,0); } 25% { opacity: 1; } 55% { opacity: 1; transform: translate(105px,32px); } 65%,100% { opacity: 0; transform: translate(105px,32px); } }

.solution-center { position: relative; z-index: 2; display: flex; width: 230px; height: 230px; align-items: center; justify-content: center; flex-direction: column; border: 1px solid rgba(17,34,56,.12); border-radius: 50%; background: var(--white); box-shadow: var(--shadow-sm); text-align: center; }
.solution-center img { margin-bottom: 15px; }
.solution-center strong { font-family: var(--display); font-size: 1.2rem; font-weight: 500; }
.solution-center small { max-width: 150px; margin-top: 4px; color: var(--slate); font-size: .67rem; }
.orbit { position: absolute; border: 1px dashed rgba(17,34,56,.18); border-radius: 50%; }
.orbit-one { width: 390px; height: 390px; }
.orbit-two { width: 540px; height: 540px; }
.orbit-node { position: absolute; z-index: 3; padding: 9px 13px; border: 1px solid var(--line); border-radius: 999px; background: var(--paper); box-shadow: 0 8px 25px rgba(17,34,56,.08); color: var(--ink); font-size: .68rem; font-weight: 800; }
.node-one { top: 42px; left: 44%; }
.node-two { top: 29%; right: -2px; }
.node-three { right: 28px; bottom: 20%; }
.node-four { bottom: 28px; left: 25%; }
.node-five { top: 44%; left: -12px; }
.solution-copy h2 { margin-bottom: 28px; }
.solution-copy > p { margin-bottom: 20px; }
.check-list { display: grid; gap: 13px; margin: 32px 0 36px; padding: 0; list-style: none; }
.check-list li { display: flex; align-items: flex-start; gap: 12px; color: var(--ink); font-size: .9rem; font-weight: 650; }
.check-list span { display: grid; width: 23px; height: 23px; flex: 0 0 auto; place-items: center; border-radius: 50%; background: rgba(116,224,193,.25); color: #16765f; font-size: .68rem; }

.build-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.build-card { position: relative; min-height: 300px; padding: 32px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--white); transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition); }
.build-card:hover { transform: translateY(-4px); border-color: #b8c3c8; box-shadow: var(--shadow-sm); }
.featured-build { display: grid; min-height: 355px; grid-column: 1 / -1; grid-template-columns: .55fr 1fr; align-items: center; gap: 50px; overflow: hidden; background: var(--ink); color: var(--white); }
.featured-build::after { content: ""; position: absolute; width: 420px; height: 420px; left: -130px; border: 1px solid rgba(116,224,193,.16); border-radius: 50%; box-shadow: 0 0 0 60px rgba(79,131,255,.04), 0 0 0 120px rgba(116,224,193,.025); }
.build-icon { position: relative; z-index: 2; display: grid; width: 56px; height: 56px; margin-bottom: 32px; place-items: center; border-radius: 14px; background: var(--mist); color: var(--blue-dark); }
.build-icon .ui-icon { width: 27px; height: 27px; }
.featured-build .build-icon { width: 140px; height: 140px; margin: 0 auto; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; background: rgba(255,255,255,.06); color: var(--mint); font-size: 2.4rem; }
.featured-build .build-icon .ui-icon { width: 52px; height: 52px; }
.build-content { position: relative; z-index: 2; }
.card-kicker { color: var(--blue-dark); font-size: .67rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.featured-build .card-kicker { color: var(--mint); }
.build-card h3 { margin: 9px 0 14px; font-family: var(--display); font-size: 1.65rem; font-weight: 500; }
.featured-build h3 { font-size: 2.35rem; }
.build-card p { margin-bottom: 0; font-size: .9rem; }
.featured-build p { max-width: 650px; color: #bdc9d6; }
.featured-build .example { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line-dark); color: #dce4eb; }

.departments-section .section-heading h2 { max-width: 670px; }
.department-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line-dark); }
.department-card { position: relative; display: grid; min-height: 230px; grid-template-columns: 52px minmax(0, 1fr); grid-template-rows: auto auto; align-content: center; column-gap: 20px; row-gap: 11px; padding: 34px; border-right: 1px solid var(--line-dark); border-bottom: 1px solid var(--line-dark); transition: background var(--transition); }
.department-card::before { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(17,34,56,.99) 0%, rgba(17,34,56,.94) 43%, rgba(17,34,56,.28) 100%); pointer-events: none; }
.department-card > :not(.department-thumb) { position: relative; z-index: 2; }
.department-thumb { position: absolute; inset: 0 0 0 auto; width: 64%; height: 100%; object-fit: cover; object-position: center; opacity: .46; transition: opacity var(--transition), transform 500ms ease; }
.department-card:nth-child(even) { border-right: 0; }
.department-card:hover { background: rgba(255,255,255,.055); }
.department-card:hover .department-thumb { opacity: .68; transform: scale(1.025); }
.dept-icon { display: grid; width: 46px; height: 46px; grid-column: 1; grid-row: 1; align-self: center; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 12px; background: rgba(9,21,34,.28); color: var(--mint); }
.dept-icon .ui-icon { width: 23px; height: 23px; }
.dept-num { grid-column: 3; grid-row: 1; align-self: start; justify-self: end; color: #8295a8; font-size: .62rem; font-weight: 800; }
.department-card h3 { grid-column: 2; grid-row: 1; align-self: center; margin: 0; color: var(--white); font-family: var(--display); font-size: 1.55rem; font-weight: 500; }
.department-card p { grid-column: 2; grid-row: 2; max-width: 390px; margin: 0; font-size: .84rem; }

.process-list { margin: 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.process-item { display: grid; grid-template-columns: 90px 1fr auto; align-items: center; gap: 28px; padding: 30px 12px; border-bottom: 1px solid var(--line); transition: padding var(--transition), background var(--transition); }
.process-item:hover { padding-right: 22px; padding-left: 22px; background: var(--white); }
.process-number { color: var(--blue-dark); font-size: .72rem; font-weight: 850; letter-spacing: .12em; }
.process-item h3 { margin: 0 0 5px; font-family: var(--display); font-size: 1.4rem; font-weight: 500; }
.process-item p { margin: 0; font-size: .88rem; }
.process-time { padding: 8px 12px; border: 1px solid var(--line); border-radius: 999px; color: var(--slate); font-size: .68rem; font-weight: 750; }

.tasks-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 110px; }
.tasks-intro { position: sticky; top: 120px; align-self: start; }
.tasks-intro h2 { margin-bottom: 26px; }
.tasks-intro p { margin-bottom: 32px; }
.task-list { border-top: 1px solid #cfc6b7; }
.task-group { display: grid; grid-template-columns: 180px 1fr; gap: 25px; padding: 30px 0; border-bottom: 1px solid #cfc6b7; }
.task-group > span { color: var(--blue-dark); font-size: .72rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.task-group ul { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px 25px; margin: 0; padding: 0; list-style: none; }
.task-group li { position: relative; padding-left: 18px; color: var(--ink); font-size: .88rem; }
.task-group li::before { content: ""; position: absolute; top: .7em; left: 0; width: 6px; height: 6px; border-radius: 50%; background: var(--blue); }

.services-section .heading-split { align-items: start; }
.services-photo { position: relative; overflow: hidden; height: clamp(340px, 43vw, 520px); margin: 0 0 75px; border-radius: var(--radius-md); background: var(--ink); box-shadow: var(--shadow-sm); }
.services-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(9,21,34,.76), transparent 58%); }
.services-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.services-photo figcaption { position: absolute; z-index: 2; right: 28px; bottom: 25px; left: 28px; max-width: 590px; color: var(--white); font-family: var(--display); font-size: clamp(1.1rem, 2vw, 1.55rem); line-height: 1.3; }
.scorecard-teaser { padding: 90px 0; }
.scorecard-teaser-grid { display: grid; grid-template-columns: 1fr .8fr; align-items: center; gap: 90px; }
.scorecard-teaser h2 { margin: 0; }
.scorecard-teaser .large-copy { margin-bottom: 28px; }
.service-list { border-top: 1px solid var(--line); }
.service-row { display: grid; grid-template-columns: 70px .65fr 1fr; align-items: center; gap: 40px; min-height: 130px; padding: 26px 14px; border-bottom: 1px solid var(--line); }
.service-row > span { color: var(--blue-dark); font-size: .7rem; font-weight: 850; }
.service-row h3 { margin: 0; font-family: var(--display); font-size: 1.42rem; font-weight: 500; }
.service-row p { margin: 0; font-size: .88rem; }

.audit-section { padding: 120px 0; }
.audit-pattern { position: absolute; inset: 0; opacity: .12; background-image: linear-gradient(rgba(255,255,255,.18) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.18) 1px, transparent 1px); background-size: 70px 70px; mask-image: radial-gradient(circle at 75% 50%, black, transparent 65%); }
.audit-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr .68fr; align-items: center; gap: 110px; }
.audit-copy h2 { max-width: 700px; margin-bottom: 28px; }
.audit-copy > p { max-width: 660px; font-size: 1.1rem; }
.audit-promise { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 32px; color: #d6e0e8; font-size: .78rem; font-weight: 700; }
.audit-promise span::first-letter { color: var(--mint); }
.audit-card { padding: 36px; border: 1px solid rgba(255,255,255,.16); border-radius: var(--radius-md); background: rgba(255,255,255,.07); backdrop-filter: blur(15px); }
.audit-card-label { color: var(--mint); font-size: .67rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.audit-card h3 { margin: 16px 0; font-family: var(--display); font-size: 1.7rem; font-weight: 500; }
.audit-card p { font-size: .9rem; }
.audit-card > small { display: block; margin-top: 14px; color: #9db0c1; text-align: center; }
.audit-card .connection-note { margin: 18px 0 0; padding-top: 16px; border-top: 1px solid var(--line-dark); color: #7f93a6; font-size: .7rem; text-align: center; }

.site-footer { padding: 75px 0 28px; background: var(--ink-deep); color: var(--white); }
.footer-grid { display: grid; grid-template-columns: 1.5fr .55fr .7fr; gap: 70px; padding-bottom: 55px; }
.brand-footer { margin-bottom: 20px; }
.footer-brand > p { max-width: 330px; color: #889aab; font-family: var(--display); font-size: 1.3rem; }
.footer-grid h2 { margin-bottom: 18px; color: #7790a7; font-family: var(--body); font-size: .66rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.footer-grid > div:not(:first-child) { display: flex; align-items: flex-start; flex-direction: column; }
.footer-grid a, .footer-grid span:not(.brand-copy) { margin: 4px 0; color: #bdc9d4; font-size: .82rem; }
.footer-grid a:hover { color: var(--mint); }
.footer-bottom { display: flex; justify-content: space-between; gap: 30px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.1); color: #71869a; font-size: .7rem; }
.mobile-cta { display: none; }

.audit-modal[hidden] { display: none; }
.audit-modal { position: fixed; z-index: 3000; inset: 0; display: grid; place-items: center; padding: 24px; }
.audit-modal-backdrop { position: absolute; inset: 0; background: rgba(4,12,20,.78); backdrop-filter: blur(8px); }
.audit-dialog { position: relative; z-index: 1; width: min(100%, 820px); max-height: calc(100vh - 48px); overflow-y: auto; padding: 38px; border-radius: var(--radius-md); background: var(--paper); box-shadow: var(--shadow-lg); }
.audit-close { position: absolute; top: 16px; right: 16px; display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid var(--line); border-radius: 50%; background: var(--white); cursor: pointer; color: var(--ink); font-size: 1.5rem; line-height: 1; }
.audit-dialog-intro { max-width: 680px; padding-right: 45px; }
.audit-dialog-intro h2, .audit-success h2 { margin-bottom: 18px; font-size: clamp(2.1rem, 4.5vw, 3.5rem); }
.audit-form { margin-top: 30px; }
.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 17px; }
.audit-form label { display: flex; flex-direction: column; gap: 7px; }
.audit-form label > span { color: var(--ink); font-size: .72rem; font-weight: 800; }
.audit-form input, .audit-form select, .audit-form textarea { width: 100%; border: 1px solid #bfc8cb; border-radius: 9px; background: var(--white); color: var(--ink); padding: 12px 13px; }
.audit-form input, .audit-form select { min-height: 48px; }
.audit-form textarea { resize: vertical; }
.audit-form input:focus, .audit-form select:focus, .audit-form textarea:focus { border-color: var(--blue); outline: 3px solid rgba(49,94,207,.17); }
.form-wide { margin-top: 17px; }
.honeypot { position: absolute !important; left: -9999px !important; }
.consent-check { display: grid !important; grid-template-columns: auto 1fr; align-items: start; gap: 9px !important; margin: 18px 0; }
.consent-check input { width: 18px; min-height: 18px; margin-top: 2px; }
.consent-check span { color: var(--slate) !important; font-weight: 600 !important; }
.form-status { min-height: 1.4em; margin: 0 0 10px; color: #a52b2b; font-size: .79rem; font-weight: 750; }
.audit-form button[disabled] { cursor: wait; opacity: .65; }
.form-privacy { display: block; margin-top: 12px; color: var(--slate); text-align: center; }
.audit-success { padding: 45px 20px; text-align: center; }
.audit-success p { max-width: 540px; margin: 0 auto 28px; }
.success-mark { display: grid; width: 68px; height: 68px; margin: 0 auto 25px; place-items: center; border-radius: 50%; background: rgba(116,224,193,.25); color: #16765f; font-size: 1.7rem; }

.reveal { opacity: 0; transform: translateY(22px); transition: opacity 650ms ease, transform 650ms ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

/* Cursor-reactive cards: pointer-following spotlight and border glow. */
.hover-reactive {
  --pointer-x: 50%;
  --pointer-y: 50%;
  --card-lift: 0px;
  isolation: isolate;
  overflow: hidden;
  transform: translateY(var(--card-lift));
  transition: transform 350ms cubic-bezier(.4,0,.2,1), border-color 350ms cubic-bezier(.4,0,.2,1), box-shadow 350ms cubic-bezier(.4,0,.2,1), background-color 350ms ease;
  will-change: transform;
}
.hover-reactive > :not(.pointer-spot):not(.pointer-border):not(.department-thumb) { position: relative; z-index: 2; }
.pointer-spot,
.pointer-border {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  opacity: 0;
  pointer-events: none;
  transition: opacity 300ms ease;
}
.pointer-spot {
  z-index: 1;
  background: radial-gradient(280px circle at var(--pointer-x) var(--pointer-y), rgba(116,224,193,.14), rgba(49,94,207,.055) 36%, transparent 62%);
}
.pointer-border {
  z-index: 3;
  inset: -1px;
  padding: 1px;
  background: radial-gradient(330px circle at var(--pointer-x) var(--pointer-y), rgba(116,224,193,.78), rgba(75,125,213,.32) 34%, transparent 56%);
  -webkit-mask: linear-gradient(#000,#000) content-box, linear-gradient(#000,#000);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000,#000) content-box, linear-gradient(#000,#000);
  mask-composite: exclude;
}
.hover-reactive.is-pointer-active {
  --card-lift: -2px;
  border-color: rgba(75,125,213,.38);
  box-shadow: 0 10px 30px -8px rgba(9,21,34,.24);
}
.hover-reactive.is-pointer-active > .pointer-spot,
.hover-reactive.is-pointer-active > .pointer-border { opacity: 1; }
.hover-reactive:focus-visible {
  --card-lift: -2px;
  outline: 3px solid rgba(116,224,193,.52);
  outline-offset: 3px;
}
.department-card.hover-reactive > :not(.department-thumb):not(.pointer-spot):not(.pointer-border) { z-index: 3; }
.department-card.hover-reactive > .pointer-spot { z-index: 2; }
.department-card.hover-reactive > .pointer-border { z-index: 4; }
.department-card.hover-reactive.is-pointer-active { border-color: var(--line-dark); background-color: rgba(255,255,255,.055); box-shadow: inset 0 0 0 1px rgba(116,224,193,.12), 0 10px 32px -8px rgba(4,12,20,.42); }
.flow-node.hover-reactive::after { z-index: 3; }
.platform-logo.hover-reactive.is-pointer-active { border-color: rgba(116,224,193,.36); background-color: rgba(255,255,255,.065); box-shadow: 0 8px 24px -6px rgba(4,12,20,.42); }
.audit-card.hover-reactive.is-pointer-active { border-color: rgba(116,224,193,.36); background-color: rgba(255,255,255,.09); box-shadow: 0 10px 32px -8px rgba(4,12,20,.46); }

@media (max-width: 1020px) {
  .section-pad { padding: 95px 0; }
  .nav-toggle { display: block; }
  .primary-nav { position: fixed; top: 76px; right: 0; bottom: 0; display: flex; width: min(88vw, 430px); align-items: stretch; flex-direction: column; padding: 25px; background: var(--ink-deep); transform: translateX(105%); transition: transform 260ms ease; overflow-y: auto; }
  .primary-nav.open { transform: translateX(0); }
  .nav-link { padding: 14px 8px; text-align: left; }
  .primary-nav > .button { margin-top: 15px; text-align: center; }
  .nav-dropdown-panel { position: static; display: none; width: auto; grid-template-columns: 1fr; padding: 8px; border: 0; background: rgba(255,255,255,.05); box-shadow: none; opacity: 1; pointer-events: auto; transform: none; }
  .nav-dropdown-panel.open { display: grid; }
  .hero { min-height: 0; padding: 150px 0 110px; }
  .hero-photo-backdrop img { object-position: 62% center; }
  .hero-grid { grid-template-columns: 1fr; gap: 100px; }
  .hero-copy { max-width: 760px; }
  .hero-system { width: min(100%, 650px); margin: 0 auto; }
  .platform-bar-inner { grid-template-columns: 1fr; gap: 18px; }
  .platform-logos { grid-template-columns: repeat(3, 1fr); }
  .platform-note { grid-column: 1; margin: 0; text-align: left; }
  .heading-split { gap: 50px; }
  .solution-grid { gap: 55px; }
  .solution-visual { min-height: 500px; transform: scale(.88); }
  .agent-org-chart { min-height: 560px; transform: none; }
  .agent-specialists { right: 12px; left: 12px; gap: 7px; }
  .agent-specialists .agent-node { padding: 8px; }
  .agent-specialists .agent-node-icon { width: 29px; height: 29px; }
  .agent-specialists .agent-node strong { font-size: .64rem; }
  .tasks-grid { gap: 60px; }
  .audit-grid { gap: 65px; }
}

@media (max-width: 760px) {
  .container { width: min(calc(100% - 28px), var(--container)); }
  .section-pad { padding: 78px 0; }
  .brand-copy small { display: none; }
  .hero { padding: 130px 0 95px; }
  .hero h1 { font-size: clamp(2.85rem, 14vw, 4.2rem); }
  .hero-lede { font-size: 1.08rem; }
  .trust-line { display: grid; gap: 11px; }
  .floating-card-top { right: 3px; }
  .floating-card-bottom { left: 3px; }
  .system-topbar { grid-template-columns: 1fr 1fr; }
  .system-topbar > span:nth-child(2) { display: none; }
  .workflow-canvas { padding: 28px 16px; }
  .workflow-line { left: 38px; }
  .workflow-step { gap: 10px; padding: 10px; }
  .step-icon { width: 34px; height: 34px; }
  .heading-split, .solution-grid, .tasks-grid, .audit-grid { grid-template-columns: 1fr; gap: 42px; }
  .scorecard-teaser-grid { grid-template-columns: 1fr; gap: 35px; }
  .section-heading { margin-bottom: 42px; }
  .friction-grid { grid-template-columns: 1fr; }
  .friction-card, .friction-card:first-child, .friction-card:last-child { min-height: 0; padding: 30px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .friction-card:last-child { border-bottom: 0; }
  .card-number { margin-bottom: 26px; }
  .insight-band { align-items: flex-start; flex-direction: column; }
  .solution-grid { gap: 20px; }
  .solution-visual { min-height: 440px; margin: -25px 0; transform: scale(.75); }
  .agent-org-chart { min-height: 0; margin: 0; transform: none; }
  .agent-chart-shell { padding-bottom: 14px; }
  .agent-chart-header { align-items: flex-start; flex-direction: column; justify-content: center; padding: 12px 16px; }
  .agent-chart-stage { display: grid; height: auto; gap: 10px; padding: 16px; background-size: 36px 36px; }
  .agent-chart-lines, .agent-signal { display: none; }
  .agent-node, .agent-owner, .agent-coordinator { position: relative; top: auto; left: auto; width: 100%; transform: none; }
  .agent-coordinator.is-active { transform: translateY(-2px); }
  .agent-specialists { position: relative; top: auto; right: auto; left: auto; display: grid; grid-template-columns: 1fr; gap: 10px; }
  .agent-specialists .agent-node { min-height: 76px; grid-template-columns: 38px minmax(0, 1fr) auto; padding: 12px; }
  .agent-specialists .agent-node-icon { width: 38px; height: 38px; }
  .agent-specialists .agent-node div { padding-top: 0; }
  .agent-specialists .agent-state { position: static; padding: 4px 6px; }
  .agent-review-queue { position: relative; right: auto; bottom: auto; left: auto; grid-template-columns: 1fr; gap: 5px; }
  .solution-photo { min-height: 440px; margin: 0; transform: none; }
  .solution-photo > img { min-height: 440px; }
  .build-grid { grid-template-columns: 1fr; }
  .featured-build { display: block; min-height: 0; grid-column: auto; padding: 35px; }
  .featured-build .build-icon { width: 80px; height: 80px; margin: 0 0 40px; font-size: 1.8rem; }
  .build-card { min-height: 270px; }
  .department-grid { grid-template-columns: 1fr; }
  .department-card, .department-card:nth-child(even) { min-height: 210px; padding: 28px 18px; border-right: 0; }
  .department-thumb { width: 72%; }
  .services-photo { margin-bottom: 55px; }
  .process-item { grid-template-columns: 48px 1fr; gap: 15px; }
  .process-time { display: none; }
  .tasks-intro { position: static; }
  .task-group { grid-template-columns: 1fr; }
  .task-group ul { grid-template-columns: 1fr; }
  .service-row { grid-template-columns: 42px 1fr; gap: 15px; }
  .service-row p { grid-column: 2; }
  .audit-section { padding: 80px 0; }
  .audit-card { padding: 27px 22px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 45px 30px; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-bottom { align-items: flex-start; flex-direction: column; }
  .mobile-cta { position: fixed; z-index: 900; right: 14px; bottom: 14px; left: 14px; display: flex; min-height: 52px; align-items: center; justify-content: center; gap: 10px; border-radius: 999px; background: var(--blue); color: var(--white); box-shadow: 0 15px 35px rgba(9,21,34,.3); font-size: .84rem; font-weight: 800; }
  .site-footer { padding-bottom: 95px; }
  .audit-modal { padding: 10px; }
  .audit-dialog { max-height: calc(100vh - 20px); padding: 28px 18px; }
  .audit-dialog-intro { padding-right: 35px; }
  .form-grid { grid-template-columns: 1fr; }
}

@media (max-width: 420px) {
  .brand img { width: 38px; height: 38px; }
  .brand-copy strong { font-size: 1.05rem; }
  .button-group { flex-direction: column; }
  .button-group .button { width: 100%; }
  .system-window { border-radius: 15px; }
  .platform-logos { grid-template-columns: repeat(2, 1fr); }
  .workflow-step strong { font-size: .7rem; }
  .floating-card { display: none; }
  .editorial-break, .editorial-break img { min-height: 350px; }
  .editorial-break figcaption { align-items: flex-start; flex-direction: column; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-brand { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .reveal { opacity: 1; transform: none; }
  .hover-reactive { transform: none !important; }
  .agent-live-dot, .agent-signal, .agent-node.is-active .agent-workbar span { animation: none !important; }
  .system-topbar .status-live i, .active-step .step-workbar span { animation: none !important; }
  .workflow-signal { display: none; }
}
