/* src/styles/platform-story.css: portable route stylesheet. */
.of-platformFeatures,
.of-platformModules {
  --platform-cyan: #55d8ff;
  --platform-blue: #2f7dff;
  --platform-violet: #8f7cff;
  --platform-line: rgba(125, 211, 252, .16);
  --platform-panel: rgba(5, 14, 30, .86);
  --platform-muted: #9cafc5;
}

.of-platformFeatures {
  overflow: clip;
  padding-bottom: 96px;
  background:
    radial-gradient(circle at 9% 8%, rgba(0, 119, 255, .14), transparent 27%),
    radial-gradient(circle at 92% 19%, rgba(110, 84, 255, .1), transparent 23%);
}

.of-platformFeatures__hero {
  position: relative;
  display: grid;
  min-height: min(780px, calc(100dvh - 72px));
  grid-template-columns: minmax(0, .86fr) minmax(520px, 1.14fr);
  gap: clamp(44px, 6vw, 104px);
  align-items: center;
  padding-block: clamp(74px, 9vw, 132px) 86px;
}

.of-platformFeatures__hero::before {
  position: absolute;
  inset: 4% -18% auto 28%;
  height: 1px;
  content: "";
  background: linear-gradient(90deg, transparent, rgba(85, 216, 255, .38), transparent);
  box-shadow: 0 32px 120px rgba(47, 125, 255, .22);
}

.of-platformFeatures__heroCopy {
  position: relative;
  z-index: 3;
}

.of-platformFeatures__kicker,
.of-platformStory__eyebrow,
.of-platformFeatures__sectionHeading > span,
.of-platformFeatures__closingCta > div > span,
.of-platformModules__heroCopy > span,
.of-moduleFinder__heading > div > span {
  color: #81ddff;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .19em;
  text-transform: uppercase;
}

.of-platformFeatures__kicker {
  display: inline-flex;
  align-items: center;
  gap: 11px;
}

.of-platformFeatures__kicker span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #55d8ff;
  box-shadow: 0 0 18px #2f7dff;
}

.of-platformFeatures__heroCopy h1,
.of-platformModules__heroCopy h1 {
  max-width: 900px;
  margin: 22px 0 0;
  color: #f7fbff;
  font-size: clamp(3.4rem, 6.2vw, 7.25rem);
  font-weight: 620;
  letter-spacing: -.065em;
  line-height: .92;
  text-wrap: balance;
}

.of-platformFeatures__lead {
  max-width: 730px;
  margin: 30px 0 0;
  color: #b9c8da;
  font-size: clamp(1rem, 1.4vw, 1.18rem);
  line-height: 1.8;
}

.of-platformFeatures__heroActions,
.of-platformModules__heroActions {
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 34px;
}

.of-platformFeatures__heroActions > *,
.of-platformModules__heroActions > * { min-height: 52px; }

.of-platformFeatures__boundary {
  max-width: 700px;
  margin: 20px 0 0;
  color: #65798f;
  font-size: .68rem;
  font-weight: 650;
  letter-spacing: .11em;
  line-height: 1.7;
  text-transform: uppercase;
}

.of-platformFeatures__heroVisual {
  position: relative;
  z-index: 2;
  min-width: 0;
  margin: 0;
  border: 1px solid rgba(118, 202, 255, .25);
  border-radius: 28px;
  background: rgba(2, 8, 19, .92);
  box-shadow: 0 44px 110px rgba(0, 0, 0, .5), 0 0 80px rgba(24, 119, 255, .12);
  transform: perspective(1300px) rotateY(-3deg) rotateX(1deg);
  animation: of-platform-visual-in .9s cubic-bezier(.2, .8, .2, 1) both;
}

