/* === OPERATOR-GRADE FOUNDATION + REDESIGN COMPONENTS (new) === */
/* ============================================================
   AIIS HOME REDESIGN — MERGED GLOBAL STYLESHEET (assets/css/styles.css)
   Paste order, TOP of the file, ABOVE the existing preserved
   header/nav/footer rules (those re-skin automatically via the
   --aii-* back-compat aliases below).
   Block 1: foundation tokens (:root)
   Block 2: foundation base/reset + utilities
   Block 3..6: component blocks (pow, cap, tele, flow), namespaced
   ============================================================ */

/* ============================================================
   [1] FOUNDATION · DESIGN TOKENS
   ============================================================ */
:root {
  --bg:        #030712;
  --surface:   #070c18;
  --surface-2: #0b1120;
  --bg-rgb:    3,7,18;

  --text:  #F8FAFC;
  --muted: #94A3B8;
  --dim:   #64748B;
  --text-rgb: 248,250,252;

  /* ---- Accent — SINGLE source of truth. Swap this ONE block to
         re-theme site-wide:  --ac:#8b5cf6; --ac-rgb:139,92,246; ---- */
  --ac:      #00ffcc;
  --ac-rgb:  0,255,204;
  --ac-strong: #19ffd4;
  --ac-ink:  #021b16;

  /* ---- Data-matrix secondary tint (pow ONLY) ---- */
  --matrix-violet: #8b5cf6;
  --matrix-violet-rgb: 139,92,246;

  /* ---- REVIEW FIX (pow minor + blocker): added --dim-rgb so pow's
         redaction hatch is token-driven, not a baked literal. ---- */
  --dim-rgb: 100,116,139;

  --glass-bg:   rgba(255,255,255,0.03);
  --glass-bd:   rgba(var(--ac-rgb),0.16);
  --glass-blur: blur(14px) saturate(140%);
  --glass-hi:   rgba(255,255,255,0.06);

  --line:     rgba(var(--text-rgb),0.08);
  --line-2:   rgba(var(--text-rgb),0.14);

  --font-sans: 'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --font-mono: 'JetBrains Mono',ui-monospace,'SF Mono',Menlo,Consolas,'Liberation Mono',monospace;

  --r-sm: 8px;
  --r:    14px;
  --r-lg: 20px;
  --r-pill: 999px;

  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px;
  --sp-5: 24px; --sp-6: 32px; --sp-7: 48px; --sp-8: 64px; --sp-9: 96px;

  --shadow:    0 12px 40px rgba(0,0,0,0.55);
  --shadow-ac: 0 0 0 1px rgba(var(--ac-rgb),0.20), 0 8px 30px rgba(var(--ac-rgb),0.10);

  --ease: cubic-bezier(0.22,0.61,0.36,1);
  --dur:  0.45s;

  --header-h: 72px;
  --maxw: 1200px;

  /* ---- Back-compat aliases for preserved header/nav/footer markup ---- */
  --aii-obsidian: var(--bg);
  --aii-charcoal: var(--surface-2);
  --aii-white:    var(--text);
  --aii-chrome:   var(--muted);
  --aii-chrome-dim: var(--dim);
  --aii-cyan:     var(--ac);
  --aii-cyan-rgb: var(--ac-rgb);
  --aii-blue:     var(--ac);
  --aii-blue-rgb: var(--ac-rgb);
  --aii-glass-bg: var(--glass-bg);
  --aii-glass-border: var(--glass-bd);
  --aii-glass-blur: var(--glass-blur);
  --aii-chrome-rgb: var(--text-rgb);
  --aii-header-h: var(--header-h);
}

/* ============================================================
   [2] FOUNDATION · BASE / RESET + UTILITIES
   ============================================================ */
*,*::before,*::after{ box-sizing:border-box; }

html{
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--header-h) + 16px);
  -webkit-text-size-adjust:100%;
}

body{
  margin:0;
  padding-top:var(--header-h);
  background-color:var(--bg);
  /* REVIEW FIX (polish · background-attachment): removed
     background-attachment:fixed (scroll-jank / Safari repaint). The
     glows now scroll with content — visually near-identical at the top
     of the page, where they matter, and no per-scroll viewport repaint. */
  background-image:
    radial-gradient(1100px 700px at 6% -12%, rgba(var(--ac-rgb),0.06), transparent 60%),
    radial-gradient(1000px 820px at 106% 2%, rgba(var(--ac-rgb),0.04), transparent 58%);
  background-repeat:no-repeat;
  color:var(--text);
  font-family:var(--font-sans);
  font-size:16px;
  font-weight:400;
  line-height:1.6;
  letter-spacing:-0.005em;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}

h1,h2,h3,h4,h5,h6{
  margin:0 0 var(--sp-4);
  color:var(--text);
  font-family:var(--font-sans);
  font-weight:700;
  line-height:1.08;
  letter-spacing:-0.02em;
}
h1{ font-size:clamp(2.2rem,5vw,3.8rem); }
h2{ font-size:clamp(1.7rem,3.4vw,2.7rem); }
h3{ font-size:clamp(1.3rem,2.2vw,1.7rem); }
h4{ font-size:1.15rem; letter-spacing:-0.01em; }

img,svg,video,canvas{ max-width:100%; display:block; }

::selection{ background:rgba(var(--ac-rgb),0.28); color:var(--text); }

.aii-skip{
  position:absolute; left:-9999px; top:0; z-index:2000;
  background:var(--ac); color:var(--ac-ink);
  padding:10px 18px; border-radius:0 0 var(--r-sm) 0;
  font-family:var(--font-mono); font-weight:500; text-decoration:none;
}
.aii-skip:focus{ left:0; }

:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:2px solid var(--ac);
  outline-offset:2px;
  border-radius:var(--r-sm);
}
:where(a,button,input,select,textarea,summary,[tabindex]):focus:not(:focus-visible){
  outline:none;
}

.glass{
  position:relative;
  background:var(--glass-bg);
  -webkit-backdrop-filter:var(--glass-blur);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-bd);
  border-radius:var(--r);
  box-shadow:
    inset 0 1px 0 var(--glass-hi),
    inset 0 -1px 0 rgba(0,0,0,0.35),
    var(--shadow);
  color:var(--muted);
}
.glass::before{
  content:""; position:absolute; inset:0; padding:1px;
  border-radius:inherit; pointer-events:none; z-index:0;
  background:linear-gradient(135deg,
    rgba(var(--ac-rgb),0.45) 0%,
    rgba(var(--ac-rgb),0.04) 38%,
    rgba(255,255,255,0.05) 62%,
    rgba(var(--ac-rgb),0.22) 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
  opacity:0.9;
}
.glass > *{ position:relative; z-index:1; }

.glass-panel{
  position:relative;
  background:var(--glass-bg);
  -webkit-backdrop-filter:var(--glass-blur);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-bd);
  border-radius:var(--r);
  box-shadow:
    inset 0 1px 0 var(--glass-hi),
    inset 0 -1px 0 rgba(0,0,0,0.35),
    var(--shadow);
  color:var(--muted);
}

.mono-label{
  display:inline-block;
  font-family:var(--font-mono);
  font-weight:500;
  font-size:0.72rem;
  line-height:1;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--ac);
}
.mono-label--muted{ color:var(--muted); }
.mono-label--dim{ color:var(--dim); }

.ac{ color:var(--ac); }
.ac-bg{ background:var(--ac); color:var(--ac-ink); }
.ac-bd{ border-color:var(--ac); }
.ac-glow{ box-shadow:var(--shadow-ac); }

.shell{ width:min(100% - 2*var(--sp-5), var(--maxw)); margin-inline:auto; }

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

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{
    animation-duration:0.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:0.001ms!important;
    scroll-behavior:auto!important;
  }
}

/* ============================================================
   [3] ORB · Neural data-orb hero
   (No accent literals here — orb.js reads --ac at init.)
   ============================================================ */
