/*
  V5 — EXECUTIVE CINEMATIC EXPERIENCE
  A restrained show-opening, chapter signatures, one data pulse and case lock-on.
*/

.v5 .gate-transition,
.v5 .cinematic-transition { display: none !important; }

/* Opening handoff: a decisive diagonal command sweep, with no 3D or blur. */
html[data-transition="opening"]::view-transition-old(root) {
  z-index: 1;
  animation: v5OpeningHold .62s cubic-bezier(.76,0,.18,1) both;
}
html[data-transition="opening"]::view-transition-new(root) {
  z-index: 2;
  animation: v5OpeningSweep .62s cubic-bezier(.76,0,.18,1) both;
}
html[data-transition="opening"][data-direction="back"]::view-transition-new(root) {
  animation-name: v5OpeningSweepBack;
}
@keyframes v5OpeningHold {
  from { opacity: 1; }
  to { opacity: .38; }
}
@keyframes v5OpeningSweep {
  0% { clip-path: polygon(0 0, 0 0, 0 100%, 0 100%); }
  45% { clip-path: polygon(0 0, 52% 0, 45% 100%, 0 100%); }
  100% { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }
}
@keyframes v5OpeningSweepBack {
  0% { clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%); }
  45% { clip-path: polygon(48% 0, 100% 0, 100% 100%, 55% 100%); }
  100% { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }
}
.v5 .question-slide[data-motion="root-only"].active .audience-prompt {
  animation: v5PromptLock .36s 1.02s cubic-bezier(.16,.86,.22,1) both;
}
.v5 .question-slide .question-layout {
  grid-template-columns: .82fr 1.18fr;
  gap: 72px;
  min-height: 650px;
  padding-bottom: 88px;
}
.v5 .question-slide .decision-copy {
  max-width: 710px;
}
.v5 .question-slide .decision-copy .overline {
  max-width: 600px;
  color: #dce9ef;
  line-height: 1.35;
}
.v5 .question-slide .decision-copy h2 {
  margin: 25px 0 24px;
  font-size: 72px;
  line-height: .99;
}
.v5 .question-slide .decision-copy h2 em {
  color: #7ce4e8;
}
.v5 .question-slide .decision-copy .lead {
  max-width: 650px;
  font-size: 27px;
  line-height: 1.38;
}
.v5 .question-slide .email-card {
  padding: 48px 54px 42px;
  transform: rotate(-.65deg) perspective(900px) rotateY(-2deg);
  box-shadow: 26px 26px 0 rgba(72,212,221,.09), 0 38px 95px rgba(0,0,0,.38);
}
.v5 .question-slide .email-card p {
  margin: 30px 0 34px;
  font-size: 30px;
  line-height: 1.42;
}
.v5 .question-slide .mail-decision-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  padding-top: 22px;
  border-top: 1px solid #d8e3e8;
}
.v5 .question-slide .approval-signature {
  min-width: 330px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: end;
  gap: 13px;
  color: #60798a;
}
.v5 .question-slide .approval-signature small {
  font-size: 13px;
  font-weight: 850;
  letter-spacing: .1em;
  white-space: nowrap;
}
.v5 .question-slide .approval-signature i {
  height: 1px;
  margin-bottom: 3px;
  background: #8fa5b1;
}
.v5 .question-slide .approval-signature b {
  color: #d65b41;
  font-size: 14px;
  letter-spacing: .08em;
  white-space: nowrap;
}
.v5 .question-slide .decision-dock {
  left: 112px;
  right: 112px;
  bottom: 94px;
  min-height: 104px;
  display: grid;
  grid-template-columns: 1.2fr 1fr 1.15fr 1.55fr;
  align-items: stretch;
  padding: 0;
  border: 1px solid rgba(124,228,232,.28);
  border-left: 7px solid var(--amber);
  background: rgba(3,17,28,.93);
  box-shadow: 0 22px 54px rgba(0,0,0,.3), inset 0 1px rgba(255,255,255,.04);
}
.v5 .question-slide .decision-clock,
.v5 .question-slide .decision-option {
  display: flex;
  align-items: center;
  min-width: 0;
}
.v5 .question-slide .decision-clock {
  padding: 0 34px;
  color: #aac3d1;
  font-size: 17px;
  font-weight: 760;
  letter-spacing: .13em;
  white-space: nowrap;
}
.v5 .question-slide .decision-clock b {
  margin-right: 9px;
  color: var(--amber);
  font-size: 34px;
  letter-spacing: -.03em;
}
.v5 .question-slide .decision-option {
  justify-content: center;
  gap: 17px;
  border-left: 1px solid rgba(124,228,232,.2);
}
.v5 .question-slide .decision-option b {
  color: #76dce1;
  font-size: 15px;
  letter-spacing: .08em;
}
.v5 .question-slide .decision-option strong {
  color: #fff;
  font-size: 23px;
  font-weight: 850;
  letter-spacing: .055em;
}
.v5 .question-slide.active .decision-copy {
  animation: v5DecisionCopyIn .58s .3s cubic-bezier(.16,.86,.22,1) both;
}
.v5 .question-slide.active .email-card {
  animation: v5DecisionMailIn .64s .42s cubic-bezier(.16,.86,.22,1) both;
}
@keyframes v5DecisionCopyIn {
  from { opacity: 0; transform: translate3d(-34px,0,0); clip-path: inset(0 100% 0 0); }
  to { opacity: 1; transform: translate3d(0,0,0); clip-path: inset(0); }
}
@keyframes v5DecisionMailIn {
  from { opacity: 0; transform: translate3d(70px,0,0) rotate(-.65deg) perspective(900px) rotateY(-2deg); }
  to { opacity: 1; transform: translate3d(0,0,0) rotate(-.65deg) perspective(900px) rotateY(-2deg); }
}

/* Slide 3 — verdict reveal: answer first, then expose evidence in the email. */
.v5 .verdict-slide::before {
  background:
    radial-gradient(circle at 72% 38%, rgba(25,198,209,.13), transparent 34%),
    linear-gradient(rgba(124,228,232,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(124,228,232,.035) 1px, transparent 1px);
  background-size: auto, 72px 72px, 72px 72px;
}
.v5 .verdict-layout {
  display: grid;
  grid-template-columns: 420px 1fr;
  gap: 76px;
  align-items: center;
  min-height: 650px;
  padding-bottom: 88px;
}
.v5 .verdict-copy {
  position: relative;
  z-index: 2;
}
.v5 .verdict-copy .overline {
  margin-bottom: 20px;
  color: var(--amber);
}
.v5 .verdict-copy h2 {
  margin: 0;
  font-size: 124px;
  line-height: .76;
  letter-spacing: -.065em;
}
.v5 .verdict-copy h2 span {
  color: #ff6773;
}
.v5 .verdict-lead {
  margin: 38px 0 20px;
  color: #d8e7ee;
  font-size: 31px;
  line-height: 1.28;
}
.v5 .verdict-lead strong {
  color: #7ce4e8;
}
.v5 .verdict-reason {
  max-width: 405px;
  color: #8fa9b8;
  font-size: 21px;
  line-height: 1.42;
}
.v5 .email-xray {
  position: relative;
  min-height: 440px;
  padding: 42px 52px 24px;
  color: var(--ink);
  background: #f7fbfd;
  border-top: 11px solid var(--amber);
  box-shadow: 28px 28px 0 rgba(72,212,221,.09), 0 38px 95px rgba(0,0,0,.42);
  transform: rotate(-.55deg);
}
.v5 .xray-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 22px;
  border-bottom: 2px solid #dce7ed;
  color: #60798a;
  font-size: 18px;
  letter-spacing: .07em;
}
.v5 .xray-top b {
  margin-right: 14px;
  color: #0b6483;
}
.v5 .xray-top small {
  color: #a05b00;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .14em;
}
.v5 .email-xray > p {
  margin: 34px 0 28px;
  font-size: 30px;
  line-height: 1.52;
  font-weight: 640;
}
.v5 .risk-mark {
  position: relative;
  padding: 0 .08em .05em;
  color: inherit;
  background: linear-gradient(transparent 48%, rgba(255,92,104,.34) 48% 94%, transparent 94%);
  background-repeat: no-repeat;
  background-size: 0 100%;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.v5 .risk-mark i {
  position: relative;
  top: -.7em;
  display: inline-block;
  margin-right: 5px;
  color: #d83244;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}
.v5 .verdict-stamp {
  position: absolute;
  z-index: 3;
  right: 42px;
  top: 32px;
  padding: 10px 18px 8px;
  color: #d83244;
  border: 4px solid #d83244;
  font-size: 19px;
  font-weight: 950;
  letter-spacing: .13em;
  white-space: nowrap;
  transform: rotate(-6deg);
  opacity: 0;
}
.v5 .xray-findings {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  border-top: 1px solid #d8e3e8;
}
.v5 .xray-findings > span {
  min-height: 88px;
  padding: 22px 18px 0;
  border-left: 1px solid #d8e3e8;
  opacity: 0;
}
.v5 .xray-findings > span:first-child {
  padding-left: 0;
  border-left: 0;
}
.v5 .xray-findings b {
  display: block;
  margin-bottom: 6px;
  color: #d83244;
  font-size: 13px;
}
.v5 .xray-findings strong {
  display: block;
  font-size: 16px;
  letter-spacing: .035em;
}
.v5 .xray-findings small {
  display: block;
  margin-top: 5px;
  color: #60798a;
  font-size: 14px;
}
.v5 .verdict-action {
  position: absolute;
  left: 112px;
  right: 112px;
  bottom: 95px;
  min-height: 92px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 34px;
  color: #a8c0cc;
  border: 1px solid rgba(124,228,232,.25);
  border-left: 7px solid var(--amber);
  background: rgba(3,17,28,.93);
  box-shadow: 0 22px 54px rgba(0,0,0,.3);
  font-size: 21px;
  font-weight: 820;
  letter-spacing: .08em;
  opacity: 0;
}
.v5 .verdict-action i {
  color: var(--amber);
  font-size: 30px;
  font-style: normal;
}
.v5 .verdict-action strong {
  color: #fff;
}
.v5 .verdict-slide.active .verdict-copy {
  animation: v5VerdictCopyIn .52s .12s cubic-bezier(.16,.86,.22,1) both;
}
.v5 .verdict-slide.active .email-xray {
  animation: v5XrayIn .6s .22s cubic-bezier(.16,.86,.22,1) both;
}
.v5 .verdict-slide.active .risk-one { animation: v5MarkReveal .36s .68s ease-out both; }
.v5 .verdict-slide.active .risk-two { animation: v5MarkReveal .36s .84s ease-out both; }
.v5 .verdict-slide.active .risk-three { animation: v5MarkReveal .42s 1s ease-out both; }
.v5 .verdict-slide.active .xray-findings > span:nth-child(1) { animation: v5FindingIn .34s .74s ease-out both; }
.v5 .verdict-slide.active .xray-findings > span:nth-child(2) { animation: v5FindingIn .34s .9s ease-out both; }
.v5 .verdict-slide.active .xray-findings > span:nth-child(3) { animation: v5FindingIn .34s 1.06s ease-out both; }
.v5 .verdict-slide.active .verdict-stamp { animation: v5StampIn .38s 1.18s cubic-bezier(.12,.82,.2,1.25) both; }
.v5 .verdict-slide.active .verdict-action { animation: v5PromptLock .42s 1.32s cubic-bezier(.16,.86,.22,1) both; }
@keyframes v5VerdictCopyIn {
  from { opacity: 0; transform: translate3d(-38px,0,0); }
  to { opacity: 1; transform: none; }
}
@keyframes v5XrayIn {
  from { opacity: 0; transform: translate3d(64px,0,0) rotate(-.55deg); }
  to { opacity: 1; transform: translate3d(0,0,0) rotate(-.55deg); }
}
@keyframes v5MarkReveal {
  from { background-size: 0 100%; }
  to { background-size: 100% 100%; }
}
@keyframes v5FindingIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: none; }
}
@keyframes v5StampIn {
  from { opacity: 0; transform: scale(1.35) rotate(-10deg); }
  to { opacity: 1; transform: scale(1) rotate(-6deg); }
}
@keyframes v5PromptLock {
  from { opacity: 0; transform: translateY(12px); clip-path: inset(0 100% 0 0); }
  to { opacity: 1; transform: none; clip-path: inset(0); }
}

/* The opening truck physically carries the new scene across the stage. */
.opening-truck-transition {
  position: absolute;
  inset: 0;
  z-index: 150;
  display: none;
  overflow: hidden;
  pointer-events: none;
}
.opening-truck-transition.run { display: block; }
.truck-curtain {
  position: absolute;
  z-index: 1;
  left: -24%;
  top: -8%;
  width: 148%;
  height: 116%;
  overflow: hidden;
  color: rgba(255,255,255,.52);
  background:
    linear-gradient(90deg, rgba(5,20,34,.98), rgba(7,45,78,.99) 45%, rgba(4,24,42,.99)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.055) 0 4px, transparent 4px 82px);
  box-shadow: 0 0 0 1px rgba(100,229,233,.18), 0 0 80px rgba(0,0,0,.55);
  transform: translate3d(-115%,0,0) skewX(-6deg);
  will-change: transform;
  backface-visibility: hidden;
}
.truck-curtain::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.06) 0 3px, transparent 3px 78px),
    linear-gradient(180deg, transparent 0 11%, rgba(255,255,255,.09) 11% 11.5%, transparent 11.5% 88%, rgba(255,174,53,.18) 88% 88.6%, transparent 88.6%);
}
.truck-curtain::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 7px;
  height: 100%;
  background: #ffc35e;
  box-shadow: 0 0 18px 4px rgba(255,174,53,.52);
}
.truck-curtain span {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%) skewX(6deg);
  font-size: 20px;
  font-weight: 900;
  letter-spacing: .32em;
  white-space: nowrap;
}
.truck-rig {
  position: absolute;
  z-index: 3;
  left: 0;
  bottom: 34px;
  width: 1640px;
  transform: translate3d(-112%,0,0);
  will-change: transform;
  backface-visibility: hidden;
  transform-style: flat;
}
.truck-rig::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 4%;
  right: 1%;
  bottom: 5%;
  height: 9%;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(0,0,0,.5), rgba(0,0,0,0) 72%);
}
.truck-rig-image { display: block; width: 100%; height: auto; }
.truck-snp-brand {
  position: absolute;
  z-index: 2;
  left: 23.8%;
  top: 23.3%;
  width: 42.5%;
  height: 29%;
  display: flex;
  align-items: center;
  gap: 2.5%;
  color: #fff;
  transform: rotate(-2.2deg) skewX(-1deg) translateZ(0);
  transform-origin: center;
  opacity: .96;
  text-shadow: 0 2px 2px rgba(0,20,58,.38);
  pointer-events: none;
}
.truck-snp-emblem {
  flex: 0 0 24%;
  align-self: stretch;
  position: relative;
  overflow: hidden;
}
.truck-snp-emblem img {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: auto;
  max-width: none;
  height: 100%;
}
.truck-snp-copy {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  letter-spacing: .01em;
  line-height: 1;
}
.truck-snp-name {
  display: flex;
  align-items: flex-end;
  gap: 3.5%;
  margin-bottom: 4.2%;
  white-space: nowrap;
}
.truck-snp-name b {
  font-size: 52px;
  font-weight: 900;
  letter-spacing: .01em;
}
.truck-snp-name i {
  font-size: 40px;
  font-style: normal;
  font-weight: 420;
  letter-spacing: -.025em;
}
.truck-snp-copy small {
  display: block;
  font-size: 16px;
  font-weight: 650;
  line-height: 1.28;
  letter-spacing: .005em;
  white-space: nowrap;
}
.truck-speed-lines {
  position: absolute;
  z-index: 2;
  inset: 0;
  opacity: 0;
}
.truck-speed-lines i {
  position: absolute;
  left: 0;
  height: 2px;
  width: 52%;
  transform: scaleX(0);
  transform-origin: left center;
  background: linear-gradient(90deg, transparent, rgba(110,241,244,.76), transparent);
}
.truck-speed-lines i:nth-child(1) { top: 66%; }
.truck-speed-lines i:nth-child(2) { top: 74%; width: 68%; }
.truck-speed-lines i:nth-child(3) { top: 82%; width: 44%; background: linear-gradient(90deg, transparent, rgba(255,190,82,.72), transparent); }
.opening-truck-transition.run .truck-curtain {
  animation: truckCurtainPass 2.3s cubic-bezier(.72,0,.2,1) both;
}
.opening-truck-transition.run .truck-rig {
  animation: truckRigPass 2.3s linear both;
}
.opening-truck-transition.run .truck-speed-lines { animation: truckLinesLive 2.3s ease both; }
.opening-truck-transition.run .truck-speed-lines i { animation: truckLineStretch 1.1s .18s ease-out both; }
@keyframes truckCurtainPass {
  0% { transform: translate3d(-115%,0,0) skewX(-6deg); }
  42%, 56% { transform: translate3d(0,0,0) skewX(-6deg); }
  100% { transform: translate3d(115%,0,0) skewX(-6deg); }
}
@keyframes truckRigPass {
  from { transform: translate3d(-112%,0,0); }
  to { transform: translate3d(125%,0,0); }
}
@keyframes truckLinesLive {
  0%, 8%, 88%, 100% { opacity: 0; }
  18%, 76% { opacity: .86; }
}
@keyframes truckLineStretch { to { transform: scaleX(1); } }

.v5 .slide.active { perspective: 1600px; }
.v5 .slide.active :is(h1, h2) {
  transform-style: preserve-3d;
  text-shadow: 0 18px 60px rgba(0, 0, 0, .12);
}
.v5 .slide.dark.active :is(h1, h2) {
  text-shadow: 0 20px 64px rgba(0, 0, 0, .72);
}

/* SplitText wrappers preserve the typography while allowing per-word depth. */
.cinematic-word-wrap {
  display: inline-block;
  overflow: visible;
  vertical-align: bottom;
  padding: .08em .18em .12em;
  margin: -.08em -.18em -.12em;
}
.cinematic-word {
  display: inline-block;
  transform-origin: 50% 100%;
  will-change: transform, opacity, filter;
}
.v5 .hero-copy h1 .cinematic-word,
.v5 .photo-copy h2 .cinematic-word,
.v5 .manifesto-copy h2 .cinematic-word { color: white; }
.v5 .hero-copy h1 .cinematic-word[data-line="1"],
.v5 .manifesto-copy h2 .cinematic-word[data-word="2"] { color: var(--amber); }

/* Photo Slides (Slide 14 & Slide 18 Case Study) */
.v5 .photo-copy.right {
  width: 920px !important;
  right: 96px !important;
}

.v5 .photo-copy.left {
  width: 860px !important;
  left: 96px !important;
}

.v5 .photo-copy h2 {
  font-size: 84px !important;
  line-height: 1.06 !important;
}

.v5 .case-photo .photo-copy h2 span {
  white-space: nowrap !important;
}

/* Slide 01 — the truck is the opening memory, not a decorative transition. */
.v5 .hero-arrival-slide {
  background: #08295f;
  isolation: isolate;
  overflow: hidden;
}
.v5 .hero-arrival-slide .hero-image {
  z-index: 0;
  background: url("assets/images/hero-arrival-yard.png") center / cover no-repeat !important;
  transform: scale(1.012);
  animation: none;
  transition: none;
  will-change: transform, filter;
}
.v5 .hero-arrival-slide .hero-shade {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(3,25,72,.91) 0%, rgba(3,30,82,.76) 35%, rgba(3,32,82,.38) 55%, rgba(3,24,64,.05) 76%, rgba(2,18,48,.08) 100%),
    linear-gradient(180deg, rgba(1,13,38,.06), transparent 48%, rgba(2,16,44,.46));
}
.v5 .hero-arrival-slide .hero-shade::after { display: none; }
.v5 .hero-arrival-copy {
  left: 96px;
  top: 74px;
  z-index: 9;
  width: 1060px;
}
.v5 .hero-arrival-copy h1 {
  margin: 0;
  line-height: .9;
  text-transform: uppercase;
  text-shadow: 0 14px 44px rgba(0,20,60,.34);
}
.v5 .hero-arrival-copy .hero-title-line {
  display: block;
  width: max-content;
  color: white !important;
  font-weight: 930;
  letter-spacing: -.055em;
}
.v5 .hero-arrival-copy .hero-title-top {
  font-size: 87px;
  line-height: 1;
}
.v5 .hero-arrival-copy .hero-title-top em {
  color: var(--amber);
  font-style: normal;
}
.v5 .hero-arrival-copy .hero-title-bottom {
  margin-top: 7px;
  font-size: 116px;
  line-height: .92;
}
.v5 .hero-control-question {
  width: max-content;
  margin: 42px 0 0 7px;
  padding: 4px 0 5px 26px;
  border-left: 5px solid var(--amber);
  color: white;
  font-size: 38px;
  font-weight: 530;
  line-height: 1.12;
  letter-spacing: -.025em;
  text-shadow: 0 8px 28px rgba(0,18,54,.4);
}
.v5 .hero-audience {
  display: flex;
  align-items: center;
  gap: 18px;
  width: max-content;
  margin: 42px 0 0 7px;
  padding-top: 22px;
  border-top: 2px solid rgba(112,222,234,.55);
  color: #f0f7fb;
  font-size: 22px;
  font-weight: 620;
  line-height: 1.28;
  letter-spacing: .004em;
}
.v5 .hero-audience-icon {
  display: grid;
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 3px solid var(--amber);
  border-radius: 13px 13px 17px 17px;
  color: var(--amber);
  font-size: 25px;
  font-weight: 900;
  line-height: 1;
}
.v5 .hero-location {
  display: flex;
  align-items: baseline;
  gap: 15px;
  width: max-content;
  margin: 42px 0 0 7px;
  color: white;
  font-size: 20px;
  font-weight: 820;
  letter-spacing: .055em;
}
.v5 .hero-location i { color: var(--amber); font-style: normal; }
.v5 .hero-location strong { color: #ffc25c; font-weight: 900; }
.v5 .hero-bottom-meta {
  position: absolute;
  z-index: 10;
  left: 96px;
  bottom: 28px;
  display: flex;
  align-items: center;
  gap: 18px;
  opacity: 0;
}
.v5 .hero-onex {
  display: grid;
  width: 136px;
  height: 52px;
  place-items: center;
  padding: 7px 14px;
  border: 1px solid rgba(255,255,255,.27);
  border-radius: 3px;
  background: rgba(4,24,61,.78);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}
.v5 .hero-onex img { display: block; width: 100%; height: 100%; object-fit: contain; }
.v5 .hero-meta-rule { width: 2px; height: 38px; background: rgba(255,183,58,.78); }
.v5 .hero-speaker-title {
  position: relative;
  margin: 0;
  padding: 0 2px 8px;
  color: #ffb62f;
  font-size: 22px;
  font-weight: 860;
  line-height: 1;
  letter-spacing: -.012em;
  white-space: nowrap;
}
.v5 .hero-speaker-title::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  background: linear-gradient(90deg, #ffb62f, rgba(126,232,235,.72));
}
.v5 .hero-road-streaks {
  position: absolute;
  z-index: 4;
  left: 0;
  right: 0;
  bottom: 152px;
  height: 180px;
  pointer-events: none;
}
.v5 .hero-road-streaks i {
  position: absolute;
  left: -40px;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left center;
  background: linear-gradient(90deg, transparent, rgba(113,242,244,.92) 42%, rgba(255,255,255,.86) 70%, transparent);
  box-shadow: 0 0 18px rgba(88,232,236,.38);
  opacity: 0;
}
.v5 .hero-road-streaks i:nth-child(1) { top: 36px; width: 1040px; }
.v5 .hero-road-streaks i:nth-child(2) { top: 92px; width: 1260px; height: 3px; }
.v5 .hero-road-streaks i:nth-child(3) {
  top: 145px;
  width: 850px;
  height: 3px;
  background: linear-gradient(90deg, transparent, rgba(255,184,61,.86), transparent);
}
.v5 .hero-arrival-truck {
  position: absolute;
  z-index: 7;
  left: 820px;
  bottom: 48px;
  width: 1100px;
  opacity: 0;
  will-change: transform, opacity;
  backface-visibility: hidden;
  pointer-events: none;
}
.v5 .hero-arrival-truck::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 3%;
  right: 0;
  bottom: 1.8%;
  height: 12%;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(0,17,46,.58), rgba(0,17,46,0) 72%);
  filter: blur(5px);
}
.v5 .hero-arrival-truck-inner {
  position: relative;
  transform-origin: 76% 88%;
  backface-visibility: hidden;
}
.v5 .hero-arrival-slide.active .hero-arrival-truck-inner {
  animation: heroTruckSettle .48s 1.94s cubic-bezier(.2,.74,.22,1) both;
}
.v5 .hero-arrival-truck-image {
  display: block;
  width: 100%;
  height: auto;
}
.v5 .hero-arrival-truck .truck-snp-name b { font-size: 35px; }
.v5 .hero-arrival-truck .truck-snp-name i { font-size: 27px; }
.v5 .hero-arrival-truck .truck-snp-copy small { font-size: 11px; }
@keyframes heroTruckSettle {
  0% { transform: translateY(0) rotate(0); }
  38% { transform: translateY(8px) rotate(.22deg); }
  68% { transform: translateY(-3px) rotate(-.08deg); }
  100% { transform: translateY(0) rotate(0); }
}
.v5 .hero-arrival-copy .hero-title-line,
.v5 .hero-control-question,
.v5 .hero-audience,
.v5 .hero-location { opacity: 0; }

/* The same parked truck departs into slide 02 — never render a second truck. */
.truck-departing .hero-arrival-slide .hero-arrival-truck { opacity: 0 !important; }
.v5 .opening-truck-transition .truck-rig {
  left: 820px;
  bottom: 48px;
  width: 1100px;
  transform: translate3d(0,0,0);
  opacity: 0;
}
.v5 .opening-truck-transition .truck-snp-name b { font-size: 35px; }
.v5 .opening-truck-transition .truck-snp-name i { font-size: 27px; }
.v5 .opening-truck-transition .truck-snp-copy small { font-size: 11px; }
.v5 .opening-truck-transition.run .truck-rig {
  animation: heroTruckDepart 1.82s cubic-bezier(.42,0,.78,.38) both;
}
@keyframes heroTruckDepart {
  0% { opacity: 1; transform: translate3d(0,0,0); }
  9% { opacity: 1; transform: translate3d(-18px,4px,0) rotate(.12deg); }
  100% { opacity: 1; transform: translate3d(128%,0,0); }
}