.of-platformFeatures__heroVisual::before {
  position: absolute;
  inset: -34px -44px;
  z-index: -1;
  border-radius: 54px;
  opacity: .7;
  content: "";
  background:
    linear-gradient(90deg, transparent 49.85%, rgba(85, 216, 255, .1) 50%, transparent 50.15%),
    linear-gradient(transparent 49.85%, rgba(85, 216, 255, .08) 50%, transparent 50.15%);
  background-size: 42px 42px;
  mask-image: radial-gradient(ellipse, #000 18%, transparent 70%);
}

.of-platformFeatures__windowBar {
  display: grid;
  min-height: 50px;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border-bottom: 1px solid rgba(118, 202, 255, .15);
  padding: 9px 17px;
  color: #7890a9;
  font-size: .61rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.of-platformFeatures__windowBar > span { display: flex; gap: 6px; }
.of-platformFeatures__windowBar i { width: 7px; height: 7px; border-radius: 50%; background: #28415f; }
.of-platformFeatures__windowBar i:nth-child(2) { background: #2f7dff; }
.of-platformFeatures__windowBar i:nth-child(3) { background: #55d8ff; box-shadow: 0 0 10px rgba(85, 216, 255, .7); }
.of-platformFeatures__windowBar strong { overflow: hidden; color: #b9c9da; text-overflow: ellipsis; white-space: nowrap; }
.of-platformFeatures__windowBar em { color: #5f7690; font-style: normal; }

.of-platformFeatures__screen {
  position: relative;
  aspect-ratio: 1560 / 835;
  overflow: hidden;
  margin: 12px;
  border: 1px solid rgba(96, 165, 250, .16);
  border-radius: 18px;
  background: #020713;
}

.of-platformFeatures__screen img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.of-platformFeatures__screen::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
  background: linear-gradient(120deg, rgba(255, 255, 255, .035), transparent 24%, transparent 76%, rgba(85, 216, 255, .035));
}

.of-platformFeatures__screenScan {
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(85, 216, 255, .75), transparent);
  box-shadow: 0 0 18px rgba(85, 216, 255, .7);
  animation: of-platform-scan 7s 1.2s ease-in-out infinite;
}

.of-platformFeatures__heroVisual figcaption {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 5px 15px;
  padding: 5px 20px 20px;
}

.of-platformFeatures__heroVisual figcaption span {
  grid-row: 1 / 3;
  align-self: start;
  border: 1px solid rgba(85, 216, 255, .25);
  border-radius: 999px;
  padding: 6px 9px;
  color: #70d9ff;
  font-size: .53rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.of-platformFeatures__heroVisual figcaption strong { color: #f1f7ff; font-size: .9rem; }
.of-platformFeatures__heroVisual figcaption p { overflow: hidden; margin: 0; color: #6f839a; font-size: .69rem; text-overflow: ellipsis; white-space: nowrap; }

.of-platformFeatures__signalCard {
  position: absolute;
  display: grid;
  gap: 4px;
  border: 1px solid rgba(125, 211, 252, .24);
  border-radius: 13px;
  padding: 11px 14px;
  background: rgba(4, 15, 33, .9);
  box-shadow: 0 16px 40px rgba(0, 0, 0, .36);
  backdrop-filter: blur(14px);
  animation: of-platform-float 5s ease-in-out infinite;
}

.of-platformFeatures__signalCard span { color: #6c8097; font-size: .52rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.of-platformFeatures__signalCard strong { color: #dcedff; font-size: .68rem; }
.of-platformFeatures__signalCard.is-model { top: 20%; left: -42px; }
.of-platformFeatures__signalCard.is-handoff { right: -28px; bottom: 18%; animation-delay: -2.1s; }

.of-platformFeatures__facts { position: relative; z-index: 4; margin-top: -34px; }
.of-platformFacts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(125, 211, 252, .17);
  border-radius: 22px;
  background: rgba(4, 14, 30, .86);
  box-shadow: 0 28px 70px rgba(0, 0, 0, .3);
  backdrop-filter: blur(18px);
}

.of-platformFacts > div {
  min-width: 0;
  padding: 22px 24px;
}

.of-platformFacts > div + div { border-left: 1px solid rgba(125, 211, 252, .12); }
.of-platformFacts dt { color: #73879f; font-size: .58rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.of-platformFacts dd { display: flex; gap: 14px; align-items: center; margin: 9px 0 0; }
.of-platformFacts dd strong { flex: 0 0 auto; color: #f2f8ff; font-size: clamp(1.45rem, 2.2vw, 2.15rem); letter-spacing: -.05em; }
.of-platformFacts dd span { color: #8fa2b8; font-size: .7rem; line-height: 1.55; }
.of-platformFacts.is-compact { grid-template-columns: repeat(2, minmax(0, 1fr)); box-shadow: none; }
.of-platformFacts.is-compact > div { padding: 17px; }
.of-platformFacts.is-compact > div:nth-child(3) { border-left: 0; border-top: 1px solid rgba(125, 211, 252, .12); }
.of-platformFacts.is-compact > div:nth-child(4) { border-top: 1px solid rgba(125, 211, 252, .12); }

.of-platformFeatures__architecture,
.of-platformFeatures__learning,
.of-platformFeatures__audiences,
.of-platformFeatures__proof { margin-top: clamp(86px, 10vw, 150px); }

.of-platformStory {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(125, 211, 252, .16);
  border-radius: 32px;
  padding: clamp(26px, 4vw, 54px);
  background:
    radial-gradient(circle at 17% 60%, rgba(47, 125, 255, .14), transparent 28%),
    linear-gradient(145deg, rgba(7, 19, 40, .95), rgba(3, 9, 22, .97));
  box-shadow: 0 34px 90px rgba(0, 0, 0, .3);
}

.of-platformStory::before {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .2;
  content: "";
  background-image: linear-gradient(rgba(85, 216, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(85, 216, 255, .08) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(circle at 22% 58%, #000, transparent 66%);
}

.of-platformStory__heading {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 36px;
  align-items: end;
  justify-content: space-between;
}

.of-platformStory__heading h2,
.of-learningPath__intro h2,
.of-platformFeatures__sectionHeading h2,
.of-moduleFinder__heading h2 {
  max-width: 820px;
  margin: 10px 0 0;
  color: #f3f8ff;
  font-size: clamp(2rem, 4vw, 4.3rem);
  font-weight: 620;
  letter-spacing: -.05em;
  line-height: 1.02;
  text-wrap: balance;
}

.of-platformStory__heading > p {
  max-width: 470px;
  margin: 0;
  color: #8fa2b8;
  font-size: .85rem;
  line-height: 1.75;
}

.of-platformStory__map {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(260px, .7fr) minmax(0, 1.3fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: center;
  margin-top: 44px;
}

.of-platformStory__core {
  position: relative;
  display: grid;
  aspect-ratio: 1;
  place-items: center;
  align-content: center;
  border: 1px solid rgba(85, 216, 255, .24);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(38, 128, 255, .22), rgba(4, 15, 33, .74) 54%, rgba(2, 8, 19, .9) 70%);
  box-shadow: inset 0 0 70px rgba(0, 110, 255, .13), 0 0 72px rgba(0, 102, 255, .12);
}

.of-platformStory__core::before,
.of-platformStory__core::after {
  position: absolute;
  border: 1px solid rgba(85, 216, 255, .18);
  border-radius: 50%;
  content: "";
}

.of-platformStory__core::before { inset: 8%; animation: of-platform-orbit 20s linear infinite; }
.of-platformStory__core::after { inset: 18% -6%; border-color: rgba(143, 124, 255, .18); transform: rotate(35deg); }
.of-platformStory__core span { color: #75d9ff; font-size: .56rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.of-platformStory__core strong { margin-top: 9px; color: #f4f9ff; font-size: clamp(1.7rem, 3vw, 3rem); letter-spacing: -.05em; }
.of-platformStory__core small { margin-top: 7px; color: #7890a9; font-size: .68rem; }
.of-platformStory__core i { position: absolute; top: 12%; right: 21%; width: 8px; height: 8px; border-radius: 50%; background: #55d8ff; box-shadow: 0 0 20px #2f7dff; }

.of-platformStory__layers {
  position: relative;
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.of-platformStory__layers::before {
  position: absolute;
  top: 24px;
  bottom: 24px;
  left: 22px;
  width: 1px;
  content: "";
  background: linear-gradient(#55d8ff, #2f7dff, #8f7cff);
  opacity: .4;
}

.of-platformStory__layers li {
  position: relative;
  animation: of-platform-layer-in .55s calc(var(--story-index) * 80ms) ease both;
}

.of-platformStory__layerAction {
  display: grid;
  width: 100%;
  min-height: 70px;
  grid-template-columns: 46px minmax(0, 1fr) 30px;
  gap: 14px;
  align-items: center;
  border: 1px solid rgba(125, 211, 252, .12);
  border-radius: 15px;
  padding: 11px 14px 11px 10px;
  color: inherit;
  background: rgba(5, 16, 34, .76);
  text-align: left;
  text-decoration: none;
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.of-platformStory__layerAction:hover,
.of-platformStory__layerAction:focus-visible,
.of-platformStory__layers li.is-active .of-platformStory__layerAction {
  border-color: rgba(85, 216, 255, .42);
  background: linear-gradient(90deg, rgba(47, 125, 255, .15), rgba(8, 23, 45, .9));
  transform: translateX(4px);
}

.of-platformStory__step {
  position: relative;
  z-index: 2;
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border: 1px solid rgba(85, 216, 255, .3);
  border-radius: 50%;
  color: #80dcff;
  background: #07162c;
  font-size: .66rem;
  font-weight: 850;
}

.of-platformStory__layerCopy { display: grid; min-width: 0; gap: 3px; }
.of-platformStory__layerCopy small { color: #6f849b; font-size: .55rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.of-platformStory__layerCopy strong { color: #eaf4ff; font-size: .9rem; }
.of-platformStory__layerCopy em { overflow: hidden; color: #70849b; font-size: .61rem; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.of-platformStory__arrow { color: #51708e; font-size: 1rem; }

.of-platformStory.is-compact { padding: 32px; }
.of-platformStory.is-compact .of-platformStory__heading h2 { font-size: clamp(1.8rem, 3.2vw, 3.25rem); }
.of-platformStory.is-compact .of-platformStory__map { grid-template-columns: minmax(220px, .6fr) minmax(0, 1.4fr); margin-top: 32px; }
.of-platformStory.is-compact .of-platformStory__core { width: min(100%, 300px); justify-self: center; }

.of-platformFeatures__selectorSection {
  margin-top: clamp(86px, 10vw, 150px) !important;
  border: 1px solid rgba(125, 211, 252, .14) !important;
  border-radius: 26px !important;
  padding: 22px !important;
  background: rgba(4, 13, 28, .78) !important;
  box-shadow: 0 28px 70px rgba(0, 0, 0, .25);
}

.of-platformFeatures__selectorHelp { margin: 10px 0 17px; color: #8599b0; font-size: .8rem; line-height: 1.7; }

.of-platformFeatures .of-selectorRail,
.of-platformModules .of-selectorRail {
  display: grid !important;
  grid-template-columns: none !important;
  grid-auto-flow: column !important;
  grid-auto-columns: clamp(84px, 7.5vw, 108px) !important;
  gap: 8px !important;
  overflow-x: auto !important;
  overscroll-behavior-inline: contain;
  padding: 6px 3px 12px !important;
  scrollbar-color: rgba(85, 216, 255, .42) rgba(8, 23, 43, .65);
  scroll-padding-inline: 5px;
  scroll-snap-type: x proximity;
}

.of-platformFeatures .of-selectorRail__tile,
.of-platformModules .of-selectorRail__tile {
  width: auto !important;
  min-width: 0 !important;
  min-height: 64px !important;
  scroll-snap-align: start;
}

.of-platformFeatures .of-selectorRail__image,
.of-platformModules .of-selectorRail__image { width: 100% !important; height: auto !important; }

.of-platformFeatures__deepDive { margin-top: 54px !important; }
.of-platformFeatures__deepDiveTitle { display: flex !important; gap: 36px; align-items: end; justify-content: space-between; }
.of-platformFeatures__deepDiveTitle > div { flex: 1 1 420px; }
.of-platformFeatures__deepDiveTitle > p { flex: 0 1 600px; }
.of-platformFeatures__sectionIndex { color: #70d9ff; font-size: .62rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.of-platformFeatures__deepDiveTitle h2 { margin-top: 8px !important; font-size: clamp(2.4rem, 5vw, 5.4rem) !important; letter-spacing: -.055em !important; }
.of-platformFeatures__visualTags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.of-platformFeatures__visualTags span { border: 1px solid rgba(125, 211, 252, .18); border-radius: 999px; padding: 6px 10px; color: #8ddfff; background: rgba(5, 16, 34, .7); font-size: .57rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.of-platformFeatures__contextGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
.of-platformFeatures__contextGrid > div { border: 1px solid rgba(125, 211, 252, .12); border-radius: 15px; padding: 15px; background: rgba(3, 11, 24, .7); }
.of-platformFeatures__contextGrid span,
.of-platformFeatures__pairings > span { color: #6f849b; font-size: .56rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.of-platformFeatures__contextGrid strong { display: block; margin-top: 8px; color: #e3effc; font-size: .77rem; }
.of-platformFeatures__contextGrid p { margin: 8px 0 0; color: #8fa2b8; font-size: .72rem; line-height: 1.65; }
.of-platformFeatures__pairings { margin-top: 22px; border-top: 1px solid rgba(125, 211, 252, .12); padding-top: 17px; }
.of-platformFeatures__pairings > div { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 10px; }
.of-platformFeatures__pairings a { display: inline-flex; min-height: 38px; align-items: center; gap: 8px; border: 1px solid rgba(125, 211, 252, .17); border-radius: 999px; padding: 7px 11px; color: #c8d9ea; background: rgba(3, 12, 26, .72); font-size: .66rem; text-decoration: none; }
.of-platformFeatures__pairings a:hover,
.of-platformFeatures__pairings a:focus-visible { border-color: rgba(85, 216, 255, .55); color: #fff; }

.of-platformFeatures__evidence { margin-top: 58px; }
.of-productEvidence { position: relative; overflow: hidden; border: 1px solid rgba(125, 211, 252, .16); border-radius: 30px; padding: clamp(24px, 4vw, 48px); background: radial-gradient(circle at 82% 6%, rgba(47, 125, 255, .17), transparent 29%), linear-gradient(145deg, rgba(7, 22, 44, .92), rgba(2, 9, 21, .96)); box-shadow: 0 30px 90px rgba(0, 0, 0, .24); }
.of-productEvidence::before { position: absolute; inset: 0; pointer-events: none; content: ""; background-image: linear-gradient(rgba(90, 193, 255, .026) 1px, transparent 1px), linear-gradient(90deg, rgba(90, 193, 255, .026) 1px, transparent 1px); background-size: 34px 34px; mask-image: linear-gradient(to bottom, #000, transparent 75%); }
.of-productEvidence__heading { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(280px, .7fr); gap: 40px; align-items: end; }
.of-productEvidence__heading span { color: #74dbff; font-size: .62rem; font-weight: 820; letter-spacing: .18em; text-transform: uppercase; }
.of-productEvidence__heading h2 { max-width: 850px; margin: 13px 0 0; color: #f2f8ff; font-size: clamp(2.1rem, 4.4vw, 4.85rem); font-weight: 620; letter-spacing: -.052em; line-height: 1; text-wrap: balance; }
.of-productEvidence__heading > p { margin: 0; color: #92a6bc; font-size: .8rem; line-height: 1.8; }
.of-productEvidence__stages { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; margin: 38px 0 0; padding: 0; list-style: none; }
.of-productEvidence__stages > li { position: relative; min-width: 0; }
.of-productEvidence__stages > li:not(:last-child)::after { position: absolute; top: 35%; right: -13px; z-index: 4; display: grid; width: 26px; height: 26px; place-items: center; border: 1px solid rgba(85, 216, 255, .36); border-radius: 50%; color: #6edaff; background: #07162c; content: "→"; font-size: .65rem; box-shadow: 0 0 20px rgba(47, 125, 255, .24); }
.of-productEvidence__stages a { display: block; height: 100%; overflow: hidden; border: 1px solid rgba(125, 211, 252, .14); border-radius: 20px; color: inherit; background: rgba(2, 10, 23, .8); text-decoration: none; transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease; }
.of-productEvidence__stages a:hover,
.of-productEvidence__stages a:focus-visible { border-color: rgba(85, 216, 255, .48); transform: translateY(-5px); box-shadow: 0 24px 55px rgba(0, 0, 0, .32); }
.of-productEvidence__screen { position: relative; aspect-ratio: 1.868 / 1; overflow: hidden; border-bottom: 1px solid rgba(125, 211, 252, .12); background: #010711; }
.of-productEvidence__screen::after { position: absolute; inset: -20% 0 auto; height: 18%; pointer-events: none; content: ""; background: linear-gradient(to bottom, transparent, rgba(97, 211, 255, .13), transparent); opacity: 0; }
.of-productEvidence__stages a:hover .of-productEvidence__screen::after { animation: of-evidence-scan 1.8s ease-out; }
.of-productEvidence__screen img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s cubic-bezier(.2, .8, .2, 1); }
.of-productEvidence__stages a:hover img { transform: scale(1.025); }
.of-productEvidence__screen > span { position: absolute; right: 9px; bottom: 9px; border: 1px solid rgba(125, 211, 252, .24); border-radius: 999px; padding: 5px 8px; color: #b8e9ff; background: rgba(1, 8, 19, .86); font-size: .48rem; font-weight: 760; letter-spacing: .08em; text-transform: uppercase; backdrop-filter: blur(12px); }
.of-productEvidence__copy { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; align-items: start; padding: 18px; }
.of-productEvidence__copy > span { color: #4f8ab5; font-size: 1.4rem; font-weight: 300; letter-spacing: -.06em; }
.of-productEvidence__copy small { display: block; color: #6bd9ff; font-size: .52rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.of-productEvidence__copy h3 { margin: 6px 0 0; color: #eff8ff; font-size: 1rem; }
.of-productEvidence__copy p { margin: 9px 0 0; color: #8296ad; font-size: .68rem; line-height: 1.65; }
.of-productEvidence__copy > i { color: #5c819f; font-size: .8rem; font-style: normal; }
.of-productEvidence__legend { position: relative; z-index: 2; display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 24px; border-top: 1px solid rgba(125, 211, 252, .11); padding-top: 19px; color: #8196ad; font-size: .65rem; }
.of-productEvidence__legend span { display: inline-flex; align-items: center; gap: 8px; }
.of-productEvidence__legend i { width: 6px; height: 6px; border-radius: 50%; background: #4acdfb; box-shadow: 0 0 12px rgba(74, 205, 251, .8); }

.of-learningPath {
  border-top: 1px solid rgba(125, 211, 252, .16);
  border-bottom: 1px solid rgba(125, 211, 252, .16);
  padding-block: 70px;
}

.of-learningPath__intro { display: grid; max-width: 940px; }
.of-learningPath__intro > p { max-width: 720px; margin: 20px 0 0; color: #91a4ba; line-height: 1.75; }
.of-learningPath__chapters { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 42px 0 0; padding: 0; list-style: none; }
.of-learningPath__chapters > li { position: relative; display: flex; min-width: 0; flex-direction: column; border: 1px solid rgba(125, 211, 252, .13); border-radius: 19px; padding: 18px; background: linear-gradient(155deg, rgba(8, 23, 44, .82), rgba(3, 10, 23, .88)); transition: border-color .2s ease, transform .2s ease; }
.of-learningPath__chapters > li::after { position: absolute; top: 39px; right: -11px; z-index: 2; color: #3c668c; content: "→"; font-size: .8rem; }
.of-learningPath__chapters > li:last-child::after { display: none; }
.of-learningPath__chapters > li.is-active { border-color: rgba(85, 216, 255, .47); transform: translateY(-5px); box-shadow: 0 20px 50px rgba(17, 87, 184, .12); }
.of-learningPath__chapterHead { display: flex; gap: 12px; align-items: center; }
.of-learningPath__chapterHead > span { color: #62d5ff; font-size: .7rem; font-weight: 850; }
.of-learningPath__chapterHead small { color: #687d94; font-size: .52rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.of-learningPath__chapterHead h3 { margin: 4px 0 0; color: #edf6ff; font-size: 1rem; }
.of-learningPath__chapters > li > p { min-height: 112px; margin: 17px 0 0; color: #879bb2; font-size: .72rem; line-height: 1.7; }
.of-learningPath__modules { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 15px; }
.of-learningPath__modules a,
.of-learningPath__modules button { min-height: 34px; border: 1px solid rgba(125, 211, 252, .14); border-radius: 999px; padding: 6px 9px; color: #aebfd1; background: rgba(2, 9, 21, .8); font-size: .58rem; text-align: left; text-decoration: none; }
.of-learningPath__modules a:hover,
.of-learningPath__modules a:focus-visible,
.of-learningPath__modules button:hover,
.of-learningPath__modules button:focus-visible,
.of-learningPath__modules .is-active { border-color: rgba(85, 216, 255, .6); color: #eaf8ff; background: rgba(47, 125, 255, .16); }
.of-learningPath__outcome { margin-top: auto; border-top: 1px solid rgba(125, 211, 252, .1); padding-top: 16px; color: #9dafc2; font-size: .67rem; line-height: 1.6; }
.of-learningPath__outcome span { display: block; margin-bottom: 5px; color: #62d5ff; font-size: .51rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }

.of-platformFeatures__sectionHeading { display: grid; max-width: 940px; }
.of-platformFeatures__sectionHeading > p { max-width: 720px; margin: 20px 0 0; color: #8fa2b8; line-height: 1.75; }
.of-platformFeatures__audienceGrid,
.of-platformFeatures__proofGrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; margin-top: 38px; }
.of-platformFeatures__audienceGrid article,
.of-platformFeatures__proofGrid article { position: relative; overflow: hidden; border: 1px solid rgba(125, 211, 252, .13); border-radius: 23px; padding: 25px; background: linear-gradient(145deg, rgba(7, 21, 42, .85), rgba(3, 10, 23, .9)); }
.of-platformFeatures__audienceGrid article > span { color: #4a89b9; font-size: 2.2rem; font-weight: 300; letter-spacing: -.05em; }
.of-platformFeatures__audienceGrid h3,
.of-platformFeatures__proofGrid h3 { margin: 18px 0 0; color: #edf6ff; font-size: 1.14rem; }
.of-platformFeatures__audienceGrid p,
.of-platformFeatures__proofGrid p { margin: 13px 0 0; color: #8ca0b7; font-size: .8rem; line-height: 1.75; }
.of-platformFeatures__audienceGrid article > div { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 22px; }
.of-platformFeatures__audienceGrid a { border-radius: 999px; padding: 6px 9px; color: #8ddfff; background: rgba(47, 125, 255, .1); font-size: .59rem; text-decoration: none; }
.of-platformFeatures__proofGrid article > span { color: #68d8ff; font-size: .58rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.of-platformFeatures__closingCta { display: flex; gap: 32px; align-items: end; justify-content: space-between; margin-top: 14px; border: 1px solid rgba(85, 216, 255, .22); border-radius: 25px; padding: clamp(24px, 4vw, 44px); background: radial-gradient(circle at 86% 20%, rgba(47, 125, 255, .2), transparent 36%), #07162c; }
.of-platformFeatures__closingCta h2 { max-width: 830px; margin: 10px 0 0; color: #f3f8ff; font-size: clamp(1.7rem, 3vw, 3.2rem); font-weight: 620; letter-spacing: -.045em; line-height: 1.08; }
.of-platformFeatures__closingCta > div:last-child { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: 10px; }

.of-platformModules { position: relative; padding-bottom: 100px !important; }
.of-platformModules__hero { display: grid; grid-template-columns: minmax(0, .92fr) minmax(520px, 1.08fr); gap: clamp(36px, 5vw, 76px); align-items: center; padding-block: 54px 68px; }
.of-platformModules__heroCopy h1 { max-width: 880px; font-size: clamp(3.2rem, 5.45vw, 6.6rem); }
.of-platformModules__heroCopy > p { max-width: 800px; margin: 27px 0 0; color: #a8bacd; font-size: 1rem; line-height: 1.8; }
.of-platformModules__heroVisual { display: grid; min-width: 0; gap: 18px; }
.of-platformModules__heroVisual .of-platformFacts { position: relative; z-index: 3; margin: -4px 10px 0; }
.of-platformModules__map { margin-top: 20px; }

.of-moduleFinder {
  margin-top: 22px;
  scroll-margin-top: 100px;
  border: 1px solid rgba(125, 211, 252, .15);
  border-radius: 24px;
  padding: 24px;
  background: rgba(4, 14, 30, .84);
}

.of-moduleFinder__heading { display: flex; gap: 28px; align-items: end; justify-content: space-between; }
.of-moduleFinder__heading h2 { font-size: clamp(1.65rem, 3vw, 2.8rem); }
.of-moduleFinder__heading > p { max-width: 490px; margin: 0; color: #8196ad; font-size: .78rem; line-height: 1.7; }
.of-moduleFinder__controls { display: grid; grid-template-columns: auto minmax(280px, 1fr); gap: 16px; align-items: center; margin-top: 24px; }
.of-moduleFinder__categories { display: flex; flex-wrap: wrap; gap: 7px; }
.of-moduleFinder__categories button { min-height: 44px; border: 1px solid rgba(125, 211, 252, .17); border-radius: 999px; padding: 8px 14px; color: #91a5bb; background: rgba(2, 10, 23, .75); font-size: .68rem; font-weight: 750; }
.of-moduleFinder__categories button:hover,
.of-moduleFinder__categories button:focus-visible,
.of-moduleFinder__categories button.is-active { border-color: rgba(85, 216, 255, .58); color: #ecf9ff; background: rgba(47, 125, 255, .16); }
.of-moduleFinder__search { position: relative; display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: center; border: 1px solid rgba(125, 211, 252, .2); border-radius: 15px; padding: 4px 5px 4px 12px; background: #020b19; }
.of-moduleFinder__search:focus-within { border-color: rgba(85, 216, 255, .58); box-shadow: 0 0 0 3px rgba(47, 125, 255, .12); }
.of-moduleFinder__search label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.of-moduleFinder__search > span { color: #5f7892; font-size: 1.15rem; }
.of-moduleFinder__search input { width: 100%; min-height: 44px; border: 0; outline: 0; color: #e8f4ff; background: transparent; font: inherit; font-size: .8rem; }
.of-moduleFinder__search input::placeholder { color: #52687e; }
.of-moduleFinder__search button { min-height: 36px; border: 0; border-radius: 10px; padding: 7px 11px; color: #8edfff; background: rgba(47, 125, 255, .13); font-size: .66rem; }
.of-moduleFinder__status { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 14px; color: #71869d; font-size: .68rem; }
.of-moduleFinder__status strong { color: #d9edff; }
.of-moduleFinder__status span::before { margin-right: 5px; content: "·"; }
.of-moduleFinder__empty { display: flex; gap: 12px; align-items: center; margin-top: 15px; border: 1px dashed rgba(125, 211, 252, .22); border-radius: 14px; padding: 14px; color: #8ea2b9; font-size: .75rem; }
.of-moduleFinder__empty strong { color: #eff8ff; }
.of-moduleFinder__empty button { margin-left: auto; min-height: 40px; border: 1px solid rgba(85, 216, 255, .35); border-radius: 10px; padding: 7px 12px; color: #a8eaff; background: rgba(47, 125, 255, .13); }

.of-moduleLearningBrief { display: grid; grid-template-columns: minmax(260px, .82fr) minmax(360px, 1.2fr) minmax(230px, .65fr); gap: 12px; margin-top: 22px; border: 1px solid rgba(125, 211, 252, .16); border-radius: 27px; padding: 14px; background: radial-gradient(circle at 8% 0, rgba(47, 125, 255, .12), transparent 30%), rgba(3, 12, 27, .88); }
.of-moduleLearningBrief__intro,
.of-moduleLearningBrief__handoff { border: 1px solid rgba(125, 211, 252, .11); border-radius: 20px; padding: 22px; background: rgba(3, 11, 24, .72); }
.of-moduleLearningBrief__intro > span,
.of-moduleLearningBrief__handoff > span { color: #67d7ff; font-size: .56rem; font-weight: 820; letter-spacing: .16em; text-transform: uppercase; }
.of-moduleLearningBrief__intro h2 { margin: 11px 0 0; color: #f1f8ff; font-size: clamp(1.55rem, 2.6vw, 2.45rem); font-weight: 630; letter-spacing: -.04em; line-height: 1.05; }
.of-moduleLearningBrief__intro > p { margin: 15px 0 0; color: #92a5bb; font-size: .72rem; line-height: 1.75; }
.of-moduleLearningBrief__intro dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; margin: 17px 0 0; }
.of-moduleLearningBrief__intro dl > div { border: 1px solid rgba(125, 211, 252, .1); border-radius: 11px; padding: 10px; background: rgba(1, 8, 19, .62); }
.of-moduleLearningBrief__intro dt { color: #61778f; font-size: .49rem; font-weight: 780; letter-spacing: .1em; text-transform: uppercase; }
.of-moduleLearningBrief__intro dd { overflow-wrap: anywhere; margin: 7px 0 0; color: #d6e6f5; font-size: .64rem; line-height: 1.45; }
.of-moduleLearningBrief__intro > a { display: inline-flex; min-height: 44px; align-items: center; gap: 12px; margin-top: 17px; color: #9ce5ff; font-size: .68rem; font-weight: 750; text-decoration: none; }
.of-moduleLearningBrief__intro > a:hover,
.of-moduleLearningBrief__intro > a:focus-visible { color: #fff; }
.of-moduleLearningBrief__steps { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.of-moduleLearningBrief__steps li { position: relative; display: grid; grid-template-columns: 35px minmax(0, 1fr); gap: 13px; align-items: start; border: 1px solid rgba(125, 211, 252, .11); border-radius: 17px; padding: 17px; background: linear-gradient(145deg, rgba(6, 20, 40, .83), rgba(2, 9, 21, .84)); }
.of-moduleLearningBrief__steps li:not(:last-child)::after { position: absolute; left: 33px; bottom: -10px; z-index: 2; color: #48789c; content: "↓"; font-size: .62rem; }
.of-moduleLearningBrief__steps li > span { display: grid; width: 32px; height: 32px; place-items: center; border: 1px solid rgba(85, 216, 255, .27); border-radius: 9px; color: #6ad9ff; background: rgba(47, 125, 255, .09); font-size: .56rem; font-weight: 820; }
.of-moduleLearningBrief__steps small { color: #5b7893; font-size: .49rem; font-weight: 820; letter-spacing: .11em; text-transform: uppercase; }
.of-moduleLearningBrief__steps h3 { margin: 4px 0 0; color: #e9f5ff; font-size: .86rem; }
.of-moduleLearningBrief__steps p { margin: 7px 0 0; color: #8296ad; font-size: .64rem; line-height: 1.58; }
.of-moduleLearningBrief__handoff { display: flex; flex-direction: column; }
.of-moduleLearningBrief__handoff > p { margin: 12px 0 0; color: #8297ad; font-size: .7rem; line-height: 1.65; }
.of-moduleLearningBrief__handoff > div { display: grid; gap: 7px; margin-top: 16px; }
.of-moduleLearningBrief__handoff a { display: flex; min-height: 42px; align-items: center; justify-content: space-between; border: 1px solid rgba(125, 211, 252, .13); border-radius: 11px; padding: 9px 11px; color: #c8d9e9; background: rgba(1, 8, 19, .64); font-size: .64rem; text-decoration: none; }
.of-moduleLearningBrief__handoff a:hover,
.of-moduleLearningBrief__handoff a:focus-visible { border-color: rgba(85, 216, 255, .45); color: #fff; }
.of-moduleLearningBrief__handoff > small { margin-top: auto; border-top: 1px solid rgba(125, 211, 252, .1); padding-top: 15px; color: #61778e; font-size: .56rem; line-height: 1.55; }

@keyframes of-platform-visual-in { from { opacity: 0; transform: perspective(1300px) rotateY(-7deg) translate3d(32px, 14px, 0) scale(.96); } }
@keyframes of-platform-scan { 0%, 14% { top: 0; opacity: 0; } 30% { opacity: .8; } 68% { top: 100%; opacity: .35; } 69%, 100% { opacity: 0; } }
@keyframes of-platform-float { 50% { transform: translateY(-8px); } }
@keyframes of-platform-orbit { to { transform: rotate(360deg); } }
@keyframes of-platform-layer-in { from { opacity: 0; transform: translateX(15px); } }
@keyframes of-evidence-scan { 0% { top: -20%; opacity: 0; } 25% { opacity: 1; } 100% { top: 110%; opacity: 0; } }

@media (max-width: 1180px) {
  .of-platformFeatures__hero { min-height: auto; grid-template-columns: 1fr; }
  .of-platformFeatures__heroCopy { max-width: 900px; }
  .of-platformFeatures__heroVisual { width: min(100%, 960px); transform: none; }
  .of-platformFeatures__signalCard.is-model { left: 18px; }
  .of-platformFeatures__signalCard.is-handoff { right: 18px; }
  .of-learningPath__chapters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .of-learningPath__chapters > li::after { display: none; }
  .of-learningPath__chapters > li:last-child { grid-column: 1 / -1; }
  .of-learningPath__chapters > li > p { min-height: auto; }
  .of-platformModules__hero { grid-template-columns: 1fr; }
  .of-platformModules__heroVisual { width: min(100%, 980px); }
  .of-platformModules__hero .of-platformFacts { max-width: 760px; }
  .of-moduleFinder__controls { grid-template-columns: 1fr; }
  .of-moduleLearningBrief { grid-template-columns: minmax(280px, .8fr) minmax(380px, 1.2fr); }
  .of-moduleLearningBrief__handoff { grid-column: 1 / -1; }
  .of-moduleLearningBrief__handoff > div { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .of-moduleLearningBrief__handoff > small { margin-top: 17px; }
}

@media (max-width: 820px) {
  .of-platformFeatures__hero { gap: 42px; padding-top: 70px; }
  .of-platformFeatures__heroCopy h1,
  .of-platformModules__heroCopy h1 { font-size: clamp(3rem, 11vw, 5.4rem); }
  .of-platformFeatures__heroVisual { border-radius: 21px; }
  .of-platformFeatures__windowBar { grid-template-columns: 54px minmax(0, 1fr); }
  .of-platformFeatures__windowBar em { display: none; }
  .of-platformFeatures__signalCard { display: none; }
  .of-platformFacts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .of-platformFacts > div:nth-child(3) { border-left: 0; border-top: 1px solid rgba(125, 211, 252, .12); }
  .of-platformFacts > div:nth-child(4) { border-top: 1px solid rgba(125, 211, 252, .12); }
  .of-platformStory__heading,
  .of-moduleFinder__heading { display: grid; align-items: start; }
  .of-platformStory__map,
  .of-platformStory.is-compact .of-platformStory__map { grid-template-columns: 1fr; }
  .of-platformStory__core,
  .of-platformStory.is-compact .of-platformStory__core { width: min(62vw, 320px); justify-self: center; }
  .of-platformFeatures__deepDiveTitle { display: grid !important; align-items: start; }
  .of-platformFeatures__audienceGrid,
  .of-platformFeatures__proofGrid { grid-template-columns: 1fr; }
  .of-platformFeatures__closingCta { display: grid; align-items: start; }
  .of-platformFeatures__closingCta > div:last-child { flex: 1 1 auto; }
  .of-productEvidence__heading { grid-template-columns: 1fr; gap: 18px; align-items: start; }
  .of-productEvidence__stages { grid-template-columns: 1fr; }
  .of-productEvidence__stages > li:not(:last-child)::after { top: auto; right: 50%; bottom: -19px; transform: translateX(50%) rotate(90deg); }
  .of-moduleLearningBrief { grid-template-columns: 1fr; }
  .of-moduleLearningBrief__handoff { grid-column: auto; }
  .of-moduleLearningBrief__handoff > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
  .of-platformFeatures { padding-bottom: 64px; }
  .of-platformFeatures__hero { padding-block: 58px 55px; }
  .of-platformFeatures__heroCopy h1,
  .of-platformModules__heroCopy h1 { font-size: clamp(2.75rem, 14vw, 4.2rem); }
  .of-platformFeatures__heroActions > *,
  .of-platformModules__heroActions > * { width: 100%; }
  .of-platformModules__hero { padding-top: 32px; }
  .of-platformModules__heroVisual .of-platformFacts { margin-inline: 0; }
  .of-platformFeatures__facts { margin-top: -10px; }
  .of-platformFacts,
  .of-platformFacts.is-compact { grid-template-columns: 1fr; }
  .of-platformFacts > div + div,
  .of-platformFacts.is-compact > div:nth-child(2),
  .of-platformFacts.is-compact > div:nth-child(3),
  .of-platformFacts.is-compact > div:nth-child(4) { border-top: 1px solid rgba(125, 211, 252, .12); border-left: 0; }
  .of-platformFacts dd { justify-content: space-between; }
  .of-platformStory,
  .of-platformStory.is-compact { border-radius: 23px; padding: 22px 16px; }
  .of-platformStory__core,
  .of-platformStory.is-compact .of-platformStory__core { width: min(74vw, 290px); }
  .of-platformStory__layerAction { grid-template-columns: 44px minmax(0, 1fr) 18px; gap: 9px; }
  .of-platformStory__layerCopy em { white-space: normal; }
  .of-platformFeatures__selectorSection { padding: 16px 12px !important; }
  .of-platformFeatures .of-selectorRail,
  .of-platformModules .of-selectorRail { grid-auto-columns: 88px !important; }
  .of-platformFeatures .of-selectorRail__tile,
  .of-platformModules .of-selectorRail__tile { min-height: 72px !important; }
  .of-platformFeatures__contextGrid,
  .of-learningPath__chapters { grid-template-columns: 1fr; }
  .of-learningPath { padding-block: 54px; }
  .of-learningPath__chapters > li:last-child { grid-column: auto; }
  .of-platformFeatures__closingCta > div:last-child > * { width: 100%; }
  .of-productEvidence { border-radius: 22px; padding: 20px 14px; }
  .of-productEvidence__heading h2 { font-size: clamp(2rem, 11vw, 3.2rem); }
  .of-productEvidence__legend { display: grid; }
  .of-platformModules { padding-top: 18px !important; }
  .of-platformModules__hero { padding-block: 24px 42px; }
  .of-moduleFinder { padding: 18px 14px; }
  .of-moduleFinder__categories { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .of-moduleFinder__categories button:first-child { grid-column: 1 / -1; }
  .of-moduleFinder__empty { align-items: stretch; flex-direction: column; }
  .of-moduleFinder__empty button { margin-left: 0; }
  .of-moduleLearningBrief { border-radius: 21px; padding: 9px; }
  .of-moduleLearningBrief__intro,
  .of-moduleLearningBrief__handoff { padding: 18px; }
  .of-moduleLearningBrief__handoff > div { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .of-platformFeatures *,
  .of-platformFeatures *::before,
  .of-platformFeatures *::after,
  .of-platformModules *,
  .of-platformModules *::before,
  .of-platformModules *::after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition-duration: .01ms !important;
  }
}

/* 0.5.5 — module operating dossiers and detailed catalog cards */
.of-platformFeatures__capability { margin-top: 24px !important; }

.of-moduleCapability {
  position: relative;
  overflow: hidden;
  margin-top: 24px;
  border: 1px solid rgba(125, 211, 252, .17);
  border-radius: 30px;
  padding: clamp(22px, 3vw, 38px);
  background:
    radial-gradient(circle at 92% 0, rgba(92, 75, 180, .13), transparent 28%),
    radial-gradient(circle at 0 45%, rgba(47, 125, 255, .11), transparent 34%),
    rgba(3, 12, 27, .92);
  box-shadow: 0 26px 80px rgba(0, 0, 0, .22);
}

.of-moduleCapability::before {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
  opacity: .2;
  background-image:
    linear-gradient(rgba(91, 220, 255, .08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(91, 220, 255, .08) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(90deg, #000, transparent 62%);
}

.of-moduleCapability > * { position: relative; z-index: 1; }
.of-moduleCapability__header { display: grid; grid-template-columns: minmax(280px, .9fr) minmax(320px, 1.1fr); gap: clamp(24px, 5vw, 72px); align-items: end; }
.of-moduleCapability__header > div > span,
.of-moduleCapability__workflowHeading > span,
.of-moduleCapability__boundary > span,
.of-moduleCapability__route > span,
.of-moduleCapability__footer nav > span { color: #66d8ff; font-size: .57rem; font-weight: 820; letter-spacing: .17em; text-transform: uppercase; }
.of-moduleCapability__header h2 { max-width: 790px; margin: 10px 0 0; color: #f2f8ff; font-size: clamp(1.8rem, 3.5vw, 3.55rem); font-weight: 630; letter-spacing: -.045em; line-height: 1.04; text-wrap: balance; }
.of-moduleCapability__header > p { margin: 0; color: #91a5bb; font-size: .78rem; line-height: 1.78; }

.of-moduleCapability__architecture { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 28px; }
.of-moduleCapability__layer { min-width: 0; border: 1px solid rgba(125, 211, 252, .13); border-radius: 20px; padding: 19px; background: linear-gradient(145deg, rgba(7, 23, 44, .88), rgba(1, 8, 19, .82)); }
.of-moduleCapability__layerLabel { display: flex; gap: 10px; align-items: center; border-bottom: 1px solid rgba(125, 211, 252, .1); padding-bottom: 13px; }
.of-moduleCapability__layerLabel > span { display: grid; width: 28px; height: 28px; place-items: center; border: 1px solid rgba(85, 216, 255, .28); border-radius: 8px; color: #6bddff; background: rgba(47, 125, 255, .1); font-size: .5rem; font-weight: 850; }
.of-moduleCapability__layerLabel > strong { color: #e7f4ff; font-size: .72rem; letter-spacing: .02em; }
.of-moduleCapability__layer > ul { display: grid; gap: 10px; margin: 15px 0 0; padding: 0; list-style: none; }
.of-moduleCapability__layer > ul > li { display: grid; grid-template-columns: 7px minmax(0, 1fr); gap: 10px; align-items: start; color: #8fa4ba; font-size: .67rem; line-height: 1.55; }
.of-moduleCapability__layer > ul > li > i { width: 5px; height: 5px; margin-top: .45em; border-radius: 50%; background: #52d5ff; box-shadow: 0 0 10px rgba(82, 213, 255, .55); }

.of-moduleCapability__workflow { margin-top: 12px; border: 1px solid rgba(125, 211, 252, .13); border-radius: 22px; padding: 20px; background: rgba(2, 9, 21, .76); }
.of-moduleCapability__workflowHeading { display: flex; gap: 16px; align-items: baseline; justify-content: space-between; }
.of-moduleCapability__workflowHeading > strong { color: #cfe2f2; font-size: .72rem; font-weight: 650; }
.of-moduleCapability__workflow > ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; margin: 17px 0 0; padding: 0; list-style: none; }
.of-moduleCapability__workflow > ol > li { position: relative; display: grid; min-width: 0; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; border: 1px solid rgba(125, 211, 252, .1); border-radius: 16px; padding: 16px; background: rgba(5, 18, 36, .74); }
.of-moduleCapability__workflow > ol > li:not(:last-child)::after { position: absolute; top: 50%; right: -8px; z-index: 2; color: #4b7797; content: "→"; font-size: .7rem; transform: translateY(-50%); }
.of-moduleCapability__step { display: grid; width: 32px; height: 32px; place-items: center; border: 1px solid rgba(118, 105, 255, .35); border-radius: 9px; color: #b7adff; background: rgba(91, 74, 210, .11); font-size: .52rem; font-weight: 850; }
.of-moduleCapability__workflow h3 { margin: 1px 0 0; color: #e9f5ff; font-size: .79rem; font-weight: 700; }
.of-moduleCapability__workflow p { margin: 8px 0 0; color: #8499af; font-size: .63rem; line-height: 1.62; }
.of-moduleCapability__workflow ol ul { display: flex; flex-wrap: wrap; gap: 5px; margin: 12px 0 0; padding: 0; list-style: none; }
.of-moduleCapability__workflow ol ul li { border: 1px solid rgba(125, 211, 252, .12); border-radius: 999px; padding: 5px 7px; color: #7390aa; background: rgba(1, 8, 19, .6); font-size: .49rem; line-height: 1.2; }

.of-moduleCapability__footer { display: grid; grid-template-columns: minmax(240px, 1.1fr) minmax(190px, .65fr) minmax(260px, 1fr); gap: 9px; margin-top: 12px; }
.of-moduleCapability__boundary,
.of-moduleCapability__route,
.of-moduleCapability__footer nav { border: 1px solid rgba(125, 211, 252, .11); border-radius: 16px; padding: 16px; background: rgba(1, 8, 19, .65); }
.of-moduleCapability__boundary p { margin: 9px 0 0; color: #7e93a9; font-size: .59rem; line-height: 1.58; }
.of-moduleCapability__route strong { display: block; margin-top: 9px; color: #d8e9f8; font-size: .65rem; line-height: 1.45; }
.of-moduleCapability__footer nav > div { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 9px; }
.of-moduleCapability__footer nav a { display: inline-flex; gap: 7px; align-items: center; border: 1px solid rgba(125, 211, 252, .13); border-radius: 999px; padding: 7px 9px; color: #a8bed1; background: rgba(6, 21, 41, .72); font-size: .55rem; text-decoration: none; }
.of-moduleCapability__footer nav a:hover,
.of-moduleCapability__footer nav a:focus-visible { border-color: rgba(85, 216, 255, .48); color: #fff; }
.of-moduleCapability.is-compact { margin-top: 0; }
.of-moduleCapability.is-compact .of-moduleCapability__header h2 { font-size: clamp(1.7rem, 3vw, 3rem); }

.of-moduleRosterCard { overflow: hidden; border: 1px solid #1e293b; border-radius: 18px; background: rgba(2, 6, 23, .66); transition: border-color .25s ease, background .25s ease, transform .25s ease; }
.of-moduleRosterCard:hover { border-color: rgba(100, 116, 139, .9); transform: translateY(-2px); }
.of-moduleRosterCard.is-selected { border-color: rgba(125, 211, 252, .48); background: rgba(56, 189, 248, .09); box-shadow: inset 0 0 34px rgba(47, 125, 255, .05); }
.of-moduleRosterCard__select { display: block; width: 100%; color: inherit; text-align: left; }
.of-moduleRosterCard__select:focus-visible { outline: 2px solid rgba(125, 211, 252, .75); outline-offset: -3px; }
.of-moduleRosterCard__content { padding: 16px 17px 17px; }
.of-moduleRosterCard__meta { display: flex; gap: 9px; align-items: center; justify-content: space-between; }
.of-moduleRosterCard__meta span { color: #6ad9ff; font-size: .52rem; font-weight: 820; letter-spacing: .15em; text-transform: uppercase; }
.of-moduleRosterCard__meta em { overflow: hidden; max-width: 62%; color: #60758c; font-size: .5rem; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.of-moduleRosterCard h3 { margin: 10px 0 0; color: #f0f7ff; font-size: 1.05rem; font-weight: 680; }
.of-moduleRosterCard__content > p { margin: 9px 0 0; color: #91a4b8; font-size: .65rem; line-height: 1.65; }
.of-moduleRosterCard__content > ul { display: grid; gap: 7px; margin: 13px 0 0; padding: 0; list-style: none; }
.of-moduleRosterCard__content > ul > li { display: grid; grid-template-columns: 6px minmax(0, 1fr); gap: 8px; color: #71879d; font-size: .58rem; line-height: 1.5; }
.of-moduleRosterCard__content > ul > li::before { width: 4px; height: 4px; margin-top: .5em; border-radius: 50%; content: ""; background: #4ecfff; }
.of-moduleRosterCard__selectLabel { display: flex; align-items: center; justify-content: space-between; margin-top: 15px; border-top: 1px solid rgba(125, 211, 252, .1); padding-top: 12px; color: #7fddff; font-size: .55rem; font-weight: 760; letter-spacing: .06em; text-transform: uppercase; }
.of-moduleRosterCard__selectLabel i { font-style: normal; }
.of-moduleRosterCard__guide { display: flex; min-height: 44px; align-items: center; justify-content: space-between; border-top: 1px solid rgba(125, 211, 252, .1); padding: 10px 17px; color: #b6c9da; background: rgba(1, 8, 19, .7); font-size: .61rem; font-weight: 690; text-decoration: none; }
.of-moduleRosterCard__guide:hover,
.of-moduleRosterCard__guide:focus-visible { color: #fff; background: rgba(47, 125, 255, .12); }

@media (max-width: 1100px) {
  .of-moduleCapability__header { grid-template-columns: 1fr; gap: 18px; align-items: start; }
  .of-moduleCapability__workflow > ol { grid-template-columns: 1fr; }
  .of-moduleCapability__workflow > ol > li:not(:last-child)::after { top: auto; right: 50%; bottom: -9px; transform: translateX(50%) rotate(90deg); }
  .of-moduleCapability__footer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .of-moduleCapability__footer nav { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .of-moduleCapability { border-radius: 23px; padding: 18px 14px; }
  .of-moduleCapability__architecture { grid-template-columns: 1fr; }
  .of-moduleCapability__workflowHeading { display: grid; }
  .of-moduleCapability__footer { grid-template-columns: 1fr; }
  .of-moduleCapability__footer nav { grid-column: auto; }
}