.orb-root{
  position:relative; width:100%;
  min-height:clamp(600px, 92vh, 940px);
  display:flex; align-items:center;
  overflow:hidden; isolation:isolate;
  background-color:var(--bg);
}
.orb-stage{ position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.orb-canvas{ position:absolute; inset:0; width:100%; height:100%; display:block; }
.orb-stage::before{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(60% 60% at 64% 42%, rgba(var(--ac-rgb),0.10), transparent 70%),
    radial-gradient(40% 40% at 30% 80%, rgba(var(--ac-rgb),0.05), transparent 70%);
}
.orb-stage__scrim{
  position:absolute; inset:0;
  background:
    linear-gradient(90deg,
      rgba(var(--bg-rgb),0.92) 0%,
      rgba(var(--bg-rgb),0.72) 34%,
      rgba(var(--bg-rgb),0.30) 64%,
      rgba(var(--bg-rgb),0.10) 100%),
    linear-gradient(0deg,
      rgba(var(--bg-rgb),0.55) 0%,
      rgba(var(--bg-rgb),0.00) 46%);
}
.orb-fallback{
  position:absolute; top:42%; left:64%;
  width:min(46vw, 460px); aspect-ratio:1;
  transform:translate(-50%,-50%); display:none;
}
.orb-root--static .orb-canvas{ display:none; }
.orb-root--static .orb-fallback{ display:block; }
.orb-fallback__core{
  position:absolute; inset:36%; border-radius:var(--r-pill);
  background:radial-gradient(circle, rgba(var(--ac-rgb),0.55), rgba(var(--ac-rgb),0.0) 70%);
  box-shadow:0 0 60px rgba(var(--ac-rgb),0.30);
}
.orb-fallback__ring{
  position:absolute; inset:0; border-radius:var(--r-pill);
  border:1px solid rgba(var(--ac-rgb),0.28);
  -webkit-mask:radial-gradient(circle, transparent 64%, #000 65%);
          mask:radial-gradient(circle, transparent 64%, #000 65%);
  background:
    radial-gradient(circle at 50% 2%, var(--ac) 0 1.5px, transparent 2px),
    radial-gradient(circle at 98% 50%, var(--ac) 0 1.5px, transparent 2px),
    radial-gradient(circle at 50% 98%, var(--ac) 0 1.5px, transparent 2px),
    radial-gradient(circle at 2% 50%, var(--ac) 0 1.5px, transparent 2px),
    radial-gradient(circle at 85% 14%, var(--ac) 0 1.5px, transparent 2px),
    radial-gradient(circle at 14% 85%, var(--ac) 0 1.5px, transparent 2px);
  opacity:0.85;
}
.orb-fallback__ring--1{ inset:8%; }
.orb-fallback__ring--2{ inset:24%; transform:rotate(28deg); opacity:0.6; }
.orb-fallback__ring--3{ inset:-6%; opacity:0.4; }
.orb-shell{
  position:relative; z-index:2;
  width:min(100% - 2*var(--sp-5), var(--maxw));
  margin-inline:auto; padding-block:var(--sp-8);
}
.orb-copy{ max-width:600px; padding:clamp(var(--sp-5), 4vw, var(--sp-7)); }
.orb-eyebrow{ margin:0 0 var(--sp-4); }
.orb-heading{
  margin:0 0 var(--sp-4); color:var(--text);
  font-size:clamp(2.1rem, 4.6vw, 3.5rem); line-height:1.05; letter-spacing:-0.02em;
}
.orb-heading__ac{
  color:var(--text);
  background:linear-gradient(90deg, var(--text) 0%, var(--ac-strong) 120%);
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
}
/* REVIEW FIX (orb major): forced-colors guard so the gradient h1 never vanishes. */
@media (forced-colors: active){
  .orb-heading__ac{ background:none; -webkit-text-fill-color:currentColor; color:CanvasText; }
}
@media (prefers-contrast: more){
  .orb-heading__ac{ background:none; -webkit-text-fill-color:var(--text); color:var(--text); }
}
.orb-sub{
  margin:0 0 var(--sp-5); color:var(--muted);
  font-size:clamp(1rem, 1.4vw, 1.12rem); line-height:1.6; max-width:52ch;
}
.orb-actions{ display:flex; flex-wrap:wrap; align-items:center; gap:var(--sp-4); margin-bottom:var(--sp-5); }
.orb-cta{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:48px; padding:0 var(--sp-5); border-radius:var(--r-pill);
  background:var(--ac); color:var(--ac-ink);
  font-family:var(--font-sans); font-weight:600; font-size:1rem; text-decoration:none;
  box-shadow:var(--shadow-ac);
  transition:transform var(--dur) var(--ease), background-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}
.orb-cta:hover{ background:var(--ac-strong); transform:translateY(-2px); }
.orb-cta:focus-visible{ outline:2px solid var(--text); outline-offset:3px; }
.orb-link{
  display:inline-flex; align-items:center; gap:8px; min-height:44px;
  color:var(--text); font-family:var(--font-mono); font-weight:500; font-size:0.86rem;
  letter-spacing:0.04em; text-decoration:none;
}
.orb-link__arrow{ color:var(--ac); transition:transform var(--dur) var(--ease); }
.orb-link:hover .orb-link__arrow{ transform:translateX(4px); }
.orb-signals{ list-style:none; margin:0 0 var(--sp-5); padding:0; display:flex; flex-wrap:wrap; gap:var(--sp-3) var(--sp-5); }
.orb-signal{ display:inline-flex; }
/* Hero status: finite pulse (2 cycles ~4.8s, < WCAG 2.2.2 5s) then steady. */
.orb-status{ display:inline-flex; align-items:center; gap:10px; margin:0; }
.orb-status__dot{
  width:8px; height:8px; border-radius:var(--r-pill); background:var(--ac);
  box-shadow:0 0 0 0 rgba(var(--ac-rgb),0.55), 0 0 8px rgba(var(--ac-rgb),0.45);
  animation:orb-pulse 2.4s var(--ease) 2 forwards;
}
@keyframes orb-pulse{
  0%{ box-shadow:0 0 0 0 rgba(var(--ac-rgb),0.45), 0 0 8px rgba(var(--ac-rgb),0.45); }
  70%{ box-shadow:0 0 0 9px rgba(var(--ac-rgb),0), 0 0 8px rgba(var(--ac-rgb),0.45); }
  100%{ box-shadow:0 0 0 0 rgba(var(--ac-rgb),0), 0 0 8px rgba(var(--ac-rgb),0.45); }
}
@media (max-width:760px){
  .orb-root{ min-height:auto; padding-block:var(--sp-7); }
  .orb-copy{ max-width:100%; }
  .orb-actions{ gap:var(--sp-3); }
  .orb-cta, .orb-link{ width:100%; }
  .orb-cta{ padding:0 var(--sp-4); }
  .orb-fallback{ left:50%; top:30%; width:min(82vw, 380px); opacity:0.55; }
  .orb-stage__scrim{
    background:linear-gradient(0deg,
      rgba(var(--bg-rgb),0.92) 0%, rgba(var(--bg-rgb),0.70) 50%, rgba(var(--bg-rgb),0.45) 100%);
  }
}
@media (hover: none), (pointer: coarse){
  .orb-canvas{ display:none; }
  .orb-fallback{ display:block; }
}
@media (prefers-reduced-motion: reduce){
  .orb-canvas{ display:none; }
  .orb-fallback{ display:block; }
  .orb-status__dot{ animation:none; box-shadow:0 0 8px rgba(var(--ac-rgb),0.45); }
  .orb-cta:hover, .orb-link:hover .orb-link__arrow{ transform:none; }
}

/* ============================================================
   [4] cap · Capabilities Bento grid
   ============================================================ */
.cap{ padding:var(--sp-9) 0; overflow-x:clip; }
.cap-head{ max-width:54ch; margin:0 0 var(--sp-6); }
.cap-kicker{ margin:0 0 var(--sp-2); }
.cap-title{ margin:0 0 var(--sp-3); font-size:clamp(1.6rem,3vw,2.3rem); }
.cap-sub{ margin:0; color:var(--muted); font-size:1rem; line-height:1.65; max-width:54ch; }
.cap-grid{
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-rows:minmax(190px,auto); gap:var(--sp-4); perspective:1100px;
}
.cap-card--wide{ grid-column:span 2; }
.cap-card--tall{ grid-row:span 2; }
.cap-card{
  --cap-rx:0deg; --cap-ry:0deg; --cap-mx:50%; --cap-my:50%; --cap-lift:0;
  position:relative; display:flex; flex-direction:column; gap:var(--sp-4);
  min-height:190px; padding:var(--sp-5); text-decoration:none; color:var(--text);
  overflow:hidden; isolation:isolate; transform-style:preserve-3d;
  transform:perspective(1100px) rotateX(var(--cap-rx)) rotateY(var(--cap-ry)) translateZ(0);
  transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease),
    border-color var(--dur) var(--ease), opacity var(--dur) var(--ease);
  will-change:transform;
}
.cap-card:hover,
.cap-card:focus-visible{
  border-color:rgba(var(--ac-rgb),0.45);
  box-shadow:inset 0 1px 0 var(--glass-hi), inset 0 -1px 0 rgba(0,0,0,0.35), var(--shadow-ac);
}
.cap-card:focus-visible{ outline:2px solid var(--text); outline-offset:3px; }
.cap-flare{
  position:absolute; inset:0; z-index:0; pointer-events:none; border-radius:inherit;
  opacity:var(--cap-lift); transition:opacity var(--dur) var(--ease);
  background:radial-gradient(180px circle at var(--cap-mx) var(--cap-my),
    rgba(var(--ac-rgb),0.12), rgba(var(--ac-rgb),0.04) 42%, transparent 70%);
}
.cap-card-body, .cap-glyph, .cap-status, .cap-points{ position:relative; z-index:1; }
.cap-glyph{
  display:inline-flex; align-items:center; justify-content:center;
  width:44px; height:44px; flex:0 0 auto; border-radius:var(--r-sm); color:var(--ac);
  background:rgba(var(--ac-rgb),0.07); border:1px solid rgba(var(--ac-rgb),0.22);
  transform:translateZ(40px);
}
.cap-glyph svg{ width:24px; height:24px; }
.cap-card--wide .cap-glyph{ width:52px; height:52px; }
.cap-card--wide .cap-glyph svg{ width:28px; height:28px; }
.cap-card-body{ display:flex; flex-direction:column; gap:var(--sp-2); flex:1 1 auto; transform:translateZ(26px); }
.cap-tag{ margin:0; }
.cap-card-title{ margin:0; font-size:1.2rem; letter-spacing:-0.01em; color:var(--text); }
.cap-card--wide .cap-card-title{ font-size:clamp(1.4rem,2.4vw,1.9rem); }
.cap-card-copy{ margin:0; color:var(--muted); font-size:0.95rem; line-height:1.6; }
.cap-card--wide .cap-card-copy{ max-width:46ch; font-size:1rem; }
.cap-points{ list-style:none; margin:0; padding:var(--sp-3) 0 0; display:flex; flex-direction:column; gap:var(--sp-2); border-top:1px solid var(--line); }
.cap-point{ display:flex; align-items:center; gap:var(--sp-2); color:var(--muted); font-size:0.9rem; }
.cap-tick{ width:6px; height:6px; flex:0 0 auto; border-radius:2px; background:var(--ac); box-shadow:0 0 8px rgba(var(--ac-rgb),0.6); }
.cap-status{ display:flex; align-items:center; gap:var(--sp-2); margin:0; margin-top:auto; }
/* REVIEW FIX (global status-dot dedupe): static dot, NO keyframes. */
.cap-dot{ width:7px; height:7px; flex:0 0 auto; border-radius:var(--r-pill); background:var(--ac); box-shadow:0 0 6px rgba(var(--ac-rgb),0.45); }
/* IO-driven entrance (GSAP removed): pre-state only when JS confirms it animates. */
.cap[data-cap-anim="ready"] .cap-card{ opacity:0; transform:translateY(28px) scale(0.97); }
.cap[data-cap-anim="ready"] .cap-card.is-in{ opacity:1; transform:none; }
.cap[data-cap-anim="ready"] .cap-card:focus-within{ opacity:1!important; transform:none!important; }
@media (max-width:980px){
  .cap-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:minmax(180px,auto); }
  .cap-card--wide{ grid-column:span 2; }
  .cap-card--tall{ grid-row:span 1; }
}
@media (max-width:560px){
  .cap{ padding:var(--sp-8) 0; }
  .cap-grid{ grid-template-columns:1fr; gap:var(--sp-3); }
  .cap-card--wide{ grid-column:span 1; }
  .cap-card{ min-height:0; }
}
@media (hover:none),(pointer:coarse){
  .cap-card{ transform:none!important; transition:border-color var(--dur) var(--ease), opacity var(--dur) var(--ease); will-change:auto; }
  .cap-flare{ display:none; }
  .cap-glyph,.cap-card-body{ transform:none; }
}
@media (prefers-reduced-motion:reduce){
  .cap-card{ transform:none!important; transition:none; will-change:auto; }
  .cap-flare{ display:none; }
  .cap-glyph,.cap-card-body{ transform:none; }
  .cap[data-cap-anim="ready"] .cap-card{ opacity:1!important; transform:none!important; }
}

/* ============================================================
   [5] tele · Live processing telemetry
   ============================================================ */
.tele{ padding-block: var(--sp-9); position: relative; }
.tele__shell{ position: relative; }
.tele__head{ display: flex; flex-direction: column; align-items: flex-start; gap: var(--sp-3); margin-bottom: var(--sp-7); max-width: 62ch; }
.tele__shell--center .tele__head{ align-items: center; margin-inline: auto; text-align: center; }
.tele__tag{ margin: 0; }
.tele__title{ margin: 0; font-size: clamp(1.7rem, 3.4vw, 2.7rem); }
.tele__lede{ margin: 0; color: var(--muted); font-size: 1.05rem; line-height: 1.6; }
.tele-status{
  display: inline-flex; align-items: center; gap: var(--sp-3); margin-top: var(--sp-2);
  padding: var(--sp-2) var(--sp-4); border: 1px solid var(--glass-bd);
  border-radius: var(--r-pill); background: rgba(var(--ac-rgb), 0.05);
}
.tele-status__dot{
  position: relative; width: 10px; height: 10px; flex: 0 0 auto; border-radius: var(--r-pill);
  background: var(--ac); box-shadow: 0 0 0 0 rgba(var(--ac-rgb), 0.55);
  animation: tele-breathe 2.4s var(--ease) infinite;
}
.tele-status__dot::after{
  content: ""; position: absolute; inset: -5px; border-radius: var(--r-pill);
  border: 1px solid rgba(var(--ac-rgb), 0.45); opacity: 0; animation: tele-ring 2.4s var(--ease) infinite;
}
.tele-status__label{ white-space: nowrap; }
@keyframes tele-breathe{
  0%,100%{ box-shadow: 0 0 0 0 rgba(var(--ac-rgb), 0.50); opacity: 1; }
  50%{ box-shadow: 0 0 14px 3px rgba(var(--ac-rgb), 0.30); opacity: 0.78; }
}
@keyframes tele-ring{
  0%{ transform: scale(0.6); opacity: 0.7; }
  70%{ transform: scale(1.9); opacity: 0; }
  100%{ transform: scale(1.9); opacity: 0; }
}
.tele__panel{ position: relative; overflow: hidden; padding: var(--sp-6) var(--sp-6); border-radius: var(--r-lg); text-align: left; }
.tele__term{
  position: absolute; inset: 0; z-index: 0; padding: var(--sp-4) var(--sp-5);
  pointer-events: none; opacity: 0.16;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 60%, transparent 100%);
          mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 60%, transparent 100%);
  user-select: none;
}
.tele__term-bar{ display: flex; align-items: center; gap: var(--sp-3); margin-bottom: var(--sp-3); }
.tele__term-dots{ display: inline-flex; gap: 6px; }
.tele__term-dots i{ width: 7px; height: 7px; border-radius: var(--r-pill); background: rgba(var(--text-rgb), 0.25); }
.tele__term-stream{ font-family: var(--font-mono); font-size: 0.8rem; line-height: 1.85; color: var(--muted); }
.tele__term-line{ white-space: nowrap; }
.tele__term-prompt{ color: var(--ac); margin-right: var(--sp-2); }
.tele__term-text{ color: var(--muted); }
.tele__strip{
  position: relative; z-index: 1; list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--sp-5);
}
.tele-metric{ position: relative; display: flex; flex-direction: column; gap: var(--sp-2); padding-left: var(--sp-4); border-left: 1px solid var(--line-2); }
.tele-metric__cap{ margin: 0; }
.tele-metric__num{
  font-family: var(--font-mono); font-weight: 500; font-size: clamp(1.7rem, 3vw, 2.4rem);
  line-height: 1; color: var(--text); font-variant-numeric: tabular-nums; letter-spacing: -0.01em;
}
/* REVIEW FIX (global --dim contrast): note uses --muted (AA), not --dim. */
.tele-metric__note{ font-family: var(--font-mono); font-size: 0.66rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted); }
.tele-metric__cts{ color: var(--text); }
@media (max-width: 860px){ .tele__strip{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-5) var(--sp-4); } }
@media (max-width: 640px){ .tele__shell--center .tele__head{ align-items: flex-start; text-align: left; margin-inline: 0; } }
@media (max-width: 520px){
  .tele{ padding-block: var(--sp-8); }
  .tele__panel{ padding: var(--sp-5) var(--sp-4); }
  .tele__strip{ grid-template-columns: 1fr; }
  .tele-metric{ border-left: none; padding-left: 0; border-top: 1px solid var(--line-2); padding-top: var(--sp-3); }
  .tele-metric:first-child{ border-top: none; padding-top: 0; }
}
@media (prefers-reduced-motion: reduce){
  .tele-status__dot{ animation: none; box-shadow: 0 0 10px 1px rgba(var(--ac-rgb), 0.25); }
  .tele-status__dot::after{ animation: none; opacity: 0; }
}
.tele-status--static .tele-status__dot{ animation: none; box-shadow: 0 0 10px 1px rgba(var(--ac-rgb), 0.25); }
.tele-status--static .tele-status__dot::after{ animation: none; opacity: 0; }
@media (hover: none), (pointer: coarse){ .tele__term{ opacity: 0.12; } }

