/* =========================================================
   Xaiore — Art Direction v4 / Precision Lumen
   Purpose: one disciplined brand mark, restrained optical motion,
   cleaner editorial hierarchy, fewer template-like cards and grids.
   Loaded after the production and v3 layers.
   ========================================================= */

:root,
html[data-theme="light"] {
  --ad-ink: #07102f;
  --ad-ink-soft: #222e50;
  --ad-muted: #68738f;
  --ad-line: rgba(78, 91, 171, .14);
  --ad-line-strong: rgba(86, 94, 205, .28);
  --ad-glass: rgba(255, 255, 255, .72);
  --ad-glass-strong: rgba(255, 255, 255, .90);
  --ad-panel: rgba(250, 251, 255, .80);
  --ad-indigo: #5264ff;
  --ad-violet: #8d72ff;
  --ad-ice: #dce5ff;
  --ad-glow: rgba(92, 91, 255, .21);
  --ad-glow-soft: rgba(101, 111, 255, .09);
  --ad-shadow: 0 34px 90px rgba(33, 46, 111, .12);
  --ad-shadow-soft: 0 16px 48px rgba(33, 46, 111, .08);
}
html[data-theme="dark"] {
  --ad-ink: #f6f7ff;
  --ad-ink-soft: #dce2f8;
  --ad-muted: #a1abc8;
  --ad-line: rgba(191, 201, 255, .13);
  --ad-line-strong: rgba(181, 190, 255, .27);
  --ad-glass: rgba(12, 18, 40, .73);
  --ad-glass-strong: rgba(17, 24, 51, .90);
  --ad-panel: rgba(14, 21, 45, .82);
  --ad-indigo: #7e8dff;
  --ad-violet: #a88dff;
  --ad-ice: #dfe6ff;
  --ad-glow: rgba(114, 111, 255, .24);
  --ad-glow-soft: rgba(106, 119, 255, .10);
  --ad-shadow: 0 36px 100px rgba(0, 0, 0, .38);
  --ad-shadow-soft: 0 18px 52px rgba(0, 0, 0, .24);
}

html[data-visual-fidelity="v4"] {
  scroll-padding-top: 92px;
}
html[data-visual-fidelity="v4"] body {
  background:
    radial-gradient(70rem 48rem at 88% -6%, color-mix(in srgb, var(--ad-violet) 10%, transparent), transparent 66%),
    radial-gradient(58rem 42rem at -8% 34%, color-mix(in srgb, var(--ad-indigo) 7%, transparent), transparent 68%),
    var(--x-bg);
}
html[data-visual-fidelity="v4"] body::before {
  opacity: 0;
  background: none;
}
html[data-visual-fidelity="v4"] body::after {
  opacity: .055;
  mix-blend-mode: soft-light;
}
html[data-visual-fidelity="v4"] main { isolation: isolate; }
html[data-visual-fidelity="v4"] section[id] {
  scroll-margin-top: 94px;
  content-visibility: auto;
  contain-intrinsic-size: 900px;
}

/* Accessibility: never leave the skip link visually stuck after touch navigation. */
html[data-visual-fidelity="v4"] .skip-link {
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  transform: none;
  opacity: 0;
}
html[data-visual-fidelity="v4"] body.keyboard-nav .skip-link:focus-visible {
  width: auto;
  height: auto;
  overflow: visible;
  clip-path: none;
  opacity: 1;
  transform: translateY(0);
}

