/* V12: detail-first boardroom refinements.
   All dimensions use the locked 1600 x 900 slide design coordinates.
   A visual must illuminate or expand meaning, not repeat a headline. */

/* Slide 3: platform wires remain dominant above the traveling ambient sphere. */
.platform .platform-canvas {
  isolation:isolate;
  z-index:3;
}
.platform .platform-canvas > .platform-lines {
  position:absolute;
  z-index:1;
  opacity:1;
  stroke:#b9f4fa;
  stroke-width:2.2;
  stroke-opacity:.84;
  filter:drop-shadow(0 0 3px rgba(145,236,246,.65))
         drop-shadow(0 0 12px rgba(64,179,199,.24));
}
.platform .platform-lines path.drawpath {
  stroke:#a9edf5;
  stroke-width:2.7;
  stroke-opacity:.96;
}
.platform .platform-lines .platform-node-glow {
  fill:#c7feff;
  stroke:#2e7f91;
  stroke-width:2;
  filter:drop-shadow(0 0 7px rgba(154,236,246,.8));
}
.platform .platform-core{z-index:4;}
.platform .platform-node{z-index:5;}

/* Slide 4: enlargement must be visible when a model stage illuminates. */
.model .flow-canvas{
  isolation:isolate;
  overflow:visible;
  z-index:4;
}
.model .flow-stage {
  scale:1;
  transform-origin:center center;
  transition:scale .55s cubic-bezier(.2,.8,.2,1),
    background .55s ease,box-shadow .55s ease,border-color .55s ease;
}
.model.active .flow-stage.is-emphasized {
  scale:1.095;
  z-index:11;
  transform-origin:center center;
  border-color:#e9ffff;
  box-shadow:0 20px 45px rgba(0,0,0,.27),
    0 0 0 2px rgba(182,251,254,.44),
    0 0 35px rgba(137,236,244,.22);
}
.model.active .flow-stage.is-emphasized .flow-symbol {
  border-color:#a5f3f6;
  box-shadow:0 0 0 7px rgba(106,222,232,.17),
    0 0 23px rgba(123,229,238,.2);
}

/* Slide 5: four clinical/care/family/insurance lines must be unmistakable.
   The foreground graph's contrast is separate from the ambient orbit. */
.solution .stakeholder-stage{z-index:4;isolation:isolate}
.solution .stakeholder-network svg{
  z-index:1;
  stroke-opacity:1;
  filter:drop-shadow(0 0 7px rgba(110,225,239,.11));
}
.solution .stake-wire {
  stroke:#adf2f8;
  stroke-width:2.6;
  opacity:.87;
  filter:drop-shadow(0 0 4px rgba(141,233,246,.39));
}
.solution .stake-signal-line {
  stroke:#edffff;
  stroke-width:4.7;
  opacity:1;
  filter:drop-shadow(0 0 8px rgba(176,249,255,.88));
}
.solution .stake-anchor{
  fill:#b9fcff;
  stroke:#2e8fa2;
  stroke-width:1.7;
  filter:drop-shadow(0 0 8px rgba(166,244,251,.7));
}
.solution .stake-ring{stroke-opacity:.2;opacity:.18}
.solution .stake-core{z-index:4}
.solution .stake-person{z-index:5}

/* Slide 7: say financial return plainly, not only in an eyebrow. */
.roi .header-block h2 {
  font-size:63px;
  line-height:1.065;
}
.roi .header-block>p:not(.mini-eyebrow){max-width:1320px;font-size:16px}
.roi .roi-diagram{isolation:isolate;z-index:4;overflow:visible}
.roi .roi-branch{
  scale:1;
  transform-origin:center center;
  transition:scale .55s cubic-bezier(.2,.8,.2,1),
    background .55s ease,box-shadow .55s ease,border-color .55s ease;
}
.roi.active .roi-branch.is-emphasized{
  scale:1.08;
  z-index:10;
  box-shadow:0 25px 50px rgba(0,0,0,.25),
    0 0 0 2px rgba(189,255,255,.35),
    0 0 35px rgba(134,232,244,.26);
  border-color:#ebffff;
}
.roi.active .roi-branch.is-emphasized .roi-icon{
  border-color:#a5f5f5;
  box-shadow:0 0 0 7px rgba(77,186,203,.14),
    0 0 20px rgba(95,207,225,.2);
}