/* ============================================================
   [6] flow · SVG data-pulse operational timeline (Steps 01-04)
   ============================================================ */
.flow{ padding-block:var(--sp-9) var(--sp-8); position:relative; }
.flow__head{ max-width:64ch; margin-bottom:var(--sp-8); }
.flow__eyebrow{ margin-bottom:var(--sp-3); }
.flow__title{ font-size:clamp(1.7rem,3.2vw,2.6rem); margin-bottom:var(--sp-4); }
.flow__lede{ color:var(--muted); font-size:1.0625rem; line-height:1.65; margin:0; max-width:50ch; }
.flow__stage{ position:relative; }
.flow__spine{ position:absolute; top:0; bottom:0; left:50%; transform:translateX(-50%); width:40px; height:100%; overflow:visible; pointer-events:none; z-index:0; }
.flow__rail{ stroke:var(--line-2); stroke-width:2; vector-effect:non-scaling-stroke; }
.flow__trace{
  stroke:rgba(var(--ac-rgb),0.55); stroke-width:2; stroke-linecap:round; vector-effect:non-scaling-stroke;
  stroke-dasharray:var(--flow-len,1000); stroke-dashoffset:var(--flow-len,1000);
}
.flow__pulse{
  stroke:var(--ac-strong); stroke-width:3; stroke-linecap:round; vector-effect:non-scaling-stroke;
  filter:drop-shadow(0 0 6px rgba(var(--ac-rgb),0.9)) drop-shadow(0 0 14px rgba(var(--ac-rgb),0.5));
  stroke-dasharray:54 4000; stroke-dashoffset:var(--flow-len,1000); opacity:0;
}
.flow__list{ list-style:none; margin:0; padding:0; position:relative; z-index:1; display:flex; flex-direction:column; gap:var(--sp-8); counter-reset:flow; }
.flow__step{ position:relative; }
.flow__node{
  position:absolute; top:var(--sp-5); left:50%; transform:translate(-50%,-50%);
  width:18px; height:18px; border-radius:var(--r-pill); background:var(--surface-2);
  border:1.5px solid var(--line-2); display:grid; place-items:center; z-index:2;
  transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), background var(--dur) var(--ease);
}
.flow__node-core{ width:6px; height:6px; border-radius:var(--r-pill); background:var(--dim); transition:background var(--dur) var(--ease), box-shadow var(--dur) var(--ease); }
.flow__step.is-lit .flow__node{
  border-color:var(--ac); background:rgba(var(--ac-rgb),0.12);
  box-shadow:0 0 0 4px rgba(var(--ac-rgb),0.12), 0 0 18px rgba(var(--ac-rgb),0.55);
}
.flow__step.is-lit .flow__node-core{ background:var(--ac-strong); box-shadow:0 0 8px rgba(var(--ac-rgb),0.9); }
.flow__card{ padding:var(--sp-5) var(--sp-6); width:calc(50% - var(--sp-8)); }
/* REVIEW FIX (global --dim contrast): unlit tag is --muted (AA), teal once lit. */
.flow__tag{ margin-bottom:var(--sp-3); color:var(--muted); }
.flow__step.is-lit .flow__tag{ color:var(--ac); }
.flow__step-title{ font-size:1.2rem; margin-bottom:var(--sp-3); color:var(--text); }
.flow__step-copy{ margin:0; color:var(--muted); font-size:0.95rem; line-height:1.6; }
.flow__step:nth-child(odd) .flow__card{ margin-left:auto; }
.flow__step:nth-child(even) .flow__card{ margin-right:auto; }
.flow__card:focus-within{ outline:2px solid var(--text); outline-offset:3px; border-radius:var(--r); }
.flow.flow-armed .flow__card{ opacity:0; transform:translateY(14px); transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease); }
.flow.flow-armed .flow__step.is-lit .flow__card{ opacity:1; transform:none; }
.flow.flow-armed .flow__card:focus-within{ opacity:1; transform:none; }
.flow__status{ margin-top:var(--sp-7); text-align:center; }
@media (max-width:760px){
  .flow__stage{ padding-left:var(--sp-6); }
  .flow__spine{ left:9px; transform:none; width:40px; }
  .flow__node{ left:9px; }
  .flow__list{ gap:var(--sp-6); }
  .flow__card{ width:100%; margin:0 !important; }
  .flow__step:nth-child(odd) .flow__card,
  .flow__step:nth-child(even) .flow__card{ margin:0; }
}
@media (prefers-reduced-motion:reduce){
  .flow__trace{ stroke-dashoffset:0; }
  .flow__pulse{ display:none; }
  .flow__node{ border-color:var(--ac); background:rgba(var(--ac-rgb),0.12); box-shadow:0 0 0 4px rgba(var(--ac-rgb),0.10); }
  .flow__node-core{ background:var(--ac-strong); }
  .flow__tag{ color:var(--ac); }
  .flow.flow-armed .flow__card{ opacity:1 !important; transform:none !important; }
}