/* ---------- One master brand mark ---------- */
html[data-visual-fidelity="v4"] .brand-lockup { gap: 12px; }
html[data-visual-fidelity="v4"] .brand-mark {
  width: 37px;
  height: 37px;
  overflow: visible;
  filter: drop-shadow(0 10px 18px rgba(70, 73, 205, .17));
}
html[data-visual-fidelity="v4"] .brand-mark .brand-shadow {
  fill: none;
  stroke: rgba(31, 38, 108, .16);
  stroke-width: 10.5;
  stroke-linecap: round;
  transform: translateY(2.5px);
}
html[data-theme="dark"][data-visual-fidelity="v4"] .brand-mark .brand-shadow { stroke: rgba(0,0,0,.35); }
html[data-visual-fidelity="v4"] .brand-mark .brand-ribbon-a,
html[data-visual-fidelity="v4"] .brand-mark .brand-ribbon-b {
  fill: none;
  stroke-width: 9.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
html[data-visual-fidelity="v4"] .brand-mark .brand-ribbon-a { stroke: var(--ad-indigo); }
html[data-visual-fidelity="v4"] .brand-mark .brand-ribbon-b { stroke: var(--ad-violet); }
html[data-visual-fidelity="v4"] .brand-mark .brand-highlight {
  fill: none;
  stroke: rgba(255,255,255,.75);
  stroke-width: 1.55;
  stroke-linecap: round;
  opacity: .72;
}
html[data-visual-fidelity="v4"] .brand-mark .brand-lens {
  fill: color-mix(in srgb, #fff 82%, var(--ad-ice));
  stroke: color-mix(in srgb, var(--ad-indigo) 22%, transparent);
  stroke-width: .8;
  filter: drop-shadow(0 0 5px color-mix(in srgb, var(--ad-violet) 38%, transparent));
}
html[data-visual-fidelity="v4"] .brand-lockup:hover .brand-ribbon-a { animation: ad-mark-a .75s var(--x-ease-out); }
html[data-visual-fidelity="v4"] .brand-lockup:hover .brand-ribbon-b { animation: ad-mark-b .75s var(--x-ease-out); }
html[data-visual-fidelity="v4"] .brand-word {
  color: var(--ad-ink);
  font-size: 12px;
  font-weight: 620;
  letter-spacing: .32em;
  text-indent: .32em;
}
@keyframes ad-mark-a { 50% { transform: translate(-1px, 1px); } }
@keyframes ad-mark-b { 50% { transform: translate(1px, -1px); } }

/* ---------- Header: smaller, sharper and less box-like ---------- */
html[data-visual-fidelity="v4"] .site-header {
  top: 8px;
  padding-top: 8px;
}
html[data-visual-fidelity="v4"] .navbar {
  min-height: 62px;
  gap: 20px;
  padding: 7px 8px 7px 14px;
  border: 1px solid var(--ad-line);
  border-radius: 19px;
  background:
    linear-gradient(145deg, color-mix(in srgb, var(--ad-glass-strong) 90%, transparent), color-mix(in srgb, var(--ad-glass) 82%, transparent));
  box-shadow: 0 13px 38px rgba(31, 43, 105, .09), inset 0 1px 0 rgba(255,255,255,.62);
  backdrop-filter: blur(22px) saturate(145%);
  -webkit-backdrop-filter: blur(22px) saturate(145%);
  transform-origin: 50% 0;
  transition: min-height .36s var(--x-ease-out), transform .36s var(--x-ease-out), box-shadow .36s ease, background .36s ease;
}
html[data-theme="dark"][data-visual-fidelity="v4"] .navbar {
  box-shadow: 0 18px 52px rgba(0,0,0,.29), inset 0 1px 0 rgba(255,255,255,.06);
}
html[data-visual-fidelity="v4"] body.is-scrolled .navbar {
  min-height: 56px;
  transform: translateY(-2px) scale(.992);
  background: color-mix(in srgb, var(--ad-glass-strong) 92%, transparent);
  box-shadow: 0 18px 48px rgba(26, 37, 94, .13), inset 0 1px 0 rgba(255,255,255,.52);
}
html[data-visual-fidelity="v4"] .nav-link {
  font-size: 12px;
  letter-spacing: -.01em;
}
html[data-visual-fidelity="v4"] .icon-button,
html[data-visual-fidelity="v4"] .menu-button {
  width: 43px;
  height: 43px;
  border-radius: 13px;
  border-color: var(--ad-line);
  background: color-mix(in srgb, var(--ad-glass-strong) 80%, transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.54), 0 7px 20px rgba(33,45,106,.05);
}
html[data-visual-fidelity="v4"] .icon-button:hover,
html[data-visual-fidelity="v4"] .menu-button:hover {
  transform: translateY(-1px);
  border-color: var(--ad-line-strong);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65), 0 12px 27px rgba(54,61,154,.11), 0 0 0 5px var(--ad-glow-soft);
}
html[data-visual-fidelity="v4"] .nav-cta { border-radius: 13px; min-height: 43px; }

/* ---------- Buttons: precise, no generic sweeping glare ---------- */
html[data-visual-fidelity="v4"] .button {
  min-height: 52px;
  border-radius: 15px;
  border-color: var(--ad-line);
  background: color-mix(in srgb, var(--ad-glass-strong) 86%, transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.58), 0 12px 28px rgba(32,43,104,.07);
  transition: transform .25s var(--x-ease-out), border-color .25s ease, box-shadow .25s ease;
}
html[data-visual-fidelity="v4"] .button::before { display: none; }
html[data-visual-fidelity="v4"] .button:hover {
  transform: translateY(-2px);
  border-color: var(--ad-line-strong);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62), 0 18px 38px rgba(44,53,135,.11);
}
html[data-visual-fidelity="v4"] .button-primary {
  border-color: rgba(112,122,255,.22);
  background:
    radial-gradient(70% 160% at 86% -40%, rgba(132,106,255,.42), transparent 58%),
    linear-gradient(135deg, #07102f 0%, #0b1740 65%, #141d52 100%);
  box-shadow: 0 18px 42px rgba(18,29,83,.24), inset 0 1px 0 rgba(255,255,255,.12);
}
html[data-visual-fidelity="v4"] .button-primary:hover { box-shadow: 0 23px 50px rgba(24,34,99,.30), inset 0 1px 0 rgba(255,255,255,.14); }
html[data-theme="dark"][data-visual-fidelity="v4"] .button-primary {
  color: #07102f;
  background: linear-gradient(135deg, #ffffff, #e5eaff 70%, #c9d2ff);
}
html[data-visual-fidelity="v4"] .button-arrow { transition: transform .28s var(--x-ease-out); }
html[data-visual-fidelity="v4"] .button:hover .button-arrow { transform: translateX(4px); }
html[dir="rtl"][data-visual-fidelity="v4"] .button:hover .button-arrow { transform: translateX(-4px); }

/* ---------- Hero: cinematic but controlled ---------- */
html[data-visual-fidelity="v4"] .hero {
  min-height: min(850px, calc(100svh - 78px));
  grid-template-columns: minmax(0, .92fr) minmax(480px, 1.08fr);
  gap: clamp(30px, 4vw, 68px);
  padding-top: clamp(72px, 7vw, 104px);
  padding-bottom: clamp(52px, 6vw, 88px);
}
html[data-visual-fidelity="v4"] .hero::before {
  inset: -4% -15% 0;
  background:
    radial-gradient(36rem 30rem at 77% 42%, color-mix(in srgb, var(--ad-violet) 17%, transparent), transparent 68%),
    radial-gradient(33rem 24rem at 55% 73%, color-mix(in srgb, var(--ad-indigo) 7%, transparent), transparent 72%);
  filter: none;
}
html[data-visual-fidelity="v4"] .hero-copy { align-self: center; padding-inline-start: 0; }
html[data-visual-fidelity="v4"] .eyebrow,
html[data-visual-fidelity="v4"] .section-kicker {
  color: var(--ad-indigo);
  font-size: 11px;
  font-weight: 720;
  letter-spacing: .18em;
  text-shadow: none;
}
html[data-visual-fidelity="v4"] .hero-title {
  max-width: 720px;
  font-size: clamp(52px, 5.7vw, 86px);
  line-height: .96;
  letter-spacing: -.068em;
  color: var(--ad-ink);
  text-shadow: none;
}
html[data-visual-fidelity="v4"] .gradient-text {
  background-image: linear-gradient(97deg, var(--ad-indigo) 0%, var(--ad-violet) 54%, #6e87ff 100%);
  filter: none;
}
html[data-visual-fidelity="v4"] .hero-lead {
  max-width: 610px;
  margin-top: 28px;
  color: var(--ad-muted);
  font-size: clamp(17px, 1.45vw, 20px);
  line-height: 1.62;
}
html[data-visual-fidelity="v4"] .hero-actions { margin-top: 31px; }
html[data-visual-fidelity="v4"] .hero-note { margin-top: 22px; color: var(--ad-muted); }
html[data-visual-fidelity="v4"] .hero-note-dot {
  width: 6px;
  height: 6px;
  border: 0;
  background: var(--ad-indigo);
  box-shadow: 0 0 0 6px var(--ad-glow-soft), 0 0 14px var(--ad-violet);
}
html[data-visual-fidelity="v4"] .hero-art {
  min-height: 610px;
  margin-inline: -2% -5%;
  perspective: 1250px;
}
html[data-visual-fidelity="v4"] .hero-art::before {
  width: 82%;
  opacity: .88;
  background: radial-gradient(circle at var(--vf-light-x,52%) var(--vf-light-y,43%), color-mix(in srgb, var(--ad-violet) 18%, transparent), transparent 55%);
  filter: blur(22px);
}
html[data-visual-fidelity="v4"] .hero-art::after {
  inset: 22% 2% 2%;
  opacity: .62;
  background:
    linear-gradient(180deg, transparent 0 64%, color-mix(in srgb, var(--ad-indigo) 8%, transparent) 78%, transparent 100%),
    radial-gradient(ellipse at 58% 74%, var(--ad-glow), transparent 50%);
  filter: blur(22px);
}
html[data-visual-fidelity="v4"] .hero-art-ring { display: none; }
html[data-visual-fidelity="v4"] .hero-x-svg {
  width: min(770px, 112%);
  transform-origin: 60% 48%;
}
html[data-visual-fidelity="v4"] .x-body-v3 { animation-duration: 10s; }
html[data-visual-fidelity="v4"] .x-depth-v3 { opacity: .53; }
html[data-visual-fidelity="v4"] .x-glass-edge { opacity: .79; mix-blend-mode: normal; }
html[data-visual-fidelity="v4"] .x-glass-inner { opacity: .60; }
html[data-visual-fidelity="v4"] .x-specular { opacity: .56; animation-duration: 10.5s; }
html[data-visual-fidelity="v4"] .x-core-caustic { opacity: .42; }
html[data-visual-fidelity="v4"] .x-core-spark { display: none; }
html[data-visual-fidelity="v4"] .hero-caustic-ring { opacity: .18; animation-duration: 54s; }
html[data-visual-fidelity="v4"] .hero-ground-glow { opacity: .20; }
html[data-visual-fidelity="v4"] .flow-haze-v3 { opacity: .34; }
html[data-visual-fidelity="v4"] .flow-membrane-v3 { opacity: .74; }
html[data-visual-fidelity="v4"] .flow-core-v3 { stroke-width: 5; filter: drop-shadow(0 0 7px var(--ad-violet)); }
html[data-visual-fidelity="v4"] .flow-specular-v3 { opacity: .56; }
html[data-visual-fidelity="v4"] .flow-detached-v3 { opacity: .46; }
html[data-visual-fidelity="v4"] .next-anchor { opacity: .72; }
html[data-visual-fidelity="v4"] .next-anchor-inner { letter-spacing: .15em; }

/* ---------- Editorial section rhythm ---------- */
html[data-visual-fidelity="v4"] .build-section,
html[data-visual-fidelity="v4"] .shift-section,
html[data-visual-fidelity="v4"] .workflow-section,
html[data-visual-fidelity="v4"] .process-section,
html[data-visual-fidelity="v4"] .why-section {
  padding-top: clamp(98px, 10vw, 150px);
  padding-bottom: clamp(90px, 9vw, 138px);
}
html[data-visual-fidelity="v4"] .section-title {
  color: var(--ad-ink);
  letter-spacing: -.061em;
  line-height: 1.01;
  text-shadow: none;
}
html[data-visual-fidelity="v4"] .section-copy { color: var(--ad-muted); line-height: 1.68; }
html[data-visual-fidelity="v4"] .section-intro { gap: clamp(32px, 6vw, 90px); }

/* ---------- Services: two custom instruments, not template cards ---------- */
html[data-visual-fidelity="v4"] .build-section::before,
html[data-visual-fidelity="v4"] .build-section::after { opacity: .45; }
html[data-visual-fidelity="v4"] .build-flow-bridge { opacity: .38; }
html[data-visual-fidelity="v4"] .service-grid { gap: clamp(20px, 2.7vw, 38px); }
html[data-visual-fidelity="v4"] .service-card {
  min-height: 590px;
  border: 1px solid var(--ad-line);
  border-radius: 32px;
  background:
    radial-gradient(32rem 20rem at var(--card-x, 70%) var(--card-y, 18%), color-mix(in srgb, var(--ad-violet) 9%, transparent), transparent 65%),
    linear-gradient(145deg, color-mix(in srgb, var(--ad-glass-strong) 92%, transparent), color-mix(in srgb, var(--ad-glass) 84%, transparent));
  box-shadow: var(--ad-shadow-soft), inset 0 1px 0 rgba(255,255,255,.60);
  transition: transform .52s var(--x-ease-out), border-color .35s ease, box-shadow .52s ease;
}
html[data-visual-fidelity="v4"] .service-card::before {
  opacity: .44;
  background: linear-gradient(126deg, rgba(255,255,255,.22), transparent 22% 82%, rgba(112,107,255,.05));
}
html[data-visual-fidelity="v4"] .service-card::after { display: none; }
html[data-visual-fidelity="v4"] .service-card:hover,
html[data-visual-fidelity="v4"] .service-card:focus-within {
  transform: translateY(-7px);
  border-color: var(--ad-line-strong);
  box-shadow: 0 34px 84px rgba(38,48,125,.15), inset 0 1px 0 rgba(255,255,255,.66);
}
html[data-visual-fidelity="v4"] .service-visual {
  min-height: 285px;
  padding: clamp(22px, 2.7vw, 36px);
  background:
    radial-gradient(ellipse at 52% 53%, color-mix(in srgb, var(--ad-violet) 12%, transparent), transparent 55%),
    linear-gradient(180deg, color-mix(in srgb, var(--ad-panel) 36%, transparent), transparent);
  background-size: auto;
  mask-image: linear-gradient(#000 78%, transparent 100%);
  -webkit-mask-image: linear-gradient(#000 78%, transparent 100%);
}
html[data-visual-fidelity="v4"] .service-visual::before {
  width: 54%;
  inset: 15% auto auto 23%;
  border: 1px solid color-mix(in srgb, var(--ad-violet) 15%, transparent);
  box-shadow: 0 0 42px var(--ad-glow-soft), inset 0 0 34px var(--ad-glow-soft);
  animation: ad-orbit-drift 24s linear infinite;
}
html[data-visual-fidelity="v4"] .service-visual::after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 46%;
  height: 1px;
  left: 27%;
  top: 52%;
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--ad-indigo) 28%, transparent), transparent);
  transform: rotate(-10deg);
}
html[data-visual-fidelity="v4"] .service-index {
  top: 22px;
  left: 24px;
  color: var(--ad-indigo);
  font-size: 10px;
  letter-spacing: .15em;
}
html[dir="rtl"][data-visual-fidelity="v4"] .service-index { left: auto; right: 24px; }
html[data-visual-fidelity="v4"] .service-visual svg { filter: drop-shadow(0 18px 28px rgba(55,61,157,.11)); }
html[data-visual-fidelity="v4"] .visual-panel,
html[data-visual-fidelity="v4"] .visual-soft,
html[data-visual-fidelity="v4"] .visual-node {
  fill: color-mix(in srgb, var(--ad-glass-strong) 86%, transparent);
  stroke: var(--ad-line);
  filter: drop-shadow(0 9px 14px rgba(46,55,135,.08));
}
html[data-visual-fidelity="v4"] .visual-text-line { fill: color-mix(in srgb, var(--ad-muted) 38%, transparent); }
html[data-visual-fidelity="v4"] .visual-line { stroke: color-mix(in srgb, var(--ad-muted) 42%, transparent); }
html[data-visual-fidelity="v4"] .visual-glow { stroke-width: 24; opacity: .40; filter: blur(11px); }
html[data-visual-fidelity="v4"] .visual-flow {
  stroke-width: 4.5;
  stroke-dasharray: 1 0;
  filter: drop-shadow(0 0 7px var(--ad-glow));
}
html[data-visual-fidelity="v4"] .service-card.vf-in-view .visual-flow { stroke-dasharray: 24 90; animation: ad-signal-run 5.8s linear infinite; }
html[data-visual-fidelity="v4"] .visual-pulse path { stroke-width: 9; }
html[data-visual-fidelity="v4"] .service-content { padding: 24px clamp(26px, 3vw, 38px) 36px; }
html[data-visual-fidelity="v4"] .service-title { color: var(--ad-ink); font-size: clamp(28px, 2.8vw, 38px); }
html[data-visual-fidelity="v4"] .service-description { color: var(--ad-muted); }
html[data-visual-fidelity="v4"] .service-capabilities { gap: 8px; }
html[data-visual-fidelity="v4"] .service-capability {
  padding: 9px 12px;
  border-color: var(--ad-line);
  background: color-mix(in srgb, var(--ad-glass-strong) 72%, transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.50);
  font-size: 11px;
}
html[data-visual-fidelity="v4"] .service-capability::before { width: 5px; height: 5px; box-shadow: 0 0 0 5px var(--ad-glow-soft); }
@keyframes ad-orbit-drift { to { transform: rotate(360deg); } }
@keyframes ad-signal-run { to { stroke-dashoffset: -114; } }

/* ---------- The shift: a deliberate transformation field ---------- */
html[data-visual-fidelity="v4"] .shift-section {
  background:
    radial-gradient(42rem 34rem at 50% 52%, color-mix(in srgb, var(--ad-violet) 7%, transparent), transparent 72%),
    linear-gradient(180deg, transparent, color-mix(in srgb, var(--x-bg-soft) 46%, transparent), transparent);
}
html[data-visual-fidelity="v4"] .shift-board {
  border: 1px solid var(--ad-line);
  border-radius: 34px;
  padding: clamp(28px, 3.6vw, 48px);
  background:
    radial-gradient(26rem 24rem at 50% 53%, color-mix(in srgb, var(--ad-violet) 10%, transparent), transparent 72%),
    linear-gradient(145deg, color-mix(in srgb, var(--ad-glass-strong) 91%, transparent), color-mix(in srgb, var(--ad-glass) 82%, transparent));
  background-size: auto;
  box-shadow: var(--ad-shadow), inset 0 1px 0 rgba(255,255,255,.58);
}
html[data-visual-fidelity="v4"] .shift-board::before {
  opacity: .16;
  background: repeating-linear-gradient(90deg, transparent 0 87px, color-mix(in srgb, var(--ad-line) 46%, transparent) 88px);
}
html[data-visual-fidelity="v4"] .shift-board::after { opacity: .32; }
html[data-visual-fidelity="v4"] .shift-item,
html[data-visual-fidelity="v4"] .shift-outcome {
  min-height: 70px;
  border-radius: 18px;
  border-color: var(--ad-line);
  background: color-mix(in srgb, var(--ad-glass-strong) 70%, transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.52), 0 8px 22px rgba(38,48,115,.04);
}
html[data-visual-fidelity="v4"] .shift-item.is-active,
html[data-visual-fidelity="v4"] .shift-outcome.is-active {
  border-color: color-mix(in srgb, var(--ad-indigo) 38%, transparent);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--ad-indigo) 8%, transparent), transparent 55%),
    color-mix(in srgb, var(--ad-glass-strong) 82%, transparent);
  box-shadow: 0 15px 38px rgba(50,58,151,.11), inset 0 1px 0 rgba(255,255,255,.59);
}
html[data-visual-fidelity="v4"] .shift-item-status { width: 7px; height: 7px; }
html[data-visual-fidelity="v4"] .shift-engine-aura { opacity: .46; }
html[data-visual-fidelity="v4"] .shift-engine-ring { opacity: .22; }
html[data-visual-fidelity="v4"] .shift-engine-ring-a { stroke-dasharray: 42 14 2 14; animation-duration: 42s; }
html[data-visual-fidelity="v4"] .shift-engine-ring-b { stroke-dasharray: 2 19; animation-duration: 56s; }
html[data-visual-fidelity="v4"] .shift-path { opacity: .12; stroke-width: 1.2; }
html[data-visual-fidelity="v4"] .shift-path.is-active {
  opacity: .9;
  stroke-width: 4.5;
  stroke-dasharray: 18 58;
  animation: ad-shift-run 5.4s linear infinite;
  filter: drop-shadow(0 0 8px var(--ad-glow));
}
html[data-visual-fidelity="v4"] .shift-engine-x { animation-duration: 7.8s; filter: drop-shadow(0 16px 24px rgba(60,66,176,.21)); }
html[data-visual-fidelity="v4"] .shift-engine-x path { stroke-width: 24; }
html[data-visual-fidelity="v4"] .shift-engine-core { display: none; }
html[data-visual-fidelity="v4"] .shift-engine-label { color: var(--ad-muted); letter-spacing: .13em; }
@keyframes ad-shift-run { to { stroke-dashoffset: -76; } }