/* Slide 9: supporting insights expand from nodes on selection.
   The left side states the ambition, the right side explains its use. */
.vision .vision-world{isolation:isolate}
.vision .vision-node{
  width:152px;
  min-width:0;
  min-height:53px;
  align-items:flex-start;
  gap:10px;
  padding:12px 13px;
  transition:width .48s cubic-bezier(.2,.8,.2,1),
    background .48s,color .48s,border-color .48s,
    opacity .48s,box-shadow .48s;
}
.vision .vision-node>i {margin-top:3px}
.vision .vision-node>span {
  display:block;
  min-width:0;
  font-size:10px;
  line-height:1.42;
  letter-spacing:.085em;
}
.vision .vision-node-detail{
  display:block;
  font:500 11px/1.38 var(--font);
  letter-spacing:0;
  color:#a8cfda;
  max-height:0;
  margin-top:0;
  opacity:0;
  overflow:hidden;
  transition:max-height .4s cubic-bezier(.2,.8,.2,1),
    opacity .36s,margin-top .36s;
}
.vision .vision-world[data-active-step="0"] [data-vision-node="0"],
.vision .vision-world[data-active-step="1"] [data-vision-node="1"],
.vision .vision-world[data-active-step="2"] [data-vision-node="2"],
.vision .vision-world[data-active-step="3"] [data-vision-node="3"] {
  width:242px;
  z-index:9;
}
.vision .vision-world[data-active-step="0"] [data-vision-node="0"] .vision-node-detail,
.vision .vision-world[data-active-step="1"] [data-vision-node="1"] .vision-node-detail,
.vision .vision-world[data-active-step="2"] [data-vision-node="2"] .vision-node-detail,
.vision .vision-world[data-active-step="3"] [data-vision-node="3"] .vision-node-detail{
  max-height:58px;
  margin-top:8px;
  opacity:1;
  color:#174653;
}
.vision .vn0{left:50%;top:2%;transform:translateX(-50%)}
.vision .vn1{right:-1%;top:27%}
.vision .vn2{left:60%;bottom:6%}
.vision .vn3{left:0;top:58%}
.vision .vision-pillar-indicator{pointer-events:none}
@media(prefers-reduced-motion:reduce){
  .model .flow-stage,.roi .roi-branch{transition:none!important;scale:1!important}
  .vision .vision-node,.vision .vision-node-detail{transition:none!important}
}

/* ROI value claims remain conditional; each card names a measurable pilot
   indicator without asserting a result or inventing a financial percentage. */
.roi .roi-branch>small{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
}
.roi .roi-metric-kicker{
  color:#8fcad5;
  font:700 9px var(--font);
  letter-spacing:.09em;
}
.roi .roi-metric-value{
  color:#e4f7f8;
  font:500 12px/1.25 var(--font);
  letter-spacing:0;
}
.roi.active .roi-branch.is-emphasized .roi-metric-kicker,
.roi.active .roi-branch.is-emphasized .roi-metric-value {
  color:#124653;
}


