@font-face {
  font-family: "Inter Variable";
  src: url("../fonts/InterVariable.woff2") format("woff2");
  font-display: swap;
  font-style: normal;
  font-weight: 100 900;
}

/* 2026 visual system: reusable asymmetric fields, product carousel and richer hero diagrams. */
.section { position:relative; isolation:isolate; overflow:hidden; }
.section > .shell { position:relative; z-index:2; }
.section::before { position:absolute; z-index:0; inset:0; pointer-events:none; opacity:.62; background-image:radial-gradient(circle at 12% 26%,rgba(70,151,255,.12) 0 2px,transparent 3px),radial-gradient(circle at 84% 72%,rgba(84,215,197,.09) 0 2px,transparent 3px),linear-gradient(115deg,transparent 0 19%,rgba(89,158,246,.055) 19.1% 19.25%,transparent 19.35% 62%,rgba(89,158,246,.04) 62.1% 62.25%,transparent 62.35%); background-size:82px 82px,118px 118px,100% 100%; content:""; -webkit-mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.32) 48%,#000); mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.32) 48%,#000); }
.section::after { position:absolute; z-index:1; width:clamp(210px,28vw,460px); aspect-ratio:1; top:12%; right:-13%; pointer-events:none; border:1px solid rgba(74,147,255,.11); border-radius:50%; box-shadow:0 0 0 34px rgba(74,147,255,.035),0 0 0 86px rgba(74,147,255,.022); content:""; animation:ambientFloat 16s ease-in-out infinite alternate; }
.section:nth-of-type(even)::after { top:auto; right:auto; bottom:-18%; left:-10%; animation-delay:-6s; }
.page-hero__grid { opacity:.72; background-size:52px 52px; }
.page-hero__grid::after { position:absolute; inset:0; background:radial-gradient(circle at 76% 38%,rgba(57,144,255,.16),transparent 31%),linear-gradient(130deg,transparent 15%,rgba(91,165,255,.08) 15.2%,transparent 15.4% 68%,rgba(91,165,255,.06) 68.2%,transparent 68.4%); content:""; }
@keyframes ambientFloat { to { transform:translate3d(-34px,42px,0) rotate(13deg); } }