/* ---------- Workflow: one connected instrument, not four floating cards ---------- */
html[data-visual-fidelity="v4"] .workflow-console {
  border: 1px solid var(--ad-line);
  border-radius: 34px;
  background:
    radial-gradient(32rem 22rem at 72% 17%, color-mix(in srgb, var(--ad-violet) 8%, transparent), transparent 70%),
    linear-gradient(145deg, color-mix(in srgb, var(--ad-glass-strong) 90%, transparent), color-mix(in srgb, var(--ad-glass) 82%, transparent));
  box-shadow: var(--ad-shadow), inset 0 1px 0 rgba(255,255,255,.58);
}
html[data-visual-fidelity="v4"] .workflow-console::before { opacity: .28; }
html[data-visual-fidelity="v4"] .workflow-console::after { display: none; }
html[data-visual-fidelity="v4"] .workflow-input-card { border-inline-end-color: var(--ad-line); }
html[data-visual-fidelity="v4"] .workflow-result-card {
  background:
    radial-gradient(24rem 16rem at 45% 8%, color-mix(in srgb, var(--ad-violet) 11%, transparent), transparent 72%),
    color-mix(in srgb, var(--ad-glass-strong) 72%, transparent);
}
html[data-visual-fidelity="v4"] .workflow-textarea {
  border-radius: 17px;
  border-color: var(--ad-line);
  background: color-mix(in srgb, var(--ad-glass-strong) 74%, transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.52), inset 0 0 0 1px rgba(255,255,255,.01);
}
html[data-visual-fidelity="v4"] .workflow-example {
  border-color: var(--ad-line);
  background: color-mix(in srgb, var(--ad-glass-strong) 66%, transparent);
}
html[data-visual-fidelity="v4"] .workflow-example.is-active {
  border-color: color-mix(in srgb, var(--ad-indigo) 34%, transparent);
  background: color-mix(in srgb, var(--ad-indigo) 9%, var(--ad-glass-strong));
  box-shadow: 0 8px 22px rgba(58,63,166,.08);
}
html[data-visual-fidelity="v4"] .workflow-core {
  width: 72px;
  height: 72px;
  border-radius: 21px;
  border-color: var(--ad-line-strong);
  background:
    radial-gradient(circle at 33% 25%, #fff 0 4%, transparent 17%),
    linear-gradient(145deg, color-mix(in srgb, var(--ad-glass-strong) 94%, transparent), color-mix(in srgb, var(--ad-violet) 13%, var(--ad-glass)));
  box-shadow: 0 18px 40px rgba(57,62,162,.15), inset 0 1px 0 #fff, 0 0 0 7px var(--ad-glow-soft);
}
html[data-visual-fidelity="v4"] .workflow-core::before { inset: -12px; opacity: .45; }
html[data-visual-fidelity="v4"] .workflow-core::after { display: none; }
html[data-visual-fidelity="v4"] .workflow-core svg { width: 42px; }
html[data-visual-fidelity="v4"] .workflow-stages {
  position: relative;
  gap: 12px;
}
html[data-visual-fidelity="v4"] .workflow-stages::before {
  inset: 22px 9% auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--ad-line-strong), transparent);
  opacity: .72;
}
html[data-visual-fidelity="v4"] .workflow-stage {
  min-height: 138px;
  border-radius: 18px;
  border-color: var(--ad-line);
  background: color-mix(in srgb, var(--ad-glass-strong) 72%, transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.52), 0 8px 22px rgba(37,47,116,.05);
}
html[data-visual-fidelity="v4"] .workflow-result-card.is-mapped .workflow-stage {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.56), 0 13px 31px rgba(50,56,151,.08);
}
html[data-visual-fidelity="v4"] .workflow-stage-index {
  box-shadow: 0 8px 19px rgba(72,70,199,.16);
}

