/* Boardroom QA refinements. Loaded after the main stylesheet. */
.tailored-intro{top:133px}
.tailored-intro h2{font-size:58px;line-height:1.055;margin-bottom:13px}
.tailored-intro>p:not(.mini-eyebrow){max-width:1290px;font-size:14.5px;line-height:1.48}
.sector-pills{top:375px}
.prospect-panel{top:442px;height:351px}
.prospect-copy{padding-top:69px}
.engine-device-zone{top:116px;height:691px}
.phone-disclaimer{background:rgba(7,31,44,.8);padding:3px 8px}

/* Two-phone presentation composition reflecting the supplied boardroom artwork. */
.engine-device-zone .phone-secondary{
 position:absolute;z-index:2;right:1px;top:18px;width:269px;height:525px;
 border:3px solid #7496a2;border-radius:41px;padding:9px;
 background:linear-gradient(135deg,#4c6979,#071824 31%,#173745 89%);
 transform:rotate(-7deg);box-shadow:0 18px 52px rgba(0,0,0,.35)
}
.phone-secondary .secondary-notch{position:absolute;z-index:2;top:15px;left:81px;width:83px;height:21px;border-radius:14px;background:#071824}
.phone-secondary .secondary-interface{height:100%;padding:77px 16px 16px;border-radius:31px;text-align:center;background:linear-gradient(145deg,#f6f8fe,#e9f0fc);color:#273b70;overflow:hidden}
.secondary-brand{font:700 26px var(--display);letter-spacing:-.06em;color:#284576}
.secondary-brand sup{font:700 7px var(--font);vertical-align:top}
.secondary-interface p{font:400 9px var(--font);color:#6c80a4;margin:5px 0 30px}
.secondary-interface h4{font:600 19px var(--display);margin:0 0 22px}
.secondary-field{height:38px;text-align:left;border-radius:7px;border:1px solid #dce3f1;background:white;margin:9px 0;padding:13px 10px;font:400 9px var(--font);color:#90a1be}
.secondary-login{border-radius:7px;background:#233e77;color:white;padding:14px;font:700 10px var(--font);margin-top:18px}
.secondary-interface>small{display:block;font:700 7px/1.4 var(--font);color:#7990b3;margin-top:26px}
.diagnosis-meta{border-top:1px solid #e3e9f2;margin-top:7px;padding-top:6px;font:700 7px var(--font);letter-spacing:.02em;color:#6a7f9c;text-align:center}
.zone-desc small{font-size:7px;line-height:1.45}
@media(prefers-reduced-motion:reduce){.phone-secondary{transform:rotate(-7deg)}}


/* V4 — purpose-built stakeholder geometry. Four nodes + four cables share
   exactly the same 920×376 coordinate system. Nothing can extend below it. */
.solution .stakeholder-stage {
  top: 410px;
  height: 376px;
  grid-template-columns: 920px 480px;
  gap: 36px;
}
.solution .stakeholder-network { width: 920px; height: 376px; position: relative; overflow: visible; }
.solution .stakeholder-network svg { position: absolute; inset: 0; width: 920px; height: 376px; overflow: visible; }
.solution .stake-core {
  left: 460px; top: 188px; width: 168px; height: 168px;
  z-index: 5; transform: translate(-50%,-50%);
}
.solution .stake-person {
  width: 220px; height: 90px; min-height: 0; z-index: 6;
  display: flex; flex-direction: column; justify-content: center;
  padding: 13px 17px; overflow: hidden;
}
.solution .person-one { left: 24px; top: 16px; right: auto; bottom: auto; }
.solution .person-two { left: 676px; top: 16px; right: auto; bottom: auto; }
.solution .person-three { left: 24px; top: 270px; right: auto; bottom: auto; }
.solution .person-four { left: 676px; top: 270px; right: auto; bottom: auto; }
.solution .stake-wire {
  fill: none; stroke: #7fd0df; stroke-width: 1.7; opacity: .46;
}
.solution .stake-signal-line {
  fill: none; stroke: #c6ffff; stroke-width: 3.8; stroke-linecap: round;
  stroke-dasharray: 18 470; filter: drop-shadow(0 0 5px rgba(165,245,254,.8));
  opacity: 0;
}
.solution .stake-ring {
  fill: none; stroke: #9ceaf0; stroke-width: 1; opacity: .22;
  stroke-dasharray: 3 11;
}
.solution .stake-ring-inner { opacity: .17; stroke-dasharray: none; }
.solution .stake-ring-core { opacity: .25; stroke-dasharray: none; }
.solution .solution-output { height: 376px; padding: 23px 24px; }
.solution .solution-output h3 { font-size: 35px; margin: 18px 0; }
.solution .solution-output p { font-size: 14px; line-height: 1.55; }
.solution .output-signal { margin-top: 10px; padding: 12px; }
@keyframes stakeholderFlow { from { stroke-dashoffset: 0; } to { stroke-dashoffset: -488; } }
@keyframes stakeholderOrbit { to { stroke-dashoffset: -140; } }
@media (prefers-reduced-motion:no-preference) {
  .slide.active .stake-signal-line {
    opacity: 1; animation: stakeholderFlow 4.8s linear infinite;
  }
  .slide.active .stake-signal-line:nth-child(2) { animation-delay: -1.1s; }
  .slide.active .stake-signal-line:nth-child(3) { animation-delay: -2.2s; }
  .slide.active .stake-signal-line:nth-child(4) { animation-delay: -3.3s; }
  .slide.active .stake-ring { animation: stakeholderOrbit 27s linear infinite; }
}

/* V4 — cover feels like an always-active intelligence network. */
.cover .cover-transmission {
  stroke-dasharray: 12 100;
  stroke-dashoffset: 100;
  opacity: .85;
  filter: drop-shadow(0 0 5px rgba(154,247,253,.75));
}
@keyframes coverSignals { to { stroke-dashoffset: -700; } }
@keyframes orbitDrift { to { stroke-dashoffset: -300; } }
@keyframes coverLabelBreathe { 0%,100%{ opacity:.67; border-color:rgba(154,226,238,.22); } 50%{ opacity:1; border-color:rgba(178,250,254,.56); } }
@keyframes coverNodeFlicker { 0%,100%{ opacity:.45; } 50%{ opacity:1; } }
@media (prefers-reduced-motion:no-preference) {
  .slide.active .cover-transmission { animation: coverSignals 11s linear infinite; }
  .slide.active .ct-two { animation-duration: 7.5s; animation-delay: -2.3s; }
  .slide.active .ct-three { animation-duration: 9s; animation-delay: -4.3s; }
  .slide.active .ct-four { animation-duration: 12.5s; animation-delay: -6.7s; }
  .slide.active .cover-network .orbit-circle { animation: orbitDrift 47s linear infinite; }
  .slide.active .cover-network .orbit-circle.o2 { animation-duration: 67s; animation-direction: reverse; }
  .slide.active .cover-network .orbit-ellipse { animation: coverNodeFlicker 8s ease-in-out infinite; }
  .slide.active .cover-network .e2 { animation-delay: -3.6s; }
  .slide.active .float-label { animation:coverLabelBreathe 7.6s ease-in-out infinite; }
  .slide.active .label-b { animation-delay: -2.45s; }
  .slide.active .label-c { animation-delay: -4.9s; }
}

/* Active-step callouts: passive, sequenced by JS at a calm three-second
   presenter cadence. Reversed text/background communicates what to discuss. */
.slide .fracture,
.slide .platform-node,
.slide .flow-stage,
.slide .stake-person,
.slide .engine-row,
.slide .roi-branch,
.slide .sector-pills span,
.slide .vision-pillars>div {
  transition: background .55s ease, color .55s ease, border-color .55s ease,
    transform .55s cubic-bezier(.18,.78,.2,1), box-shadow .55s ease;
  will-change: auto;
}
.slide.active .fracture.is-emphasized,
.slide.active .platform-node.is-emphasized,
.slide.active .flow-stage.is-emphasized,
.slide.active .stake-person.is-emphasized,
.slide.active .engine-row.is-emphasized,
.slide.active .roi-branch.is-emphasized,
.slide.active .sector-pills span.is-emphasized,
.slide.active .vision-pillars>div.is-emphasized {
  background: #b0eff1;
  border-color: #e3ffff;
  color: #0b3441;
  transform: scale(1.025);
  box-shadow: 0 16px 34px rgba(0,0,0,.16), 0 0 26px rgba(125,229,240,.16);
  z-index: 8;
}
.slide.active .fracture.is-emphasized span,
.slide.active .fracture.is-emphasized b,
.slide.active .platform-node.is-emphasized h3,
.slide.active .platform-node.is-emphasized p,
.slide.active .platform-node.is-emphasized i,
.slide.active .flow-stage.is-emphasized b,
.slide.active .flow-stage.is-emphasized small,
.slide.active .flow-stage.is-emphasized .flow-num,
.slide.active .stake-person.is-emphasized b,
.slide.active .stake-person.is-emphasized span,
.slide.active .engine-row.is-emphasized strong,
.slide.active .engine-row.is-emphasized i,
.slide.active .roi-branch.is-emphasized b,
.slide.active .roi-branch.is-emphasized small,
.slide.active .sector-pills span.is-emphasized,
.slide.active .vision-pillars>div.is-emphasized,
.slide.active .vision-pillars>div.is-emphasized b {
  color: #0b3441;
}
.slide.active .flow-stage.is-emphasized .flow-symbol,
.slide.active .roi-branch.is-emphasized .roi-icon {
  background: #1b7183; color:#d7fbfc;
  border-color: #1b7183;
}
.slide.active .roi-branch.is-emphasized .roi-icon svg { stroke: #efffff; }
.slide.active .engine-row.is-emphasized { padding-left: 16px; padding-right: 10px; border-radius: 2px; }
.slide.active .sector-pills span.is-emphasized { position:relative; }
.slide.active .vision-pillars>div.is-emphasized { position:relative; }
.slide.active .fracture.is-emphasized { position:relative; }
.slide.active .platform-node.is-emphasized { z-index: 8; }
.slide.active .flow-stage.is-emphasized { z-index: 8; }
.slide.active .stake-person.is-emphasized { z-index: 8; }

/* Independent micro-movements for diagrams on slides without a long list. */
@keyframes outputBorder { 0%,100% { border-color:rgba(141,216,232,.27); box-shadow:0 0 0 rgba(155,236,249,0); }
50% { border-color:rgba(172,247,249,.54); box-shadow:0 0 28px rgba(127,226,239,.1); } }
@keyframes modelDial { 0%,100% { box-shadow:0 0 0 7px rgba(92,199,212,.05); }
50% { box-shadow:0 0 0 11px rgba(92,199,212,.11); } }
@keyframes closingLine {0%,100%{opacity:.55;transform:scaleX(.65)}50%{opacity:1;transform:scaleX(1.2)}}
@media (prefers-reduced-motion:no-preference) {
  .slide.active .solution-output { animation:outputBorder 8s ease-in-out infinite; }
  .slide.active .flow-symbol { animation:modelDial 5.6s ease-in-out infinite; }
  .slide.active .close-main .closing-line { animation:closingLine 6.5s ease-in-out infinite; }
  .slide.active .close-glow { animation:coverNodeFlicker 9s ease-in-out infinite; }
}
/* All motion, including the rotating highlight, is disabled for reduced motion. */
@media (prefers-reduced-motion:reduce) {
  .slide .is-emphasized{transition:none!important;transform:none!important;box-shadow:none!important;}
  .cover .cover-transmission{opacity:.23;stroke-dasharray:none;}
  .solution .stake-signal-line{opacity:.16;stroke-dasharray:none;}
}

/* Use the independent CSS scale property so rotating emphasis still grows
   after the entrance keyframe's transform has finished and filled. */
.slide .fracture,.slide .platform-node,.slide .flow-stage,
.slide .stake-person,.slide .engine-row,.slide .roi-branch,
.slide .sector-pills span,.slide .vision-pillars>div {
  scale: 1;
  transition: scale .55s cubic-bezier(.18,.78,.2,1),
              background .55s ease,color .55s ease,
              border-color .55s ease,box-shadow .55s ease;
}
.slide.active .is-emphasized { scale:1.025; }
@media(prefers-reduced-motion:reduce) {
  .slide .is-emphasized { scale:1!important; }
}