.product-carousel { position:relative; }
.product-carousel__controls { display:flex; align-items:center; justify-content:flex-end; gap:10px; margin:0 0 18px; color:#6f8299; font-family:ui-monospace,monospace; font-size:11px; letter-spacing:.12em; }
.product-carousel__controls button { display:grid; width:42px; height:42px; place-items:center; border:1px solid rgba(118,175,245,.2); border-radius:50%; background:rgba(12,22,36,.82); color:#d8e8fb; font-size:18px; cursor:pointer; transition:.25s ease; }
.product-carousel__controls button:hover:not(:disabled) { border-color:rgba(92,172,255,.65); background:rgba(57,126,226,.18); transform:translateY(-2px); }
.product-carousel__controls button:disabled { opacity:.3; cursor:default; }
.product-carousel__controls b { color:#82bbff; }
.product-carousel .product-showcase-grid { display:grid; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:calc((100% - 36px)/3); gap:18px; overflow-x:auto; padding:6px 2px 22px; scroll-behavior:smooth; scroll-snap-type:x mandatory; scrollbar-width:none; }
.product-carousel .product-showcase-grid::-webkit-scrollbar { display:none; }
.product-carousel .product-showcase,.product-carousel .product-showcase:nth-last-child(-n+2) { grid-column:auto; scroll-snap-align:start; }
.product-showcase__content { min-height:330px; }
.product-showcase__pattern { opacity:.7; background-image:radial-gradient(circle at 78% 24%,rgba(102,194,255,.8) 0 2px,transparent 3px),radial-gradient(circle at 61% 42%,rgba(255,255,255,.34) 0 1px,transparent 2px),linear-gradient(135deg,transparent 0 38%,rgba(106,181,255,.2) 38.2% 38.5%,transparent 38.7%),linear-gradient(28deg,transparent 0 61%,rgba(106,181,255,.16) 61.2% 61.5%,transparent 61.7%); background-size:130px 130px,74px 74px,100% 100%,100% 100%; -webkit-mask-image:linear-gradient(135deg,transparent 8%,#000 56%,rgba(0,0,0,.25)); mask-image:linear-gradient(135deg,transparent 8%,#000 56%,rgba(0,0,0,.25)); }
.product-showcase__content::after { position:absolute; width:120px; height:120px; top:-46px; right:-40px; border:1px solid color-mix(in srgb,var(--product-accent) 25%,transparent); border-radius:50%; box-shadow:0 0 0 18px color-mix(in srgb,var(--product-accent) 4%,transparent); content:""; }

.partner-wall--logos { grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; background:transparent; }
.partner-wall--logos span { min-height:112px; border:1px solid rgba(255,255,255,.11); border-radius:14px; background:#fff; box-shadow:0 16px 36px rgba(0,0,0,.14); }
.partner-wall--logos span:hover { transform:translateY(-4px); box-shadow:0 24px 48px rgba(0,0,0,.22); }
.partner-wall--logos img { max-width:136px; height:48px; }

.closing-cta::before { opacity:.9; background:radial-gradient(circle at 14% 68%,rgba(50,135,255,.22),transparent 28%),radial-gradient(circle at 84% 22%,rgba(77,207,218,.13),transparent 24%),repeating-radial-gradient(circle at 50% 50%,transparent 0 72px,rgba(104,174,255,.08) 73px 74px); }
.closing-cta::after { right:7%; top:13%; width:210px; box-shadow:0 0 0 42px rgba(75,150,255,.045),0 0 0 96px rgba(75,150,255,.025),0 0 0 158px rgba(75,150,255,.015); }

.product-system-visual { position:relative; min-height:520px; overflow:hidden; border:1px solid rgba(117,178,255,.16); border-radius:34px; background:radial-gradient(circle at 50% 48%,rgba(47,129,242,.2),transparent 26%),linear-gradient(145deg,rgba(16,28,47,.86),rgba(6,11,19,.96)); box-shadow:0 38px 100px rgba(0,0,0,.38); }
.product-system-visual__mesh { position:absolute; inset:-30%; opacity:.42; background-image:linear-gradient(rgba(112,172,245,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(112,172,245,.09) 1px,transparent 1px); background-size:34px 34px; transform:perspective(500px) rotateX(58deg) rotateZ(-12deg); animation:meshDrift 14s linear infinite; }
.product-system-visual__orbit { position:absolute; top:50%; left:50%; border:1px solid rgba(100,177,255,.22); border-radius:50%; transform:translate(-50%,-50%) rotate(-16deg); }
.product-system-visual__orbit::after { position:absolute; width:7px; height:7px; top:50%; right:-4px; border-radius:50%; background:#7fc8ff; box-shadow:0 0 18px #4da4ff; content:""; }
.product-system-visual__orbit--one { width:78%; aspect-ratio:1.3; animation:orbitTilt 15s linear infinite; }
.product-system-visual__orbit--two { width:58%; aspect-ratio:1; border-style:dashed; animation:orbitTilt 21s linear infinite reverse; }
.product-system-visual__orbit--three { width:34%; aspect-ratio:1; animation:pulseRing 5s ease-in-out infinite; }
.product-system-visual__core { position:absolute; z-index:3; width:180px; left:50%; top:50%; transform:translate(-50%,-50%); filter:drop-shadow(0 14px 30px rgba(0,0,0,.35)); }
.product-system-visual__node { position:absolute; z-index:4; display:grid; width:92px; height:62px; place-items:center; padding:12px; border:1px solid rgba(126,185,255,.2); border-radius:16px; background:rgba(247,250,255,.96); box-shadow:0 16px 36px rgba(0,0,0,.28); animation:nodeFloat 5s ease-in-out infinite alternate; }
.product-system-visual__node img { max-width:100%; max-height:100%; object-fit:contain; }
.product-system-visual__node--1 { top:13%; left:39%; }
.product-system-visual__node--2 { top:30%; right:8%; animation-delay:-1s; }
.product-system-visual__node--3 { right:18%; bottom:10%; animation-delay:-2s; }
.product-system-visual__node--4 { left:13%; bottom:18%; animation-delay:-3s; }
.product-system-visual__node--5 { top:18%; left:7%; animation-delay:-4s; }
.product-system-visual__telemetry { position:absolute; z-index:3; right:24px; bottom:22px; display:grid; grid-template-columns:auto 1fr; gap:2px 9px; color:#7088a6; font-family:ui-monospace,monospace; font-size:8px; letter-spacing:.12em; }
.product-system-visual__telemetry i { grid-row:span 2; width:7px; height:7px; margin-top:3px; border-radius:50%; background:#55dfa0; box-shadow:0 0 12px #55dfa0; }
.product-system-visual__telemetry b { color:#9bb9da; font-size:8px; }
@keyframes meshDrift { to { transform:perspective(500px) rotateX(58deg) rotateZ(-12deg) translate3d(34px,34px,0); } }
@keyframes orbitTilt { to { transform:translate(-50%,-50%) rotate(344deg); } }
@keyframes pulseRing { 50% { opacity:.45; transform:translate(-50%,-50%) scale(1.08); } }
@keyframes nodeFloat { to { transform:translateY(-9px) rotate(1deg); } }

.service-system--expanded::before,.tech-constellation--expanded::before { inset:4%; border-style:solid; box-shadow:0 0 0 42px rgba(95,167,255,.045),0 0 0 88px rgba(95,167,255,.025); }
.service-system--expanded::after,.tech-constellation--expanded::after { inset:25%; box-shadow:0 0 0 58px rgba(95,167,255,.025); }
.service-system--expanded .service-system__node,.tech-constellation--expanded .tech-constellation__node { top:var(--y)!important; left:var(--x)!important; right:auto!important; bottom:auto!important; transform:translate(-50%,-50%); animation:constellationFloat 5s calc(var(--i)*-.57s) ease-in-out infinite alternate; }
.service-system--expanded .service-system__node { width:76px; height:76px; }
.tech-constellation--expanded .tech-constellation__node { width:52px; height:52px; }
.tech-constellation--expanded .tech-constellation__core { inset:auto; top:50%; left:50%; width:168px; height:auto; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; transform:translate(-50%,-50%); }
.tech-constellation--expanded .tech-constellation__core img { width:100%; height:auto; max-height:none; margin:0; filter:none; }
@keyframes constellationFloat { to { transform:translate(-50%,calc(-50% - 9px)) rotate(2deg); } }

.work-radar-shell { display:grid; justify-items:center; }
.work-radar--constellation { width:min(100%,500px); aspect-ratio:1; }
.work-radar--constellation .work-radar__scan { inset:0; width:100%; height:100%; border-radius:50%; background:conic-gradient(from -90deg,rgba(63,145,255,.34) 0deg,rgba(63,145,255,.11) 58deg,transparent 90deg 360deg); transform-origin:50% 50%; animation:radar 7s linear infinite; }
.work-radar--constellation .work-radar__scan::after { position:absolute; width:50%; height:1px; top:50%; left:50%; background:linear-gradient(90deg,#77c4ff,transparent); box-shadow:0 0 12px rgba(73,162,255,.8); content:""; transform-origin:left center; transform:rotate(-90deg); }
.work-radar__status { display:flex; align-items:center; gap:9px; margin-top:18px; color:#7796bb; font-family:ui-monospace,monospace; font-size:9px; letter-spacing:.13em; }
.work-radar__status i { width:7px; height:7px; border-radius:50%; background:#55dfa0; box-shadow:0 0 12px #55dfa0; }
.work-radar--constellation > small { position:static; }

.dion-shape { border-radius:clamp(44px,8vw,112px) 8px clamp(44px,8vw,112px) 8px!important; }
.about-hero-visual { aspect-ratio:1.22; }
.about-hero-visual > img { object-position:center; }
.number-grid--four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.ceo-signature { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.ceo-signature > div { display:grid; gap:4px; }
.linkedin-link { display:inline-flex; align-items:center; gap:8px; padding:9px 12px; border:1px solid rgba(98,169,255,.22); border-radius:10px; color:#7eb8ff; font-family:ui-monospace,monospace; font-size:12px; font-weight:750; text-decoration:none; }
.linkedin-link span { color:#9caec3; font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.office-manifesto { min-height:620px; display:flex; align-items:end; background:#05080d; }
.office-manifesto__image { position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,8,14,.98) 0%,rgba(4,8,14,.74) 48%,rgba(4,8,14,.46)),linear-gradient(0deg,rgba(4,8,14,.92),transparent 60%),url('../images/company/office-2026.jpg') center/cover no-repeat; filter:grayscale(1) contrast(1.08); opacity:.76; }
.office-manifesto__copy { width:100%; padding-bottom:clamp(70px,9vw,125px); }
.office-manifesto__copy h2 { max-width:820px; margin:14px 0 20px; color:#f4f8fd; font-size:clamp(40px,5vw,72px); font-weight:550; letter-spacing:-.055em; line-height:1.03; }
.office-manifesto__copy p:last-child { max-width:680px; color:#a0afc1; line-height:1.75; }
.history-timeline { position:relative; display:grid; gap:clamp(70px,9vw,130px); margin-top:80px; }
.history-timeline::before { position:absolute; top:0; bottom:0; left:50%; width:1px; background:linear-gradient(transparent,rgba(93,164,247,.28) 8%,rgba(93,164,247,.28) 92%,transparent); content:""; }
.history-row { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(55px,9vw,150px); }
.history-row--reverse figure { order:2; }
.history-row figure { overflow:hidden; margin:0; border:1px solid rgba(255,255,255,.12); box-shadow:0 28px 70px rgba(0,0,0,.28); }
.history-row figure img { display:block; width:100%; aspect-ratio:1.42; object-fit:cover; }
.history-row--compact figure { max-width:440px; justify-self:end; }
.history-row--compact figure img { aspect-ratio:1.25; }
.history-row > div > span { display:inline-flex; margin-bottom:18px; color:#69a9f6; font-family:ui-monospace,monospace; font-size:12px; font-weight:760; letter-spacing:.14em; }
.history-row h3 { margin-bottom:17px; color:#f1f5fb; font-size:clamp(28px,3vw,43px); font-weight:560; letter-spacing:-.045em; }
.history-row p { color:#99a9bb; font-size:14px; line-height:1.8; }
.history-row .text-link { margin-top:22px; }

.product-deep-dive,.blockchain-callout { background:#080d15; }
.ecosystem-module-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.ecosystem-module-grid article,.finwork-use-grid article { position:relative; overflow:hidden; padding:28px; border:1px solid rgba(110,173,248,.14); border-radius:18px; background:linear-gradient(155deg,rgba(19,31,49,.86),rgba(9,15,25,.95)); }
.ecosystem-module-grid article::after,.finwork-use-grid article::after { position:absolute; width:120px; height:120px; top:-62px; right:-62px; border:1px solid rgba(86,160,246,.18); border-radius:50%; content:""; }
.ecosystem-module-grid h3,.finwork-use-grid h3 { margin:23px 0 10px; color:#edf4fd; font-size:19px; }
.ecosystem-module-grid p,.finwork-use-grid p { color:#8fa0b4; font-size:13px; line-height:1.65; }
.finwork-use-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.finwork-use-grid article > img { width:auto; max-width:120px; height:34px; margin-bottom:22px; object-fit:contain; padding:5px; border-radius:7px; background:#fff; }
.finwork-use-grid small { display:block; margin:20px 0 -13px; color:#65a8fa; font-size:9px; font-weight:720; letter-spacing:.1em; text-transform:uppercase; }
.blockchain-callout__inner { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:35px; padding:52px; border:1px solid rgba(92,169,255,.2); border-radius:24px; background:radial-gradient(circle at 100% 0,rgba(63,143,246,.15),transparent 36%),rgba(10,18,29,.82); }
.blockchain-callout__inner h2 { max-width:800px; margin:10px 0 14px; color:#f0f5fc; font-size:clamp(32px,4vw,54px); font-weight:550; letter-spacing:-.05em; }
.blockchain-callout__inner p:last-child { max-width:800px; color:#9aabba; line-height:1.75; }
.blockchain-callout__badge { display:grid; width:128px; height:128px; place-items:center; border:1px solid rgba(105,181,255,.3); border-radius:50%; color:#7dbaff; font-family:ui-monospace,monospace; font-size:28px; font-weight:800; text-align:center; box-shadow:0 0 0 18px rgba(69,146,241,.04); }
.blockchain-callout__badge small { display:block; max-width:86px; color:#7890aa; font-size:7px; letter-spacing:.08em; text-transform:uppercase; }

@media (max-width:980px) {
  .product-carousel .product-showcase-grid { grid-auto-columns:calc((100% - 18px)/2); }
  .number-grid--four { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ecosystem-module-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .history-row { gap:50px; }
  .partner-wall--logos { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width:700px) {
  .section::after { opacity:.6; }
  .product-carousel .product-showcase-grid { grid-auto-columns:88%; }
  .product-carousel__controls { justify-content:space-between; }
  .product-system-visual { min-height:390px; }
  .product-system-visual__core { width:122px; }
  .product-system-visual__node { width:68px; height:50px; padding:9px; }
  .service-system--expanded .service-system__node { width:55px; height:55px; }
  .tech-constellation--expanded .tech-constellation__core { width:115px; }
  .number-grid--four,.ecosystem-module-grid,.finwork-use-grid { grid-template-columns:1fr; }
  .history-timeline::before { left:13px; }
  .history-row { grid-template-columns:1fr; gap:26px; padding-left:42px; }
  .history-row--reverse figure { order:0; }
  .history-row--compact figure { max-width:310px; justify-self:start; }
  .office-manifesto { min-height:540px; }
  .blockchain-callout__inner { grid-template-columns:1fr; padding:30px; }
  .blockchain-callout__badge { width:100px; height:100px; }
  .partner-wall--logos { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
}

@media (prefers-reduced-motion:reduce) {
  .section::after,.product-system-visual__mesh,.product-system-visual__orbit,.product-system-visual__node,.service-system--expanded .service-system__node,.tech-constellation--expanded .tech-constellation__node { animation:none!important; }
}

:root { --font-sans: "Inter Variable", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }

body {
  font-family: var(--font-sans);
  font-optical-sizing: auto;
  font-variation-settings: "opsz" 16;
}

.hero__lede,
.page-lede {
  max-width: 620px;
  color: #aeb9c9;
  font-size: clamp(16px, 1.22vw, 19px);
  font-weight: 390;
  letter-spacing: -.014em;
  line-height: 1.62;
}

.icon-orb {
  display: inline-grid;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid rgba(102, 178, 255, .25);
  border-radius: 12px;
  background: linear-gradient(145deg, rgba(70, 151, 255, .18), rgba(71, 115, 255, .06));
  box-shadow: inset 0 1px rgba(255, 255, 255, .08), 0 12px 34px rgba(10, 84, 190, .1);
}

.icon-orb img,
.service-row__icon img,
.ai-workflow__step > img,
.service-system img,
.company-monogram__node img,
.org-grid img,
.work-radar__node img,
.case-study-row__visual > img,
.closing-cta__icon img,
.contact-detail img,
.privacy-section__icon img,
.location-copy .icon-orb img {
  width: 20px;
  height: 20px;
  filter: brightness(0) invert(1);
}

.icon-orb--large { width: 54px; height: 54px; border-radius: 15px; }
.icon-orb--large img { width: 24px; height: 24px; }

.card-icon-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 68px;
}

.card-icon-row .capability-card__index,
.card-icon-row .service-detail__index,
.card-icon-row > span:last-child,
.journey-icon b,
.principle-list span b,
.delivery-timeline li > span b,
.stack-group__symbol b,
.principle-grid span b,
.value-grid span b {
  color: #68aaff;
  font-family: var(--font-sans);
  font-size: 17px;
  font-weight: 720;
  letter-spacing: -.02em;
  line-height: 1;
}

/* AI agent console */
.agent-terminal {
  position: relative;
  width: min(100%, 640px);
  justify-self: end;
  overflow: hidden;
  border: 1px solid rgba(121, 182, 255, .22);
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(14, 23, 37, .97), rgba(7, 12, 21, .98)),
    #080d15;
  box-shadow: inset 0 1px rgba(255,255,255,.065), 0 38px 100px rgba(0, 0, 0, .42), 0 0 80px rgba(39, 119, 239, .1);
  isolation: isolate;
}

.agent-terminal::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image: linear-gradient(rgba(100,164,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(100,164,255,.035) 1px, transparent 1px);
  background-size: 28px 28px;
  content: "";
  -webkit-mask-image: linear-gradient(to bottom, transparent, #000 20%, #000);
  mask-image: linear-gradient(to bottom, transparent, #000 20%, #000);
}

.agent-terminal__glow {
  position: absolute;
  z-index: -1;
  width: 300px;
  height: 300px;
  right: -110px;
  bottom: -120px;
  border-radius: 50%;
  background: rgba(47, 132, 255, .18);
  filter: blur(70px);
}

.agent-terminal__bar {
  display: grid;
  min-height: 52px;
  grid-template-columns: 72px 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 0 18px;
  border-bottom: 1px solid rgba(255,255,255,.09);
  background: rgba(255,255,255,.025);
}

.agent-terminal__bar strong {
  overflow: hidden;
  color: #ccd6e3;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 11px;
  font-weight: 580;
  letter-spacing: .025em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-terminal__bar small { color: #718096; font-size: 9px; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.agent-terminal__bar small i { display: inline-block; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: #62e6a5; box-shadow: 0 0 12px #62e6a5; }
.agent-terminal__dots { display: flex; gap: 6px; }
.agent-terminal__dots span { width: 7px; height: 7px; border-radius: 50%; background: #ff6980; }
.agent-terminal__dots span:nth-child(2) { background: #ffc15f; }
.agent-terminal__dots span:nth-child(3) { background: #5ce1a2; }

.agent-terminal__workspace { display: grid; min-height: 330px; grid-template-columns: 48px 1fr; }
.agent-terminal__rail { padding-top: 23px; border-right: 1px solid rgba(255,255,255,.07); background: rgba(1,4,9,.22); }
.agent-terminal__rail span { display: grid; height: 38px; place-items: center; color: #45556c; font-family: ui-monospace, monospace; font-size: 9px; }
.agent-terminal__rail .is-active { color: #7ab8ff; background: linear-gradient(90deg, rgba(68,148,255,.18), transparent); box-shadow: inset 2px 0 #4b9dff; }
.agent-terminal__output { min-width: 0; padding: 26px 26px 20px; font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace; }
.terminal-line { position: relative; margin: 0 0 15px; padding-left: 18px; color: #8b9aaf; font-size: clamp(10px, .86vw, 12px); line-height: 1.65; overflow-wrap: anywhere; }
.terminal-line::before { position: absolute; top: .68em; left: 0; width: 5px; height: 5px; border-radius: 50%; background: #455268; content: ""; }
.terminal-line--command { margin-bottom: 22px; padding-left: 0; color: #d7e4f4; }
.terminal-line--command::before { display: none; }
.terminal-line--info::before { background: #6b9cff; box-shadow: 0 0 10px rgba(92,155,255,.6); }
.terminal-line--success { color: #a9cabb; }
.terminal-line--success::before { background: #57dda0; box-shadow: 0 0 10px rgba(87,221,160,.52); }
.terminal-line--progress { color: #80b8ff; }
.terminal-line--progress::before { background: #6daeff; animation: terminalPulse 1s ease infinite; }
.terminal-line--done { margin-top: 24px; padding: 13px 15px; border: 1px solid rgba(92, 225, 166, .18); border-radius: 9px; background: rgba(70, 214, 152, .07); color: #b8f4d5; font-weight: 650; }
.terminal-line--done::before { display: none; }
.terminal-cursor { display: inline-block; width: 6px; height: 1.1em; margin-left: 2px; vertical-align: -.2em; background: #83c4ff; animation: cursorBlink .75s step-end infinite; }

.agent-terminal__progress { display: flex; align-items: center; gap: 14px; padding: 0 20px 17px 68px; }
.agent-terminal__progress > span { height: 3px; flex: 1; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }
.agent-terminal__progress i { display: block; width: 100%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #3478f2, #58c7ff, #66e2a3); box-shadow: 0 0 14px rgba(78,179,255,.6); transition: width .12s linear; }
.agent-terminal__progress b { width: 36px; color: #84baff; font-family: ui-monospace, monospace; font-size: 9px; font-weight: 600; }
.agent-terminal__controls { display: flex; flex-wrap: wrap; gap: 8px; padding: 14px 18px; border-top: 1px solid rgba(255,255,255,.075); background: rgba(255,255,255,.018); }
.agent-terminal__controls span { display: inline-flex; align-items: center; gap: 7px; padding: 7px 9px; border: 1px solid rgba(255,255,255,.08); border-radius: 6px; color: #79889c; font-size: 8px; font-weight: 650; letter-spacing: .05em; text-transform: uppercase; }
.agent-terminal__controls img { width: 12px; height: 12px; filter: brightness(0) invert(1); opacity: .7; }
.agent-terminal--compact { width: min(100%, 530px); }
.agent-terminal--compact .agent-terminal__workspace { min-height: 286px; }

@keyframes terminalPulse { 50% { opacity: .25; transform: scale(.75); } }
@keyframes cursorBlink { 50% { opacity: 0; } }

/* Real product interfaces and identities */
.product-feature { overflow: hidden; }
.product-feature__body { position: relative; z-index: 2; }
.product-feature .product-feature__visual,
.product-feature--wide .product-feature__visual {
  position: absolute;
  top: auto;
  right: 0;
  bottom: 0;
  width: 49%;
  min-width: 0;
  max-width: none;
  height: 63%;
  aspect-ratio: auto;
  overflow: hidden;
  border: 0;
  border-top: 1px solid rgba(255,255,255,.12);
  border-left: 1px solid rgba(255,255,255,.1);
  border-radius: 18px 0 0 0;
  background: #0d1420;
  box-shadow: -22px -20px 70px rgba(0,0,0,.22);
  transform: perspective(900px) rotateY(-3deg) translate(1px, 1px);
  transform-origin: right bottom;
}

.product-feature--wide .product-feature__visual { width: 48%; height: 69%; }
.product-feature__screen { width: 100%; height: 100%; object-fit: cover; object-position: top center; opacity: .82; transition: transform .8s var(--ease), opacity .4s ease; }
.product-feature:hover .product-feature__screen { opacity: .96; transform: scale(1.025); }
.product-feature__visual::after { position: absolute; inset: 0; background: linear-gradient(100deg, rgba(8,13,22,.82), transparent 38%), linear-gradient(0deg, rgba(8,13,22,.82), transparent 45%); content: ""; pointer-events: none; }
.product-feature__brand { position: absolute; z-index: 2; left: 18px; bottom: 17px; display: flex; max-width: calc(100% - 36px); align-items: center; gap: 11px; padding: 8px 11px; border: 1px solid rgba(255,255,255,.14); border-radius: 9px; background: rgba(6,11,19,.78); box-shadow: 0 8px 24px rgba(0,0,0,.28); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.product-feature__brand img { width: auto; max-width: 108px; height: 22px; object-fit: contain; }
.product-feature__brand span { color: #8190a4; font-size: 8px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; white-space: nowrap; }
.product-feature__scan { position: absolute; z-index: 2; top: -25%; right: 0; left: 0; height: 28%; background: linear-gradient(180deg, transparent, rgba(105,198,255,.11), transparent); animation: productScan 5.2s ease-in-out infinite; }
@keyframes productScan { 0%, 14% { transform: translateY(-40%); } 70%, 100% { transform: translateY(520%); } }

.product-constellation,
.tech-constellation,
.service-system {
  position: relative;
  width: min(100%, 470px);
  aspect-ratio: 1;
  justify-self: end;
}

.product-constellation::before,
.product-constellation::after,
.tech-constellation::before,
.tech-constellation::after,
.service-system::before,
.service-system::after {
  position: absolute;
  inset: 9%;
  border: 1px solid rgba(92,165,255,.17);
  border-radius: 50%;
  content: "";
}

.product-constellation::after,
.tech-constellation::after,
.service-system::after { inset: 25%; border-style: dashed; animation: orbitSpin 24s linear infinite reverse; }
.product-constellation__core,
.tech-constellation__core,
.service-system__core {
  position: absolute;
  z-index: 2;
  inset: 35%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border: 1px solid rgba(114,188,255,.3);
  border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, rgba(70,155,255,.35), rgba(12,22,37,.94) 65%);
  box-shadow: 0 0 80px rgba(45,126,244,.18), inset 0 1px rgba(255,255,255,.1);
}
.product-constellation__core img { width: 42%; max-height: 45%; object-fit: contain; }
.tech-constellation__core > img,
.service-system__core > img { width: 28px; height: 28px; margin-bottom: 9px; filter: brightness(0) invert(1); }
.product-constellation__core b,
.tech-constellation__core b,
.service-system__core strong { margin-top: 5px; color: #d9e9fb; font-size: 11px; letter-spacing: .14em; }
.product-constellation__core small,
.tech-constellation__core small,
.service-system__core small { margin-top: 3px; color: #6c7e95; font-size: 7px; letter-spacing: .08em; text-transform: uppercase; }

.product-constellation__node,
.tech-constellation__node,
.service-system__node {
  --angle: calc(var(--i) * 72deg - 90deg);
  position: absolute;
  z-index: 3;
  top: calc(50% + 41% * sin(var(--angle)));
  left: calc(50% + 41% * cos(var(--angle)));
  display: grid;
  width: 76px;
  height: 76px;
  place-items: center;
  padding: 13px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 20px;
  background: rgba(12,20,32,.88);
  box-shadow: 0 16px 45px rgba(0,0,0,.3), inset 0 1px rgba(255,255,255,.08);
  transform: translate(-50%,-50%);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  animation: nodeFloat 5s ease-in-out infinite;
  animation-delay: calc(var(--i) * -.7s);
}
.product-constellation__node img { max-width: 100%; max-height: 42px; object-fit: contain; }
.tech-constellation__node { --angle: calc(var(--i) * 60deg - 90deg); width: 64px; height: 64px; padding: 15px; border-radius: 18px; }
.tech-constellation__node img { width: 100%; height: 100%; object-fit: contain; }
.service-system__node { --angle: calc(var(--i) * 90deg - 45deg); width: 94px; height: 94px; padding: 12px; border-radius: 24px; text-align: center; }
.service-system__node img { margin: 0 auto 7px; }
.service-system__node strong { display: block; color: #c7d5e5; font-size: 9px; line-height: 1.25; }
.service-system__node small { color: #607188; font-size: 7px; }
@keyframes orbitSpin { to { transform: rotate(360deg); } }
@keyframes nodeFloat { 50% { margin-top: -7px; box-shadow: 0 24px 55px rgba(23,97,205,.27), inset 0 1px rgba(255,255,255,.1); } }

.portfolio-item__number { display: flex; align-items: center; gap: 12px; padding-top: 8px; }
.portfolio-item__number img { width: 25px; height: 25px; filter: brightness(0) invert(1); opacity: .8; }
.portfolio-item__number span { color: #78aeec; font-family: var(--font-sans); font-size: 16px; font-weight: 730; }
.portfolio-item__showcase { min-width: 0; }
.portfolio-item__media { position: relative; aspect-ratio: 1.48; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 17px 17px 0 0; background: #101826; }
.portfolio-item__media img { width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.portfolio-item__media::after { position: absolute; inset: auto 0 0; height: 38%; background: linear-gradient(transparent, rgba(6,10,17,.78)); content: ""; }
.portfolio-item__media span { position: absolute; z-index: 2; top: 18px; left: 18px; width: 8px; height: 8px; border-radius: 50%; background: #60e2a0; box-shadow: 0 0 15px #60e2a0; }
.portfolio-item__brand { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 17px; border: 1px solid rgba(255,255,255,.12); border-top: 0; background: rgba(255,255,255,.025); }
.portfolio-item__brand img { width: auto; max-width: 130px; height: 26px; object-fit: contain; }
.portfolio-item__brand small { color: #708096; font-size: 8px; letter-spacing: .06em; text-align: right; }
.portfolio-item__showcase .portfolio-item__evidence { min-height: 0; padding: 21px 22px; border-top: 0; border-radius: 0 0 17px 17px; background: linear-gradient(140deg, var(--soft), rgba(12,18,29,.78)); }
.portfolio-item__showcase .evidence-label { margin-bottom: 12px; }
.portfolio-item__showcase .portfolio-item__evidence p { font-size: 12px; }

/* Technology and step readability */
.tech-cloud { gap: 10px; }
.tech-token { display: inline-flex; min-height: 47px; align-items: center; gap: 10px; padding: 9px 13px; border: 1px solid rgba(255,255,255,.09); border-radius: 9px; background: rgba(255,255,255,.025); }
.tech-token__icon { width: 24px; height: 24px; flex: 0 0 auto; object-fit: contain; }
.tech-token__icon--ui { filter: brightness(0) invert(1); opacity: .76; }
.tech-token img[src*="nextjs"], .tech-token img[src*="mapbox"], .tech-constellation img[src*="nextjs"] { filter: brightness(0) invert(1); }
.stack-group__head { align-items: flex-start; }
.stack-group__symbol { display: flex; min-width: 60px; align-items: center; flex-direction: column; gap: 11px; }
.stack-group__symbol img { width: 24px; height: 24px; filter: brightness(0) invert(1); opacity: .78; }
.stack-group__head .stack-group__symbol { color: inherit; font-family: inherit; font-size: inherit; }
.principle-grid span,
.value-grid span,
.journey-icon,
.principle-list span,
.delivery-timeline li > span { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.principle-grid span img,
.value-grid span img,
.journey-icon img,
.principle-list span img,
.delivery-timeline li > span img { width: 24px; height: 24px; filter: brightness(0) invert(1); }
.data-journey .journey-icon { margin-bottom: 58px; }
.data-journey .journey-icon img,
.principle-grid span img,
.value-grid span img { filter: none; opacity: .86; }
.service-detail .card-icon-row { margin-bottom: 58px; }
.service-detail .service-detail__index { margin-bottom: 0; }
.engagement-card .card-icon-row { margin-bottom: auto; }
.delivery-timeline li > span { margin-bottom: 48px; }

.service-row__icon { display: flex; align-items: center; gap: 12px; }
.service-row__icon img { width: 22px; height: 22px; }
.service-row__icon b { color: #6f9fda; font-family: var(--font-sans); font-size: 16px; }
.ai-workflow__step > img { width: 24px; height: 24px; margin: 0 auto 17px; opacity: .86; }

.partner-wall span { display: flex; gap: 12px; }
.partner-wall span > i { display: grid; width: 36px; height: 36px; flex: 0 0 auto; place-items: center; border: 1px solid rgba(100,170,255,.18); border-radius: 50%; background: rgba(57,125,224,.08); color: #79adf4; font-size: 10px; font-style: normal; font-weight: 750; }

/* Company, work and utility visual systems */
.company-monogram--system > span img { width: 58%; max-height: 180px; object-fit: contain; }
.company-monogram__node { position: absolute; display: grid; width: 58px; height: 58px; place-items: center; border: 1px solid rgba(112,183,255,.28); border-radius: 17px; background: rgba(9,17,29,.82); box-shadow: 0 15px 35px rgba(0,0,0,.25); }
.company-monogram__node--one { top: 9%; right: 12%; }
.company-monogram__node--two { bottom: 12%; left: 8%; }
.company-monogram__node--three { top: 27%; left: -5%; }
.number-grid > div > img { width: 28px; height: 28px; filter: brightness(0) invert(1); opacity: .72; }
.org-grid span { gap: 10px; grid-template-columns: 26px auto; justify-content: center; }
.org-grid img { width: 21px; height: 21px; }

.location-section { overflow: hidden; background: #eef2f7; color: #0a1422; }
.location-grid { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr); align-items: stretch; gap: 18px; }
.location-map { position: relative; min-height: 520px; overflow: hidden; border: 1px solid #ccd4df; border-radius: 20px; background: #dfe7f1; }
.location-map iframe { width: 100%; height: 100%; min-height: 520px; border: 0; filter: saturate(.7) contrast(1.04); }
.location-map span { position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.8); border-radius: inherit; pointer-events: none; }
.location-copy { display: flex; align-items: flex-start; justify-content: center; flex-direction: column; padding: clamp(34px,5vw,66px); border: 1px solid #ccd4df; border-radius: 20px; background: #fff; }
.location-copy .icon-orb { margin-bottom: 28px; background: linear-gradient(145deg,#1f76e8,#184fba); }
.location-copy .eyebrow { color: #1766d3; }
.location-copy h2 { margin-bottom: 26px; font-size: clamp(38px,4vw,58px); font-weight: 590; letter-spacing: -.05em; line-height: 1.02; }
.location-copy address { margin-bottom: 30px; color: #596679; font-size: 15px; line-height: 1.75; }
.button--light { background: #0c1727; color: #fff; }

.work-radar .work-radar__node { position: absolute; z-index: 3; display: grid; width: 48px; height: 48px; place-items: center; border: 1px solid rgba(100,170,255,.25); border-radius: 14px; background: rgba(8,16,28,.9); box-shadow: 0 12px 28px rgba(0,0,0,.28); font-style: normal; }
.work-radar .work-radar__node--one { top: 21%; right: auto; bottom: auto; left: 25%; }
.work-radar .work-radar__node--two { top: auto; right: 17%; bottom: 27%; left: auto; }
.work-radar .work-radar__node--three { top: 13%; right: 28%; bottom: auto; left: auto; }
.work-radar .work-radar__node--four { top: auto; right: auto; bottom: 16%; left: 28%; }
.case-study-row__visual > img { position: absolute; z-index: 2; top: 20px; left: 20px; width: 28px; height: 28px; }

.closing-cta__icon { display: grid; width: 64px; height: 64px; margin: 0 auto 28px; place-items: center; border: 1px solid rgba(112,185,255,.3); border-radius: 20px; background: rgba(66,143,255,.12); box-shadow: 0 20px 70px rgba(40,119,239,.22); }
.closing-cta__icon img { width: 26px; height: 26px; }
.closing-cta__icon i { position: absolute; width: 6px; height: 6px; margin: -44px -48px 0 0; border-radius: 50%; background: #64e0a3; box-shadow: 0 0 12px #64e0a3; }

.contact-details > div { display: grid; grid-template-columns: 42px 1fr; column-gap: 15px; align-items: center; }
.contact-details > div > img { grid-row: 1 / 3; width: 22px; height: 22px; filter: brightness(0) invert(1); }
.privacy-section__icon { display: inline-grid; width: 42px; height: 42px; margin-bottom: 18px; place-items: center; border: 1px solid rgba(100,170,255,.2); border-radius: 12px; background: rgba(65,137,240,.09); }

@media (max-width: 1080px) {
  .agent-terminal { width: min(100%, 560px); }
  .page-hero__inner .product-constellation,
  .page-hero__inner .tech-constellation,
  .page-hero__inner .service-system,
  .page-hero__inner .agent-terminal,
  .page-hero__inner .company-monogram,
  .page-hero__inner .work-radar { display: block; width: min(100%, 500px); justify-self: start; }
  .product-feature .product-feature__visual,
  .product-feature--wide .product-feature__visual { opacity: .82; }
  .location-grid { grid-template-columns: 1fr; }
  .location-map, .location-map iframe { min-height: 420px; }
}

@media (max-width: 880px) {
  .hero__inner { grid-template-columns: 1fr; gap: 54px; }
  .agent-terminal--hero { justify-self: start; }
  .agent-terminal__workspace { min-height: 300px; }
  .product-feature .product-feature__visual,
  .product-feature--wide .product-feature__visual { width: 55%; height: 60%; opacity: .64; }
  .portfolio-item { grid-template-columns: 48px 1fr; }
  .portfolio-item__showcase { grid-column: 2; }
}

@media (max-width: 640px) {
  .hero__lede, .page-lede { font-size: 15.5px; line-height: 1.65; }
  .agent-terminal { border-radius: 16px; }
  .agent-terminal__bar { grid-template-columns: 56px 1fr; padding: 0 13px; }
  .agent-terminal__bar small { display: none; }
  .agent-terminal__workspace { min-height: 310px; grid-template-columns: 35px 1fr; }
  .agent-terminal__output { padding: 21px 14px; }
  .terminal-line { margin-bottom: 12px; padding-left: 14px; font-size: 9.5px; }
  .terminal-line--command { padding-left: 0; }
  .agent-terminal__progress { padding-left: 50px; }
  .agent-terminal__controls { gap: 5px; }
  .agent-terminal__controls span { font-size: 7px; }
  .product-feature { min-height: 490px; }
  .product-feature__body { align-self: start; max-width: 94%; margin-top: 58px; margin-bottom: 0; }
  .product-feature .product-feature__visual,
  .product-feature--wide .product-feature__visual { right: -1px; width: 82%; height: 49%; opacity: .72; }
  .product-feature__brand { right: 12px; left: 12px; max-width: none; }
  .product-constellation, .tech-constellation, .service-system { width: min(100%, 380px); }
  .product-constellation__node { width: 57px; height: 57px; padding: 10px; border-radius: 15px; }
  .tech-constellation__node { width: 49px; height: 49px; padding: 11px; border-radius: 14px; }
  .service-system__node { width: 68px; height: 68px; border-radius: 18px; }
  .service-system__node small { display: none; }
  .portfolio-item { grid-template-columns: 1fr; }
  .portfolio-item__showcase { grid-column: auto; }
  .portfolio-item__brand { align-items: flex-start; flex-direction: column; gap: 9px; }
  .portfolio-item__brand small { text-align: left; }
  .card-icon-row { margin-bottom: 52px; }
  .location-map, .location-map iframe { min-height: 340px; }
  .location-copy { padding: 34px 26px; }
  .org-grid span { grid-template-columns: 22px auto; }
}

@media (prefers-reduced-motion: reduce) {
  .product-feature__scan,
  .product-constellation::after,
  .tech-constellation::after,
  .service-system::after,
  .product-constellation__node,
  .tech-constellation__node,
  .service-system__node,
  .terminal-line--progress::before,
  .terminal-cursor { animation: none !important; }
}

/* 1.2 visual system refinements */
.brand { min-width: 174px; }
.brand__logo { display: block; width: 174px; height: auto; }
.brand--footer .brand__logo { width: 205px; }

.hero__lede,
.page-lede {
  font-size: clamp(15px, 1.08vw, 17.5px);
  font-weight: 420;
  letter-spacing: -.009em;
  line-height: 1.72;
}

.main-content > .section,
.main-content > .contact-page {
  position: relative;
  isolation: isolate;
  background-image:
    radial-gradient(circle at 88% 12%, rgba(54, 136, 255, .055), transparent 30%),
    linear-gradient(rgba(103, 163, 239, .026) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103, 163, 239, .026) 1px, transparent 1px);
  background-size: auto, 48px 48px, 48px 48px;
}

.main-content > .section:nth-of-type(even) {
  background-image:
    radial-gradient(circle at 9% 88%, rgba(107, 92, 255, .055), transparent 28%),
    linear-gradient(135deg, rgba(104, 166, 245, .024) 25%, transparent 25%),
    linear-gradient(315deg, rgba(104, 166, 245, .024) 25%, transparent 25%);
  background-position: 0 0, 0 0, 22px 22px;
  background-size: auto, 44px 44px, 44px 44px;
}

.hero__grid,
.page-hero__grid {
  opacity: .62;
  background-size: 48px 48px;
  background-image: linear-gradient(rgba(119, 181, 255, .055) 1px, transparent 1px), linear-gradient(90deg, rgba(119, 181, 255, .055) 1px, transparent 1px);
  -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,.25), #000 34%, rgba(0,0,0,.25));
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.25), #000 34%, rgba(0,0,0,.25));
}

.card-icon-row .capability-card__index,
.card-icon-row .service-detail__index,
.card-icon-row > span:last-child,
.journey-icon b,
.principle-list span b,
.delivery-timeline li > span b,
.stack-group__symbol b,
.principle-grid span b,
.value-grid span b { font-size: 18px; font-weight: 780; }

.service-row__icon img,
.service-detail .icon-orb img,
.engagement-card .icon-orb img { opacity: 1; filter: brightness(0) invert(1) drop-shadow(0 0 7px rgba(96, 174, 255, .55)); }
.service-row__icon { border-color: rgba(105, 178, 255, .38); background: radial-gradient(circle at 30% 25%, rgba(75, 161, 255, .28), rgba(30, 72, 145, .08)); }
.service-row__icon b { color: #8ec3ff; font-size: 15px; }
.service-detail,
.engagement-card,
.capability-card { position: relative; overflow: hidden; background-image: linear-gradient(rgba(105,167,245,.035) 1px, transparent 1px), linear-gradient(90deg,rgba(105,167,245,.035) 1px, transparent 1px); background-size: 30px 30px; }
.service-detail::before,
.engagement-card::before,
.capability-card::before { position: absolute; width: 190px; height: 190px; right: -80px; bottom: -100px; border-radius: 50%; background: rgba(44,130,255,.09); filter: blur(35px); content: ""; pointer-events: none; }
.engagement-card .icon-orb { border-color: rgba(108, 182, 255, .38); background: rgba(49, 123, 230, .17); }

.tech-console__nav button { min-height: 58px; padding: 15px 21px; font-size: clamp(13px, 1vw, 15px); font-weight: 650; }
.tech-token { font-size: 12px; }
.compact-product__top { align-items: center; gap: 18px; }
.compact-product__top small { margin-left: 2px; font-size: 11px; }

/* Continuously running Agent console */
.agent-terminal__workspace { min-height: 448px; }
.agent-terminal--compact .agent-terminal__workspace { min-height: 448px; }
.agent-terminal__output { overflow: hidden; }
.terminal-line { margin-bottom: 10px; font-size: clamp(10.5px, .82vw, 12px); line-height: 1.52; }
.terminal-line--command { margin-bottom: 14px; }
.terminal-line--done { margin-top: 12px; padding: 10px 13px; }
.terminal-line--principle { color: #c6b9ff; font-weight: 650; }
.terminal-line--principle::before { background: #a88dff; box-shadow: 0 0 12px rgba(167, 139, 255, .7); }
.agent-terminal__progress b { width: 42px; font-size: 10px; }

/* Compact homepage product ecosystem */
.product-showcase-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 18px; }
.product-showcase { --product-accent: #55bff8; position: relative; min-width: 0; grid-column: span 2; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 20px; background: linear-gradient(160deg, rgba(18, 28, 44, .96), rgba(8, 13, 22, .98)); box-shadow: inset 0 1px rgba(255,255,255,.055); transition: transform .35s var(--ease), border-color .35s ease, box-shadow .35s ease; }
.product-showcase:nth-last-child(-n+2) { grid-column: span 3; }
.product-showcase:hover { border-color: color-mix(in srgb, var(--product-accent) 42%, transparent); box-shadow: 0 26px 70px rgba(0,0,0,.29); transform: translateY(-6px); }
.product-showcase--blue { --product-accent:#4a93ff; }
.product-showcase--violet { --product-accent:#a18bff; }
.product-showcase--indigo { --product-accent:#7488ff; }
.product-showcase--rose { --product-accent:#ff71ad; }
.product-showcase__media { position: relative; aspect-ratio: 1.7; overflow: hidden; border-bottom: 1px solid rgba(255,255,255,.09); background: #111827; }
.product-showcase__media > img { width: 100%; height: 100%; object-fit: cover; object-position: top center; transition: transform .7s var(--ease); }
.product-showcase:hover .product-showcase__media > img { transform: scale(1.035); }
.product-showcase__media::after { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(7,11,18,.78)); content: ""; }
.product-showcase__pattern { position: absolute; z-index: 2; inset: 0; opacity: .35; background-image: linear-gradient(90deg, transparent 49.5%, rgba(255,255,255,.08) 50%, transparent 50.5%), linear-gradient(transparent 49.5%, rgba(255,255,255,.07) 50%, transparent 50.5%); background-size: 42px 42px; -webkit-mask-image: linear-gradient(135deg, transparent 15%, #000); mask-image: linear-gradient(135deg, transparent 15%, #000); }
.product-showcase__content { position: relative; min-height: 350px; padding: 25px 26px 28px; background-image: radial-gradient(circle at 100% 0, color-mix(in srgb, var(--product-accent) 15%, transparent), transparent 43%), linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px); background-size: auto, 100% 31px; }
.product-showcase__head { display: flex; min-height: 49px; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 22px; }
.product-showcase__head img { width: auto; max-width: 132px; height: 36px; object-fit: contain; padding: 6px 8px; border-radius: 8px; background: rgba(255,255,255,.94); }
.product-showcase__head span { color: color-mix(in srgb, var(--product-accent) 80%, #fff); font-family: ui-monospace, monospace; font-size: 13px; }
.product-showcase__content .eyebrow { margin-bottom: 10px; color: var(--product-accent); font-size: 10px; }
.product-showcase__content h3 { margin-bottom: 13px; font-size: 27px; font-weight: 590; letter-spacing: -.04em; }
.product-showcase__content > p:not(.eyebrow) { min-height: 88px; margin-bottom: 18px; color: #9aa8ba; font-size: 13px; line-height: 1.62; }
.mini-chip-list { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 24px; padding: 0; list-style: none; }
.mini-chip-list li { padding: 5px 8px; border: 1px solid rgba(255,255,255,.08); border-radius: 99px; color: #8494aa; font-size: 9px; }
.product-showcase__content .text-link { font-size: 11px; }

/* Product portfolio hero and actions */
.product-hero-mosaic { position: relative; width: min(100%, 560px); min-height: 450px; justify-self: end; }
.product-hero-mosaic::before { position: absolute; inset: 8% 4% 4% 10%; border: 1px solid rgba(106,175,255,.16); border-radius: 42% 58% 52% 48%; background: radial-gradient(circle at 40% 40%, rgba(56,142,255,.23), transparent 65%); filter: blur(2px); content: ""; }
.product-hero-mosaic__screen { position: absolute; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 14px; background: #111827; box-shadow: 0 30px 70px rgba(0,0,0,.4), inset 0 1px rgba(255,255,255,.08); }
.product-hero-mosaic__screen img { width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.product-hero-mosaic__screen--main { z-index: 2; top: 15%; left: 2%; width: 68%; aspect-ratio: 1.5; transform: perspective(900px) rotateY(7deg) rotateZ(-2deg); }
.product-hero-mosaic__screen--top { z-index: 3; top: 3%; right: 1%; width: 45%; aspect-ratio: 1.5; animation: nodeFloat 5.5s ease-in-out infinite; }
.product-hero-mosaic__screen--bottom { z-index: 4; right: 5%; bottom: 7%; width: 53%; aspect-ratio: 1.5; animation: nodeFloat 6.5s -2s ease-in-out infinite; }
.product-hero-mosaic__signal { position: absolute; z-index: 5; left: 5%; bottom: 1%; display: flex; align-items: center; gap: 10px; padding: 10px 13px; border: 1px solid rgba(113,182,255,.22); border-radius: 9px; background: rgba(7,13,22,.88); color: #91a3ba; font-size: 9px; letter-spacing: .06em; text-transform: uppercase; backdrop-filter: blur(12px); }
.product-hero-mosaic__signal img { width: 22px; height: 22px; }
.portfolio-item__actions { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 24px; }
.portfolio-item__actions .text-link { margin-top: 0; }
.text-link--muted { color: #7c899a; }

/* Richer service and technology constellations */
.service-system--expanded::before,
.tech-constellation--expanded::before { inset: 4%; box-shadow: 0 0 0 34px rgba(95,167,255,.035), 0 0 0 68px rgba(95,167,255,.025); }
.service-system--expanded::after,
.tech-constellation--expanded::after { inset: 20%; }
.service-system--expanded .service-system__core,
.tech-constellation--expanded .tech-constellation__core { inset: 37%; }
.service-system--expanded .service-system__node { --angle: calc(var(--i) * 45deg - 90deg); top: calc(50% + 44% * sin(var(--angle))); left: calc(50% + 44% * cos(var(--angle))); width: 76px; height: 76px; border-radius: 19px; }
.service-system--expanded .service-system__node b { display: block; color: #d4e1ef; font-size: 8px; line-height: 1.2; }
.service-system--expanded .service-system__node small { display: block; font-size: 6px; }
.tech-constellation--expanded .tech-constellation__node { --angle: calc(var(--i) * 30deg - 90deg); top: calc(50% + 45% * sin(var(--angle))); left: calc(50% + 45% * cos(var(--angle))); width: 52px; height: 52px; padding: 12px; border-radius: 15px; }

/* Real project cards and logo wall */
.case-grid--real { gap: 18px; }
.case-card--real { overflow: hidden; background-image: linear-gradient(rgba(99,164,242,.026) 1px, transparent 1px); background-size: 100% 30px; }
.case-card__photo { position: relative; display: block; aspect-ratio: 1.62; overflow: hidden; margin: -1px -1px 25px; border-bottom: 1px solid rgba(255,255,255,.1); }
.case-card__photo > img { width: 100%; height: 100%; object-fit: cover; object-position: top center; transition: transform .7s var(--ease); }
.case-card__photo::after { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(7,11,18,.7), transparent 46%); content: ""; }
.case-card--real:hover .case-card__photo > img { transform: scale(1.035); }
.case-card__client-logo { position: absolute; z-index: 2; right: 14px; bottom: 13px; display: grid; min-width: 94px; height: 42px; place-items: center; padding: 7px 10px; border-radius: 8px; background: rgba(255,255,255,.95); box-shadow: 0 8px 20px rgba(0,0,0,.24); }
.case-card__client-logo img { max-width: 90px; max-height: 28px; object-fit: contain; }
.case-study-row__visual .case-card__client-logo { right:auto; left:14px; }
.case-card--real h3 a,
.case-study-row__body h2 a { color: inherit; }
.partner-wall--logos { grid-template-columns: repeat(5, minmax(0,1fr)); gap: 1px; border: 0; background: rgba(255,255,255,.08); }
.partner-wall--logos span { display: flex; min-width: 0; min-height: 118px; align-items: center; justify-content: center; flex-direction: column; gap: 10px; padding: 20px; border: 0; background: #f5f7fa; }
.partner-wall--logos span:hover { background: #fff; }
.partner-wall--logos img { width: auto; max-width: 122px; height: 42px; object-fit: contain; mix-blend-mode: multiply; }
.partner-wall--logos small { overflow: hidden; width: 100%; color: #647080; font-size: 8px; font-weight: 650; letter-spacing: .04em; text-align: center; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.case-study-row__visual--photo { overflow: hidden; border-radius: 18px; background: #111827; }
.case-study-row__visual--photo > img { position:absolute; z-index:1; inset:0; width: 100%; height: 100%; object-fit: cover; object-position: top center; filter:none; transition: transform .7s var(--ease); }
.case-study-row__visual--photo::after { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(7,11,18,.55), transparent 46%); content: ""; }
.case-study-row__visual--photo:hover > img { transform: scale(1.035); }

/* Scanning project radar */
.work-radar--constellation { overflow: hidden; background: radial-gradient(circle, rgba(65,137,244,.1), transparent 55%), repeating-radial-gradient(circle, transparent 0 48px, rgba(98,166,255,.12) 49px 50px); }
.work-radar--constellation .work-radar__scan { position: absolute; z-index: 2; top: 0; left: 50%; width: 50%; height: 50%; background: conic-gradient(from 270deg, rgba(71,145,255,.3), transparent 66%); transform-origin: 0 100%; animation: radar 7s linear infinite; }
.work-radar__project { --delay: calc(var(--i) * -.35s); position: absolute !important; z-index: 3; top: var(--y) !important; left: var(--x) !important; display: grid; width: 34px !important; height: 34px !important; place-items: center; border: 1px solid rgba(100,177,255,.24); border-radius: 10px !important; background: rgba(8,16,29,.92) !important; box-shadow: 0 0 0 rgba(80,160,255,0) !important; opacity: .22; transform: translate(-50%,-50%) scale(.78); animation: radarReveal 7s var(--delay) ease-in-out infinite; }
.work-radar__project img { width: 15px; height: 15px; filter: brightness(0) invert(1); }
.work-radar--constellation > small { position: absolute; z-index: 4; right: 21%; bottom: 7%; color: #6e91bd; font-family: ui-monospace, monospace; font-size: 8px; letter-spacing: .12em; }
@keyframes radarReveal { 0%, 16%, 100% { opacity: .2; transform: translate(-50%,-50%) scale(.76); } 21%, 53% { opacity: 1; transform: translate(-50%,-50%) scale(1); box-shadow: 0 0 24px rgba(82,166,255,.46); } 65% { opacity: .35; } }

@media (prefers-reduced-motion: reduce) {
  .work-radar__project { opacity:.78; transform:translate(-50%,-50%) scale(.9); }
  .work-radar--constellation .work-radar__scan { opacity:.45; }
}

/* About DION */
.page-hero--about .page-hero__inner { grid-template-columns: minmax(0, .95fr) minmax(420px, .78fr); }
.about-hero-visual { position: relative; width: 100%; aspect-ratio: 1.06; overflow: hidden; margin: 0; border: 1px solid rgba(255,255,255,.14); border-radius: 30px 30px 120px 30px; background: #111827; box-shadow: 0 40px 100px rgba(0,0,0,.4); }
.about-hero-visual::after { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgba(4,8,14,.86)); content: ""; }
.about-hero-visual > img { width: 100%; height: 100%; object-fit: cover; object-position: 58% center; }
.about-hero-visual figcaption { position: absolute; z-index: 2; right: 30px; bottom: 27px; left: 30px; display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.about-hero-visual figcaption span { color: #91a3ba; font-size: 9px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.about-hero-visual figcaption i { display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: #57dda0; box-shadow: 0 0 14px #57dda0; }
.about-hero-visual figcaption strong { max-width: 220px; color: #f1f5fa; font-size: 18px; font-weight: 550; text-align: right; }
.about-purpose__intro { display: grid; grid-template-columns: .55fr 1.45fr; gap: clamp(40px,8vw,130px); padding-bottom: clamp(70px,9vw,130px); }
.about-purpose__intro h2 { max-width: 950px; margin-bottom: 32px; font-size: clamp(36px,5vw,70px); font-weight: 550; letter-spacing: -.055em; line-height: 1.04; }
.about-purpose__intro p:not(.eyebrow) { max-width: 820px; color: #9ba9ba; font-size: 15px; line-height: 1.8; }
.mission-vision-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.mission-card { position: relative; min-height: 420px; overflow: hidden; padding: clamp(30px,4.5vw,62px); border: 1px solid rgba(255,255,255,.11); border-radius: 24px; background: radial-gradient(circle at 95% 0, rgba(53,151,255,.2), transparent 42%), linear-gradient(145deg, rgba(16,28,46,.97),rgba(8,13,21,.98)); }
.mission-card::after { position: absolute; inset: 0; opacity: .35; background-image: linear-gradient(rgba(107,170,248,.07) 1px, transparent 1px),linear-gradient(90deg,rgba(107,170,248,.07) 1px,transparent 1px); background-size: 34px 34px; -webkit-mask-image: linear-gradient(135deg,transparent 30%,#000); mask-image: linear-gradient(135deg,transparent 30%,#000); content:""; }
.mission-card > * { position: relative; z-index: 1; }
.mission-card--vision { background: radial-gradient(circle at 95% 0, rgba(135,103,255,.19), transparent 42%), linear-gradient(145deg, rgba(19,23,48,.97),rgba(8,13,21,.98)); }
.mission-card .eyebrow { margin: 40px 0 15px; }
.mission-card h3 { max-width: 620px; margin-bottom: 24px; font-size: clamp(29px,3.3vw,48px); font-weight: 550; letter-spacing: -.05em; line-height: 1.08; }
.mission-card > p:not(.eyebrow) { max-width: 610px; color: #9aa9bb; font-size: 14px; line-height: 1.75; }
.mission-card > small { position: absolute; z-index: 2; bottom: 35px; color: #68809f; font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.ceo-section { background-color: #090e17; }
.ceo-grid { display: grid; grid-template-columns: minmax(340px,.78fr) minmax(0,1.22fr); gap: clamp(50px,9vw,140px); align-items: center; }
.ceo-portrait { position: relative; overflow: hidden; margin: 0; border: 1px solid rgba(255,255,255,.13); border-radius: 28px 28px 110px 28px; background: #eef2f5; }
.ceo-portrait::after { position: absolute; inset: auto 0 0; height: 34%; background: linear-gradient(transparent,rgba(5,10,17,.5)); content:""; }
.ceo-portrait img { width: 100%; aspect-ratio: .83; object-fit: cover; object-position: center top; }
.ceo-portrait span { position: absolute; z-index: 2; right: 24px; bottom: 22px; width: 12px; height: 12px; border-radius: 50%; background: #62e6a5; box-shadow: 0 0 24px #62e6a5; }
.ceo-copy h2 { max-width: 780px; margin-bottom: 34px; font-size: clamp(35px,4.5vw,66px); font-weight: 520; letter-spacing: -.055em; line-height: 1.08; }
.ceo-copy > p:not(.eyebrow) { max-width: 730px; color: #9aa8ba; font-size: 15px; line-height: 1.8; }
.ceo-signature { display: flex; align-items: flex-start; flex-direction: column; gap: 5px; margin-top: 36px; padding-top: 25px; border-top: 1px solid var(--line); }
.ceo-signature strong { font-size: 18px; font-weight: 620; }
.ceo-signature span { color: #72839a; font-size: 11px; }
.milestone-grid { display: grid; grid-template-columns: minmax(0,.84fr) minmax(420px,1.16fr); gap: clamp(50px,8vw,120px); align-items: center; }
.milestone-copy h2 { margin-bottom: 28px; font-size: clamp(38px,4.7vw,68px); font-weight: 540; letter-spacing: -.055em; line-height: 1.04; }
.milestone-copy > p:not(.eyebrow) { color: #98a6b8; line-height: 1.75; }
.milestone-media { overflow: hidden; margin: 0; border: 1px solid rgba(255,255,255,.12); border-radius: 22px; background: #101722; box-shadow: 0 30px 70px rgba(0,0,0,.3); }
.milestone-media img { display: block; width: 100%; aspect-ratio: 1.72; object-fit: cover; }
.milestone-media figcaption { display: flex; align-items: center; justify-content: space-between; padding: 16px 19px; color: #8190a4; font-size: 10px; }
.milestone-media figcaption span { color: #f0f5fb; font-weight: 750; letter-spacing: .12em; }
.team-gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.team-gallery figure { position: relative; overflow: hidden; margin: 0; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: #111827; }
.team-gallery__wide { grid-column: 1/-1; }
.team-gallery img { display:block; width:100%; aspect-ratio:1.65; object-fit:cover; }
.team-gallery__wide img { aspect-ratio:2.05; object-position:center 48%; }
.team-gallery figcaption { position:absolute; right:14px; bottom:13px; padding:7px 10px; border:1px solid rgba(255,255,255,.12); border-radius:7px; background:rgba(5,10,17,.78); color:#c5d0de; font-size:9px; backdrop-filter:blur(9px); }

/* Contact map */
.contact-page .page-hero__grid { position: absolute; inset: 0; pointer-events: none; }
.contact-details > div:nth-child(2) a { display: block; width: fit-content; margin-bottom: 4px; }
.contact-details > div:nth-child(2) a { grid-column: 2; white-space: nowrap; }
.contact-form-card__head { display: flex; align-items: center; gap: 14px; margin-bottom: 30px; }
.contact-form-card__head > div { display: flex; flex-direction: column; gap: 4px; }
.contact-form-card__head small { color: #718198; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.contact-form-card__head strong { color: #e7edf5; font-size: 16px; font-weight: 600; }
.contact-map-section { background-color: #080d15; }
.contact-map-grid { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(360px,.75fr); gap: clamp(40px,7vw,100px); align-items: stretch; }
.contact-map-frame { min-height: 560px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 24px; background: #111827; }
.contact-map-frame iframe { width: 100%; height: 100%; min-height: 560px; border: 0; filter: saturate(.82) contrast(1.04); }
.contact-map-copy { display: flex; justify-content: center; flex-direction: column; }
.contact-map-copy .eyebrow { margin-top: 32px; }
.contact-map-copy h2 { margin-bottom: 25px; font-size: clamp(38px,4.4vw,62px); font-weight: 540; letter-spacing: -.055em; line-height: 1.04; }
.contact-map-copy > p { color:#98a6b8; line-height:1.72; }
.contact-map-copy address { margin: 25px 0 30px; padding-left: 18px; border-left: 2px solid #438cf5; color: #99a8ba; font-style: normal; line-height: 1.75; }
.contact-map-copy address strong { color: #eef4fb; }

/* Product and work detail pages */
.detail-hero__inner,
.work-detail-hero__inner { position: relative; z-index: 2; display: grid; width:100%; grid-template-columns:minmax(0,.92fr) minmax(430px,1.08fr); gap:clamp(45px,7vw,105px); align-items:center; padding-top:140px; padding-bottom:85px; }
.detail-breadcrumb { display:inline-flex; margin-bottom:38px; color:#7e8da0; font-size:11px; font-weight:650; letter-spacing:.04em; text-transform:uppercase; }
.detail-product-logo { width:auto; max-width:210px; height:58px; margin:12px 0 24px; padding:9px 12px; border-radius:10px; background:rgba(255,255,255,.96); object-fit:contain; }
.detail-hero h1,
.work-detail-hero h1 { max-width:780px; margin-bottom:27px; font-size:clamp(44px,5.6vw,78px); font-weight:550; letter-spacing:-.06em; line-height:1; }
.detail-hero__actions { display:flex; flex-wrap:wrap; align-items:center; gap:22px; margin-top:35px; }
.detail-hero__media,
.work-detail-hero__media { position:relative; overflow:hidden; margin:0; border:1px solid rgba(255,255,255,.14); border-radius:24px; background:#111827; box-shadow:0 34px 90px rgba(0,0,0,.4); transform:perspective(1100px) rotateY(-3deg); }
.detail-hero__media > img,
.work-detail-hero__media > img { display:block; width:100%; aspect-ratio:1.45; object-fit:cover; object-position:top center; }
.detail-hero__media figcaption { display:flex; align-items:center; gap:8px; padding:14px 17px; color:#8493a7; font-size:9px; letter-spacing:.05em; text-transform:uppercase; }
.detail-hero__media figcaption i { width:7px; height:7px; border-radius:50%; background:#62e6a5; box-shadow:0 0 12px #62e6a5; }
.work-detail-hero__media > span { position:absolute; right:18px; bottom:17px; display:grid; min-width:110px; height:48px; place-items:center; padding:8px 12px; border-radius:9px; background:#fff; }
.work-detail-hero__media > span img { max-width:100px; max-height:30px; object-fit:contain; }
.product-story__grid { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:clamp(45px,8vw,125px); }
.product-story h2 { font-size:clamp(38px,4.8vw,68px); font-weight:540; letter-spacing:-.055em; line-height:1.05; }
.product-story__copy p { color:#9ba9ba; font-size:16px; line-height:1.82; }
.outcome-grid,
.impact-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.outcome-grid article,
.impact-grid article { position:relative; min-height:245px; overflow:hidden; padding:28px; border:1px solid rgba(255,255,255,.1); border-radius:17px; background:linear-gradient(145deg,rgba(17,27,43,.92),rgba(8,13,21,.97)); }
.outcome-grid article::after,
.impact-grid article::after { position:absolute; inset:0; opacity:.34; background-image:linear-gradient(rgba(101,165,244,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(101,165,244,.06) 1px,transparent 1px); background-size:28px 28px; content:""; }
.outcome-grid article > *,
.impact-grid article > * { position:relative; z-index:1; }
.outcome-grid span,
.impact-grid span { display:block; margin-bottom:42px; color:#70aaf4; font-family:ui-monospace,monospace; font-size:13px; }
.outcome-grid img,
.impact-grid img { width:27px; height:27px; margin-bottom:20px; filter:brightness(0) invert(1); }
.outcome-grid p,
.impact-grid p { margin:0; color:#b3bfce; font-size:14px; line-height:1.55; }
.product-proof-grid { display:grid; grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr); gap:clamp(45px,8vw,120px); align-items:center; }
.product-proof-visual { overflow:hidden; border:1px solid rgba(255,255,255,.12); border-radius:22px; background:#111827; }
.product-proof-visual img { display:block; width:100%; aspect-ratio:1.35; object-fit:cover; object-position:top center; }
.product-proof-grid h2 { margin-bottom:27px; font-size:clamp(40px,4.5vw,65px); font-weight:540; letter-spacing:-.055em; }
.product-proof-grid ul { display:grid; gap:16px; margin:0 0 30px; padding:0; list-style:none; }
.product-proof-grid li { display:flex; align-items:flex-start; gap:12px; color:#a8b5c5; font-size:14px; line-height:1.58; }
.product-proof-grid li img { width:19px; height:19px; flex:0 0 auto; margin-top:2px; filter:brightness(0) invert(1); }
.product-proof-grid .chip-list { display:flex; flex-wrap:wrap; gap:7px; }
.product-proof-grid .chip-list span { padding:7px 10px; border:1px solid rgba(255,255,255,.1); border-radius:99px; color:#8392a6; font-size:10px; }
.work-narrative__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.work-narrative article { min-height:440px; padding:clamp(32px,5vw,65px); border:1px solid rgba(255,255,255,.1); border-radius:22px; background:radial-gradient(circle at 100% 0,rgba(52,138,255,.16),transparent 40%),rgba(10,16,26,.94); }
.work-narrative article > span { display:block; margin-bottom:70px; color:#6fa9f1; font-family:ui-monospace,monospace; font-size:14px; }
.work-narrative h2 { margin-bottom:25px; font-size:clamp(34px,4vw,58px); font-weight:540; letter-spacing:-.052em; line-height:1.05; }
.work-narrative article > p:last-child { color:#9ba8b9; font-size:15px; line-height:1.8; }
.impact-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }

/* Mobile navigation must remain opaque after scroll */
body.nav-open .site-header,
.site-header:has(.site-nav.is-open) { background:#070a10; border-color:rgba(255,255,255,.1); backdrop-filter:none; }

@media (max-width: 1100px) {
  .product-showcase-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .product-showcase,
  .product-showcase:nth-last-child(-n+2) { grid-column:auto; }
  .partner-wall--logos { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .page-hero--about .page-hero__inner,
  .detail-hero__inner,
  .work-detail-hero__inner { grid-template-columns:1fr; }
  .about-hero-visual,
  .detail-hero__media,
  .work-detail-hero__media { width:min(100%,760px); justify-self:start; transform:none; }
  .product-hero-mosaic { justify-self:start; }
  .contact-map-grid { grid-template-columns:1fr; }
  .contact-map-copy { max-width:680px; }
  .outcome-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 820px) {
  .site-nav { z-index:1001; background:#070a10 !important; box-shadow:0 30px 70px rgba(0,0,0,.5); isolation:isolate; }
  .site-nav::before { position:absolute; z-index:-1; inset:0; background:#070a10; content:""; }
  .agent-terminal__workspace,
  .agent-terminal--compact .agent-terminal__workspace { min-height:430px; }
  .product-showcase__content { min-height:320px; }
  .partner-wall--logos { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .service-system--expanded .service-system__node { width:64px; height:64px; }
  .service-system--expanded .service-system__node small { display:none; }
  .tech-constellation--expanded .tech-constellation__node { width:45px; height:45px; padding:10px; }
  .about-purpose__intro,
  .ceo-grid,
  .milestone-grid,
  .product-story__grid,
  .product-proof-grid { grid-template-columns:1fr; }
  .mission-vision-grid,
  .work-narrative__grid { grid-template-columns:1fr; }
  .ceo-portrait { width:min(100%,520px); }
  .team-gallery__wide img { aspect-ratio:1.55; }
  .impact-grid { grid-template-columns:1fr; }
}

@media (max-width: 620px) {
  .brand { min-width:145px; }
  .brand__logo { width:145px; }
  .product-showcase-grid { grid-template-columns:1fr; }
  .product-showcase__content { min-height:0; }
  .product-showcase__content > p:not(.eyebrow) { min-height:0; }
  .partner-wall--logos { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .partner-wall--logos span { min-height:96px; padding:15px; }
  .partner-wall--logos img { max-width:98px; height:34px; }
  .product-hero-mosaic { min-height:340px; }
  .product-hero-mosaic__screen--main { width:75%; }
  .product-hero-mosaic__screen--top { width:48%; }
  .product-hero-mosaic__screen--bottom { width:57%; }
  .product-hero-mosaic__signal { max-width:88%; }
  .service-system--expanded .service-system__node { width:54px; height:54px; padding:8px; border-radius:14px; }
  .service-system--expanded .service-system__node b { display:none; }
  .tech-constellation--expanded .tech-constellation__node { width:37px; height:37px; padding:8px; }
  .about-hero-visual { border-radius:22px 22px 70px 22px; }
  .about-hero-visual figcaption { right:18px; bottom:17px; left:18px; }
  .about-hero-visual figcaption strong { font-size:13px; }
  .about-purpose__intro { padding-bottom:70px; }
  .mission-card { min-height:390px; padding:28px; }
  .mission-card > small { bottom:28px; }
  .team-gallery { grid-template-columns:1fr; }
  .team-gallery__wide { grid-column:auto; }
  .team-gallery img,
  .team-gallery__wide img { aspect-ratio:1.35; }
  .contact-map-frame,
  .contact-map-frame iframe { min-height:430px; }
  .outcome-grid { grid-template-columns:1fr; }
  .detail-hero__inner,
  .work-detail-hero__inner { padding-top:115px; padding-bottom:65px; }
  .detail-hero h1,
  .work-detail-hero h1 { font-size:clamp(40px,12vw,58px); }
  .work-narrative article { min-height:0; }
  .work-narrative article > span { margin-bottom:48px; }
}

/* Cascade-final overrides for the 2026 visual system. */
.page-hero__grid { opacity:.72; background-size:52px 52px; }
.product-carousel .product-showcase-grid { display:grid; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:calc((100% - 36px)/3); gap:18px; overflow-x:auto; padding:6px 2px 22px; scroll-snap-type:x mandatory; scrollbar-width:none; }
.product-carousel .product-showcase,.product-carousel .product-showcase:nth-last-child(-n+2) { grid-column:auto; }
.product-showcase__content { min-height:330px; }
.product-showcase__pattern { opacity:.7; background-image:radial-gradient(circle at 78% 24%,rgba(102,194,255,.8) 0 2px,transparent 3px),radial-gradient(circle at 61% 42%,rgba(255,255,255,.34) 0 1px,transparent 2px),linear-gradient(135deg,transparent 0 38%,rgba(106,181,255,.2) 38.2% 38.5%,transparent 38.7%),linear-gradient(28deg,transparent 0 61%,rgba(106,181,255,.16) 61.2% 61.5%,transparent 61.7%); background-size:130px 130px,74px 74px,100% 100%,100% 100%; }
.partner-wall--logos { grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; background:transparent; }
.partner-wall--logos span { min-height:112px; padding:20px; border:1px solid rgba(255,255,255,.11); border-radius:14px; background:#fff; box-shadow:0 16px 36px rgba(0,0,0,.14); }
.partner-wall--logos img { max-width:136px; height:48px; }
.service-system--expanded .service-system__node,.tech-constellation--expanded .tech-constellation__node { top:var(--y)!important; left:var(--x)!important; right:auto!important; bottom:auto!important; transform:translate(-50%,-50%); animation:constellationFloat 5s calc(var(--i)*-.57s) ease-in-out infinite alternate; }
.service-system--expanded .service-system__node { width:76px; height:76px; }
.tech-constellation--expanded .tech-constellation__node { width:52px; height:52px; }
.tech-constellation--expanded .tech-constellation__core { inset:auto; top:50%; left:50%; width:168px; height:auto; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; transform:translate(-50%,-50%); }
.tech-constellation--expanded .tech-constellation__core img { width:100%; height:auto; max-height:none; margin:0; filter:none; }
.work-radar--constellation .work-radar__scan { inset:0; width:100%; height:100%; border-radius:50%; background:conic-gradient(from -90deg,rgba(63,145,255,.34) 0deg,rgba(63,145,255,.11) 58deg,transparent 90deg 360deg); transform-origin:50% 50%; }
.work-radar--constellation > small { position:static; }
.about-hero-visual { aspect-ratio:1.22; }
.about-hero-visual > img { object-position:center; }

@media (max-width:980px) {
  .product-carousel .product-showcase-grid { grid-auto-columns:calc((100% - 18px)/2); }
  .partner-wall--logos { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width:700px) {
  .product-carousel .product-showcase-grid { grid-template-columns:none; grid-auto-columns:88%; }
  .service-system--expanded .service-system__node { width:55px; height:55px; }
  .tech-constellation--expanded .tech-constellation__core { width:115px; }
  .partner-wall--logos { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .partner-wall--logos span { min-height:96px; padding:15px; }
  .partner-wall--logos img { max-width:108px; height:38px; }
}

/* 1.4 visual refinement: contour fields replace every small checker/grid pattern. */
.hero__grid,
.page-hero__grid {
  opacity: .9;
  background-image:
    repeating-radial-gradient(ellipse at 78% 42%, transparent 0 52px, rgba(104,174,255,.075) 53px 54px, transparent 55px 94px),
    radial-gradient(circle at 84% 28%, rgba(69,153,255,.18), transparent 24%),
    radial-gradient(circle at 16% 72%, rgba(120,100,255,.1), transparent 22%);
  background-size: 100% 100%;
  -webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,.22), #000 42%, #000 88%, transparent);
  mask-image: linear-gradient(90deg, rgba(0,0,0,.22), #000 42%, #000 88%, transparent);
}
.page-hero__grid::after {
  background:
    radial-gradient(circle at 75% 29%, rgba(125,196,255,.7) 0 1px, transparent 2px),
    radial-gradient(circle at 88% 69%, rgba(111,235,210,.5) 0 1px, transparent 2px),
    linear-gradient(128deg, transparent 0 42%, rgba(91,165,255,.09) 42.12% 42.25%, transparent 42.4% 68%, rgba(91,165,255,.06) 68.12% 68.25%, transparent 68.4%);
  background-size: 96px 96px, 132px 132px, 100% 100%;
}
.main-content > .section,
.main-content > .contact-page {
  background-image:
    radial-gradient(circle at 88% 12%, rgba(54,136,255,.065), transparent 30%),
    repeating-radial-gradient(ellipse at 112% 42%, transparent 0 76px, rgba(107,174,255,.045) 77px 78px, transparent 79px 126px);
  background-size: 100% 100%;
}
.main-content > .section:nth-of-type(even) {
  background-image:
    radial-gradient(circle at 8% 86%, rgba(107,92,255,.07), transparent 30%),
    repeating-radial-gradient(ellipse at -10% 70%, transparent 0 68px, rgba(116,177,249,.045) 69px 70px, transparent 71px 118px);
  background-position: center;
  background-size: 100% 100%;
}
.section::before {
  opacity: .7;
  background-image:
    radial-gradient(circle at 14% 24%, rgba(88,169,255,.3) 0 1.5px, transparent 2px),
    radial-gradient(circle at 82% 71%, rgba(93,224,202,.22) 0 1.5px, transparent 2px),
    linear-gradient(117deg, transparent 0 28%, rgba(84,157,245,.05) 28.08% 28.18%, transparent 28.28% 71%, rgba(84,157,245,.035) 71.08% 71.18%, transparent 71.28%);
  background-size: 86px 86px, 121px 121px, 100% 100%;
  -webkit-mask-image: linear-gradient(90deg,#000,rgba(0,0,0,.28) 48%,#000);
  mask-image: linear-gradient(90deg,#000,rgba(0,0,0,.28) 48%,#000);
}
.services-section::before,
.data-journey-section::before,
.engagement-section::before,
.engineering-principles::before,
.values-section::before,
.career-culture::before,
.career-detail__body::before,
.location-section::before {
  opacity: 1;
  background-image:
    radial-gradient(circle at 13% 28%, rgba(28,103,218,.2) 0 1.3px, transparent 1.9px),
    radial-gradient(circle at 82% 73%, rgba(71,146,230,.15) 0 1.3px, transparent 1.9px),
    repeating-radial-gradient(ellipse at 104% 26%, transparent 0 62px, rgba(35,104,196,.075) 63px 64px, transparent 65px 106px);
  background-size: 32px 32px, 46px 46px, 100% 100%;
  -webkit-mask-image: linear-gradient(90deg,#000,rgba(0,0,0,.42),#000);
  mask-image: linear-gradient(90deg,#000,rgba(0,0,0,.42),#000);
}
.service-detail,
.engagement-card,
.capability-card,
.product-showcase__content,
.case-card--real,
.mission-card::after {
  background-image: radial-gradient(circle at 88% 10%, rgba(83,164,255,.11) 0 1px, transparent 1.7px), linear-gradient(135deg, transparent 0 72%, rgba(81,157,244,.045) 72.1% 72.25%, transparent 72.4%);
  background-size: 34px 34px, 100% 100%;
}
.case-card__visual::before,
.product-showcase__pattern { background-image: radial-gradient(circle at 78% 24%,rgba(102,194,255,.75) 0 2px,transparent 3px), radial-gradient(circle at 61% 42%,rgba(255,255,255,.32) 0 1px,transparent 2px), linear-gradient(135deg,transparent 0 38%,rgba(106,181,255,.16) 38.2% 38.45%,transparent 38.7%); background-size:130px 130px,74px 74px,100% 100%; }
.agent-terminal::before,
.outcome-grid article::after,
.impact-grid article::after {
  background-image: radial-gradient(circle at 18% 24%,rgba(100,174,255,.15) 0 1px,transparent 1.7px), radial-gradient(circle at 82% 71%,rgba(96,225,203,.1) 0 1px,transparent 1.7px), linear-gradient(132deg,transparent 0 64%,rgba(91,163,249,.055) 64.1% 64.22%,transparent 64.35%);
  background-size:44px 44px,67px 67px,100% 100%;
}

/* Products hero: cinematic architecture instead of a logo orbit card. */
.page-hero--products .page-hero__inner { grid-template-columns:minmax(0,.98fr) minmax(500px,1.02fr); gap:clamp(30px,4vw,72px); }
.page-hero--products h1 { font-size:clamp(58px,5.3vw,86px); }
.product-architecture-visual { position:relative; width:min(112%,690px); min-height:560px; justify-self:end; isolation:isolate; }
.product-architecture-visual::before { position:absolute; z-index:-1; width:78%; aspect-ratio:1; top:12%; left:18%; border-radius:50%; background:radial-gradient(circle,rgba(45,128,255,.24),transparent 66%); filter:blur(24px); content:""; }
.product-architecture-visual > img { position:absolute; z-index:1; width:122%; max-width:none; top:50%; left:50%; transform:translate(-50%,-50%); filter:saturate(1.05) contrast(1.04) drop-shadow(0 40px 75px rgba(0,0,0,.35)); -webkit-mask-image:radial-gradient(ellipse at 58% 52%,#000 50%,rgba(0,0,0,.78) 66%,transparent 82%); mask-image:radial-gradient(ellipse at 58% 52%,#000 50%,rgba(0,0,0,.78) 66%,transparent 82%); animation:architectureFloat 8s ease-in-out infinite alternate; }
.product-architecture-visual__halo { position:absolute; z-index:2; width:46%; aspect-ratio:1; top:24%; left:38%; border:1px solid rgba(111,198,255,.28); border-radius:50%; box-shadow:0 0 0 26px rgba(76,150,255,.025),0 0 0 60px rgba(76,150,255,.018); animation:architectureHalo 5.8s ease-in-out infinite; }
.product-architecture-visual__pulse { position:absolute; z-index:3; width:9px; height:9px; border-radius:50%; background:#8bd7ff; box-shadow:0 0 24px #55adff; animation:architecturePulse 3.4s ease-in-out infinite; }
.product-architecture-visual__pulse--one { top:31%; right:19%; }
.product-architecture-visual__pulse--two { right:36%; bottom:16%; animation-delay:-1.7s; }
.product-architecture-visual__status { position:absolute; z-index:4; right:5%; bottom:7%; display:flex; align-items:center; gap:10px; color:#86a1bf; font-family:ui-monospace,monospace; font-size:9px; letter-spacing:.12em; }
.product-architecture-visual__status i { width:7px; height:7px; border-radius:50%; background:#5ce0a1; box-shadow:0 0 14px #5ce0a1; }
@keyframes architectureFloat { to { transform:translate(-50%,calc(-50% - 13px)) scale(1.012); } }
@keyframes architectureHalo { 50% { opacity:.45; transform:scale(1.07); } }
@keyframes architecturePulse { 50% { transform:scale(1.7); opacity:.45; } }
.portfolio-item__brand img,
.product-showcase__head img { padding:0; background:transparent; filter:drop-shadow(0 8px 18px rgba(0,0,0,.28)); }
.portfolio-item__brand img { max-width:170px; max-height:46px; }

/* Service and technology constellations: many lightweight signals, no cards. */
.service-system--expanded { width:min(100%,540px); }
.service-system--expanded::before { inset:6%; box-shadow:0 0 0 54px rgba(95,167,255,.04),0 0 0 108px rgba(95,167,255,.022); }
.service-system--expanded::after { inset:27%; border-style:solid; box-shadow:0 0 0 44px rgba(95,167,255,.025); }
.service-system--expanded .service-system__core { inset:39%; border-color:rgba(112,190,255,.32); background:radial-gradient(circle at 35% 28%,rgba(74,157,255,.32),rgba(12,29,53,.9)); }
.service-system--expanded .service-system__node { display:grid; width:82px; height:auto; min-height:58px; place-items:center; gap:6px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; overflow:visible; }
.service-system--expanded .service-system__node img { width:25px; height:25px; margin:0; opacity:.9; filter:brightness(0) invert(1) drop-shadow(0 0 9px rgba(90,169,255,.68)); }
.service-system--expanded .service-system__node b { display:block; color:#9fb2c9; font-size:8px; font-weight:620; line-height:1.1; text-align:center; white-space:nowrap; }
.service-system--expanded .service-system__node small { display:none!important; }
.tech-constellation--expanded { width:min(100%,540px); }
.tech-constellation--expanded::before { inset:5%; box-shadow:0 0 0 50px rgba(95,167,255,.035),0 0 0 100px rgba(95,167,255,.02); }
.tech-constellation--expanded::after { inset:25%; border-style:solid; }
.tech-constellation--expanded .tech-constellation__node { display:grid; width:42px; height:42px; place-items:center; padding:5px; border:0; border-radius:0; background:transparent; box-shadow:none; overflow:visible; }
.tech-constellation--expanded .tech-constellation__node img { width:29px; height:29px; object-fit:contain; filter:drop-shadow(0 0 8px rgba(80,155,255,.45)); }
.tech-constellation--expanded .tech-constellation__core { width:148px; }

/* Work signal field: radar-inspired, responsive, and continuously animated. */
.work-signal-map { width:min(100%,590px); justify-self:end; }
.work-signal-map__scope { position:relative; overflow:hidden; width:100%; aspect-ratio:1.18; border:1px solid rgba(101,176,255,.16); border-radius:46% 54% 44% 56% / 52% 44% 56% 48%; background:radial-gradient(ellipse at 50% 52%,rgba(54,133,245,.17),transparent 24%),repeating-radial-gradient(ellipse at 50% 52%,transparent 0 51px,rgba(100,173,255,.12) 52px 53px,transparent 54px 91px); box-shadow:inset 0 0 90px rgba(19,83,179,.1),0 35px 90px rgba(0,0,0,.25); }
.work-signal-map__scope::before,.work-signal-map__scope::after { position:absolute; z-index:1; content:""; }
.work-signal-map__scope::before { width:74%; height:1px; top:52%; left:13%; background:linear-gradient(90deg,transparent,rgba(106,184,255,.22),transparent); transform:rotate(-12deg); }
.work-signal-map__scope::after { width:1px; height:72%; top:14%; left:50%; background:linear-gradient(transparent,rgba(106,184,255,.18),transparent); transform:rotate(18deg); }
.work-signal-map__sweep { position:absolute; z-index:2; inset:-18%; border-radius:50%; background:conic-gradient(from -90deg,transparent 0 292deg,rgba(69,151,255,.05) 312deg,rgba(89,177,255,.3) 350deg,transparent 360deg); animation:signalSweep 7s linear infinite; }
.work-signal-map__core { position:absolute; z-index:4; display:grid; width:68px; height:68px; top:52%; left:50%; place-items:center; border-radius:50%; background:radial-gradient(circle at 34% 28%,#6bc0ff,#1f66dc 48%,#0d2b63); box-shadow:0 0 0 12px rgba(66,145,245,.08),0 0 45px rgba(49,130,244,.5); transform:translate(-50%,-50%); }
.work-signal-map__core img { width:34px; height:34px; object-fit:contain; }
.work-signal-map__project { position:absolute; z-index:3; top:var(--y); left:var(--x); display:grid; width:30px; height:30px; place-items:center; border:0; border-radius:50%; background:rgba(12,28,50,.9); box-shadow:0 0 0 1px rgba(106,183,255,.24),0 0 18px rgba(74,155,255,.2); opacity:.52; transform:translate(-50%,-50%) scale(.82); animation:signalPing 7s calc(var(--i)*-.37s) ease-in-out infinite; }
.work-signal-map__project:nth-of-type(4n) { width:36px; height:36px; }
.work-signal-map__project img { width:14px; height:14px; filter:brightness(0) invert(1); }
.work-signal-map > small { display:flex; align-items:center; justify-content:center; gap:9px; margin-top:18px; color:#7796bb; font-family:ui-monospace,monospace; font-size:9px; letter-spacing:.13em; }
.work-signal-map > small i { width:7px; height:7px; border-radius:50%; background:#55dfa0; box-shadow:0 0 12px #55dfa0; }
@keyframes signalSweep { to { transform:rotate(360deg); } }
@keyframes signalPing { 0%,18%,100% { opacity:.26; transform:translate(-50%,-50%) scale(.76); } 25%,55% { opacity:1; transform:translate(-50%,-50%) scale(1.05); box-shadow:0 0 0 1px rgba(117,196,255,.5),0 0 26px rgba(71,164,255,.55); } 72% { opacity:.4; } }
@media (prefers-reduced-motion:reduce) {
  .work-signal-map__sweep { animation-duration:14s!important; animation-iteration-count:infinite!important; }
  .work-signal-map__project { animation-duration:14s!important; animation-iteration-count:infinite!important; }
}

/* About: pattern-only hero, square founder portrait and unmasked documentary timeline. */
.page-hero--about::after { position:absolute; z-index:0; width:min(58vw,820px); aspect-ratio:1; top:9%; right:-9%; border-radius:50%; background:repeating-radial-gradient(circle at 50% 50%,transparent 0 44px,rgba(95,170,255,.11) 45px 46px,transparent 47px 82px),radial-gradient(circle at 42% 42%,rgba(51,131,248,.2),transparent 54%); box-shadow:0 0 0 50px rgba(62,139,244,.025),0 0 0 116px rgba(62,139,244,.014); content:""; }
.page-hero--about .page-hero__inner { grid-template-columns:minmax(0,.9fr) minmax(340px,.6fr); }
.page-hero--about .page-hero__copy { grid-column:1; max-width:850px; }
.page-hero--about .page-hero__copy::after { position:absolute; width:8px; height:8px; right:-18%; bottom:18%; border-radius:50%; background:#73bdff; box-shadow:0 0 24px #3a90ff,96px -112px 0 -2px rgba(99,188,255,.7),180px 42px 0 -3px rgba(86,225,199,.75); content:""; }
.mission-card::after { opacity:.55; }
.mission-card--vision h3 { font-size:clamp(34px,3.6vw,54px); }
.ceo-portrait { width:100%; aspect-ratio:1; border-radius:30px 30px 112px 30px!important; clip-path:none; }
.ceo-portrait img { width:100%; height:100%; aspect-ratio:1; object-fit:cover; object-position:center top; }
.office-manifesto { background:#061127; }
.office-manifesto__image { background:linear-gradient(90deg,#061127 0%,rgba(6,24,54,.9) 42%,rgba(9,40,83,.5) 73%,rgba(9,43,92,.28)),linear-gradient(0deg,rgba(4,17,40,.96),transparent 62%),url('../images/company/office-2026.jpg') center/cover no-repeat; filter:saturate(.8) contrast(1.04); opacity:.94; }
.history-row figure,.history-row figure.dion-shape { border-radius:0!important; }
.history-row figure img { aspect-ratio:1.52; object-position:center; }
.history-row--reverse:nth-of-type(2) figure img { object-position:center 24%; }

/* Career archive and job detail. */
.career-hero { position:relative; min-height:650px; overflow:hidden; border-bottom:1px solid rgba(255,255,255,.09); background:#080c14; }
.career-hero__field,.career-detail__pattern { position:absolute; inset:0; pointer-events:none; background:repeating-radial-gradient(ellipse at 82% 43%,transparent 0 54px,rgba(104,177,255,.09) 55px 56px,transparent 57px 98px),radial-gradient(circle at 79% 43%,rgba(48,131,250,.22),transparent 28%),radial-gradient(circle at 14% 84%,rgba(108,83,255,.1),transparent 24%); }
.career-hero__field::after { position:absolute; width:9px; height:9px; top:35%; right:18%; border-radius:50%; background:#78c3ff; box-shadow:0 0 25px #459bff,112px 126px 0 -2px #5fe0aa,-146px 210px 0 -3px #8d83ff; content:""; }
.career-hero__inner { position:relative; z-index:2; display:flex; min-height:650px; justify-content:center; flex-direction:column; padding-top:125px; padding-bottom:76px; }
.career-hero__copy { max-width:900px; }
.career-hero h1 { max-width:940px; margin:18px 0 24px; font-size:clamp(52px,7vw,106px); font-weight:545; letter-spacing:-.065em; line-height:.96; }
.career-hero .page-lede { max-width:720px; }
.job-search { display:grid; width:min(100%,840px); grid-template-columns:auto 1fr auto; align-items:center; gap:14px; margin-top:46px; padding:9px 10px 9px 18px; border:1px solid rgba(116,184,255,.22); border-radius:16px; background:rgba(10,20,34,.78); box-shadow:0 22px 60px rgba(0,0,0,.25); backdrop-filter:blur(14px); }
.job-search > img { width:22px; height:22px; filter:brightness(0) invert(1); opacity:.62; }
.job-search input { min-width:0; height:52px; border:0; outline:0; background:transparent; color:#eef5ff; font:inherit; font-size:15px; }
.job-search input::placeholder { color:#71839a; }
.job-search button { height:46px; padding:0 20px; border:0; border-radius:10px; background:linear-gradient(110deg,#2f82ff,#1557dc); color:#fff; font-weight:650; cursor:pointer; }
.career-listing { background-color:#090e17; }
.career-listing__head { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:54px; }
.career-listing__head h2 { margin-top:12px; font-size:clamp(38px,5vw,68px); font-weight:550; letter-spacing:-.055em; }
.career-listing__head > p { color:#7f90a5; font-size:12px; }
.career-listing__head > p strong { color:#76b4ff; font-size:22px; }
.job-list { border-top:1px solid rgba(255,255,255,.11); }
.job-card { display:grid; grid-template-columns:64px minmax(0,1fr) 52px; align-items:center; gap:26px; min-height:210px; padding:32px 18px; border-bottom:1px solid rgba(255,255,255,.1); transition:background .25s ease,padding .3s var(--ease); }
.job-card:hover { padding-right:28px; padding-left:28px; background:linear-gradient(90deg,rgba(43,116,224,.09),transparent); }
.job-card__icon { display:grid; width:56px; height:56px; place-items:center; border:1px solid rgba(105,176,255,.25); border-radius:16px; background:radial-gradient(circle at 30% 25%,rgba(72,161,255,.3),rgba(25,60,116,.12)); }
.job-card__icon img { width:25px; height:25px; filter:brightness(0) invert(1) drop-shadow(0 0 8px rgba(90,170,255,.6)); }
.job-card__meta { display:flex; align-items:center; gap:16px; margin-bottom:12px; color:#6e829b; font-family:ui-monospace,monospace; font-size:9px; letter-spacing:.07em; text-transform:uppercase; }
.job-card__meta time { padding-left:16px; border-left:1px solid rgba(255,255,255,.12); }
.job-card h3 { margin-bottom:12px; font-size:clamp(24px,3vw,38px); font-weight:560; letter-spacing:-.04em; }
.job-card h3 a { color:#edf4fd; }
.job-card__main > p { max-width:850px; margin:0; color:#8292a6; font-size:13px; line-height:1.65; }
.job-card__arrow { display:grid; width:44px; height:44px; place-items:center; border:1px solid rgba(255,255,255,.12); border-radius:50%; color:#86bcff; font-size:17px; transition:.25s ease; }
.job-card:hover .job-card__arrow { border-color:#5da8ff; background:rgba(63,139,241,.15); transform:rotate(12deg); }
.job-pagination { display:flex; justify-content:center; gap:8px; margin-top:50px; }
.job-pagination .page-numbers { display:grid; min-width:42px; height:42px; place-items:center; padding:0 12px; border:1px solid rgba(255,255,255,.12); border-radius:50%; color:#8fa1b8; }
.job-pagination .current,.job-pagination a:hover { border-color:#4e9cff; background:#1f67d8; color:#fff; }
.job-empty { padding:80px 0; text-align:center; }
.job-empty .icon-orb { margin:0 auto 24px; }
.job-empty h3 { font-size:32px; }
.job-empty p { color:#7f90a5; }
.career-culture { background:#f3f6fa; color:#0b1422; }
.career-culture__grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(50px,8vw,120px); }
.career-culture h2 { margin-top:14px; font-size:clamp(40px,5vw,70px); font-weight:560; letter-spacing:-.055em; line-height:1.02; }
.career-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.career-benefits article { min-height:300px; padding:28px; border:1px solid #d3dae4; background:rgba(255,255,255,.76); }
.career-benefits img { width:28px; height:28px; margin-bottom:74px; filter:invert(35%) sepia(95%) saturate(2024%) hue-rotate(206deg) brightness(91%); }
.career-benefits h3 { margin-bottom:12px; font-size:20px; }
.career-benefits p { margin:0; color:#5e6c7d; font-size:12px; line-height:1.65; }
.career-detail__hero { position:relative; min-height:620px; overflow:hidden; background:#080c14; }
.career-detail__hero-inner { position:relative; z-index:2; display:flex; min-height:620px; justify-content:center; flex-direction:column; padding-top:120px; padding-bottom:70px; }
.career-detail__back { align-self:flex-start; margin-bottom:65px; color:#8194ac; font-size:11px; }
.career-detail__title { display:grid; grid-template-columns:72px minmax(0,1fr); gap:30px; align-items:start; }
.career-detail__title .job-card__icon { width:68px; height:68px; }
.career-detail__title h1 { max-width:1080px; margin:14px 0 24px; font-size:clamp(48px,6.5vw,94px); font-weight:550; letter-spacing:-.06em; line-height:.98; }
.career-detail__meta { display:flex; flex-wrap:wrap; gap:10px; }
.career-detail__meta span,.career-detail__meta time { padding:8px 11px; border:1px solid rgba(255,255,255,.11); border-radius:99px; color:#8294a9; font-size:9px; }
.career-detail__body { background:#f4f6f9; color:#111b29; }
.career-detail__grid { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:clamp(50px,8vw,120px); align-items:start; }
.career-detail__content { max-width:820px; padding:0; color:#344255; }
.career-detail__content h2,.career-detail__content h3 { color:#101a28; }
.career-detail__content h3 { margin:44px 0 17px; font-size:24px; }
.career-detail__content li { margin-bottom:10px; line-height:1.7; }
.career-apply-card { position:sticky; top:110px; padding:32px; border:1px solid #d0d8e4; border-radius:20px; background:#fff; box-shadow:0 24px 60px rgba(23,49,84,.09); }
.career-apply-card h2 { margin:13px 0 16px; font-size:30px; letter-spacing:-.04em; }
.career-apply-card > p:not(.eyebrow) { color:#627083; font-size:13px; line-height:1.7; }
.career-apply-card .button { width:100%; justify-content:center; margin:22px 0; }
.career-apply-card small { color:#738095; font-size:10px; line-height:1.7; }

@media (max-width:1080px) {
  .page-hero--products .page-hero__inner { grid-template-columns:1fr; }
  .product-architecture-visual { width:min(100%,700px); min-height:480px; justify-self:start; }
  .service-system--expanded,.tech-constellation--expanded { width:min(100%,500px); }
  .career-culture__grid { grid-template-columns:1fr; }
}
@media (max-width:760px) {
	.nav-toggle { margin-right:12px; }
  .product-architecture-visual { min-height:350px; }
  .product-architecture-visual__status { right:0; bottom:0; font-size:7px; }
  .service-system--expanded,.tech-constellation--expanded { width:min(100%,370px); }
  .service-system--expanded .service-system__node { width:55px; min-height:43px; gap:3px; }
  .service-system--expanded .service-system__node img { width:19px; height:19px; }
  .service-system--expanded .service-system__node b { display:block; font-size:6.5px; }
  .tech-constellation--expanded .tech-constellation__node { width:30px; height:30px; padding:3px; }
  .tech-constellation--expanded .tech-constellation__node img { width:21px; height:21px; }
  .tech-constellation--expanded .tech-constellation__core { width:98px; }
  .work-signal-map { width:100%; justify-self:start; }
  .work-signal-map__scope { border-radius:34% 66% 40% 60% / 48% 38% 62% 52%; }
  .work-signal-map__project { width:23px; height:23px; }
  .work-signal-map__project:nth-of-type(4n) { width:29px; height:29px; }
  .work-signal-map__project img { width:11px; height:11px; }
  .page-hero--about .page-hero__inner { display:block; padding-top:150px; }
  .page-hero--about::after { width:110vw; top:16%; right:-60%; opacity:.78; }
  .page-hero--about .page-hero__copy::after { display:none; }
  .ceo-portrait { width:min(100%,520px); }
  .career-hero,.career-hero__inner { min-height:720px; }
  .career-hero h1 { font-size:clamp(44px,11vw,60px); }
  .job-search { grid-template-columns:auto 1fr; }
  .job-search button { grid-column:1/-1; }
  .career-listing__head { align-items:start; flex-direction:column; }
  .job-card { grid-template-columns:52px minmax(0,1fr); gap:18px; padding:27px 4px; }
  .job-card__icon { width:48px; height:48px; border-radius:14px; }
  .job-card__arrow { display:none; }
  .job-card__meta { align-items:flex-start; flex-direction:column; gap:5px; }
  .job-card__meta time { padding-left:0; border-left:0; }
  .career-benefits { grid-template-columns:1fr; }
  .career-benefits article { min-height:230px; }
  .career-benefits img { margin-bottom:45px; }
  .career-detail__title { grid-template-columns:1fr; }
  .career-detail__title h1 { font-size:clamp(42px,13vw,66px); }
  .career-detail__grid { grid-template-columns:1fr; }
  .career-apply-card { position:static; }
}

/* 1.5 correction: retain the approved line grid; replace pixel-block patterns. */
.site-header { border-color:rgba(255,255,255,.1); }

.hero__grid,
.page-hero__grid {
  opacity:.62;
  background-image:linear-gradient(rgba(119,181,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(119,181,255,.06) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.24),#000 32%,rgba(0,0,0,.3) 84%,transparent);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.24),#000 32%,rgba(0,0,0,.3) 84%,transparent);
}
.page-hero__grid::after { display:none; }

/* Dark sections use sparse circuit signals, never filled checker blocks. */
.main-content > .section,
.main-content > .contact-page {
  background-image:
    radial-gradient(circle at 11% 24%,rgba(91,170,255,.18) 0 2px,transparent 3px),
    radial-gradient(circle at 78% 68%,rgba(95,226,204,.13) 0 2px,transparent 3px),
    linear-gradient(132deg,transparent 0 21%,rgba(87,159,245,.045) 21.08% 21.16%,transparent 21.24% 67%,rgba(87,159,245,.032) 67.08% 67.16%,transparent 67.24%),
    radial-gradient(ellipse at 94% 8%,rgba(48,126,238,.095),transparent 38%);
  background-position:0 0,0 0,center,center;
  background-size:214px 214px,318px 318px,100% 100%,100% 100%;
}
.main-content > .section:nth-of-type(even) {
  background-image:
    radial-gradient(circle at 18% 72%,rgba(112,102,255,.16) 0 2px,transparent 3px),
    radial-gradient(circle at 86% 26%,rgba(78,169,255,.14) 0 1.5px,transparent 2.5px),
    linear-gradient(28deg,transparent 0 32%,rgba(101,166,247,.04) 32.08% 32.16%,transparent 32.24% 74%,rgba(101,166,247,.03) 74.08% 74.16%,transparent 74.24%),
    radial-gradient(ellipse at 8% 92%,rgba(74,88,220,.08),transparent 40%);
  background-size:246px 246px,356px 356px,100% 100%,100% 100%;
}
.section::before {
  opacity:.62;
  background-image:
    linear-gradient(24deg,transparent 0 56%,rgba(105,176,255,.042) 56.08% 56.16%,transparent 56.24%),
    linear-gradient(146deg,transparent 0 76%,rgba(92,159,244,.032) 76.08% 76.16%,transparent 76.24%);
  background-size:100% 100%;
  -webkit-mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.25) 50%,#000);
  mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.25) 50%,#000);
}

/* Light sections have their own flowing blueprint treatment. */
.services-section,
.data-journey-section,
.engagement-section,
.engineering-principles,
.values-section,
.career-culture,
.career-detail__body,
.location-section {
  background-image:
    repeating-linear-gradient(164deg,transparent 0 54px,rgba(31,103,198,.04) 55px 56px,transparent 57px 112px),
    linear-gradient(118deg,rgba(42,116,220,.06),transparent 34% 68%,rgba(74,145,229,.045)),
    radial-gradient(ellipse at 90% 12%,rgba(53,130,226,.1),transparent 38%);
  background-size:100% 100%;
}
.services-section::before,
.data-journey-section::before,
.engagement-section::before,
.engineering-principles::before,
.values-section::before,
.career-culture::before,
.career-detail__body::before,
.location-section::before {
  opacity:.86;
  background-image:
    linear-gradient(12deg,transparent 0 27%,rgba(28,99,194,.075) 27.08% 27.18%,transparent 27.28%),
    linear-gradient(168deg,transparent 0 72%,rgba(28,99,194,.06) 72.08% 72.18%,transparent 72.28%),
    radial-gradient(circle at 82% 23%,rgba(28,99,194,.2) 0 2px,transparent 3px);
  background-size:100% 100%,100% 100%,148px 148px;
  -webkit-mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.4),#000);
  mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.4),#000);
}

.service-detail,
.capability-card,
.product-showcase__content,
.case-card--real,
.mission-card::after,
.agent-terminal::before,
.outcome-grid article::after,
.impact-grid article::after {
  background-image:radial-gradient(circle at 90% 14%,rgba(88,169,255,.12) 0 2px,transparent 3px),linear-gradient(138deg,transparent 0 68%,rgba(88,160,247,.05) 68.1% 68.22%,transparent 68.34%);
  background-size:118px 118px,100% 100%;
}
.engagement-card,
.value-grid article,
.principle-grid article,
.career-benefits article {
  background-image:repeating-linear-gradient(164deg,transparent 0 42px,rgba(31,103,198,.035) 43px 44px,transparent 45px 88px),linear-gradient(120deg,rgba(44,122,222,.045),transparent 48%);
}
.case-card__visual::before,
.product-showcase__pattern {
  opacity:.48;
  background-image:linear-gradient(rgba(255,255,255,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.065) 1px,transparent 1px);
  background-size:48px 48px;
}

/* Homepage engineering services: no badge background, stronger blue signal. */
.service-row__icon { border:0!important; background:none!important; box-shadow:none!important; }
.service-row__icon img { width:24px; height:24px; opacity:1; filter:brightness(0) saturate(100%) invert(38%) sepia(98%) saturate(1817%) hue-rotate(203deg) brightness(100%) contrast(102%) drop-shadow(0 0 7px rgba(34,112,225,.28)); }
.service-row__icon b { color:#1767d8; font-size:18px; font-weight:780; }

/* FinWork AI product hero console. */
.page-hero--products .page-hero__inner { grid-template-columns:minmax(0,.9fr) minmax(540px,1.1fr); }
.finwork-terminal { position:relative; width:min(100%,690px); min-height:570px; justify-self:end; overflow:hidden; border:1px solid rgba(105,176,255,.24); border-radius:22px; background:linear-gradient(160deg,rgba(14,28,48,.98),rgba(6,12,22,.99)); box-shadow:0 40px 100px rgba(0,0,0,.4),inset 0 1px rgba(255,255,255,.055); }
.finwork-terminal::before { position:absolute; inset:0; opacity:.5; background-image:linear-gradient(rgba(93,161,247,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(93,161,247,.045) 1px,transparent 1px); background-size:52px 52px; content:""; -webkit-mask-image:linear-gradient(135deg,transparent 12%,#000); mask-image:linear-gradient(135deg,transparent 12%,#000); }
.finwork-terminal__bar,.finwork-terminal__context,.finwork-terminal__output,.finwork-terminal__progress,.finwork-terminal__summary { position:relative; z-index:1; }
.finwork-terminal__bar { display:flex; min-height:64px; align-items:center; gap:16px; padding:14px 20px; border-bottom:1px solid rgba(255,255,255,.09); background:rgba(19,36,60,.72); }
.finwork-terminal__bar > img { width:auto; max-width:142px; height:28px; object-fit:contain; }
.finwork-terminal__bar > small { display:flex; align-items:center; gap:8px; margin-left:auto; color:#6e839c; font-family:ui-monospace,monospace; font-size:8px; letter-spacing:.1em; text-transform:uppercase; }
.finwork-terminal__bar > small i { width:7px; height:7px; border-radius:50%; background:#5ce2a0; box-shadow:0 0 14px rgba(92,226,160,.8); }
.finwork-terminal .agent-terminal__dots { display:flex; gap:6px; }
.finwork-terminal .agent-terminal__dots i { width:7px; height:7px; border-radius:50%; background:#ff6f82; }
.finwork-terminal .agent-terminal__dots i:nth-child(2) { background:#ffc260; }
.finwork-terminal .agent-terminal__dots i:nth-child(3) { background:#5bdd9e; }
.finwork-terminal__context { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:14px 22px; border-bottom:1px solid rgba(255,255,255,.075); color:#5e7794; font-family:ui-monospace,monospace; font-size:8px; letter-spacing:.1em; }
.finwork-terminal__context b { color:#74adf5; font-weight:650; }
.finwork-terminal__output { min-height:335px; padding:24px 26px 12px; overflow:hidden; font-family:ui-monospace,monospace; }
.finwork-terminal__output .terminal-line { font-size:10.5px; line-height:1.52; }
.finwork-terminal__progress { display:grid; grid-template-columns:1fr 42px; align-items:center; gap:12px; padding:0 24px 18px; }
.finwork-terminal__progress > span { height:4px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.08); }
.finwork-terminal__progress > span i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#2d83ff,#61d9ba); box-shadow:0 0 16px rgba(58,151,255,.55); transition:width .12s linear; }
.finwork-terminal__progress > b { color:#72adf6; font-family:ui-monospace,monospace; font-size:9px; text-align:right; }
.finwork-terminal__summary { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.085); background:rgba(19,38,65,.64); }
.finwork-terminal__summary > span { min-height:74px; padding:15px 17px; border-right:1px solid rgba(255,255,255,.075); }
.finwork-terminal__summary > span:last-child { border-right:0; }
.finwork-terminal__summary b { display:block; margin-bottom:5px; color:#cfe2f8; font-family:ui-monospace,monospace; font-size:18px; }
.finwork-terminal__summary small { color:#60758d; font-size:8px; letter-spacing:.08em; text-transform:uppercase; }
.finwork-terminal__summary .is-passed b { color:#64dfa5; }
.finwork-terminal__summary .is-failed b { color:#ff8290; }
.finwork-terminal__summary .is-review b { color:#ffc46e; }

/* Career list remains role-neutral. */
.job-card { grid-template-columns:minmax(0,1fr) 52px; }

/* About refinements. */
.ceo-portrait { border-radius:112px 12px 112px 12px!important; }
.number-grid > div > span { color:#9bacc0; font-size:14px; font-weight:550; line-height:1.45; }
.office-manifesto__image { background-image:linear-gradient(90deg,#061127 0%,rgba(6,24,54,.9) 42%,rgba(9,40,83,.5) 73%,rgba(9,43,92,.28)),linear-gradient(0deg,rgba(4,17,40,.9),transparent 58%),url('../images/company/office-2026.jpg'); background-position:center,center,center 50%; background-size:cover,cover,cover; background-repeat:no-repeat; }
.history-row figure,.history-row figure.dion-shape { border-radius:14px!important; }
.history-row figure img { aspect-ratio:1.45; object-position:center 50%; }
.history-row--portrait figure { background:#080e18; }
.history-row--portrait figure img { aspect-ratio:1.2; object-position:center 68%; }
.history-row--contain figure { background:#bdd5fb; }
.history-row--contain figure img { aspect-ratio:1.35; object-fit:contain; object-position:center; }

@media (max-width:1080px) {
  .page-hero--products .page-hero__inner { grid-template-columns:1fr; }
  .finwork-terminal { width:min(100%,720px); justify-self:start; }
}
@media (max-width:700px) {
  .product-carousel__controls { display:none; }
  .product-carousel .product-showcase-grid { grid-template-columns:1fr; grid-auto-flow:row; grid-auto-columns:auto; overflow:visible; padding-bottom:0; scroll-snap-type:none; }
  .product-carousel .product-showcase,.product-carousel .product-showcase:nth-last-child(-n+2) { grid-column:auto; }
  .finwork-terminal { min-height:600px; border-radius:16px; }
  .finwork-terminal__bar { padding-inline:15px; }
  .finwork-terminal__bar > img { max-width:118px; height:24px; }
  .finwork-terminal__bar > small { display:none; }
  .finwork-terminal__context { align-items:flex-start; flex-direction:column; gap:7px; padding-inline:17px; }
  .finwork-terminal__output { min-height:350px; padding:20px 17px 10px; }
  .finwork-terminal__summary { grid-template-columns:repeat(2,1fr); }
  .finwork-terminal__summary > span:nth-child(2) { border-right:0; }
  .finwork-terminal__summary > span:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.075); }
  .job-card { grid-template-columns:minmax(0,1fr); }
  .job-card__main { min-width:0; }
  .history-row--portrait figure img { aspect-ratio:1; }
}

/* 1.6 visual system: stronger blueprint grids, richer light fields and simplified heroes. */
.hero__grid,
.page-hero__grid,
.career-hero__field {
  opacity:.92;
  background-image:
    linear-gradient(rgba(107,177,255,.095) 1px,transparent 1px),
    linear-gradient(90deg,rgba(107,177,255,.095) 1px,transparent 1px),
    linear-gradient(rgba(117,190,255,.16) 1px,transparent 1px),
    linear-gradient(90deg,rgba(117,190,255,.16) 1px,transparent 1px),
    radial-gradient(circle at 76% 42%,rgba(46,132,255,.2),transparent 34%),
    radial-gradient(circle at 16% 78%,rgba(99,79,255,.09),transparent 27%);
  background-position:center;
  background-size:56px 56px,56px 56px,224px 224px,224px 224px,100% 100%,100% 100%;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.72),#000 24%,#000 88%,rgba(0,0,0,.54));
  mask-image:linear-gradient(90deg,rgba(0,0,0,.72),#000 24%,#000 88%,rgba(0,0,0,.54));
}
.hero__grid::after,
.page-hero__grid::after,
.career-hero__field::after {
  position:absolute;
  display:block;
  inset:0;
  width:auto;
  height:auto;
  border-radius:0;
  box-shadow:none;
  background-color:transparent;
  opacity:.9;
  background-image:
    radial-gradient(circle at 28px 28px,rgba(132,204,255,.32) 0 1.5px,transparent 2px),
    linear-gradient(131deg,transparent 0 63%,rgba(94,170,255,.1) 63.08% 63.18%,transparent 63.28%),
    linear-gradient(49deg,transparent 0 76%,rgba(91,225,203,.075) 76.08% 76.16%,transparent 76.26%);
  background-size:112px 112px,100% 100%,100% 100%;
  content:"";
}

/* Every dark section keeps a visible grid, then gains sparse circuit paths and signal nodes. */
.main-content > .section,
.main-content > .contact-page {
  background-image:
    linear-gradient(rgba(102,169,247,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(102,169,247,.055) 1px,transparent 1px),
    linear-gradient(rgba(107,177,255,.095) 1px,transparent 1px),
    linear-gradient(90deg,rgba(107,177,255,.095) 1px,transparent 1px),
    radial-gradient(ellipse at 92% 8%,rgba(48,126,238,.12),transparent 35%);
  background-position:center;
  background-size:64px 64px,64px 64px,256px 256px,256px 256px,100% 100%;
}
.main-content > .section:nth-of-type(even) {
  background-image:
    linear-gradient(rgba(114,139,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(114,139,255,.05) 1px,transparent 1px),
    linear-gradient(rgba(118,158,255,.085) 1px,transparent 1px),
    linear-gradient(90deg,rgba(118,158,255,.085) 1px,transparent 1px),
    radial-gradient(ellipse at 7% 92%,rgba(89,71,225,.11),transparent 38%);
  background-size:64px 64px,64px 64px,256px 256px,256px 256px,100% 100%;
}
.section::before {
  opacity:.9;
  background-image:
    radial-gradient(circle at 16% 22%,rgba(120,195,255,.42) 0 2px,transparent 3px),
    radial-gradient(circle at 82% 67%,rgba(91,229,202,.34) 0 2px,transparent 3px),
    linear-gradient(126deg,transparent 0 24%,rgba(100,176,255,.1) 24.08% 24.18%,transparent 24.28% 71%,rgba(100,176,255,.075) 71.08% 71.18%,transparent 71.28%),
    linear-gradient(35deg,transparent 0 79%,rgba(84,221,201,.055) 79.08% 79.17%,transparent 79.26%);
  background-size:192px 192px,286px 286px,100% 100%,100% 100%;
  -webkit-mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.45) 48%,#000);
  mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.45) 48%,#000);
}
.section::after {
  opacity:.9;
  border-color:rgba(91,167,255,.18);
  box-shadow:0 0 0 38px rgba(74,147,255,.045),0 0 0 92px rgba(74,147,255,.025),inset 0 0 60px rgba(58,136,246,.035);
}

/* Light sections use a crisp architectural blueprint rather than pale dark-mode decoration. */
.services-section,
.data-journey-section,
.engagement-section,
.engineering-principles,
.values-section,
.career-culture,
.career-detail__body,
.location-section {
  background-image:
    linear-gradient(rgba(28,101,198,.075) 1px,transparent 1px),
    linear-gradient(90deg,rgba(28,101,198,.075) 1px,transparent 1px),
    linear-gradient(rgba(28,101,198,.13) 1px,transparent 1px),
    linear-gradient(90deg,rgba(28,101,198,.13) 1px,transparent 1px),
    radial-gradient(circle at 91% 12%,rgba(66,139,226,.14),transparent 31%),
    radial-gradient(circle at 8% 88%,rgba(104,91,224,.08),transparent 29%)!important;
  background-position:center!important;
  background-size:40px 40px,40px 40px,200px 200px,200px 200px,100% 100%,100% 100%!important;
}
.services-section::before,
.data-journey-section::before,
.engagement-section::before,
.engineering-principles::before,
.values-section::before,
.career-culture::before,
.career-detail__body::before,
.location-section::before {
  opacity:1;
  background-image:
    radial-gradient(circle at 20px 20px,rgba(24,99,199,.22) 0 1.5px,transparent 2px),
    linear-gradient(16deg,transparent 0 29%,rgba(24,99,199,.11) 29.08% 29.18%,transparent 29.28%),
    linear-gradient(164deg,transparent 0 68%,rgba(24,99,199,.085) 68.08% 68.18%,transparent 68.28%);
  background-size:80px 80px,100% 100%,100% 100%;
  -webkit-mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.68),#000);
  mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.68),#000);
}
.services-section::after,
.data-journey-section::after,
.engagement-section::after,
.engineering-principles::after,
.values-section::after,
.career-culture::after,
.career-detail__body::after,
.location-section::after {
  border-color:rgba(24,99,199,.2);
  box-shadow:0 0 0 32px rgba(30,103,200,.055),0 0 0 78px rgba(30,103,200,.028),inset 0 0 55px rgba(30,103,200,.035);
}

/* Card patterns are tuned separately from section fields. */
.service-detail,
.capability-card,
.product-showcase__content,
.case-card--real,
.mission-card::after,
.agent-terminal::before,
.outcome-grid article::after,
.impact-grid article::after {
  background-image:
    linear-gradient(rgba(102,173,255,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(102,173,255,.07) 1px,transparent 1px),
    radial-gradient(circle at 85% 17%,rgba(105,190,255,.32) 0 2px,transparent 3px),
    linear-gradient(138deg,transparent 0 69%,rgba(88,164,252,.09) 69.08% 69.2%,transparent 69.32%);
  background-size:44px 44px,44px 44px,132px 132px,100% 100%;
}
.engagement-card,
.value-grid article,
.principle-grid article,
.career-benefits article {
  background-image:
    linear-gradient(rgba(26,100,199,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(26,100,199,.06) 1px,transparent 1px),
    radial-gradient(circle at 84% 16%,rgba(29,105,206,.2) 0 2px,transparent 3px),
    linear-gradient(142deg,transparent 0 72%,rgba(30,108,211,.085) 72.08% 72.2%,transparent 72.32%);
  background-size:32px 32px,32px 32px,112px 112px,100% 100%;
}

/* Services hero: inquiry form replaces the decorative orbit. */
.page-hero--services,
.page-hero--services .page-hero__inner { min-height:900px; }
.page-hero--services .page-hero__inner { grid-template-columns:minmax(0,.82fr) minmax(540px,1.08fr); gap:clamp(48px,6vw,100px); }
.page-hero--services .page-hero__copy { max-width:760px; }
.services-inquiry { width:100%; max-width:700px; justify-self:end; padding:30px; background:rgba(10,20,34,.88); box-shadow:0 40px 100px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.04); }
.services-inquiry form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.services-inquiry .form-row { margin:0; }
.services-inquiry .form-row--wide,
.services-inquiry .button,
.services-inquiry .form-privacy { grid-column:1/-1; }
.services-inquiry textarea { min-height:104px; }
.services-inquiry .form-privacy { margin:0; }

/* Technology and Work heroes are intentionally typographic. */
.page-hero--tech .page-hero__inner,
.page-hero--work .page-hero__inner { grid-template-columns:1fr; }
.page-hero--tech .page-hero__copy,
.page-hero--work .page-hero__copy { width:100%; max-width:none; }
.page-hero--tech,
.page-hero--tech .page-hero__inner { min-height:760px; }
.page-hero--tech .page-hero__copy { text-align:left; }
.tech-typing-title {
  width:100%;
  min-height:2.08em;
  margin:22px 0 30px!important;
  font-size:clamp(64px,8vw,132px)!important;
  letter-spacing:-.065em!important;
  line-height:.96!important;
}
.tech-typing-title > span {
  background:linear-gradient(100deg,#f7faff 0%,#dcecff 42%,#6fb1ff 72%,#6d79ff 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.tech-typing-title > i { display:inline-block; width:.045em; height:.83em; margin-left:.07em; background:#74b5ff; box-shadow:0 0 18px rgba(74,158,255,.65); vertical-align:-.06em; animation:techCursor .72s steps(1,end) infinite; }
.tech-typing-title.is-complete > i { opacity:.7; }
@keyframes techCursor { 50% { opacity:0; } }
.page-hero--work .page-hero__copy { max-width:1100px; }

/* Founder portrait and career-first information hierarchy. */
.ceo-portrait { border:0!important; box-shadow:none!important; }
.career-hero,
.career-hero__inner { min-height:900px; }
.career-hero__inner { align-items:center; padding-bottom:82px; text-align:center; }
.career-hero__copy { width:100%; max-width:none; }
.career-hero h1 { max-width:none; margin:18px auto 20px; font-size:clamp(46px,5.8vw,82px); line-height:.98; }
.career-hero .page-lede { max-width:900px; margin-inline:auto; font-size:clamp(16px,1.35vw,20px); }
.career-hero .job-search { margin:34px auto 0; }
.job-card--featured { width:min(100%,960px); min-height:180px; margin:24px auto 0; padding:26px 28px; border:1px solid rgba(111,181,255,.2); border-radius:18px; background:linear-gradient(105deg,rgba(27,64,116,.52),rgba(8,16,28,.86)); box-shadow:0 26px 70px rgba(0,0,0,.28); text-align:left; }
.job-card--featured:hover { padding-right:34px; padding-left:34px; }
.job-card--featured h3 { font-size:clamp(24px,2.5vw,34px); }

/* Mobile menu owns an opaque top-level layer on real devices. */
@media (max-width:880px) {
  .site-header,
  .site-header.is-scrolled,
  body.nav-open .site-header { z-index:2147483000; background:#070a10!important; border-color:rgba(255,255,255,.14)!important; -webkit-backdrop-filter:none!important; backdrop-filter:none!important; }
  .site-nav {
    z-index:2147483001!important;
    inset:68px 0 0!important;
    width:100vw;
    height:calc(100dvh - 68px);
    overflow-y:auto;
    background:#070a10!important;
    background-image:linear-gradient(rgba(104,175,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(104,175,255,.055) 1px,transparent 1px)!important;
    background-size:56px 56px!important;
    box-shadow:0 28px 70px rgba(0,0,0,.65);
    isolation:isolate;
  }
  .site-nav::before { z-index:0!important; background:linear-gradient(180deg,rgba(7,10,16,.96),#070a10 42%)!important; }
  .site-nav > * { position:relative; z-index:2; }
  .site-nav.is-open { visibility:visible!important; opacity:1!important; transform:none!important; }
  body.nav-open { overflow:hidden; }
  .page-hero--services .page-hero__inner { grid-template-columns:1fr; }
  .services-inquiry { width:min(100%,720px); justify-self:start; }
}

@media (max-width:640px) {
  .hero__grid,
  .page-hero__grid,
  .career-hero__field { background-size:42px 42px,42px 42px,168px 168px,168px 168px,100% 100%,100% 100%; }
  .main-content > .section { background-size:48px 48px,48px 48px,192px 192px,192px 192px,100% 100%; }
  .page-hero--services,
  .page-hero--services .page-hero__inner { min-height:auto; }
  .services-inquiry { padding:22px 18px; }
  .services-inquiry form { grid-template-columns:1fr; }
  .services-inquiry .form-row--wide,
  .services-inquiry .button,
  .services-inquiry .form-privacy { grid-column:auto; }
  .tech-typing-title { min-height:3.05em; font-size:clamp(48px,14vw,68px)!important; }
  .career-hero,
  .career-hero__inner { min-height:auto; }
  .career-hero__inner { padding-top:118px; padding-bottom:70px; }
  .career-hero h1 { font-size:clamp(40px,11.5vw,56px); }
  .job-card--featured { min-height:0; padding:23px 20px; }
}

@media (prefers-reduced-motion:reduce) {
  .tech-typing-title > i { animation:none; opacity:.8; }
}

/* 1.7: restore the previously approved 48px hero grid on Home and Career. */
.hero__grid,
.career-hero__field {
  opacity:.62;
  overflow:hidden;
  background-image:linear-gradient(rgba(119,181,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(119,181,255,.055) 1px,transparent 1px);
  background-position:center;
  background-size:48px 48px;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.25),#000 34%,rgba(0,0,0,.25));
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.25),#000 34%,rgba(0,0,0,.25));
}
.hero__grid::after,
.career-hero__field::after { display:none; }
.hero__grid {
  background-image:linear-gradient(rgba(119,181,255,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(119,181,255,.075) 1px,transparent 1px);
}
.grid-tracer { position:absolute; display:block; width:5px; height:5px; border-radius:50%; background:#8dccff; box-shadow:0 0 7px #69b7ff,0 0 18px rgba(84,164,255,.78); }
.grid-tracer--one { top:calc(34% - 2px); left:-3%; animation:gridTracerX 15s linear -4s infinite; }
.grid-tracer--two { top:calc(67% - 2px); left:-3%; background:#6ee0c5; box-shadow:0 0 7px #59d8bd,0 0 18px rgba(70,221,190,.68); animation:gridTracerX 21s linear -13s infinite; }
.grid-tracer--three { top:-3%; left:calc(76% - 2px); animation:gridTracerY 18s linear -8s infinite; }
@keyframes gridTracerX { to { transform:translateX(106vw); } }
@keyframes gridTracerY { to { transform:translateY(106vh); } }

/* Homepage Engineering Services: hover adds a signal border without moving content. */
.service-row { transition:box-shadow .25s ease,border-radius .25s ease,border-color .25s ease; }
.service-row:hover { z-index:2; padding-inline:0!important; border-color:transparent; border-radius:12px; background:transparent!important; box-shadow:inset 0 0 0 1px rgba(45,126,234,.72),0 0 24px rgba(44,124,230,.18); }

/* Technology statements disappear as a whole before the next random message. */
.tech-typing-title { transition:opacity .4s ease,filter .4s ease; }
.tech-typing-title.is-fading { opacity:0; filter:blur(6px); }

/* Career: the complete opening list begins immediately after search. */
.career-hero,
.career-hero__inner { min-height:auto; }
.career-hero__inner { align-items:center; padding-top:148px; padding-bottom:100px; }
.career-openings { width:100%; margin-top:38px; text-align:left; }
.career-openings__head { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:0 2px 20px; }
.career-openings__head .eyebrow { margin:0; }
.career-openings__head > p:last-child { margin:0; color:#7f90a5; font-size:12px; }
.career-openings__head strong { color:#76b4ff; font-size:22px; }
.career-openings .job-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; border:0; }
.career-openings .job-card { min-height:118px; gap:16px; padding:19px 22px; border:1px solid rgba(255,255,255,.105); border-radius:15px; background:rgba(9,17,29,.76); box-shadow:inset 0 1px rgba(255,255,255,.025); }
.career-openings .job-card:hover { padding:19px 22px; border-color:rgba(83,158,255,.5); background:rgba(17,35,61,.9); box-shadow:0 0 24px rgba(47,128,235,.12); }
.career-openings .job-card h3 { margin-bottom:0; font-size:clamp(20px,1.65vw,26px); }
.career-openings .job-card__meta { margin-bottom:8px; }
.career-openings .job-card__main > p { display:none; }
.career-openings .job-card__arrow { width:38px; height:38px; }
.career-openings .job-empty { grid-column:1/-1; }

/* Career detail: structured facts for senior technical roles. */
.career-job-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0 0 48px!important; padding:0!important; list-style:none!important; }
.career-job-facts li { display:flex; min-height:78px; justify-content:space-between; flex-direction:column; gap:7px; margin:0!important; padding:17px 19px; border:1px solid #d7dfe9; border-radius:13px; background:rgba(255,255,255,.82); }
.career-job-facts small { color:#788698; font-size:9px; font-weight:650; letter-spacing:.14em; text-transform:uppercase; }
.career-job-facts strong { color:#132033; font-size:15px; font-weight:600; }
.career-detail__content > h2 { margin:52px 0 18px; font-size:clamp(29px,3.2vw,43px); letter-spacing:-.04em; }
.career-detail__content > h2:first-of-type { margin-top:0; }
.career-detail__content h3 { color:#1d5fae; font-size:20px; }
.career-detail__content ul ul { margin-top:10px; }

/* Footer: a direct Zalo contact action and a clearer information hierarchy. */
.site-footer { position:relative; overflow:hidden; padding:56px 0 24px; background:#05080d; }
.site-footer__field { position:absolute; inset:0; opacity:.8; pointer-events:none; background-image:linear-gradient(rgba(100,168,247,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(100,168,247,.04) 1px,transparent 1px),radial-gradient(circle at 82% 12%,rgba(37,112,226,.16),transparent 30%); background-size:56px 56px,56px 56px,100% 100%; -webkit-mask-image:linear-gradient(to bottom,#000,transparent 82%); mask-image:linear-gradient(to bottom,#000,transparent 82%); }
.site-footer > .shell { position:relative; z-index:1; }
.site-footer__contact { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:36px; padding:clamp(24px,3.2vw,38px); border:1px solid rgba(102,173,255,.18); border-radius:22px; background:linear-gradient(125deg,rgba(21,48,84,.76),rgba(7,14,25,.93) 62%); box-shadow:0 26px 70px rgba(0,0,0,.26),inset 0 1px rgba(255,255,255,.04); }
.site-footer__contact .eyebrow { margin-bottom:8px; font-size:8px; }
.site-footer__contact h2 { margin:0 0 16px; font-size:clamp(52px,6.5vw,92px); font-weight:550; letter-spacing:-.06em; line-height:.92; }
.site-footer__contact-copy { align-self:center; }
.site-footer__contact-copy > p:last-child { max-width:650px; margin:0; color:#b0bfd0; font-size:clamp(14px,1.05vw,17px); line-height:1.55; letter-spacing:-.01em; }
.footer-zalo { display:grid; min-width:224px; grid-template-columns:9px 1fr 30px; align-items:center; gap:11px; padding:13px 14px; border:1px solid rgba(101,181,255,.28); border-radius:13px; background:linear-gradient(110deg,rgba(31,111,224,.28),rgba(12,31,56,.86)); box-shadow:0 14px 34px rgba(0,0,0,.22); transition:border-color .25s ease,transform .25s var(--ease),box-shadow .25s ease; }
.footer-zalo:hover { border-color:#5ba7ff; transform:translateY(-3px); box-shadow:0 22px 55px rgba(18,85,184,.22); }
.footer-zalo > i { width:8px; height:8px; border-radius:50%; background:#55dfa5; box-shadow:0 0 14px #55dfa5; }
.footer-zalo > span { display:flex; flex-direction:column; gap:2px; }
.footer-zalo small { color:#7188a4; font-size:8px; font-weight:750; letter-spacing:.14em; text-transform:uppercase; }
.footer-zalo strong { color:#f1f6fc; font-size:15px; font-weight:620; letter-spacing:-.018em; }
.footer-zalo > b { display:grid; width:29px; height:29px; place-items:center; border:1px solid rgba(255,255,255,.12); border-radius:50%; color:#83bcff; font-size:12px; }
.site-footer__grid { grid-template-columns:1.25fr .7fr .7fr 1fr; gap:clamp(34px,5vw,72px); padding:64px 0 58px; }
.site-footer__brand { max-width:360px; }
.site-footer__brand > p { margin:0; color:#75869b; font-size:13px; line-height:1.7; }
.site-footer__grid > div { gap:12px; }
.site-footer__grid a,.site-footer__grid address { line-height:1.6; }
.site-footer__office { justify-self:start; }
.site-footer__zalo-link { margin-top:4px; color:#73aff8!important; }
.site-footer__bottom { color:#59687a; }

@media (max-width:980px) {
  .site-footer__contact { grid-template-columns:1fr; }
  .footer-zalo { width:min(100%,420px); }
  .site-footer__grid { grid-template-columns:1.2fr 1fr 1fr; }
  .site-footer__brand { grid-column:1/-1; }
}

@media (max-width:700px) {
  .grid-tracer { display:none; }
  .career-openings__head { align-items:flex-start; flex-direction:column; gap:10px; }
  .career-openings .job-list { grid-template-columns:1fr; }
  .career-openings .job-card { min-height:112px; padding:18px; }
  .career-openings .job-card:hover { padding:18px; }
  .career-job-facts { grid-template-columns:1fr; margin-bottom:38px!important; }
  .site-footer { padding-top:42px; }
  .site-footer__contact { gap:22px; padding:22px 18px; border-radius:18px; }
  .footer-zalo { min-width:0; }
  .site-footer__grid { grid-template-columns:1fr 1fr; gap:38px 28px; padding:48px 0; }
  .site-footer__brand,.site-footer__office { grid-column:1/-1; }
}

@media (prefers-reduced-motion:reduce) {
  .grid-tracer { display:none; }
  .tech-typing-title { transition:none; }
}

/* Keep the fixed website header below WordPress' authenticated admin toolbar. */
body.admin-bar .site-header { top:32px; }

.dion-monitor-page .site-header,
.dion-monitor-page .site-header.is-scrolled {
  background:#070a10;
  border-color:rgba(255,255,255,.1);
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}

@media screen and (max-width:782px) {
  body.admin-bar .site-header { top:46px; }
}