/* ---------- Process: quieter modules, Build remains the focus ---------- */
html[data-visual-fidelity="v4"] .process-section {
  background: linear-gradient(180deg, transparent, color-mix(in srgb, var(--x-bg-soft) 42%, transparent), transparent);
}
html[data-visual-fidelity="v4"] .process-board { padding-block: 38px; }
html[data-visual-fidelity="v4"] .process-route-soft { opacity: .20; stroke-width: 26; }
html[data-visual-fidelity="v4"] .process-route-base { opacity: .22; }
html[data-visual-fidelity="v4"] .process-route-active { stroke-width: 5; filter: drop-shadow(0 0 8px var(--ad-glow)); }
html[data-visual-fidelity="v4"] .process-step {
  min-height: 290px;
  border: 1px solid var(--ad-line);
  border-radius: 25px;
  background: linear-gradient(145deg, color-mix(in srgb, var(--ad-glass-strong) 88%, transparent), color-mix(in srgb, var(--ad-glass) 82%, transparent));
  box-shadow: var(--ad-shadow-soft), inset 0 1px 0 rgba(255,255,255,.55);
}
html[data-visual-fidelity="v4"] .process-step.is-active {
  transform: translateY(-7px);
  border-color: color-mix(in srgb, var(--ad-indigo) 36%, transparent);
  box-shadow: 0 29px 72px rgba(44,53,139,.14), inset 0 1px 0 rgba(255,255,255,.62), 0 0 0 4px var(--ad-glow-soft);
}
html[data-visual-fidelity="v4"] .process-step[data-process-step="2"] {
  background:
    radial-gradient(22rem 14rem at 50% 0%, color-mix(in srgb, var(--ad-violet) 14%, transparent), transparent 72%),
    linear-gradient(145deg, color-mix(in srgb, var(--ad-glass-strong) 92%, transparent), color-mix(in srgb, var(--ad-glass) 82%, transparent));
}
html[data-visual-fidelity="v4"] .process-orbit { opacity: .36; }

