/* Product Pages v4 — editorial flagship Hero for the ten new AI Transformation Labs. */

body[data-page="program"] .hero{
  min-height:880px;
  background:
    radial-gradient(circle at 82% 43%,rgba(183,124,66,.10),transparent 29%),
    linear-gradient(112deg,#090908 0%,#0c0b0a 58%,#15110e 100%);
}
body[data-page="program"] .hero-grid-bg{opacity:.13;background-size:12vw 12vw}
body[data-page="program"] .hero-layout{
  width:min(1480px,92vw);
  grid-template-columns:minmax(0,1.28fr) minmax(390px,.72fr);
  gap:0;
  align-items:stretch;
  padding:0;
  min-height:794px;
  border-left:1px solid rgba(226,173,104,.13);
  border-right:1px solid rgba(226,173,104,.13);
}
body[data-page="program"] .hero-copy{
  padding:72px clamp(42px,5vw,92px) 72px clamp(42px,6vw,106px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}
body[data-page="program"] .hero-status{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 34px;
  color:#b9824c;
  font-size:9px;
  letter-spacing:.22em;
  text-transform:uppercase;
}
body[data-page="program"] .hero-status span{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#d7a35e;
  box-shadow:0 0 0 8px rgba(183,124,66,.09);
}
body[data-page="program"] .eyebrow{
  margin:0 0 24px;
  color:#aaa39a;
  font-size:12px;
  letter-spacing:.28em;
}
body[data-page="program"] .hero h1{
  margin:0;
  max-width:890px;
  font-size:clamp(52px,5.45vw,86px);
  line-height:.96;
  letter-spacing:-.045em;
}
body[data-page="program"] .hero h1 span{
  margin-top:28px;
  max-width:850px;
  font-size:clamp(18px,1.45vw,24px);
  line-height:1.45;
  letter-spacing:-.015em;
  color:#9b958d;
}
body[data-page="program"] .hero-lead{
  margin:30px 0 0;
  max-width:800px;
  color:#8f8982;
  font-size:15px;
  line-height:1.78;
}
body[data-page="program"] .hero-role{display:none!important}
body[data-page="program"] .hero-meta{
  margin-top:38px;
  max-width:850px;
  border-top:1px solid rgba(255,255,255,.13);
}
body[data-page="program"] .hero-meta__row{
  display:grid;
  grid-template-columns:145px minmax(0,1fr);
  gap:24px;
  padding:16px 0;
  border-bottom:1px solid rgba(255,255,255,.13);
  align-items:start;
}
body[data-page="program"] .hero-meta__row span{
  padding-top:3px;
  color:#706b65;
  font-size:8px;
  letter-spacing:.18em;
  text-transform:uppercase;
}
body[data-page="program"] .hero-meta__row strong{
  color:#aaa49c;
  font-size:12px;
  line-height:1.55;
  font-weight:400;
}
body[data-page="program"] .hero-actions{margin-top:40px}
body[data-page="program"] .hero-actions .button{min-width:220px}
body[data-page="program"] .trust-line{display:none}

body[data-page="program"] .hero-visual{
  position:relative;
  display:grid;
  place-items:center;
  min-width:0;
  border-left:1px solid rgba(226,173,104,.13);
}
body[data-page="program"] .transformation-stage{
  width:100%;
  min-height:100%;
  padding:56px 34px;
  border:0;
  background:transparent;
  box-shadow:none;
  display:grid;
  place-items:center;
}
body[data-page="program"] .hero-index-card{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
body[data-page="program"] .hero-index-card__label{
  margin:0 0 36px;
  color:#777069;
  font-size:8px;
  letter-spacing:.28em;
  text-transform:uppercase;
}
body[data-page="program"] .hero-index-disc{
  position:relative;
  width:min(430px,30vw);
  aspect-ratio:1;
  border:1px solid rgba(226,173,104,.27);
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:radial-gradient(circle,rgba(183,124,66,.06),transparent 66%);
}
body[data-page="program"] .hero-index-disc::before{
  content:"";
  position:absolute;
  inset:16%;
  border:1px dashed rgba(226,173,104,.22);
  border-radius:50%;
}
body[data-page="program"] .hero-index-disc__family,
body[data-page="program"] .hero-index-disc strong,
body[data-page="program"] .hero-index-disc small{position:relative;z-index:2}
body[data-page="program"] .hero-index-disc__family{
  margin-bottom:20px;
  color:#77716b;
  font-size:9px;
  letter-spacing:.36em;
}
body[data-page="program"] .hero-index-disc strong{
  color:#e2ad68;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(72px,7vw,112px);
  line-height:.8;
  font-weight:400;
  letter-spacing:-.05em;
}
body[data-page="program"] .hero-index-disc small{
  margin-top:30px;
  color:#6e6862;
  font-size:8px;
  letter-spacing:.22em;
}
body[data-page="program"] .hero-index-card__project{
  max-width:430px;
  margin:36px 0 0;
  padding-top:22px;
  border-top:1px solid rgba(226,173,104,.13);
  color:#969088;
  font-size:11px;
  line-height:1.55;
}
body[data-page="program"] .hero-index-card__project span{
  display:block;
  margin-bottom:10px;
  color:#6d6761;
  font-size:8px;
  letter-spacing:.2em;
}

/* Metadata now lives in the Hero, so the old metric strip is intentionally hidden. */
body[data-page="program"] .proof-section{display:none}

/* Editorial rhythm for the body sections. */
body[data-page="program"] .section{padding:112px 0}
body[data-page="program"] .section-heading{margin-bottom:68px}
body[data-page="program"] .section-heading h2{font-size:clamp(40px,4.15vw,64px)}
body[data-page="program"] .topic-card,
body[data-page="program"] .change-card{transition:background .22s ease,transform .22s ease}
body[data-page="program"] .topic-card:hover,
body[data-page="program"] .change-card:hover{background:#f0e9dd;transform:translateY(-1px)}
body[data-page="program"] .gap-card{min-height:340px}
body[data-page="program"] .project-layout,
body[data-page="program"] .results-layout{border-color:rgba(38,31,24,.18)}

@media(max-width:1120px){
  body[data-page="program"] .hero-layout{grid-template-columns:1fr;min-height:auto}
  body[data-page="program"] .hero-copy{padding:78px 7vw 62px}
  body[data-page="program"] .hero-visual{border-left:0;border-top:1px solid rgba(226,173,104,.13);min-height:560px}
  body[data-page="program"] .hero-index-disc{width:min(390px,58vw)}
}
@media(max-width:700px){
  body[data-page="program"] .hero-layout{width:100%;border-left:0;border-right:0}
  body[data-page="program"] .hero-copy{padding:58px 6vw 50px}
  body[data-page="program"] .hero-status{margin-bottom:28px}
  body[data-page="program"] .hero h1{font-size:clamp(43px,13vw,62px)}
  body[data-page="program"] .hero-meta__row{grid-template-columns:1fr;gap:7px;padding:15px 0}
  body[data-page="program"] .hero-meta__row span{padding-top:0}
  body[data-page="program"] .hero-actions{flex-direction:column;align-items:stretch}
  body[data-page="program"] .hero-actions .button{width:100%;min-width:0}
  body[data-page="program"] .hero-visual{min-height:460px}
  body[data-page="program"] .transformation-stage{padding:42px 20px}
  body[data-page="program"] .hero-index-disc{width:min(310px,76vw)}
  body[data-page="program"] .section{padding:84px 0}
}


/* ==========================================================================
   PROGRAM PAGE · PROJECT BLOCK v5
   Premium final-project launchpad
   ========================================================================== */

body[data-page="program"] .project-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 24%,rgba(199,139,78,.09),transparent 28%),
    linear-gradient(135deg,#07111d 0%,#090d12 58%,#070809 100%);
  color:#f1eee6;
}
body[data-page="program"] .project-section:before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-190px;
  top:-170px;
  border:1px solid rgba(224,178,120,.12);
  border-radius:50%;
  box-shadow:
    0 0 0 48px rgba(224,178,120,.025),
    0 0 0 98px rgba(224,178,120,.018);
  pointer-events:none;
}
body[data-page="program"] .project-section .section-heading{
  position:relative;
  z-index:2;
}
body[data-page="program"] .project-section .section-heading h2{
  max-width:1120px;
  color:#f1eee6;
}
body[data-page="program"] .project-section .section-heading h2 span{
  color:#aaa59e;
}
body[data-page="program"] .project-layout{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  border:1px solid rgba(224,178,120,.18);
  background:rgba(5,8,11,.5);
  overflow:hidden;
}
body[data-page="program"] .project-layout:after{
  content:"";
  position:absolute;
  left:54%;
  top:50%;
  width:82px;
  height:1px;
  transform:translate(-50%,-50%);
  background:linear-gradient(90deg,rgba(224,178,120,.15),#e0b278,rgba(224,178,120,.15));
  box-shadow:0 0 12px rgba(224,178,120,.45);
  pointer-events:none;
}
body[data-page="program"] .project-main{
  position:relative;
  min-height:440px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:46px 52px;
  background:
    radial-gradient(circle at 12% 16%,rgba(199,139,78,.1),transparent 24%),
    linear-gradient(145deg,#08121c,#06090d 78%);
  color:#f1eee6;
}
body[data-page="program"] .project-main:before{
  content:"05";
  position:absolute;
  right:34px;
  top:26px;
  color:rgba(224,178,120,.12);
  font:400 clamp(78px,8vw,126px)/1 Georgia,"Times New Roman",serif;
  letter-spacing:-.05em;
}
body[data-page="program"] .project-main:after{
  content:"";
  position:absolute;
  left:52px;
  bottom:42px;
  width:110px;
  height:110px;
  border:1px solid rgba(224,178,120,.18);
  border-radius:50%;
  box-shadow:
    0 0 0 24px rgba(224,178,120,.025),
    0 0 28px rgba(224,178,120,.08);
  pointer-events:none;
}
body[data-page="program"] .project-main>span{
  position:relative;
  z-index:2;
  color:#e0b278;
  font-size:13px;
  line-height:1.35;
  letter-spacing:.12em;
  text-transform:uppercase;
}
body[data-page="program"] .project-main p{
  position:relative;
  z-index:2;
  max-width:780px;
  margin:78px 0 0;
  color:#f1eee6;
  font:400 clamp(30px,3vw,46px)/1.28 Georgia,"Times New Roman",serif;
  letter-spacing:-.025em;
}
body[data-page="program"] .project-deliverables{
  position:relative;
  min-height:440px;
  padding:42px 42px 34px;
  background:
    linear-gradient(180deg,rgba(12,22,31,.96),rgba(7,12,17,.98));
  color:#f1eee6;
  border-left:1px solid rgba(224,178,120,.12);
}
body[data-page="program"] .project-deliverables>span{
  display:block;
  color:#e0b278;
  font-size:13px;
  line-height:1.35;
  letter-spacing:.12em;
  text-transform:uppercase;
}
body[data-page="program"] .project-deliverables ul{
  counter-reset:project-output;
  list-style:none;
  margin:26px 0 0;
  padding:0;
  border-top:1px solid rgba(241,238,230,.1);
}
body[data-page="program"] .project-deliverables li{
  counter-increment:project-output;
  position:relative;
  min-height:64px;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) 16px;
  gap:14px;
  align-items:center;
  padding:13px 4px;
  border-bottom:1px solid rgba(241,238,230,.1);
  color:#c8c4bd;
  font-size:16px;
  line-height:1.5;
  transition:background .25s ease,color .25s ease,padding .25s ease;
}
body[data-page="program"] .project-deliverables li:before{
  content:counter(project-output,decimal-leading-zero);
  color:#d99d55;
  font:400 18px/1 Georgia,"Times New Roman",serif;
}
body[data-page="program"] .project-deliverables li:after{
  content:"";
  width:7px;
  height:7px;
  justify-self:end;
  border-radius:50%;
  border:1px solid rgba(224,178,120,.52);
  box-shadow:0 0 0 0 rgba(224,178,120,0);
  transition:background .25s ease,box-shadow .25s ease;
}
body[data-page="program"] .project-deliverables li:hover{
  padding-left:10px;
  padding-right:10px;
  background:linear-gradient(90deg,rgba(199,139,78,.09),rgba(199,139,78,.02));
  color:#f1eee6;
}
body[data-page="program"] .project-deliverables li:hover:after{
  background:#e0b278;
  box-shadow:0 0 8px #e0b278,0 0 18px rgba(224,178,120,.55);
}
body[data-page="program"] .project-main,
body[data-page="program"] .project-deliverables{
  transition:transform .4s ease,box-shadow .4s ease;
}
body[data-page="program"] .project-layout:hover .project-main{
  transform:translateX(-2px);
}
body[data-page="program"] .project-layout:hover .project-deliverables{
  transform:translateX(2px);
  box-shadow:-24px 0 60px rgba(0,0,0,.12);
}

@media(max-width:1000px){
  body[data-page="program"] .project-layout{
    grid-template-columns:1fr;
  }
  body[data-page="program"] .project-layout:after{display:none}
  body[data-page="program"] .project-main,
  body[data-page="program"] .project-deliverables{
    min-height:auto;
  }
  body[data-page="program"] .project-deliverables{
    border-left:0;
    border-top:1px solid rgba(224,178,120,.14);
  }
  body[data-page="program"] .project-layout:hover .project-main,
  body[data-page="program"] .project-layout:hover .project-deliverables{
    transform:none;
  }
}
@media(max-width:700px){
  body[data-page="program"] .project-main{
    padding:34px 26px 40px;
  }
  body[data-page="program"] .project-main:before{
    right:20px;
    top:18px;
    font-size:78px;
  }
  body[data-page="program"] .project-main:after{
    left:26px;
    bottom:30px;
    width:82px;
    height:82px;
  }
  body[data-page="program"] .project-main p{
    margin-top:62px;
    font-size:30px;
    line-height:1.32;
  }
  body[data-page="program"] .project-deliverables{
    padding:32px 24px 28px;
  }
  body[data-page="program"] .project-deliverables li{
    grid-template-columns:40px minmax(0,1fr) 14px;
    font-size:16px;
  }
}


/* ==========================================================================
   PROGRAM PAGE · TOOLS CONSTELLATION v1
   Task-driven technology stack
   ========================================================================== */

body[data-page="program"] .tools-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 16% 24%,rgba(191,132,70,.08),transparent 26%),
    radial-gradient(circle at 86% 72%,rgba(18,41,61,.12),transparent 32%),
    #080b0e;
  color:#f1eee6;
}
body[data-page="program"] .tools-section:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);
}
body[data-page="program"] .tools-section .shell{position:relative;z-index:2}
body[data-page="program"] .tools-section .section-heading h2{color:#f1eee6}
body[data-page="program"] .tools-section .section-heading h2 span{color:#aaa59e}

body[data-page="program"] .tool-constellation{
  display:grid;
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
  border:1px solid rgba(224,178,120,.18);
  background:rgba(5,8,11,.62);
  min-height:520px;
  overflow:hidden;
}

body[data-page="program"] .tool-core{
  position:relative;
  min-height:520px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:52px 46px;
  border-right:1px solid rgba(224,178,120,.13);
  background:
    radial-gradient(circle at 50% 42%,rgba(219,161,94,.12),transparent 27%),
    linear-gradient(145deg,#07111a,#06090d 82%);
}
body[data-page="program"] .tool-core:before,
body[data-page="program"] .tool-core:after{
  content:"";
  position:absolute;
  left:50%;
  top:42%;
  border:1px solid rgba(224,178,120,.14);
  border-radius:50%;
  transform:translate(-50%,-50%);
  pointer-events:none;
}
body[data-page="program"] .tool-core:before{width:210px;height:210px}
body[data-page="program"] .tool-core:after{width:310px;height:310px;border-style:dashed;opacity:.58}

body[data-page="program"] .tool-core__eyebrow{
  position:relative;
  z-index:3;
  margin-bottom:34px;
  color:#d99d55;
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
body[data-page="program"] .tool-core__node{
  position:relative;
  z-index:3;
  width:128px;
  height:128px;
  margin:0 auto 34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(224,178,120,.62);
  border-radius:50%;
  background:radial-gradient(circle,rgba(21,28,34,.95),rgba(7,10,13,.98));
  box-shadow:0 0 36px rgba(224,178,120,.16),inset 0 0 26px rgba(224,178,120,.08);
}
body[data-page="program"] .tool-core__node i{
  position:absolute;
  right:9px;
  top:50%;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#efbd79;
  box-shadow:0 0 8px #efbd79,0 0 18px rgba(239,189,121,.72);
  animation:tool-pulse 2.2s ease-in-out infinite;
}
body[data-page="program"] .tool-core__node strong{
  color:#f1eee6;
  font-size:16px;
  letter-spacing:.1em;
  font-weight:600;
}
@keyframes tool-pulse{
  0%,100%{transform:scale(.8);opacity:.7}
  50%{transform:scale(1.22);opacity:1}
}
body[data-page="program"] .tool-core h3{
  position:relative;
  z-index:3;
  margin:0;
  color:#f1eee6;
  font:400 clamp(28px,2.5vw,40px)/1.2 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}
body[data-page="program"] .tool-core p{
  position:relative;
  z-index:3;
  margin:18px 0 0;
  color:#aaa59e;
  font-size:16px;
  line-height:1.65;
}
body[data-page="program"] .tool-core__flow{
  position:relative;
  z-index:3;
  margin-top:30px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  color:#847f78;
  font-size:13px;
}
body[data-page="program"] .tool-core__flow span{
  padding:7px 10px;
  border:1px solid rgba(241,238,230,.1);
  border-radius:999px;
  background:rgba(7,11,15,.72);
}
body[data-page="program"] .tool-core__flow b{
  color:#d99d55;
  font-weight:400;
}

body[data-page="program"] .tool-clusters{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-content:stretch;
  background:
    radial-gradient(circle at 34% 20%,rgba(224,178,120,.04),transparent 24%),
    #070a0d;
}
body[data-page="program"] .tool-cluster{
  min-height:170px;
  padding:28px 30px;
  border-right:1px solid rgba(241,238,230,.08);
  border-bottom:1px solid rgba(241,238,230,.08);
  background:rgba(8,12,16,.7);
  opacity:0;
  transform:translateX(-18px);
  transition:
    opacity .38s ease var(--tool-delay,0ms),
    transform .48s cubic-bezier(.2,.82,.22,1) var(--tool-delay,0ms),
    background .24s ease,
    box-shadow .24s ease;
}
body[data-page="program"] .tool-constellation.is-visible .tool-cluster{
  opacity:1;
  transform:none;
}
body[data-page="program"] .tool-cluster:hover{
  background:
    linear-gradient(135deg,rgba(190,130,68,.1),rgba(8,12,16,.82));
  box-shadow:inset 0 0 0 1px rgba(224,178,120,.16);
}
body[data-page="program"] .tool-cluster__head{
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  gap:10px;
  align-items:center;
}
body[data-page="program"] .tool-cluster__head>span{
  color:#e0b278;
  font-size:18px;
  text-align:center;
}
body[data-page="program"] .tool-cluster__head strong{
  color:#dedad3;
  font-size:14px;
  line-height:1.3;
  font-weight:500;
}
body[data-page="program"] .tool-chip-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:20px;
}
body[data-page="program"] .tool-chip{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 11px;
  border:1px solid rgba(241,238,230,.11);
  border-radius:999px;
  background:rgba(5,8,11,.78);
  color:#b9b6b0;
  font-size:13px;
  line-height:1.25;
  transition:border-color .22s ease,color .22s ease,box-shadow .22s ease,transform .22s ease;
}
body[data-page="program"] .tool-chip:hover{
  border-color:rgba(224,178,120,.4);
  color:#f1eee6;
  box-shadow:0 0 16px rgba(224,178,120,.09);
  transform:translateY(-1px);
}

@media(max-width:1000px){
  body[data-page="program"] .tool-constellation{grid-template-columns:1fr}
  body[data-page="program"] .tool-core{
    min-height:auto;
    border-right:0;
    border-bottom:1px solid rgba(224,178,120,.13);
  }
}
@media(max-width:700px){
  body[data-page="program"] .tool-core{padding:38px 24px}
  body[data-page="program"] .tool-core__node{
    width:104px;
    height:104px;
    margin-bottom:28px;
  }
  body[data-page="program"] .tool-clusters{grid-template-columns:1fr}
  body[data-page="program"] .tool-cluster{
    min-height:auto;
    padding:24px 22px;
    border-right:0;
  }
}
@media(prefers-reduced-motion:reduce){
  body[data-page="program"] .tool-core__node i{animation:none}
  body[data-page="program"] .tool-cluster{
    opacity:1;
    transform:none;
    transition:none;
  }
}


/* ==========================================================================
   PROGRAM PAGE · TOOLS INTEGRATION ARCHITECTURE v3
   Problem → living integration system → solution
   ========================================================================== */

body[data-page="program"] .tools-section{
  scroll-margin-top:118px;
  padding-top:138px;
}

body[data-page="program"] .tool-workflow{
  position:relative;
  min-height:760px;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(224,178,120,.2);
  background:
    radial-gradient(circle at 14% 50%,rgba(211,151,84,.105),transparent 28%),
    radial-gradient(circle at 58% 46%,rgba(19,47,68,.24),transparent 38%),
    radial-gradient(circle at 88% 50%,rgba(214,153,86,.055),transparent 24%),
    linear-gradient(135deg,#07111b 0%,#060a0f 58%,#08090b 100%);
  box-shadow:0 34px 90px rgba(0,0,0,.24);
}

body[data-page="program"] .tool-workflow__grid{
  position:absolute;
  inset:0;
  z-index:0;
  background-image:
    radial-gradient(circle,rgba(224,178,120,.17) 1px,transparent 1.1px),
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:34px 34px,68px 68px,68px 68px;
  opacity:.42;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.75),rgba(0,0,0,.94));
  pointer-events:none;
}

body[data-page="program"] .tool-workflow__orbit{
  position:absolute;
  z-index:1;
  left:54%;
  top:50%;
  border-radius:50%;
  transform:translate(-50%,-50%);
  pointer-events:none;
}
body[data-page="program"] .tool-workflow__orbit--one{
  width:690px;
  height:690px;
  border:1px dashed rgba(224,178,120,.105);
  box-shadow:0 0 0 74px rgba(224,178,120,.012);
}
body[data-page="program"] .tool-workflow__orbit--two{
  width:430px;
  height:430px;
  border:1px solid rgba(145,160,170,.075);
  box-shadow:
    0 0 0 36px rgba(145,160,170,.018),
    0 0 0 118px rgba(224,178,120,.008);
}

body[data-page="program"] .tool-workflow__status{
  position:absolute;
  right:22px;
  top:20px;
  z-index:9;
  display:flex;
  align-items:center;
  gap:9px;
  padding:8px 11px;
  border:1px solid rgba(224,178,120,.16);
  border-radius:999px;
  background:rgba(5,9,13,.78);
  color:#8f938f;
  font-size:10px;
  line-height:1;
  letter-spacing:.12em;
  backdrop-filter:blur(8px);
}
body[data-page="program"] .tool-workflow__status span{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#d99d55;
  box-shadow:0 0 9px rgba(217,157,85,.85);
}

body[data-page="program"] .tool-workflow__bus-label{
  position:absolute;
  left:36.8%;
  top:30px;
  z-index:8;
  transform:translateX(-50%);
  color:rgba(224,178,120,.52);
  font-size:9px;
  line-height:1;
  letter-spacing:.18em;
  writing-mode:vertical-rl;
  text-orientation:mixed;
  pointer-events:none;
}

body[data-page="program"] .tool-workflow-source{
  position:absolute;
  left:4.6%;
  top:50%;
  z-index:6;
  width:255px;
  transform:translateY(-50%);
}
body[data-page="program"] .tool-workflow-source__eyebrow{
  display:block;
  margin:0 0 12px;
  color:#e0b278;
  font-size:12px;
  line-height:1.3;
  letter-spacing:.16em;
}
body[data-page="program"] .tool-workflow-source__meta{
  margin-bottom:30px;
  color:#727a7e;
  font-size:9px;
  line-height:1.4;
  letter-spacing:.16em;
}
body[data-page="program"] .tool-workflow-source__orb{
  position:relative;
  width:168px;
  height:168px;
  display:grid;
  place-items:center;
  border:1px solid rgba(224,178,120,.64);
  border-radius:50%;
  background:
    radial-gradient(circle at 44% 42%,rgba(49,65,74,.36),transparent 34%),
    radial-gradient(circle,rgba(20,31,39,.97),rgba(5,9,12,.99) 72%);
  box-shadow:
    0 0 0 28px rgba(224,178,120,.023),
    0 0 0 60px rgba(224,178,120,.012),
    0 0 38px rgba(224,178,120,.13);
  transition:border-color .28s ease,box-shadow .28s ease,transform .28s ease;
}
body[data-page="program"] .tool-workflow-source__orb:before,
body[data-page="program"] .tool-workflow-source__orb:after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
body[data-page="program"] .tool-workflow-source__orb:before{
  inset:-27px;
  border:1px solid rgba(224,178,120,.13);
}
body[data-page="program"] .tool-workflow-source__orb:after{
  inset:-60px;
  border:1px dashed rgba(224,178,120,.095);
}
body[data-page="program"] .tool-workflow-source__orb strong{
  color:#f2eee6;
  font:400 18px/1 Georgia,"Times New Roman",serif;
  letter-spacing:.1em;
}
body[data-page="program"] .tool-workflow-source__orb i{
  position:absolute;
  right:-6px;
  top:50%;
  width:11px;
  height:11px;
  border-radius:50%;
  transform:translateY(-50%);
  background:#efbd79;
  box-shadow:0 0 8px #efbd79,0 0 19px rgba(239,189,121,.75);
  animation:tool-source-pulse 2s ease-in-out infinite;
}
@keyframes tool-source-pulse{
  0%,100%{transform:translateY(-50%) scale(.82);opacity:.72}
  50%{transform:translateY(-50%) scale(1.18);opacity:1}
}
body[data-page="program"] .tool-workflow-source p{
  margin:34px 0 0;
  max-width:238px;
  color:#9ca09f;
  font-size:14px;
  line-height:1.62;
}
body[data-page="program"] .tool-workflow-source.is-active .tool-workflow-source__orb{
  border-color:rgba(239,189,121,.88);
  box-shadow:
    0 0 0 28px rgba(224,178,120,.03),
    0 0 0 60px rgba(224,178,120,.014),
    0 0 50px rgba(224,178,120,.21);
}

body[data-page="program"] .tool-workflow__lines{
  position:absolute;
  inset:0;
  z-index:2;
  width:100%;
  height:100%;
  pointer-events:none;
}
body[data-page="program"] .tool-workflow-link path{
  fill:none;
  stroke:rgba(147,159,166,.22);
  stroke-width:1.2;
  vector-effect:non-scaling-stroke;
  transition:stroke .25s ease,filter .25s ease,stroke-width .25s ease,opacity .25s ease;
}
body[data-page="program"] .tool-workflow-link.is-active path{
  stroke:#dfa95f;
  stroke-width:1.85;
  filter:drop-shadow(0 0 5px rgba(223,169,95,.58));
}
body[data-page="program"] .tool-workflow-pulse{
  fill:#f3bf79;
  opacity:0;
  filter:drop-shadow(0 0 5px #f3bf79) drop-shadow(0 0 12px rgba(243,191,121,.72));
  transition:opacity .2s ease;
}
body[data-page="program"] .tool-workflow-link.is-active .tool-workflow-pulse{opacity:1}
body[data-page="program"] .tool-workflow-pulse--out{fill:#dfad69}

body[data-page="program"] .tool-workflow-backbone path{
  fill:none;
  stroke:rgba(224,178,120,.18);
  stroke-width:1.15;
  vector-effect:non-scaling-stroke;
  transition:stroke .28s ease,filter .28s ease,stroke-width .28s ease;
}
body[data-page="program"] .tool-workflow-backbone .tool-workflow-bus-main{
  stroke:rgba(224,178,120,.29);
  stroke-width:1.4;
}
body[data-page="program"] .tool-workflow.is-route-active .tool-workflow-backbone .tool-workflow-bus-main{
  stroke:rgba(235,181,108,.72);
  stroke-width:1.75;
  filter:drop-shadow(0 0 5px rgba(224,178,120,.42));
}
body[data-page="program"] .tool-workflow-bus-stub.is-active{
  stroke:#e0ad65!important;
  stroke-width:1.85!important;
  filter:drop-shadow(0 0 5px rgba(224,173,101,.55));
}
body[data-page="program"] .tool-workflow-bus-pulse{
  fill:#edb974;
  opacity:0;
  filter:drop-shadow(0 0 5px #edb974) drop-shadow(0 0 12px rgba(237,185,116,.58));
  transition:opacity .25s ease;
}
body[data-page="program"] .tool-workflow.is-route-active .tool-workflow-bus-pulse{opacity:1}

body[data-page="program"] .tool-workflow__nodes{
  position:absolute;
  inset:0;
  z-index:5;
  pointer-events:none;
}
body[data-page="program"] .tool-workflow-node{
  position:absolute;
  left:42.3%;
  top:var(--node-top);
  width:min(360px,28vw);
  min-height:90px;
  transform:translateY(-50%);
  padding:14px 18px 14px 14px;
  border:1px solid rgba(241,238,230,.13);
  border-radius:18px;
  background:
    linear-gradient(145deg,rgba(15,21,27,.96),rgba(7,11,15,.95));
  box-shadow:0 14px 34px rgba(0,0,0,.2);
  pointer-events:auto;
  cursor:pointer;
  outline:none;
  transition:
    transform .26s ease,
    border-color .26s ease,
    box-shadow .26s ease,
    background .26s ease,
    opacity .26s ease;
}
body[data-page="program"] .tool-workflow-node.is-connected{
  border-color:rgba(224,178,120,.16);
}
body[data-page="program"] .tool-workflow-node:hover,
body[data-page="program"] .tool-workflow-node:focus-visible,
body[data-page="program"] .tool-workflow-node.is-active{
  transform:translateY(-50%) translateX(8px);
  border-color:rgba(224,178,120,.58);
  background:
    radial-gradient(circle at 8% 50%,rgba(218,157,91,.12),transparent 28%),
    linear-gradient(135deg,rgba(50,35,23,.5),rgba(10,14,18,.98) 62%);
  box-shadow:
    0 0 0 1px rgba(224,178,120,.07),
    0 18px 42px rgba(0,0,0,.28),
    0 0 26px rgba(224,178,120,.09);
}
body[data-page="program"] .tool-workflow-node__head{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:13px;
  align-items:center;
}
body[data-page="program"] .tool-workflow-node__icon-wrap{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:1px solid rgba(224,178,120,.32);
  border-radius:50%;
  color:#e0b278;
  background:rgba(5,9,13,.78);
  box-shadow:inset 0 0 18px rgba(224,178,120,.035);
  transition:border-color .24s ease,box-shadow .24s ease,background .24s ease;
}
body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__icon-wrap{
  border-color:rgba(239,189,121,.76);
  background:rgba(25,20,14,.86);
  box-shadow:0 0 18px rgba(224,178,120,.12),inset 0 0 18px rgba(224,178,120,.05);
}
body[data-page="program"] .tool-workflow-node__icon{
  width:25px;
  height:25px;
}
body[data-page="program"] .tool-workflow-node__head strong{
  display:block;
  color:#efebe4;
  font-size:14px;
  line-height:1.25;
  font-weight:600;
}
body[data-page="program"] .tool-workflow-node__head small{
  display:block;
  margin-top:5px;
  color:#7f888b;
  font-size:10px;
  line-height:1.3;
  letter-spacing:.035em;
}
body[data-page="program"] .tool-workflow-node__port{
  position:absolute;
  top:50%;
  width:10px;
  height:10px;
  border-radius:50%;
  transform:translateY(-50%);
  border:1px solid rgba(224,178,120,.56);
  background:#0a0f13;
  box-shadow:0 0 0 3px rgba(7,10,13,.88);
  transition:background .22s ease,box-shadow .22s ease,border-color .22s ease;
}
body[data-page="program"] .tool-workflow-node__port--left{left:-6px}
body[data-page="program"] .tool-workflow-node__port--right{right:-6px}
body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__port{
  border-color:#efbd79;
  background:#efbd79;
  box-shadow:0 0 0 3px rgba(7,10,13,.9),0 0 9px #efbd79,0 0 18px rgba(239,189,121,.5);
}
body[data-page="program"] .tool-workflow-node__chips{
  max-height:0;
  overflow:hidden;
  opacity:0;
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:0 0 0 65px;
  transition:max-height .34s ease,opacity .26s ease,margin-top .3s ease;
}
body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__chips{
  max-height:118px;
  margin-top:12px;
  opacity:1;
}
body[data-page="program"] .tool-workflow-node__chips span{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 9px;
  border:1px solid rgba(241,238,230,.11);
  border-radius:999px;
  background:rgba(4,7,10,.88);
  color:#bcb9b3;
  font-size:11px;
  line-height:1.2;
}
body[data-page="program"] .tool-workflow-node__chips .tool-workflow-node__empty{
  color:#777f82;
  font-style:italic;
}

body[data-page="program"] .tool-workflow-result{
  position:absolute;
  right:3.2%;
  top:50%;
  z-index:6;
  width:252px;
  transform:translateY(-50%);
  padding:31px 28px 28px;
  border:1px solid rgba(224,178,120,.4);
  border-radius:22px;
  background:
    radial-gradient(circle at 50% 0%,rgba(224,178,120,.08),transparent 34%),
    linear-gradient(145deg,rgba(18,29,38,.98),rgba(6,10,14,.99));
  box-shadow:0 18px 44px rgba(0,0,0,.24),0 0 30px rgba(224,178,120,.055);
  transition:border-color .28s ease,box-shadow .28s ease,transform .28s ease;
}
body[data-page="program"] .tool-workflow-result__port{
  position:absolute;
  left:-6px;
  top:50%;
  width:11px;
  height:11px;
  border-radius:50%;
  transform:translateY(-50%);
  border:1px solid rgba(224,178,120,.58);
  background:#0a0f13;
  box-shadow:0 0 0 3px rgba(7,10,13,.9);
  transition:background .22s ease,box-shadow .22s ease,border-color .22s ease;
}
body[data-page="program"] .tool-workflow-result>span{
  display:block;
  margin-bottom:13px;
  color:#d99d55;
  font-size:10px;
  line-height:1.2;
  letter-spacing:.14em;
}
body[data-page="program"] .tool-workflow-result>strong{
  display:block;
  color:#f4efe6;
  font:400 30px/1 Georgia,"Times New Roman",serif;
  letter-spacing:.035em;
}
body[data-page="program"] .tool-workflow-result p{
  margin:18px 0 0;
  color:#a3a7a5;
  font-size:13px;
  line-height:1.55;
}
body[data-page="program"] .tool-workflow-result ul{
  list-style:none;
  margin:20px 0 0;
  padding:15px 0 0;
  border-top:1px solid rgba(241,238,230,.09);
}
body[data-page="program"] .tool-workflow-result li{
  position:relative;
  margin-top:9px;
  padding-left:16px;
  color:#bbb8b1;
  font-size:12px;
  line-height:1.4;
}
body[data-page="program"] .tool-workflow-result li:before{
  content:"";
  position:absolute;
  left:0;
  top:.52em;
  width:5px;
  height:5px;
  border-radius:50%;
  background:rgba(224,178,120,.72);
  box-shadow:0 0 8px rgba(224,178,120,.32);
}
body[data-page="program"] .tool-workflow-result.is-active{
  transform:translateY(-50%) scale(1.018);
  border-color:rgba(239,189,121,.76);
  box-shadow:
    0 22px 54px rgba(0,0,0,.3),
    0 0 36px rgba(224,178,120,.15),
    inset 0 0 32px rgba(224,178,120,.025);
}
body[data-page="program"] .tool-workflow-result.is-active .tool-workflow-result__port{
  border-color:#efbd79;
  background:#efbd79;
  box-shadow:0 0 0 3px rgba(7,10,13,.9),0 0 9px #efbd79,0 0 19px rgba(239,189,121,.58);
}

body[data-page="program"] .tool-workflow__legend{
  position:absolute;
  left:4.6%;
  bottom:21px;
  z-index:8;
  display:flex;
  align-items:center;
  gap:9px;
  color:#777f81;
  font-size:11px;
  line-height:1.3;
}
body[data-page="program"] .tool-workflow__legend b{
  color:#d99d55;
  font-weight:400;
}

@media(max-width:1180px){
  body[data-page="program"] .tool-workflow-node{
    left:40.5%;
    width:31vw;
  }
  body[data-page="program"] .tool-workflow-result{
    right:2%;
    width:230px;
  }
  body[data-page="program"] .tool-workflow-source{left:3.2%}
  body[data-page="program"] .tool-workflow__bus-label{left:36%}
}

@media(max-width:900px){
  body[data-page="program"] .tools-section{
    padding-top:112px;
    scroll-margin-top:96px;
  }
  body[data-page="program"] .tool-workflow{
    min-height:0;
    padding:28px 18px 24px;
  }
  body[data-page="program"] .tool-workflow__grid{opacity:.25}
  body[data-page="program"] .tool-workflow__orbit--one{
    width:520px;
    height:520px;
    opacity:.46;
  }
  body[data-page="program"] .tool-workflow__orbit--two{display:none}
  body[data-page="program"] .tool-workflow__lines,
  body[data-page="program"] .tool-workflow__bus-label{display:none}
  body[data-page="program"] .tool-workflow__status{
    position:relative;
    top:auto;
    right:auto;
    width:max-content;
    margin:0 0 24px;
  }
  body[data-page="program"] .tool-workflow-source,
  body[data-page="program"] .tool-workflow-result{
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    width:auto;
    transform:none;
  }
  body[data-page="program"] .tool-workflow-source{
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    gap:10px 20px;
    align-items:center;
    margin-bottom:24px;
  }
  body[data-page="program"] .tool-workflow-source__eyebrow,
  body[data-page="program"] .tool-workflow-source__meta{
    grid-column:1/-1;
    margin:0;
  }
  body[data-page="program"] .tool-workflow-source__meta{margin-bottom:8px}
  body[data-page="program"] .tool-workflow-source__orb{
    width:104px;
    height:104px;
  }
  body[data-page="program"] .tool-workflow-source__orb:before{inset:-12px}
  body[data-page="program"] .tool-workflow-source__orb:after{inset:-27px}
  body[data-page="program"] .tool-workflow-source p{
    margin:0;
    max-width:none;
  }
  body[data-page="program"] .tool-workflow__nodes{
    position:relative;
    inset:auto;
    display:grid;
    gap:10px;
    margin:24px 0;
  }
  body[data-page="program"] .tool-workflow-node{
    position:relative;
    left:auto;
    top:auto;
    width:auto;
    min-height:0;
    transform:none;
  }
  body[data-page="program"] .tool-workflow-node:hover,
  body[data-page="program"] .tool-workflow-node:focus-visible,
  body[data-page="program"] .tool-workflow-node.is-active{
    transform:none;
  }
  body[data-page="program"] .tool-workflow-node__port{display:none}
  body[data-page="program"] .tool-workflow-node__chips{
    margin-left:65px;
  }
  body[data-page="program"] .tool-workflow-result{
    margin-top:20px;
    padding:28px 24px;
  }
  body[data-page="program"] .tool-workflow-result.is-active{
    transform:none;
  }
  body[data-page="program"] .tool-workflow-result__port{display:none}
  body[data-page="program"] .tool-workflow__legend{
    position:relative;
    left:auto;
    bottom:auto;
    margin-top:20px;
    flex-wrap:wrap;
  }
}

@media(max-width:560px){
  body[data-page="program"] .tool-workflow{
    padding:24px 14px 20px;
  }
  body[data-page="program"] .tool-workflow-source{
    grid-template-columns:92px minmax(0,1fr);
    gap:10px 16px;
  }
  body[data-page="program"] .tool-workflow-source__orb{
    width:86px;
    height:86px;
  }
  body[data-page="program"] .tool-workflow-source__orb strong{font-size:14px}
  body[data-page="program"] .tool-workflow-node{
    padding:12px;
    border-radius:15px;
  }
  body[data-page="program"] .tool-workflow-node__head{
    grid-template-columns:46px minmax(0,1fr);
    gap:11px;
  }
  body[data-page="program"] .tool-workflow-node__icon-wrap{
    width:42px;
    height:42px;
  }
  body[data-page="program"] .tool-workflow-node__icon{
    width:22px;
    height:22px;
  }
  body[data-page="program"] .tool-workflow-node__chips,
  body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__chips{
    margin-left:57px;
  }
  body[data-page="program"] .tool-workflow__legend{
    font-size:10px;
    gap:7px;
  }
}

@media(prefers-reduced-motion:reduce){
  body[data-page="program"] .tool-workflow-source__orb i{animation:none}
  body[data-page="program"] .tool-workflow-pulse,
  body[data-page="program"] .tool-workflow-bus-pulse{display:none}
}

/* ROUTE SEQUENCING v3 · source → node → bus → solution */
body[data-page="program"] .tool-workflow-node.is-active{transition-delay:.12s}
body[data-page="program"] .tool-workflow.is-route-active .tool-workflow-backbone .tool-workflow-bus-main,
body[data-page="program"] .tool-workflow.is-route-active .tool-workflow-bus-pulse{transition-delay:.22s}
body[data-page="program"] .tool-workflow-link.is-active .tool-workflow-pulse--out{transition-delay:.34s}
body[data-page="program"] .tool-workflow-result.is-active{transition-delay:.44s}
@media(max-width:900px){
  body[data-page="program"] .tool-workflow-node.is-active,
  body[data-page="program"] .tool-workflow-result.is-active{transition-delay:0s}
}

/* ==========================================================================
   MOBILE CANON v1 · PROGRAM PAGES
   360–430px first, no horizontal overflow
   ========================================================================== */

@media(max-width:820px){
  body[data-page="program"]{
    overflow-x:hidden;
  }
  body[data-page="program"] .shell{
    width:calc(100% - 32px);
  }

  body[data-page="program"] .site-header{
    height:68px;
    padding:0 16px;
    gap:12px;
  }
  body[data-page="program"] .site-header .brand{
    min-width:0;
  }
  body[data-page="program"] .site-header .brand img{
    width:min(188px,58vw);
    height:42px;
  }
  body[data-page="program"] .site-header .site-nav{
    margin-left:auto;
    gap:0;
  }
  body[data-page="program"] .site-header .site-nav>a:not(.nav-cta){
    display:none!important;
  }
  body[data-page="program"] .site-header .nav-cta{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    padding:0 0 2px;
    color:#e0b278!important;
    font-size:13px!important;
    line-height:1;
    letter-spacing:0;
    text-transform:none;
    white-space:nowrap;
  }

  body[data-page="program"] .hero{
    min-height:auto;
  }
  body[data-page="program"] .hero-layout{
    width:100%;
    min-height:auto;
    display:block;
    border:0;
  }
  body[data-page="program"] .hero-copy{
    padding:54px 16px 44px;
  }
  body[data-page="program"] .hero-status{
    margin-bottom:20px;
    font-size:12px;
    line-height:1.4;
    letter-spacing:.12em;
  }
  body[data-page="program"] .eyebrow{
    margin-bottom:18px;
    font-size:12px;
    line-height:1.45;
    letter-spacing:.14em;
  }
  body[data-page="program"] .hero h1{
    max-width:none;
    font-size:clamp(39px,10.5vw,50px);
    line-height:1.02;
    letter-spacing:-.035em;
  }
  body[data-page="program"] .hero h1 span{
    margin-top:18px;
    font-size:18px;
    line-height:1.45;
  }
  body[data-page="program"] .hero-lead{
    margin-top:22px;
    font-size:16px;
    line-height:1.62;
  }
  body[data-page="program"] .hero-meta{
    margin-top:28px;
  }
  body[data-page="program"] .hero-meta__row{
    grid-template-columns:1fr;
    gap:6px;
    padding:13px 0;
  }
  body[data-page="program"] .hero-meta__row span,
  body[data-page="program"] .hero-meta__row strong{
    font-size:13px;
    line-height:1.45;
  }
  body[data-page="program"] .hero-actions{
    width:100%;
    margin-top:28px;
    gap:10px;
  }
  body[data-page="program"] .hero-actions .button{
    width:100%;
    min-width:0;
    min-height:50px;
    justify-content:space-between;
    font-size:14px;
  }
  body[data-page="program"] .hero-visual{
    display:none!important;
  }

  body[data-page="program"] .section{
    padding:72px 0;
  }
  body[data-page="program"] .section-heading{
    display:block;
    margin-bottom:34px;
  }
  body[data-page="program"] .section-kicker{
    display:block;
    margin-bottom:14px;
    font-size:12px;
    line-height:1.35;
    letter-spacing:.13em;
  }
  body[data-page="program"] .section-heading h2{
    font-size:clamp(35px,9vw,44px);
    line-height:1.06;
    letter-spacing:-.035em;
  }
  body[data-page="program"] .section-heading h2 span{
    margin-top:9px;
  }

  body[data-page="program"] .audience-layout,
  body[data-page="program"] .gap-grid,
  body[data-page="program"] .project-layout,
  body[data-page="program"] .results-layout,
  body[data-page="program"] .request-grid,
  body[data-page="program"] .author-grid{
    grid-template-columns:1fr!important;
  }
  body[data-page="program"] .audience-panel,
  body[data-page="program"] .gap-card{
    min-height:auto;
    padding:28px 22px;
  }
  body[data-page="program"] .gap-arrow{
    min-height:52px;
  }

  body[data-page="program"] .project-main,
  body[data-page="program"] .project-deliverables{
    min-height:auto;
  }
  body[data-page="program"] .project-main{
    padding:30px 22px 38px;
  }
  body[data-page="program"] .project-main:before{
    right:16px;
    top:14px;
    font-size:64px;
  }
  body[data-page="program"] .project-main:after{
    display:none;
  }
  body[data-page="program"] .project-main p{
    margin-top:48px;
    font-size:29px;
    line-height:1.3;
  }
  body[data-page="program"] .project-deliverables{
    padding:28px 22px 24px;
  }
  body[data-page="program"] .project-deliverables li{
    min-height:58px;
    grid-template-columns:36px minmax(0,1fr) 12px;
    gap:10px;
    font-size:15px;
  }

  body[data-page="program"] .result-main,
  body[data-page="program"] .result-meta article,
  body[data-page="program"] .request-copy,
  body[data-page="program"] .request-action{
    padding-left:22px;
    padding-right:22px;
  }

  body[data-page="program"] .cycle-grid{
    grid-template-columns:1fr!important;
  }
  body[data-page="program"] .cycle-card{
    min-height:auto;
    padding:24px 22px;
  }

  body[data-page="program"] .author-photo{
    max-width:240px;
  }
  body[data-page="program"] .author-copy{
    margin-top:28px;
  }

  body[data-page="program"] .request-action .button{
    width:100%;
  }

  body[data-page="program"] .site-footer{
    padding:30px 16px;
    gap:12px;
  }

  /* Program semantic map becomes a compact accordion on phones. */
  body[data-page="program"] .neural-hint{
    font-size:13px;
    line-height:1.5;
  }
  body[data-page="program"] .neural-layout{
    display:block;
    height:auto;
    overflow:visible;
  }
  body[data-page="program"] .neural-topic-list{
    max-height:340px;
    height:auto;
  }
  body[data-page="program"] .neural-topic-button{
    min-height:56px;
    grid-template-columns:42px minmax(0,1fr) 20px;
    padding:10px 12px;
  }
  body[data-page="program"] .neural-topic-button>span{
    font-size:17px;
  }
  body[data-page="program"] .neural-topic-button>strong{
    font-size:14px;
    line-height:1.35;
  }
  body[data-page="program"] .neural-network{
    min-height:0!important;
    height:auto!important;
    overflow:visible;
  }
  body[data-page="program"] .neural-canvas{
    height:auto!important;
    min-height:0;
    padding:18px 0 4px;
  }
  body[data-page="program"] .neural-hub,
  body[data-page="program"] .neural-orbit,
  body[data-page="program"] .neural-topic-name,
  body[data-page="program"] .neural-source-line,
  body[data-page="program"] .neural-lines{
    display:none!important;
  }
  body[data-page="program"] .neural-pane-label-right{
    position:static;
    min-height:40px;
    padding:0 12px;
  }
  body[data-page="program"] .neural-branches{
    position:static!important;
    display:block!important;
    padding:10px 0 2px;
  }
  body[data-page="program"] .neural-branch,
  body[data-page="program"] .neural-branch-1,
  body[data-page="program"] .neural-branch-2,
  body[data-page="program"] .neural-branch-3,
  body[data-page="program"] .neural-branch-4,
  body[data-page="program"] .neural-branch-5{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:auto!important;
    margin:8px 10px!important;
    display:block!important;
    opacity:1!important;
    transform:none!important;
    filter:none!important;
  }
  body[data-page="program"] .neural-branch-main{
    min-height:50px;
    border-radius:14px;
  }
  body[data-page="program"] .neural-subnodes{
    margin-top:6px;
  }
  body[data-page="program"] .neural-subnodes span{
    min-height:30px;
    opacity:1!important;
    transform:none!important;
    font-size:13px;
  }

  /* Tools workflow: true vertical phone flow, not a squeezed desktop canvas. */
  body[data-page="program"] .tools-section{
    padding-top:82px;
  }
  body[data-page="program"] .tool-workflow{
    padding:20px 12px 18px;
    border-left:0;
    border-right:0;
  }
  body[data-page="program"] .tool-workflow__status{
    margin-bottom:18px;
    font-size:11px;
  }
  body[data-page="program"] .tool-workflow-source{
    display:block;
    margin:0 0 20px;
  }
  body[data-page="program"] .tool-workflow-source__eyebrow{
    margin-bottom:16px;
  }
  body[data-page="program"] .tool-workflow-source__orb{
    width:88px;
    height:88px;
    margin-bottom:18px;
  }
  body[data-page="program"] .tool-workflow-source__orb:before{
    inset:-14px;
  }
  body[data-page="program"] .tool-workflow-source__orb:after{
    inset:-28px;
  }
  body[data-page="program"] .tool-workflow-source p{
    max-width:none;
    margin:0;
    font-size:15px;
  }
  body[data-page="program"] .tool-workflow__nodes{
    display:grid;
    gap:9px;
    margin:18px 0;
  }
  body[data-page="program"] .tool-workflow-node{
    width:100%;
    padding:14px;
  }
  body[data-page="program"] .tool-workflow-node__head strong{
    font-size:14px;
  }
  body[data-page="program"] .tool-workflow-node__chips span{
    font-size:12px;
  }
  body[data-page="program"] .tool-workflow-result{
    width:100%;
    margin-top:18px;
  }
  body[data-page="program"] .tool-workflow__legend{
    font-size:12px;
    line-height:1.5;
  }
}

@media(max-width:390px){
  body[data-page="program"] .shell{width:calc(100% - 28px)}
  body[data-page="program"] .site-header{padding-inline:14px}
  body[data-page="program"] .site-header .brand img{width:162px}
  body[data-page="program"] .site-header .nav-cta{font-size:12px!important}
  body[data-page="program"] .hero-copy{padding-inline:14px}
  body[data-page="program"] .hero h1{font-size:37px}
}

/* MOBILE_CANON_VERSION: 1.0 */


/* ==========================================================================
   TOOLS INTEGRAL MAP v3 · PROBLEM → INTEGRATED STACK → SOLUTION
   ========================================================================== */

@media(min-width:901px){
  body[data-page="program"] .tool-workflow{
    min-height:760px;
  }

  body[data-page="program"] .tool-workflow-source{
    left:calc(17.857% - 150px);
    width:260px;
  }
  body[data-page="program"] .tool-workflow-source__eyebrow{
    margin-left:0;
    margin-bottom:9px;
  }
  body[data-page="program"] .tool-workflow-source__meta{
    margin-bottom:18px;
    color:#6f7476;
    font-size:11px;
    line-height:1.45;
    letter-spacing:.11em;
  }
  body[data-page="program"] .tool-workflow-source__orb{
    width:150px;
    height:150px;
  }
  body[data-page="program"] .tool-workflow-source p{
    max-width:245px;
  }

  body[data-page="program"] .tool-workflow-node{
    left:42.857%;
    width:25.714%;
    max-width:none;
  }

  body[data-page="program"] .tool-workflow-node__port{
    position:absolute;
    top:50%;
    width:11px;
    height:11px;
    border-radius:50%;
    transform:translateY(-50%);
    border:1px solid rgba(224,178,120,.58);
    background:#0a0e12;
    box-shadow:0 0 0 rgba(224,178,120,0);
    transition:background .22s ease,box-shadow .22s ease,border-color .22s ease;
    z-index:3;
  }
  body[data-page="program"] .tool-workflow-node__port--left{left:-6px}
  body[data-page="program"] .tool-workflow-node__port--right{right:-6px}
  body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__port{
    background:#f0bd77;
    border-color:#f0bd77;
    box-shadow:0 0 8px #f0bd77,0 0 20px rgba(240,189,119,.82);
  }

  body[data-page="program"] .tool-workflow-result{
    left:83.571%;
    right:auto;
    width:14%;
    min-width:174px;
    max-width:210px;
    padding:24px 20px;
  }
  body[data-page="program"] .tool-workflow-result:before{
    content:"";
    position:absolute;
    left:-7px;
    top:50%;
    width:12px;
    height:12px;
    border-radius:50%;
    transform:translateY(-50%);
    background:#f0bd77;
    box-shadow:0 0 8px #f0bd77,0 0 22px rgba(240,189,119,.78);
  }
  body[data-page="program"] .tool-workflow-result ul{
    list-style:none;
    margin:18px 0 0;
    padding:0;
    display:grid;
    gap:9px;
  }
  body[data-page="program"] .tool-workflow-result li{
    position:relative;
    padding-left:18px;
    color:#a7aaa7;
    font-size:12px;
    line-height:1.4;
  }
  body[data-page="program"] .tool-workflow-result li:before{
    content:"✓";
    position:absolute;
    left:0;
    top:0;
    color:#d99d55;
  }

  body[data-page="program"] .tool-workflow-backbone path{
    fill:none;
    stroke:rgba(224,178,120,.18);
    stroke-width:1.2;
    stroke-dasharray:3 8;
    vector-effect:non-scaling-stroke;
  }
  body[data-page="program"] .tool-workflow-spine-dot{
    fill:#0a0e12;
    stroke:rgba(224,178,120,.52);
    stroke-width:1.4;
    transition:fill .22s ease,stroke .22s ease,filter .22s ease,r .22s ease;
  }
  body[data-page="program"] .tool-workflow-spine-dot.is-active{
    fill:#f0bd77;
    stroke:#f0bd77;
    filter:drop-shadow(0 0 6px #f0bd77) drop-shadow(0 0 12px rgba(240,189,119,.7));
    r:6px;
  }

  body[data-page="program"] .tool-workflow-anchor{
    fill:#0a0e12;
    stroke:rgba(224,178,120,.38);
    stroke-width:1.25;
    vector-effect:non-scaling-stroke;
    transition:fill .22s ease,stroke .22s ease,filter .22s ease;
  }
  body[data-page="program"] .tool-workflow-link.is-active .tool-workflow-anchor{
    fill:#f0bd77;
    stroke:#f0bd77;
    filter:drop-shadow(0 0 5px #f0bd77) drop-shadow(0 0 11px rgba(240,189,119,.68));
  }

  body[data-page="program"] .tool-workflow-link .tool-workflow-path{
    stroke:rgba(157,166,172,.28);
  }
  body[data-page="program"] .tool-workflow-link.is-active .tool-workflow-path{
    stroke:#d9a45d;
  }

  body[data-page="program"] .tool-workflow-node.is-active{
    box-shadow:
      0 0 0 1px rgba(224,178,120,.1),
      0 18px 42px rgba(0,0,0,.28),
      0 0 34px rgba(224,178,120,.12);
  }

  body[data-page="program"] .tool-workflow__legend{
    left:3.5%;
    bottom:22px;
  }
}

@media(max-width:1180px) and (min-width:901px){
  body[data-page="program"] .tool-workflow-source{
    left:calc(17.857% - 132px);
    width:228px;
  }
  body[data-page="program"] .tool-workflow-source__orb{
    width:132px;
    height:132px;
  }
  body[data-page="program"] .tool-workflow-node{
    left:41.5%;
    width:28%;
  }
  body[data-page="program"] .tool-workflow-result{
    left:82%;
    width:16%;
    min-width:160px;
  }
}

@media(max-width:900px){
  body[data-page="program"] .tool-workflow-source__meta{
    margin:0 0 14px;
    color:#777b7d;
    font-size:11px;
    line-height:1.45;
    letter-spacing:.08em;
  }
  body[data-page="program"] .tool-workflow-source__orb strong{
    font-size:14px;
  }
  body[data-page="program"] .tool-workflow-node__port{
    display:none;
  }
  body[data-page="program"] .tool-workflow-result ul{
    list-style:none;
    margin:14px 0 0;
    padding:0;
    display:grid;
    gap:7px;
  }
  body[data-page="program"] .tool-workflow-result li{
    position:relative;
    padding-left:18px;
    color:#a7aaa7;
    font-size:12px;
    line-height:1.45;
  }
  body[data-page="program"] .tool-workflow-result li:before{
    content:"✓";
    position:absolute;
    left:0;
    color:#d99d55;
  }
}


/* ==========================================================================
   TOOLS REFERENCE ALIGNMENT v4
   Approved benchmark: TASK-DRIVEN STACK composition
   ========================================================================== */

body[data-page="program"] .tool-workflow{
  min-height:760px;
  border-color:rgba(224,178,120,.24);
  background:
    radial-gradient(circle at 12% 51%,rgba(224,164,91,.13),transparent 19%),
    radial-gradient(circle at 55% 50%,rgba(11,29,44,.32),transparent 36%),
    radial-gradient(circle at 88% 50%,rgba(215,154,84,.09),transparent 20%),
    linear-gradient(135deg,#07111a 0%,#061019 45%,#070a0e 100%);
}
body[data-page="program"] .tool-workflow__grid{
  opacity:.52;
  background-size:26px 26px,78px 78px,78px 78px;
}
body[data-page="program"] .tool-workflow__orbit--one{
  left:55%;
  width:660px;
  height:660px;
  border-color:rgba(224,178,120,.2);
  box-shadow:0 0 0 68px rgba(224,178,120,.012);
}
body[data-page="program"] .tool-workflow__orbit--two{
  left:55%;
  width:430px;
  height:430px;
  border-color:rgba(224,178,120,.12);
  box-shadow:0 0 0 38px rgba(145,160,170,.018),0 0 0 116px rgba(224,178,120,.008);
}

body[data-page="program"] .tool-workflow__title{
  position:absolute;
  left:32px;
  top:28px;
  z-index:9;
  padding-left:18px;
  border-left:1px solid rgba(224,178,120,.78);
}
body[data-page="program"] .tool-workflow__title strong{
  display:block;
  color:#e0a55f;
  font-size:11px;
  line-height:1.15;
  letter-spacing:.26em;
  font-weight:600;
}
body[data-page="program"] .tool-workflow__title span{
  display:block;
  margin-top:9px;
  color:#7e8589;
  font-size:9px;
  line-height:1.2;
  letter-spacing:.18em;
}
body[data-page="program"] .tool-workflow__status{
  right:24px;
  top:24px;
  padding:9px 13px;
  border-color:rgba(224,178,120,.28);
  background:rgba(5,9,13,.76);
  color:#a3a7a5;
  font-size:10px;
  letter-spacing:.14em;
}
body[data-page="program"] .tool-workflow__status span{
  width:8px;height:8px;
  background:#f1bd72;
  box-shadow:0 0 8px #f1bd72,0 0 18px rgba(241,189,114,.6);
}

body[data-page="program"] .tool-workflow-source{
  left:3.4%;
  width:260px;
}
body[data-page="program"] .tool-workflow-source__meta{
  position:absolute;
  left:0;
  top:-112px;
  margin:0;
  color:#697277;
  font-size:9px;
  line-height:1.55;
  letter-spacing:.09em;
}
body[data-page="program"] .tool-workflow-source__orb{
  width:174px;
  height:174px;
  margin-left:18px;
  border-color:rgba(239,189,121,.86);
  background:
    radial-gradient(circle at 48% 45%,rgba(44,59,68,.42),transparent 34%),
    radial-gradient(circle,rgba(16,28,37,.98),rgba(4,8,11,.99) 74%);
  box-shadow:
    0 0 0 22px rgba(224,178,120,.04),
    0 0 0 48px rgba(224,178,120,.018),
    0 0 34px rgba(224,178,120,.22),
    inset 0 0 34px rgba(224,178,120,.03);
}
body[data-page="program"] .tool-workflow-source__orb:before{
  inset:-24px;
  border-color:rgba(224,178,120,.25);
}
body[data-page="program"] .tool-workflow-source__orb:after{
  inset:-55px;
  border-color:rgba(224,178,120,.22);
}
body[data-page="program"] .tool-workflow-source__orb strong{
  color:#f4f1eb;
  font-family:inherit;
  font-size:15px;
  font-weight:700;
  letter-spacing:.1em;
}
body[data-page="program"] .tool-workflow-source__orb i{
  right:-7px;
  width:13px;
  height:13px;
  background:#f2bc72;
  box-shadow:0 0 8px #f2bc72,0 0 24px rgba(242,188,114,.9);
}
body[data-page="program"] .tool-workflow-source p{
  margin:48px 0 0;
  max-width:250px;
  color:#b4b5b1;
  font-size:14px;
  line-height:1.58;
}

body[data-page="program"] .tool-workflow-link path{
  stroke:rgba(224,178,120,.46);
  stroke-width:1.05;
}
body[data-page="program"] .tool-workflow-link.is-active path{
  stroke:#efb967;
  stroke-width:1.75;
  filter:drop-shadow(0 0 5px rgba(239,185,103,.62));
}
body[data-page="program"] .tool-workflow-pulse{
  fill:#f2bc72;
  opacity:0;
}
body[data-page="program"] .tool-workflow-link.is-active .tool-workflow-pulse{opacity:1}

body[data-page="program"] .tool-workflow-backbone .tool-workflow-vertical-link{
  fill:none;
  stroke:rgba(224,178,120,.65);
  stroke-width:1.35;
  stroke-dasharray:3 7;
  vector-effect:non-scaling-stroke;
  filter:drop-shadow(0 0 3px rgba(224,178,120,.26));
}
body[data-page="program"] .tool-workflow-bus-pulse{
  opacity:.85;
  fill:#f2bc72;
  filter:drop-shadow(0 0 5px #f2bc72);
}

body[data-page="program"] .tool-workflow-node{
  left:42.85%;
  width:24.3%;
  min-height:100px;
  padding:14px 22px 14px 16px;
  border-radius:18px;
  border-color:rgba(224,178,120,.38);
  background:
    linear-gradient(145deg,rgba(13,21,28,.97),rgba(6,11,15,.97));
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}
body[data-page="program"] .tool-workflow-node.is-connected{
  border-color:rgba(224,178,120,.38);
}
body[data-page="program"] .tool-workflow-node:hover,
body[data-page="program"] .tool-workflow-node:focus-visible,
body[data-page="program"] .tool-workflow-node.is-active{
  transform:translateY(-50%);
  border-color:rgba(242,188,114,.96);
  background:
    radial-gradient(circle at 12% 50%,rgba(224,154,73,.16),transparent 30%),
    linear-gradient(135deg,rgba(50,35,23,.62),rgba(9,14,18,.99) 64%);
  box-shadow:
    0 0 0 1px rgba(242,188,114,.1),
    0 0 28px rgba(224,155,79,.2),
    0 18px 44px rgba(0,0,0,.28);
}
body[data-page="program"] .tool-workflow-node__head{
  grid-template-columns:58px minmax(0,1fr) 12px;
  gap:13px;
}
body[data-page="program"] .tool-workflow-node__icon-wrap{
  width:52px;
  height:52px;
  border-color:rgba(224,178,120,.62);
  color:#e6aa5d;
  background:rgba(5,10,14,.9);
}
body[data-page="program"] .tool-workflow-node__icon{
  width:27px;height:27px;
}
body[data-page="program"] .tool-workflow-node__head strong{
  color:#f1eee8;
  font-size:14px;
  font-weight:600;
}
body[data-page="program"] .tool-workflow-node__head small{
  margin-top:5px;
  color:#8f9699;
  font-size:10px;
}
body[data-page="program"] .tool-workflow-node__status{
  display:block;
  width:8px;
  height:8px;
  border-radius:50%;
  border:1px solid rgba(224,178,120,.6);
  background:#071018;
}
body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__status{
  border-color:#efb967;
  box-shadow:0 0 8px rgba(239,185,103,.5);
}
body[data-page="program"] .tool-workflow-node__port{
  width:10px;height:10px;
  border-color:rgba(239,185,103,.8);
  background:#efb967;
  box-shadow:0 0 8px rgba(239,185,103,.5);
}
body[data-page="program"] .tool-workflow-node__port--left{left:-6px}
body[data-page="program"] .tool-workflow-node__port--right{right:-6px}
body[data-page="program"] .tool-workflow-node__port--top{
  left:50%;top:-6px;transform:translateX(-50%);
}
body[data-page="program"] .tool-workflow-node__port--bottom{
  left:50%;top:auto;bottom:-6px;transform:translateX(-50%);
}
body[data-page="program"] .tool-workflow-node:first-child .tool-workflow-node__port--top,
body[data-page="program"] .tool-workflow-node:last-child .tool-workflow-node__port--bottom{
  opacity:0;
}
body[data-page="program"] .tool-workflow-node__chips{
  margin-left:71px;
}
body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__chips{
  max-height:92px;
  margin-top:10px;
}
body[data-page="program"] .tool-workflow-node__chips span{
  min-height:25px;
  padding:3px 9px;
  border-color:rgba(224,178,120,.24);
  color:#c1c0bc;
  background:rgba(4,8,11,.9);
}

body[data-page="program"] .tool-workflow-result{
  right:2.2%;
  width:255px;
  padding:24px 24px 25px;
  border-radius:18px;
  border-color:rgba(239,185,103,.82);
  background:
    radial-gradient(circle at 18% 16%,rgba(224,155,79,.1),transparent 32%),
    linear-gradient(145deg,rgba(13,23,31,.98),rgba(6,10,14,.99));
  box-shadow:
    0 0 26px rgba(224,155,79,.13),
    0 18px 44px rgba(0,0,0,.24);
}
body[data-page="program"] .tool-workflow-result__port{
  left:-7px;
  width:13px;height:13px;
  border-color:#efb967;
  background:#efb967;
  box-shadow:0 0 8px #efb967,0 0 18px rgba(239,185,103,.56);
}
body[data-page="program"] .tool-workflow-result__icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  margin-bottom:14px;
  border:1px solid rgba(224,178,120,.45);
  border-radius:50%;
  color:#e9ad61;
  background:rgba(8,13,17,.82);
}
body[data-page="program"] .tool-workflow-result__icon .tool-workflow-node__icon{
  width:25px;height:25px;
}
body[data-page="program"] .tool-workflow-result>strong{
  font-family:inherit;
  font-size:18px;
  font-weight:700;
  letter-spacing:.03em;
}
body[data-page="program"] .tool-workflow-result p{
  margin-top:12px;
  color:#b5b6b3;
  font-size:13px;
  line-height:1.55;
}
body[data-page="program"] .tool-workflow-result ul{
  margin-top:18px;
}
body[data-page="program"] .tool-workflow-result li{
  padding-left:18px;
  color:#aeb0ad;
  font-size:11px;
}
body[data-page="program"] .tool-workflow-result li:before{
  width:11px;
  height:11px;
  top:.22em;
  border:1px solid rgba(224,178,120,.75);
  background:transparent;
  box-shadow:none;
}
body[data-page="program"] .tool-workflow-result li:after{
  content:"";
  position:absolute;
  left:3px;
  top:.46em;
  width:4px;
  height:2px;
  border-left:1px solid #e6aa5d;
  border-bottom:1px solid #e6aa5d;
  transform:rotate(-45deg);
}
body[data-page="program"] .tool-workflow-result.is-active{
  transform:translateY(-50%);
  border-color:rgba(239,185,103,.96);
  box-shadow:
    0 0 32px rgba(224,155,79,.18),
    0 20px 52px rgba(0,0,0,.3);
}

body[data-page="program"] .tool-workflow__legend{
  bottom:24px;
  font-size:9px;
  letter-spacing:.12em;
  color:#737b7f;
}
body[data-page="program"] .tool-workflow__legend--left{
  left:32px;
}
body[data-page="program"] .tool-workflow__legend--right{
  left:auto;
  right:34px;
}
body[data-page="program"] .tool-workflow__legend b{
  color:#a6abad;
}

@media(max-width:1180px){
  body[data-page="program"] .tool-workflow-node{
    left:41%;
    width:28%;
  }
  body[data-page="program"] .tool-workflow-result{
    right:1.5%;
    width:230px;
  }
}

@media(max-width:900px){
  body[data-page="program"] .tool-workflow{
    padding-top:76px;
  }
  body[data-page="program"] .tool-workflow__title{
    position:relative;
    left:auto;top:auto;
    margin:0 0 18px;
  }
  body[data-page="program"] .tool-workflow__status{
    position:relative;
    right:auto;top:auto;
    margin:0 0 24px auto;
  }
  body[data-page="program"] .tool-workflow-source{
    left:auto;width:auto;
  }
  body[data-page="program"] .tool-workflow-source__meta{
    position:relative;
    left:auto;top:auto;
    grid-column:1/-1;
    margin:0 0 8px;
  }
  body[data-page="program"] .tool-workflow-source__orb{
    margin-left:0;
  }
  body[data-page="program"] .tool-workflow-node{
    left:auto;
    width:auto;
  }
  body[data-page="program"] .tool-workflow-node__port--top,
  body[data-page="program"] .tool-workflow-node__port--bottom{
    display:none;
  }
  body[data-page="program"] .tool-workflow-result{
    right:auto;width:auto;
  }
  body[data-page="program"] .tool-workflow__legend--left,
  body[data-page="program"] .tool-workflow__legend--right{
    left:auto;right:auto;
  }
}

/* Reference geometry verified in PR #54; protected Faculty override approved by label. */


/* ==========================================================================
   TOOLS APPROVED FINAL v5
   Geometry and visual density matched to the approved 16:9 mockup
   ========================================================================== */
body[data-page="program"] .tool-workflow{
  min-height:650px;
  background:
    radial-gradient(circle at 12% 50%,rgba(226,163,88,.15),transparent 18%),
    radial-gradient(circle at 53% 48%,rgba(11,30,44,.34),transparent 35%),
    radial-gradient(circle at 89% 50%,rgba(220,158,84,.1),transparent 20%),
    linear-gradient(135deg,#061019 0%,#07111a 48%,#07090c 100%);
}
body[data-page="program"] .tool-workflow__grid{
  opacity:.48;
  background-size:26px 26px,72px 72px,72px 72px;
}
body[data-page="program"] .tool-workflow__orbit--one{
  left:53.5%;
  width:590px;
  height:590px;
  border-color:rgba(224,178,120,.23);
  box-shadow:0 0 0 54px rgba(224,178,120,.012);
}
body[data-page="program"] .tool-workflow__orbit--two{
  left:53.5%;
  width:382px;
  height:382px;
  border-color:rgba(224,178,120,.11);
  box-shadow:0 0 0 30px rgba(145,160,170,.018),0 0 0 96px rgba(224,178,120,.008);
}
body[data-page="program"] .tool-workflow__title{
  left:28px;
  top:24px;
}
body[data-page="program"] .tool-workflow__status{
  right:22px;
  top:20px;
}
body[data-page="program"] .tool-workflow-source{
  left:3.15%;
  width:244px;
}
body[data-page="program"] .tool-workflow-source__meta{
  top:-92px;
  font-size:8px;
  line-height:1.5;
}
body[data-page="program"] .tool-workflow-source__orb{
  width:152px;
  height:152px;
  margin-left:24px;
  box-shadow:
    0 0 0 19px rgba(224,178,120,.045),
    0 0 0 43px rgba(224,178,120,.018),
    0 0 34px rgba(224,178,120,.24),
    inset 0 0 30px rgba(224,178,120,.035);
}
body[data-page="program"] .tool-workflow-source__orb:before{inset:-20px}
body[data-page="program"] .tool-workflow-source__orb:after{inset:-47px}
body[data-page="program"] .tool-workflow-source__orb strong{
  font-size:14px;
  letter-spacing:.095em;
}
body[data-page="program"] .tool-workflow-source__orb i{
  right:-6px;
  width:11px;
  height:11px;
}
body[data-page="program"] .tool-workflow-source p{
  margin:40px 0 0;
  max-width:230px;
  font-size:13px;
  line-height:1.52;
}
body[data-page="program"] .tool-workflow-link path{
  stroke:rgba(236,180,101,.58);
  stroke-width:1.15;
  filter:drop-shadow(0 0 2px rgba(224,161,83,.18));
}
body[data-page="program"] .tool-workflow-link.is-active path{
  stroke:#f0b968;
  stroke-width:1.5;
  filter:drop-shadow(0 0 5px rgba(240,185,104,.58));
}
body[data-page="program"] .tool-workflow-backbone .tool-workflow-vertical-link{
  stroke:rgba(239,185,103,.7);
  stroke-width:1.05;
  stroke-dasharray:2 6;
  filter:drop-shadow(0 0 3px rgba(224,178,120,.3));
}
body[data-page="program"] .tool-workflow-bus-pulse{
  opacity:.74;
}
body[data-page="program"] .tool-workflow-flow-marks path{
  fill:none;
  stroke:rgba(238,182,101,.8);
  stroke-width:1.3;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
  filter:drop-shadow(0 0 3px rgba(238,182,101,.42));
}
body[data-page="program"] .tool-workflow-node{
  left:42.45%;
  width:25.15%;
  min-height:86px;
  padding:10px 18px 10px 14px;
  border-radius:16px;
  border-color:rgba(224,178,120,.48);
}
body[data-page="program"] .tool-workflow-node__head{
  grid-template-columns:52px minmax(0,1fr) 10px;
  gap:12px;
}
body[data-page="program"] .tool-workflow-node__icon-wrap{
  width:46px;
  height:46px;
}
body[data-page="program"] .tool-workflow-node__icon{
  width:24px;
  height:24px;
}
body[data-page="program"] .tool-workflow-node__head strong{
  font-size:13.5px;
  line-height:1.2;
}
body[data-page="program"] .tool-workflow-node__head small{
  margin-top:4px;
  font-size:9.5px;
}
body[data-page="program"] .tool-workflow-node__status{
  width:7px;
  height:7px;
}
body[data-page="program"] .tool-workflow-node__port{
  width:8px;
  height:8px;
  box-shadow:0 0 7px rgba(239,185,103,.48);
}
body[data-page="program"] .tool-workflow-node__port--left{left:-5px}
body[data-page="program"] .tool-workflow-node__port--right{right:-5px}
body[data-page="program"] .tool-workflow-node__port--top{top:-5px}
body[data-page="program"] .tool-workflow-node__port--bottom{bottom:-5px}
body[data-page="program"] .tool-workflow-node__chips{
  margin-left:64px;
}
body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__chips{
  max-height:72px;
  margin-top:8px;
}
body[data-page="program"] .tool-workflow-node__chips span{
  min-height:23px;
  padding:3px 8px;
  font-size:10px;
}
body[data-page="program"] .tool-workflow-node:hover,
body[data-page="program"] .tool-workflow-node:focus-visible,
body[data-page="program"] .tool-workflow-node.is-active{
  border-color:#f0b968;
  box-shadow:
    0 0 0 1px rgba(242,188,114,.1),
    0 0 30px rgba(224,155,79,.23),
    0 16px 38px rgba(0,0,0,.28);
}
body[data-page="program"] .tool-workflow-result{
  right:2%;
  width:282px;
  padding:22px 23px 22px;
  border-radius:17px;
  border-color:rgba(239,185,103,.9);
  box-shadow:
    0 0 29px rgba(224,155,79,.16),
    0 16px 40px rgba(0,0,0,.24);
}
body[data-page="program"] .tool-workflow-result__icon{
  width:46px;
  height:46px;
  margin-bottom:12px;
}
body[data-page="program"] .tool-workflow-result>strong{
  font-size:17px;
}
body[data-page="program"] .tool-workflow-result p{
  margin-top:11px;
  max-width:230px;
  font-size:12.5px;
  line-height:1.48;
}
body[data-page="program"] .tool-workflow-result ul{
  margin-top:15px;
  padding-top:13px;
}
body[data-page="program"] .tool-workflow-result li{
  margin-top:8px;
  font-size:10.5px;
  line-height:1.32;
}
body[data-page="program"] .tool-workflow-result.is-active{
  box-shadow:
    0 0 34px rgba(224,155,79,.2),
    0 18px 45px rgba(0,0,0,.28);
}
body[data-page="program"] .tool-workflow__legend{
  bottom:18px;
}
body[data-page="program"] .tool-workflow__legend--left{left:28px}
body[data-page="program"] .tool-workflow__legend--right{right:28px}

@media(max-width:1180px) and (min-width:901px){
  body[data-page="program"] .tool-workflow-node{
    left:40.2%;
    width:29%;
  }
  body[data-page="program"] .tool-workflow-result{
    right:1.2%;
    width:238px;
    padding-left:19px;
    padding-right:19px;
  }
  body[data-page="program"] .tool-workflow-source{
    left:2.2%;
  }
}

@media(max-width:900px){
  body[data-page="program"] .tool-workflow{
    min-height:0;
  }
  body[data-page="program"] .tool-workflow-node{
    min-height:0;
  }
}

/* PR #55 protected override retrigger: visual logic unchanged. */


/* ==========================================================================
   TOOLS EXACT REFERENCE v6
   Desktop geometry locked to the approved 1672×941 benchmark.
   ========================================================================== */
@media(min-width:901px){
  body[data-page="program"] .tool-workflow{
    aspect-ratio:1672 / 941;
    min-height:0;
    height:auto;
    overflow:hidden;
    box-sizing:border-box;
  }

  body[data-page="program"] .tool-workflow__grid{
    inset:0;
  }

  body[data-page="program"] .tool-workflow__orbit--one{
    left:50.48%;
    top:49.05%;
    width:47.9%;
    height:auto;
    aspect-ratio:1;
    transform:translate(-50%,-50%);
    border-color:rgba(224,178,120,.18);
  }

  body[data-page="program"] .tool-workflow__orbit--two{
    left:50.48%;
    top:49.05%;
    width:29.6%;
    height:auto;
    aspect-ratio:1;
    transform:translate(-50%,-50%);
  }

  body[data-page="program"] .tool-workflow-source{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    transform:none;
    pointer-events:none;
  }

  body[data-page="program"] .tool-workflow-source__meta{
    position:absolute;
    left:3.35%;
    top:24.6%;
    margin:0;
    color:#697277;
    font-size:clamp(8px,.55vw,10px);
    line-height:1.45;
    letter-spacing:.08em;
  }

  body[data-page="program"] .tool-workflow-source__orb{
    position:absolute;
    left:11.48%;
    top:48.57%;
    width:13.05%;
    height:auto;
    aspect-ratio:1;
    margin:0;
    transform:translate(-50%,-50%);
    overflow:visible;
    border-color:rgba(239,189,121,.88);
    box-sizing:border-box;
  }

  body[data-page="program"] .tool-workflow-source__orb:before{
    inset:-9.4%;
    border-color:rgba(224,178,120,.26);
  }

  body[data-page="program"] .tool-workflow-source__orb:after{
    inset:-23%;
    border-color:rgba(224,178,120,.22);
  }

  body[data-page="program"] .tool-workflow-source__orb strong{
    font-size:clamp(14px,1.24vw,21px);
    letter-spacing:.08em;
  }

  body[data-page="program"] .tool-workflow-source__point{
    position:absolute;
    z-index:4;
    width:clamp(10px,.82vw,14px);
    height:clamp(10px,.82vw,14px);
    border-radius:50%;
    background:#f1b96c;
    box-shadow:
      0 0 7px rgba(241,185,108,.95),
      0 0 19px rgba(241,185,108,.58);
    transform:translate(-50%,-50%);
  }

  body[data-page="program"] .tool-workflow-source__point--right{
    left:100%;
    top:50%;
  }
  body[data-page="program"] .tool-workflow-source__point--left{
    left:0;
    top:50%;
  }
  body[data-page="program"] .tool-workflow-source__point--top{
    left:50%;
    top:-9.4%;
  }
  body[data-page="program"] .tool-workflow-source__point--bottom{
    left:50%;
    top:109.4%;
  }

  body[data-page="program"] .tool-workflow-source p{
    position:absolute;
    left:3.35%;
    top:65.9%;
    width:17.6%;
    max-width:none;
    margin:0;
    color:#b8bab7;
    font-size:clamp(12px,1.02vw,17px);
    line-height:1.48;
  }

  body[data-page="program"] .tool-workflow__lines{
    inset:0;
    width:100%;
    height:100%;
  }

  body[data-page="program"] .tool-workflow-link path{
    stroke:rgba(229,174,96,.66);
    stroke-width:1.12;
    filter:drop-shadow(0 0 2px rgba(225,166,88,.23));
  }

  body[data-page="program"] .tool-workflow-link.is-active path{
    stroke:#efb767;
    stroke-width:1.6;
    filter:drop-shadow(0 0 5px rgba(239,183,103,.62));
  }

  body[data-page="program"] .tool-workflow-junction{
    fill:#efb767;
    stroke:rgba(255,218,161,.62);
    stroke-width:1;
    filter:drop-shadow(0 0 6px rgba(239,183,103,.7));
  }

  body[data-page="program"] .tool-workflow-junction--result{
    fill:#efb767;
  }

  body[data-page="program"] .tool-workflow-backbone .tool-workflow-vertical-link{
    stroke:rgba(239,185,103,.7);
    stroke-width:1.05;
    stroke-dasharray:3 7;
  }

  body[data-page="program"] .tool-workflow-node{
    left:var(--node-left);
    top:var(--node-top);
    width:var(--node-width);
    height:var(--node-height);
    min-height:0;
    padding:clamp(9px,.72vw,13px) clamp(14px,1.1vw,19px) clamp(9px,.72vw,13px) clamp(12px,.88vw,15px);
    transform:translateY(-50%);
    box-sizing:border-box;
    border-radius:clamp(14px,1.05vw,18px);
    border-color:rgba(224,178,120,.5);
  }

  body[data-page="program"] .tool-workflow-node:hover,
  body[data-page="program"] .tool-workflow-node:focus-visible,
  body[data-page="program"] .tool-workflow-node.is-active{
    transform:translateY(-50%);
  }

  body[data-page="program"] .tool-workflow-node__head{
    grid-template-columns:clamp(44px,3.35vw,56px) minmax(0,1fr) 10px;
    gap:clamp(9px,.8vw,13px);
  }

  body[data-page="program"] .tool-workflow-node__icon-wrap{
    width:clamp(42px,3.1vw,52px);
    height:clamp(42px,3.1vw,52px);
  }

  body[data-page="program"] .tool-workflow-node__icon{
    width:clamp(22px,1.65vw,28px);
    height:clamp(22px,1.65vw,28px);
  }

  body[data-page="program"] .tool-workflow-node__head strong{
    font-size:clamp(12px,.95vw,16px);
    line-height:1.18;
    white-space:nowrap;
  }

  body[data-page="program"] .tool-workflow-node[data-tool-node="specialized"] .tool-workflow-node__head strong{
    white-space:normal;
  }

  body[data-page="program"] .tool-workflow-node__head small{
    font-size:clamp(9px,.64vw,11px);
    line-height:1.24;
  }

  body[data-page="program"] .tool-workflow-node__port{
    width:clamp(8px,.68vw,11px);
    height:clamp(8px,.68vw,11px);
    margin:0;
  }

  body[data-page="program"] .tool-workflow-node__port--left{
    left:0;
    transform:translate(-50%,-50%);
  }

  body[data-page="program"] .tool-workflow-node__port--right{
    right:0;
    transform:translate(50%,-50%);
  }

  body[data-page="program"] .tool-workflow-node__port--top{
    left:50%;
    top:0;
    transform:translate(-50%,-50%);
  }

  body[data-page="program"] .tool-workflow-node__port--bottom{
    left:50%;
    bottom:0;
    top:auto;
    transform:translate(-50%,50%);
  }

  body[data-page="program"] .tool-workflow-node__chips{
    margin-left:clamp(55px,4.15vw,70px);
  }

  body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__chips{
    margin-top:clamp(6px,.55vw,9px);
    max-height:52px;
  }

  body[data-page="program"] .tool-workflow-node__chips span{
    min-height:clamp(21px,1.45vw,25px);
    padding:2px 8px;
    font-size:clamp(9px,.62vw,10.5px);
  }

  body[data-page="program"] .tool-workflow-result{
    left:78.65%;
    right:auto;
    top:48.57%;
    width:18.05%;
    max-width:none;
    min-width:0;
    transform:translateY(-50%);
    box-sizing:border-box;
    padding:clamp(18px,1.55vw,26px) clamp(18px,1.45vw,24px);
    border-radius:clamp(15px,1.05vw,18px);
    border-color:rgba(239,185,103,.92);
    overflow:visible;
  }

  body[data-page="program"] .tool-workflow-result.is-active{
    transform:translateY(-50%);
  }

  body[data-page="program"] .tool-workflow-result__port{
    left:0;
    top:50%;
    width:clamp(12px,.9vw,15px);
    height:clamp(12px,.9vw,15px);
    transform:translate(-50%,-50%);
  }

  body[data-page="program"] .tool-workflow-result__icon{
    width:clamp(42px,3vw,50px);
    height:clamp(42px,3vw,50px);
    margin-bottom:clamp(10px,.8vw,14px);
  }

  body[data-page="program"] .tool-workflow-result>strong{
    font-size:clamp(17px,1.35vw,22px);
    line-height:1.1;
  }

  body[data-page="program"] .tool-workflow-result p{
    margin-top:clamp(10px,.9vw,14px);
    max-width:none;
    font-size:clamp(11px,.8vw,13.5px);
    line-height:1.48;
  }

  body[data-page="program"] .tool-workflow-result ul{
    margin-top:clamp(13px,1.1vw,18px);
    padding-top:clamp(11px,.9vw,15px);
  }

  body[data-page="program"] .tool-workflow-result li{
    margin-top:clamp(7px,.65vw,10px);
    font-size:clamp(9.5px,.68vw,11.5px);
    line-height:1.32;
  }

  body[data-page="program"] .tool-workflow__title{
    left:3.1%;
    top:4.2%;
  }

  body[data-page="program"] .tool-workflow__status{
    right:2.7%;
    top:3.1%;
  }

  body[data-page="program"] .tool-workflow__legend{
    bottom:4.1%;
  }

  body[data-page="program"] .tool-workflow__legend--left{
    left:3.1%;
  }

  body[data-page="program"] .tool-workflow__legend--right{
    right:3.1%;
  }
}

@media(max-width:900px){
  body[data-page="program"] .tool-workflow{
    aspect-ratio:auto;
    min-height:0;
    height:auto;
  }

  body[data-page="program"] .tool-workflow-source{
    position:relative;
    inset:auto;
    width:auto;
    height:auto;
    transform:none;
    pointer-events:auto;
  }

  body[data-page="program"] .tool-workflow-source__meta,
  body[data-page="program"] .tool-workflow-source p,
  body[data-page="program"] .tool-workflow-source__orb{
    position:relative;
    left:auto;
    top:auto;
    transform:none;
  }

  body[data-page="program"] .tool-workflow-source__point{
    display:none;
  }

  body[data-page="program"] .tool-workflow-node{
    left:auto!important;
    top:auto!important;
    width:auto!important;
    height:auto!important;
  }

  body[data-page="program"] .tool-workflow-result{
    left:auto;
    right:auto;
    top:auto;
    width:auto;
    max-width:none;
    transform:none;
  }

  body[data-page="program"] .tool-workflow-result.is-active{
    transform:none;
  }
}

/* PR #56 protected override retrigger; exact reference geometry unchanged. */


/* ==========================================================================
   TOOLS DROPDOWN-ONLY FIX v8
   Previous visual version preserved; only tool-list overlap is fixed.
   ========================================================================== */
@media(min-width:901px){
  body[data-page="program"] .tool-workflow-node{
    overflow:hidden;
  }

  body[data-page="program"] .tool-workflow-node__chips{
    position:absolute;
    left:clamp(58px,4.35vw,72px);
    right:clamp(10px,.85vw,14px);
    bottom:clamp(7px,.55vw,10px);
    margin:0!important;
    max-height:0;
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    gap:clamp(5px,.42vw,7px);
    overflow-x:auto;
    overflow-y:hidden;
    white-space:nowrap;
    opacity:0;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }

  body[data-page="program"] .tool-workflow-node__chips::-webkit-scrollbar{
    display:none;
  }

  body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__chips{
    max-height:clamp(22px,1.55vw,26px);
    margin:0!important;
    opacity:1;
  }

  body[data-page="program"] .tool-workflow-node__chips span{
    flex:0 0 auto;
  }

  body[data-page="program"] .tool-workflow-node[data-tool-node="automation"] .tool-workflow-node__chips{
    bottom:clamp(9px,.7vw,12px);
  }
}

@media(max-width:900px){
  body[data-page="program"] .tool-workflow-node{
    overflow:visible;
  }

  body[data-page="program"] .tool-workflow-node__chips{
    position:static;
    margin-left:57px!important;
    flex-wrap:wrap;
    overflow:visible;
    white-space:normal;
  }
}

/* PR #58 protected override retrigger; dropdown-only fix unchanged. */


/* ==========================================================================
   TOOLS INLINE LISTS + HEADING FONT v9
   Match editorial heading font; keep ports fully visible; tools live inside cards.
   ========================================================================== */
body[data-page="program"] .tools-section .section-heading h2,
body[data-page="program"] .tools-section .section-heading h2 span{
  font-family:Georgia,"Times New Roman",serif!important;
  font-style:normal!important;
  font-weight:400!important;
}

@media(min-width:901px){
  body[data-page="program"] .tool-workflow-node{
    overflow:visible!important;
    padding-bottom:clamp(31px,2.15vw,36px);
  }

  body[data-page="program"] .tool-workflow-node__chips{
    position:absolute;
    left:clamp(10px,.8vw,14px);
    right:clamp(10px,.8vw,14px);
    bottom:clamp(7px,.55vw,10px);
    margin:0!important;
    max-height:clamp(22px,1.55vw,26px)!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center;
    justify-content:center;
    gap:clamp(5px,.42vw,7px);
    overflow:hidden!important;
    white-space:nowrap;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto;
    transition:none!important;
  }

  body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__chips,
  body[data-page="program"] .tool-workflow-node:hover .tool-workflow-node__chips,
  body[data-page="program"] .tool-workflow-node:focus-visible .tool-workflow-node__chips{
    margin:0!important;
    max-height:clamp(22px,1.55vw,26px)!important;
    opacity:1!important;
  }

  body[data-page="program"] .tool-workflow-node__chips span{
    flex:0 1 auto;
    min-width:0;
    min-height:clamp(20px,1.35vw,23px);
    padding:2px clamp(5px,.42vw,7px);
    font-size:clamp(8px,.54vw,9.5px);
    line-height:1.05;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  body[data-page="program"] .tool-workflow-node__port{
    overflow:visible;
    z-index:8;
  }
}

@media(max-width:900px){
  body[data-page="program"] .tools-section .section-heading h2,
  body[data-page="program"] .tools-section .section-heading h2 span{
    font-family:Georgia,"Times New Roman",serif!important;
    font-style:normal!important;
    font-weight:400!important;
  }

  body[data-page="program"] .tool-workflow-node__chips,
  body[data-page="program"] .tool-workflow-node.is-active .tool-workflow-node__chips{
    position:static;
    display:flex!important;
    margin:10px 0 0 57px!important;
    max-height:none!important;
    flex-wrap:wrap!important;
    overflow:visible!important;
    white-space:normal;
    opacity:1!important;
    visibility:visible!important;
  }
}

/* PR #59 protected override retrigger; inline-list and heading-font fix unchanged. */