/* Slide 05 — a clean learning checkpoint; motion carries the energy, not imagery. */
.v5 .governance-gate-slide {
  isolation: isolate;
  overflow: hidden;
  padding: 72px 86px 116px 96px;
  background:
    radial-gradient(circle at 78% 43%, rgba(255,181,57,.14), transparent 24%),
    radial-gradient(circle at 70% 48%, rgba(92,224,230,.08), transparent 36%),
    linear-gradient(105deg, #041426 0%, #061a31 49%, #071d35 100%);
}
.v5 .governance-gate-slide::before { display: none; }
.v5 .governance-field {
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(rgba(111,224,230,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(111,224,230,.055) 1px, transparent 1px),
    linear-gradient(90deg, transparent 0 47%, rgba(126,232,235,.08) 47% 47.15%, transparent 47.15% 100%);
  background-size: 82px 82px, 82px 82px, 100% 100%;
  -webkit-mask-image: linear-gradient(90deg, transparent 33%, black 63%, black 100%);
  mask-image: linear-gradient(90deg, transparent 33%, black 63%, black 100%);
  pointer-events: none;
}
.v5 .governance-gate-slide .slide-head {
  position: relative;
  z-index: 6;
}
.v5 .governance-gate-slide .section-label { color: #8fe8ea; }
.v5 .governance-gate-slide .chapter-code { color: rgba(255,255,255,.58); }
.v5 .governance-copy {
  position: relative;
  z-index: 6;
  width: 790px;
  margin-top: 36px;
}
.v5 .governance-copy .overline {
  margin-bottom: 18px;
  color: #ffbf54;
  font-size: 16px;
}
.v5 .governance-copy h2 {
  width: max-content;
  margin: 0;
  color: white;
  font-size: 58px;
  font-weight: 900;
  line-height: .98;
  letter-spacing: -.052em;
}
.v5 .governance-copy h2 span { color: #93eef0; }
.v5 .governance-lead {
  margin: 22px 0 15px;
  color: #bfd3df;
  font-size: 21px;
  font-weight: 620;
}
.v5 .governance-checks {
  position: relative;
  width: 760px;
  border-top: 1px solid rgba(137,220,225,.30);
  overflow: hidden;
}
.v5 .governance-check {
  position: relative;
  display: grid;
  grid-template-columns: 58px 1fr 42px;
  align-items: center;
  min-height: 91px;
  padding: 11px 8px 11px 0;
  border-bottom: 1px solid rgba(137,220,225,.22);
  opacity: 0;
}
.v5 .governance-check::before {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  bottom: 14px;
  width: 3px;
  background: #6f8998;
}
.v5 .governance-check.q2::before { background: #55d8dd; }
.v5 .governance-check.q3::before { background: #ffb83e; }
.v5 .governance-check.q4::before { background: #ff6875; }
.v5 .governance-check > b {
  padding-left: 14px;
  color: rgba(255,255,255,.42);
  font-size: 20px;
  font-weight: 900;
}
.v5 .governance-check div { display: flex; align-items: baseline; gap: 16px; min-width: 0; }
.v5 .governance-check span {
  flex: 0 0 126px;
  color: #70e2e5;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .13em;
}
.v5 .governance-check strong {
  color: white;
  font-size: 20px;
  font-weight: 740;
  line-height: 1.2;
}
.v5 .governance-check > i {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  justify-self: end;
  border: 2px solid rgba(255,190,82,.75);
  border-radius: 50%;
  color: #ffc45c;
  font-size: 18px;
  font-style: normal;
  font-weight: 900;
}
.v5 .governance-scanline {
  position: absolute;
  z-index: 4;
  left: 0;
  right: 0;
  top: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, #7bf0f2 25%, white 52%, #ffbd51 78%, transparent);
  box-shadow: 0 0 17px rgba(111,236,239,.82);
  opacity: 0;
  pointer-events: none;
}
.v5 .governance-gate-sign {
  position: absolute;
  z-index: 7;
  right: 155px;
  top: 214px;
  display: grid;
  width: 500px;
  min-height: 410px;
  place-items: center;
  align-content: center;
  gap: 24px;
  padding: 28px 34px;
  border-top: 2px solid rgba(255,181,57,.82);
  border-bottom: 2px solid rgba(126,232,235,.52);
  opacity: 0;
}
.v5 .governance-gate-sign small {
  color: #ffc25c;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .17em;
}
.v5 .governance-gate-sign strong {
  color: white;
  font-size: 176px;
  font-weight: 930;
  line-height: .68;
  letter-spacing: -.065em;
}
.v5 .governance-gate-sign span {
  color: #a2eff0;
  font-size: 18px;
  font-weight: 900;
  letter-spacing: .1em;
}
.v5 .governance-gate-sign em {
  color: rgba(212,232,239,.64);
  font-size: 12px;
  font-style: normal;
  font-weight: 820;
  letter-spacing: .12em;
}
.v5 .governance-stop {
  position: absolute;
  z-index: 8;
  left: 96px;
  bottom: 121px;
  display: flex;
  align-items: center;
  gap: 18px;
  width: 760px;
  margin: 0;
  padding: 13px 20px 14px;
  border-left: 6px solid #ff5b6b;
  background: rgba(3,18,38,.92);
  box-shadow: 0 18px 42px rgba(0,8,23,.35);
  opacity: 0;
}
.v5 .governance-stop span { color: #d8e8ef; font-size: 20px; font-weight: 700; }
.v5 .governance-stop strong { color: #ff6977; font-size: 31px; font-weight: 930; letter-spacing: .01em; }

@media (prefers-reduced-motion: reduce) {
  .governance-copy .overline,
  .governance-copy h2,
  .governance-lead,
  .governance-check,
  .governance-gate-sign,
  .governance-stop { opacity: 1 !important; transform: none !important; animation: none !important; }
  .governance-scanline { display: none !important; }
}

@media print {
  .governance-copy .overline,
  .governance-copy h2,
  .governance-lead,
  .governance-check,
  .governance-gate-sign,
  .governance-stop { opacity: 1 !important; transform: none !important; animation: none !important; }
  .governance-scanline { display: none !important; }
}

/* Slide 05 v2 — high-fidelity access console. */
.v5 .governance-gate-slide {
  padding: 0;
  background:
    radial-gradient(circle at 54% 45%, rgba(75,221,227,.08), transparent 30%),
    linear-gradient(135deg, #030e1b 0%, #06172a 52%, #04101e 100%);
}
.v5 .governance-field {
  background:
    linear-gradient(rgba(93,211,219,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(93,211,219,.045) 1px, transparent 1px);
  background-size: 64px 64px;
  -webkit-mask-image: linear-gradient(180deg, transparent, black 18%, black 86%, transparent);
  mask-image: linear-gradient(180deg, transparent, black 18%, black 86%, transparent);
}
.v5 .access-console {
  position: absolute;
  z-index: 5;
  left: 58px;
  right: 58px;
  top: 48px;
  bottom: 116px;
  border: 1px solid rgba(117,224,230,.28);
  background: rgba(3,16,31,.78);
  box-shadow: 0 30px 90px rgba(0,4,13,.42), inset 0 0 70px rgba(50,195,205,.025);
  overflow: hidden;
  opacity: 0;
}
.v5 .access-console::before,
.v5 .access-console::after {
  content: "";
  position: absolute;
  z-index: 8;
  width: 116px;
  height: 4px;
  background: var(--amber);
}
.v5 .access-console::before { left: 0; top: 0; }
.v5 .access-console::after { right: 0; bottom: 0; background: #70e2e5; }
.v5 .console-bar {
  position: relative;
  z-index: 4;
  display: flex;
  height: 70px;
  align-items: center;
  justify-content: space-between;
  padding: 0 28px;
  border-bottom: 1px solid rgba(116,224,230,.20);
  background: rgba(5,24,43,.86);
}
.v5 .console-id,
.v5 .console-session { display: flex; align-items: center; }
.v5 .console-id { gap: 12px; }
.v5 .console-id > i {
  width: 12px;
  height: 12px;
  border: 3px solid #74e4e8;
  border-radius: 3px;
  box-shadow: 0 0 15px rgba(100,226,231,.58);
}
.v5 .console-id strong {
  color: white;
  font-size: 17px;
  font-weight: 900;
  letter-spacing: .11em;
}
.v5 .console-id span { color: #718d9f; font-size: 13px; font-weight: 820; letter-spacing: .12em; }
.v5 .console-session { gap: 18px; color: #90a9b7; font-size: 12px; font-weight: 850; letter-spacing: .1em; }
.v5 .console-session b {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid rgba(117,226,231,.25);
  color: #a9eef0;
  font-size: 11px;
  letter-spacing: .11em;
}
.v5 .console-session b i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #5fe0a1;
  box-shadow: 0 0 10px rgba(95,224,161,.8);
}
.v5 .console-session em { color: #ffbf55; font-style: normal; }
.v5 .console-main {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: 500px 760px 1fr;
  gap: 26px;
  height: calc(100% - 70px);
  padding: 32px 28px 30px;
}
.v5 .console-intro {
  position: relative;
  padding: 20px 26px 18px 10px;
  border-right: 1px solid rgba(119,220,226,.16);
  opacity: 0;
}
.v5 .console-intro .overline { margin: 0 0 22px; color: #ffbc50; font-size: 13px; }
.v5 .console-intro h2 {
  margin: 0;
  color: white;
  font-size: 52px;
  font-weight: 910;
  line-height: 1.02;
  letter-spacing: -.052em;
}
.v5 .console-intro h2 span { color: #8be9ec; }
.v5 .console-lead {
  width: 390px;
  margin: 28px 0 0;
  color: #9fb9c7;
  font-size: 21px;
  font-weight: 620;
  line-height: 1.38;
}
.v5 .console-lead b { color: #70e5e8; }
.v5 .console-route {
  display: flex;
  align-items: center;
  gap: 12px;
  width: max-content;
  margin-top: 42px;
  padding: 14px 16px;
  border: 1px solid rgba(116,219,225,.18);
  background: rgba(7,35,56,.62);
  color: #7896a6;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .11em;
}
.v5 .console-route i { color: #68dfe4; font-style: normal; }
.v5 .console-route strong { color: #ffc05a; }
.v5 .console-prompt {
  position: absolute;
  left: 10px;
  right: 26px;
  bottom: 12px;
  margin: 0;
  padding: 18px 18px 20px;
  border-left: 4px solid #ffb83e;
  background: rgba(6,31,50,.72);
  color: white;
  font-size: 22px;
  font-weight: 780;
  line-height: 1.3;
}
.v5 .console-prompt small { display: block; margin-bottom: 8px; color: #ffbd52; font-size: 10px; letter-spacing: .16em; }
.v5 .console-checklist {
  position: relative;
  padding: 0 4px;
  overflow: hidden;
}
.v5 .console-checklist-head {
  display: grid;
  grid-template-columns: 88px 1fr 154px;
  align-items: center;
  height: 42px;
  padding: 0 16px;
  color: #617f91;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
}
.v5 .console-checklist-head span:last-child { text-align: right; }
.v5 .console-check {
  position: relative;
  display: grid;
  grid-template-columns: 88px 1fr 154px;
  align-items: center;
  min-height: 132px;
  margin-bottom: 9px;
  padding: 14px 16px;
  border: 1px solid rgba(107,211,219,.16);
  background: linear-gradient(90deg, rgba(7,32,52,.84), rgba(6,27,46,.52));
  opacity: 0;
}
.v5 .console-check::before {
  content: "";
  position: absolute;
  left: 0;
  top: 18px;
  bottom: 18px;
  width: 4px;
  background: #6d8c9c;
}
.v5 .console-check.c2::before { background: #55d8dd; }
.v5 .console-check.c3::before { background: #ffb83e; }
.v5 .console-check.c4::before { background: #ff6875; }
.v5 .console-check > b {
  color: rgba(255,255,255,.30);
  font-size: 34px;
  font-weight: 920;
}
.v5 .console-check div small {
  display: block;
  margin-bottom: 10px;
  color: #65dce0;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
}
.v5 .console-check div strong {
  display: block;
  max-width: 430px;
  color: white;
  font-size: 20px;
  font-weight: 730;
  line-height: 1.24;
}
.v5 .console-check-status {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  color: #ffc260;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .09em;
  white-space: nowrap;
}
.v5 .console-check-status i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ffb94a;
  box-shadow: 0 0 12px rgba(255,185,74,.7);
}
.v5 .console-check-status b { font-size: inherit; }
.v5 .console-scanline {
  position: absolute;
  z-index: 6;
  left: 4px;
  right: 4px;
  top: 42px;
  height: 3px;
  background: linear-gradient(90deg, transparent, #6de9ed 18%, white 48%, #ffbd50 78%, transparent);
  box-shadow: 0 0 18px rgba(100,229,234,.75);
  opacity: 0;
  pointer-events: none;
}
.v5 .console-status-panel {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: center;
  padding: 22px 22px 20px;
  border: 1px solid rgba(113,219,226,.18);
  background: linear-gradient(180deg, rgba(7,32,52,.70), rgba(4,20,36,.60));
  opacity: 0;
}
.v5 .console-status-top {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  color: #7593a3;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .13em;
}
.v5 .console-status-top i { color: #63dfa0; font-style: normal; font-size: 10px; }
.v5 .console-hold {
  margin-top: 42px;
  color: #ff6473;
  font-size: 72px;
  font-weight: 930;
  line-height: .9;
  letter-spacing: .02em;
  text-shadow: 0 0 26px rgba(255,87,103,.20);
}
.v5 .console-progress {
  display: flex;
  width: 170px;
  height: 170px;
  align-items: baseline;
  justify-content: center;
  margin-top: 34px;
  padding-top: 42px;
  border: 5px solid rgba(255,102,116,.24);
  border-top-color: #ff6574;
  border-radius: 50%;
  box-shadow: inset 0 0 34px rgba(255,92,107,.07), 0 0 34px rgba(255,92,107,.06);
}
.v5 .console-progress b { color: white; font-size: 72px; font-weight: 930; line-height: 1; }
.v5 .console-progress span { color: #7895a5; font-size: 28px; font-weight: 800; }
.v5 .console-status-panel > p {
  margin: 16px 0 0;
  color: #7290a0;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .13em;
}
.v5 .console-gate-rule {
  width: 100%;
  margin-top: auto;
  padding: 18px 16px 20px;
  border-left: 4px solid #ff6271;
  background: rgba(39,14,25,.52);
  opacity: 0;
}
.v5 .console-gate-rule small { display: block; color: #926c77; font-size: 9px; font-weight: 900; letter-spacing: .14em; }
.v5 .console-gate-rule span { display: block; margin-top: 13px; color: #d8e6ec; font-size: 12px; font-weight: 760; }
.v5 .console-gate-rule strong { display: block; margin-top: 7px; color: #ff6876; font-size: 24px; font-weight: 930; }

@media (prefers-reduced-motion: reduce) {
  .access-console,
  .console-intro,
  .console-check,
  .console-status-panel,
  .console-gate-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
  .console-scanline { display: none !important; }
}
@media print {
  .access-console,
  .console-intro,
  .console-check,
  .console-status-panel,
  .console-gate-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
  .console-scanline { display: none !important; }
}

/* Slide 05 v3 — kinetic editorial runway, deliberately not a dashboard. */
.v5 .governance-gate-slide {
  padding: 0;
  background:
    radial-gradient(circle at 62% 55%, rgba(75,221,227,.075), transparent 33%),
    linear-gradient(145deg, #030d19 0%, #06182a 56%, #04111f 100%);
}
.v5 .governance-field {
  background:
    linear-gradient(rgba(91,213,220,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(91,213,220,.04) 1px, transparent 1px);
  background-size: 84px 84px, 84px 84px;
  -webkit-mask-image: linear-gradient(180deg, transparent, black 22%, black 86%, transparent);
  mask-image: linear-gradient(180deg, transparent, black 22%, black 86%, transparent);
}
.v5 .runway-heading {
  position: absolute;
  z-index: 6;
  left: 96px;
  top: 72px;
  opacity: 0;
}
.v5 .runway-heading > p {
  margin: 0 0 20px;
  color: #81e5e8;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: .16em;
}
.v5 .runway-heading h2 {
  display: flex;
  align-items: flex-end;
  gap: 24px;
  margin: 0;
  color: white;
  line-height: .82;
}
.v5 .runway-heading h2 > span {
  display: block;
  font-size: 106px;
  font-weight: 940;
  letter-spacing: -.07em;
}
.v5 .runway-heading h2 em { color: #ffb83e; font-style: normal; }
.v5 .runway-heading h2 small {
  display: block;
  padding-bottom: 8px;
  color: white;
  font-size: 52px;
  font-weight: 900;
  letter-spacing: -.045em;
}
.v5 .runway-heading > strong {
  display: block;
  margin-top: 24px;
  color: #9eb9c7;
  font-size: 20px;
  font-weight: 650;
}
.v5 .control-runway {
  position: absolute;
  z-index: 5;
  left: 96px;
  right: 100px;
  top: 346px;
  height: 520px;
}
.v5 .runway-map {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  shape-rendering: geometricPrecision;
}
.v5 .runway-track-base,
.v5 .runway-track-progress,
.v5 .runway-spur,
.v5 .runway-gate-line {
  fill: none;
  vector-effect: non-scaling-stroke;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.v5 .runway-track-base {
  stroke: rgba(132,181,196,.18);
  stroke-width: 7px;
}
.v5 .runway-track-progress {
  stroke: url(#runway-route-gradient);
  stroke-width: 3px;
  filter: drop-shadow(0 0 7px rgba(91,220,225,.26));
}
.v5 .runway-spur {
  stroke-width: 3px;
}
.v5 .spur-1 { stroke: #7f9dac; }
.v5 .spur-2 { stroke: #62dfe4; }
.v5 .spur-3 { stroke: #ffb83e; }
.v5 .spur-4 { stroke: #ff6875; }
.v5 .runway-node { opacity: 0; }
.v5 .node-ring {
  fill: #06182a;
  stroke-width: 3px;
}
.v5 .node-core { stroke: none; }
.v5 .node-1 .node-ring { stroke: #7f9dac; }
.v5 .node-1 .node-core { fill: #7f9dac; }
.v5 .node-2 .node-ring { stroke: #62dfe4; }
.v5 .node-2 .node-core { fill: #62dfe4; }
.v5 .node-3 .node-ring { stroke: #ffb83e; }
.v5 .node-3 .node-core { fill: #ffb83e; }
.v5 .node-4 .node-ring { stroke: #ff6875; }
.v5 .node-4 .node-core { fill: #ff6875; }
.v5 .runway-gate-line {
  stroke: #ffb83e;
  stroke-width: 5px;
  stroke-linecap: square;
  filter: drop-shadow(0 0 7px rgba(255,184,62,.24));
}
.v5 .runway-signal {
  fill: #fff;
  stroke: rgba(111,231,235,.5);
  stroke-width: 6px;
  filter: url(#runway-signal-glow);
  opacity: 0;
}
.v5 .runway-station {
  position: absolute;
  z-index: 4;
  display: grid;
  grid-template-columns: 74px 1fr;
  width: 330px;
  min-height: 126px;
  align-items: center;
  opacity: 0;
}
.v5 .runway-station.s1 { left: 22px; top: 30px; }
.v5 .runway-station.s2 { left: 394px; top: 98px; }
.v5 .runway-station.s3 { left: 765px; top: 166px; }
.v5 .runway-station.s4 { left: 1136px; top: 234px; }
.v5 .runway-station > b {
  color: rgba(255,255,255,.25);
  font-size: 58px;
  font-weight: 930;
  line-height: 1;
}
.v5 .runway-station div { min-width: 0; }
.v5 .runway-station span {
  display: block;
  margin-bottom: 10px;
  color: #6ee1e5;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .14em;
}
.v5 .runway-station strong {
  display: block;
  color: white;
  font-size: 24px;
  font-weight: 780;
  line-height: 1.16;
}
.v5 .runway-gate {
  position: absolute;
  z-index: 5;
  left: 1604px;
  top: 380px;
  width: 120px;
  padding: 0;
  opacity: 0;
}
.v5 .runway-gate small {
  display: block;
  margin-bottom: 10px;
  color: #ffbd52;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .16em;
}
.v5 .runway-gate strong {
  color: white;
  font-size: 42px;
  font-weight: 930;
  line-height: .86;
  letter-spacing: -.04em;
}
.v5 .runway-stop-rule {
  position: absolute;
  z-index: 7;
  left: 96px;
  bottom: 124px;
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 0;
  opacity: 0;
}
.v5 .runway-stop-rule::before {
  content: "";
  width: 5px;
  height: 52px;
  border-radius: 3px;
  background: #ff6372;
}
.v5 .runway-stop-rule span { color: #d8e8ef; font-size: 21px; font-weight: 820; letter-spacing: .05em; }
.v5 .runway-stop-rule i { color: #ffb83e; font-size: 28px; font-style: normal; }
.v5 .runway-stop-rule strong { color: #ff6372; font-size: 42px; font-weight: 940; letter-spacing: .02em; }

@media (prefers-reduced-motion: reduce) {
  .runway-heading,
  .runway-station,
  .runway-node,
  .runway-gate,
  .runway-stop-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
  .runway-signal { display: none !important; }
}
@media print {
  .runway-heading,
  .runway-station,
  .runway-node,
  .runway-gate,
  .runway-stop-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
  .runway-signal { display: none !important; }
}

/* Slide 04 — a spoken two-beat thesis, locked visually to the real gate. */
.v5 .manifesto-visual {
  padding: 92px 112px 118px;
  background: #02070a;
  isolation: isolate;
}
.v5 .manifesto-visual::before { display: none; }
.v5 .manifesto-bg,
.v5 .manifesto-shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.v5 .manifesto-bg {
  z-index: 0;
  background: url("assets/images/manifesto-speed-authority-bg-v2.png") center / cover no-repeat;
  filter: saturate(.96) brightness(1.04) contrast(.98);
  transform: scale(1.012);
}
.v5 .manifesto-shade {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(2,20,57,.91) 0%, rgba(3,27,73,.80) 36%, rgba(3,31,78,.50) 55%, rgba(2,20,51,.08) 78%, rgba(2,12,31,.12) 100%),
    linear-gradient(180deg, rgba(2,18,48,.04), transparent 48%, rgba(2,14,37,.38));
}
.v5 .manifesto-visual .manifesto-copy {
  position: relative;
  z-index: 3;
  width: 1060px;
  padding-left: 16px;
}
.v5 .manifesto-visual .manifesto-copy h2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  margin: 62px 0 48px;
  line-height: 1;
  letter-spacing: normal !important;
}
.v5 .manifesto-visual .manifesto-copy h2 > span {
  display: block;
  width: max-content;
  max-width: 100%;
  overflow: visible !important;
  clip-path: none !important;
}
.v5 .manifesto-visual .manifesto-speed {
  margin-bottom: 34px;
  color: #a4f0f2;
  font-size: 39px;
  font-weight: 840;
  line-height: 1.1;
  letter-spacing: .025em;
  white-space: nowrap;
}
.v5 .manifesto-visual .manifesto-turn {
  margin-bottom: 12px;
  color: #ffd083;
  font-size: 25px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .28em;
}
.v5 .manifesto-visual .manifesto-limit {
  color: white;
  font-size: 104px;
  font-weight: 920;
  line-height: .96;
  letter-spacing: 0.01em !important;
  padding-left: 12px !important;
  margin-left: -12px !important;
  overflow: visible !important;
  clip-path: none !important;
  text-shadow: 0 12px 36px rgba(0,18,48,.34);
}
.v5 .manifesto-visual .manifesto-limit-accent {
  position: relative;
  margin-top: 14px;
  color: var(--amber);
  padding-left: 12px !important;
  margin-left: -12px !important;
  overflow: visible !important;
  clip-path: none !important;
  text-shadow: 0 10px 34px rgba(255,173,50,.18);
}
.v5 .manifesto-visual .manifesto-limit-accent::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -22px;
  width: 190px;
  height: 5px;
  background: linear-gradient(90deg, var(--amber) 0 82%, white 82% 90%, transparent 90%);
}
.v5 .manifesto-visual .manifesto-principle {
  display: flex;
  align-items: center;
  gap: 22px;
  width: auto;
  max-width: 980px;
  margin: 0;
  color: #e0edf3;
  font-size: 24px;
  font-weight: 820;
  line-height: 1.35;
  letter-spacing: .015em;
}
.v5 .manifesto-visual .manifesto-principle span { white-space: nowrap; }
.v5 .manifesto-visual .manifesto-principle i {
  color: #8ce4e7;
  font-style: normal;
}
.v5 .manifesto-visual .manifesto-principle strong {
  color: #ffd083;
  white-space: nowrap;
}
.v5 .manifesto-visual .manifesto-gate-label {
  z-index: 3;
  right: 112px;
  top: 650px;
  width: 350px;
  padding: 18px 22px 22px;
  border: 0;
  border-top: 4px solid rgba(255,173,50,.96);
  background: rgba(2,20,52,.78);
  box-shadow: 0 16px 42px rgba(0,10,28,.28);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  color: white;
  text-align: left;
  text-shadow: none;
  filter: none;
}
.v5 .manifesto-visual .manifesto-gate-label small {
  display: block;
  margin: 0 0 10px;
  color: #ffd083;
  font-size: 13px;
  line-height: 1.3;
  letter-spacing: .17em;
}
.v5 .manifesto-visual .manifesto-gate-label strong {
  display: block;
  font-size: 40px;
  line-height: .95;
  letter-spacing: -.025em;
}

/* A perspective field that reacts to the pointer through createAnimatable(). */
.cinematic-field {
  position: absolute;
  inset: 0;
  z-index: 18;
  overflow: hidden;
  pointer-events: none;
  opacity: 0;
  perspective: 900px;
  mix-blend-mode: screen;
  transition: opacity .45s ease;
}
.v5-packets-live .cinematic-field { opacity: .28; }
.anime-signal-live .anime-trace { opacity: .26; }
.field-plane {
  position: absolute;
  left: -12%;
  width: 124%;
  height: 70%;
  background:
    linear-gradient(rgba(92, 228, 232, .14) 1px, transparent 1px),
    linear-gradient(90deg, rgba(92, 228, 232, .14) 1px, transparent 1px);
  background-size: 74px 74px;
  mask-image: linear-gradient(to bottom, transparent, #000 38%, transparent 96%);
}
.plane-a {
  bottom: -30%;
  transform: rotateX(68deg) translateZ(-80px);
  transform-origin: center top;
}
.plane-b {
  top: -38%;
  transform: rotateX(-70deg) translateZ(-180px);
  transform-origin: center bottom;
  opacity: .42;
}
.packet-layer { position: absolute; inset: 0; }
.executive-packet {
  position: absolute;
  left: -5.5px;
  top: -5.5px;
  width: 11px;
  height: 11px;
  border: 1.5px solid white;
  border-radius: 50%;
  background: var(--cyan);
  box-shadow: 0 0 8px 2px rgba(96, 244, 245, .72), 0 0 24px 8px rgba(25, 198, 209, .24);
  opacity: 0;
  will-change: transform, opacity;
}
.executive-packet.packet-case {
  background: var(--amber);
  box-shadow: 0 0 8px 2px rgba(255, 195, 105, .78), 0 0 24px 8px rgba(255, 173, 50, .24);
}

/* One cinematic opening — the deck itself remains visible if JS is unavailable. */
.executive-prologue {
  position: absolute;
  inset: 0;
  z-index: 130;
  display: none;
  overflow: hidden;
  color: white;
  background:
    radial-gradient(circle at 50% 48%, rgba(18, 101, 124, .24), transparent 30%),
    linear-gradient(145deg, #02080d, #061723 56%, #02080d);
  pointer-events: none;
}
.executive-prologue.prologue-live { display: block; }
.prologue-grid {
  position: absolute;
  inset: -18%;
  background:
    linear-gradient(rgba(86, 229, 233, .08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(86, 229, 233, .08) 1px, transparent 1px);
  background-size: 82px 82px;
  transform: perspective(900px) rotateX(62deg) translateY(300px) scale(1.25);
  mask-image: radial-gradient(circle, #000 10%, transparent 68%);
}
.prologue-scan {
  position: absolute;
  left: 0;
  right: 0;
  top: -8px;
  height: 8px;
  background: linear-gradient(90deg, transparent, rgba(115, 245, 246, .95), white, rgba(255, 178, 65, .95), transparent);
  box-shadow: 0 0 32px 10px rgba(83, 230, 233, .3);
  opacity: 0;
}
.prologue-brand {
  position: absolute;
  left: 86px;
  right: 86px;
  top: 46px;
  display: grid;
  grid-template-columns: 260px 1fr 170px;
  align-items: center;
  gap: 32px;
  color: #9cc6d0;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: .18em;
}
.prologue-brand img {
  display: block;
  max-width: 100%;
  max-height: 46px;
  object-fit: contain;
  background: white;
  padding: 6px 12px;
}
.prologue-brand span { text-align: center; }
.prologue-core {
  position: absolute;
  left: 50%;
  top: 49%;
  width: 420px;
  height: 420px;
  transform: translate(-50%, -50%);
}
.prologue-core svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
#prologueMorph {
  fill: rgba(7, 26, 43, .72);
  stroke: #86f1f2;
  stroke-width: 3;
  filter: drop-shadow(0 0 18px rgba(75, 234, 237, .8));
}
#prologueShield { opacity: 0; }
.prologue-number {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: white;
  font-size: 112px;
  font-weight: 260;
  letter-spacing: .08em;
  font-variant-numeric: tabular-nums;
  text-shadow: 0 0 26px rgba(87, 237, 240, .9);
}
.prologue-state {
  position: absolute;
  left: 50%;
  bottom: 44px;
  display: flex;
  gap: 84px;
  transform: translateX(-50%);
  white-space: nowrap;
  font-size: 14px;
  font-weight: 950;
  letter-spacing: .16em;
}
.prologue-state span { color: #72e4e7; }
.prologue-state b { color: #ffc56b; }
.prologue-thesis {
  position: absolute;
  left: 50%;
  bottom: 82px;
  display: grid;
  grid-template-columns: auto 210px auto;
  align-items: center;
  gap: 26px;
  transform: translateX(-50%);
  white-space: nowrap;
  font-size: 22px;
  font-weight: 920;
  letter-spacing: .14em;
}
.prologue-thesis i {
  height: 2px;
  background: linear-gradient(90deg, var(--cyan), white, var(--amber));
  box-shadow: 0 0 16px rgba(110, 237, 240, .7);
}
.prologue-thesis strong { color: #ffc66f; }

/* Executive decision gate: Anime.js controls every panel and morph. */
.executive-transition {
  position: absolute;
  inset: 0;
  z-index: 120;
  display: none;
  overflow: hidden;
  pointer-events: none;
}
.executive-transition.exec-live { display: block; }
.exec-panel {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 52%;
  background:
    linear-gradient(135deg, rgba(85, 230, 233, .12), transparent 36%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.035) 0 1px, transparent 1px 15px),
    #020b11;
  will-change: transform;
}
.exec-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(77, 230, 233, .13));
}
.exec-panel-left { left: 0; transform-origin: left center; border-right: 2px solid rgba(115, 241, 243, .55); }
.exec-panel-right { right: 0; transform-origin: right center; border-left: 2px solid rgba(255, 186, 74, .55); }
.exec-panel span {
  position: absolute;
  top: 50%;
  color: #9bcbd2;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .28em;
  writing-mode: vertical-rl;
}
.exec-panel-left span { right: 34px; transform: translateY(-50%) rotate(180deg); }
.exec-panel-right span { left: 34px; transform: translateY(-50%); color: #ffc66e; }
.exec-beam {
  position: absolute;
  z-index: 3;
  left: 50%;
  top: 0;
  width: 3px;
  height: 100%;
  background: white;
  box-shadow: 0 0 20px 5px rgba(91, 238, 240, .75), 0 0 80px 20px rgba(255, 173, 50, .28);
  transform: scaleY(0);
  transform-origin: center;
}
.exec-core {
  position: absolute;
  z-index: 4;
  left: 50%;
  top: 50%;
  width: 245px;
  height: 245px;
  transform: translate(-50%, -50%);
  opacity: 0;
}
.exec-core svg { width: 100%; height: 100%; overflow: visible; }
#transitionMorph {
  fill: rgba(2, 12, 18, .96);
  stroke: #f7d79f;
  stroke-width: 3;
  filter: drop-shadow(0 0 18px rgba(255, 181, 61, .75));
}
#transitionShield { opacity: 0; }
.exec-core span {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 14px;
  font-weight: 950;
  letter-spacing: .18em;
  white-space: nowrap;
}

/* Chapter transitions are deliberately different — never one gate everywhere. */
.exec-dock-bands,
.exec-reconcile { display: none; }

.exec-mode-authority .exec-core svg { display: none; }
.exec-mode-authority .exec-core {
  width: auto;
  height: auto;
  padding: 42px 76px;
  border: 2px solid rgba(255, 190, 84, .72);
  background: rgba(2, 12, 18, .96);
  box-shadow: 0 0 50px rgba(255, 173, 50, .22);
}
.exec-mode-authority .exec-core span { position: static; display: block; transform: none; }

.exec-mode-dock {
  background: #020b10;
}
.exec-mode-dock .exec-panel,
.exec-mode-dock .exec-beam,
.exec-mode-dock .exec-core { display: none; }
.exec-mode-dock .exec-dock-bands {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-rows: repeat(3, 1fr);
}
.dock-band {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  color: white;
  font-style: normal;
  transform: translateX(-105%);
}
.dock-band::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.05) 0 1px, transparent 1px 80px),
    linear-gradient(90deg, transparent, rgba(255,255,255,.12), transparent);
}
.dock-band span {
  position: relative;
  font-size: 26px;
  font-weight: 950;
  letter-spacing: .2em;
}
.dock-band-red { background: linear-gradient(90deg, #23060b, #8f1421, #23060b); }
.dock-band-amber { background: linear-gradient(90deg, #211304, #b76a06, #211304); }
.dock-band-green { background: linear-gradient(90deg, #042117, #087a53, #042117); }

.exec-mode-case .exec-panel { width: 50%; }
.exec-mode-case .exec-panel-left {
  background:
    repeating-linear-gradient(0deg, rgba(83, 227, 231, .055) 0 1px, transparent 1px 16px),
    linear-gradient(135deg, #071f31, #020b11);
}
.exec-mode-case .exec-panel-right {
  background:
    repeating-linear-gradient(0deg, rgba(255, 185, 71, .055) 0 1px, transparent 1px 16px),
    linear-gradient(225deg, #2b1b07, #020b11);
}
.exec-mode-case .exec-beam,
.exec-mode-case .exec-core { display: none; }
.exec-mode-case .exec-reconcile {
  position: absolute;
  z-index: 5;
  left: 50%;
  top: 50%;
  display: grid;
  grid-template-columns: auto 150px auto 150px auto;
  align-items: center;
  gap: 20px;
  transform: translate(-50%, -50%);
  color: white;
  white-space: nowrap;
  opacity: 0;
}
.exec-reconcile span {
  color: #8fe9eb;
  font-size: 20px;
  font-weight: 950;
  letter-spacing: .16em;
}
.exec-reconcile span:last-child { color: #ffc66e; }
.exec-reconcile i {
  height: 2px;
  background: linear-gradient(90deg, transparent, white);
  box-shadow: 0 0 14px rgba(255,255,255,.6);
}
.exec-reconcile i:nth-of-type(2) { background: linear-gradient(90deg, white, transparent); }
.exec-reconcile strong {
  padding: 28px 34px;
  border: 2px solid rgba(255,255,255,.6);
  background: rgba(2, 11, 17, .94);
  font-size: 19px;
  letter-spacing: .14em;
}

.exec-mode-final .exec-panel {
  background:
    radial-gradient(circle at 50% 50%, rgba(255, 173, 50, .12), transparent 36%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.035) 0 1px, transparent 1px 15px),
    #02080d;
}
.exec-mode-final #transitionMorph {
  stroke: #ffc66e;
  filter: drop-shadow(0 0 22px rgba(255, 173, 50, .86));
}

/* Case-study lock-on moment. */
.case-signal {
  position: absolute;
  z-index: 60;
  right: 86px;
  top: 78px;
  display: none;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  align-items: center;
  min-width: 410px;
  padding: 20px 24px 20px 132px;
  color: white;
  background: rgba(2, 12, 18, .96);
  border-left: 8px solid var(--amber);
  box-shadow: 0 22px 70px rgba(0,0,0,.38), 0 0 0 1px rgba(255,183,70,.25);
  clip-path: polygon(0 0, 94% 0, 100% 50%, 94% 100%, 0 100%);
  pointer-events: none;
}
.case-signal.case-signal-live { display: grid; }
.case-signal span {
  grid-column: 1 / -1;
  color: #ffc468;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .2em;
}
.case-signal b {
  position: absolute;
  left: 24px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 68px;
  line-height: 1;
  color: #7ee8eb;
}
.case-signal strong {
  grid-column: 1 / -1;
  margin-top: 6px;
  font-size: 18px;
  letter-spacing: .06em;
}
.case-scanline {
  position: absolute;
  z-index: 6;
  left: 0;
  right: 0;
  top: 0;
  height: 4px;
  background: linear-gradient(90deg, transparent, #70eff1 18%, white 50%, #ffba4d 82%, transparent);
  box-shadow: 0 0 18px 4px rgba(82, 226, 230, .6);
  pointer-events: none;
  opacity: 0;
}
.v5 .case-table-wrap,
.v5 .approval-table { position: relative; }
.v5 .case-row.flagged {
  box-shadow: inset 6px 0 0 currentColor, 0 0 28px rgba(255, 173, 50, .08);
}

/* Stronger approval moments without permanent motion. */
.v5 .approval-gate,
.v5 .gate-stop,
.v5 .stop-sign,
.v5 .hero-gate-sigil,
.v5 .manifesto-mark {
  filter: drop-shadow(0 0 24px rgba(255, 173, 50, .26));
}
.v5 .approval-gate::after,
.v5 .gate-stop::after {
  content: "";
  position: absolute;
  inset: -8px;
  border: 2px solid rgba(255, 190, 86, .42);
  pointer-events: none;
}

/* ==========================================================================
   V5 EXECUTIVE CINEMATIC — SLIDE 21 (SHARP 3-PHASE COMMAND PILLARS)
   ========================================================================== */

.v5 .group-task-slide {
  position: absolute;
  inset: 0;
  padding: 56px 88px 44px;
  background: radial-gradient(circle at 50% 35%, #0c2338 0%, #061524 60%, #030c14 100%);
  overflow: hidden;
}

.v5 .group-task-slide .group-title {
  font-size: 66px;
  font-weight: 850;
  letter-spacing: -0.02em;
  line-height: 1.08;
  margin: 18px 0 32px;
  color: #ffffff;
}

.v5 .group-task-slide .group-title span {
  color: #7ce4e8;
  text-shadow: 0 0 30px rgba(72, 212, 221, 0.4);
}

/* 3-Phase Master Pillar Grid - Sharp Architectural Monoliths */
.v5 .group-phase-grid {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  width: 1744px;
  height: 550px;
  margin: 0 auto;
  gap: 0;
}

.v5 .phase-pillar {
  flex: 1;
  background: #082136;
  border-radius: 0 !important;
  padding: 34px 32px 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid #1c4765;
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.5);
  transition: transform 0.25s ease;
}

.v5 .phase-pillar:hover {
  transform: translateY(-4px);
}

.v5 .pillar-tag {
  font-size: 16px;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  margin-bottom: 8px;
  display: block;
}

.v5 .pillar-header h3 {
  font-size: 36px;
  font-weight: 850;
  color: #ffffff;
  margin: 0 0 6px;
  line-height: 1.15;
}

.v5 .pillar-sub {
  font-size: 21px;
  font-weight: 550;
  color: #9bb7c7;
  margin: 0;
}

.v5 .pillar-steps {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 24px;
}

.v5 .pillar-step-item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 20px 22px;
  background: #0e2d45;
  border-radius: 0 !important;
  border: 1px solid #235272;
}

.v5 .step-badge {
  font-size: 36px;
  font-weight: 900;
  font-family: Outfit, Inter, sans-serif;
  line-height: 1;
  flex-shrink: 0;
  margin-top: 2px;
  border-radius: 0 !important;
}

.v5 .step-desc h4 {
  font-size: 26px;
  font-weight: 850;
  color: #ffffff;
  margin: 0 0 6px;
  line-height: 1.18;
}

.v5 .step-desc p {
  font-size: 20px;
  font-weight: 500;
  color: #cbe0ec;
  margin: 0;
  line-height: 1.35;
}

/* Sharp Phase Connectors */
.v5 .phase-connector {
  font-size: 46px;
  font-weight: 900;
  color: #3b748d;
  padding: 0 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  user-select: none;
}

/* Phase Color Variations & Architectural Accent Bars */
.v5 .phase-prep {
  border-top: 8px solid #48d4dd;
}
.v5 .phase-prep .pillar-tag,
.v5 .phase-prep .step-badge {
  color: #7ce4e8;
}
.v5 .phase-prep .pillar-step-item {
  border-left: 5px solid #48d4dd;
}

.v5 .phase-run {
  border-top: 8px solid #ffad33;
}
.v5 .phase-run .pillar-tag,
.v5 .phase-run .step-badge {
  color: #ffad33;
}
.v5 .phase-run .pillar-step-item {
  border-left: 5px solid #ffad33;
}

.v5 .phase-approval {
  border-top: 8px solid #17b77a;
}
.v5 .phase-approval .pillar-tag,
.v5 .phase-approval .step-badge {
  color: #4de8aa;
}
.v5 .phase-approval .pillar-step-item {
  border-left: 5px solid #17b77a;
}

.v5 .phase-approval .highlight-gate {
  background: #193836;
  border-left: 5px solid #ffad33;
  box-shadow: inset 0 0 20px rgba(255, 173, 51, 0.12);
}
.v5 .phase-approval .highlight-gate .step-badge {
  color: #ffd082;
}

/* Bottom Executive Master Bar - Sharp & Command-Grade */
.v5 .group-master-bar {
  width: 1744px;
  height: 80px;
  margin: 24px auto 0;
  background: #061b2c;
  border-radius: 0 !important;
  border: 1px solid #204c6a;
  border-left: 8px solid #ffad33;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 32px;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.5);
  box-sizing: border-box;
}

.v5 .master-focus {
  display: flex;
  align-items: center;
  gap: 16px;
}

.v5 .master-focus b {
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0.14em;
  color: #071a2b;
  background: #ffad33;
  padding: 6px 14px;
  border-radius: 0 !important;
}

.v5 .master-focus span {
  font-size: 25px;
  font-weight: 900;
  color: #ffffff;
  letter-spacing: 0.04em;
}

.v5 .master-deliverable-line {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 21px;
  font-weight: 600;
  color: #dbeaf4;
}

.v5 .master-deliverable-line strong {
  color: #8da9b9;
  font-weight: 850;
  font-size: 19px;
  letter-spacing: 0.06em;
}

.v5 .master-deliverable-line i {
  color: #4a8099;
  font-style: normal;
  font-weight: 900;
}

.v5 .master-deliverable-line .gold {
  color: #ffd082;
  font-weight: 900;
}

@media (prefers-reduced-motion: reduce) {
  .executive-prologue,
  .executive-transition,
  .opening-truck-transition,
  .cinematic-field,
  .case-signal,
  .case-scanline { display: none !important; }
  .verdict-copy,
  .email-xray,
  .verdict-stamp,
  .xray-findings > span,
  .verdict-action { animation: none !important; opacity: 1 !important; }
  .risk-mark { animation: none !important; background-size: 100% 100% !important; }
  .hero-arrival-truck,
  .hero-title-line,
  .hero-control-question,
  .hero-audience,
  .hero-location,
  .hero-bottom-meta { opacity: 1 !important; transform: none !important; animation: none !important; }
}

/* Slide 17 — one authority boundary, not a row of interface cards. */
.v5 .demo-authority-slide {
  padding: 0;
  color: #061827;
  background:
    radial-gradient(circle at 49% 48%, rgba(54,203,211,.07), transparent 30%),
    linear-gradient(112deg, #f5f8f7 0%, #edf3f3 70%, #e7eeee 70%, #e7eeee 100%);
}
.v5 .demo-authority-slide::before {
  z-index: 0;
  background:
    linear-gradient(rgba(22,75,96,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(22,75,96,.035) 1px, transparent 1px);
  background-size: 82px 82px;
  -webkit-mask-image: linear-gradient(90deg, black 0%, black 66%, transparent 72%);
  mask-image: linear-gradient(90deg, black 0%, black 66%, transparent 72%);
}
.v5 .demo-authority-slide .slide-head {
  position: absolute;
  z-index: 8;
  left: 104px;
  right: 82px;
  top: 72px;
  min-height: 30px;
  margin: 0;
}
.v5 .demo-authority-slide .section-label {
  color: #1b647d;
  font-size: 18px;
  letter-spacing: .17em;
}
.v5 .demo-authority-slide .chapter-code {
  color: rgba(255,255,255,.72);
  font-size: 24px;
}
.v5 .demo-agent-zone {
  position: absolute;
  z-index: 3;
  inset: 0 auto 72px 0;
  width: 1350px;
}
.v5 .demo-authority-title {
  position: absolute;
  left: 104px;
  top: 145px;
  margin: 0;
  color: #061827;
  font-size: 106px;
  font-weight: 940;
  line-height: .88;
  letter-spacing: -.07em;
  opacity: 0;
}
.v5 .demo-authority-title span { color: #ff5d6c; }
.v5 .demo-authority-lead {
  position: absolute;
  left: 110px;
  top: 352px;
  width: 1000px;
  margin: 0;
  color: #557585;
  font-size: 25px;
  font-weight: 650;
  line-height: 1.35;
  opacity: 0;
}
.v5 .agent-run {
  position: absolute;
  z-index: 3;
  left: 98px;
  top: 466px;
  width: 1220px;
  height: 220px;
}
.v5 .agent-route-map {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  shape-rendering: geometricPrecision;
}
.v5 .agent-route-base,
.v5 .agent-route-live {
  fill: none;
  vector-effect: non-scaling-stroke;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.v5 .agent-route-base {
  stroke: rgba(66,111,128,.16);
  stroke-width: 8px;
}
.v5 .agent-route-live {
  stroke: url(#demo-route-gradient);
  stroke-width: 3px;
  filter: drop-shadow(0 0 6px rgba(38,187,198,.22));
}
.v5 .agent-route-node { opacity: 0; }
.v5 .agent-route-node .node-ring {
  fill: #f1f6f6;
  stroke: #31c9d3;
  stroke-width: 3px;
}
.v5 .agent-route-node.node-a .node-ring { stroke: #8aa9b7; }
.v5 .agent-route-node.node-d .node-ring { stroke: #ff5d6c; }
.v5 .agent-route-node .node-core { fill: #31c9d3; stroke: none; }
.v5 .agent-route-node.node-a .node-core { fill: #8aa9b7; }
.v5 .agent-route-node.node-d .node-core { fill: #ff5d6c; }
.v5 .agent-route-signal {
  fill: #fff;
  stroke: rgba(49,201,211,.44);
  stroke-width: 7px;
  filter: drop-shadow(0 0 10px rgba(49,201,211,.72));
  opacity: 0;
}
.v5 .agent-stage {
  position: absolute;
  z-index: 3;
  top: 110px;
  width: 190px;
  opacity: 0;
}
.v5 .agent-stage.stage-a { left: -15px; }
.v5 .agent-stage.stage-b { left: 315px; }
.v5 .agent-stage.stage-c { left: 645px; }
.v5 .agent-stage.stage-d { left: 975px; }
.v5 .agent-stage span {
  display: block;
  margin-bottom: 10px;
  color: #6f91a0;
  font-size: 17px;
  font-weight: 900;
  letter-spacing: .12em;
}
.v5 .agent-stage strong {
  display: block;
  color: #061827;
  font-size: 26px;
  font-weight: 920;
  line-height: 1;
  letter-spacing: -.015em;
  white-space: nowrap;
}
.v5 .agent-stage small {
  display: block;
  margin-top: 10px;
  color: #668391;
  font-size: 18px;
  font-weight: 620;
  line-height: 1.2;
  white-space: nowrap;
}
.v5 .stage-d strong,
.v5 .stage-d small { color: #c93647; }
.v5 .verify-branch {
  position: absolute;
  z-index: 4;
  left: 108px;
  bottom: 116px;
  width: 1080px;
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  align-items: center;
  gap: 20px;
  color: #7e5a1c;
  opacity: 0;
}
.v5 .verify-branch span,
.v5 .verify-branch strong,
.v5 .verify-branch b {
  font-size: 18px;
  font-weight: 900;
  letter-spacing: .1em;
  white-space: nowrap;
}
.v5 .verify-branch i {
  display: block;
  height: 2px;
  background: linear-gradient(90deg, rgba(224,149,24,.35), #e09518);
  position: relative;
}
.v5 .verify-branch i::after {
  content: "";
  position: absolute;
  right: -2px;
  top: -5px;
  width: 10px;
  height: 10px;
  border-top: 2px solid #e09518;
  border-right: 2px solid #e09518;
  transform: rotate(45deg);
}
.v5 .verify-branch strong { color: #b66d00; }
.v5 .verify-branch b {
  padding-left: 18px;
  border-left: 4px solid #ff5d6c;
  color: #d53b4d;
}
.v5 .demo-human-zone {
  position: absolute;
  z-index: 2;
  left: 1350px;
  right: 0;
  top: 0;
  bottom: 0;
  padding: 176px 82px 142px 72px;
  color: white;
  background:
    radial-gradient(circle at 35% 40%, rgba(49,201,211,.11), transparent 32%),
    linear-gradient(150deg, #071c2f 0%, #03101e 100%);
  opacity: 0;
}
.v5 .demo-human-zone::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(rgba(122,219,224,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(122,219,224,.035) 1px, transparent 1px);
  background-size: 72px 72px;
  -webkit-mask-image: linear-gradient(180deg, transparent, black 22%, black 86%, transparent);
  mask-image: linear-gradient(180deg, transparent, black 22%, black 86%, transparent);
}
.v5 .demo-human-zone > p {
  position: relative;
  margin: 0 0 28px;
  color: #75e2e6;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: .17em;
}
.v5 .demo-human-zone > h3 {
  position: relative;
  margin: 0;
  color: white;
  font-size: 60px;
  font-weight: 940;
  line-height: .93;
  letter-spacing: -.055em;
}
.v5 .demo-human-zone > h3 span { color: #ffbe55; }
.v5 .human-proof {
  position: relative;
  margin-top: 64px;
  border-top: 1px solid rgba(255,255,255,.16);
}
.v5 .human-proof span {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 17px 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
  color: #d7e7ed;
  font-size: 20px;
  font-weight: 720;
  opacity: 0;
}
.v5 .human-proof i {
  color: #77dfe3;
  font-size: 14px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .08em;
}
.v5 .send-release {
  position: absolute;
  z-index: 3;
  left: 72px;
  right: 100px;
  bottom: 138px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 18px;
  padding-top: 18px;
  border-top: 3px solid #25cc8a;
  opacity: 0;
}
.v5 .send-release small {
  color: #83aab7;
  font-size: 18px;
  font-weight: 900;
}
.v5 .send-release strong {
  color: #46e6a7;
  font-size: 72px;
  font-weight: 950;
  line-height: 1;
  letter-spacing: -.04em;
}
.v5 .send-release i {
  color: #46e6a7;
  font-size: 48px;
  font-style: normal;
}
.v5 .human-wall {
  position: absolute;
  z-index: 6;
  left: 1290px;
  top: 330px;
  width: 1px;
  height: 530px;
  opacity: 0;
}
.v5 .human-wall::before {
  content: "";
  position: absolute;
  left: -3px;
  top: 0;
  width: 6px;
  height: 100%;
  background: #ff5d6c;
  box-shadow: 0 0 20px rgba(255,93,108,.24);
}
.v5 .human-wall > span {
  position: absolute;
  left: -34px;
  top: 12px;
  color: #b93646;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .18em;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
.v5 .human-wall > b {
  position: absolute;
  left: -42px;
  top: 166px;
  width: 84px;
  height: 84px;
  display: grid;
  place-items: center;
  border: 7px solid #f5f8f7;
  border-radius: 50%;
  color: white;
  background: #ff5d6c;
  box-shadow: 0 12px 28px rgba(103,21,31,.23), 0 0 0 2px rgba(255,93,108,.22);
  font-size: 17px;
  font-weight: 950;
  letter-spacing: .08em;
}

@media (prefers-reduced-motion: reduce) {
  .demo-authority-title,
  .demo-authority-lead,
  .agent-stage,
  .agent-route-node,
  .demo-human-zone,
  .human-wall,
  .human-proof span,
  .send-release,
  .verify-branch { opacity: 1 !important; transform: none !important; animation: none !important; }
  .agent-route-signal { display: none !important; }
}

/* Slide 07 — official current Google identity for NotebookLM / Gemini Notebook. */
.v5 .notebook-stop .tool-icon {
  padding: 4px;
  background: #fff;
}
.v5 .notebook-stop .tool-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.v5 .notebook-stop h3 {
  margin-bottom: 7px;
  font-size: 38px;
  white-space: nowrap;
}
.v5 .notebook-stop .tool-rename {
  display: block;
  margin-bottom: 18px;
  color: #9da8ff;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .11em;
}
.v5 .notebook-stop .tool-rename + p { margin-top: 0; }

/* Slide 07 v2 — editorial authority spectrum, no interface cards. */
.v5 .tool-spectrum-slide {
  padding: 0;
  color: #071a2b;
  background:
    radial-gradient(circle at 86% 52%, rgba(255,173,51,.08), transparent 24%),
    radial-gradient(circle at 52% 52%, rgba(39,195,205,.07), transparent 30%),
    linear-gradient(145deg, #f7f9f8 0%, #edf3f3 100%);
}
.v5 .tool-spectrum-slide::before {
  z-index: 0;
  background:
    linear-gradient(rgba(22,75,96,.034) 1px, transparent 1px),
    linear-gradient(90deg, rgba(22,75,96,.034) 1px, transparent 1px);
  background-size: 84px 84px;
  -webkit-mask-image: linear-gradient(180deg, transparent, black 18%, black 86%, transparent);
  mask-image: linear-gradient(180deg, transparent, black 18%, black 86%, transparent);
}
.v5 .tool-spectrum-slide .slide-head {
  position: absolute;
  z-index: 8;
  left: 108px;
  right: 84px;
  top: 70px;
  min-height: 30px;
  margin: 0;
}
.v5 .tool-spectrum-slide .section-label {
  color: #1b647d;
  font-size: 17px;
  letter-spacing: .18em;
}
.v5 .tool-spectrum-slide .chapter-code { color: #6c8998; }
.v5 .tool-spectrum-heading {
  position: absolute;
  z-index: 5;
  left: 108px;
  right: 100px;
  top: 138px;
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  align-items: end;
  gap: 92px;
}
.v5 .tool-spectrum-heading h2 {
  margin: 0;
  color: #071a2b;
  font-size: 72px;
  font-weight: 940;
  line-height: .94;
  letter-spacing: -.055em;
  opacity: 0;
}
.v5 .tool-spectrum-heading h2 span { color: #078f9a; }
.v5 .tool-spectrum-heading p {
  margin: 0 0 2px;
  color: #5b7887;
  font-size: 23px;
  font-weight: 620;
  line-height: 1.45;
  opacity: 0;
}
.v5 .tool-spectrum-heading p strong { color: #203f50; font-weight: 850; }
.v5 .tool-route.tool-spectrum {
  position: absolute;
  z-index: 4;
  left: 112px;
  right: 112px;
  top: 354px;
  width: auto;
  height: 500px;
  min-height: 0;
  display: block;
  padding: 0;
  border: 0;
  background: transparent;
  overflow: visible;
}
.v5 .tool-route.tool-spectrum::before,
.v5 .tool-route.tool-spectrum::after { display: none; }
.v5 .tool-spectrum-map {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  shape-rendering: geometricPrecision;
}
.v5 .tool-spectrum-base,
.v5 .tool-spectrum-live,
.v5 .tool-spectrum-spur {
  fill: none;
  vector-effect: non-scaling-stroke;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.v5 .tool-spectrum-base {
  stroke: rgba(69,105,120,.14);
  stroke-width: 8px;
  opacity: 0;
}
.v5 .tool-spectrum-live {
  stroke: url(#tool-spectrum-gradient);
  stroke-width: 3px;
  filter: drop-shadow(0 0 7px rgba(48,185,197,.22));
  opacity: 0;
}
.v5 .tool-spectrum-spur { stroke-width: 3px; opacity: 0; }
.v5 .tool-spectrum-spur.spur-a { stroke: #819eaa; }
.v5 .tool-spectrum-spur.spur-b { stroke: #27c3cd; }
.v5 .tool-spectrum-spur.spur-c { stroke: #8284f8; }
.v5 .tool-spectrum-spur.spur-d { stroke: #ffad33; }
.v5 .tool-spectrum-node { opacity: 0; }
.v5 .tool-spectrum-node .node-ring {
  fill: #f2f6f5;
  stroke-width: 3px;
}
.v5 .tool-spectrum-node .node-core { stroke: none; }
.v5 .tool-spectrum-node.node-a .node-ring { stroke: #819eaa; }
.v5 .tool-spectrum-node.node-a .node-core { fill: #819eaa; }
.v5 .tool-spectrum-node.node-b .node-ring { stroke: #27c3cd; }
.v5 .tool-spectrum-node.node-b .node-core { fill: #27c3cd; }
.v5 .tool-spectrum-node.node-c .node-ring { stroke: #8284f8; }
.v5 .tool-spectrum-node.node-c .node-core { fill: #8284f8; }
.v5 .tool-spectrum-node.node-d .node-ring { stroke: #ffad33; }
.v5 .tool-spectrum-node.node-d .node-core { fill: #ffad33; }
.v5 .tool-spectrum-signal {
  fill: #fff;
  stroke: rgba(39,195,205,.45);
  stroke-width: 7px;
  filter: drop-shadow(0 0 11px rgba(39,195,205,.66));
  opacity: 0;
}
.v5 .tool-spectrum .spectrum-stage,
.v5 .tool-spectrum .agent-stop {
  position: absolute;
  z-index: 3;
  top: 0;
  width: 360px;
  height: 480px;
  min-height: 0;
  padding: 0;
  color: #071a2b;
  border: 0;
  background: transparent;
  box-shadow: none;
  transform: none;
  opacity: 0;
}
.v5 .tool-spectrum .stage-a { left: -30px; }
.v5 .tool-spectrum .stage-b { left: 430px; }
.v5 .tool-spectrum .stage-c { left: 890px; }
.v5 .tool-spectrum .stage-d { left: 1350px; }
.v5 .tool-spectrum .tool-index {
  position: absolute;
  left: 18px;
  right: auto;
  top: 8px;
  width: auto;
  height: auto;
  color: #718b98;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  font-size: 15px;
  font-weight: 920;
  letter-spacing: .12em;
}
.v5 .tool-spectrum .tool-icon,
.v5 .tool-spectrum .chatgpt-stop .tool-icon,
.v5 .tool-spectrum .gemini-stop .tool-icon,
.v5 .tool-spectrum .notebook-stop .tool-icon {
  position: absolute;
  left: 50%;
  top: 0;
  width: 106px;
  height: 106px;
  margin: 0;
  padding: 0;
  display: grid;
  place-items: center;
  background: transparent;
  overflow: visible;
  transform: translateX(-50%);
}
.v5 .tool-spectrum .tool-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.v5 .tool-spectrum .agent-glyph {
  border: 0;
  background: transparent;
}
.v5 .tool-spectrum .agent-glyph i {
  width: 16px;
  height: 16px;
  background: #ffad33;
  box-shadow: 0 0 18px rgba(255,173,51,.4);
}
.v5 .tool-spectrum .agent-glyph i:nth-child(1){left:16px;top:18px}
.v5 .tool-spectrum .agent-glyph i:nth-child(2){right:16px;top:18px}
.v5 .tool-spectrum .agent-glyph i:nth-child(3){left:16px;bottom:18px}
.v5 .tool-spectrum .agent-glyph i:nth-child(4){right:16px;bottom:18px}
.v5 .tool-spectrum .agent-glyph::before,
.v5 .tool-spectrum .agent-glyph::after {
  left: 27px;
  right: 27px;
  top: 52px;
  height: 3px;
  background: #b77c1c;
}
.v5 .tool-spectrum .tool-mode {
  position: absolute;
  left: 0;
  right: 0;
  top: 208px;
  color: #338397;
  font-size: 13px;
  font-weight: 920;
  letter-spacing: .15em;
  text-align: center;
}
.v5 .tool-spectrum .stage-c .tool-mode { color: #686cdb; }
.v5 .tool-spectrum .stage-d .tool-mode { color: #bd7506; }
.v5 .tool-spectrum .tool-stop h3,
.v5 .tool-spectrum .agent-stop h3 {
  position: absolute;
  left: 0;
  right: 0;
  top: 232px;
  margin: 0;
  color: #071a2b;
  font-size: 43px;
  font-weight: 920;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}
.v5 .tool-spectrum .tool-stop p,
.v5 .tool-spectrum .agent-stop p {
  position: absolute;
  left: 12px;
  right: 12px;
  top: 294px;
  min-height: 0;
  margin: 0;
  color: #617c89;
  font-size: 19px;
  font-weight: 650;
  line-height: 1.35;
  text-align: center;
}
.v5 .tool-spectrum .tool-stop b,
.v5 .tool-spectrum .agent-stop b {
  position: absolute;
  left: 18px;
  right: 18px;
  top: 366px;
  display: block;
  margin: 0;
  padding: 16px 0 0;
  border-top: 2px solid rgba(57,98,115,.18);
  color: #163f53;
  font-size: 18px;
  font-weight: 760;
  line-height: 1.32;
  text-align: left;
}
.v5 .tool-spectrum .tool-stop b i,
.v5 .tool-spectrum .agent-stop b i {
  display: block;
  margin-bottom: 9px;
  color: #168f9a;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .16em;
}
.v5 .tool-spectrum .stage-c b i { color: #686cdb; }
.v5 .tool-spectrum .stage-d b {
  color: #69440e;
  border-color: rgba(207,128,13,.28);
}
.v5 .tool-spectrum .stage-d b i { color: #bd7506; }
.v5 .tool-spectrum .notebook-stop h3 {
  top: 229px;
  font-size: 36px;
}
.v5 .tool-spectrum .notebook-stop .tool-rename {
  position: absolute;
  left: 0;
  right: 0;
  top: 272px;
  margin: 0;
  color: #686cdb;
  font-size: 11px;
  text-align: center;
}
.v5 .tool-spectrum .notebook-stop .tool-rename + p { top: 304px; }
.v5 .tool-spectrum .notebook-stop b { top: 378px; }
.v5 .tool-spectrum-axis {
  position: absolute;
  z-index: 5;
  left: 112px;
  right: 112px;
  bottom: 138px;
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  align-items: center;
  gap: 18px;
  color: #698391;
  opacity: 0;
}
.v5 .tool-spectrum-axis span,
.v5 .tool-spectrum-axis strong {
  font-size: 14px;
  font-weight: 920;
  letter-spacing: .13em;
  white-space: nowrap;
}
.v5 .tool-spectrum-axis strong { color: #9a650f; }
.v5 .tool-spectrum-axis i {
  height: 2px;
  background: linear-gradient(90deg, #8ca5b0, #27c3cd 42%, #8284f8 72%, #ffad33);
}
.v5 .tool-spectrum-axis b {
  color: #d88a11;
  font-size: 27px;
  line-height: 1;
}
.v5 .tool-spectrum-slide .tool-rule {
  position: absolute;
  z-index: 5;
  left: 112px;
  bottom: 91px;
  margin: 0;
  padding: 0;
  color: #173f52;
  background: transparent;
  font-size: 23px;
  font-weight: 880;
  letter-spacing: .01em;
  text-align: left;
  opacity: 0;
}

@media (prefers-reduced-motion: reduce) {
  .tool-spectrum-heading h2,
  .tool-spectrum-heading p,
  .tool-spectrum-node,
  .tool-spectrum .spectrum-stage,
  .tool-spectrum-axis,
  .tool-spectrum-slide .tool-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
  .tool-spectrum-base,
  .tool-spectrum-live,
  .tool-spectrum-spur { opacity: 1 !important; }
  .tool-spectrum-signal { display: none !important; }
}

@media print {
  .tool-spectrum-heading h2,
  .tool-spectrum-heading p,
  .tool-spectrum-node,
  .tool-spectrum .spectrum-stage,
  .tool-spectrum-axis,
  .tool-spectrum-slide .tool-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
  .tool-spectrum-base,
  .tool-spectrum-live,
  .tool-spectrum-spur { opacity: 1 !important; }
  .tool-spectrum-signal { display: none !important; }
}

@media print {
  .demo-authority-title,
  .demo-authority-lead,
  .agent-stage,
  .agent-route-node,
  .demo-human-zone,
  .human-wall,
  .human-proof span,
  .send-release,
  .verify-branch { opacity: 1 !important; transform: none !important; animation: none !important; }
  .agent-route-signal { display: none !important; }
}

@media print {
  .executive-prologue,
  .executive-transition,
  .opening-truck-transition,
  .cinematic-field,
  .case-signal,
  .case-scanline,
  .video-intro-overlay { display: none !important; }
  .verdict-copy,
  .email-xray,
  .verdict-stamp,
  .xray-findings > span,
  .verdict-action { animation: none !important; opacity: 1 !important; }
  .risk-mark { animation: none !important; background-size: 100% 100% !important; }
  .hero-arrival-truck,
  .hero-title-line,
  .hero-control-question,
  .hero-audience,
  .hero-location,
  .hero-bottom-meta { opacity: 1 !important; transform: none !important; animation: none !important; }
}

/* Slide 08 — one weak control point fans into five connected risks. */
.v5 .risk-fan-slide {
  padding: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 60%, rgba(255, 113, 82, .14), transparent 22%),
    radial-gradient(circle at 73% 43%, rgba(48, 190, 203, .075), transparent 30%),
    linear-gradient(126deg, #04111b 0%, #061925 57%, #03111a 100%);
}

.v5 .risk-fan-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: .32;
  background-image:
    linear-gradient(rgba(112, 176, 193, .075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(112, 176, 193, .075) 1px, transparent 1px);
  background-size: 112px 112px;
  mask-image: linear-gradient(90deg, #000, rgba(0,0,0,.55) 72%, transparent);
}

.v5 .risk-fan-slide::after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  width: 7px;
  height: 100%;
  background: linear-gradient(180deg, #ffad2f 0 31%, #ff655b 31% 63%, #46c8d1 63% 100%);
}

.v5 .risk-fan-slide .slide-head {
  position: absolute;
  z-index: 5;
  top: 70px;
  left: 112px;
  right: 390px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
}

.v5 .risk-fan-slide .section-label {
  color: #71d7de;
  font-size: 17px;
  font-weight: 840;
  letter-spacing: .2em;
}

.v5 .risk-fan-slide .chapter-code {
  color: rgba(184, 213, 221, .48);
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .16em;
}

.v5 .risk-fan-heading {
  position: absolute;
  z-index: 5;
  left: 112px;
  right: 112px;
  top: 140px;
  display: grid;
  grid-template-columns: 960px 1fr;
  gap: 110px;
  align-items: end;
}

.v5 .risk-fan-heading h2 {
  margin: 0;
  color: #f7fbfc;
  font-size: 72px;
  font-weight: 890;
  line-height: .98;
  letter-spacing: -.045em;
  opacity: 0;
}

.v5 .risk-fan-heading h2 span {
  color: #ffad2f;
}

.v5 .risk-fan-heading p {
  margin: 0 0 5px;
  padding: 4px 0 5px 25px;
  border-left: 3px solid #ff675d;
  color: #aac0ca;
  font-size: 21px;
  font-weight: 540;
  line-height: 1.43;
  opacity: 0;
}

.v5 .risk-fan-map {
  position: absolute;
  z-index: 4;
  left: 100px;
  right: 100px;
  top: 350px;
  height: 610px;
}

.v5 .risk-fan-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.v5 .risk-ray {
  fill: none;
  stroke: url(#risk-ray-gradient);
  stroke-width: 2.3;
  stroke-linecap: round;
  opacity: 0;
}

.v5 .risk-ray.ray-1,
.v5 .risk-ray.ray-5 { stroke-opacity: .62; }
.v5 .risk-ray.ray-2,
.v5 .risk-ray.ray-4 { stroke-opacity: .76; }
.v5 .risk-ray.ray-3 { stroke-width: 3.1; stroke-opacity: 1; }

.v5 .risk-origin-node,
.v5 .risk-end-node { opacity: 0; }

.v5 .risk-origin-node .origin-halo {
  fill: url(#risk-origin-gradient);
}

.v5 .risk-origin-node .origin-ring {
  fill: #071722;
  stroke: #ffad2f;
  stroke-width: 3;
  filter: drop-shadow(0 0 9px rgba(255, 173, 47, .68));
}

.v5 .risk-origin-node .origin-core { fill: #fff6de; }

.v5 .risk-end-node circle {
  fill: #061722;
  stroke: #71d7de;
  stroke-width: 2.5;
  filter: drop-shadow(0 0 7px rgba(113, 215, 222, .52));
}

.v5 .risk-origin {
  position: absolute;
  z-index: 5;
  left: 0;
  top: 245px;
  width: 210px;
  text-align: right;
  opacity: 0;
}

.v5 .risk-origin::after {
  content: "";
  position: absolute;
  right: -20px;
  top: 8px;
  width: 3px;
  height: 74px;
  background: linear-gradient(#ffb22f, #ff655b);
  box-shadow: 0 0 18px rgba(255, 112, 79, .34);
}

.v5 .risk-origin small {
  display: block;
  margin-bottom: 8px;
  color: #ffb22f;
  font-size: 14px;
  font-weight: 840;
  letter-spacing: .17em;
}

.v5 .risk-origin strong {
  display: block;
  color: #f8fbfc;
  font-size: 32px;
  font-weight: 900;
  line-height: .96;
  letter-spacing: -.025em;
}

.v5 .risk-branch-list {
  position: absolute;
  z-index: 5;
  left: 1075px;
  top: 49px;
  width: 570px;
  display: grid;
  grid-template-rows: repeat(5, 82px);
  row-gap: 23px;
}

.v5 .risk-branch {
  position: relative;
  display: grid;
  grid-template-columns: 70px 1fr;
  align-items: center;
  min-width: 0;
  opacity: 0;
}

.v5 .risk-branch::after {
  content: "";
  position: absolute;
  left: 70px;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(112, 215, 222, .44), rgba(112, 215, 222, .05));
}

.v5 .risk-branch > b {
  color: rgba(255, 255, 255, .28);
  font-size: 34px;
  font-weight: 850;
  letter-spacing: -.035em;
}

.v5 .risk-branch h3 {
  margin: 0 0 5px;
  color: #f5fafb;
  font-size: 28px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: -.025em;
}

.v5 .risk-branch p {
  margin: 0;
  color: #91a9b4;
  font-size: 17px;
  font-weight: 540;
  line-height: 1.25;
}

.v5 .risk-branch:nth-child(1) > b,
.v5 .risk-branch:nth-child(2) > b { color: #ff8069; }
.v5 .risk-branch:nth-child(3) > b { color: #ffb22f; }
.v5 .risk-branch:nth-child(4) > b,
.v5 .risk-branch:nth-child(5) > b { color: #71d7de; }

.v5 .risk-fan-rule {
  position: absolute;
  z-index: 6;
  left: 112px;
  bottom: 91px;
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 0;
  opacity: 0;
}

.v5 .risk-fan-rule span,
.v5 .risk-fan-rule strong {
  font-size: 17px;
  font-weight: 860;
  letter-spacing: .12em;
}

.v5 .risk-fan-rule span { color: #ff9b69; }
.v5 .risk-fan-rule strong { color: #e9f4f6; }
.v5 .risk-fan-rule i {
  color: #65cdd5;
  font-size: 25px;
  font-style: normal;
}

@media (prefers-reduced-motion: reduce) {
  .risk-fan-heading h2,
  .risk-fan-heading p,
  .risk-origin,
  .risk-origin-node,
  .risk-end-node,
  .risk-ray,
  .risk-branch,
  .risk-fan-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
}

@media print {
  .risk-fan-heading h2,
  .risk-fan-heading p,
  .risk-origin,
  .risk-origin-node,
  .risk-end-node,
  .risk-ray,
  .risk-branch,
  .risk-fan-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
}

/* Slide 09 — an approved lane and a Shadow AI bypass, expressed as logistics. */
.v5 .shadow-bypass-slide {
  padding: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 69% 50%, rgba(255, 100, 114, .085), transparent 24%),
    radial-gradient(circle at 30% 62%, rgba(82, 208, 217, .075), transparent 28%),
    linear-gradient(122deg, #040f18 0%, #061a25 61%, #030e16 100%);
}

.v5 .shadow-bypass-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: .24;
  background-image:
    linear-gradient(rgba(104, 172, 188, .085) 1px, transparent 1px),
    linear-gradient(90deg, rgba(104, 172, 188, .065) 1px, transparent 1px);
  background-size: 112px 112px;
  mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.7) 68%, transparent 100%);
}

.v5 .shadow-bypass-slide::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 72px;
  left: calc(112px + 1040px);
  width: 1px;
  background: linear-gradient(transparent 11%, rgba(255, 178, 47, .42) 24%, rgba(255, 100, 114, .62) 63%, transparent 93%);
  box-shadow: 0 0 42px rgba(255, 105, 91, .12);
}

.v5 .shadow-bypass-slide .slide-head {
  position: absolute;
  z-index: 7;
  top: 70px;
  left: 112px;
  right: 390px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
}

.v5 .shadow-bypass-slide .section-label {
  color: #73d8df;
  font-size: 17px;
  font-weight: 850;
  letter-spacing: .2em;
}

.v5 .shadow-bypass-slide .chapter-code {
  color: rgba(188, 215, 223, .48);
  font-size: 20px;
  font-weight: 820;
  letter-spacing: .16em;
}

.v5 .shadow-heading {
  position: absolute;
  z-index: 7;
  top: 142px;
  left: 112px;
  right: 112px;
  display: grid;
  grid-template-columns: 1020px 1fr;
  gap: 116px;
  align-items: end;
}

.v5 .shadow-heading h2 {
  margin: 0;
  color: #f7fbfc;
  font-size: 67px;
  font-weight: 900;
  line-height: .98;
  letter-spacing: -.044em;
  opacity: 0;
}

.v5 .shadow-heading h2 span { color: #ff796f; }

.v5 .shadow-heading p {
  margin: 0 0 3px;
  padding: 4px 0 5px 24px;
  border-left: 3px solid #ffb22f;
  color: #a9bec7;
  font-size: 21px;
  font-weight: 550;
  line-height: 1.42;
  opacity: 0;
}

.v5 .shadow-route {
  position: absolute;
  z-index: 4;
  top: 350px;
  left: 112px;
  right: 112px;
  height: 560px;
}

.v5 .shadow-route-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.v5 .approved-lane-base,
.v5 .approved-lane-live,
.v5 .shadow-lane-base,
.v5 .shadow-lane-live,
.v5 .shadow-last-mile {
  fill: none;
  stroke-linecap: round;
}

.v5 .approved-lane-base {
  stroke: rgba(99, 213, 220, .14);
  stroke-width: 12;
  opacity: 0;
}

.v5 .approved-lane-live {
  stroke: url(#approved-lane-gradient);
  stroke-width: 3;
  filter: drop-shadow(0 0 8px rgba(99, 213, 220, .3));
  opacity: 0;
}

.v5 .shadow-lane-base {
  stroke: rgba(255, 103, 104, .13);
  stroke-width: 13;
  stroke-dasharray: 8 13;
  opacity: 0;
}

.v5 .shadow-lane-live {
  stroke: url(#shadow-lane-gradient);
  stroke-width: 3.5;
  filter: drop-shadow(0 0 10px rgba(255, 105, 97, .36));
  opacity: 0;
}

.v5 .shadow-last-mile {
  stroke: #ff6472;
  stroke-width: 2.5;
  opacity: 0;
}

.v5 .shadow-control-ticks,
.v5 .shadow-gate-mark { opacity: 0; }

.v5 .shadow-control-ticks path {
  fill: none;
  stroke: rgba(99, 213, 220, .34);
  stroke-width: 1.5;
}

.v5 .shadow-control-ticks circle {
  fill: #071923;
  stroke: #63d5dc;
  stroke-width: 2.5;
}

.v5 .shadow-gate-mark path {
  fill: none;
  stroke-linecap: square;
}

.v5 .shadow-gate-mark .gate-post {
  stroke: #ffb22f;
  stroke-width: 4;
  filter: drop-shadow(0 0 8px rgba(255, 178, 47, .34));
}

.v5 .shadow-gate-mark .gate-bar {
  stroke: #ff7066;
  stroke-width: 5;
}

.v5 .shadow-route-origin {
  position: absolute;
  z-index: 6;
  left: 0;
  top: 266px;
  width: 112px;
  opacity: 0;
}

.v5 .shadow-route-origin small {
  display: block;
  margin-bottom: 7px;
  color: #73d8df;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .14em;
}

.v5 .shadow-route-origin strong {
  display: block;
  color: #f2f9fa;
  font-size: 25px;
  font-weight: 900;
  line-height: .96;
  letter-spacing: -.02em;
}

.v5 .shadow-control-labels {
  position: absolute;
  z-index: 6;
  inset: 0;
  pointer-events: none;
}

.v5 .shadow-control-labels span {
  position: absolute;
  top: 418px;
  width: 150px;
  color: #9db4bd;
  font-size: 16px;
  font-weight: 650;
  line-height: 1.25;
  opacity: 0;
}

.v5 .shadow-control-labels span:nth-child(1) { left: 175px; }
.v5 .shadow-control-labels span:nth-child(2) { left: 390px; }
.v5 .shadow-control-labels span:nth-child(3) { left: 605px; }
.v5 .shadow-control-labels span:nth-child(4) { left: 820px; }

.v5 .shadow-control-labels b {
  display: block;
  margin-bottom: 6px;
  color: #63d5dc;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .14em;
}

.v5 .shadow-gate-label {
  position: absolute;
  z-index: 6;
  left: 1060px;
  top: 348px;
  width: 174px;
  opacity: 0;
}

.v5 .shadow-gate-label small {
  display: block;
  margin-bottom: 7px;
  color: #ffb22f;
  font-size: 11px;
  font-weight: 880;
  letter-spacing: .14em;
}

.v5 .shadow-gate-label strong {
  display: block;
  color: #f5f9fa;
  font-size: 23px;
  font-weight: 900;
  line-height: .96;
}

.v5 .shadow-bypass-label {
  position: absolute;
  z-index: 6;
  left: 845px;
  top: 34px;
  padding-left: 17px;
  border-left: 2px solid #ff7066;
  opacity: 0;
}

.v5 .shadow-bypass-label span {
  display: block;
  margin-bottom: 6px;
  color: #ffb22f;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .17em;
}

.v5 .shadow-bypass-label strong {
  color: #ff7c73;
  font-size: 25px;
  font-weight: 900;
  letter-spacing: -.02em;
}

.v5 .shadow-data-container {
  position: absolute;
  z-index: 8;
  left: 0;
  top: 0;
  width: 164px;
  height: 68px;
  margin: -34px 0 0 -82px;
  overflow: hidden;
  border: 2px solid #ffb22f;
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.13) 0 2px, transparent 2px 14px),
    linear-gradient(135deg, #c7433f, #7f2831);
  color: white;
  box-shadow: 0 14px 38px rgba(0,0,0,.38), 0 0 25px rgba(255,104,95,.2);
  opacity: 0;
}

.v5 .shadow-data-container::after {
  content: "";
  position: absolute;
  inset: 5px;
  border: 1px solid rgba(255,255,255,.18);
}

.v5 .shadow-data-container i {
  position: absolute;
  z-index: 2;
  left: 13px;
  top: 13px;
  width: 10px;
  height: 10px;
  border: 2px solid #fff0c8;
  border-radius: 50%;
}

.v5 .shadow-data-container span {
  position: absolute;
  z-index: 2;
  left: 31px;
  top: 14px;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .08em;
}

.v5 .shadow-data-container b {
  position: absolute;
  z-index: 2;
  right: 11px;
  bottom: 9px;
  color: #ffe1a3;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .18em;
}

.v5 .shadow-personal-account {
  position: absolute;
  z-index: 6;
  left: 1405px;
  top: 150px;
  width: 240px;
  height: 240px;
  display: grid;
  place-content: center;
  padding: 24px;
  border: 2px solid #ff6472;
  border-radius: 50%;
  text-align: center;
  background: radial-gradient(circle, rgba(255, 100, 114, .12), rgba(5,16,24,.72) 68%);
  box-shadow: inset 0 0 46px rgba(255, 100, 114, .07), 0 0 45px rgba(255, 100, 114, .08);
  opacity: 0;
}

.v5 .shadow-personal-account::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px dashed rgba(255, 118, 127, .3);
  border-radius: 50%;
}

.v5 .shadow-personal-account small,
.v5 .shadow-personal-account strong,
.v5 .shadow-personal-account span { position: relative; z-index: 2; display: block; }

.v5 .shadow-personal-account small {
  margin-bottom: 10px;
  color: #ff9b8b;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
}

.v5 .shadow-personal-account strong {
  color: #f9fbfc;
  font-size: 27px;
  font-weight: 900;
  line-height: .98;
}

.v5 .shadow-personal-account span {
  margin-top: 11px;
  color: #c3979c;
  font-size: 13px;
  font-weight: 720;
}

.v5 .shadow-bottom-rule {
  position: absolute;
  z-index: 8;
  left: 112px;
  bottom: 91px;
  margin: 0;
  color: #a9bcc5;
  font-size: 22px;
  font-weight: 570;
  opacity: 0;
}

.v5 .shadow-bottom-rule span { color: #ff7e73; font-weight: 850; }
.v5 .shadow-bottom-rule strong { color: #f1f7f8; font-weight: 850; }

@media (prefers-reduced-motion: reduce) {
  .shadow-heading h2,
  .shadow-heading p,
  .approved-lane-base,
  .approved-lane-live,
  .shadow-lane-base,
  .shadow-lane-live,
  .shadow-last-mile,
  .shadow-control-ticks,
  .shadow-gate-mark,
  .shadow-route-origin,
  .shadow-control-labels span,
  .shadow-gate-label,
  .shadow-bypass-label,
  .shadow-personal-account,
  .shadow-bottom-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
  .shadow-data-container { opacity: 1 !important; left: 1308px !important; top: 270px !important; transform: none !important; animation: none !important; }
}

@media print {
  .shadow-heading h2,
  .shadow-heading p,
  .approved-lane-base,
  .approved-lane-live,
  .shadow-lane-base,
  .shadow-lane-live,
  .shadow-last-mile,
  .shadow-control-ticks,
  .shadow-gate-mark,
  .shadow-route-origin,
  .shadow-control-labels span,
  .shadow-gate-label,
  .shadow-bypass-label,
  .shadow-personal-account,
  .shadow-bottom-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
  .shadow-data-container { opacity: 1 !important; left: 1308px !important; top: 270px !important; transform: none !important; animation: none !important; }
}

/* New slide 02 — course briefing and fast tool recap, designed as one route. */
.v5 .briefing-slide {
  padding: 0;
  overflow: hidden;
  color: #061722;
  background:
    radial-gradient(circle at 86% 42%, rgba(255, 173, 47, .13), transparent 21%),
    radial-gradient(circle at 27% 63%, rgba(43, 196, 206, .11), transparent 25%),
    linear-gradient(124deg, #f7faf9 0%, #edf4f3 62%, #f7f1e4 100%);
}

.v5 .briefing-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: .48;
  background-image:
    linear-gradient(rgba(23, 76, 91, .07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23, 76, 91, .07) 1px, transparent 1px);
  background-size: 112px 112px;
  mask-image: linear-gradient(90deg, #000, rgba(0,0,0,.5) 78%, transparent);
}

.v5 .briefing-slide::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 8px;
  background: linear-gradient(90deg, #22bec8 0 33%, #687fe4 33% 67%, #ffad2f 67% 100%);
}

.v5 .briefing-slide .slide-head {
  position: absolute;
  z-index: 7;
  top: 70px;
  left: 112px;
  right: 390px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
}

.v5 .briefing-slide .section-label {
  color: #197081;
  font-size: 17px;
  font-weight: 860;
  letter-spacing: .2em;
}

.v5 .briefing-slide .chapter-code {
  color: rgba(31, 82, 97, .47);
  font-size: 20px;
  font-weight: 820;
  letter-spacing: .16em;
}

.v5 .briefing-heading {
  position: absolute;
  z-index: 7;
  top: 140px;
  left: 112px;
  right: 112px;
  display: grid;
  grid-template-columns: 1080px 1fr;
  gap: 78px;
  align-items: end;
}

.v5 .briefing-heading h2 {
  margin: 0;
  color: #071822;
  font-size: 68px;
  font-weight: 900;
  line-height: .98;
  letter-spacing: -.046em;
  opacity: 0;
}

.v5 .briefing-heading h2 span { color: #e88f13; }

.v5 .briefing-heading p {
  margin: 0 0 4px;
  padding: 4px 0 5px 24px;
  border-left: 3px solid #29bdc6;
  color: #4e6a76;
  font-size: 20px;
  font-weight: 580;
  line-height: 1.43;
  opacity: 0;
}

.v5 .briefing-heading p strong { color: #153f50; font-weight: 830; }

.v5 .briefing-route {
  position: absolute;
  z-index: 4;
  top: 340px;
  left: 112px;
  right: 112px;
  height: 500px;
}

.v5 .briefing-route-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.v5 .briefing-route-base,
.v5 .briefing-route-live,
.v5 .briefing-route-spurs path {
  fill: none;
  stroke-linecap: round;
}

.v5 .briefing-route-base {
  stroke: rgba(30, 82, 98, .13);
  stroke-width: 12;
  opacity: 0;
}

.v5 .briefing-route-live {
  stroke: url(#briefing-route-gradient);
  stroke-width: 3.5;
  filter: drop-shadow(0 0 7px rgba(39, 182, 195, .24));
  opacity: 0;
}

.v5 .briefing-route-spurs,
.v5 .briefing-route-nodes { opacity: 0; }

.v5 .briefing-route-spurs path {
  stroke: rgba(38, 137, 156, .32);
  stroke-width: 1.6;
}

.v5 .briefing-route-nodes .node-ring {
  fill: #eff7f6;
  stroke: #22bec8;
  stroke-width: 2.5;
}

.v5 .briefing-route-nodes .node-core { fill: #126a7a; }
.v5 .briefing-route-nodes .final-ring {
  stroke: #f3a01f;
  filter: drop-shadow(0 0 8px rgba(255, 173, 47, .46));
}
.v5 .briefing-route-nodes .final-core { fill: #f3a01f; }

.v5 .briefing-route-signal {
  fill: #fff;
  stroke: #1ebcc6;
  stroke-width: 3;
  filter: drop-shadow(0 0 9px rgba(34, 190, 200, .7));
  opacity: 0;
}

.v5 .briefing-recap {
  position: absolute;
  z-index: 6;
  left: 0;
  top: 42px;
  width: 520px;
  opacity: 0;
}

.v5 .briefing-recap > small {
  display: block;
  margin-bottom: 7px;
  color: #187384;
  font-size: 13px;
  font-weight: 880;
  letter-spacing: .16em;
}

.v5 .briefing-recap > strong {
  display: block;
  color: #0a2632;
  font-size: 26px;
  font-weight: 880;
  letter-spacing: -.02em;
}

.v5 .briefing-tool-row {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin-top: 25px;
}

.v5 .briefing-tool-row > span {
  width: 104px;
  text-align: center;
  opacity: 0;
}

.v5 .briefing-tool-row i {
  position: relative;
  display: grid;
  place-items: center;
  width: 66px;
  height: 66px;
  margin: 0 auto 10px;
  border-radius: 50%;
  background: rgba(255,255,255,.8);
  box-shadow: 0 10px 26px rgba(17, 62, 76, .12), inset 0 0 0 1px rgba(27, 83, 99, .1);
}

.v5 .briefing-tool-row img {
  display: block;
  width: 42px;
  height: 42px;
  object-fit: contain;
}

.v5 .briefing-tool-row b {
  display: block;
  color: #234653;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.16;
}

.v5 .briefing-agent-glyph em {
  position: absolute;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #7786eb;
  box-shadow: 0 0 10px rgba(100, 118, 232, .35);
}

.v5 .briefing-agent-glyph::before,
.v5 .briefing-agent-glyph::after {
  content: "";
  position: absolute;
  left: 17px;
  top: 32px;
  width: 32px;
  height: 2px;
  background: #7786eb;
  transform: rotate(28deg);
}

.v5 .briefing-agent-glyph::after { transform: rotate(-28deg); }
.v5 .briefing-agent-glyph em:nth-child(1) { left: 12px; top: 26px; }
.v5 .briefing-agent-glyph em:nth-child(2) { right: 12px; top: 15px; }
.v5 .briefing-agent-glyph em:nth-child(3) { right: 12px; bottom: 15px; }
.v5 .briefing-agent-glyph em:nth-child(4) { left: 27px; top: 27px; background: #f3a01f; }

.v5 .briefing-flow-kicker {
  position: absolute;
  z-index: 6;
  left: 540px;
  top: 181px;
  color: #5d7884;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .16em;
  opacity: 0;
}

.v5 .briefing-phase-list {
  position: absolute;
  z-index: 6;
  left: 640px;
  top: 315px;
  width: 805px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 43px;
}

.v5 .briefing-phase-list article {
  position: relative;
  min-width: 0;
  padding-top: 16px;
  border-top: 2px solid rgba(39, 129, 149, .23);
  opacity: 0;
}

.v5 .briefing-phase-list article > b {
  display: block;
  margin-bottom: 7px;
  color: #25879a;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .12em;
}

.v5 .briefing-phase-list h3 {
  margin: 0 0 8px;
  color: #09232f;
  font-size: 27px;
  font-weight: 880;
  line-height: 1;
  letter-spacing: -.025em;
}

.v5 .briefing-phase-list p {
  margin: 0;
  color: #5d747e;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.28;
}

.v5 .briefing-outcome {
  position: absolute;
  z-index: 7;
  left: 1440px;
  top: 100px;
  width: 240px;
  height: 240px;
  display: grid;
  place-content: center;
  padding: 25px;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  background: radial-gradient(circle at 42% 32%, #174256, #071c29 70%);
  box-shadow: 0 20px 52px rgba(9, 47, 61, .2), inset 0 0 0 2px rgba(255, 173, 47, .72), inset 0 0 0 13px rgba(255,255,255,.025);
  opacity: 0;
}

.v5 .briefing-outcome::before {
  content: "";
  position: absolute;
  inset: -10px;
  border: 1px dashed rgba(233, 153, 25, .48);
  border-radius: 50%;
}

.v5 .briefing-outcome small,
.v5 .briefing-outcome strong,
.v5 .briefing-outcome b,
.v5 .briefing-outcome span { position: relative; z-index: 2; display: block; }
.v5 .briefing-outcome small { color: #f7bd61; font-size: 11px; font-weight: 900; letter-spacing: .15em; }
.v5 .briefing-outcome strong { margin: 4px 0 -1px; color: #fff; font-size: 54px; font-weight: 930; line-height: 1; }
.v5 .briefing-outcome b { color: #fff; font-size: 24px; font-weight: 900; line-height: .96; }
.v5 .briefing-outcome span { margin-top: 8px; color: #abc3cc; font-size: 13px; font-weight: 670; }

.v5 .briefing-bottom-rule {
  position: absolute;
  z-index: 8;
  left: 112px;
  bottom: 91px;
  display: flex;
  align-items: center;
  gap: 17px;
  margin: 0;
  opacity: 0;
}

.v5 .briefing-bottom-rule span {
  color: #1e8091;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .14em;
}
.v5 .briefing-bottom-rule i { color: #ec9a1d; font-size: 24px; font-style: normal; }
.v5 .briefing-bottom-rule strong { color: #153b4a; font-size: 20px; font-weight: 850; }

@media (prefers-reduced-motion: reduce) {
  .briefing-heading h2,
  .briefing-heading p,
  .briefing-route-base,
  .briefing-route-live,
  .briefing-route-spurs,
  .briefing-route-nodes,
  .briefing-recap,
  .briefing-tool-row > span,
  .briefing-flow-kicker,
  .briefing-phase-list article,
  .briefing-outcome,
  .briefing-bottom-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
  .briefing-route-signal { display: none !important; }
}

@media print {
  .briefing-heading h2,
  .briefing-heading p,
  .briefing-route-base,
  .briefing-route-live,
  .briefing-route-spurs,
  .briefing-route-nodes,
  .briefing-recap,
  .briefing-tool-row > span,
  .briefing-flow-kicker,
  .briefing-phase-list article,
  .briefing-outcome,
  .briefing-bottom-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
  .briefing-route-signal { display: none !important; }
}

/* Slide 07 — AI prepares the working copy; a named human authorizes real action. */
.v5 .human-handoff-slide {
  padding: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 76% 58%, rgba(255, 173, 47, .11), transparent 24%),
    radial-gradient(circle at 29% 54%, rgba(47, 196, 207, .09), transparent 28%),
    linear-gradient(124deg, #03111b 0%, #061b27 63%, #030f18 100%);
}

.v5 .human-handoff-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: .28;
  background-image:
    linear-gradient(rgba(102, 169, 185, .08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(102, 169, 185, .07) 1px, transparent 1px);
  background-size: 112px 112px;
  mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.58) 74%, transparent 100%);
}

.v5 .human-handoff-slide::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 8px;
  height: calc(100% - 72px);
  background: linear-gradient(180deg, #38c5cd 0 51%, #ffad2f 51% 100%);
}

.v5 .human-handoff-slide .slide-head {
  position: absolute;
  z-index: 8;
  top: 70px;
  left: 112px;
  right: 390px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
}

.v5 .human-handoff-slide .section-label {
  color: #76dae0;
  font-size: 17px;
  font-weight: 860;
  letter-spacing: .2em;
}

.v5 .human-handoff-slide .chapter-code {
  color: rgba(185, 214, 222, .48);
  font-size: 20px;
  font-weight: 820;
  letter-spacing: .16em;
}

.v5 .handoff-heading {
  position: absolute;
  z-index: 8;
  top: 140px;
  left: 112px;
  right: 112px;
  display: grid;
  grid-template-columns: 1060px 1fr;
  gap: 96px;
  align-items: end;
}

.v5 .handoff-heading h2 {
  margin: 0;
  color: #f7fbfc;
  font-size: 66px;
  font-weight: 900;
  line-height: .98;
  letter-spacing: -.045em;
  opacity: 0;
}

.v5 .handoff-heading h2 span { color: #72dce1; }

.v5 .handoff-heading p {
  margin: 0 0 4px;
  padding: 4px 0 5px 24px;
  border-left: 3px solid #ffad2f;
  color: #a9c0ca;
  font-size: 21px;
  font-weight: 560;
  line-height: 1.42;
  opacity: 0;
}

.v5 .handoff-heading p strong { color: #f2f7f8; font-weight: 830; }

.v5 .handoff-stage {
  position: absolute;
  z-index: 4;
  top: 350px;
  left: 112px;
  right: 112px;
  height: 520px;
}

.v5 .handoff-document {
  position: absolute;
  z-index: 5;
  left: 0;
  top: 38px;
  width: 1035px;
  height: 388px;
  padding: 0;
  overflow: hidden;
  color: #071a25;
  background:
    linear-gradient(rgba(25, 91, 109, .055) 1px, transparent 1px),
    #edf3f3;
  background-size: 100% 68px;
  border-top: 8px solid #2cc1cb;
  box-shadow: 25px 27px 0 rgba(51, 199, 208, .08), 0 28px 70px rgba(0,0,0,.34);
  transform: rotate(-.45deg);
  opacity: 0;
}

.v5 .handoff-document header {
  height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 42px;
  border-bottom: 1px solid #cbd9dc;
}

.v5 .handoff-document header span {
  color: #207688;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .17em;
}

.v5 .handoff-document header strong {
  color: #d85352;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .12em;
}

.v5 .handoff-ai-list {
  padding: 0 42px;
}

.v5 .handoff-ai-list > div {
  height: 74px;
  display: grid;
  grid-template-columns: 74px 250px 1fr;
  align-items: center;
  border-bottom: 1px solid #cbd9dc;
  opacity: 0;
}

.v5 .handoff-ai-list b {
  color: #2aa9b5;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: .13em;
}

.v5 .handoff-ai-list strong {
  color: #092634;
  font-size: 24px;
  font-weight: 880;
  letter-spacing: -.015em;
}

.v5 .handoff-ai-list span {
  color: #53707b;
  font-size: 19px;
  font-weight: 640;
}

.v5 .handoff-signature {
  position: absolute;
  left: 42px;
  right: 42px;
  bottom: 19px;
  height: 42px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: end;
  gap: 20px;
  opacity: 0;
}

.v5 .handoff-signature small {
  color: #5e7a85;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .13em;
}

.v5 .handoff-signature i {
  height: 1px;
  margin-bottom: 4px;
  background: #8299a2;
  transform-origin: left center;
}

.v5 .handoff-signature strong {
  color: #dd5555;
  font-size: 17px;
  font-weight: 900;
  letter-spacing: .08em;
}

.v5 .handoff-boundary {
  position: absolute;
  z-index: 7;
  left: 1066px;
  top: 7px;
  width: 104px;
  height: 450px;
  opacity: 0;
}

.v5 .handoff-boundary > i {
  position: absolute;
  left: 51px;
  top: 82px;
  bottom: 18px;
  width: 3px;
  background: linear-gradient(#ffb22f, #ff6b62);
  box-shadow: 0 0 20px rgba(255, 113, 86, .25);
  transform-origin: top center;
}

.v5 .handoff-boundary > span {
  position: absolute;
  left: 12px;
  top: 0;
  width: 80px;
  color: #ffad2f;
  font-size: 82px;
  font-weight: 860;
  line-height: .8;
  text-align: center;
}

.v5 .handoff-boundary > small {
  position: absolute;
  left: 6px;
  bottom: 0;
  width: 92px;
  color: #ffbd61;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: .11em;
  text-align: center;
}

.v5 .handoff-authority {
  position: absolute;
  z-index: 6;
  left: 1190px;
  top: 42px;
  width: 495px;
  height: 390px;
  opacity: 0;
}

.v5 .handoff-authority > small {
  display: block;
  margin-bottom: 12px;
  color: #ffb451;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .14em;
}

.v5 .handoff-authority h3 {
  margin: 0;
  color: #f5fafb;
  font-size: 52px;
  font-weight: 920;
  line-height: .9;
  letter-spacing: -.035em;
}

.v5 .authority-actions {
  position: absolute;
  left: 0;
  top: 158px;
  width: 278px;
}

.v5 .authority-actions span {
  display: block;
  padding: 12px 0;
  border-bottom: 1px solid rgba(122, 180, 195, .2);
  color: #91aab5;
  font-size: 15px;
  font-weight: 620;
  opacity: 0;
}

.v5 .authority-actions b {
  display: block;
  margin-bottom: 3px;
  color: #f5fafb;
  font-size: 19px;
  font-weight: 880;
  letter-spacing: .02em;
}

.v5 .human-signoff-stamp {
  position: absolute;
  z-index: 4;
  right: -2px;
  top: 177px;
  width: 190px;
  height: 190px;
  display: grid;
  place-content: center;
  border: 3px solid #ffad2f;
  border-radius: 50%;
  text-align: center;
  transform: rotate(-8deg);
  box-shadow: inset 0 0 0 8px rgba(255,173,47,.08), 0 0 34px rgba(255,173,47,.11);
  opacity: 0;
}

.v5 .human-signoff-stamp::before {
  content: "";
  position: absolute;
  inset: 10px;
  border: 1px dashed rgba(255, 188, 88, .58);
  border-radius: 50%;
}

.v5 .human-signoff-stamp span,
.v5 .human-signoff-stamp strong,
.v5 .human-signoff-stamp i { position: relative; z-index: 2; display: block; }
.v5 .human-signoff-stamp span { color: #ffd489; font-size: 14px; font-weight: 900; letter-spacing: .15em; }
.v5 .human-signoff-stamp strong { color: #fff; font-size: 27px; font-weight: 920; line-height: 1; }
.v5 .human-signoff-stamp i { margin-top: 7px; color: #e5b96f; font-size: 10px; font-weight: 900; font-style: normal; letter-spacing: .18em; }

.v5 .handoff-bottom-rule {
  position: absolute;
  z-index: 8;
  left: 112px;
  bottom: 91px;
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 0;
  opacity: 0;
}

.v5 .handoff-bottom-rule span { color: #ff8a76; font-size: 14px; font-weight: 900; letter-spacing: .14em; }
.v5 .handoff-bottom-rule i { color: #69d2d8; font-size: 24px; font-style: normal; }
.v5 .handoff-bottom-rule strong { color: #eef7f8; font-size: 19px; font-weight: 850; letter-spacing: .04em; }

@media (prefers-reduced-motion: reduce) {
  .handoff-heading h2,
  .handoff-heading p,
  .handoff-document,
  .handoff-ai-list > div,
  .handoff-signature,
  .handoff-boundary,
  .handoff-authority,
  .authority-actions span,
  .human-signoff-stamp,
  .handoff-bottom-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
}

@media print {
  .handoff-heading h2,
  .handoff-heading p,
  .handoff-document,
  .handoff-ai-list > div,
  .handoff-signature,
  .handoff-boundary,
  .handoff-authority,
  .authority-actions span,
  .human-signoff-stamp,
  .handoff-bottom-rule { opacity: 1 !important; transform: none !important; animation: none !important; }
}

/* ==========================================================================
   CINEMATIC VIDEO INTRO OVERLAY (STANDBY COVER -> PLAY -> AUTO TO SLIDE 1)
   ========================================================================== */

.video-intro-overlay {
  position: absolute;
  inset: 0;
  z-index: 1200;
  background: #02090f;
  display: none;
  overflow: hidden;
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.video-intro-overlay.intro-live {
  display: flex;
}

.video-intro-overlay.intro-fade-out {
  opacity: 0;
  transform: scale(1.03);
  pointer-events: none;
}

.intro-video-player {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
  background: #000000;
  transition: filter 0.6s ease, transform 0.6s ease;
}

.video-intro-overlay.state-standby .intro-video-player {
  filter: blur(20px) brightness(0.4);
  transform: scale(1.08);
}

.video-intro-overlay.state-playing .intro-video-player {
  filter: none !important;
  transform: none !important;
  opacity: 1 !important;
}

/* Backdrop only active during Standby, completely removed during Playback */
.intro-overlay-backdrop {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 45%, rgba(6, 26, 44, 0.45) 0%, rgba(2, 9, 15, 0.85) 100%),
    linear-gradient(180deg, rgba(2, 9, 15, 0.65) 0%, transparent 20%, transparent 70%, rgba(2, 9, 15, 0.9) 100%);
  z-index: 2;
  pointer-events: none;
  transition: opacity 0.5s ease;
}

.video-intro-overlay.state-playing .intro-overlay-backdrop {
  display: none !important;
  opacity: 0 !important;
}

/* --- Standby Cover Screen (Tân Cảng right above title / ONEX at bottom) --- */
.intro-standby-screen {
  position: absolute;
  inset: 0;
  z-index: 15;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 60px 80px;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  transition: opacity 0.5s ease;
}

.video-intro-overlay.state-playing .intro-standby-screen {
  display: none !important;
}

.intro-standby-content {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.intro-standby-top {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 24px;
}

.standby-logo-tancang {
  height: 104px;
  width: auto;
  filter: drop-shadow(0 6px 24px rgba(0, 0, 0, 0.95)) drop-shadow(0 0 35px rgba(72, 212, 221, 0.35));
  transition: transform 0.25s ease;
}

.standby-logo-tancang:hover {
  transform: scale(1.03);
}

.standby-overline {
  font-size: 17px;
  font-weight: 900;
  letter-spacing: 0.22em;
  color: #7ce4e8;
  text-transform: uppercase;
  margin: 0 0 16px;
  text-shadow: 0 0 20px rgba(72, 212, 221, 0.6);
}

.standby-title {
  font-size: 80px;
  font-weight: 900;
  line-height: 1.05;
  color: #ffffff;
  letter-spacing: -0.025em;
  margin: 0 0 18px;
  text-shadow: 0 4px 30px rgba(0, 0, 0, 0.9);
}

.standby-title span {
  color: #ffad33;
  text-shadow: 0 0 45px rgba(255, 173, 51, 0.5);
}

.standby-sub {
  font-size: 24px;
  font-weight: 600;
  color: #a4c9dc;
  letter-spacing: 0.08em;
  margin: 0;
}

.intro-standby-footer {
  position: absolute;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 28px;
  background: rgba(4, 18, 30, 0.75);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(72, 212, 221, 0.25);
  border-radius: 0 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6);
}

.standby-partner-label {
  font-size: 13px;
  font-weight: 850;
  letter-spacing: 0.16em;
  color: #8da9b9;
  text-transform: uppercase;
}

.standby-logo-onex {
  height: 36px;
  width: auto;
  filter: drop-shadow(0 2px 10px rgba(0, 0, 0, 0.8));
}

/* ==========================================================================
   CASE DEMOS — SHOW THE WORK, NOT A FLOWCHART
   ========================================================================== */

/* Slide 18 — literal email → grounded draft → human gate. */
.v5 .email-demo-slide {
  padding: 0;
  color: #071a29;
  background:
    radial-gradient(circle at 47% 46%, rgba(38, 196, 205, .10), transparent 24%),
    linear-gradient(112deg, #f7f9f7 0%, #edf3f2 71%, #e8efee 100%);
  overflow: hidden;
}
.v5 .email-demo-slide::before {
  z-index: 0;
  background:
    linear-gradient(rgba(16, 77, 98, .038) 1px, transparent 1px),
    linear-gradient(90deg, rgba(16, 77, 98, .038) 1px, transparent 1px);
  background-size: 78px 78px;
  -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,.8), black 72%, transparent 96%);
  mask-image: linear-gradient(180deg, rgba(0,0,0,.8), black 72%, transparent 96%);
}
.v5 .email-demo-slide .slide-head {
  position: absolute;
  z-index: 10;
  left: 104px;
  right: 82px;
  top: 62px;
  min-height: 30px;
  margin: 0;
}
.v5 .email-demo-copy {
  position: absolute;
  z-index: 5;
  left: 104px;
  top: 116px;
  width: 1510px;
}
.v5 .email-demo-copy h2 {
  margin: 0;
  color: #071a29;
  font-size: 68px;
  font-weight: 940;
  line-height: .96;
  letter-spacing: -.052em;
  opacity: 0;
}
.v5 .email-demo-copy h2 span { color: #0d8f9a; }
.v5 .email-demo-copy > p {
  margin: 15px 0 0;
  color: #5c7887;
  font-size: 22px;
  font-weight: 650;
  opacity: 0;
}
.v5 .email-demo-canvas {
  position: absolute;
  z-index: 4;
  left: 104px;
  right: 82px;
  top: 300px;
  height: 650px;
}
.v5 .email-demo-route {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 560px;
  overflow: visible;
  pointer-events: none;
}
.v5 .email-route-base,
.v5 .email-route-live {
  fill: none;
  vector-effect: non-scaling-stroke;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.v5 .email-route-base {
  stroke: rgba(55, 105, 123, .15);
  stroke-width: 9px;
}
.v5 .email-route-live {
  stroke: url(#email-demo-gradient);
  stroke-width: 3px;
  filter: drop-shadow(0 0 8px rgba(31, 190, 199, .35));
}
.v5 .email-route-packet {
  fill: white;
  stroke: rgba(32, 188, 199, .42);
  stroke-width: 8px;
  filter: drop-shadow(0 0 11px rgba(32, 188, 199, .82));
  opacity: 0;
}
.v5 .mail-sheet {
  position: absolute;
  z-index: 4;
  box-sizing: border-box;
  overflow: hidden;
  background: rgba(255,255,255,.97);
  border: 1px solid rgba(53, 96, 112, .15);
  border-top: 7px solid #86a9b8;
  box-shadow: 0 28px 70px rgba(10, 44, 59, .13), 0 3px 0 rgba(255,255,255,.9) inset;
  opacity: 0;
}
.v5 .mail-sheet::after {
  content: "";
  position: absolute;
  right: -1px;
  top: -1px;
  width: 40px;
  height: 40px;
  background: linear-gradient(225deg, #edf3f2 0 49%, transparent 50%);
  border-left: 1px solid rgba(53, 96, 112, .12);
  border-bottom: 1px solid rgba(53, 96, 112, .12);
}
.v5 .mail-incoming {
  left: 0;
  top: 85px;
  width: 560px;
  height: 450px;
}
.v5 .mail-draft {
  left: 884px;
  top: 42px;
  width: 632px;
  height: 522px;
  border-top-color: #23bdc7;
}
.v5 .mail-sheet > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 59px;
  padding: 0 28px;
  color: #557586;
  background: #f3f7f7;
  border-bottom: 1px solid #dce7e9;
  font-size: 14px;
  font-weight: 920;
  letter-spacing: .14em;
}
.v5 .mail-sheet > header time,
.v5 .mail-sheet > header b {
  color: #7893a0;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .08em;
}
.v5 .mail-draft > header b {
  padding: 8px 13px;
  color: #a93848;
  background: #ffedf0;
  border: 1px solid #ffcbd2;
}
.v5 .mail-meta {
  display: grid;
  grid-template-columns: 86px 1fr;
  align-items: baseline;
  gap: 10px;
  margin: 0 28px;
  padding: 12px 0;
  border-bottom: 1px solid #e1eaec;
}
.v5 .mail-meta small {
  color: #16808c;
  font-size: 12px;
  font-weight: 930;
  letter-spacing: .12em;
}
.v5 .mail-meta strong {
  overflow: hidden;
  color: #526e7d;
  font-size: 16px;
  font-weight: 680;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v5 .mail-body {
  margin: 18px 28px 0;
  color: #162d3a;
  font-size: 18px;
  font-weight: 620;
  line-height: 1.43;
}
.v5 .mail-body p { margin: 0 0 12px; }
.v5 .mail-body mark {
  padding: 1px 4px;
  color: #064d57;
  background: #dff6f7;
  box-shadow: inset 0 -2px #55d4da;
}
.v5 .mail-extracts {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 24px;
  display: grid;
  grid-template-columns: 1fr 1fr 1.12fr;
  gap: 8px;
}
.v5 .mail-extracts > span {
  min-height: 58px;
  padding: 10px 11px;
  background: #edf5f6;
  border-top: 3px solid #50c8ce;
  opacity: 0;
}
.v5 .mail-extracts small,
.v5 .mail-extracts b { display: block; }
.v5 .mail-extracts small {
  color: #688391;
  font-size: 10px;
  font-weight: 930;
  letter-spacing: .11em;
}
.v5 .mail-extracts b {
  margin-top: 7px;
  color: #0a3344;
  font-size: 16px;
  font-weight: 920;
}
.v5 .mail-extracts .mail-missing {
  color: #b62e41;
  background: #fff0f2;
  border-top-color: #ff5d6c;
}
.v5 .mail-extracts .mail-missing small,
.v5 .mail-extracts .mail-missing b { color: #b62e41; }
.v5 .mail-scanline {
  position: absolute;
  z-index: 5;
  left: 0;
  right: 0;
  top: 58px;
  height: 3px;
  background: linear-gradient(90deg, transparent, #56e2e7 18%, white 50%, #56e2e7 82%, transparent);
  box-shadow: 0 0 16px 4px rgba(53, 207, 216, .42);
  opacity: 0;
  pointer-events: none;
}
.v5 .email-ai-core {
  position: absolute;
  z-index: 5;
  left: 594px;
  top: 165px;
  width: 270px;
  color: #1e5367;
  text-align: center;
  opacity: 0;
}
.v5 .ai-core-mark {
  position: relative;
  width: 106px;
  height: 106px;
  margin: 0 auto 23px;
  display: grid;
  place-items: center;
  color: white;
  background: #082b3e;
  clip-path: polygon(25% 7%, 75% 7%, 100% 50%, 75% 93%, 25% 93%, 0 50%);
  filter: drop-shadow(0 16px 25px rgba(9, 67, 85, .23));
}
.v5 .ai-core-mark::before {
  content: "";
  position: absolute;
  inset: 10px;
  border: 2px solid #65dce0;
  clip-path: inherit;
}
.v5 .ai-core-mark span {
  position: relative;
  font-size: 30px;
  font-weight: 950;
  letter-spacing: -.04em;
}
.v5 .ai-core-steps {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  color: #4e7382;
  font-size: 11px;
  font-weight: 920;
  letter-spacing: .08em;
}
.v5 .ai-core-steps i { width: 13px; height: 1px; background: #7ecfd3; }
.v5 .email-ai-core > strong {
  display: block;
  margin-top: 17px;
  color: #0b8792;
  font-size: 14px;
  font-weight: 940;
  letter-spacing: .1em;
}
.v5 .draft-body {
  margin: 17px 28px 0;
  color: #19323e;
  font-size: 15.5px;
  font-weight: 630;
  line-height: 1.38;
}
.v5 .draft-line {
  margin: 0 0 10px;
  opacity: 0;
}
.v5 .draft-line b { color: #0b8290; }
.v5 .draft-line.draft-verify {
  padding-left: 12px;
  color: #8a4e10;
  border-left: 3px solid #f5a623;
}
.v5 .verify-stamp {
  position: absolute;
  right: 27px;
  bottom: 61px;
  min-width: 216px;
  padding: 10px 15px 9px;
  color: #ad2d3e;
  background: rgba(255, 237, 240, .94);
  border: 2px solid #ef5d6c;
  transform: rotate(-2deg);
  opacity: 0;
}
.v5 .verify-stamp small,
.v5 .verify-stamp strong { display: block; }
.v5 .verify-stamp small {
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .13em;
}
.v5 .verify-stamp strong {
  margin-top: 4px;
  font-size: 20px;
  font-weight: 950;
  letter-spacing: .035em;
}
.v5 .mail-draft > footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 25px 0 28px;
  color: #5d7b88;
  background: #eef4f4;
  border-top: 1px solid #d9e6e8;
  font-size: 11px;
  font-weight: 920;
  letter-spacing: .12em;
}
.v5 .mail-draft > footer button {
  min-width: 82px;
  height: 32px;
  color: #87969e;
  background: #d5dee1;
  border: 0;
  font-size: 12px;
  font-weight: 930;
  letter-spacing: .1em;
  cursor: not-allowed;
}
.v5 .email-human-gate {
  position: absolute;
  z-index: 6;
  right: 0;
  top: 40px;
  width: 160px;
  height: 525px;
  box-sizing: border-box;
  padding: 36px 17px 22px;
  color: white;
  background: linear-gradient(180deg, #0a3145 0%, #041723 100%);
  border-left: 7px solid #ffb23e;
  box-shadow: -18px 0 40px rgba(8, 44, 60, .14);
  opacity: 0;
}
.v5 .email-human-gate small {
  color: #75dce1;
  font-size: 10px;
  font-weight: 930;
  letter-spacing: .13em;
}
.v5 .email-human-gate strong {
  display: block;
  margin: 30px 0 40px;
  color: white;
  font-size: 22px;
  font-weight: 940;
  line-height: .96;
  letter-spacing: -.035em;
}
.v5 .email-human-gate > span {
  display: block;
  padding: 13px 0;
  color: #c5d7df;
  border-top: 1px solid rgba(255,255,255,.12);
  font-size: 13px;
  font-weight: 720;
  opacity: 0;
}
.v5 .email-human-gate > b {
  position: absolute;
  left: 17px;
  right: 13px;
  bottom: 23px;
  color: #ffc66e;
  font-size: 10px;
  font-weight: 930;
  line-height: 1.35;
  letter-spacing: .05em;
}
.v5 .email-demo-rule {
  position: absolute;
  z-index: 8;
  left: 0;
  bottom: 17px;
  display: flex;
  align-items: center;
  gap: 28px;
  padding-left: 19px;
  border-left: 6px solid #ffb23e;
  color: #587584;
  font-size: 20px;
  opacity: 0;
}
.v5 .email-demo-rule strong { color: #0a3344; font-weight: 850; }

/* Slide 21 — a single scan meter makes the table feel like a live triage demo. */
.v5 .case-table-actions {
  display: flex;
  align-items: center;
  gap: 18px;
}
.v5 .case-scan-meter {
  width: 230px;
  opacity: 0;
}
.v5 .case-scan-meter small,
.v5 .case-scan-meter strong { display: block; }
.v5 .case-scan-meter small {
  color: #168995;
  font-size: 10px;
  font-weight: 930;
  letter-spacing: .14em;
}
.v5 .case-scan-meter strong {
  margin-top: 4px;
  color: #335e70;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .05em;
}
.v5 .case-scan-meter > span {
  display: block;
  height: 3px;
  margin-top: 8px;
  overflow: hidden;
  background: #d7e5e8;
}
.v5 .case-scan-meter i {
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #1bb4bf, #79e1e4, #ffb23e);
  transform-origin: left center;
}

/* Case entry — the three sources stay visible on the working table, so the
   audience never has to remember a separate context slide. */
.v5 .case-table-slide .case-source-caption {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 18px;
  padding: 0 0 15px;
  border-bottom: 1px solid #c8d8dc;
  color: #607d8b;
  font-size: 18px;
  font-weight: 690;
  letter-spacing: .01em;
}
.v5 .case-table-slide .case-source-caption strong {
  color: #0d5267;
  font-weight: 900;
}
.v5 .case-table-slide .case-source-caption i {
  width: 18px;
  height: 1px;
  background: #77cfd5;
}
.v5 .case-table-slide .case-source-caption b {
  margin-left: auto;
  color: #b56b08;
  font-size: 12px;
  font-weight: 940;
  letter-spacing: .11em;
  text-transform: uppercase;
  white-space: nowrap;
}
.v5 .case-table-slide .case-table-source-row th {
  padding: 10px 13px;
  color: #1a586d;
  background: #eaf2f3;
  border-bottom: 1px solid #c3d8dc;
  font-size: 11px;
  font-weight: 930;
  letter-spacing: .13em;
}
.v5 .case-table-slide .case-table-source-row th:nth-child(2) {
  color: #9a5a07;
  background: #fff5e4;
}
.v5 .case-table-slide .case-table-source-row th:nth-child(3) {
  color: #315c70;
  background: #edf3f6;
}

/* Slide 25 — command hits an authority wall, then the safe response is written. */
.v5 .refusal-demo-slide {
  padding: 0;
  color: white;
  background:
    radial-gradient(circle at 49% 53%, rgba(255, 87, 103, .10), transparent 22%),
    radial-gradient(circle at 82% 40%, rgba(35, 197, 205, .10), transparent 27%),
    linear-gradient(145deg, #061a2b 0%, #020d16 100%);
  overflow: hidden;
}
.v5 .refusal-demo-slide::before {
  z-index: 0;
  background:
    linear-gradient(rgba(113, 208, 215, .032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(113, 208, 215, .032) 1px, transparent 1px);
  background-size: 76px 76px;
  -webkit-mask-image: radial-gradient(circle at 58% 48%, black, transparent 72%);
  mask-image: radial-gradient(circle at 58% 48%, black, transparent 72%);
}
.v5 .refusal-demo-slide .slide-head {
  position: absolute;
  z-index: 8;
  left: 104px;
  right: 82px;
  top: 62px;
  min-height: 30px;
  margin: 0;
}
.v5 .refusal-demo-copy {
  position: absolute;
  z-index: 4;
  left: 104px;
  top: 128px;
  width: 1180px;
}
.v5 .refusal-demo-copy h2 {
  margin: 0;
  color: white;
  font-size: 70px;
  font-weight: 940;
  line-height: .94;
  letter-spacing: -.055em;
  opacity: 0;
}
.v5 .refusal-demo-copy h2 span { color: #ff6978; }
.v5 .refusal-demo-copy > p {
  margin: 17px 0 0;
  color: #98b2bf;
  font-size: 21px;
  font-weight: 640;
  opacity: 0;
}
.v5 .refusal-demo-stage {
  position: absolute;
  z-index: 4;
  left: 104px;
  right: 82px;
  top: 410px;
  height: 430px;
}
.v5 .refusal-command,
.v5 .safe-response {
  position: absolute;
  box-sizing: border-box;
  min-height: 330px;
  opacity: 0;
}
.v5 .refusal-command {
  left: 0;
  top: 32px;
  width: 480px;
  padding: 30px 35px;
  background: linear-gradient(135deg, rgba(255,91,108,.13), rgba(255,255,255,.025));
  border-top: 6px solid #ff5b6c;
  border-bottom: 1px solid rgba(255,113,127,.18);
}
.v5 .refusal-command blockquote {
  margin: 45px 0 32px;
  color: #ffc0c6;
  font-size: 31px;
  font-weight: 760;
  line-height: 1.34;
  letter-spacing: -.02em;
}
.v5 .refusal-command > span {
  display: inline-block;
  padding: 9px 12px;
  color: #ff8f9a;
  background: rgba(255,91,108,.11);
  border: 1px solid rgba(255,91,108,.28);
  font-size: 12px;
  font-weight: 930;
  letter-spacing: .1em;
}
.v5 .refusal-path {
  position: absolute;
  z-index: 2;
  left: 492px;
  top: 188px;
  width: 126px;
  height: 4px;
  background: rgba(255,100,115,.22);
  opacity: 0;
}
.v5 .refusal-path::after {
  content: "";
  position: absolute;
  right: -2px;
  top: -6px;
  width: 12px;
  height: 12px;
  border-top: 3px solid #ff6675;
  border-right: 3px solid #ff6675;
  transform: rotate(45deg);
}
.v5 .refusal-path i {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #ff6675;
  transform-origin: left center;
}
.v5 .refusal-path b {
  position: absolute;
  left: 0;
  top: -6px;
  width: 16px;
  height: 16px;
  background: white;
  border: 5px solid rgba(255,102,117,.65);
  border-radius: 50%;
  box-shadow: 0 0 19px #ff6675;
}
.v5 .authority-wall {
  position: absolute;
  z-index: 5;
  left: 638px;
  top: 0;
  width: 215px;
  height: 408px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  color: white;
  background: linear-gradient(180deg, #7f2632 0%, #3e1018 100%);
  border-left: 8px solid #ff6675;
  border-right: 2px solid rgba(255,255,255,.16);
  box-shadow: 0 0 52px rgba(255,66,88,.18);
  opacity: 0;
}
.v5 .authority-wall::before,
.v5 .authority-wall::after {
  content: "";
  position: absolute;
  left: -21px;
  width: 34px;
  height: 13px;
  background: #ff6675;
}
.v5 .authority-wall::before { top: 58px; }
.v5 .authority-wall::after { bottom: 58px; }
.v5 .authority-wall small {
  color: #ffbbc2;
  font-size: 10px;
  font-weight: 930;
  letter-spacing: .15em;
}
.v5 .authority-wall strong {
  margin: 30px 0 27px;
  font-size: 55px;
  font-weight: 950;
  letter-spacing: -.045em;
}
.v5 .authority-wall span {
  color: #ffd0d5;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
}
.v5 .safe-response {
  left: 890px;
  right: 0;
  top: 14px;
  padding: 32px 38px 28px;
  background: linear-gradient(135deg, rgba(36,198,207,.13), rgba(255,255,255,.025));
  border-top: 6px solid #42d3d9;
  border-bottom: 1px solid rgba(68,211,218,.17);
}
.v5 .safe-response blockquote {
  margin: 38px 0 27px;
  color: #d9eef1;
  font-size: 22px;
  font-weight: 670;
  line-height: 1.38;
}
.v5 .safe-response .response-line {
  display: block;
  margin-bottom: 13px;
  opacity: 0;
}
.v5 .safe-response .response-line:first-child {
  color: white;
  font-size: 26px;
  font-weight: 830;
}
.v5 .safe-response-actions {
  display: flex;
  gap: 8px;
}
.v5 .safe-response-actions span {
  padding: 9px 12px;
  color: #7de4e7;
  background: rgba(55,203,211,.08);
  border: 1px solid rgba(55,203,211,.2);
  font-size: 11px;
  font-weight: 920;
  letter-spacing: .08em;
  opacity: 0;
}

/* Final case resolution: one hard stop, followed by the three human owners.
   This replaces the former approval-matrix slide so the audience never has
   to look back at the previous table to know what happens next. */
.v5 .refusal-demo-slide .refusal-demo-stage {
  top: 398px;
  height: 438px;
}
.v5 .refusal-demo-slide .refusal-command {
  top: 30px;
  width: 460px;
  min-height: 350px;
}
.v5 .refusal-demo-slide .refusal-command blockquote {
  margin-top: 49px;
  font-size: 30px;
}
.v5 .refusal-demo-slide .refusal-path {
  left: 474px;
  top: 201px;
  width: 118px;
}
.v5 .refusal-demo-slide .authority-wall {
  left: 612px;
  width: 220px;
  height: 418px;
}
.v5 .refusal-demo-slide .authority-wall span {
  max-width: 180px;
  font-size: 11px;
  line-height: 1.65;
  text-align: center;
}
.v5 .refusal-demo-slide .safe-response {
  left: 868px;
  top: 0;
  min-height: 418px;
  padding: 28px 36px 24px;
}
.v5 .refusal-demo-slide .handoff-sequence {
  margin-top: 19px;
  border-top: 1px solid rgba(125, 228, 231, .22);
}
.v5 .refusal-demo-slide .handoff-step,
.v5 .refusal-demo-slide .safe-response .handoff-step:first-child {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: 20px;
  box-sizing: border-box;
  min-height: 103px;
  margin: 0;
  padding: 13px 0;
  color: #d9eef1;
  border-bottom: 1px solid rgba(125, 228, 231, .16);
  font-size: 20px;
  font-weight: 680;
  line-height: 1.2;
}
.v5 .refusal-demo-slide .handoff-step > b {
  color: #55dbe0;
  font-size: 34px;
  font-weight: 950;
  letter-spacing: -.05em;
}
.v5 .refusal-demo-slide .handoff-step > span {
  display: block;
  min-width: 0;
}
.v5 .refusal-demo-slide .handoff-step strong,
.v5 .refusal-demo-slide .handoff-step small {
  display: block;
}
.v5 .refusal-demo-slide .handoff-step strong {
  margin-bottom: 8px;
  color: white;
  font-size: 20px;
  font-weight: 920;
  letter-spacing: .045em;
}
.v5 .refusal-demo-slide .handoff-step small {
  color: #a9c7d0;
  font-size: 19px;
  font-weight: 650;
  line-height: 1.28;
}
.v5 .refusal-demo-slide .refusal-thesis {
  bottom: 99px;
  font-size: 24px;
}
.v5 .refusal-demo-slide .refusal-thesis {
  position: absolute;
  z-index: 5;
  left: 104px;
  bottom: 104px;
  margin: 0;
  color: #a9c2ce;
  font-size: 23px;
  text-align: left;
  opacity: 0;
}
.v5 .refusal-demo-slide .refusal-thesis > span {
  margin-right: 14px;
  padding-left: 15px;
  color: #ff7a88;
  border-left: 5px solid #ff5b6c;
  font-size: 19px;
  font-weight: 930;
  letter-spacing: .08em;
}
.v5 .refusal-demo-slide .refusal-thesis strong { color: #ffd083; }

@media (prefers-reduced-motion: reduce) {
  .v5 .email-demo-copy h2,
  .v5 .email-demo-copy > p,
  .v5 .mail-sheet,
  .v5 .mail-extracts > span,
  .v5 .email-ai-core,
  .v5 .draft-line,
  .v5 .verify-stamp,
  .v5 .email-human-gate,
  .v5 .email-human-gate > span,
  .v5 .email-demo-rule,
  .v5 .case-scan-meter,
  .v5 .refusal-demo-copy h2,
  .v5 .refusal-demo-copy > p,
  .v5 .refusal-command,
  .v5 .refusal-path,
  .v5 .authority-wall,
  .v5 .safe-response,
  .v5 .safe-response .response-line,
  .v5 .safe-response-actions span,
  .v5 .refusal-demo-slide .refusal-thesis {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
    filter: none !important;
  }
  .v5 .mail-scanline,
  .v5 .email-route-packet { display: none !important; }
}

/* ==========================================================================
   SLIDE 14 — REALISTIC DATA INTAKE MANIFEST
   ========================================================================== */
.v5 .intake-manifest-slide {
  padding: 0;
  color: #071a29;
  background:
    radial-gradient(circle at 78% 42%, rgba(35, 190, 200, .08), transparent 25%),
    linear-gradient(116deg, #f7f9f7 0%, #edf3f2 72%, #e7eeee 100%);
  overflow: hidden;
}
.v5 .intake-manifest-slide::before {
  z-index: 0;
  background:
    linear-gradient(rgba(20, 79, 99, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(20, 79, 99, .035) 1px, transparent 1px);
  background-size: 78px 78px;
  -webkit-mask-image: linear-gradient(180deg, black, rgba(0,0,0,.72) 74%, transparent 96%);
  mask-image: linear-gradient(180deg, black, rgba(0,0,0,.72) 74%, transparent 96%);
}
.v5 .intake-manifest-slide .slide-head {
  position: absolute;
  z-index: 10;
  left: 104px;
  right: 82px;
  top: 60px;
  min-height: 30px;
  margin: 0;
}
.v5 .intake-heading {
  position: absolute;
  z-index: 5;
  left: 104px;
  top: 122px;
  width: 1540px;
}
.v5 .intake-heading h2 {
  margin: 0;
  color: #071a29;
  font-size: 63px;
  font-weight: 940;
  line-height: .98;
  letter-spacing: -.052em;
  opacity: 0;
}
.v5 .intake-heading h2 > span { color: #f09d1e; }
.v5 .intake-heading > p {
  margin: 15px 0 0;
  color: #5a7584;
  font-size: 20px;
  font-weight: 650;
  opacity: 0;
}
.v5 .intake-brief {
  position: absolute;
  z-index: 6;
  left: 104px;
  right: 82px;
  top: 300px;
  height: 68px;
  display: grid;
  grid-template-columns: 190px 1fr auto auto;
  align-items: center;
  gap: 23px;
  box-sizing: border-box;
  padding: 0 24px;
  color: white;
  background: linear-gradient(90deg, #082d42 0%, #061c2d 76%, #09283a 100%);
  border-left: 7px solid #ffad33;
  box-shadow: 0 15px 34px rgba(7, 39, 53, .12);
  opacity: 0;
}
.v5 .brief-time {
  color: #75dce1;
  font-size: 13px;
  font-weight: 930;
  letter-spacing: .12em;
}
.v5 .intake-brief > strong {
  color: white;
  font-size: 23px;
  font-weight: 820;
}
.v5 .intake-brief > p {
  margin: 0;
  color: #9fb6c1;
  font-size: 15px;
  font-weight: 680;
}
.v5 .intake-brief > b {
  padding-left: 20px;
  color: #ffc365;
  border-left: 1px solid rgba(255,255,255,.18);
  font-size: 13px;
  font-weight: 930;
  letter-spacing: .09em;
}
.v5 .manifest-board {
  position: absolute;
  z-index: 5;
  left: 104px;
  right: 82px;
  top: 385px;
  height: 510px;
  box-sizing: border-box;
  overflow: hidden;
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(45, 90, 107, .15);
  border-top: 6px solid #78a5b5;
  box-shadow: 0 26px 65px rgba(10, 44, 59, .12);
  opacity: 0;
}
.v5 .manifest-head {
  height: 50px;
  margin-right: 132px;
  display: grid;
  grid-template-columns: 70px 540px 410px 1fr;
  align-items: center;
  box-sizing: border-box;
  padding: 0 22px;
  color: #668391;
  background: #edf3f4;
  border-bottom: 1px solid #d7e4e7;
  font-size: 11px;
  font-weight: 930;
  letter-spacing: .12em;
}
.v5 .intake-manifest-slide .scenario.manifest-row {
  position: relative;
  width: calc(100% - 132px);
  height: 111px;
  min-height: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 70px 540px 410px 130px 1fr;
  align-items: center;
  box-sizing: border-box;
  padding: 0 22px;
  color: #0c2635;
  background: rgba(255,255,255,.98);
  border: 0;
  border-bottom: 1px solid #dce7e9;
  border-left: 0 solid transparent;
  box-shadow: none;
  text-align: left;
  cursor: pointer;
  opacity: 0;
  transition: background .22s ease, border-left-width .22s ease, border-left-color .22s ease;
}
.v5 .intake-manifest-slide .scenario.manifest-row:hover {
  transform: none;
  background: #f7fbfb;
}
.v5 .manifest-num {
  color: #87a1ad;
  font-size: 17px;
  font-weight: 920;
  letter-spacing: .08em;
}
.v5 .manifest-file {
  display: grid;
  grid-template-columns: 62px 1fr;
  grid-template-rows: auto auto;
  column-gap: 16px;
  align-items: center;
}
.v5 .manifest-file > i {
  grid-row: 1 / 3;
  width: 51px;
  height: 58px;
  display: grid;
  place-items: center;
  color: #446c7d;
  background: #e9f0f2;
  border-top: 4px solid #7ea7b6;
  font-size: 11px;
  font-style: normal;
  font-weight: 930;
  letter-spacing: .07em;
}
.v5 .manifest-file > strong {
  overflow: hidden;
  color: #0b2b3a;
  font-size: 21px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v5 .manifest-file > small {
  align-self: start;
  margin-top: 7px;
  color: #6b8490;
  font-size: 14px;
  font-weight: 630;
}
.v5 .manifest-risk {
  padding-left: 22px;
  color: #496b7a;
  border-left: 1px solid #d7e4e7;
  font-size: 18px;
  font-weight: 690;
  line-height: 1.25;
}
.v5 .manifest-route {
  position: relative;
  display: block;
  width: 92px;
  height: 3px;
  margin-left: 12px;
  background: #9cb4bd;
  transform: scaleX(0);
  transform-origin: left center;
}
.v5 .manifest-route::after {
  content: "";
  position: absolute;
  right: -1px;
  top: -5px;
  width: 10px;
  height: 10px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
}
.v5 .manifest-decision {
  display: block;
  padding-left: 17px;
  border-left: 5px solid currentColor;
  font-style: normal;
  opacity: 0;
  visibility: hidden;
}
.v5 .manifest-decision > b,
.v5 .manifest-decision > small { display: block; }
.v5 .manifest-decision > b {
  font-size: 24px;
  font-weight: 950;
  letter-spacing: .02em;
}
.v5 .manifest-decision > small {
  margin-top: 4px;
  font-size: 13px;
  font-weight: 760;
  line-height: 1.2;
}
.v5 .manifest-row.revealed .manifest-route { transform: scaleX(1); }
.v5 .manifest-row.revealed .manifest-decision { opacity: 1; visibility: visible; }
.v5 .manifest-row.revealed[data-answer="green"] {
  color: #087952;
  background: linear-gradient(90deg, #f4fbf8, #ecf9f4);
  border-left: 7px solid #25ba7f;
}
.v5 .manifest-row.revealed[data-answer="green"] .manifest-route,
.v5 .manifest-row.revealed[data-answer="green"] .manifest-decision { color: #087952; }
.v5 .manifest-row.revealed[data-answer="green"] .manifest-route { background: #25ba7f; }
.v5 .manifest-row.revealed[data-answer="yellow"] {
  color: #9b5b04;
  background: linear-gradient(90deg, #fffaf0, #fff5e4);
  border-left: 7px solid #efa329;
}
.v5 .manifest-row.revealed[data-answer="yellow"] .manifest-route,
.v5 .manifest-row.revealed[data-answer="yellow"] .manifest-decision { color: #9b5b04; }
.v5 .manifest-row.revealed[data-answer="yellow"] .manifest-route { background: #efa329; }
.v5 .manifest-row.revealed[data-answer="red"] {
  color: #ad2b3c;
  background: linear-gradient(90deg, #fff8f8, #ffeff1);
  border-left: 7px solid #ef5969;
}
.v5 .manifest-row.revealed[data-answer="red"] .manifest-route,
.v5 .manifest-row.revealed[data-answer="red"] .manifest-decision { color: #ad2b3c; }
.v5 .manifest-row.revealed[data-answer="red"] .manifest-route { background: #ef5969; }
.v5 .manifest-gate {
  position: absolute;
  z-index: 5;
  right: 0;
  top: 0;
  width: 132px;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
  padding: 52px 14px 28px;
  color: white;
  background: linear-gradient(180deg, #0a3449 0%, #041723 100%);
  border-left: 7px solid #ffad33;
  box-shadow: -16px 0 35px rgba(8, 43, 58, .13);
}
.v5 .manifest-gate small {
  color: #79dfe3;
  font-size: 10px;
  font-weight: 930;
  letter-spacing: .14em;
}
.v5 .manifest-gate strong {
  margin-top: 7px;
  color: white;
  font-size: 32px;
  font-weight: 950;
  letter-spacing: -.03em;
}
.v5 .manifest-gate span {
  margin-top: auto;
  color: #a8c1cc;
  font-size: 9px;
  font-weight: 850;
  line-height: 2.6;
  letter-spacing: .04em;
}
.v5 .manifest-scanline {
  position: absolute;
  z-index: 7;
  left: 0;
  right: 132px;
  top: 50px;
  height: 3px;
  background: linear-gradient(90deg, transparent, #64dce1 16%, white 50%, #ffb748 84%, transparent);
  box-shadow: 0 0 15px 4px rgba(57, 200, 208, .42);
  opacity: 0;
  pointer-events: none;
}
.v5 .intake-manifest-slide .activity-footer {
  position: absolute;
  z-index: 6;
  left: 104px;
  bottom: 105px;
  display: flex;
  align-items: center;
  gap: 19px;
  margin: 0;
  padding-left: 16px;
  color: #587482;
  border-left: 6px solid #ffad33;
  font-size: 19px;
  opacity: 0;
}
.v5 .intake-manifest-slide .activity-footer > span {
  color: #d18712;
  font-size: 13px;
  font-weight: 930;
  letter-spacing: .1em;
}
.v5 .intake-manifest-slide .activity-footer > strong {
  color: #173847;
  font-weight: 820;
}

@media (prefers-reduced-motion: reduce) {
  .v5 .intake-heading h2,
  .v5 .intake-heading > p,
  .v5 .intake-brief,
  .v5 .manifest-board,
  .v5 .intake-manifest-slide .scenario.manifest-row,
  .v5 .intake-manifest-slide .activity-footer {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
  }
  .v5 .manifest-scanline { display: none !important; }
}

/* ==========================================================================
   SLIDE 14 — THREE FILES, THREE DECISIONS
   ========================================================================== */
.v5 .simple-gate-slide {
  padding: 0;
  color: #071a29;
  background: linear-gradient(118deg, #f9faf8 0%, #eef4f3 100%);
  overflow: hidden;
}
.v5 .simple-gate-slide::before {
  z-index: 0;
  background: linear-gradient(90deg, transparent 0 49.96%, rgba(25, 81, 101, .035) 50%, transparent 50.04%);
  background-size: 160px 100%;
  -webkit-mask-image: linear-gradient(180deg, black, transparent 88%);
  mask-image: linear-gradient(180deg, black, transparent 88%);
}
.v5 .simple-gate-slide .slide-head {
  position: absolute;
  z-index: 8;
  left: 104px;
  right: 82px;
  top: 62px;
  min-height: 30px;
  margin: 0;
}
.v5 .simple-gate-copy {
  position: absolute;
  z-index: 4;
  left: 104px;
  top: 126px;
  width: 1540px;
}
.v5 .simple-gate-copy h2 {
  margin: 0;
  color: #071a29;
  font-size: 84px;
  font-weight: 940;
  line-height: 1;
  letter-spacing: -.058em;
  opacity: 0;
}
.v5 .simple-gate-copy h2 span { color: #0f919b; }
.v5 .simple-gate-copy > p {
  margin: 18px 0 0;
  color: #5a7583;
  font-size: 24px;
  font-weight: 660;
  opacity: 0;
}
.v5 .simple-lanes {
  position: absolute;
  z-index: 4;
  left: 104px;
  right: 82px;
  top: 340px;
  height: 485px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  background: rgba(255,255,255,.88);
  border-top: 2px solid #a8bec7;
  border-bottom: 2px solid #a8bec7;
  box-shadow: 0 24px 55px rgba(8, 41, 55, .09);
  opacity: 0;
}
.v5 .simple-gate-slide .scenario.simple-lane {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  box-sizing: border-box;
  padding: 36px 42px 34px;
  color: #0b2b3a;
  background: transparent;
  border: 0;
  border-right: 1px solid #d5e1e4;
  box-shadow: none;
  text-align: left;
  cursor: pointer;
  opacity: 0;
  transition: background .28s ease;
}
.v5 .simple-gate-slide .scenario.simple-lane:last-child { border-right: 0; }
.v5 .simple-gate-slide .scenario.simple-lane:hover {
  transform: none;
  background: rgba(239, 246, 246, .75);
}
.v5 .simple-gate-slide .scenario.simple-lane::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -2px;
  height: 7px;
  background: #a8bec7;
  transform: scaleX(.22);
  transform-origin: left center;
  transition: background .28s ease, transform .42s cubic-bezier(.16,.84,.24,1);
}
.v5 .simple-number {
  display: block;
  color: #8aa2ad;
  font-size: 18px;
  font-weight: 930;
  letter-spacing: .12em;
}
.v5 .simple-file {
  display: grid;
  grid-template-columns: 78px 1fr;
  grid-template-rows: auto auto;
  column-gap: 22px;
  align-items: center;
  margin-top: 52px;
}
.v5 .simple-file > i {
  grid-row: 1 / 3;
  width: 70px;
  height: 82px;
  display: grid;
  place-items: center;
  color: #456d7d;
  background: #e7eff1;
  border-top: 5px solid #79a5b5;
  font-size: 14px;
  font-style: normal;
  font-weight: 930;
  letter-spacing: .08em;
}
.v5 .simple-file > strong {
  margin: 0;
  min-height: 32px;
  color: #0a2a39;
  font-size: 30px;
  font-weight: 870;
  line-height: 1;
}
.v5 .simple-file > small {
  align-self: start;
  margin-top: 9px;
  color: #617e8c;
  font-size: 18px;
  font-weight: 650;
  line-height: 1.3;
}
.v5 .simple-question {
  position: absolute;
  left: 42px;
  bottom: 48px;
  color: #c8d5d9;
  font-size: 96px;
  font-weight: 900;
  line-height: .8;
  opacity: 1;
  transition: opacity .22s ease;
}
.v5 .simple-decision {
  position: absolute;
  left: 42px;
  right: 35px;
  bottom: 37px;
  display: block;
  margin: 0;
  padding-left: 20px;
  border-left: 7px solid currentColor;
  font-style: normal;
  opacity: 0;
  visibility: hidden;
}
.v5 .simple-decision small,
.v5 .simple-decision b,
.v5 .simple-decision span { display: block; }
.v5 .simple-decision small {
  font-size: 13px;
  font-weight: 930;
  letter-spacing: .13em;
}
.v5 .simple-decision b {
  margin-top: 7px;
  font-size: 39px;
  font-weight: 950;
  line-height: 1;
  letter-spacing: -.035em;
  white-space: nowrap;
}
.v5 .simple-decision span {
  margin-top: 9px;
  font-size: 17px;
  font-weight: 720;
}
.v5 .simple-lane.revealed .simple-question { opacity: 0; }
.v5 .simple-lane.revealed .simple-decision { opacity: 1; visibility: visible; }
.v5 .simple-lane.revealed::before { transform: scaleX(1); }
.v5 .simple-lane.revealed[data-answer="green"] {
  color: #08784f;
  background: linear-gradient(180deg, rgba(37,186,127,.07), rgba(37,186,127,.12));
}
.v5 .simple-lane.revealed[data-answer="green"]::before { background: #25ba7f; }
.v5 .simple-lane.revealed[data-answer="yellow"] {
  color: #9d5b03;
  background: linear-gradient(180deg, rgba(239,163,41,.07), rgba(239,163,41,.13));
}
.v5 .simple-lane.revealed[data-answer="yellow"]::before { background: #efa329; }
.v5 .simple-lane.revealed[data-answer="red"] {
  color: #aa2b3b;
  background: linear-gradient(180deg, rgba(239,89,105,.06), rgba(239,89,105,.12));
}
.v5 .simple-lane.revealed[data-answer="red"]::before { background: #ef5969; }
.v5 .simple-rule {
  position: absolute;
  z-index: 5;
  left: 104px;
  right: 82px;
  bottom: 112px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 22px;
  padding-left: 17px;
  color: #526f7d;
  border-left: 6px solid #ffad33;
  font-size: 21px;
  opacity: 0;
}
.v5 .simple-rule > span {
  color: #d18511;
  font-size: 13px;
  font-weight: 930;
  letter-spacing: .12em;
}
.v5 .simple-rule > strong {
  color: #153746;
  font-weight: 820;
}
.v5 .simple-rule > b {
  color: #0c7e89;
  font-size: 13px;
  font-weight: 930;
  letter-spacing: .1em;
}

@media (prefers-reduced-motion: reduce) {
  .v5 .simple-gate-copy h2,
  .v5 .simple-gate-copy > p,
  .v5 .simple-lanes,
  .v5 .simple-gate-slide .scenario.simple-lane,
  .v5 .simple-rule {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
  }
}

/* Slide 14 — one-screen checklist for participants with little AI experience. */
.v5 .checklist-slide .simple-gate-copy {
  top: 116px;
}
.v5 .checklist-slide .simple-gate-copy h2 {
  font-size: 72px;
}
.v5 .checklist-slide .simple-gate-copy > p {
  margin-top: 12px;
  font-size: 22px;
}
.v5 .checklist-lanes {
  top: 292px;
  height: 566px;
  border-top-color: #7797a5;
  border-bottom-color: #b9cbd1;
}
.v5 .checklist-lanes .checklist-lane {
  position: relative;
  min-width: 0;
  padding: 30px 34px 27px;
  background: rgba(255,255,255,.93);
  border-right: 1px solid #d3e0e4;
  opacity: 0;
}
.v5 .checklist-lanes .checklist-lane:last-child { border-right: 0; }
.v5 .checklist-lane::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -2px;
  height: 8px;
  background: var(--check-color);
}
.v5 .checklist-lane header {
  min-height: 102px;
  display: grid;
  grid-template-columns: 68px 1fr;
  grid-template-rows: auto auto;
  column-gap: 17px;
  align-items: center;
  padding-bottom: 20px;
  border-bottom: 1px solid #dce6e8;
}
.v5 .checklist-lane header > span {
  grid-row: 1 / 3;
  color: var(--check-color);
  font-size: 57px;
  font-weight: 950;
  line-height: 1;
  letter-spacing: -.06em;
}
.v5 .checklist-lane header small {
  align-self: end;
  color: var(--check-color);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .14em;
}
.v5 .checklist-lane header strong {
  align-self: start;
  margin-top: 6px;
  color: #0a2a39;
  font-size: 23px;
  font-weight: 920;
  line-height: 1.08;
}
.v5 .checklist-lane ul {
  display: grid;
  gap: 16px;
  margin: 23px 0 0;
  padding: 0;
  list-style: none;
}
.v5 .checklist-lane li {
  position: relative;
  min-height: 62px;
  padding-left: 29px;
}
.v5 .checklist-lane li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  width: 13px;
  height: 13px;
  border: 3px solid var(--check-color);
  border-radius: 50%;
}
.v5 .checklist-do li::after,
.v5 .checklist-final li::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 7px;
  width: 5px;
  height: 9px;
  border: solid var(--check-color);
  border-width: 0 3px 3px 0;
  transform: rotate(45deg);
}
.v5 .checklist-dont li::after {
  content: "×";
  position: absolute;
  left: 2px;
  top: 0;
  color: var(--check-color);
  font-size: 20px;
  font-weight: 950;
}
.v5 .checklist-lane li b,
.v5 .checklist-lane li span { display: block; }
.v5 .checklist-lane li b {
  color: #102f3d;
  font-size: 20px;
  font-weight: 870;
  line-height: 1.12;
}
.v5 .checklist-lane li span {
  margin-top: 5px;
  color: #5c7784;
  font-size: 15.5px;
  font-weight: 650;
  line-height: 1.3;
}
.v5 .checklist-example {
  position: absolute;
  left: 34px;
  right: 34px;
  bottom: 25px;
  margin: 0;
  padding: 13px 15px;
  color: #345464;
  background: color-mix(in srgb, var(--check-color) 9%, white);
  border-left: 5px solid var(--check-color);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.27;
}
.v5 .checklist-example small {
  margin-right: 7px;
  color: var(--check-color);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .12em;
}
.v5 .checklist-do { --check-color: #159866; }
.v5 .checklist-dont { --check-color: #d84c5c; }
.v5 .checklist-final { --check-color: #d68a16; }
.v5 .checklist-slide .simple-rule {
  bottom: 102px;
}

/* Slide 15 — literal before/scrub/after example, not an abstract process chart. */
.v5 .cleanroom-story-slide {
  padding: 0;
  background:
    radial-gradient(circle at 54% 45%, rgba(35,190,199,.11), transparent 25%),
    linear-gradient(122deg, #03121d 0%, #071d2a 57%, #092534 100%);
  overflow: hidden;
}
.v5 .cleanroom-story-slide::before {
  background:
    linear-gradient(rgba(58,143,164,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(58,143,164,.045) 1px, transparent 1px);
  background-size: 76px 76px;
  -webkit-mask-image: linear-gradient(180deg, black, transparent 92%);
  mask-image: linear-gradient(180deg, black, transparent 92%);
}
.v5 .cleanroom-story-slide .slide-head {
  position: absolute;
  z-index: 8;
  left: 104px;
  right: 82px;
  top: 62px;
  min-height: 30px;
  margin: 0;
}
.v5 .cleanroom-story-copy {
  position: absolute;
  z-index: 4;
  left: 104px;
  top: 122px;
}
.v5 .cleanroom-story-copy h2 {
  margin: 0;
  font-size: 72px;
  font-weight: 940;
  line-height: .98;
  letter-spacing: -.055em;
}
.v5 .cleanroom-story-copy h2 span { color: #64e1e5; }
.v5 .cleanroom-story-copy > p {
  margin: 14px 0 0;
  color: #9eb9c5;
  font-size: 21px;
  font-weight: 650;
}
.v5 .cleanroom-story.cleanroom-flow {
  position: absolute;
  z-index: 4;
  left: 104px;
  right: 82px;
  top: 304px;
  height: 536px;
  display: grid;
  grid-template-columns: 1.04fr .78fr 1.22fr;
  align-items: stretch;
  gap: 24px;
  margin: 0;
}
.v5 .cleanroom-story.cleanroom-flow > * {
  min-width: 0;
  box-sizing: border-box;
}
.v5 .cleanroom-story.cleanroom-flow article {
  position: relative;
  min-height: 0;
  padding: 0;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(135,198,211,.18);
  border-top: 8px solid var(--sheet-color);
  box-shadow: 0 28px 58px rgba(0,0,0,.18);
}
.v5 .cleanroom-sheet header {
  min-height: 92px;
  box-sizing: border-box;
  padding: 22px 26px 18px;
  background: rgba(255,255,255,.04);
  border-bottom: 1px solid rgba(255,255,255,.10);
}
.v5 .cleanroom-sheet header small,
.v5 .cleanroom-sheet header strong { display: block; }
.v5 .cleanroom-sheet header small {
  color: var(--sheet-color);
  font-size: 11px;
  font-weight: 930;
  letter-spacing: .14em;
}
.v5 .cleanroom-sheet header strong {
  margin-top: 8px;
  color: white;
  font-size: 19px;
  font-weight: 900;
}
.v5 .unsafe-sheet { --sheet-color: #ff6675; }
.v5 .safe-sheet { --sheet-color: #54d7dc; }
.v5 .clean-data-row {
  display: grid;
  grid-template-columns: 125px 1fr;
  align-items: center;
  gap: 15px;
  min-height: 74px;
  margin: 0 26px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}
.v5 .clean-data-row span {
  color: #8eabb8;
  font-size: 15px;
  font-weight: 700;
}
.v5 .clean-data-row b {
  color: #f7fbfc;
  font-size: 21px;
  font-weight: 850;
}
.v5 .unsafe-sheet > em {
  display: inline-block;
  margin: 22px 26px 0;
  padding: 9px 12px;
  color: #ff9ba5;
  background: rgba(255,85,104,.12);
  border: 1px solid rgba(255,102,117,.28);
  font-size: 11px;
  font-style: normal;
  font-weight: 930;
  letter-spacing: .13em;
}
.v5 .cleanroom-scrubber {
  align-self: center;
  padding: 28px 22px 26px;
  color: white;
  background: linear-gradient(180deg, rgba(15,69,84,.9), rgba(7,39,51,.95));
  border: 1px solid rgba(91,221,225,.32);
  border-top: 8px solid #ffb13a;
  box-shadow: 0 0 55px rgba(29,190,198,.13);
}
.v5 .cleanroom-scrubber > small,
.v5 .cleanroom-scrubber > strong { display: block; text-align: center; }
.v5 .cleanroom-scrubber > small {
  color: #ffc36a;
  font-size: 11px;
  font-weight: 930;
  letter-spacing: .15em;
}
.v5 .cleanroom-scrubber > strong {
  margin: 8px 0 20px;
  font-size: 20px;
  font-weight: 920;
}
.v5 .cleanroom-scrubber > div {
  display: grid;
  grid-template-columns: 1fr 24px 70px;
  align-items: center;
  gap: 7px;
  min-height: 57px;
  border-top: 1px solid rgba(255,255,255,.10);
  font-size: 14px;
}
.v5 .cleanroom-scrubber span {
  overflow: hidden;
  color: #a9c1cb;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v5 .cleanroom-scrubber b { color: #ffbd59; text-align: center; }
.v5 .cleanroom-scrubber mark {
  padding: 6px 7px;
  color: #65e1e5;
  background: rgba(60,207,213,.10);
  font-size: 13px;
  font-weight: 900;
  text-align: center;
}
.v5 .safe-sheet > p {
  margin: 27px 30px 0;
  color: #e9f3f6;
  font-size: 23px;
  font-weight: 650;
  line-height: 1.43;
}
.v5 .safe-sheet > p + p { margin-top: 14px; }
.v5 .safe-sheet p mark {
  padding: 2px 5px;
  color: #70e5e8;
  background: rgba(74,210,216,.11);
  box-shadow: inset 0 -2px #35c4cb;
}
.v5 .safe-sheet footer {
  position: absolute;
  left: 30px;
  right: 30px;
  bottom: 27px;
  padding-top: 18px;
  color: #aac1ca;
  border-top: 1px solid rgba(255,255,255,.12);
  font-size: 15px;
  font-weight: 700;
}
.v5 .safe-sheet footer span { color: #64e1e5; font-weight: 930; }
.v5 .safe-sheet footer b { margin: 0 7px; color: #ffbd59; }
.v5 .cleanroom-story-slide .cleanroom-rule {
  position: absolute;
  z-index: 5;
  left: 104px;
  right: 82px;
  bottom: 105px;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 20px;
  padding-left: 18px;
  color: #c5d8df;
  border-left: 6px solid #ffb23e;
  text-align: left;
  font-size: 21px;
}
.v5 .cleanroom-story-slide .cleanroom-rule span {
  color: #ffc15f;
  font-size: 12px;
  font-weight: 930;
  letter-spacing: .14em;
}
.v5 .cleanroom-story-slide .cleanroom-rule strong { font-weight: 780; }

/* Slide 15 — a real Outlook compose screen with four explicit privacy actions. */
.v5 .outlook-scrub-slide {
  padding: 0;
  background:
    radial-gradient(circle at 50% 47%, rgba(30,181,194,.13), transparent 31%),
    linear-gradient(122deg, #03121d 0%, #071d2a 58%, #092534 100%);
  overflow: hidden;
}
.v5 .outlook-scrub-slide::before {
  background:
    linear-gradient(rgba(72,159,178,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(72,159,178,.045) 1px, transparent 1px);
  background-size: 76px 76px;
  -webkit-mask-image: linear-gradient(180deg, black, transparent 94%);
  mask-image: linear-gradient(180deg, black, transparent 94%);
}
.v5 .outlook-scrub-slide .slide-head {
  position: absolute;
  z-index: 8;
  left: 104px;
  right: 82px;
  top: 62px;
  min-height: 30px;
  margin: 0;
}
.v5 .outlook-scrub-copy {
  position: absolute;
  z-index: 5;
  left: 104px;
  right: 82px;
  top: 116px;
}
.v5 .outlook-scrub-copy h2 {
  margin: 0;
  color: #fff;
  font-size: 64px;
  font-weight: 940;
  line-height: 1;
  letter-spacing: -.052em;
}
.v5 .outlook-scrub-copy h2 span { color: #64e1e5; }
.v5 .outlook-scrub-copy > p {
  margin: 13px 0 0;
  color: #9eb9c5;
  font-size: 21px;
  font-weight: 660;
}
.v5 .outlook-scrub-stage {
  position: absolute;
  z-index: 4;
  left: 75px;
  right: 65px;
  top: 274px;
  height: 610px;
}
.v5 .outlook-visual {
  position: absolute;
  z-index: 3;
  left: 382px;
  top: 8px;
  width: 1010px;
  height: 568px;
  margin: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(135,209,219,.48);
  box-shadow: 0 30px 70px rgba(0,0,0,.38), 0 0 0 7px rgba(66,201,211,.055);
}
.v5 .outlook-visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.v5 .outlook-visual figcaption {
  position: absolute;
  left: 20px;
  bottom: 16px;
  padding: 9px 13px;
  color: #315868;
  background: rgba(255,255,255,.94);
  border-left: 5px solid #16aab4;
  box-shadow: 0 5px 18px rgba(0,0,0,.12);
  font-size: 12px;
  font-weight: 720;
}
.v5 .outlook-visual figcaption span {
  margin-right: 8px;
  color: #087f89;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .13em;
}
.v5 .outlook-callout {
  position: absolute;
  z-index: 6;
  width: 326px;
  min-height: 186px;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 15px;
  padding: 22px 18px 20px 0;
  color: white;
  background: rgba(9,38,52,.96);
  border-top: 1px solid rgba(122,198,211,.43);
  border-bottom: 1px solid rgba(122,198,211,.43);
  box-shadow: 0 17px 38px rgba(0,0,0,.24);
}
.v5 .outlook-callout > b {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  color: #05202c;
  background: #62e0e4;
  font-size: 29px;
  font-weight: 950;
  line-height: 1;
}
.v5 .outlook-callout strong,
.v5 .outlook-callout p,
.v5 .outlook-callout mark { display: block; }
.v5 .outlook-callout strong {
  margin-top: 1px;
  color: #77e4e7;
  font-size: 14px;
  font-weight: 950;
  letter-spacing: .13em;
}
.v5 .outlook-callout p {
  margin: 9px 0 12px;
  color: #f4fafb;
  font-size: 20px;
  font-weight: 830;
  line-height: 1.17;
}
.v5 .outlook-callout mark {
  width: max-content;
  max-width: 100%;
  padding: 7px 9px;
  color: #ffbd58;
  background: rgba(255,174,51,.10);
  border: 1px solid rgba(255,174,51,.28);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .08em;
}
.v5 .outlook-callout-left { left: 0; }
.v5 .outlook-callout-right { right: 0; }
.v5 .outlook-callout-1,
.v5 .outlook-callout-3 { top: 35px; }
.v5 .outlook-callout-2,
.v5 .outlook-callout-4 { top: 341px; }
.v5 .outlook-callout-left::after,
.v5 .outlook-callout-right::before {
  content: "";
  position: absolute;
  top: 91px;
  width: 56px;
  height: 2px;
  background: #59bfc7;
  box-shadow: 0 0 11px rgba(89,191,199,.45);
}
.v5 .outlook-callout-left::after { right: -56px; }
.v5 .outlook-callout-right::before { left: -56px; }
.v5 .outlook-delete { border-color: rgba(255,98,116,.48); }
.v5 .outlook-delete > b {
  color: white;
  background: #ff6274;
}
.v5 .outlook-delete strong { color: #ff8593; }
.v5 .outlook-delete mark {
  color: #ff9daa;
  background: rgba(255,98,116,.12);
  border-color: rgba(255,98,116,.32);
}
.v5 .outlook-delete::before { background: #ff6274; }
.v5 .outlook-rule {
  position: absolute;
  z-index: 7;
  left: 104px;
  right: 82px;
  bottom: 101px;
  min-height: 52px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 12px 18px;
  color: #d7e7eb;
  background: rgba(4,22,31,.77);
  border-left: 6px solid #ffad33;
  border-top: 1px solid rgba(255,255,255,.09);
  border-bottom: 1px solid rgba(255,255,255,.09);
}
.v5 .outlook-rule span {
  color: #ffc15f;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .13em;
}
.v5 .outlook-rule strong {
  color: #6de2e6;
  font-size: 22px;
  font-weight: 920;
}
.v5 .outlook-rule b {
  margin-left: auto;
  color: #ff7a8a;
  font-size: 16px;
  font-weight: 930;
}

/* Slide 16 — customs-document workflow: one visual, one continuous human-controlled path. */
.v5 .customs-workflow-slide {
  padding: 0;
  color: #071a29;
  background:
    radial-gradient(circle at 51% 45%, rgba(37,185,195,.09), transparent 31%),
    linear-gradient(120deg, #fafbf9 0%, #eef4f4 100%);
  overflow: hidden;
}
.v5 .customs-workflow-slide::before {
  background:
    linear-gradient(rgba(18,76,97,.033) 1px, transparent 1px),
    linear-gradient(90deg, rgba(18,76,97,.033) 1px, transparent 1px);
  background-size: 80px 80px;
  -webkit-mask-image: linear-gradient(180deg, black, transparent 94%);
  mask-image: linear-gradient(180deg, black, transparent 94%);
}
.v5 .customs-workflow-slide .slide-head {
  position: absolute;
  z-index: 8;
  left: 104px;
  right: 82px;
  top: 62px;
  min-height: 30px;
  margin: 0;
}
.v5 .customs-workflow-copy {
  position: absolute;
  z-index: 6;
  left: 104px;
  right: 82px;
  top: 112px;
}
.v5 .customs-workflow-copy h2 {
  margin: 0;
  color: #071a29;
  font-size: 56px;
  font-weight: 940;
  line-height: .98;
  letter-spacing: -.048em;
}
.v5 .customs-workflow-copy h2 span { color: #0c929c; }
.v5 .customs-workflow-copy > p {
  margin: 11px 0 0;
  color: #557481;
  font-size: 20px;
  font-weight: 660;
}
.v5 .customs-workflow-visual {
  position: absolute;
  z-index: 3;
  left: 130px;
  right: 120px;
  top: 265px;
  height: 520px;
  margin: 0;
  overflow: hidden;
  background: white;
  border: 1px solid #bfd1d7;
  box-shadow: 0 24px 58px rgba(12,51,66,.15);
}
.v5 .customs-workflow-visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center 50%;
}
.v5 .customs-workflow-steps {
  position: absolute;
  z-index: 7;
  left: 104px;
  right: 82px;
  top: 768px;
  height: 149px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  background: rgba(255,255,255,.96);
  border-top: 5px solid #17aeb7;
  border-bottom: 1px solid #bfd0d6;
  box-shadow: 0 14px 34px rgba(11,49,63,.12);
}
.v5 .customs-workflow-steps article {
  min-width: 0;
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 13px;
  align-content: start;
  padding: 18px 20px 14px;
  border-right: 1px solid #d5e0e4;
}
.v5 .customs-workflow-steps article:last-child { border-right: 0; }
.v5 .customs-workflow-steps article > b {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  color: white;
  background: #082f48;
  font-size: 22px;
  font-weight: 950;
}
.v5 .customs-workflow-steps strong,
.v5 .customs-workflow-steps p { display: block; }
.v5 .customs-workflow-steps strong {
  color: #087f89;
  font-size: 14.5px;
  font-weight: 950;
  letter-spacing: .095em;
  line-height: 1.15;
}
.v5 .customs-workflow-steps p {
  margin: 7px 0 0;
  color: #345564;
  font-size: 16.5px;
  font-weight: 660;
  line-height: 1.26;
}
.v5 .customs-workflow-steps em {
  color: #c77708;
  font-style: normal;
  font-weight: 900;
}
.v5 .customs-workflow-steps article:last-child > b { background: #169566; }
.v5 .customs-workflow-rule {
  position: absolute;
  z-index: 8;
  left: 104px;
  right: 82px;
  bottom: 101px;
  min-height: 52px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 12px 18px;
  color: white;
  background: #082333;
  border-left: 6px solid #ffad33;
}
.v5 .customs-workflow-rule span {
  color: #ffc15f;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .13em;
}
.v5 .customs-workflow-rule strong {
  color: #e8f4f6;
  font-size: 20px;
  font-weight: 820;
}

/* Slide 16 refinement — seamless visual, compact scale, typography directly on canvas. */
.v5 .customs-workflow-slide {
  background:
    radial-gradient(circle at 58% 48%, rgba(41,185,196,.075), transparent 29%),
    linear-gradient(180deg, #f7fbff 0%, #edf5fc 100%);
}
.v5 .customs-workflow-slide::before {
  opacity: .56;
  background:
    linear-gradient(rgba(18,76,97,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(18,76,97,.028) 1px, transparent 1px);
  background-size: 82px 82px;
}
.v5 .customs-workflow-copy {
  top: 116px;
}
.v5 .customs-workflow-copy h2 {
  font-size: 60px;
  line-height: .97;
  letter-spacing: -.052em;
}
.v5 .customs-workflow-copy > p {
  margin-top: 12px;
  font-size: 19px;
}
.v5 .customs-workflow-visual {
  left: 600px;
  right: 70px;
  top: 265px;
  height: 560px;
  overflow: visible;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.v5 .customs-workflow-visual img {
  object-fit: contain;
  object-position: center 50%;
  mix-blend-mode: multiply;
  filter: saturate(1.04) contrast(1.025);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 5%, #000 95%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 5%, #000 95%, transparent 100%);
}
.v5 .customs-workflow-steps {
  left: 90px;
  right: auto;
  top: 300px;
  width: 470px;
  height: 520px;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(4, 1fr);
  background: transparent;
  border: 0;
  box-shadow: none;
}
.v5 .customs-workflow-steps article {
  grid-template-columns: 58px 1fr;
  gap: 13px;
  align-content: center;
  margin: 0;
  padding: 13px 6px 11px 0;
  border-top: 2px solid rgba(18,155,166,.48);
  border-right: 0;
}
.v5 .customs-workflow-steps article > b {
  width: auto;
  height: auto;
  display: block;
  color: #0a8792;
  background: transparent;
  font-size: 36px;
  line-height: .9;
  letter-spacing: -.06em;
}
.v5 .customs-workflow-steps article:last-child > b {
  color: #169566;
  background: transparent;
}
.v5 .customs-workflow-steps strong {
  color: #0b7080;
  font-size: 15.5px;
  letter-spacing: .105em;
}
.v5 .customs-workflow-steps p {
  margin-top: 8px;
  color: #294b5a;
  font-size: 17px;
  line-height: 1.28;
}
.v5 .customs-workflow-rule {
  min-height: 48px;
  padding: 10px 0 10px 18px;
  color: #163947;
  background: transparent;
  border-top: 1px solid rgba(18,76,97,.18);
  border-bottom: 0;
  border-left: 6px solid #ffad33;
}
.v5 .customs-workflow-rule span { color: #c77708; }
.v5 .customs-workflow-rule strong {
  color: #153b4b;
  font-size: 20px;
  font-weight: 850;
}

/* Slide 17 copy needs slightly more room for the concrete placeholder example. */
.v5 .email-demo-slide .draft-body { font-size: 14.5px; }
.v5 .email-demo-slide .verify-stamp { min-width: 238px; }
.v5 .email-demo-slide .email-human-gate strong { font-size: 21px; }

@media (prefers-reduced-motion: reduce) {
  .v5 .checklist-lanes .checklist-lane,
  .v5 .cleanroom-story.cleanroom-flow > *,
  .v5 .outlook-callout,
  .v5 .outlook-visual,
  .v5 .outlook-rule,
  .v5 .customs-workflow-visual,
  .v5 .customs-workflow-steps article,
  .v5 .customs-workflow-rule {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* Slide 16 — practical yard-analysis example with one central sheet image. */
.v5 .yard-ai-slide {
  padding: 0;
  color: #071a29;
  background:
    radial-gradient(circle at 50% 52%, rgba(37,185,195,.09), transparent 30%),
    linear-gradient(120deg, #f9faf8 0%, #eef4f3 100%);
  overflow: hidden;
}
.v5 .yard-ai-slide::before {
  background:
    linear-gradient(rgba(18,76,97,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(18,76,97,.035) 1px, transparent 1px);
  background-size: 80px 80px;
  -webkit-mask-image: linear-gradient(180deg, black, transparent 94%);
  mask-image: linear-gradient(180deg, black, transparent 94%);
}
.v5 .yard-ai-slide .slide-head {
  position: absolute;
  z-index: 8;
  left: 104px;
  right: 82px;
  top: 62px;
  min-height: 30px;
  margin: 0;
}
.v5 .yard-ai-copy {
  position: absolute;
  z-index: 5;
  left: 104px;
  top: 116px;
  right: 82px;
}
.v5 .yard-ai-copy h2 {
  margin: 0;
  color: #071a29;
  font-size: 63px;
  font-weight: 940;
  line-height: 1;
  letter-spacing: -.052em;
}
.v5 .yard-ai-copy h2 span { color: #0d929d; }
.v5 .yard-ai-copy > p {
  margin: 13px 0 0;
  color: #567482;
  font-size: 22px;
  font-weight: 660;
}
.v5 .yard-ai-stage {
  position: absolute;
  z-index: 4;
  left: 76px;
  right: 64px;
  top: 258px;
  height: 645px;
}
.v5 .yard-sheet-visual {
  position: absolute;
  z-index: 3;
  left: 360px;
  top: 7px;
  width: 1060px;
  height: 596px;
  margin: 0;
  overflow: hidden;
  background: white;
  border: 1px solid #bdd0d6;
  box-shadow: 0 28px 60px rgba(11,47,61,.16);
}
.v5 .yard-sheet-visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.v5 .yard-sheet-visual figcaption {
  position: absolute;
  left: 22px;
  bottom: 16px;
  padding: 9px 13px;
  color: #466878;
  background: rgba(255,255,255,.92);
  border-left: 5px solid #19aeb8;
  box-shadow: 0 5px 15px rgba(0,0,0,.08);
  font-size: 13px;
  font-weight: 720;
}
.v5 .yard-sheet-visual figcaption span {
  margin-right: 8px;
  color: #0a8792;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .13em;
}
.v5 .yard-callout {
  position: absolute;
  z-index: 6;
  width: 322px;
  min-height: 176px;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 15px;
  padding: 22px 18px 20px 0;
  color: #0d2d3b;
  background: rgba(249,252,251,.96);
  border-top: 1px solid #9bb5bf;
  border-bottom: 1px solid #9bb5bf;
  box-shadow: 0 15px 32px rgba(12,50,64,.09);
}
.v5 .yard-callout > b {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  color: white;
  background: #082f48;
  font-size: 28px;
  font-weight: 950;
  line-height: 1;
}
.v5 .yard-callout strong,
.v5 .yard-callout p { display: block; }
.v5 .yard-callout strong {
  margin-top: 2px;
  color: #0b7f8a;
  font-size: 15px;
  font-weight: 950;
  letter-spacing: .11em;
}
.v5 .yard-callout p {
  margin: 10px 0 0;
  color: #345564;
  font-size: 18px;
  font-weight: 650;
  line-height: 1.3;
}
.v5 .yard-callout p em {
  color: #102f3e;
  font-style: normal;
  font-weight: 850;
}
.v5 .yard-callout-left { left: 0; }
.v5 .yard-callout-right { right: 0; }
.v5 .yard-callout-1,
.v5 .yard-callout-3 { top: 58px; }
.v5 .yard-callout-2,
.v5 .yard-callout-4 { top: 352px; }
.v5 .yard-callout-left::after,
.v5 .yard-callout-right::before {
  content: "";
  position: absolute;
  top: 86px;
  width: 56px;
  height: 2px;
  background: #4d8090;
}
.v5 .yard-callout-left::after { right: -56px; }
.v5 .yard-callout-right::before { left: -56px; }
.v5 .yard-callout-2::after,
.v5 .yard-callout-4::before { background: #d58a18; }
.v5 .yard-ai-rule {
  position: absolute;
  z-index: 7;
  left: 104px;
  right: 82px;
  bottom: 101px;
  display: flex;
  align-items: center;
  gap: 22px;
  padding-left: 18px;
  color: #173949;
  border-left: 6px solid #ffad33;
  font-size: 22px;
}
.v5 .yard-ai-rule span {
  color: #c87909;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .14em;
}
.v5 .yard-ai-rule strong { font-weight: 850; }

@media (prefers-reduced-motion: reduce) {
  .v5 .yard-callout,
  .v5 .yard-sheet-visual,
  .v5 .yard-ai-rule {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* Penultimate slide — one memorable checklist before the formal close. */
.v5 .recap-checklist-slide {
  color: white;
  background:
    radial-gradient(circle at 77% 20%, rgba(27,184,195,.13), transparent 29%),
    linear-gradient(135deg, #03111b 0%, #061d2b 58%, #04131d 100%);
}
.v5 .recap-checklist-slide::before {
  display: block;
  opacity: .7;
  background:
    linear-gradient(rgba(124,228,232,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(124,228,232,.035) 1px, transparent 1px);
  background-size: 72px 72px;
  -webkit-mask-image: linear-gradient(180deg, #000, transparent 92%);
  mask-image: linear-gradient(180deg, #000, transparent 92%);
}
.v5 .recap-checklist-slide::after { content: none; }
.v5 .recap-grid {
  display: block;
  position: absolute;
  inset: 0;
  opacity: .48;
  background:
    linear-gradient(90deg, transparent 0 6%, rgba(124,228,232,.14) 6% 6.08%, transparent 6.08% 94%, rgba(255,173,51,.16) 94% 94.08%, transparent 94.08%),
    radial-gradient(circle at 50% 56%, rgba(16,149,160,.09), transparent 42%);
}
.v5 .recap-copy {
  position: absolute;
  z-index: 5;
  left: 106px;
  top: 62px;
  width: 1320px;
}
.v5 .recap-copy .overline {
  margin: 0 0 22px;
  color: #ffc367;
  font-size: 15px;
  letter-spacing: .17em;
}
.v5 .recap-copy h2 {
  margin: 0;
  color: white;
  font-size: 72px;
  line-height: .94;
  letter-spacing: -.045em;
  text-shadow: 0 12px 36px rgba(0,0,0,.38);
}
.v5 .recap-copy h2 em {
  color: #7ce4e8;
  font-style: normal;
}
.v5 .recap-message {
  margin: 18px 0 0;
  color: #b9ced6;
  font-size: 23px;
  line-height: 1.25;
  font-weight: 630;
}
.v5 .recap-message strong {
  color: #eaf8f9;
  font-weight: 820;
}
.v5 .closing-checklist {
  position: absolute;
  z-index: 5;
  left: 104px;
  right: 82px;
  top: 276px;
  height: 560px;
  display: grid;
  grid-template-columns: 1fr 1fr 1.08fr;
  border-top: 1px solid rgba(130,215,220,.32);
  border-bottom: 1px solid rgba(130,215,220,.24);
}
.v5 .closing-check {
  --closing-accent: #65d5dc;
  position: relative;
  min-width: 0;
  box-sizing: border-box;
  padding: 34px 40px 28px;
  border-left: 6px solid var(--closing-accent);
}
.v5 .closing-check + .closing-check {
  border-top: 0;
  box-shadow: inset 1px 0 rgba(130,215,220,.17);
}
.v5 .closing-check-dont { --closing-accent: #ff6674; }
.v5 .closing-check-final { --closing-accent: #ffad33; }
.v5 .closing-check header {
  display: grid;
  grid-template-columns: 62px 1fr;
  align-items: center;
  column-gap: 15px;
  min-height: 88px;
}
.v5 .closing-check header b {
  grid-row: 1 / span 2;
  color: var(--closing-accent);
  font-size: 48px;
  line-height: .9;
  letter-spacing: -.055em;
}
.v5 .closing-check header span {
  color: var(--closing-accent);
  font-size: 14px;
  font-weight: 950;
  letter-spacing: .15em;
}
.v5 .closing-check header strong {
  margin-top: 6px;
  color: white;
  font-size: 22px;
  line-height: 1.12;
  font-weight: 900;
}
.v5 .closing-check ul {
  display: grid;
  gap: 17px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}
.v5 .closing-check li {
  position: relative;
  min-height: 48px;
  padding-left: 35px;
  color: #d6e8ed;
  font-size: 19px;
  font-weight: 660;
  line-height: 1.28;
}
.v5 .closing-check li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: -1px;
  color: var(--closing-accent);
  font-size: 22px;
  font-weight: 950;
}
.v5 .closing-check-dont li::before { content: "×"; }
.v5 .closing-check-final li::before { content: counter(list-item, decimal-leading-zero); font-size: 13px; top: 4px; }
.v5 .closing-check > p {
  position: absolute;
  left: 40px;
  right: 34px;
  bottom: 27px;
  min-height: 62px;
  margin: 0;
  padding: 16px 17px 14px;
  color: #bcd0d8;
  background: rgba(255,255,255,.045);
  border-top: 2px solid var(--closing-accent);
  font-size: 16px;
  font-weight: 690;
  line-height: 1.25;
}
.v5 .closing-check > p small {
  display: block;
  margin-bottom: 7px;
  color: var(--closing-accent);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .13em;
}
.v5 .closing-safety-line {
  position: absolute;
  z-index: 6;
  left: 104px;
  right: 82px;
  bottom: 92px;
  min-height: 66px;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 22px;
  padding: 13px 20px 13px 19px;
  color: white;
  background: rgba(3,16,25,.88);
  border-left: 6px solid #ffad33;
}
.v5 .closing-safety-line span {
  color: #ffbf5c;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .14em;
}
.v5 .closing-safety-line strong {
  font-size: 18px;
  font-weight: 880;
  letter-spacing: .025em;
}
.v5 .closing-safety-line strong i {
  padding: 0 6px;
  color: #65d5dc;
  font-style: normal;
}
.v5 .closing-safety-line em {
  color: #95b7c3;
  font-size: 15px;
  font-style: normal;
  font-weight: 750;
  white-space: nowrap;
}
/* Final slide — restore the formal close after the take-away checklist. */
.v5 .closing-slide::before {
  display: block;
  background:
    linear-gradient(90deg, rgba(1,6,9,.985) 0%, rgba(1,6,9,.92) 48%, rgba(1,6,9,.48) 78%, rgba(1,6,9,.62) 100%),
    linear-gradient(0deg, rgba(1,6,9,.9), transparent 55%),
    url("assets/images/human-approval-gate.png") center / cover no-repeat;
}
.v5 .closing-slide::after { content: none; }
.v5 .closing-slide .closing-grid {
  display: block;
  position: absolute;
  inset: 0;
  opacity: .42;
  background:
    radial-gradient(circle at 77% 35%, rgba(25,198,209,.16), transparent 27%),
    linear-gradient(rgba(124,228,232,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(124,228,232,.04) 1px, transparent 1px);
  background-size: auto, 72px 72px, 72px 72px;
}
.v5 .closing-slide .closing-copy {
  left: 132px;
  top: 164px;
  width: 1220px;
  z-index: 3;
}
.v5 .closing-slide .closing-copy .overline {
  margin-bottom: 48px;
  color: #ffc367;
}
.v5 .closing-slide .closing-copy h2 {
  margin: 0;
  font-size: 128px;
  line-height: .84;
  letter-spacing: -.065em;
  text-shadow: 0 12px 42px rgba(0,0,0,.7);
}
.v5 .closing-slide .closing-copy h2 em {
  color: var(--amber);
  font-style: normal;
}
.v5 .closing-slide .closing-message {
  margin: 54px 0 0;
  color: #d8e9ee;
  font-size: 44px;
  line-height: 1.2;
  font-weight: 630;
}
.v5 .closing-slide .closing-message strong {
  color: var(--cyan-soft);
  font-weight: 820;
}
.v5 .closing-slide .closing-principles {
  display: flex;
  align-items: center;
  gap: 22px;
  margin-top: 52px;
  color: #b9ced6;
  font-size: 19px;
  font-weight: 850;
  letter-spacing: .1em;
}
.v5 .closing-slide .closing-principles i {
  display: block;
  width: 1px;
  height: 22px;
  background: rgba(124,228,232,.45);
}
.v5 .closing-slide .closing-formal-note {
  margin: 54px 0 0;
  color: #b9ced6;
  font-size: 25px;
  line-height: 1.35;
}
.v5 .closing-slide .closing-speaker {
  margin-top: 64px;
  color: #9fb9c5;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: .12em;
}
.v5 .closing-slide .closing-brands {
  right: 104px;
  top: auto;
  bottom: 54px;
  z-index: 4;
}

/* Slide 20 — group instructions, written for people who are new to AI. */
.v5 .group-task-slide .case-task-intro {
  position: relative;
  z-index: 3;
  margin: 32px 0 30px;
}
.v5 .group-task-slide .case-task-kicker {
  margin: 0 0 12px;
  color: #ffc367;
  font-size: 15px;
  font-weight: 920;
  letter-spacing: .16em;
}
.v5 .group-task-slide .case-task-intro h2 {
  margin: 0;
  color: white;
  font-size: 74px;
  font-weight: 920;
  line-height: .98;
  letter-spacing: -.045em;
}
.v5 .group-task-slide .case-task-intro h2 span {
  color: #7ce4e8;
}
.v5 .group-task-slide .case-task-intro > p:last-child {
  margin: 16px 0 0;
  color: #a9c4cf;
  font-size: 23px;
  font-weight: 620;
}
.v5 .group-task-slide .case-task-flow {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: stretch;
  width: 1744px;
  min-height: 310px;
  margin: 0 auto;
  border-top: 1px solid rgba(145, 210, 215, .28);
  border-bottom: 1px solid rgba(145, 210, 215, .28);
}
.v5 .group-task-slide .case-task-step {
  display: grid;
  grid-template-columns: 96px 1fr;
  flex: 1;
  gap: 22px;
  padding: 44px 36px 36px;
  box-sizing: border-box;
  background: transparent;
  border-left: 6px solid #49d4dd;
}
.v5 .group-task-slide .case-task-ai { border-left-color: #ffb13d; }
.v5 .group-task-slide .case-task-human { border-left-color: #4de8aa; }
.v5 .group-task-slide .case-task-number {
  color: #7ce4e8;
  font-size: 72px;
  font-weight: 930;
  line-height: .88;
  letter-spacing: -.08em;
}
.v5 .group-task-slide .case-task-ai .case-task-number { color: #ffc367; }
.v5 .group-task-slide .case-task-human .case-task-number { color: #7eeab1; }
.v5 .group-task-slide .case-task-step .overline {
  margin: 1px 0 16px;
  color: #9dc7d4;
  font-size: 13px;
  font-weight: 920;
  letter-spacing: .14em;
}
.v5 .group-task-slide .case-task-step h3 {
  margin: 0;
  color: white;
  font-size: 35px;
  font-weight: 880;
  line-height: 1.05;
  letter-spacing: -.025em;
}
.v5 .group-task-slide .case-task-step p:last-child {
  margin: 16px 0 0;
  color: #b7ced7;
  font-size: 21px;
  font-weight: 570;
  line-height: 1.38;
}
.v5 .group-task-slide .case-task-handoff {
  align-self: center;
  width: 42px;
  color: #5f9caf;
  font-size: 38px;
  font-style: normal;
  font-weight: 860;
  text-align: center;
}
.v5 .group-task-slide .case-task-output {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 17px;
  width: 1744px;
  min-height: 82px;
  margin: 32px auto 0;
  padding: 0 28px;
  box-sizing: border-box;
  color: #dbe9ee;
  background: #061a29;
  border-left: 7px solid #ffc367;
  border-top: 1px solid rgba(255, 195, 103, .38);
  border-bottom: 1px solid rgba(105, 207, 212, .18);
  font-size: 22px;
  font-weight: 680;
  opacity: 0;
}
.v5 .group-task-slide .case-task-output b {
  color: #ffc367;
  font-size: 14px;
  font-weight: 930;
  letter-spacing: .14em;
}
.v5 .group-task-slide .case-task-output i {
  color: #5895a5;
  font-style: normal;
}
.v5 .group-task-slide .case-task-output strong {
  color: #7eeab1;
  font-weight: 880;
}
.v5 .app.is-closing #hud,
.v5 .app.is-closing #helpPill,
.v5 .app.is-closing #timer {
  opacity: 0;
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .v5 .recap-grid,
  .v5 .recap-copy .overline,
  .v5 .recap-copy h2,
  .v5 .recap-message,
  .v5 .closing-grid,
  .v5 .closing-copy .overline,
  .v5 .closing-copy h2,
  .v5 .closing-message,
  .v5 .closing-check,
  .v5 .closing-safety-line,
  .v5 .closing-brands {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
  }
}

/* Slide 21 — reduce the prompt lesson to one clear authority flow. */
.v5 .prompt-slide {
  padding: 76px 112px 122px;
  background: #f5f9fb;
}
.v5 .prompt-slide .slide-head {
  margin-bottom: 24px;
}
.v5 .prompt-slide .prompt-title {
  max-width: 1610px;
  margin: 16px 0 12px;
  font-size: 60px;
  line-height: 1.05;
  letter-spacing: -.045em;
}
.v5 .prompt-slide .prompt-lead {
  max-width: 1220px;
  margin: 0;
  color: #526f80;
  font-size: 27px;
  line-height: 1.35;
}
.v5 .prompt-flow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr) 82px minmax(0, 1fr);
  align-items: stretch;
  margin-top: 40px;
}
.v5 .prompt-flow .prompt-panel.prompt-flow-step {
  position: relative;
  min-height: 330px;
  margin: 0;
  padding: 34px 34px 32px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border: 1px solid #cadbe2;
  border-top: 8px solid #9bb7c5;
  border-radius: 0 !important;
  box-shadow: 0 16px 34px rgba(7,26,43,.08);
}
.v5 .prompt-flow-step .prompt-flow-index {
  position: absolute;
  top: 28px;
  left: 34px;
  font-size: 58px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.06em;
}
.v5 .prompt-flow-step .overline {
  margin: 0 0 20px;
  font-size: 16px;
  line-height: 1.2;
}
.v5 .prompt-flow-step h3 {
  margin: 0 0 16px;
  font-size: 42px;
  line-height: 1.03;
  letter-spacing: -.045em;
}
.v5 .prompt-flow-step > p:not(.overline) {
  margin: 0;
  font-size: 23px;
  line-height: 1.3;
  font-weight: 650;
}
.v5 .prompt-unsafe {
  background: #fff4f5 !important;
  border-top-color: var(--red) !important;
  color: #8f2633;
}
.v5 .prompt-unsafe .prompt-flow-index,
.v5 .prompt-unsafe .overline { color: #d74656; }
.v5 .prompt-unsafe h3 { color: #8f2633; }
.v5 .prompt-unsafe > p:not(.overline) { color: #a14e5a; }
.v5 .prompt-support {
  background: #fff8e9 !important;
  border-top-color: var(--amber) !important;
  color: #87540a;
}
.v5 .prompt-support .prompt-flow-index { color: #c77b08; }
.v5 .prompt-support .overline { color: #a56507; }
.v5 .prompt-support h3 { color: #71460a; }
.v5 .prompt-support > p:not(.overline) { color: #8f6a32; }
.v5 .prompt-approval {
  background: #eef9f1 !important;
  border-top-color: var(--green) !important;
  color: #176b4b;
}
.v5 .prompt-approval .prompt-flow-index,
.v5 .prompt-approval .overline { color: #11815a; }
.v5 .prompt-approval h3 { color: #126044; }
.v5 .prompt-approval > p:not(.overline) { color: #397a61; }
.v5 .prompt-flow-arrow {
  display: grid;
  place-items: center;
  color: #7a9aaa;
  font-size: 64px;
  font-weight: 820;
}
.v5 .prompt-rule {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 26px;
  padding: 18px 26px;
  border-left: 7px solid var(--amber);
  background: var(--ink);
  color: #d8e9ee;
  box-shadow: 0 12px 26px rgba(7,26,43,.12);
  font-size: 20px;
  line-height: 1.3;
}
.v5 .prompt-rule span {
  color: #ffc367;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: .13em;
}
.v5 .prompt-rule strong:first-of-type { color: var(--cyan-soft); }
.v5 .prompt-rule strong:last-of-type { color: #ffd083; }
.v5 .prompt-rule i { color: #6c8998; font-style: normal; }

@media (prefers-reduced-motion: reduce) {
  .v5 .prompt-flow-step,
  .v5 .prompt-flow-arrow,
  .v5 .prompt-rule {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
  }
}

/* Slide 21 — automatic prompt-entry demo for participants who are new to AI. */
.v5 .prompt-typing-slide {
  padding: 66px 106px 118px;
  background:
    radial-gradient(circle at 74% 42%, rgba(32, 177, 190, .1), transparent 34%),
    linear-gradient(rgba(7, 26, 43, .032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(7, 26, 43, .032) 1px, transparent 1px),
    #f5f9fb;
  background-size: auto, 86px 86px, 86px 86px;
}
.v5 .prompt-typing-slide .slide-head { margin-bottom: 16px; }
.v5 .prompt-demo-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  margin: 0 0 24px;
}
.v5 .prompt-demo-heading > p {
  width: 310px;
  margin: 0 0 8px;
  color: #b86e06;
  font-size: 15px;
  font-weight: 930;
  letter-spacing: .13em;
  line-height: 1.35;
}
.v5 .prompt-demo-heading h2 {
  flex: 1;
  margin: 0;
  color: #071a2b;
  font-size: 54px;
  font-weight: 930;
  line-height: 1.02;
  letter-spacing: -.045em;
}
.v5 .prompt-demo-heading h2 span { color: #159ba6; }
.v5 .prompt-demo-stage {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 30px;
  min-height: 500px;
}
.v5 .prompt-demo-tools {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 32px 28px;
  box-sizing: border-box;
  background: #071a2b;
  border-top: 7px solid #ffae32;
  color: white;
}
.v5 .prompt-demo-tools > small {
  margin-bottom: 23px;
  color: #ffc367;
  font-size: 13px;
  font-weight: 930;
  letter-spacing: .16em;
}
.v5 .prompt-demo-brand {
  position: relative;
  display: grid;
  grid-template-columns: 64px 1fr;
  align-items: center;
  gap: 18px;
  min-height: 86px;
  padding: 10px 14px;
  border: 1px solid rgba(151, 211, 217, .18);
  transition: background .24s ease, border-color .24s ease, transform .24s ease, box-shadow .24s ease;
}
.v5 .prompt-demo-brand img {
  width: 58px;
  height: 58px;
  object-fit: contain;
}
.v5 .prompt-demo-brand strong {
  font-size: 26px;
  font-weight: 860;
}
.v5 .prompt-demo-brand.is-active,
.v5 .prompt-demo-brand.is-ready {
  background: rgba(70, 211, 220, .11);
  border-color: #65d9df;
  box-shadow: 0 0 28px rgba(68, 211, 220, .17);
  transform: translateX(8px);
}
.v5 .prompt-demo-brand.is-ready::after {
  content: "ĐANG DEMO";
  position: absolute;
  top: 7px;
  right: 8px;
  color: #7ce4e8;
  font-size: 9px;
  font-weight: 930;
  letter-spacing: .12em;
}
.v5 .prompt-demo-tools.has-selection .prompt-demo-brand:not(.is-ready) {
  opacity: .48;
  filter: saturate(.65);
}
.v5 .prompt-demo-tools > em {
  margin: 10px 0;
  color: #7292a0;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .14em;
  text-align: center;
}
.v5 .prompt-demo-tools > p {
  margin: 22px 0 0;
  color: #9bb7c3;
  font-size: 17px;
  font-weight: 650;
  line-height: 1.35;
}
.v5 .prompt-demo-window {
  position: relative;
  display: grid;
  grid-template-rows: 58px 278px 1fr;
  min-width: 0;
  overflow: hidden;
  background: white;
  border: 1px solid #cbdbe1;
  box-shadow: 0 22px 50px rgba(7, 26, 43, .13);
}
.v5 .prompt-demo-window-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 28px;
  background: #0a2638;
  color: #d6e8ec;
}
.v5 .prompt-demo-window-head span,
.v5 .prompt-demo-window-head b {
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .13em;
}
.v5 .prompt-demo-window-head b { color: #ffc367; }
.v5 .prompt-demo-composer {
  position: relative;
  display: flex;
  align-items: center;
  margin: 26px 30px 20px;
  padding: 26px 88px 26px 30px;
  box-sizing: border-box;
  background: #f7fafb;
  border: 2px solid #a9c7d1;
  box-shadow: inset 0 0 0 1px white;
}
.v5 .prompt-demo-typed-wrap {
  width: 100%;
  color: #122f40;
  font-size: 27px;
  font-weight: 670;
  line-height: 1.38;
}
.v5 .prompt-demo-typed { white-space: pre-wrap; }
.v5 .prompt-demo-cursor {
  display: inline-block;
  width: 3px;
  height: 31px;
  margin-left: 4px;
  vertical-align: -6px;
  background: #0c9ba7;
  animation: promptCursorBlink .72s steps(1, end) infinite;
}
.v5 .prompt-demo-cursor.is-done { animation: none; opacity: 0; }
@keyframes promptCursorBlink { 50% { opacity: 0; } }
.v5 .prompt-demo-send {
  position: absolute;
  right: 25px;
  bottom: 23px;
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  color: white;
  background: #8aa4af;
  border-radius: 50%;
  font-size: 31px;
  font-weight: 900;
  line-height: 1;
  transition: background .25s ease, box-shadow .25s ease;
}
.v5 .prompt-demo-send.is-ready {
  background: #0d9ba6;
  box-shadow: 0 0 0 9px rgba(13, 155, 166, .14), 0 0 28px rgba(13, 155, 166, .32);
}
.v5 .prompt-demo-processing {
  grid-row: 3;
  grid-column: 1;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 30px 26px;
  padding: 24px 28px;
  background: #eef6f8;
  border-left: 7px solid #2ab3bf;
  color: #125e69;
  opacity: 0;
}
.v5 .prompt-demo-processing i {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #24aeb9;
}
.v5 .prompt-demo-processing.is-live i {
  animation: promptProcessingDot .78s ease-in-out infinite alternate;
}
.v5 .prompt-demo-processing.is-live i:nth-child(2) { animation-delay: .14s; }
.v5 .prompt-demo-processing.is-live i:nth-child(3) { animation-delay: .28s; }
.v5 .prompt-demo-processing strong {
  margin-left: 12px;
  font-size: 25px;
  font-weight: 850;
}
@keyframes promptProcessingDot { to { opacity: .25; transform: translateY(-7px); } }
.v5 .prompt-demo-response {
  grid-row: 3;
  grid-column: 1;
  margin: 0 30px 26px;
  padding: 21px 28px;
  background: #eef9f6;
  border-left: 7px solid #27b478;
  opacity: 0;
}
.v5 .prompt-demo-response small,
.v5 .prompt-demo-response strong,
.v5 .prompt-demo-response span { display: block; }
.v5 .prompt-demo-response small {
  margin-bottom: 7px;
  color: #17825c;
  font-size: 12px;
  font-weight: 930;
  letter-spacing: .14em;
}
.v5 .prompt-demo-response strong {
  color: #174d3a;
  font-size: 26px;
  font-weight: 870;
  line-height: 1.2;
}
.v5 .prompt-demo-response span {
  margin-top: 8px;
  color: #477263;
  font-size: 18px;
  font-weight: 680;
}
.v5 .prompt-demo-human-gate {
  display: grid;
  grid-template-columns: 285px 70px 1fr;
  align-items: center;
  margin-top: 22px;
  padding: 20px 28px;
  background: #071a2b;
  border-left: 8px solid #ffae32;
  color: white;
  opacity: 0;
}
.v5 .prompt-demo-human-gate span {
  color: #8bdde1;
  font-size: 13px;
  font-weight: 930;
  letter-spacing: .13em;
}
.v5 .prompt-demo-human-gate i {
  color: #ffbd58;
  font-size: 38px;
  font-style: normal;
  font-weight: 900;
  text-align: center;
}
.v5 .prompt-demo-human-gate strong {
  color: #ffffff;
  font-size: 27px;
  font-weight: 850;
}

@media (prefers-reduced-motion: reduce) {
  .v5 .prompt-demo-processing { display: none; }
  .v5 .prompt-demo-response,
  .v5 .prompt-demo-human-gate {
    opacity: 1 !important;
    transform: none !important;
  }
  .v5 .prompt-demo-brand { transform: none !important; }
  .v5 .prompt-demo-cursor { display: none; }
  .v5 .prompt-demo-send { background: #0d9ba6; }
}

/* Slide 22 — verified output board: visually strong, but explicit about uncertainty. */
.v5 .verified-findings-slide {
  padding: 66px 106px 116px;
  background:
    radial-gradient(circle at 86% 34%, rgba(34, 177, 188, .07), transparent 28%),
    linear-gradient(rgba(7, 26, 43, .032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(7, 26, 43, .032) 1px, transparent 1px),
    #f5f9fb;
  background-size: auto, 86px 86px, 86px 86px;
}
.v5 .verified-findings-slide .slide-head { margin-bottom: 18px; }
.v5 .verified-findings-title {
  margin: 0;
  color: #071a2b;
  font-size: 60px;
  font-weight: 930;
  line-height: 1.02;
  letter-spacing: -.045em;
}
.v5 .verified-findings-title span { color: #159ba6; }
.v5 .verified-findings-lead {
  margin: 12px 0 22px;
  color: #567585;
  font-size: 23px;
  font-weight: 680;
}
.v5 .verified-findings-board {
  overflow: hidden;
  background: white;
  border-top: 7px solid #ffae32;
  box-shadow: 0 18px 44px rgba(7, 26, 43, .11);
}
.v5 .verified-findings-head,
.v5 .verified-findings-board .verified-finding {
  display: grid;
  grid-template-columns: 205px 445px minmax(0, 1fr);
  align-items: center;
  column-gap: 24px;
}
.v5 .verified-findings-head {
  min-height: 48px;
  padding: 0 28px;
  color: #d4e5ea;
  background: #071a2b;
}
.v5 .verified-findings-head span {
  font-size: 12px;
  font-weight: 930;
  letter-spacing: .14em;
}
.v5 .verified-findings-board .verified-finding {
  position: relative;
  min-height: 94px;
  margin: 0;
  padding: 14px 28px;
  box-sizing: border-box;
  background: rgba(255, 255, 255, .98);
  border: 0;
  border-bottom: 1px solid #d2e0e4;
  box-shadow: inset 7px 0 0 #75cfd4;
}
.v5 .verified-findings-board .verified-finding:nth-of-type(even) { background: #f8fbfc; }
.v5 .verified-findings-board .verified-finding:last-child { border-bottom: 0; }
.v5 .verified-findings-board .verified-finding > b {
  color: #0c6572;
  font-size: 29px;
  font-weight: 920;
  letter-spacing: -.02em;
}
.v5 .verified-findings-board .verified-finding > b small {
  color: #6849a5;
  font-size: 19px;
  font-weight: 930;
}
.v5 .verified-alert {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.v5 .verified-alert span {
  padding: 8px 11px;
  color: #147b87;
  background: #e5f7f8;
  border-left: 4px solid #30b7c0;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: .055em;
  white-space: nowrap;
}
.v5 .finding-fee .verified-alert span:first-child {
  color: #9a5900;
  background: #fff1d9;
  border-left-color: #ffad32;
}
.v5 .finding-fee .verified-alert span:last-child,
.v5 .finding-docs .verified-alert span {
  color: #a32d3a;
  background: #ffedf0;
  border-left-color: #ee6371;
}
.v5 .finding-duplicate .verified-alert span {
  color: #6243a2;
  background: #eee9fa;
  border-left-color: #8667c6;
}
.v5 .verified-findings-board .verified-finding p {
  margin: 0;
  color: #3f6172;
  font-size: 21px;
  font-weight: 620;
  line-height: 1.28;
}
.v5 .verified-findings-board .verified-finding p strong {
  color: #183c4e;
  font-weight: 880;
}
.v5 .verified-findings-board .verified-finding p em {
  display: inline-block;
  margin-left: 8px;
  color: #a23845;
  font-size: 14px;
  font-style: normal;
  font-weight: 930;
  letter-spacing: .07em;
  white-space: nowrap;
}
.v5 .verified-findings-rule {
  display: grid;
  grid-template-columns: 370px 1fr;
  align-items: center;
  gap: 30px;
  margin-top: 20px;
  padding: 19px 28px;
  background: #071a2b;
  border-left: 8px solid #ffae32;
}
.v5 .verified-findings-rule strong {
  color: #ffc367;
  font-size: 19px;
  font-weight: 930;
  letter-spacing: .055em;
}
.v5 .verified-findings-rule span {
  color: #d4e5ea;
  font-size: 21px;
  font-weight: 680;
}

@media (prefers-reduced-motion: reduce) {
  .v5 .verified-finding,
  .v5 .verified-findings-rule {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* ==========================================================================
   SLIDES THUMBNAIL DRAWER (Phím S - Standalone Slide View)
   ========================================================================== */
.slides-drawer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  display: flex;
  pointer-events: none;
  visibility: hidden;
  transition: visibility 0.25s ease;
}

.slides-drawer.open {
  pointer-events: auto;
  visibility: visible;
}

.slides-drawer-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
  opacity: 0;
  transition: opacity 0.25s ease;
}

.slides-drawer.open .slides-drawer-backdrop {
  opacity: 1;
}

.slides-drawer-panel {
  position: relative;
  width: 320px;
  max-width: 85vw;
  height: 100%;
  background: rgba(7, 26, 43, 0.96);
  backdrop-filter: blur(20px);
  border-right: 1px solid rgba(43, 83, 105, 0.6);
  box-shadow: 10px 0 40px rgba(0, 0, 0, 0.5);
  display: flex;
  flex-direction: column;
  transform: translateX(-100%);
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  z-index: 2;
  user-select: none;
}

.slides-drawer.open .slides-drawer-panel {
  transform: translateX(0);
}

.drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  background: rgba(11, 43, 65, 0.8);
  border-bottom: 1px solid rgba(43, 83, 105, 0.6);
}

.drawer-title-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
}

.drawer-title-wrap b {
  font-size: 13.5px;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #f0f4f8;
}

.drawer-count {
  font-size: 11px;
  font-family: var(--font-mono, monospace);
  font-weight: 700;
  color: #27b6c3;
  background: rgba(39, 182, 195, 0.15);
  padding: 2px 8px;
  border-radius: 12px;
  border: 1px solid rgba(39, 182, 195, 0.3);
}

.drawer-close-btn {
  background: transparent;
  border: none;
  color: #9eb6c2;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
  padding: 0 4px;
  border-radius: 4px;
  transition: color 0.15s ease;
}

.drawer-close-btn:hover {
  color: #ffffff;
}

.drawer-thumbs-list {
  flex: 1;
  overflow-y: auto;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  -webkit-overflow-scrolling: touch;
}

/* Single Drawer Thumbnail Card */
.drawer-thumb-card {
  display: flex;
  flex-direction: column;
  gap: 6px;
  cursor: pointer;
  position: relative;
  border-radius: 8px;
  transition: transform 0.15s ease;
}

.drawer-thumb-card:hover {
  transform: translateY(-2px);
}

.drawer-thumb-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 2px;
}

.drawer-thumb-num {
  font-family: var(--font-mono, monospace);
  font-size: 12px;
  font-weight: 700;
  color: #7c99a5;
}

.drawer-thumb-card.active .drawer-thumb-num {
  color: #27b6c3;
}

.drawer-thumb-title {
  font-size: 12px;
  font-weight: 500;
  color: #d1dde3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1;
}

.drawer-thumb-card.active .drawer-thumb-title {
  color: #27b6c3;
  font-weight: 700;
}

.drawer-preview-wrap {
  width: 100%;
  aspect-ratio: 16 / 9;
  position: relative;
  overflow: hidden;
  background: #071a2b;
  border-radius: 6px;
  border: 1px solid rgba(43, 83, 105, 0.6);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  transition: all 0.15s ease;
}

.drawer-thumb-card:hover .drawer-preview-wrap {
  border-color: #27b6c3;
  box-shadow: 0 4px 16px rgba(39, 182, 195, 0.25);
}

.drawer-thumb-card.active .drawer-preview-wrap {
  border-color: #27b6c3;
  box-shadow: 0 0 0 2.5px #27b6c3, 0 4px 20px rgba(39, 182, 195, 0.4);
}

.drawer-preview-stage {
  width: 1920px;
  height: 1080px;
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: top left;
  pointer-events: none;
  user-select: none;
}

.drawer-preview-stage .slide {
  display: block !important;
  position: absolute !important;
  width: 1920px !important;
  height: 1080px !important;
  left: 0 !important;
  top: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.drawer-preview-stage .slide * {
  opacity: 1 !important;
  visibility: visible !important;
}

.drawer-preview-stage .briefing-route-base,
.drawer-preview-stage .briefing-route-live,
.drawer-preview-stage .briefing-route-spurs path {
  opacity: 1 !important;
  stroke-dashoffset: 0 !important;
}

.drawer-preview-stage .briefing-route-nodes,
.drawer-preview-stage .briefing-route-spurs,
.drawer-preview-stage .briefing-recap,
.drawer-preview-stage .briefing-phase-list article,
.drawer-preview-stage .briefing-outcome {
  opacity: 1 !important;
  transform: none !important;
}

.drawer-preview-stage .video-intro-overlay,
.drawer-preview-stage .notes,
.drawer-preview-stage .case-signal,
.drawer-preview-stage .hud,
.drawer-preview-stage .slides-drawer,
.drawer-preview-stage .help-overlay {
  display: none !important;
}

/* Hide inner drawer and HUD S button when embedded inside Studio iframe */
.is-embedded-iframe .slides-drawer,
.is-embedded-iframe #slidesBtn {
  display: none !important;
}

/* ==========================================================================
   QUICK JUMP PILL OVERLAY (Phím Số 0-9)
   ========================================================================== */
.quick-jump-pill {
  position: fixed;
  top: 32px;
  left: 50%;
  transform: translateX(-50%) translateY(-20px) scale(0.95);
  background: rgba(7, 26, 43, 0.95);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1.5px solid #27b6c3;
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.5), 0 0 20px rgba(39, 182, 195, 0.35);
  border-radius: 40px;
  padding: 10px 24px;
  display: flex;
  align-items: center;
  gap: 12px;
  z-index: 10000;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  font-family: var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
}

.quick-jump-pill.visible {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0) scale(1);
}

.quick-jump-label {
  font-size: 13px;
  font-weight: 600;
  color: #9eb6c2;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.quick-jump-num {
  font-family: var(--font-mono, monospace);
  font-size: 24px;
  font-weight: 800;
  color: #ffffff;
  background: #126a7a;
  padding: 2px 12px;
  border-radius: 8px;
  border: 1px solid #27b6c3;
  min-width: 42px;
  text-align: center;
}

.quick-jump-hint {
  font-size: 12px;
  color: #7c99a5;
}

/* Slide 19 — hands-on pseudonymization exercise: raw email → safe AI input. */
.v5 .practice-email-scrub-slide {
  padding: 62px 104px 116px;
  overflow: hidden;
  color: #eef8fb;
  background:
    radial-gradient(circle at 50% 52%, rgba(33, 194, 202, .14), transparent 25%),
    radial-gradient(circle at 7% 92%, rgba(222, 79, 95, .1), transparent 29%),
    linear-gradient(115deg, #061927 0%, #0a2634 56%, #071923 100%);
}
.v5 .practice-email-scrub-slide::before {
  z-index: 0;
  background:
    linear-gradient(rgba(126, 221, 225, .055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(126, 221, 225, .055) 1px, transparent 1px);
  background-size: 76px 76px;
  mask-image: linear-gradient(180deg, black, rgba(0,0,0,.4));
}
.v5 .practice-email-scrub-slide > :not(.signature-rail):not(.brand-footer):not(.notes) { position: relative; z-index: 2; }
.v5 .practice-email-scrub-slide .slide-head { margin: 0 0 20px; }
.v5 .practice-email-scrub-slide .section-label { color: #9bdce0; }
.v5 .practice-email-scrub-slide .chapter-code { color: #ffc367; }
.v5 .practice-email-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 48px;
}
.v5 .practice-email-heading h2 {
  margin: 0;
  color: white;
  font-size: 58px;
  font-weight: 940;
  line-height: .98;
  letter-spacing: -.05em;
}
.v5 .practice-email-heading h2 span { color: #62dce1; }
.v5 .practice-email-heading p {
  max-width: 1070px;
  margin: 14px 0 0;
  color: #b9d0d9;
  font-size: 22px;
  font-weight: 620;
  line-height: 1.35;
}
.v5 .practice-timebox {
  display: flex;
  align-items: center;
  gap: 13px;
  flex: 0 0 auto;
  margin-bottom: 7px;
  padding: 13px 18px 13px 16px;
  border: 1px solid rgba(102, 220, 225, .42);
  background: rgba(6, 25, 39, .72);
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
}
.v5 .practice-timebox b {
  color: #ffc367;
  font-size: 44px;
  font-weight: 930;
  line-height: .8;
  letter-spacing: -.06em;
}
.v5 .practice-timebox span {
  color: #c9e3e8;
  font-size: 12px;
  font-weight: 920;
  line-height: 1.25;
  letter-spacing: .13em;
}
.v5 .scrub-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 236px minmax(0, 1fr);
  align-items: stretch;
  gap: 25px;
  margin-top: 31px;
}
.v5 .scrub-card {
  min-height: 405px;
  overflow: hidden;
  border: 1px solid rgba(178, 220, 226, .2);
  background: rgba(6, 26, 38, .88);
  box-shadow: 0 22px 54px rgba(0,0,0,.22), inset 0 1px rgba(255,255,255,.04);
}
.v5 .scrub-card > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 56px;
  padding: 0 25px;
  border-bottom: 1px solid rgba(179, 218, 225, .18);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .12em;
}
.v5 .scrub-card > header b { font-size: 11px; letter-spacing: .09em; }
.v5 .scrub-raw-card { border-top: 7px solid #ec6371; }
.v5 .scrub-raw-card > header { color: #f5c7cc; background: rgba(147, 35, 51, .35); }
.v5 .scrub-raw-card > header b { color: #ff9aa5; }
.v5 .scrub-safe-card { border-top: 7px solid #54d797; }
.v5 .scrub-safe-card > header { color: #c8f3dc; background: rgba(26, 126, 78, .32); }
.v5 .scrub-safe-card > header b { color: #91edbb; }
.v5 .scrub-card-question {
  margin: 20px 25px 13px;
  color: #d5e5ea;
  font-size: 19px;
  font-weight: 640;
}
.v5 .scrub-card-question strong { color: white; font-weight: 900; }
.v5 .raw-input-card .scrub-card-question { margin: 17px 25px 10px; }
.v5 .scrub-compose-window {
  margin: 0 25px;
  overflow: hidden;
  background: #071823;
  border: 1px solid rgba(156, 208, 216, .33);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
}
.v5 .scrub-compose-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 38px;
  padding: 0 14px;
  color: #afc6ce;
  background: #132b38;
  border-bottom: 1px solid rgba(173, 216, 223, .16);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .1em;
}
.v5 .scrub-compose-bar > span { display: flex; align-items: center; gap: 5px; }
.v5 .scrub-compose-bar > span i {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #5c7e8d;
}
.v5 .scrub-compose-bar > span i:first-child { background: #ec6874; }
.v5 .scrub-compose-bar > span i:nth-child(2) { background: #f2ba54; }
.v5 .scrub-compose-bar > span i:nth-child(3) { background: #65d99b; }
.v5 .scrub-compose-bar > b { color: #ffb7c0; font-size: 9px; letter-spacing: .12em; }
.v5 .scrub-compose-fields {
  padding: 0 15px;
  background: rgba(15, 39, 51, .82);
}
.v5 .scrub-compose-fields > span {
  display: grid;
  grid-template-columns: 66px 1fr;
  align-items: center;
  min-height: 29px;
  border-bottom: 1px solid rgba(172, 214, 221, .13);
}
.v5 .scrub-compose-fields > span:last-child { border-bottom: 0; }
.v5 .scrub-compose-fields b {
  color: #83b5c0;
  font-size: 11px;
  font-weight: 820;
}
.v5 .scrub-compose-fields strong {
  color: #e0ecef;
  font-size: 12px;
  font-weight: 650;
}
.v5 .raw-input-card .scrub-email-copy {
  min-height: 164px;
  margin: 0;
  padding: 15px 17px;
  border: 0;
  box-shadow: none;
  font-size: 21px;
  line-height: 1.34;
}
.v5 .raw-input-card .scrub-email-copy p { margin-bottom: 10px; }
.v5 .scrub-typed-token { position: relative; }
.v5 .scrub-typing-copy.is-typing-live [data-type] { visibility: hidden; }
.v5 .scrub-typing-copy.is-typing-live [data-type].is-typing,
.v5 .scrub-typing-copy.is-typing-live [data-type].is-complete { visibility: visible; }
.v5 .scrub-typed-token.is-typing::after {
  content: "";
  display: inline-block;
  width: 2px;
  height: 23px;
  margin-left: 2px;
  vertical-align: -4px;
  background: #ff9da8;
  box-shadow: 0 0 8px rgba(255, 100, 115, .8);
  animation: scrubTypingCursor .68s steps(1, end) infinite;
}
@keyframes scrubTypingCursor { 50% { opacity: 0; } }
.v5 .scrub-compose-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 34px;
  padding: 0 15px;
  color: #94b3bd;
  background: rgba(17, 43, 55, .88);
  border-top: 1px solid rgba(170, 213, 220, .16);
}
.v5 .scrub-typing-state { display: flex; align-items: center; gap: 8px; }
.v5 .scrub-typing-state > i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ec6874;
  box-shadow: 0 0 11px rgba(236, 104, 116, .85);
  animation: scrubLivePulse 1s ease-in-out infinite;
}
.v5 .scrub-typing-state b {
  color: #ffadb6;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
}
.v5 .scrub-typing-state small { color: #7899a6; font-size: 10px; font-weight: 700; }
.v5 .scrub-typing-state.is-complete > i { background: #67d99a; box-shadow: 0 0 11px rgba(103, 217, 154, .7); animation: none; }
.v5 .scrub-typing-state.is-complete b { color: #8fe9b9; }
.v5 .scrub-compose-status > em { color: #a8c1c9; font-size: 11px; font-style: normal; font-weight: 760; }
@keyframes scrubLivePulse { 50% { opacity: .35; transform: scale(.7); } }
.v5 .scrub-email-copy {
  min-height: 220px;
  margin: 0 25px;
  padding: 18px 19px;
  color: #ecf6f8;
  background: rgba(3, 15, 24, .56);
  border: 1px solid rgba(170, 214, 220, .25);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
  font-size: 23px;
  font-weight: 610;
  line-height: 1.36;
}
.v5 .scrub-email-copy p { margin: 0 0 13px; }
.v5 .scrub-email-copy p:last-child { margin-bottom: 0; }
.v5 .scrub-email-copy mark {
  padding: 1px 5px 2px;
  color: inherit;
  background: transparent;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.v5 .scrub-email-copy .sensitive {
  color: #ff9ba7;
  background: rgba(214, 61, 79, .18);
  box-shadow: inset 0 -2px #ee6472;
}
.v5 .scrub-email-copy .pseudonym {
  color: #91edbb;
  background: rgba(59, 183, 110, .17);
  box-shadow: inset 0 -2px #4dd994;
}
.v5 .scrub-card > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 16px 25px 0;
  color: #b4cad2;
  font-size: 15px;
  font-weight: 750;
}
.v5 .scrub-card > footer i {
  display: grid;
  width: 29px;
  height: 29px;
  place-items: center;
  border-radius: 50%;
  font-size: 20px;
  font-style: normal;
  font-weight: 920;
}
.v5 .scrub-raw-card > footer i { color: #ffced3; background: #a72e40; }
.v5 .scrub-safe-card > footer i { color: #0e4b31; background: #70e7a7; }
.v5 .scrub-gate {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 17px;
  min-height: 405px;
  color: #dceff2;
  text-align: center;
}
.v5 .scrub-gate-label {
  color: #ffc367;
  font-size: 12px;
  font-weight: 930;
  letter-spacing: .16em;
}
.v5 .scrub-gate-orbit {
  position: relative;
  display: grid;
  width: 154px;
  height: 154px;
  place-items: center;
  border: 2px solid #63dce1;
  border-radius: 50%;
  box-shadow: 0 0 0 12px rgba(98, 220, 225, .07), 0 0 46px rgba(50, 203, 210, .18);
}
.v5 .scrub-gate-orbit::before,
.v5 .scrub-gate-orbit::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(111, 228, 231, .48);
  border-radius: 50%;
}
.v5 .scrub-gate-orbit::before { inset: 19px; }
.v5 .scrub-gate-orbit::after { inset: 34px; border-color: rgba(255, 195, 103, .6); }
.v5 .scrub-gate-orbit b {
  position: relative;
  z-index: 1;
  color: white;
  font-size: 20px;
  font-weight: 920;
  line-height: 1.02;
  letter-spacing: -.025em;
}
.v5 .scrub-gate-orbit i {
  position: absolute;
  right: -20px;
  top: 56px;
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  color: #0b2d3a;
  background: #62dce1;
  border-radius: 50%;
  box-shadow: 0 0 0 7px #0a2634;
  font-size: 27px;
  font-style: normal;
  font-weight: 930;
}
.v5 .scrub-gate > small {
  color: #a9c8d1;
  font-size: 15px;
  font-weight: 660;
  line-height: 1.38;
}
.v5 .scrub-task-strip {
  display: flex;
  align-items: center;
  min-height: 77px;
  gap: 18px;
  margin-top: 24px;
  padding: 0 25px;
  box-sizing: border-box;
  color: #cfe1e6;
  background: rgba(3, 16, 25, .82);
  border: 1px solid rgba(117, 220, 225, .27);
  border-left: 7px solid #ffc367;
  box-shadow: 0 15px 35px rgba(0,0,0,.16);
}
.v5 .scrub-task-strip > b {
  flex: 0 0 175px;
  color: #ffc367;
  font-size: 13px;
  font-weight: 930;
  letter-spacing: .14em;
}
.v5 .scrub-task-strip > span {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 18px;
  font-weight: 700;
  white-space: nowrap;
}
.v5 .scrub-task-strip > span i {
  color: #67dce2;
  font-size: 15px;
  font-style: normal;
  font-weight: 930;
}
.v5 .scrub-task-strip > span strong { color: #90edba; font-weight: 900; }
.v5 .scrub-task-strip > em { color: #5ea1ad; font-size: 26px; font-style: normal; }

@media (prefers-reduced-motion: reduce) {
  .v5 .scrub-workspace,
  .v5 .scrub-card,
  .v5 .scrub-gate,
  .v5 .scrub-task-strip {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
  }
}

/* Slide 19 — a restrained document-to-Gemini practice surface. */
.v5 .practice-gemini-slide {
  padding: 67px 104px 118px;
  overflow: hidden;
  color: #17232d;
  background: #f7f8fb;
}
.v5 .practice-gemini-slide::before {
  z-index: 0;
  background: linear-gradient(180deg, rgba(255,255,255,.94), rgba(242,244,248,.55));
}
.v5 .practice-gemini-slide > :not(.signature-rail):not(.brand-footer):not(.notes) { position: relative; z-index: 2; }
.v5 .practice-gemini-slide .slide-head { margin: 0 0 20px; }
.v5 .practice-gemini-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 66px;
}
.v5 .practice-gemini-heading h2 {
  margin: 0;
  color: #111c25;
  font-size: 58px;
  font-weight: 930;
  line-height: .99;
  letter-spacing: -.052em;
}
.v5 .practice-gemini-heading h2 span { color: #655dd6; }
.v5 .practice-gemini-heading > p {
  width: 500px;
  margin: 0 0 5px;
  color: #61717e;
  font-size: 21px;
  font-weight: 610;
  line-height: 1.38;
}
.v5 .practice-gemini-layout {
  display: grid;
  grid-template-columns: minmax(0, .95fr) 172px minmax(0, 1.08fr);
  align-items: stretch;
  gap: 28px;
  margin-top: 32px;
}
.v5 .source-brief,
.v5 .gemini-prompt-panel {
  min-height: 462px;
  overflow: hidden;
  background: white;
  border: 1px solid #dce2e8;
  box-shadow: 0 18px 42px rgba(33, 47, 62, .08);
}
.v5 .source-brief { border-top: 5px solid #d86b76; }
.v5 .source-brief > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 58px;
  padding: 0 26px;
  color: #8a4f57;
  background: #fff8f8;
  border-bottom: 1px solid #f0dadd;
  font-size: 12px;
  font-weight: 880;
  letter-spacing: .105em;
}
.v5 .source-brief > header b { color: #b35f69; font-size: 10px; letter-spacing: .08em; }
.v5 .source-document {
  margin: 25px 26px 0;
  padding: 23px 24px;
  color: #263741;
  background: #fbfcfd;
  border: 1px solid #e2e7eb;
  font-size: 25px;
  font-weight: 590;
  line-height: 1.43;
}
.v5 .source-document p { margin: 0 0 17px; }
.v5 .source-document p:last-child { margin-bottom: 0; }
.v5 .source-document mark {
  padding: 1px 3px;
  color: #a94352;
  background: #fff0f1;
  box-shadow: inset 0 -2px #df7a84;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.v5 .source-brief > footer {
  display: flex;
  align-items: center;
  gap: 11px;
  margin: 22px 26px 0;
  color: #7e8c97;
  font-size: 16px;
  font-weight: 660;
}
.v5 .source-brief > footer i {
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  color: #a94352;
  background: #fff0f1;
  border-radius: 50%;
  font-size: 15px;
  font-style: normal;
  font-weight: 900;
}
.v5 .cleaning-bridge {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  color: #53636f;
  text-align: center;
}
.v5 .cleaning-bridge > span {
  color: #756dd8;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
}
.v5 .cleaning-bridge > b {
  color: #3e4d59;
  font-size: 17px;
  font-weight: 760;
  line-height: 1.35;
}
.v5 .cleaning-bridge > b em { color: #655dd6; font-style: normal; font-weight: 900; }
.v5 .cleaning-bridge > i {
  display: grid;
  width: 50px;
  height: 50px;
  place-items: center;
  color: white;
  background: #655dd6;
  border-radius: 50%;
  box-shadow: 0 10px 20px rgba(101, 93, 214, .23);
  font-size: 28px;
  font-style: normal;
  font-weight: 900;
}
.v5 .gemini-prompt-panel { border-top: 5px solid #796ff0; }
.v5 .gemini-prompt-panel > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 62px;
  padding: 0 24px;
  border-bottom: 1px solid #e7e8f3;
}
.v5 .gemini-prompt-panel > header > div { display: flex; align-items: center; gap: 11px; }
.v5 .gemini-prompt-panel > header img { width: 26px; height: 26px; object-fit: contain; }
.v5 .gemini-prompt-panel > header strong {
  color: #34314d;
  font-size: 21px;
  font-weight: 760;
  letter-spacing: -.025em;
}
.v5 .gemini-prompt-panel > header b {
  color: #756dd8;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .11em;
}
.v5 .gemini-help {
  margin: 19px 25px 14px;
  color: #7a8191;
  font-size: 16px;
  font-weight: 590;
}
.v5 .gemini-composer {
  margin: 0 25px;
  overflow: hidden;
  background: #f5f5fa;
  border: 1px solid #dfe1ec;
  border-radius: 17px;
}
.v5 .gemini-typed-prompt {
  min-height: 236px;
  padding: 19px 21px;
  color: #27313c;
  font-size: 19px;
  font-weight: 590;
  line-height: 1.4;
}
.v5 .gemini-typed-prompt p { margin: 0 0 14px; }
.v5 .gemini-typed-prompt p:last-child { margin-bottom: 0; }
.v5 .gemini-typed-token { position: relative; }
.v5 .gemini-typed-prompt.is-typing-live [data-type] { visibility: hidden; }
.v5 .gemini-typed-prompt.is-typing-live [data-type].is-typing,
.v5 .gemini-typed-prompt.is-typing-live [data-type].is-complete { visibility: visible; }
.v5 .gemini-typed-token.is-typing::after {
  content: "";
  display: inline-block;
  width: 2px;
  height: 21px;
  margin-left: 2px;
  vertical-align: -4px;
  background: #655dd6;
  animation: geminiTypingCursor .68s steps(1, end) infinite;
}
@keyframes geminiTypingCursor { 50% { opacity: 0; } }
.v5 .gemini-composer > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 48px;
  padding: 0 14px 0 18px;
  color: #6e7483;
  background: white;
  border-top: 1px solid #e0e2ec;
  font-size: 13px;
  font-weight: 670;
}
.v5 .gemini-typing-state { display: flex; align-items: center; gap: 7px; }
.v5 .gemini-typing-state > i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #756dd8;
  box-shadow: 0 0 9px rgba(117, 109, 216, .64);
  animation: geminiLivePulse 1s ease-in-out infinite;
}
.v5 .gemini-typing-state b { color: #655dd6; font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.v5 .gemini-typing-state small { color: #9297a3; font-size: 11px; font-weight: 650; }
.v5 .gemini-typing-state.is-complete > i { background: #57a878; box-shadow: none; animation: none; }
.v5 .gemini-typing-state.is-complete b { color: #438c62; }
.v5 .gemini-composer > footer > em {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  color: white;
  background: #655dd6;
  border-radius: 50%;
  font-size: 19px;
  font-style: normal;
  font-weight: 850;
}
@keyframes geminiLivePulse { 50% { opacity: .35; transform: scale(.7); } }
.v5 .practice-gemini-rule {
  display: flex;
  align-items: center;
  gap: 18px;
  min-height: 70px;
  margin-top: 24px;
  padding: 0 25px;
  box-sizing: border-box;
  color: #586976;
  background: white;
  border: 1px solid #dce2e8;
  border-left: 5px solid #655dd6;
  box-shadow: 0 10px 24px rgba(33, 47, 62, .055);
  font-size: 18px;
  font-weight: 630;
}
.v5 .practice-gemini-rule b { color: #655dd6; font-size: 12px; font-weight: 900; letter-spacing: .13em; }
.v5 .practice-gemini-rule i { color: #a5abb4; font-style: normal; }
.v5 .practice-gemini-rule strong { color: #26333e; font-weight: 830; }

@media (prefers-reduced-motion: reduce) {
  .v5 .practice-gemini-layout,
  .v5 .source-brief,
  .v5 .cleaning-bridge,
  .v5 .gemini-prompt-panel,
  .v5 .practice-gemini-rule {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
  }
}

/* Slide 19 — Redact → Prompt: one visual story, not a two-card comparison. */
.v5 .redaction-prompt-slide {
  padding: 67px 104px 118px;
  overflow: hidden;
  color: #17232d;
  background: #f6f7f9;
}
.v5 .redaction-prompt-slide::before {
  z-index: 0;
  background:
    radial-gradient(circle at 62% 47%, rgba(100, 93, 214, .08), transparent 27%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(241,243,246,.76));
}
.v5 .redaction-prompt-slide > :not(.signature-rail):not(.brand-footer):not(.notes) { position: relative; z-index: 2; }
.v5 .redaction-prompt-slide .slide-head { margin: 0 0 20px; }
.v5 .redaction-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 70px;
}
.v5 .redaction-heading h2 {
  margin: 0;
  color: #121d26;
  font-size: 62px;
  font-weight: 940;
  line-height: .96;
  letter-spacing: -.055em;
}
.v5 .redaction-heading h2 span { color: #675fd6; }
.v5 .redaction-heading > p {
  width: 475px;
  margin: 0 0 5px;
  color: #64727e;
  font-size: 21px;
  font-weight: 610;
  line-height: 1.38;
}
.v5 .redaction-heading h2,
.v5 .redaction-heading > p,
.v5 .evidence-email,
.v5 .evidence-body { opacity: 0; }
.v5 .redaction-stage {
  display: grid;
  grid-template-columns: 700px 150px minmax(0, 1fr);
  align-items: center;
  gap: 30px;
  margin-top: 34px;
}
.v5 .evidence-email {
  min-height: 458px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #dfe4e8;
  border-top: 5px solid #c06b73;
  box-shadow: 0 24px 55px rgba(38, 50, 62, .11), 0 2px 0 rgba(255,255,255,.95) inset;
}
.v5 .evidence-email > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 59px;
  padding: 0 28px;
  color: #7d565d;
  background: #fffafa;
  border-bottom: 1px solid #ece2e4;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .105em;
}
.v5 .evidence-email > header b { color: #ad7179; font-size: 10px; letter-spacing: .12em; }
.v5 .evidence-body {
  margin: 26px 29px 0;
  padding: 26px 27px;
  color: #26363f;
  background: #fcfcfd;
  border: 1px solid #e3e7ea;
  font-size: 26px;
  font-weight: 590;
  line-height: 1.47;
}
.v5 .evidence-body p { margin: 0 0 17px; }
.v5 .evidence-body p:last-child { margin-bottom: 0; }
.v5 .redact-token { position: relative; display: inline-block; color: #a03f4c; }
.v5 .redact-token > b {
  position: absolute;
  z-index: 1;
  inset: -3px -4px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 100%;
  padding: 0 9px;
  box-sizing: border-box;
  color: #5a54c4;
  background: #f0effd;
  border: 1px solid #cfcbfa;
  border-radius: 7px;
  box-shadow: 0 1px 2px rgba(82, 75, 172, .10);
  font-size: 12px;
  font-weight: 920;
  letter-spacing: .055em;
  opacity: 0;
  transform-origin: left center;
}
.v5 .redaction-status {
  display: flex;
  align-items: center;
  gap: 13px;
  margin: 23px 29px 0;
  color: #536873;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .06em;
  opacity: 0;
}
.v5 .redaction-status b {
  display: grid;
  min-width: 54px;
  min-height: 28px;
  place-items: center;
  color: #5c56c8;
  background: #f0effd;
  border: 1px solid #cfcbfa;
  font-size: 12px;
  font-weight: 920;
}
.v5 .redaction-route {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  color: #596b77;
  text-align: center;
  opacity: 0;
}
.v5 .redaction-route > span { color: #756ed6; font-size: 11px; font-weight: 920; letter-spacing: .14em; }
.v5 .redaction-route > i {
  width: 2px;
  height: 84px;
  background: linear-gradient(#b9b3ef, #675fd6);
  box-shadow: 0 0 16px rgba(103,95,214,.25);
}
.v5 .redaction-route > b { color: #4f616d; font-size: 15px; font-weight: 750; line-height: 1.34; }
.v5 .redaction-route > b em { color: #675fd6; font-style: normal; font-weight: 920; }
.v5 .gemini-console {
  min-height: 452px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #dfe2ed;
  border-top: 5px solid #766dee;
  box-shadow: 0 24px 55px rgba(63, 56, 137, .11), 0 2px 0 rgba(255,255,255,.95) inset;
  opacity: 0;
}
.v5 .gemini-console > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 61px;
  padding: 0 25px;
  border-bottom: 1px solid #e7e8f0;
}
.v5 .gemini-console > header > div { display: flex; align-items: center; gap: 11px; }
.v5 .gemini-console > header img { width: 26px; height: 26px; object-fit: contain; }
.v5 .gemini-console > header strong { color: #34314c; font-size: 21px; font-weight: 770; letter-spacing: -.025em; }
.v5 .gemini-console > header b { color: #756ed6; font-size: 10px; font-weight: 920; letter-spacing: .1em; }
.v5 .gemini-console .gemini-help { margin: 17px 25px 14px; color: #788090; font-size: 16px; font-weight: 600; }
.v5 .gemini-console .gemini-composer { margin: 0 25px; }
.v5 .gemini-console .gemini-typed-prompt { min-height: 235px; }
.v5 .redaction-rule {
  display: flex;
  align-items: center;
  gap: 17px;
  min-height: 70px;
  margin-top: 24px;
  padding: 0 27px;
  box-sizing: border-box;
  color: #536571;
  background: rgba(255,255,255,.76);
  border-top: 1px solid #dde2e7;
  border-bottom: 1px solid #dde2e7;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: .01em;
  opacity: 0;
}
.v5 .redaction-rule b { color: #675fd6; font-size: 12px; font-weight: 920; letter-spacing: .13em; }
.v5 .redaction-rule i { color: #9ea8b0; font-size: 23px; font-style: normal; }
.v5 .redaction-rule strong { color: #2d3d47; font-weight: 870; }

@media (prefers-reduced-motion: reduce) {
  .v5 .redaction-heading h2,
  .v5 .redaction-heading > p,
  .v5 .evidence-email,
  .v5 .evidence-body,
  .v5 .redact-token > b,
  .v5 .redaction-status,
  .v5 .redaction-route,
  .v5 .gemini-console,
  .v5 .redaction-rule {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
  }
}