/* ---------- Why: editorial rows with one calm visual instrument ---------- */
html[data-visual-fidelity="v4"] .why-section {
  background:
    radial-gradient(40rem 30rem at 14% 30%, color-mix(in srgb, var(--ad-indigo) 6%, transparent), transparent 72%),
    radial-gradient(38rem 28rem at 88% 67%, color-mix(in srgb, var(--ad-violet) 6%, transparent), transparent 70%);
}
html[data-visual-fidelity="v4"] .why-principles { gap: 10px; }
html[data-visual-fidelity="v4"] .why-principle {
  border: 1px solid var(--ad-line);
  border-radius: 22px;
  padding-inline: 22px;
  background: color-mix(in srgb, var(--ad-glass-strong) 72%, transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.50), 0 10px 27px rgba(37,46,112,.04);
}
html[data-visual-fidelity="v4"] .why-principle::before { width: 2px; inset-block: 22px; }
html[data-visual-fidelity="v4"] .why-principle::after { opacity: 0; }
html[data-visual-fidelity="v4"] .why-principle.is-active {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--ad-indigo) 33%, transparent);
  background:
    radial-gradient(28rem 18rem at 78% 48%, color-mix(in srgb, var(--ad-violet) 8%, transparent), transparent 70%),
    color-mix(in srgb, var(--ad-glass-strong) 82%, transparent);
  box-shadow: 0 24px 62px rgba(42,51,136,.12), inset 0 1px 0 rgba(255,255,255,.58);
}
html[data-visual-fidelity="v4"] .why-trigger { min-height: 91px; }
html[data-visual-fidelity="v4"] .why-number { color: var(--ad-indigo); }
html[data-visual-fidelity="v4"] .why-title { color: var(--ad-ink); font-weight: 710; }
html[data-visual-fidelity="v4"] .why-lead { color: var(--ad-muted); }
html[data-visual-fidelity="v4"] .why-arrow {
  width: 40px;
  height: 40px;
  border-color: var(--ad-line);
  background: color-mix(in srgb, var(--ad-glass-strong) 74%, transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.50);
}
html[data-visual-fidelity="v4"] .why-detail { color: var(--ad-ink-soft); }
html[data-visual-fidelity="v4"] .why-visual {
  min-height: 150px;
  border: 1px solid var(--ad-line);
  border-radius: 20px;
  background:
    radial-gradient(ellipse at 50% 50%, color-mix(in srgb, var(--ad-violet) 11%, transparent), transparent 58%),
    color-mix(in srgb, var(--ad-glass-strong) 70%, transparent);
  background-size: auto;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.54), 0 13px 33px rgba(45,54,133,.07);
}
html[data-visual-fidelity="v4"] .why-visual::before {
  inset: 22% 27%;
  opacity: .58;
  border-color: color-mix(in srgb, var(--ad-indigo) 16%, transparent);
  box-shadow: 0 0 29px var(--ad-glow-soft), inset 0 0 24px var(--ad-glow-soft);
}
html[data-visual-fidelity="v4"] .why-visual::after { display: none; }
html[data-visual-fidelity="v4"] .why-flow-line { opacity: .26; }
html[data-visual-fidelity="v4"] .why-flow-pulse { stroke-width: 4; filter: drop-shadow(0 0 7px var(--ad-glow)); }
html[data-visual-fidelity="v4"] .why-x-path { stroke-width: 9; }