/* ============================================================
   [7] POW · Proof-of-Work split-screen
   ============================================================ */
.pow{ padding-block: var(--sp-9); }
.pow-head{ max-width: 64ch; margin-bottom: var(--sp-7); }
.pow-title{ margin: var(--sp-3) 0 var(--sp-4); }
.pow-sub{ color: var(--muted); font-size: 1.05rem; line-height: 1.65; margin: 0; }
.pow-stage{ display: grid; grid-template-columns: 1fr 72px 1fr; align-items: stretch; gap: 0; }
.pow-panel{ position: relative; min-height: 380px; padding: var(--sp-5); overflow: hidden; }
.pow-cap{ display: block; margin-bottom: var(--sp-4); }
.pow-legacy{ border-radius: var(--r) 0 0 var(--r); }
.pow-doc{
  position: relative; height: 100%; padding: var(--sp-4); border-radius: var(--r-sm);
  background: rgba(var(--text-rgb), 0.04);
  filter: blur(0.7px) contrast(0.82) brightness(0.94);
  transform: skewY(-1.1deg) rotate(-0.7deg); transform-origin: center;
}
.pow-doc-head{ display: flex; flex-direction: column; gap: var(--sp-1); padding-bottom: var(--sp-3); margin-bottom: var(--sp-3); border-bottom: 1px solid var(--line-2); }
.pow-doc-form{ font-family: var(--font-mono); font-size: 0.7rem; letter-spacing: 0.06em; color: var(--dim); }
.pow-doc-id{ font-family: var(--font-mono); font-size: 0.62rem; letter-spacing: 0.1em; color: rgba(var(--text-rgb), 0.34); }
.pow-doc-rows{ display: flex; flex-direction: column; gap: var(--sp-2); }
.pow-ln{ display: block; height: 9px; border-radius: 2px; background: linear-gradient(90deg, rgba(var(--text-rgb), 0.30), rgba(var(--text-rgb), 0.08)); }
/* REVIEW FIX (pow): redaction hatch now token-driven via --dim-rgb (added to :root). */
.pow-ln--redact{
  background:
    repeating-linear-gradient(90deg, rgba(var(--dim-rgb), 0.55) 0 14px, transparent 14px 18px),
    rgba(var(--dim-rgb), 0.42);
}
/* coffee-stain blot — INTENTIONAL off-system decay (documented exception, like
   --matrix-violet): warm browns deliberately outside the token system to read as
   a stained legacy fax. Live ONLY on the aria-hidden "mess" artifact. */
.pow-stain{
  position: absolute; right: 26px; top: 64px; width: 86px; height: 86px; border-radius: 50%;
  background: radial-gradient(circle at 38% 38%, rgba(150,90,40, 0.26), rgba(150,90,40, 0.06) 58%, transparent 72%);
  box-shadow: inset 0 0 14px rgba(150,90,40, 0.18); pointer-events: none;
}
.pow-noise{ position: absolute; inset: 0; opacity: 0.05; pointer-events: none; background-image: repeating-linear-gradient(0deg, rgba(var(--text-rgb),1) 0 1px, transparent 1px 3px); }
.pow-stamp{
  position: absolute; right: 18px; bottom: 22px; font-family: var(--font-mono); font-size: 0.6rem; letter-spacing: 0.1em;
  color: rgba(216,90,48, 0.72); border: 2px solid rgba(216,90,48, 0.5); border-radius: 5px; padding: 5px 9px; transform: rotate(-9deg);
}
.pow-seam{ position: relative; display: flex; align-items: center; justify-content: center; }
.pow-beam{
  width: 2px; height: 76%; border-radius: 2px;
  background: linear-gradient(180deg, transparent, rgba(var(--ac-rgb), 0.75), transparent);
  box-shadow: 0 0 16px rgba(var(--ac-rgb), 0.55); opacity: 0.5;
}
.pow-active .pow-beam{ animation: pow-beam-pulse 2.4s var(--ease) infinite; }
.pow-seam-dot{
  position: absolute; left: 50%; width: 7px; height: 7px; margin-left: -3.5px; border-radius: 50%;
  background: var(--ac); box-shadow: 0 0 10px 2px rgba(var(--ac-rgb), 0.7); opacity: 0;
}
.pow-active .pow-seam-dot--a{ animation: pow-travel 2.4s linear infinite; }
.pow-active .pow-seam-dot--b{ animation: pow-travel 2.4s linear infinite 1.2s; }
@keyframes pow-beam-pulse{ 0%,100%{ opacity: 0.4; } 50%{ opacity: 0.9; } }
@keyframes pow-travel{
  0%{ top: 12%; opacity: 0; transform: scale(0.6); }
  15%{ opacity: 1; transform: scale(1); }
  85%{ opacity: 1; transform: scale(1); }
  100%{ top: 86%; opacity: 0; transform: scale(0.6); }
}
.pow-output{ border-radius: 0 var(--r) var(--r) 0; }
/* violet streaming data matrix — the ONE documented non-token hex (--matrix-violet) */
.pow-matrix{
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
  font-family: var(--font-mono); font-size: 10px; line-height: 1.35;
  color: rgba(var(--matrix-violet-rgb), 0.42);
  white-space: pre; word-break: break-all; overflow: hidden; padding: var(--sp-3);
  opacity: 0; transition: opacity var(--dur) var(--ease);
  -webkit-mask-image: linear-gradient(180deg, transparent, #000 18%, #000 82%, transparent);
          mask-image: linear-gradient(180deg, transparent, #000 18%, #000 82%, transparent);
}
.pow-active .pow-matrix{ opacity: 0.5; }
/* REVIEW FIX (pow polish): solid scrim so table text never composites over the violet matrix. */
.pow-out-body{
  position: relative; z-index: 1;
  background: linear-gradient(rgba(var(--bg-rgb),0.55), rgba(var(--bg-rgb),0.55));
  border-radius: var(--r-sm); padding: var(--sp-3); margin: calc(var(--sp-3) * -1);
}
.pow-out-top{ display: flex; align-items: center; justify-content: space-between; gap: var(--sp-3); margin-bottom: var(--sp-4); }
.pow-out-top .pow-cap{ margin-bottom: 0; }
.pow-status{ color: var(--muted); }
.pow-active .pow-status{ color: var(--ac); }
.pow-table{ width: 100%; border-collapse: collapse; }
.pow-table caption{ text-align: left; }
.pow-table th{
  text-align: left; padding: 0 var(--sp-2) var(--sp-3); font-family: var(--font-mono); font-weight: 500;
  font-size: 0.62rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); border-bottom: 1px solid var(--line-2);
}
.pow-table td{ padding: var(--sp-3) var(--sp-2); font-family: var(--font-mono); font-size: 0.78rem; border-bottom: 1px solid var(--line); vertical-align: middle; }
.pow-cov{ color: var(--text); }
.pow-val{ color: var(--ac); }
.pow-ded{ color: var(--muted); }
.pow-vis{ display: inline; }
.pow-badge{
  display: inline-block; font-family: var(--font-mono); font-size: 0.58rem; letter-spacing: 0.06em; color: var(--ac);
  border: 1px solid rgba(var(--ac-rgb), 0.4); border-radius: var(--r-pill); padding: 3px 9px;
  opacity: 0.35; transition: opacity var(--dur) var(--ease);
}
.pow-row{ opacity: 0; transform: translateY(8px); transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease); }
.pow-row.is-in{ opacity: 1; transform: none; }
.pow-row.is-in .pow-badge{ opacity: 1; }
.pow-foot{ display: block; margin-top: var(--sp-4); }
.pow-foot .mono-label--muted{ color: var(--muted); }
@media (max-width: 760px){
  .pow-stage{ grid-template-columns: 1fr; gap: var(--sp-4); }
  .pow-seam{ display: none; }
  .pow-legacy{ border-radius: var(--r); }
  .pow-output{ border-radius: var(--r); }
  .pow-panel{ min-height: 0; }
  .pow-doc{ transform: skewY(-0.8deg); }
}
.pow-static .pow-row{ opacity: 1; transform: none; }
.pow-static .pow-row .pow-badge{ opacity: 1; }
.pow-static .pow-matrix{ opacity: 0.45; }
.pow-static .pow-beam{ opacity: 0.6; animation: none; }
.pow-static .pow-seam-dot{ display: none; }
.pow-static .pow-status{ color: var(--ac); }
@media (prefers-reduced-motion: reduce){
  .pow-row{ opacity: 1; transform: none; transition: none; }
  .pow-row .pow-badge{ opacity: 1; }
  .pow-matrix{ opacity: 0.45; transition: none; }
  .pow-beam{ opacity: 0.6; animation: none; }
  .pow-seam-dot{ display: none; }
  .pow-status{ color: var(--ac); }
}

/* === PRESERVED LEGACY STYLES (header/footer/other pages — re-skin via --aii-* aliases) === */
/* ============================================================
   ADVANCED INTELLIGENCE INSURANCE SERVICES
   Liquid Glass UI — global stylesheet (Cloudflare Pages build)
   ============================================================ */



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

html{
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--aii-header-h) + 16px);
}
@media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } }

body{
  margin:0;
  padding-top:var(--aii-header-h);
  background-color:var(--aii-obsidian);
  background-image:
    radial-gradient(1100px 700px at 8% -10%, rgba(var(--aii-cyan-rgb),0.12), transparent 60%),
    radial-gradient(1000px 800px at 105% 4%, rgba(var(--aii-blue-rgb),0.10), transparent 55%);
  background-attachment:fixed;
  background-repeat:no-repeat;
  color:var(--aii-chrome);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

img{ max-width:100%; display:block; }

.aii-skip{
  position:absolute; left:-9999px; top:0; z-index:2000;
  background:var(--aii-cyan); color:#04121A; padding:10px 18px;
  border-radius:0 0 10px 0; font-weight:600; text-decoration:none;
}
.aii-skip:focus{ left:0; }

/* ---- Reusable glass container ---- */
.glass-panel{
  background:var(--aii-glass-bg);
  -webkit-backdrop-filter:var(--aii-glass-blur);
  backdrop-filter:var(--aii-glass-blur);
  border:1px solid var(--aii-glass-border);
  border-radius:16px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.16), inset 0 -1px 0 rgba(0,0,0,0.25), 0 12px 40px rgba(0,0,0,0.5);
  color:var(--aii-chrome);
}

