/* IntelliMinds Digital — homepage art-direction layer.
   Implements Digital Design System v3.0 (Aug 2026).
   Scoped to the homepage only (loaded from index.html).
   Visual refinement only: no DOM, content, link or metadata changes. */

:root{
  /* v3.0 identity */
  --navy:#0B1F36;
  --navy-2:#152B45;
  --teal:#0B8F8C;
  --teal-2:#097370;
  --teal-glow:rgba(11,143,140,.14);
  --blue:#2B78B8;
  --amber:#F2B84B;

  /* v3.0 neutrals — most of the sophistication lives here */
  --bg:#F7F9FB;
  --surface:#FFFFFF;
  --surface-2:#F7F9FB;
  --ink:#172033;
  --ink-2:#172033;
  --body:#46546A;
  --muted:#718096;
  --border:#DCE3EA;
  --border-strong:#C6D0DA;

  --grad-hero:linear-gradient(180deg,#152B45 0%,#0B1F36 100%);
  --grad-text:linear-gradient(120deg,#0B1F36 0%,#0B8F8C 100%);

  --shadow-sm:0 1px 2px rgba(11,31,54,.04);
  --shadow-md:0 8px 20px -12px rgba(11,31,54,.14);
  --shadow-lg:0 22px 48px -30px rgba(11,31,54,.22);
  --shadow-glow:none;
  --radius:12px;
}

body{background:var(--bg);color:var(--body)}

/* ---------- 05 · Typography does most of the work ---------- */
h1,h2{letter-spacing:-.03em;color:var(--ink)}
h2{font-size:clamp(1.75rem,2.6vw,2.125rem);line-height:1.15;font-weight:700}
h3{font-size:1.2rem;line-height:1.3;letter-spacing:-.012em;color:var(--ink);font-weight:650}
p{color:var(--body)}
.section .lede{color:var(--body);font-size:1.0625rem;line-height:1.65;max-width:62ch}
.section > .container > h2{padding-bottom:0;margin-bottom:.85rem}
.section > .container > h2::after{display:none} /* hierarchy from type, not decoration */

/* Eyebrow / label: quiet metadata, not a badge */
.eyebrow,.eyebrow-icon{background:none;border:0;padding:0;font-size:.72rem;font-weight:700;
  letter-spacing:.14em;color:var(--teal);margin-bottom:.9rem}

/* ---------- Header ---------- */
.site-header{background:rgba(255,255,255,.82);border-bottom:1px solid var(--border)}
.nav a{font-size:.9rem;color:#4A5768}
.nav a::after{height:1.5px;background:var(--teal)}
.nav a[aria-current="page"]{color:var(--ink)}

/* ---------- 06 · Composition: section rhythm & whitespace ---------- */
.section{padding:7rem 0}
.section--alt{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.section--alt::before{background:none}
/* Remove decorative wave dividers between sections (v3.0: remove rather than add) */
.section + .section::before{display:none}

/* ---------- 05/09 · Hero: quiet, confident, no stock atmosphere ---------- */
.hero.hero-home{padding:8rem 0 6.5rem;background:linear-gradient(180deg,#FFFFFF 0%,#F7F9FB 100%);border-bottom:1px solid var(--border)}
.hero.hero-home::before{display:none} /* drop generic office photography */
.hero.hero-home::after{background:
  linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.88) 46%,rgba(247,249,251,.45) 100%),
  linear-gradient(to right,rgba(11,31,54,.04) 1px,transparent 1px),
  linear-gradient(to bottom,rgba(11,31,54,.04) 1px,transparent 1px);
  background-size:auto,72px 72px,72px 72px;opacity:.9}
.hero-home .hero-h1{font-size:clamp(2.4rem,4.6vw,3.9rem);letter-spacing:-.038em;line-height:1.03;color:var(--navy);max-width:16ch}
.hero-home p.lede{font-size:1.125rem;line-height:1.62;color:var(--body);max-width:56ch}
.hero-home .hero-cta-sub{color:var(--muted);font-size:.9rem;max-width:52ch;margin-top:1rem}
.hero-home .btn-row{margin-top:2.25rem;gap:.75rem}
.hero-home .btn{font-size:.925rem;padding:.8rem 1.3rem}

/* Trust chips: flatten to quiet metadata */
.trust-badges{margin-top:2.5rem;gap:.5rem}
.trust-badge{background:none;border:1px solid var(--border);box-shadow:none;color:var(--body);font-weight:500}
.trust-badge:hover{transform:none;box-shadow:none;border-color:var(--border-strong);color:var(--ink)}

/* Hero visual: keep the technical composition, remove the glow and constant motion */
.hero-visual-glow{display:none}
.hero-illustration circle[fill="#0d8a8a"]{display:none} /* stop continuously animating particles */
.hero-illustration{opacity:.9}
.hero-sat-icon{box-shadow:none;border-color:var(--border);border-radius:10px}
.hero-core-icon{box-shadow:none}
.float-card{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff;border-radius:12px;
  box-shadow:0 10px 28px -22px rgba(11,31,54,.35);animation:none}
.float-card-icon{background:rgba(11,143,140,.10);color:var(--teal)}
.float-card-live{color:var(--teal)}
.float-card-metric{color:var(--navy)}
.float-card-metric em{color:var(--teal)}

/* ---------- 10/11 · Buttons: teal primary, neutral secondary ---------- */
.btn{border-radius:8px;font-weight:600;
  transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}
.btn-primary{background:var(--teal);border-color:var(--teal);color:#fff;box-shadow:none}
.btn-primary:hover{background:var(--teal-2);border-color:var(--teal-2);color:#fff;transform:none;box-shadow:0 8px 20px -14px rgba(11,143,140,.9)}
.btn-secondary{background:#fff;border:1px solid var(--border-strong);color:var(--ink);box-shadow:none}
.btn-secondary:hover{background:#fff;color:var(--teal);border-color:var(--teal);transform:none;box-shadow:none}
:where(a,button,summary,input):focus-visible{outline:2px solid var(--teal);outline-offset:2px}

/* ---------- 10 · Cards: fewer, quieter ---------- */
.card,.usecase{border:1px solid var(--border);box-shadow:none;border-radius:var(--radius);padding:1.9rem}
.card:hover,.usecase:hover{transform:none;box-shadow:var(--shadow-md);border-color:var(--border-strong)}
.card::before,.usecase::before{display:none}
.card h3{margin-bottom:.5rem}

/* ---------- Technology strip ---------- */
.tech-strip{background:#fff;border-bottom:1px solid var(--border);padding:4rem 0}
.tech-logo{color:var(--muted);opacity:1}
.tech-logo:hover{color:var(--ink)}

/* ---------- Start here (recommended starting point) ---------- */
.start-here{background:#fff}
.start-here .start-badge{background:var(--navy);letter-spacing:.12em;border-radius:6px}
.start-here .split-headline span:last-child{color:var(--teal)}
.readiness-card{border:1px solid var(--border);box-shadow:none;border-radius:var(--radius)}
.readiness-bar i{background:var(--blue)} /* support blue = data/measurement */
/* SIGNAL: the single amber moment on the page — paired with text, never colour alone */
.readiness-total b{color:var(--navy);border-bottom:3px solid var(--amber);padding-bottom:2px}

/* ---------- Into production panel ---------- */
.infra-panel{border-radius:14px;box-shadow:none}
.op-badge{box-shadow:none;font-weight:500;color:var(--body)}
.op-badge:hover{transform:none;color:var(--ink);border-color:var(--border-strong)}
.p2p-home-cta{background:#fff!important;border-color:var(--border)!important;border-radius:12px!important}

/* ---------- 06 · ASSESS → BUILD → RUN reads as one system ---------- */
.help-grid{position:relative;gap:0;border:1px solid var(--border);border-radius:var(--radius);background:#fff;overflow:hidden}
.help-grid .help-card{border:0;border-radius:0;box-shadow:none;background:transparent;padding:2.25rem 2rem}
.help-grid .help-card + .help-card{border-left:1px solid var(--border)}
.help-grid .help-card:hover{box-shadow:none;background:#FBFCFD}
.help-grid .help-card h3{font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:var(--teal)}
.help-grid .help-card h3 a{color:inherit}
.help-icon{color:var(--navy)}
/* progression markers between the three stages */
@media (min-width:900px){
  .help-grid .help-card + .help-card::before{content:"";position:absolute;top:0;left:-5px;width:9px;height:9px;
    margin-top:2.55rem;border-top:1.5px solid var(--teal);border-right:1.5px solid var(--teal);
    transform:rotate(45deg);background:#fff}
  .help-grid .help-card{position:relative}
}
@media (max-width:899px){
  .help-grid .help-card + .help-card{border-left:0;border-top:1px solid var(--border)}
}

/* ---------- Links ---------- */
a{transition:color .15s ease}
a:hover{color:var(--teal-2)}

/* ---------- 07 · Signature dotted navigation (protected) ---------- */
@media (min-width:1200px){
  .im-secnav a::before{width:7px;height:7px;background:rgba(23,32,51,.20)}
  .im-secnav a:hover::before{background:rgba(11,143,140,.55)}
  .im-secnav a[aria-current="true"]::before{background:var(--teal);transform:scale(1.4);box-shadow:0 0 0 4px rgba(11,143,140,.10)}
  .im-secnav:hover,.im-secnav:focus-within{background:rgba(255,255,255,.9);box-shadow:var(--shadow-lg);border:1px solid var(--border)}
  .im-secnav:hover a,.im-secnav:focus-within a{color:var(--body)}
}

/* ---------- 15 · Responsive quality ---------- */
@media (max-width:900px){
  .section{padding:4.5rem 0}
  .hero.hero-home{padding:4.5rem 0 3.5rem}
  .hero-home .hero-h1{max-width:none}
}
@media (max-width:640px){
  .section{padding:3.75rem 0}
  .hero.hero-home{padding:3.5rem 0 3rem}
  .card,.usecase{padding:1.5rem}
  .help-grid .help-card{padding:1.75rem 1.5rem}
}

/* ---------- 14 · Quiet motion ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
}


/* ---------------------------------------------------------------
   Hero visual refinement — abstract data-flow field (v3.0)
   Decorative only: no DOM, content or navigation changes.
   --------------------------------------------------------------- */
.hero.hero-home{position:relative;overflow:hidden;
  background:
    radial-gradient(1100px 520px at 76% 10%, rgba(43,120,184,.09) 0%, rgba(43,120,184,0) 62%),
    radial-gradient(860px 480px at 96% 82%, rgba(11,143,140,.10) 0%, rgba(11,143,140,0) 60%),
    linear-gradient(180deg,#FFFFFF 0%,#F6F9FB 100%);}
.hero.hero-home > .container{position:relative;z-index:2}
.hero.hero-home::before{display:block;content:"";position:absolute;top:-4%;right:0;bottom:-4%;left:0;
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%20760%22%20width%3D%221440%22%20height%3D%22760%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22f%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%220%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%232B78B8%22%20stop-opacity%3D%220.05%22%2F%3E%3Cstop%20offset%3D%220.55%22%20stop-color%3D%22%232B78B8%22%20stop-opacity%3D%220.5%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%230B8F8C%22%20stop-opacity%3D%220.85%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%220%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%230B8F8C%22%20stop-opacity%3D%220.05%22%2F%3E%3Cstop%20offset%3D%220.55%22%20stop-color%3D%22%230B8F8C%22%20stop-opacity%3D%220.45%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%232B78B8%22%20stop-opacity%3D%220.8%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M-60%2040%20C%20240%2040%2C%20430%2040%2C%20580%20170%20S%20700%20300%2C%20806%20300%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%221.5%22%2F%3E%3Ccircle%20cx%3D%22802%22%20cy%3D%22300%22%20r%3D%223%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.75%22%2F%3E%3Cpath%20d%3D%22M-60%20140%20C%20240%20140%2C%20430%20140%2C%20580%20232%20S%20700%20324%2C%20806%20324%22%20fill%3D%22none%22%20stroke%3D%22url%28%23f%29%22%20stroke-width%3D%221.5%22%2F%3E%3Ccircle%20cx%3D%22802%22%20cy%3D%22324%22%20r%3D%223%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.75%22%2F%3E%3Cpath%20d%3D%22M-60%20240%20C%20240%20240%2C%20430%20240%2C%20580%20294%20S%20700%20348%2C%20806%20348%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%221.5%22%2F%3E%3Ccircle%20cx%3D%22802%22%20cy%3D%22348%22%20r%3D%223%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.75%22%2F%3E%3Cpath%20d%3D%22M-60%20340%20C%20240%20340%2C%20430%20340%2C%20580%20356%20S%20700%20372%2C%20806%20372%22%20fill%3D%22none%22%20stroke%3D%22url%28%23f%29%22%20stroke-width%3D%221.5%22%2F%3E%3Ccircle%20cx%3D%22802%22%20cy%3D%22372%22%20r%3D%223%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.75%22%2F%3E%3Cpath%20d%3D%22M-60%20440%20C%20240%20440%2C%20430%20440%2C%20580%20418%20S%20700%20396%2C%20806%20396%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%221.5%22%2F%3E%3Ccircle%20cx%3D%22802%22%20cy%3D%22396%22%20r%3D%223%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.75%22%2F%3E%3Cpath%20d%3D%22M-60%20540%20C%20240%20540%2C%20430%20540%2C%20580%20480%20S%20700%20420%2C%20806%20420%22%20fill%3D%22none%22%20stroke%3D%22url%28%23f%29%22%20stroke-width%3D%221.5%22%2F%3E%3Ccircle%20cx%3D%22802%22%20cy%3D%22420%22%20r%3D%223%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.75%22%2F%3E%3Cpath%20d%3D%22M-60%20640%20C%20240%20640%2C%20430%20640%2C%20580%20542%20S%20700%20444%2C%20806%20444%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%221.5%22%2F%3E%3Ccircle%20cx%3D%22802%22%20cy%3D%22444%22%20r%3D%223%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.75%22%2F%3E%3Cpath%20d%3D%22M-60%20740%20C%20240%20740%2C%20430%20740%2C%20580%20604%20S%20700%20468%2C%20806%20468%22%20fill%3D%22none%22%20stroke%3D%22url%28%23f%29%22%20stroke-width%3D%221.5%22%2F%3E%3Ccircle%20cx%3D%22802%22%20cy%3D%22468%22%20r%3D%223%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.75%22%2F%3E%3Crect%20x%3D%22463%22%20y%3D%22603%22%20width%3D%226%22%20height%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%232B78B8%22%20stroke-opacity%3D%220.3%22%2F%3E%3Ccircle%20cx%3D%22476%22%20cy%3D%22492%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Ccircle%20cx%3D%22520%22%20cy%3D%22631%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Crect%20x%3D%22194%22%20y%3D%22219%22%20width%3D%226%22%20height%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%232B78B8%22%20stroke-opacity%3D%220.3%22%2F%3E%3Ccircle%20cx%3D%22487%22%20cy%3D%22674%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Ccircle%20cx%3D%22190%22%20cy%3D%22126%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Crect%20x%3D%22457%22%20y%3D%22340%22%20width%3D%226%22%20height%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%232B78B8%22%20stroke-opacity%3D%220.3%22%2F%3E%3Ccircle%20cx%3D%22145%22%20cy%3D%22122%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Ccircle%20cx%3D%2242%22%20cy%3D%22639%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Crect%20x%3D%22405%22%20y%3D%22493%22%20width%3D%226%22%20height%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%232B78B8%22%20stroke-opacity%3D%220.3%22%2F%3E%3Ccircle%20cx%3D%22161%22%20cy%3D%22668%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%22571%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Crect%20x%3D%2264%22%20y%3D%2290%22%20width%3D%226%22%20height%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%232B78B8%22%20stroke-opacity%3D%220.3%22%2F%3E%3Ccircle%20cx%3D%2236%22%20cy%3D%22224%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Ccircle%20cx%3D%22247%22%20cy%3D%22644%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Crect%20x%3D%2230%22%20y%3D%22505%22%20width%3D%226%22%20height%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%232B78B8%22%20stroke-opacity%3D%220.3%22%2F%3E%3Ccircle%20cx%3D%22334%22%20cy%3D%22481%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Ccircle%20cx%3D%22200%22%20cy%3D%22561%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Crect%20x%3D%22239%22%20y%3D%22685%22%20width%3D%226%22%20height%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%232B78B8%22%20stroke-opacity%3D%220.3%22%2F%3E%3Ccircle%20cx%3D%22301%22%20cy%3D%22541%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Ccircle%20cx%3D%224%22%20cy%3D%22708%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Crect%20x%3D%2287%22%20y%3D%22498%22%20width%3D%226%22%20height%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%232B78B8%22%20stroke-opacity%3D%220.3%22%2F%3E%3Ccircle%20cx%3D%22284%22%20cy%3D%22446%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Ccircle%20cx%3D%2285%22%20cy%3D%22290%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Crect%20x%3D%22322%22%20y%3D%22265%22%20width%3D%226%22%20height%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%232B78B8%22%20stroke-opacity%3D%220.3%22%2F%3E%3Ccircle%20cx%3D%22295%22%20cy%3D%2260%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Ccircle%20cx%3D%2271%22%20cy%3D%22606%22%20r%3D%222.2%22%20fill%3D%22%230B8F8C%22%20fill-opacity%3D%220.26%22%2F%3E%3Crect%20x%3D%22110%22%20y%3D%22440%22%20width%3D%226%22%20height%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%232B78B8%22%20stroke-opacity%3D%220.3%22%2F%3E%3Ccircle%20cx%3D%22802%22%20cy%3D%22468%22%20r%3D%224.5%22%20fill%3D%22%23F2B84B%22%20fill-opacity%3D%220.85%22%2F%3E%3C%2Fsvg%3E");
  background-repeat:no-repeat;background-position:right center;background-size:100% auto;
  opacity:1;pointer-events:none;z-index:0;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.2) 0%,rgba(0,0,0,.6) 40%,#000 100%);
  mask-image:linear-gradient(90deg,rgba(0,0,0,.2) 0%,rgba(0,0,0,.6) 40%,#000 100%);
  animation:imHeroDrift 34s ease-in-out infinite alternate}
@keyframes imHeroDrift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-14px,-8px,0) scale(1.012)}}
.hero.hero-home::after{z-index:1;opacity:.45}
.hero-home .hero-copy{position:relative;z-index:2}
.hero-home .hero-copy::before{content:"";position:absolute;inset:-2rem -3.5rem;z-index:-1;
  background:radial-gradient(62% 58% at 32% 45%, rgba(255,255,255,.95) 0%, rgba(255,255,255,.75) 58%, rgba(255,255,255,0) 100%)}
.hero-home .hero-visual{position:relative;z-index:2}
.hero-home .hero-path{background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  box-shadow:0 1px 2px rgba(11,31,54,.05),0 24px 54px -24px rgba(11,31,54,.34)}
.hero-home .hero-path-steps li:last-child::before{box-shadow:0 0 0 4px rgba(11,143,140,.13)}
@media (max-width:900px){.hero.hero-home::before{opacity:.4;background-size:190% auto}
  .hero-home .hero-copy::before{display:none}}
@media (prefers-reduced-motion:reduce){.hero.hero-home::before{animation:none}}

/* ---------------------------------------------------------------
   Hero composition tightening + stronger data-flow presence
   (hero only — no other section is affected)
   --------------------------------------------------------------- */
.hero.hero-home{padding:5.75rem 0 5.25rem}
.hero-home .hero-h1{margin-top:.15rem}
.hero-home p.lede{margin-top:1rem;max-width:54ch}
.hero-home .btn-row{margin-top:1.9rem}
.hero-home .hero-cta-sub{margin-top:.85rem}
.hero-home .trust-badges{margin-top:1.9rem}

/* lines read as intentional, still light and premium */
.hero.hero-home::before{
  opacity:1;
  filter:saturate(1.08) contrast(1.15);
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.34) 0%,rgba(0,0,0,.72) 38%,#000 100%);
  mask-image:linear-gradient(90deg,rgba(0,0,0,.34) 0%,rgba(0,0,0,.72) 38%,#000 100%);
}
/* the flow resolves into the pathway panel: a teal seam on its leading edge */
.hero-home .hero-path{position:relative}
.hero-home .hero-path::before{content:"";position:absolute;top:14%;bottom:14%;left:-2px;width:2px;
  background:linear-gradient(180deg,rgba(11,143,140,0) 0%,rgba(11,143,140,.5) 24%,rgba(43,120,184,.5) 76%,rgba(43,120,184,0) 100%);
  border-radius:2px;pointer-events:none}
@media (max-width:900px){
  .hero.hero-home{padding:4rem 0 3.25rem}
  .hero-home .hero-path::before{display:none}
}

/* ---------------------------------------------------------------
   HERO v3.1 — designed composition (hero only)
   Layer 1 technical texture · Layer 2 system flow · Layer 3 content
   --------------------------------------------------------------- */
.hero.hero-home{
  padding:4.5rem 0 4.5rem;
  background:
    radial-gradient(920px 460px at 18% 8%, rgba(43,120,184,.07) 0%, rgba(43,120,184,0) 60%),
    radial-gradient(1000px 520px at 88% 78%, rgba(11,143,140,.10) 0%, rgba(11,143,140,0) 62%),
    linear-gradient(180deg,#FFFFFF 0%,#F4F8FA 100%);
}
/* retire the old faint flow field — replaced by the .hero-fx layer */
.hero.hero-home::before{display:none!important}
/* layer 1: fine technical grid, only as texture */
.hero.hero-home::after{z-index:1;opacity:.5;background:
  linear-gradient(to right,rgba(11,31,54,.05) 1px,transparent 1px),
  linear-gradient(to bottom,rgba(11,31,54,.05) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(120% 90% at 60% 45%,#000 20%,transparent 78%);
  mask-image:radial-gradient(120% 90% at 60% 45%,#000 20%,transparent 78%)}

/* layer 2: system flow */
.hero-fx{position:absolute;inset:-6% -0% -6% 0;z-index:1;pointer-events:none;overflow:hidden}
.hero-fx-svg{position:absolute;inset:0;width:100%;height:100%}
.hero-fx-lines{animation:imFxDrift 26s ease-in-out infinite alternate}
.hero-fx-ribbons{animation:imFxRibbon 30s ease-in-out infinite alternate;transform-origin:60% 50%}
.hero-fx-nodes circle:nth-child(6){animation:imFxPulse 4.5s ease-in-out infinite}
@keyframes imFxDrift{from{transform:translate3d(0,0,0)}to{transform:translate3d(-16px,-6px,0)}}
@keyframes imFxRibbon{from{transform:scale(1)}to{transform:scale(1.02) translate3d(-10px,4px,0)}}
@keyframes imFxPulse{0%,100%{opacity:.6;r:8}50%{opacity:.12;r:12}}

/* layer 3: content sits clearly above the field */
.hero.hero-home > .container{position:relative;z-index:3}
.hero-home .hero-copy::before{inset:-2.25rem -4rem;
  background:radial-gradient(60% 62% at 30% 46%, rgba(255,255,255,.94) 0%, rgba(255,255,255,.7) 55%, rgba(255,255,255,0) 100%)}

/* scale contrast: headline dominant, everything else deliberately quieter */
.hero-home .eyebrow-icon{margin-bottom:1.1rem}
.hero-home .hero-h1{font-size:clamp(2.5rem,5vw,4.15rem);line-height:1.0;letter-spacing:-.042em;margin-top:0}
.hero-home p.lede{font-size:1.0625rem;line-height:1.6;max-width:52ch;margin-top:1.15rem;color:#4B5A70}
.hero-home .btn-row{margin-top:1.75rem}
.hero-home .btn-primary{box-shadow:0 12px 26px -16px rgba(11,143,140,.85)}
.hero-home .hero-cta-sub{margin-top:.8rem;font-size:.855rem}
.hero-home .trust-badges{margin-top:1.6rem}
.hero-home .trust-badge{font-size:.78rem;padding:.34rem .6rem;color:#5A6879;background:rgba(255,255,255,.6)}

/* amber signature: a restrained underline mark behind the headline start */
.hero-home .hero-copy .eyebrow-icon{position:relative}
.hero-home .hero-h1{position:relative}
.hero-home .hero-h1::before{content:"";position:absolute;left:-1.35rem;top:.28em;bottom:.22em;width:3px;border-radius:3px;
  background:linear-gradient(180deg,rgba(43,120,184,.85) 0%,rgba(11,143,140,.85) 62%,rgba(242,184,75,.95) 100%)}

/* ---------- production pathway: the destination ---------- */
.hero-home .hero-visual{position:relative;z-index:3}
.hero-home .hero-path{
  background:linear-gradient(180deg,#FFFFFF 0%,#FBFDFD 100%);
  border:1px solid #D3DDE6;border-radius:16px;padding:1.5rem 1.5rem 1.25rem;
  backdrop-filter:none;-webkit-backdrop-filter:none;
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 2px 6px rgba(11,31,54,.05),
    0 36px 70px -34px rgba(11,31,54,.42),0 0 0 8px rgba(43,120,184,.035)}
.hero-home .hero-path::before{top:1.1rem;bottom:1.1rem;left:-1px;width:3px;border-radius:3px;
  background:linear-gradient(180deg,rgba(43,120,184,.65) 0%,rgba(11,143,140,.8) 60%,rgba(242,184,75,.95) 100%)}
.hero-home .hero-path-head{padding-bottom:.95rem;border-bottom:1px solid #E6ECF1}
.hero-home .hero-path-head b{font-size:.8rem;color:#0B1F36}
.hero-home .hero-path-head .dg-label{color:#8494A6}

/* stage hierarchy + colour progression through the pipeline */
.hero-home .hero-path-steps{counter-reset:hps;padding-top:.5rem}
.hero-home .hero-path-steps li{counter-increment:hps;padding:.6rem 0 .6rem 1.65rem;align-items:baseline}
.hero-home .hero-path-steps li::before{left:0;top:1.05rem;width:11px;height:11px;border-width:1.75px}
.hero-home .hero-path-steps li::after{left:5px;top:1.7rem;bottom:-.6rem;
  background:linear-gradient(180deg,#D7E1EA,#C3D2DE)}
.hero-home .hero-path-steps li:nth-child(1)::before{border-color:#7FA8CC}
.hero-home .hero-path-steps li:nth-child(2)::before{border-color:#5D97C4}
.hero-home .hero-path-steps li:nth-child(3)::before{border-color:#2B78B8}
.hero-home .hero-path-steps li:nth-child(4)::before{border-color:#1C8AA6}
.hero-home .hero-path-steps li:nth-child(5)::before{border-color:#0B8F8C}
.hero-home .hero-path-steps li:last-child::before{background:#0B8F8C;border-color:#0B8F8C;
  box-shadow:0 0 0 5px rgba(11,143,140,.12)}
.hero-home .hero-path-steps li .hps-name{font-size:.745rem;letter-spacing:.13em;color:#0B1F36;min-width:6.1rem}
.hero-home .hero-path-steps li .hps-note{font-size:.715rem;color:#7C8B9C}
/* SUPPORT = arrival */
.hero-home .hero-path-steps li:last-child{margin-top:.2rem;padding-top:.7rem;padding-bottom:.7rem;
  background:linear-gradient(90deg,rgba(242,184,75,.10) 0%,rgba(242,184,75,0) 72%);
  border-radius:9px;box-shadow:inset 0 0 0 1px rgba(242,184,75,.24)}
.hero-home .hero-path-steps li:last-child::before{left:.55rem}
.hero-home .hero-path-steps li:last-child .hps-name{color:#0B1F36}
.hero-home .hero-path-steps li:last-child .hps-note{color:#6C7B8C}
.hero-home .hero-path-steps li:nth-last-child(2)::after{display:block}

.hero-home .hero-path-foot{margin-top:1rem;padding-top:.9rem;border-top:1px solid #E6ECF1}
.hero-home .hero-path-foot .hpf-v{font-size:1.15rem}
.hero-home .hero-path-foot .hpf-v em{color:#0B8F8C}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .hero-fx{opacity:.75}
}
@media (max-width:900px){
  .hero.hero-home{padding:3.5rem 0 3rem;overflow:hidden}
  .hero-fx{inset:0;opacity:.42}
  .hero-fx-svg{transform:translateX(6%)}
  .hero-home .hero-h1::before{display:none}
  .hero-home .hero-path{padding:1.25rem 1.15rem 1.1rem;
    box-shadow:0 1px 4px rgba(11,31,54,.05),0 22px 44px -28px rgba(11,31,54,.35)}
  .hero-home .hero-path::before{display:block}
}
@media (max-width:640px){
  .hero-fx{opacity:.3}
  .hero-home .hero-path-steps li .hps-name{min-width:5.4rem}
}
@media (prefers-reduced-motion:reduce){
  .hero-fx-lines,.hero-fx-ribbons,.hero-fx-nodes circle{animation:none!important}
}

/* arrival marker on the pathway's leading edge (the single amber moment) */
.hero-home .hero-path::after{content:"";position:absolute;left:-5px;bottom:4.55rem;width:9px;height:9px;border-radius:50%;
  background:#F2B84B;box-shadow:0 0 0 5px rgba(242,184,75,.16);pointer-events:none}
@media (max-width:900px){.hero-home .hero-path::after{display:none}}

/* ---------------------------------------------------------------
   HERO v3.2 — restraint pass (hero only)
   Quieter ribbons · protected reading zone · finer accents
   --------------------------------------------------------------- */
/* ribbons become a supporting layer: lighter, thinner, softer edges */
.hero-fx-ribbons{opacity:.85;filter:blur(2px) saturate(1);transform-origin:62% 50%}
.hero-fx-ribbons path{transform:scaleY(.84);transform-origin:50% 50%;transform-box:fill-box}
/* engineering lines stay legible but recede slightly */
.hero-fx-lines{opacity:.82}
/* reading zone: the field opens up around headline, copy and CTAs,
   and stays strongest at the edges and into the pathway panel */
.hero-fx{
  -webkit-mask-image:radial-gradient(48% 52% at 26% 48%, rgba(0,0,0,.16) 0%, rgba(0,0,0,.34) 52%, rgba(0,0,0,.74) 76%, #000 100%);
  mask-image:radial-gradient(48% 52% at 26% 48%, rgba(0,0,0,.16) 0%, rgba(0,0,0,.34) 52%, rgba(0,0,0,.74) 76%, #000 100%);
}
/* the white scrim behind the copy no longer needs to fight the field */
.hero-home .hero-copy::before{
  background:radial-gradient(58% 60% at 30% 46%, rgba(255,255,255,.78) 0%, rgba(255,255,255,.45) 58%, rgba(255,255,255,0) 100%)}
/* finer, more integrated vertical accent beside the headline */
.hero-home .hero-h1::before{left:-1.15rem;top:.36em;bottom:.3em;width:1.5px;border-radius:2px;
  background:linear-gradient(180deg,rgba(43,120,184,0) 0%,rgba(43,120,184,.6) 18%,rgba(11,143,140,.72) 64%,rgba(242,184,75,.9) 100%)}
/* amber stays a single arrival signal */
.hero-fx-nodes circle:nth-child(7){stroke-opacity:.22}
@media (max-width:900px){
  .hero-fx{-webkit-mask-image:none;mask-image:none;opacity:.34}
  .hero-fx-ribbons{opacity:.45}
}