/* ---------- Final CTA: one decisive end, no dead space ---------- */
html[data-visual-fidelity="v4"] .final-cta-section {
  padding-block: clamp(96px, 10vw, 138px) clamp(80px, 8vw, 112px);
  background:
    radial-gradient(38rem 30rem at 78% 46%, color-mix(in srgb, var(--ad-violet) 12%, transparent), transparent 70%),
    linear-gradient(180deg, transparent, color-mix(in srgb, var(--x-bg-soft) 54%, transparent));
}
html[data-visual-fidelity="v4"] .final-cta-grid {
  align-items: center;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
  gap: clamp(30px, 5vw, 80px);
}
html[data-visual-fidelity="v4"] .final-cta-title {
  max-width: 740px;
  color: var(--ad-ink);
  font-size: clamp(50px, 5.5vw, 82px);
  letter-spacing: -.066em;
  line-height: .98;
}
html[data-visual-fidelity="v4"] .final-cta-intro { color: var(--ad-muted); max-width: 650px; }
html[data-visual-fidelity="v4"] .final-cta-visual {
  min-height: 330px;
  margin: 0;
}
html[data-visual-fidelity="v4"] .final-cta-visual::before { width: 78%; opacity: .58; }
html[data-visual-fidelity="v4"] .final-cta-svg { max-width: 570px; filter: drop-shadow(0 23px 42px rgba(54,59,159,.17)); }
html[data-visual-fidelity="v4"] .cta-flow-base { opacity: .16; }
html[data-visual-fidelity="v4"] .cta-flow-active { stroke-width: 5; filter: url(#ctaFlowGlow) drop-shadow(0 0 6px var(--ad-glow)); }
html[data-visual-fidelity="v4"] .cta-x-main { stroke-width: 17; }
html[data-visual-fidelity="v4"] .cta-x-highlight { stroke-width: 2.5; opacity: .62; }

/* ---------- Footer: compact and anchored ---------- */
html[data-visual-fidelity="v4"] .site-footer {
  border-top: 1px solid var(--ad-line);
  background:
    radial-gradient(24rem 18rem at 8% 8%, color-mix(in srgb, var(--ad-violet) 5%, transparent), transparent 72%),
    color-mix(in srgb, var(--x-bg-soft) 67%, var(--x-bg));
}
html[data-visual-fidelity="v4"] .footer-main {
  padding-block: 58px 44px;
  gap: 36px 28px;
}
html[data-visual-fidelity="v4"] .footer-lockup .brand-mark { width: 40px; height: 40px; }
html[data-visual-fidelity="v4"] .footer-tagline { margin-top: 24px; color: var(--ad-ink); }
html[data-visual-fidelity="v4"] .footer-description { color: var(--ad-muted); }
html[data-visual-fidelity="v4"] .footer-column-title { color: var(--ad-ink); }
html[data-visual-fidelity="v4"] .footer-link { color: var(--ad-muted); }
html[data-visual-fidelity="v4"] .footer-bottom { min-height: 70px; border-top-color: var(--ad-line); }
html[data-visual-fidelity="v4"] .footer-mini-x { display: none; }

/* ---------- Motion vocabulary ---------- */
html[data-visual-fidelity="v4"] .vf-in-view .service-visual,
html[data-visual-fidelity="v4"] .vf-in-view .workflow-core,
html[data-visual-fidelity="v4"] .vf-in-view .why-visual {
  animation: ad-visual-breathe 7.5s ease-in-out infinite;
}
html[data-visual-fidelity="v4"] .motion-paused *,
html[data-visual-fidelity="v4"] .motion-paused *::before,
html[data-visual-fidelity="v4"] .motion-paused *::after { animation-play-state: paused !important; }
@keyframes ad-visual-breathe {
  0%,100% { filter: saturate(1) brightness(1); }
  50% { filter: saturate(1.04) brightness(1.015); }
}

/* ---------- Responsive art direction ---------- */
@media (max-width: 1040px) {
  html[data-visual-fidelity="v4"] .hero { grid-template-columns: minmax(0, 1fr) minmax(410px, .92fr); }
  html[data-visual-fidelity="v4"] .hero-art { margin-inline: -5% -9%; }
}
@media (max-width: 800px) {
  html[data-visual-fidelity="v4"] { scroll-padding-top: 78px; }
  html[data-visual-fidelity="v4"] .site-header { top: 6px; padding-top: 6px; }
  html[data-visual-fidelity="v4"] .navbar {
    min-height: 58px;
    border-radius: 17px;
    padding: 6px 7px 6px 11px;
  }
  html[data-visual-fidelity="v4"] body.is-scrolled .navbar { min-height: 53px; }
  html[data-visual-fidelity="v4"] .site-header .brand-mark { width: 33px; height: 33px; }
  html[data-visual-fidelity="v4"] .brand-word { font-size: 11px; letter-spacing: .27em; text-indent: .27em; }
  html[data-visual-fidelity="v4"] .icon-button,
  html[data-visual-fidelity="v4"] .menu-button { width: 41px; height: 41px; border-radius: 12px; }
  html[data-visual-fidelity="v4"] .hero {
    grid-template-columns: 1fr;
    min-height: auto;
    padding-top: 56px;
    padding-bottom: 56px;
    gap: 14px;
  }
  html[data-visual-fidelity="v4"] .hero-copy { max-width: 720px; }
  html[data-visual-fidelity="v4"] .hero-art {
    min-height: 450px;
    margin: -10px -7% 0;
  }
  html[data-visual-fidelity="v4"] .hero-x-svg { width: min(690px, 109%); }
  html[data-visual-fidelity="v4"] .service-card { min-height: auto; }
  html[data-visual-fidelity="v4"] .shift-board,
  html[data-visual-fidelity="v4"] .workflow-console { border-radius: 27px; }
  html[data-visual-fidelity="v4"] .final-cta-grid { grid-template-columns: 1fr; gap: 22px; }
  html[data-visual-fidelity="v4"] .final-cta-visual { min-height: 285px; max-width: 620px; width: 100%; justify-self: center; }
}
@media (max-width: 700px) {
  html[data-visual-fidelity="v4"] .build-section,
  html[data-visual-fidelity="v4"] .shift-section,
  html[data-visual-fidelity="v4"] .workflow-section,
  html[data-visual-fidelity="v4"] .process-section,
  html[data-visual-fidelity="v4"] .why-section { padding-block: 82px; }
  html[data-visual-fidelity="v4"] .service-card { border-radius: 25px; }
  html[data-visual-fidelity="v4"] .service-visual { min-height: 245px; }
  html[data-visual-fidelity="v4"] .workflow-stages::before {
    inset: 32px auto 32px 24px;
    width: 1px;
    height: auto;
    background: linear-gradient(180deg, transparent, var(--ad-line-strong), transparent);
  }
  html[dir="rtl"][data-visual-fidelity="v4"] .workflow-stages::before { left: auto; right: 24px; }
  html[data-visual-fidelity="v4"] .workflow-stage { min-height: 124px; }
  html[data-visual-fidelity="v4"] .why-principle { padding-inline: 14px; border-radius: 19px; }
  html[data-visual-fidelity="v4"] .why-trigger { min-height: 82px; }
  html[data-visual-fidelity="v4"] .why-panel,
  html[data-visual-fidelity="v4"] .why-principle.is-active .why-panel { padding-inline: 47px 0; }
  html[dir="rtl"][data-visual-fidelity="v4"] .why-panel,
  html[dir="rtl"][data-visual-fidelity="v4"] .why-principle.is-active .why-panel { padding-inline: 0 47px; }
  html[data-visual-fidelity="v4"] .why-visual { min-height: 132px; }
  html[data-visual-fidelity="v4"] .final-cta-section { padding-block: 84px 64px; }
  html[data-visual-fidelity="v4"] .footer-main { padding-block: 46px 34px; gap: 24px 22px; }
}
@media (max-width: 560px) {
  html[data-visual-fidelity="v4"] .site-shell { width: min(var(--x-content), calc(100% - 28px)); }
  html[data-visual-fidelity="v4"] .site-header .brand-mark { width: 31px; height: 31px; }
  html[data-visual-fidelity="v4"] .brand-word { font-size: 10.5px; letter-spacing: .25em; text-indent: .25em; }
  html[data-visual-fidelity="v4"] .navbar { padding-inline-start: 10px; }
  html[data-visual-fidelity="v4"] .hero { padding-top: 48px; }
  html[data-visual-fidelity="v4"] .hero-title { font-size: clamp(41px, 12.2vw, 55px); line-height: .98; }
  html[data-visual-fidelity="v4"] .hero-lead { font-size: 16px; line-height: 1.58; }
  html[data-visual-fidelity="v4"] .hero-actions { display: grid; grid-template-columns: 1fr; }
  html[data-visual-fidelity="v4"] .hero-art { min-height: 365px; margin: -4px -8% 0; }
  html[data-visual-fidelity="v4"] .hero-x-svg { width: 111%; }
  html[data-visual-fidelity="v4"] .next-anchor { display: none; }
  html[data-visual-fidelity="v4"] .section-title { font-size: clamp(40px, 11.8vw, 54px); }
  html[data-visual-fidelity="v4"] .service-visual { min-height: 225px; }
  html[data-visual-fidelity="v4"] .service-content { padding: 19px 22px 28px; }
  html[data-visual-fidelity="v4"] .service-title { font-size: 29px; }
  html[data-visual-fidelity="v4"] .shift-board { padding: 16px; }
  html[data-visual-fidelity="v4"] .workflow-console { border-radius: 23px; }
  html[data-visual-fidelity="v4"] .process-step { min-height: 230px; border-radius: 21px; }
  html[data-visual-fidelity="v4"] .final-cta-title { font-size: clamp(42px, 12vw, 56px); }
  html[data-visual-fidelity="v4"] .final-cta-visual { min-height: 235px; margin: -8px -5% 0; }
  html[data-visual-fidelity="v4"] .footer-main { grid-template-columns: 1fr; }
  html[data-visual-fidelity="v4"] .footer-tagline { margin-top: 19px; }
}

@media (prefers-reduced-motion: reduce) {
  html[data-visual-fidelity="v4"] .brand-ribbon-a,
  html[data-visual-fidelity="v4"] .brand-ribbon-b,
  html[data-visual-fidelity="v4"] .service-card.vf-in-view .visual-flow,
  html[data-visual-fidelity="v4"] .shift-path.is-active,
  html[data-visual-fidelity="v4"] .vf-in-view .service-visual,
  html[data-visual-fidelity="v4"] .vf-in-view .workflow-core,
  html[data-visual-fidelity="v4"] .vf-in-view .why-visual { animation: none !important; }
}

@media (hover: hover) and (pointer: fine) {
  html[data-visual-fidelity="v4"] .service-card[data-ad-pointer="true"] {
    transform: perspective(1100px) translateY(-7px) rotateX(var(--ad-tilt-x, 0deg)) rotateY(var(--ad-tilt-y, 0deg));
  }
  html[data-visual-fidelity="v4"] .service-card[data-ad-pointer="true"] .service-visual {
    transform: translate3d(var(--ad-shift-x,0), var(--ad-shift-y,0), 18px);
  }
  html[data-visual-fidelity="v4"] .service-visual { transition: transform .42s var(--x-ease-out); }
}

/* Geometry consistency: every small X uses the same two-ribbon colour logic. */
html[data-visual-fidelity="v4"] .visual-pulse { animation: none !important; }
html[data-visual-fidelity="v4"] .visual-pulse path:first-child,
html[data-visual-fidelity="v4"] .shift-engine-x path:first-child,
html[data-visual-fidelity="v4"] .workflow-core svg path:first-of-type,
html[data-visual-fidelity="v4"] .why-visual g .why-x-path:first-child,
html[data-visual-fidelity="v4"] .final-cta-svg g .cta-x-main:first-of-type {
  stroke: var(--ad-indigo) !important;
}
html[data-visual-fidelity="v4"] .visual-pulse path:nth-child(2),
html[data-visual-fidelity="v4"] .shift-engine-x path:nth-child(2),
html[data-visual-fidelity="v4"] .workflow-core svg path:nth-of-type(2),
html[data-visual-fidelity="v4"] .why-visual g .why-x-path:nth-child(2),
html[data-visual-fidelity="v4"] .final-cta-svg g .cta-x-main:nth-of-type(2) {
  stroke: var(--ad-violet) !important;
}
html[data-visual-fidelity="v4"] .workflow-core svg path { stroke-width: 8.5; }
html[data-visual-fidelity="v4"] .why-x-path { stroke-linecap: round; }
html[data-visual-fidelity="v4"] .shift-path.is-active { stroke-dasharray: 86 280; }

@media (max-width: 700px) {
  html[data-visual-fidelity="v4"] .shift-engine { margin-block: -38px -28px; }
  html[data-visual-fidelity="v4"] .shift-engine svg { width: 100%; max-height: 350px; }
  html[data-visual-fidelity="v4"] .shift-engine-label { margin-top: -22px; }
}
@media (max-width: 560px) {
  html[data-visual-fidelity="v4"] .shift-engine { margin-block: -52px -38px; }
  html[data-visual-fidelity="v4"] .shift-engine svg { max-height: 310px; }
}

/* Final mobile calibration for the transformation chamber. */
@media (max-width: 700px) {
  html[data-visual-fidelity="v4"] .shift-engine { margin-block: -20px -8px; }
  html[data-visual-fidelity="v4"] .shift-engine svg { max-height: 380px; }
  html[data-visual-fidelity="v4"] .shift-engine-label { margin-top: -8px; }
}
@media (max-width: 560px) {
  html[data-visual-fidelity="v4"] .shift-engine { margin-block: -28px -13px; }
  html[data-visual-fidelity="v4"] .shift-engine svg { max-height: 348px; }
  html[data-visual-fidelity="v4"] .shift-engine-label { margin-top: -12px; }
}

/* Mobile transformation viewport: crop the desktop-scale orbital canvas rather
   than leaving a long empty SVG letterbox between friction and outcomes. */
@media (max-width: 700px) {
  html[data-visual-fidelity="v4"] .shift-engine {
    height: 292px;
    min-height: 0;
    margin-block: 0;
    overflow: hidden;
    align-content: center;
  }
  html[data-visual-fidelity="v4"] .shift-engine svg {
    width: 100%;
    height: 390px;
    max-height: none;
    transform: translateY(-48px);
  }
  html[data-visual-fidelity="v4"] .shift-engine-label {
    position: absolute;
    inset-block-end: 8px;
    margin: 0;
  }
}
@media (max-width: 560px) {
  html[data-visual-fidelity="v4"] .shift-engine { height: 268px; }
  html[data-visual-fidelity="v4"] .shift-engine svg { height: 362px; transform: translateY(-46px); }
}
html[data-visual-fidelity="v4"] .cta-node { display: none; }

/* ==========================================================
   Xaiore Display Typography — Satoshi
   English display headings only. Body copy remains Inter;
   Arabic and Persian retain the established RTL type system.
   Font is delivered through the official Fontshare API.
   ========================================================== */
:root {
  --x-font-display: "Satoshi", Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html[data-language="en"][data-visual-fidelity="v4"] :is(
  .hero-title,
  .section-title,
  .service-title,
  .workflow-input-title,
  .workflow-result-title,
  .process-step-title,
  .why-title,
  .final-cta-title,
  .footer-tagline
) {
  font-family: var(--x-font-display);
  font-synthesis: none;
}

html[data-language="en"][data-visual-fidelity="v4"] .hero-title,
html[data-language="en"][data-visual-fidelity="v4"] .section-title,
html[data-language="en"][data-visual-fidelity="v4"] .final-cta-title {
  font-weight: 700;
  letter-spacing: -.055em;
}

html[data-language="en"][data-visual-fidelity="v4"] :is(
  .service-title,
  .workflow-input-title,
  .workflow-result-title,
  .process-step-title,
  .why-title,
  .footer-tagline
) {
  font-weight: 600;
  letter-spacing: -.032em;
}

@media (max-width: 560px) {
  html[data-language="en"][data-visual-fidelity="v4"] .hero-title,
  html[data-language="en"][data-visual-fidelity="v4"] .section-title,
  html[data-language="en"][data-visual-fidelity="v4"] .final-cta-title {
    letter-spacing: -.047em;
  }
}