/* ---- Electric CTA button ---- */
.aii-cta{
  display:inline-block;
  background:var(--aii-cyan);
  color:#04121A !important;
  font-weight:600;
  letter-spacing:0.02em;
  padding:14px 30px;
  border-radius:12px;
  text-decoration:none;
  border:none;
  cursor:pointer;
  transition:box-shadow .25s ease, transform .25s ease;
}
.aii-cta:hover{
  transform:translateY(-1px);
  box-shadow:0 0 24px rgba(var(--aii-cyan-rgb),0.55);
}
@media (prefers-reduced-motion: reduce){ .aii-cta:hover{ transform:none; } }

/* ============================================================
   STICKY FROSTED HEADER / NAV
   ============================================================ */
.aii-hdr{
  position:fixed; top:0; left:0; width:100%; z-index:1000;
  height:var(--aii-header-h);
  background:rgba(10,12,16,0.55);
  -webkit-backdrop-filter:blur(14px) saturate(160%);
  backdrop-filter:blur(14px) saturate(160%);
  border-bottom:1px solid var(--aii-glass-border);
}
.aii-hdr__inner{
  max-width:1280px; height:100%; margin:0 auto;
  padding:0 clamp(1rem,4vw,2rem);
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
}
.aii-hdr__brand{ display:inline-flex; align-items:center; gap:.6rem; text-decoration:none; color:var(--aii-white); }
.aii-hdr__mark{
  display:inline-flex; align-items:center; justify-content:center;
  width:30px; height:30px; border-radius:8px;
  color:var(--aii-cyan);
  background:rgba(var(--aii-cyan-rgb),.10);
  border:1px solid rgba(var(--aii-cyan-rgb),.30);
}
.aii-hdr__name{ font-size:1rem; line-height:1.1; font-weight:600; letter-spacing:-.01em; }
.aii-hdr__name-sub{ color:var(--aii-chrome); font-weight:400; }
.aii-hdr__nav{ display:flex; align-items:center; gap:1.5rem; }
.aii-hdr__nav a{ color:var(--aii-chrome); text-decoration:none; font-size:.95rem; font-weight:500; transition:color .2s ease; }
.aii-hdr__nav a:hover{ color:var(--aii-cyan); }
.aii-hdr__nav a[aria-current="page"]{ color:var(--aii-white); }
.aii-hdr__login{ padding:9px 18px !important; font-size:.9rem; }
.aii-hdr__login:hover{ color:#04121A !important; }
.aii-hdr__toggle{
  display:none; align-items:center; justify-content:center;
  width:44px; height:44px; padding:0;
  background:transparent; border:1px solid var(--aii-glass-border); border-radius:10px;
  color:var(--aii-chrome); cursor:pointer;
}
.aii-hdr__toggle svg{ display:block; }

.aii-hdr a:focus-visible,
.aii-hdr__toggle:focus-visible{
  outline:2px solid #04121A; outline-offset:2px;
  box-shadow:0 0 0 4px var(--aii-cyan), 0 0 0 6px rgba(4,18,26,.9);
  border-radius:10px;
}

@media (max-width:880px){
  .aii-hdr__toggle{ display:inline-flex; }
  .aii-hdr__nav{
    position:absolute; top:var(--aii-header-h); left:0; right:0;
    flex-direction:column; align-items:stretch; gap:0;
    padding:.5rem clamp(1rem,4vw,2rem) 1.1rem;
    background:rgba(10,12,16,0.94);
    -webkit-backdrop-filter:blur(14px) saturate(160%);
    backdrop-filter:blur(14px) saturate(160%);
    border-bottom:1px solid var(--aii-glass-border);
    display:none;
  }
  .aii-hdr__nav.is-open{ display:flex; }
  .aii-hdr__nav a{ padding:.85rem .25rem; min-height:44px; display:flex; align-items:center; border-bottom:1px solid var(--aii-glass-border); }
  .aii-hdr__login{ margin-top:.75rem; justify-content:center; text-align:center; border-bottom:none !important; }
}

/* ============================================================
   FOOTER
   ============================================================ */
.aii-ftr{ background:var(--aii-charcoal); border-top:1px solid var(--aii-glass-border); color:var(--aii-chrome); }
.aii-ftr__inner{
  max-width:1180px; margin:0 auto;
  padding:clamp(2.5rem,5vw,4rem) clamp(1rem,4vw,2rem) 1.5rem;
  display:grid; grid-template-columns:2fr 1fr 1fr; gap:2rem;
}
@media (max-width:760px){ .aii-ftr__inner{ grid-template-columns:1fr; gap:1.75rem; } }
.aii-ftr__name{ color:var(--aii-white); font-weight:600; margin:0 0 .5rem; font-size:1.02rem; }
.aii-ftr__tag{ font-size:.92rem; max-width:44ch; margin:0 0 .75rem; }
.aii-ftr__lic{ font-size:.82rem; color:var(--aii-chrome-dim); margin:0; }
.aii-ftr__h{ color:var(--aii-white); font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; margin:0 0 .75rem; }
.aii-ftr__col a{ display:block; color:var(--aii-chrome); text-decoration:none; font-size:.92rem; padding:.3rem 0; }
.aii-ftr__col a:hover{ color:var(--aii-cyan); }
.aii-ftr__bar{ border-top:1px solid var(--aii-glass-border); }
.aii-ftr__bar p{ max-width:1180px; margin:0 auto; padding:1rem clamp(1rem,4vw,2rem); font-size:.8rem; color:var(--aii-chrome-dim); }
.aii-ftr a:focus-visible{
  outline:2px solid #04121A; outline-offset:2px;
  box-shadow:0 0 0 4px var(--aii-cyan), 0 0 0 6px rgba(4,18,26,.9); border-radius:8px;
}

/* ============================================================
   1) HERO
   ============================================================ */
.aii-hero{
  position:relative; width:100%;
  min-height:clamp(560px, 88vh, 920px);
  display:flex; align-items:center; overflow:hidden; isolation:isolate;
  color:var(--aii-chrome);
  background-color:var(--aii-obsidian);
  background-image:url('/assets/img/hero-truck.jpg');
  background-size:cover;
  background-position:center right;
  background-repeat:no-repeat;
}
.aii-hero__scrim{
  position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    linear-gradient(90deg, rgba(10,12,16,0.80) 0%, rgba(10,12,16,0.60) 34%, rgba(10,12,16,0.40) 64%, rgba(10,12,16,0.25) 100%),
    linear-gradient(0deg, rgba(10,12,16,0.60) 0%, rgba(10,12,16,0.10) 40%, rgba(10,12,16,0.00) 70%);
}
.aii-hero__streaks{ position:absolute; inset:0; z-index:1; pointer-events:none; overflow:hidden; }
.aii-hero__streak{
  position:absolute; height:2px; width:42%; max-width:560px; border-radius:2px;
  opacity:0; transform:translateX(-120%);
  background:linear-gradient(90deg, rgba(var(--aii-cyan-rgb),0) 0%, rgba(var(--aii-blue-rgb),0.55) 40%, var(--aii-cyan) 78%, rgba(244,247,250,0.9) 100%);
  filter:drop-shadow(0 0 6px rgba(var(--aii-cyan-rgb),0.55));
  will-change:transform, opacity;
}
.aii-hero__streak--1{ top:28%; animation:aii-streak 7.5s linear infinite; animation-delay:0s; }
.aii-hero__streak--2{ top:54%; width:34%; animation:aii-streak 9s linear infinite; animation-delay:2.4s; }
.aii-hero__streak--3{ top:73%; width:26%; animation:aii-streak 6.5s linear infinite; animation-delay:4.1s; }
@keyframes aii-streak{
  0%{ transform:translateX(-120%); opacity:0; }
  8%{ opacity:0.9; }
  55%{ opacity:0.9; }
  100%{ transform:translateX(280%); opacity:0; }
}
.aii-hero__inner{
  position:relative; z-index:2; width:100%; max-width:1280px; margin:0 auto;
  padding:clamp(2rem,6vw,6rem) clamp(1.25rem,5vw,4rem);
}
.aii-hero__panel{
  max-width:620px; padding:clamp(1.75rem,4vw,3rem);
  background:linear-gradient(rgba(10,12,16,0.62), rgba(10,12,16,0.66)), var(--aii-glass-bg);
}
.aii-hero__eyebrow{
  display:inline-flex; align-items:center; gap:10px; margin:0 0 1rem;
  font-size:0.82rem; letter-spacing:0.16em; text-transform:uppercase; font-weight:600; color:var(--aii-cyan);
}
.aii-hero__pulse{
  width:8px; height:8px; border-radius:50%; background:var(--aii-cyan);
  box-shadow:0 0 0 0 rgba(var(--aii-cyan-rgb),0.55); animation:aii-pulse 2.6s ease-out infinite;
}
@keyframes aii-pulse{
  0%{ box-shadow:0 0 0 0 rgba(var(--aii-cyan-rgb),0.55); }
  70%{ box-shadow:0 0 0 10px rgba(var(--aii-cyan-rgb),0); }
  100%{ box-shadow:0 0 0 0 rgba(var(--aii-cyan-rgb),0); }
}
.aii-hero__heading{
  margin:0 0 1rem; color:var(--aii-white);
  font-size:clamp(2.1rem,5.2vw,3.6rem); line-height:1.06; font-weight:700; letter-spacing:-0.02em; text-wrap:balance;
}
.aii-hero__subheading{
  margin:0 0 1.7rem; color:var(--aii-chrome);
  font-size:clamp(1.02rem,1.7vw,1.22rem); line-height:1.6; max-width:52ch;
}
.aii-hero__actions{ display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
.aii-hero__primary{ min-height:48px; display:inline-flex; align-items:center; justify-content:center; font-size:1rem; font-weight:600; }
.aii-hero__secondary{
  position:relative; display:inline-flex; align-items:center; gap:8px;
  min-height:48px; padding:13px 26px; border-radius:12px;
  font-size:1rem; font-weight:500; text-decoration:none; color:var(--aii-chrome);
  background:rgba(var(--aii-chrome-rgb),0.06); border:1px solid rgba(var(--aii-chrome-rgb),0.45);
  -webkit-backdrop-filter:var(--aii-glass-blur); backdrop-filter:var(--aii-glass-blur);
  transition:transform 0.2s ease, border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
}
.aii-hero__secondary:hover{
  transform:translateY(-1px); color:var(--aii-white);
  background:rgba(var(--aii-chrome-rgb),0.12); border-color:var(--aii-chrome); box-shadow:0 6px 20px rgba(0,0,0,0.35);
}
.aii-hero__ext{ font-size:1.05em; line-height:1; color:var(--aii-cyan); }
.aii-hero__call{ margin:1.1rem 0 0; font-size:0.92rem; color:var(--aii-chrome); }
.aii-hero__calllink{
  display:inline-flex; align-items:center; gap:6px; min-height:44px; color:var(--aii-white); font-weight:500;
  text-decoration:underline; text-underline-offset:3px; text-decoration-color:rgba(var(--aii-chrome-rgb),0.5);
}
.aii-hero__calllink:hover{ text-decoration-color:var(--aii-cyan); }
.aii-hero__callicon{ color:var(--aii-cyan); font-size:1.05em; line-height:1; }
.aii-hero__signals{
  display:flex; flex-wrap:wrap; gap:10px 22px; list-style:none;
  margin:1.7rem 0 0; padding:1.4rem 0 0; border-top:1px solid var(--aii-glass-border);
}
.aii-hero__signal{ position:relative; padding-left:20px; font-size:0.9rem; font-weight:500; letter-spacing:0.02em; color:var(--aii-chrome); }
.aii-hero__signal::before{
  content:""; position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:9px; height:9px; border-radius:50%; background:rgba(var(--aii-chrome-rgb),0.5);
}
.aii-hero a:focus-visible{
  outline:2px solid #04121A; outline-offset:2px;
  box-shadow:0 0 0 4px var(--aii-cyan), 0 0 0 6px rgba(4,18,26,0.9); border-radius:12px;
}
@media (max-width:640px){
  .aii-hero{ min-height:78vh; }
  .aii-hero__panel{ max-width:100%; }
  .aii-hero__actions{ gap:12px; }
  .aii-hero__primary, .aii-hero__secondary{ width:100%; }
}
@media (prefers-reduced-motion: reduce){
  .aii-hero__streak, .aii-hero__pulse{ animation:none !important; }
  .aii-hero__streaks{ display:none; }
  .aii-hero__secondary{ transition:color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease; }
  .aii-hero__secondary:hover, .aii-hero__primary:hover{ transform:none; }
}

/* ============================================================
   2) WHY AI INSURANCE — 3-column feature grid
   ============================================================ */
.aii-why{ width:100%; padding:clamp(3rem,7vw,5.5rem) 0; }
.aii-why__inner{ max-width:1180px; margin:0 auto; padding:0 20px; }
.aii-why__head{ max-width:720px; margin:0 auto 40px; text-align:center; }
.aii-why__eyebrow{ margin:0 0 12px; font-size:.82rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; color:var(--aii-cyan); }
.aii-why__title{ margin:0 0 14px; font-size:clamp(1.7rem,3.6vw,2.5rem); line-height:1.12; font-weight:700; color:var(--aii-white); letter-spacing:-.01em; }
.aii-why__sub{ margin:0; font-size:1.02rem; line-height:1.65; color:var(--aii-chrome); }
.aii-why__grid{ list-style:none; margin:0; padding:0; display:grid; gap:22px; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; }
.aii-why__card{
  display:flex; flex-direction:column; padding:30px 28px 32px; color:var(--aii-chrome);
  background:linear-gradient(rgba(10,12,16,.55), rgba(10,12,16,.55)), var(--aii-glass-bg);
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease, background .25s ease; will-change:transform;
}
.aii-why__card:hover{
  transform:translateY(-6px); border-color:rgba(var(--aii-cyan-rgb),.42);
  background:linear-gradient(rgba(10,12,16,.50), rgba(10,12,16,.50)), rgba(255,255,255,.07);
  box-shadow:0 18px 40px -18px rgba(0,0,0,.7), 0 0 0 1px rgba(var(--aii-cyan-rgb),.12) inset;
}
.aii-why__card:focus-within{ outline:2px solid var(--aii-cyan); outline-offset:2px; border-color:rgba(var(--aii-cyan-rgb),.42); }
.aii-why__icon{
  display:inline-flex; align-items:center; justify-content:center; width:54px; height:54px; margin-bottom:20px;
  border-radius:14px; color:var(--aii-cyan); background:rgba(var(--aii-cyan-rgb),.10); border:1px solid rgba(var(--aii-cyan-rgb),.28);
  transition:background .25s ease, box-shadow .25s ease;
}
.aii-why__card:hover .aii-why__icon, .aii-why__card:focus-within .aii-why__icon{ background:rgba(var(--aii-cyan-rgb),.16); box-shadow:0 0 18px -2px rgba(var(--aii-cyan-rgb),.45); }
.aii-why__icon svg{ display:block; }
.aii-why__cardtitle{ margin:0 0 10px; font-size:1.22rem; line-height:1.25; font-weight:600; color:var(--aii-white); letter-spacing:-.005em; }
.aii-why__cardbody{ margin:0; font-size:.97rem; line-height:1.62; color:var(--aii-chrome); }
.aii-why__actions{ margin-top:38px; text-align:center; }
.aii-why .aii-cta:focus-visible{ outline:2px solid #04121A; outline-offset:2px; box-shadow:0 0 0 4px var(--aii-cyan), 0 0 0 6px rgba(4,18,26,.9); }
@media (max-width:900px){
  .aii-why__grid{ grid-template-columns:1fr; gap:18px; }
  .aii-why__head{ margin-bottom:32px; }
  .aii-why__card{ padding:26px 24px 28px; }
}
@media (prefers-reduced-motion: reduce){
  .aii-why__card, .aii-why__icon, .aii-why .aii-cta{ transition:none; }
  .aii-why__card:hover{ transform:none; }
}

/* ============================================================
   3) TRUST SIGNALS / SOCIAL PROOF BAND
   ============================================================ */
.aii-trust{ width:100%; color:var(--aii-chrome); padding:clamp(2rem,5vw,4rem) 0 clamp(3rem,6vw,5rem); }
.aii-trust__inner{ max-width:1180px; margin:0 auto; padding:8px clamp(16px,4vw,32px); }
.aii-trust__head{ max-width:760px; margin:0 0 32px; }
.aii-trust__eyebrow{ margin:0 0 10px; font-size:.82rem; letter-spacing:.16em; text-transform:uppercase; font-weight:600; color:var(--aii-cyan); }
.aii-trust__title{ margin:0 0 14px; color:var(--aii-white); font-size:clamp(1.4rem,2.6vw,2rem); line-height:1.18; font-weight:600; }
.aii-trust__statement{ margin:0; color:var(--aii-chrome); font-size:clamp(.95rem,1.3vw,1.05rem); line-height:1.6; max-width:660px; }
.aii-trust__grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:20px; margin:0 0 24px; }
.aii-trust__card{ padding:26px 24px; display:flex; flex-direction:column; background:linear-gradient(rgba(10,12,16,.72),rgba(10,12,16,.72)),var(--aii-glass-bg); }
.aii-trust__icon{ display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; margin:0 0 16px; border-radius:12px; color:var(--aii-cyan); background:rgba(var(--aii-cyan-rgb),.08); border:1px solid rgba(var(--aii-cyan-rgb),.22); }
.aii-trust__status{ display:inline-flex; align-items:center; gap:8px; margin:0 0 10px; font-size:.82rem; font-weight:600; letter-spacing:.02em; color:var(--aii-chrome-dim); text-transform:uppercase; }
.aii-trust__dot{ width:9px; height:9px; border-radius:50%; background:var(--aii-cyan); box-shadow:0 0 8px rgba(var(--aii-cyan-rgb),.7); }
.aii-trust__card-title{ margin:0 0 8px; color:var(--aii-white); font-size:1.12rem; font-weight:600; line-height:1.3; }
.aii-trust__card-copy{ margin:0 0 16px; color:var(--aii-chrome); font-size:.92rem; line-height:1.55; }
.aii-trust__meta{ margin:auto 0 0; padding-top:12px; font-size:.82rem; color:var(--aii-chrome-dim); border-top:1px solid var(--aii-glass-border); }
.aii-trust__placeholder{ color:var(--aii-chrome); font-style:italic; }
.aii-trust__rating{ margin:auto 0 0; padding-top:14px; border-top:1px solid var(--aii-glass-border); display:flex; flex-direction:column; gap:3px; }
.aii-trust__rating-grade{ font-size:1.35rem; font-weight:700; line-height:1.1; color:var(--aii-white); letter-spacing:.01em; border-bottom:2px solid var(--aii-cyan); padding-bottom:4px; align-self:flex-start; }
.aii-trust__rating-scale{ font-size:.78rem; color:var(--aii-chrome-dim); }
.aii-trust__inline-link{ margin:auto 0 0; padding-top:12px; display:inline-flex; align-items:center; gap:6px; font-size:.9rem; font-weight:600; color:var(--aii-cyan); text-decoration:none; transition:gap .2s ease; }
.aii-trust__inline-link:hover{ gap:11px; text-decoration:underline; }
.aii-trust__logos{ padding:22px 24px; margin:0 0 28px; background:linear-gradient(rgba(10,12,16,.72),rgba(10,12,16,.72)),var(--aii-glass-bg); }
.aii-trust__logos-label{ margin:0 0 16px; font-size:.78rem; letter-spacing:.16em; text-transform:uppercase; color:var(--aii-chrome-dim); text-align:center; }
.aii-trust__logo-strip{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:18px; align-items:center; }
.aii-trust__logo{ display:flex; align-items:center; justify-content:center; min-height:48px; padding:6px 10px; }
.aii-trust__logo img{ max-height:36px; max-width:100%; width:auto; height:auto; filter:grayscale(1) brightness(1.4) opacity(.75); transition:filter .25s ease, transform .25s ease; }
.aii-trust__logo:hover img{ filter:grayscale(0) brightness(1.15) opacity(1); transform:translateY(-1px); }
.aii-trust__logo--empty span{ font-size:.74rem; font-weight:600; letter-spacing:.02em; text-align:center; color:var(--aii-chrome-dim); border:1px dashed var(--aii-glass-border); border-radius:8px; padding:10px 12px; width:100%; }
.aii-trust__actions{ display:flex; flex-wrap:wrap; align-items:center; gap:16px 24px; }
.aii-trust__cta{ min-height:44px; display:inline-flex; align-items:center; }
.aii-trust__call{ display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:11px 18px; border-radius:12px; color:var(--aii-white); text-decoration:none; font-weight:600; font-size:.95rem; border:1px solid var(--aii-glass-border); background:var(--aii-glass-bg); -webkit-backdrop-filter:var(--aii-glass-blur); backdrop-filter:var(--aii-glass-blur); transition:border-color .2s ease, color .2s ease, transform .2s ease; }
.aii-trust__call-icon{ display:inline-flex; color:var(--aii-cyan); }
.aii-trust__call:hover{ border-color:var(--aii-cyan); color:var(--aii-cyan); transform:translateY(-1px); }
.aii-trust__call:hover .aii-trust__call-icon{ color:var(--aii-cyan); }
.aii-trust a:focus-visible, .aii-trust__cta:focus-visible{ outline:2px solid #04121A; outline-offset:2px; border-radius:10px; box-shadow:0 0 0 4px var(--aii-cyan), 0 0 0 6px rgba(4,18,26,.9); }
@media (max-width:600px){
  .aii-trust__card{ padding:22px 20px; }
  .aii-trust__actions{ flex-direction:column; align-items:stretch; }
  .aii-trust__cta,.aii-trust__call{ justify-content:center; }
}
@media (prefers-reduced-motion: reduce){
  .aii-trust__inline-link, .aii-trust__logo img, .aii-trust__call, .aii-trust__cta{ transition:none !important; }
  .aii-trust__logo:hover img, .aii-trust__call:hover{ transform:none; }
}

/* ============================================================
   4) SOLUTIONS — PAGE INTRO / HEADER
   ============================================================ */
.aii-sol-intro{ position:relative; padding:clamp(3rem,8vw,6rem) clamp(1rem,5vw,3rem); background-color:var(--aii-obsidian); background-image:linear-gradient(rgba(10,12,16,.55), rgba(10,12,16,.72)), url('/assets/img/highway-truck.jpg'); background-size:cover; background-position:center; }
.aii-sol-intro__panel{ background:linear-gradient(rgba(10,12,16,.58), rgba(10,12,16,.58)), var(--aii-glass-bg); max-width:920px; margin:0 auto; padding:clamp(1.75rem,4vw,2.75rem); }
.aii-sol-intro__eyebrow{ margin:0 0 .85rem; font-size:.82rem; letter-spacing:.16em; text-transform:uppercase; font-weight:600; color:var(--aii-cyan); }
.aii-sol-intro__title{ margin:0 0 1rem; color:var(--aii-white); font-size:clamp(2rem,5vw,3.1rem); line-height:1.1; font-weight:700; letter-spacing:-0.01em; }
.aii-sol-intro__lead{ margin:0 0 1.75rem; max-width:64ch; color:var(--aii-chrome); font-size:clamp(1rem,1.6vw,1.12rem); line-height:1.65; }
.aii-sol-intro__chips{ display:flex; flex-wrap:wrap; gap:.65rem; margin:0 0 1.85rem; }
.aii-sol-intro__chip{
  display:inline-flex; align-items:center; gap:.5rem; min-height:44px; padding:.55rem 1.05rem; border-radius:999px;
  border:1px solid var(--aii-glass-border); background:rgba(var(--aii-chrome-rgb),0.06);
  -webkit-backdrop-filter:var(--aii-glass-blur); backdrop-filter:var(--aii-glass-blur);
  color:var(--aii-chrome); font-size:.92rem; font-weight:600; line-height:1; text-decoration:none;
  transition:transform .2s ease, border-color .2s ease, color .2s ease, background .2s ease;
}
.aii-sol-intro__chip-icon{ font-size:.6rem; line-height:1; color:var(--aii-cyan); }
.aii-sol-intro__chip:hover{ transform:translateY(-2px); border-color:rgba(var(--aii-cyan-rgb),0.5); background:rgba(var(--aii-cyan-rgb),0.08); color:var(--aii-white); }
.aii-sol-intro__actions{ display:flex; flex-wrap:wrap; align-items:center; gap:1rem 1.25rem; }
.aii-sol-intro__cta{ min-height:44px; }
.aii-sol-intro__note{ color:var(--aii-chrome-dim); font-size:.85rem; }
.aii-sol-intro a:focus-visible{ outline:2px solid #04121A; outline-offset:2px; box-shadow:0 0 0 4px var(--aii-cyan), 0 0 0 6px rgba(4,18,26,.9); border-radius:12px; }
@media (prefers-reduced-motion: reduce){ .aii-sol-intro__chip{ transition:none; } .aii-sol-intro__chip:hover{ transform:none; } }

/* ============================================================
   5) CORE COVERAGE GRID
   ============================================================ */
.aii-cov{ position:relative; padding:clamp(2.5rem,6vw,5rem) clamp(1rem,4vw,2rem); color:var(--aii-chrome); background:linear-gradient(rgba(10,12,16,.82),rgba(10,12,16,.74)), url('/assets/img/highway-truck.jpg') center/cover no-repeat; }
.aii-cov *{ box-sizing:border-box; }
.aii-cov__inner{ max-width:1120px; margin:0 auto; }
.aii-cov__sr{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
.aii-cov__head{ max-width:680px; margin:0 0 clamp(1.75rem,4vw,2.75rem); }
.aii-cov__eyebrow{ margin:0 0 .6rem; font-size:.82rem; letter-spacing:.16em; text-transform:uppercase; font-weight:600; color:var(--aii-cyan); }
.aii-cov__title{ margin:0 0 .85rem; color:var(--aii-white); font-weight:600; line-height:1.15; font-size:clamp(1.6rem,3.4vw,2.4rem); letter-spacing:-.01em; }
.aii-cov__lede{ margin:0; color:var(--aii-chrome); font-size:1.02rem; line-height:1.6; }
.aii-cov__grid{ list-style:none; margin:0; padding:0; display:grid; gap:clamp(1rem,2.4vw,1.5rem); grid-template-columns:repeat(2,minmax(0,1fr)); }
@media (max-width:760px){ .aii-cov__grid{ grid-template-columns:1fr; } }
.aii-cov__card{
  background:linear-gradient(rgba(10,12,16,.72),rgba(10,12,16,.72)), var(--aii-glass-bg);
  display:flex; flex-direction:column; padding:clamp(1.4rem,2.6vw,1.85rem);
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease, background .3s ease;
}
.aii-cov__card:hover, .aii-cov__card:focus-within{
  transform:translateY(-6px) scale(1.015); border-color:rgba(var(--aii-cyan-rgb),.55);
  box-shadow:0 0 0 1px rgba(var(--aii-cyan-rgb),.35), 0 18px 40px -12px rgba(0,0,0,.65), 0 0 28px -6px rgba(var(--aii-cyan-rgb),.30);
  will-change:transform;
}
.aii-cov__icon{ display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; margin:0 0 1rem; color:var(--aii-cyan); border:1px solid rgba(var(--aii-cyan-rgb),.30); border-radius:12px; background:rgba(var(--aii-cyan-rgb),.07); }
.aii-cov__card-title{ margin:0 0 .55rem; color:var(--aii-white); font-weight:600; line-height:1.25; font-size:1.18rem; letter-spacing:-.005em; }
.aii-cov__card-sum{ margin:0 0 1rem; color:var(--aii-chrome); font-size:.97rem; line-height:1.55; }
.aii-cov__details{ margin:0 0 1.15rem; border-top:1px solid var(--aii-glass-border); padding-top:.35rem; }
.aii-cov__details summary{ display:flex; align-items:center; gap:.5rem; min-height:44px; cursor:pointer; list-style:none; color:var(--aii-cyan); font-size:.9rem; font-weight:600; letter-spacing:.01em; }
.aii-cov__details summary::-webkit-details-marker{ display:none; }
.aii-cov__details summary::marker{ content:""; }
.aii-cov__details summary::before{ content:""; width:.5rem; height:.5rem; flex:none; border-right:2px solid var(--aii-cyan); border-bottom:2px solid var(--aii-cyan); transform:rotate(-45deg); transition:transform .25s ease; }
.aii-cov__details[open] summary::before{ transform:rotate(45deg); }
.aii-cov__disclosure{ padding:.35rem 0 .25rem; }
.aii-cov__disclosure p{ margin:0 0 .7rem; color:var(--aii-chrome); font-size:.9rem; line-height:1.55; }
.aii-cov__disclosure p:last-child{ margin-bottom:0; }
.aii-cov__lbl{ color:var(--aii-white); font-weight:600; }
.aii-cov__client{ color:var(--aii-chrome-dim); font-style:italic; }
.aii-cov__link{ margin-top:auto; align-self:flex-start; display:inline-flex; align-items:center; gap:.4rem; min-height:44px; padding:.35rem 0; color:var(--aii-cyan); text-decoration:none; font-size:.92rem; font-weight:600; border-bottom:1px solid transparent; transition:border-color .2s ease, gap .2s ease; }
.aii-cov__link span[aria-hidden]{ transition:transform .2s ease; }
.aii-cov__link:hover{ border-bottom-color:rgba(var(--aii-cyan-rgb),.6); }
.aii-cov__link:hover span[aria-hidden]{ transform:translateX(3px); }
.aii-cov a:focus-visible, .aii-cov summary:focus-visible{ outline:2px solid #04121A; outline-offset:2px; box-shadow:0 0 0 4px var(--aii-cyan), 0 0 0 6px rgba(4,18,26,.9); border-radius:12px; }
.aii-cov__details summary:focus{ outline:2px solid var(--aii-cyan); outline-offset:2px; border-radius:12px; }
@media (prefers-reduced-motion: reduce){
  .aii-cov__card, .aii-cov__details summary::before, .aii-cov__link, .aii-cov__link span[aria-hidden]{ transition:none; }
  .aii-cov__card:hover, .aii-cov__card:focus-within{ transform:none; }
  .aii-cov__link:hover span[aria-hidden]{ transform:none; }
}

/* ============================================================
   6) SPECIALTY + CLOSING CTA
   ============================================================ */
.aii-spec{ padding:clamp(3rem,6vw,5.5rem) 1.25rem; background:transparent; }
.aii-spec__inner{ max-width:1180px; margin:0 auto; }
.aii-spec__head{ max-width:640px; margin:0 0 clamp(1.75rem,3vw,2.5rem); }
.aii-spec__eyebrow{ font-size:.82rem; letter-spacing:.16em; text-transform:uppercase; font-weight:600; color:var(--aii-cyan); margin:0 0 .65rem; }
.aii-spec__eyebrow--band{ font-size:.74rem; }
.aii-spec__title{ color:var(--aii-white); font-size:clamp(1.6rem,3vw,2.25rem); line-height:1.15; letter-spacing:-.01em; margin:0 0 .75rem; }
.aii-spec__lede{ color:var(--aii-chrome); font-size:1.02rem; line-height:1.6; margin:0; }
.aii-spec__grid{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(232px,1fr)); gap:clamp(.85rem,1.4vw,1.1rem); }
.aii-spec__tile{ padding:1.15rem 1.25rem; border-radius:14px; background:linear-gradient(rgba(10,12,16,.72),rgba(10,12,16,.72)),var(--aii-glass-bg); display:flex; flex-direction:column; gap:.55rem; transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.aii-spec__tile:hover{ transform:translateY(-3px); border-color:rgba(var(--aii-cyan-rgb),.45); box-shadow:0 12px 30px rgba(0,0,0,.45),0 0 0 1px rgba(var(--aii-cyan-rgb),.18); }
.aii-spec__chip{ width:38px; height:38px; border-radius:10px; display:inline-flex; align-items:center; justify-content:center; color:var(--aii-cyan); background:rgba(var(--aii-cyan-rgb),.10); border:1px solid rgba(var(--aii-cyan-rgb),.28); }
.aii-spec__chip svg{ display:block; }
.aii-spec__name{ color:var(--aii-white); font-size:1.05rem; line-height:1.25; margin:0; }
.aii-spec__desc{ color:var(--aii-chrome); font-size:.92rem; line-height:1.55; margin:0; }
.aii-spec__cta-band{ margin-top:clamp(1.75rem,3vw,2.75rem); padding:clamp(1.6rem,3vw,2.75rem); border-radius:20px; background:linear-gradient(rgba(10,12,16,.78),rgba(10,12,16,.78)),linear-gradient(120deg,rgba(var(--aii-blue-rgb),.16),rgba(var(--aii-cyan-rgb),.10)),var(--aii-glass-bg); display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:clamp(1.25rem,3vw,2.5rem); }
.aii-spec__cta-copy{ flex:1 1 360px; min-width:0; }
.aii-spec__cta-title{ color:var(--aii-white); font-size:clamp(1.35rem,2.4vw,1.85rem); line-height:1.2; letter-spacing:-.01em; margin:.55rem 0 .65rem; }
.aii-spec__cta-lede{ color:var(--aii-chrome); font-size:1rem; line-height:1.6; margin:0; max-width:46ch; }
.aii-spec__cta-actions{ flex:0 1 auto; display:flex; flex-direction:column; align-items:flex-start; gap:.9rem; }
.aii-spec__cta-primary{ display:inline-flex; align-items:center; justify-content:center; min-height:44px; text-decoration:none; }
.aii-spec__cta-call{ display:inline-flex; align-items:center; gap:.55rem; min-height:44px; padding:.55rem .25rem; color:var(--aii-chrome); font-size:.98rem; font-weight:500; text-decoration:underline; text-decoration-color:rgba(var(--aii-cyan-rgb),.5); text-underline-offset:3px; border-radius:12px; transition:color .25s ease,text-decoration-color .25s ease; }
.aii-spec__call-ico{ display:inline-flex; align-items:center; justify-content:center; color:var(--aii-cyan); }
.aii-spec__call-ico svg{ display:block; }
.aii-spec__cta-call:hover{ color:var(--aii-white); text-decoration-color:var(--aii-cyan); }
.aii-spec__phone{ color:var(--aii-white); }
.aii-spec a:focus-visible{ outline:2px solid #04121A; outline-offset:2px; box-shadow:0 0 0 4px var(--aii-cyan),0 0 0 6px rgba(4,18,26,.9); border-radius:12px; }
@media (max-width:560px){
  .aii-spec__cta-actions{ align-items:stretch; width:100%; }
  .aii-spec__cta-primary{ width:100%; }
}
@media (prefers-reduced-motion: reduce){
  .aii-spec__tile,.aii-spec__cta-call{ transition:none; }
  .aii-spec__tile:hover{ transform:none; }
}

/* ============================================================
   7) GET A QUOTE — intake form
   ============================================================ */
.aii-quote{ padding:clamp(2.5rem,6vw,5rem) clamp(1rem,4vw,2rem); background:var(--aii-obsidian); }
.aii-quote__inner{ max-width:1120px; margin:0 auto; display:grid; grid-template-columns:1fr 1.15fr; gap:clamp(1.5rem,4vw,3rem); align-items:start; }
@media (max-width:840px){ .aii-quote__inner{ grid-template-columns:1fr; } }
.aii-quote__intro{ position:sticky; top:calc(var(--aii-header-h) + 24px); }
@media (max-width:840px){ .aii-quote__intro{ position:static; } }
.aii-quote__eyebrow{ margin:0 0 .75rem; font-size:.82rem; letter-spacing:.16em; text-transform:uppercase; font-weight:600; color:var(--aii-cyan); }
.aii-quote__title{ margin:0 0 1rem; color:var(--aii-white); font-size:clamp(1.9rem,4vw,2.8rem); line-height:1.1; font-weight:700; letter-spacing:-.01em; }
.aii-quote__lead{ margin:0 0 1.5rem; color:var(--aii-chrome); font-size:1.05rem; line-height:1.65; max-width:46ch; }
.aii-quote__points{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.75rem; }
.aii-quote__point{ position:relative; padding-left:26px; color:var(--aii-chrome); font-size:.95rem; }
.aii-quote__point::before{ content:""; position:absolute; left:0; top:.45em; width:10px; height:10px; border-right:2px solid var(--aii-cyan); border-bottom:2px solid var(--aii-cyan); transform:rotate(45deg); }
.aii-quote__panel{ padding:clamp(1.5rem,3vw,2.25rem); background:linear-gradient(rgba(10,12,16,.62),rgba(10,12,16,.62)),var(--aii-glass-bg); }
.aii-quote__form{ display:grid; grid-template-columns:1fr 1fr; gap:1.1rem 1rem; }
.aii-quote__field{ display:flex; flex-direction:column; gap:.4rem; }
.aii-quote__field--full{ grid-column:1 / -1; }
.aii-quote__label{ font-size:.85rem; font-weight:600; color:var(--aii-white); letter-spacing:.01em; }
.aii-quote__req{ color:var(--aii-cyan); }
.aii-quote__input, .aii-quote__select, .aii-quote__textarea{
  width:100%; min-height:46px; padding:.7rem .85rem; border-radius:10px;
  background:rgba(10,12,16,.55); border:1px solid var(--aii-glass-border);
  color:var(--aii-white); font-size:.95rem; font-family:inherit;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.aii-quote__textarea{ min-height:110px; resize:vertical; line-height:1.5; }
.aii-quote__select{ appearance:none; -webkit-appearance:none; background-image:linear-gradient(45deg,transparent 50%,var(--aii-cyan) 50%),linear-gradient(135deg,var(--aii-cyan) 50%,transparent 50%); background-position:calc(100% - 20px) 50%, calc(100% - 14px) 50%; background-size:6px 6px, 6px 6px; background-repeat:no-repeat; padding-right:2.5rem; }
.aii-quote__input::placeholder, .aii-quote__textarea::placeholder{ color:var(--aii-chrome-dim); }
.aii-quote__input:focus, .aii-quote__select:focus, .aii-quote__textarea:focus{ outline:none; border-color:var(--aii-cyan); box-shadow:0 0 0 3px rgba(var(--aii-cyan-rgb),.25); }
.aii-quote__actions{ grid-column:1 / -1; display:flex; flex-wrap:wrap; align-items:center; gap:1rem; margin-top:.35rem; }
.aii-quote__submit{ min-height:48px; font-size:1rem; }
.aii-quote__fineprint{ grid-column:1 / -1; margin:.25rem 0 0; font-size:.8rem; color:var(--aii-chrome-dim); line-height:1.5; }
.aii-quote__form a:focus-visible, .aii-quote__submit:focus-visible{ outline:2px solid #04121A; outline-offset:2px; box-shadow:0 0 0 4px var(--aii-cyan), 0 0 0 6px rgba(4,18,26,.9); border-radius:12px; }
@media (max-width:520px){ .aii-quote__form{ grid-template-columns:1fr; } }

/* ============================================================
   8) AI NETWORK — Three.js scroll-reactive sphere
   ============================================================ */
.aii-net{
  position:relative; min-height:80vh; display:flex; align-items:center; justify-content:center;
  overflow:hidden; isolation:isolate;
  background:radial-gradient(circle at 50% 45%, #0a1622 0%, #060a12 58%, #04070e 100%);
}
.aii-net__canvas-wrap{ position:absolute; inset:0; z-index:0; }
#aii-net-canvas{ position:absolute; top:0; left:0; display:block; pointer-events:none; }
.aii-net__overlay{
  position:relative; z-index:2; text-align:center; max-width:720px;
  padding:clamp(2rem,6vh,4rem) clamp(1rem,4vw,2rem); pointer-events:none;
}
.aii-net__eyebrow{ margin:0 0 .6rem; font-size:.82rem; letter-spacing:.16em; text-transform:uppercase; font-weight:600; color:var(--aii-cyan); }
.aii-net__title{ margin:0 0 .75rem; color:var(--aii-white); font-weight:700; line-height:1.12; font-size:clamp(1.6rem,3.4vw,2.5rem); letter-spacing:-.01em; text-shadow:0 2px 28px rgba(4,7,14,0.85); }
.aii-net__sub{ margin:0 auto; max-width:46ch; color:var(--aii-chrome); font-size:clamp(.98rem,1.5vw,1.12rem); line-height:1.6; text-shadow:0 1px 18px rgba(4,7,14,0.9); }
@media (max-width:640px){ .aii-net{ min-height:70vh; } }