/* Consistent confidentiality footer; evidence notes stay with the related content. */
.slide-label>span{font-size:10px;opacity:.65;letter-spacing:.16em}
.cover-foot{left:82px;right:82px;bottom:38px;padding-top:13px;align-items:center;gap:25px}
.cover-foot .confidential-note,.slide-footer .confidential-note{font:400 12px/1.4 var(--font);letter-spacing:0;text-transform:none;color:#a5bec7;max-width:790px;text-align:right}
.strategic-takeaway{color:#d9f6f8}
.problem .bottom-statement{font-size:15px;line-height:1.55;letter-spacing:.035em;border-left:3px solid #8ae4ec;padding-left:18px}
.context-note{font-size:12px;color:#b7d5dd;max-width:1330px}
.roi .roi-diagram{height:277px}
.roi .roi-proof{top:730px;height:94px;padding:12px 20px;gap:24px}
.roi .roi-proof>strong{font-size:12px;line-height:1.5;max-width:150px;margin-right:0}
.roi-process{display:flex;align-items:center;flex:1;gap:0;list-style:none;margin:0;padding:0}
.roi-process li{display:flex;align-items:center;flex:1}
.roi-process li+li:before{content:'→';color:#81cbd6;font-size:22px;margin:0 12px}
.roi-step{appearance:none;cursor:pointer;background:rgba(15,60,74,.65);border:1px solid #416e7c;border-radius:4px;color:#c9e8ed;min-height:60px;padding:9px 15px;text-align:left;flex:1;transition:background .4s,border-color .4s,box-shadow .4s}
.roi .roi-step span{font:600 23px/1.2 var(--font);color:inherit}
.roi .roi-step small{display:block;margin:0 0 3px;font:600 10px var(--font);color:inherit;max-width:none}
.roi-step.is-emphasized{background:#c4f6f6;color:#103f4e;border-color:#edffff;box-shadow:0 0 22px #8ae4ec30}
.roi-step:focus-visible{outline:3px solid #fff;outline-offset:4px}
.roi .roi-proof>.roi-validation{font:400 11px/1.5 var(--font);letter-spacing:0;max-width:215px;margin:0;color:#a5bec7}
.presentation-paused .roi-step{transition:none}
@media(prefers-reduced-motion:reduce){.roi-step{transition:none}}

/* Larger section identity at left; consistent Reveali signature at right. */
.slide-label{top:48px;min-height:44px;gap:28px;justify-content:space-between}
.slide-label span{margin:0;opacity:1;color:inherit}
.slide-label .section-id{display:flex;align-items:center;gap:17px;letter-spacing:.12em;color:#b7dce4}
.slide-label .section-orbital{display:block;width:52px;height:52px;flex:none;filter:drop-shadow(0 0 5px #82dce95c)}
.section-orbital svg{display:block;width:100%;height:100%;overflow:visible}
.section-orbital .section-orbit-ring{fill:none;stroke:#a4edf3;stroke-width:.9;stroke-opacity:.82;vector-effect:non-scaling-stroke}
.section-orbital .section-orbit-ring.inner{stroke-opacity:.42}
.section-orbital .section-orbit-web{fill:none;stroke:#8dd8e5;stroke-width:.65;stroke-opacity:.65;vector-effect:non-scaling-stroke}
.section-orbit-nodes{fill:#d0ffff}
.section-orbit-spin{transform-origin:340px 340px}
@keyframes sectionOrbitalTurn{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:no-preference){.slide.active .section-orbit-spin{animation:sectionOrbitalTurn 20s linear infinite}}
@media(prefers-reduced-motion:reduce){.section-orbit-spin{animation:none!important}}
.slide-label .section-id>span{font:700 14px/1.3 var(--font);letter-spacing:.12em}
.slide-label .deck-signature{display:flex;align-items:center;gap:11px;flex:none;font:700 11px var(--font);letter-spacing:.18em;color:#9dcbd4}
.deck-signature>i{height:8px;width:8px;background:#b5f8f8;box-shadow:0 0 0 5px #9aeeF614;border-radius:50%;display:block}
/* Give the platform context its own lane, clear of every illuminated card. */
.platform .platform-canvas{top:365px;height:342px}
.platform .platform-context{position:absolute;left:82px;right:82px;top:748px;min-height:61px;display:flex;align-items:center;gap:23px;padding:13px 20px;border-top:1px solid #8bd7e433;background:#0b334160;z-index:6}
.platform-context>strong{font:700 11px/1.4 var(--font);letter-spacing:.1em;color:#8cd3df;max-width:148px;flex:none}
.platform-context ul{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:17px;padding:0;margin:0;flex:1}
.platform-context li{font:500 14px/1.4 var(--font);color:#cee9ee}
.platform-context li+li{border-left:1px solid #81c3d33d;padding-left:17px}
.platform-context li small{display:block;font:500 10px/1.3 var(--font);color:#9bc2ce}
/* The selected model stage grows into the open lane below the sequence. */
.model .flow-canvas{top:390px;height:298px;gap:12px;left:96px;right:96px}
.model .flow-stage{padding:12px 11px;transform-origin:center top}
.model .flow-stage .flow-symbol{width:44px;height:44px;margin:8px 0 12px;flex:none}
.model .flow-stage b{font-size:18px;min-height:43px}
.model .flow-description{font:400 12px/1.4 var(--font);color:#b4cfd8;margin:8px 0;max-width:142px}
.model.active .flow-stage.is-emphasized{scale:1.18;transform-origin:center top}
.model.active .flow-stage.is-emphasized .flow-description{color:#174653}
.model .flow-stage>small{font-size:8px}
.model .flow-takeaway{top:766px;height:49px}
.model .flow-takeaway>b{font-size:20px}
@media(prefers-reduced-motion:reduce){.model.active .flow-stage.is-emphasized{scale:1!important}}

/* Slide 5 builds each connection outward from the card being discussed. */
.solution .stake-connection{visibility:hidden}
.solution.active .stake-connection.is-connected{visibility:visible}
.solution .stake-connection .stake-wire{stroke-dasharray:1;stroke-dashoffset:1}
.solution.active .stake-connection.is-connected .stake-wire{stroke-dashoffset:0}
.solution.active .stake-connection.is-current .stake-wire{animation:stakeConnectionDraw .85s cubic-bezier(.2,.7,.2,1) both}
.solution .stake-connection .stake-signal-line{opacity:0;animation:none;stroke-dasharray:.07 .93;stroke-dashoffset:1}
.solution.active .stake-connection.is-current .stake-signal-line{opacity:1;animation:stakeConnectionSignal 3.1s linear .85s infinite}
@keyframes stakeConnectionDraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes stakeConnectionSignal{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){
  .solution.active .stake-connection{visibility:visible}
  .solution .stake-connection .stake-wire{stroke-dashoffset:0!important;animation:none!important}
  .solution .stake-connection .stake-signal-line{display:none}
}

/* Persistent introduction and two understated breathing signal dots. */
.deck-meta{min-width:0}
.deck-meta>i{flex:none}
.deck-meta .deck-heading,.deck-meta .deck-tagline{white-space:nowrap}
@keyframes headerDotBreath{
  0%,100%{opacity:.55;transform:scale(.9);box-shadow:0 0 7px #8ddce966}
  50%{opacity:1;transform:scale(1.1);box-shadow:0 0 17px #8ddce9a6}
}
@media(prefers-reduced-motion:no-preference){
  .deck-meta>i,.slide.active .deck-signature>i{animation:headerDotBreath 3.8s ease-in-out infinite}
  .slide.active .deck-signature>i{animation-delay:-1.9s}
}
.presentation-paused .deck-meta>i,.presentation-not-visible .deck-meta>i{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){
  .deck-meta>i,.deck-signature>i{animation:none!important}
}
@media(max-width:580px){
  .deck-meta{display:grid;grid-template-columns:7px auto;column-gap:6px;row-gap:3px;flex:1;font-size:7px;letter-spacing:.03em;text-align:center;justify-content:center;line-height:1.25}
  .deck-meta>i{grid-column:1;grid-row:1 / 3;align-self:center}
  .deck-meta .deck-heading{grid-column:2;grid-row:1}
  .deck-meta .deck-tagline{grid-column:2;grid-row:2}
}
