.business-model-page {
  --business-blue: #184d98;
  --business-orange: #e94e0f;
  --business-peach: #fbd0b5;
  --business-ink: #3c3c3b;
  --business-paper: #f3f7fd;
  --business-rail: 1440px;
  /* IDML source-point scale: 1.7 CSS px per pt at the 1440 px design rail. */
  --business-type-6: clamp(10px, 0.708333vw, 10.8px);
  --business-type-7: clamp(11px, 0.826389vw, 12.6px);
  --business-type-8: clamp(13px, 0.944444vw, 14.4px);
  --business-type-9: clamp(14px, 1.0625vw, 16.2px);
  --business-type-10: clamp(15px, 1.180556vw, 18px);
  --business-type-14: clamp(20px, 1.652778vw, 25.2px);
  --business-type-15: clamp(21px, 1.770833vw, 27px);
  --business-type-16: clamp(23px, 1.888889vw, 28.8px);
  --business-type-18: clamp(26px, 2.125vw, 32.4px);
  --business-type-20: clamp(28px, 2.361111vw, 36px);
  --business-type-30: clamp(44px, 3.541667vw, 54px);
  --business-type-37: clamp(46px, 4.368056vw, 66.6px);
  --business-chart-title-size: clamp(16px, 1.15vw, 18px);
  --business-chart-value-size: clamp(18px, 1.25vw, 20px);
  --business-chart-year-size: clamp(16px, 1.1vw, 18px);
  --business-chart-status-size: clamp(12px, 0.86vw, 13px);
  --business-chart-canvas-width: clamp(104px, 9vw, 120px);
  min-width: 320px;
  overflow-x: hidden;
  color: var(--business-ink);
  background: var(--business-paper);
}

.runtime-picture {
  display: contents;
}

.business-model-page .v4-header {
  position: relative;
  z-index: 20;
}

.business-model-page .v4-section {
  text-decoration: none;
}

.business-model-main {
  min-height: calc(100dvh - 80px);
  overflow: clip;
  background: var(--business-paper);
}

/* Every owner span carries these values directly from resolved IDML styles. */
.business-model-main [data-source-font-family="good-pro"] {
  font-family: var(--font-report-display);
}

.business-model-main [data-source-font-family="roboto"] {
  font-family: var(--font-report-body);
}

.business-model-main [data-source-font-style="regular"],
.business-model-main [data-source-font-style="book"] {
  font-style: normal;
  font-weight: 400;
}

.business-model-main [data-source-font-style="bold"] {
  font-style: normal;
  font-weight: 700;
}

.business-model-main [data-source-point-size="6"]:not(.business-chart-card__text) {
  font-size: var(--business-type-6);
}

.business-model-main [data-source-point-size="7"]:not(.business-chart-card__text) {
  font-size: var(--business-type-7);
}

.business-model-main [data-source-point-size="8"]:not(.business-chart-card__text) {
  font-size: var(--business-type-8);
}

.business-model-main [data-source-point-size="9"]:not(.business-chart-card__text) {
  font-size: var(--business-type-9);
}

.business-model-main [data-source-point-size="10"]:not(.business-chart-card__text) {
  font-size: var(--business-type-10);
}

.business-model-main [data-source-point-size="14"]:not(.business-chart-card__text) {
  font-size: var(--business-type-14);
}

.business-model-main [data-source-point-size="15"]:not(.business-chart-card__text) {
  font-size: var(--business-type-15);
}

.business-model-main [data-source-point-size="16"]:not(.business-chart-card__text) {
  font-size: var(--business-type-16);
}

.business-model-main [data-source-point-size="18"]:not(.business-chart-card__text) {
  font-size: var(--business-type-18);
}

.business-model-main [data-source-point-size="20"]:not(.business-chart-card__text) {
  font-size: var(--business-type-20);
}

.business-model-main [data-source-point-size="30"]:not(.business-chart-card__text) {
  font-size: var(--business-type-30);
}

.business-model-main [data-source-point-size="37"]:not(.business-chart-card__text) {
  font-size: var(--business-type-37);
}

.business-model-main [data-source-leading="auto"]:not(.business-chart-card__text) {
  line-height: 1.2;
}

.business-model-main [data-source-leading="8"]:not(.business-chart-card__text) {
  line-height: 1.333333;
}

.business-model-main [data-source-fill="blue"] {
  color: var(--business-blue);
}

.business-model-main [data-source-fill="orange"] {
  color: var(--business-orange);
}

.business-model-main [data-source-fill="ink"] {
  color: var(--business-ink);
}

.business-model-main [data-source-fill="paper-tint"] {
  color: var(--business-paper);
}

.business-model-main [data-source-fill="paper"] {
  color: #fff;
}

.business-model-main [data-source-capitalization="allcaps"] {
  text-transform: uppercase;
}

.business-model-main [data-source-capitalization="normal"] {
  text-transform: none;
}

.business-model-main [data-source-position="superscript"][data-source-point-size] {
  position: relative;
  top: -0.45em;
  font-size: 0.65em;
  line-height: 0;
}

.business-model-rail {
  width: min(100%, var(--business-rail));
  margin-inline: auto;
  padding-inline: clamp(24px, 5vw, 76px);
}

.business-model-intro {
  position: relative;
  min-height: clamp(250px, 20vw, 330px);
  display: grid;
  align-items: end;
  overflow: hidden;
  isolation: isolate;
}

.business-model-intro::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, rgba(0, 32, 73, 0.68) 0%, rgba(0, 32, 73, 0.16) 52%, rgba(0, 32, 73, 0.04) 100%);
}

.business-model-intro__image {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 72%;
}

.business-model-intro > .business-model-rail {
  padding-block: clamp(58px, 6vw, 88px) clamp(34px, 3vw, 48px);
}

.business-model-title,
.business-section-title,
.business-subtitle,
.business-capital h3,
.business-chart__title {
  font-family: var(--type-page-heading-family, var(--font-report-display));
  font-weight: 700;
  font-kerning: normal;
  letter-spacing: normal;
}

.business-model-title {
  width: max-content;
  max-width: 100%;
  margin: 0;
  color: var(--business-paper);
  font-size: var(--business-type-37);
  line-height: 1.2;
  white-space: nowrap;
  text-transform: uppercase;
}

.business-capitals {
  color: #fff;
  background: var(--business-blue);
}

.business-capitals > .business-model-rail {
  padding-block: clamp(52px, 5.2vw, 78px);
}

.business-capitals__heading {
  width: min(100%, 720px);
  margin-bottom: clamp(48px, 4.4vw, 66px);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  justify-items: start;
  gap: clamp(12px, 1.4vw, 20px);
}

.business-capitals__glow {
  position: relative;
  width: min(100%, 420px);
  height: 52px;
  min-width: 0;
  display: block;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  pointer-events: none;
  isolation: isolate;
}

.business-capitals__glow .glow-specimen__figure {
  height: 100%;
  overflow: visible;
}

.business-capitals__glow .glow-specimen__figure--blue {
  background: transparent;
}

.business-capitals__glow .glow-specimen__stage {
  overflow: visible;
}

.business-section-title {
  margin: 0;
  color: var(--business-blue);
  font-size: var(--business-type-20);
  line-height: 1.2;
  text-transform: uppercase;
}

.business-section-title--light {
  color: #fff;
}

.business-section-title--orange {
  color: var(--business-orange);
}

#business-plan-kpis-title {
  font-size: var(--business-type-18);
}

#industry-kpis-title,
#national-kpis-title {
  font-size: var(--business-type-14);
  line-height: 1.2;
  text-transform: none;
}

.business-capitals__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(28px, 3vw, 48px);
}

.business-capital {
  min-width: 0;
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: start;
  gap: 16px;
}

.business-capital img {
  width: 54px;
  height: 54px;
  object-fit: contain;
}

.business-capital h3 {
  margin: 0;
  color: var(--business-paper);
  font-size: var(--business-type-15);
  line-height: 1.2;
}

.business-capital p {
  margin: 13px 0 0;
  font-family: var(--type-body-family, var(--font-report-body));
  font-size: var(--business-type-9);
  font-weight: 400;
  line-height: 1.2;
}

.business-model-flow {
  padding-block: clamp(64px, 5.5vw, 88px) clamp(104px, 9vw, 144px);
  display: grid;
  gap: clamp(64px, 5.5vw, 88px);
}

.business-section {
  min-width: 0;
}

.business-operational-kpis {
  margin-top: clamp(42px, 4.5vw, 68px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(46px, 4.5vw, 70px) clamp(38px, 5vw, 78px);
}

.business-operational-kpi {
  min-width: 0;
  display: grid;
  grid-template-rows: auto minmax(2.4em, auto) auto;
  align-content: start;
}

.business-operational-kpi__value {
  margin: 0;
  color: var(--business-blue);
  font-family: var(--type-kpi-value-family, var(--font-report-display));
  font-size: var(--business-type-30);
  font-weight: 700;
  line-height: 1.2;
}

.business-operational-kpi__value span:not(:first-child) {
  vertical-align: baseline;
}

.business-operational-kpi__rule {
  width: 100%;
  height: auto;
  aspect-ratio: 235.275591 / 4;
  margin-top: 18px;
  display: block;
  object-fit: contain;
}

.business-operational-kpi__label {
  margin: 18px 0 0;
  min-height: 2.4em;
  font-family: var(--type-body-family, var(--font-report-body));
  font-size: var(--business-type-9);
  font-weight: 400;
  line-height: 1.2;
}

.business-operation {
  margin-top: clamp(42px, 3.75vw, 60px);
}

.business-impact {
  margin-top: clamp(30px, 2.75vw, 44px);
}

.business-impact + .business-impact {
  margin-top: clamp(26px, 2.25vw, 36px);
}

.business-subtitle,
.business-chart__title {
  margin: 0;
  color: var(--business-blue);
  font-size: var(--business-type-14);
  line-height: 1.2;
}

.business-subtitle--major {
  font-size: var(--business-type-14);
}

.business-copy {
  margin: 28px 0 0;
  font-family: var(--type-body-family, var(--font-report-body));
  font-size: var(--business-type-8);
  font-weight: 400;
  line-height: 1.2;
}

.business-bullet-list {
  --report-bullet-marker-gap: 1.25em;
  --report-bullet-item-gap: 14px;
  margin: 30px 0 0;
}

.source-strong {
  font-weight: 700;
}

.business-impact__header {
  min-height: clamp(44px, 4vw, 58px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 24px;
}

.business-impact__title {
  padding-bottom: 8px;
}

.business-impact__icon {
  width: clamp(44px, 3.75vw, 58px);
  height: clamp(44px, 3.75vw, 58px);
  display: block;
  object-fit: contain;
}

.business-impact__list {
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
  border-bottom: 3px solid var(--business-orange);
}

.business-impact-row {
  min-width: 0;
  padding-block: 9px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 48px;
  align-items: center;
  gap: clamp(10px, 1.5vw, 22px);
  border-top: 1px solid var(--business-orange);
}

.business-impact-row__label,
.business-impact-row__unit {
  font-family: var(--type-body-family, var(--font-report-body));
  font-size: var(--business-type-8);
  font-weight: 400;
  line-height: 1.2;
}

.business-impact-row__value {
  color: var(--business-blue);
  font-family: var(--type-kpi-value-family, var(--font-report-display));
  font-size: var(--business-type-16);
  font-weight: 700;
  line-height: 1;
  text-align: right;
  white-space: nowrap;
}

.business-impact-row__unit {
  font-weight: 700;
  line-height: 1;
}

.business-impact-row__unit > span {
  display: block;
}

.business-impact-inline-bullets {
  --report-bullet-marker-gap: 0.55em;
  --report-bullet-item-gap: 2px;
  margin-top: 4px;
}

.business-section--charts > .business-subtitle {
  margin-top: 24px;
}

.business-chart-grid,
.business-industry-grid {
  margin-top: clamp(44px, 4.5vw, 64px);
}

.business-chart-grid {
  display: grid;
  gap: clamp(58px, 5vw, 78px) clamp(46px, 5vw, 76px);
}

.business-chart-grid--two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.business-industry-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: clamp(52px, 5vw, 76px) clamp(46px, 5vw, 76px);
}

.business-safety-cluster {
  min-width: 0;
  grid-column: 1 / -1;
}

.business-safety-cluster > .business-subtitle {
  font-family: var(--font-report-body);
  font-size: var(--business-type-9);
  font-weight: 700;
  line-height: 1.2;
}

.business-safety-charts {
  margin-top: clamp(30px, 3vw, 44px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(46px, 5vw, 76px);
}

.business-safety-charts .business-chart__title {
  font-size: var(--business-chart-title-size);
}

.business-chart {
  min-width: 0;
}

.business-chart[data-chart-context="market-share"] {
  grid-column: 1 / -1;
  --business-chart-canvas-width: 240px;
}

.business-chart__title {
  min-height: 2.3em;
  font-family: var(--type-body-family, var(--font-report-body));
  font-size: var(--business-chart-title-size);
  font-weight: 400;
  line-height: 1.2;
}

.business-model-main .business-chart__title > [data-source-point-size] {
  font-size: inherit;
}

.business-chart__years {
  margin-top: clamp(22px, 2.2vw, 32px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: end;
  gap: clamp(2px, 0.6vw, 10px);
}

.business-chart-card {
  min-width: 0;
  display: grid;
  place-items: end center;
}

.business-chart-card__canvas {
  position: relative;
  width: min(100%, var(--business-chart-canvas-width)) !important;
  max-width: 100%;
  container-type: inline-size;
  overflow: visible;
}

.business-chart-card__shape,
.business-chart-card__marker {
  position: absolute;
  display: block;
  object-fit: fill;
  pointer-events: none;
}

.business-chart-card__shape {
  z-index: 1;
}

.business-chart-card__marker {
  z-index: 2;
}

.business-chart-card__text {
  position: absolute;
  z-index: 3;
  font-family: var(--font-report-display);
  font-size: calc(var(--source-font-size) * 1cqw);
  line-height: 1;
  white-space: pre;
  transform: translate(-50%, -50%);
  transform-origin: center;
}

.business-chart-card__text--value {
  font-size: var(--business-chart-value-size);
}

.business-number-counter {
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
}

.business-chart-card__text--year {
  font-size: var(--business-chart-year-size);
}

.business-chart-card__text--status {
  font-size: var(--business-chart-status-size);
}

.business-chart-card__source-whitespace {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

.business-table-scroll {
  margin-top: clamp(76px, 8vw, 120px);
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-gutter: stable;
}

.business-table-scroll:focus-visible {
  outline: 3px solid var(--business-orange);
  outline-offset: 6px;
}

.business-table {
  width: 100%;
  min-width: 900px;
  border-collapse: collapse;
  font-family: var(--type-table-body-family, var(--font-report-body));
  font-size: var(--business-type-9);
  line-height: 1.2;
}

.business-table th,
.business-table td {
  padding: 15px 18px;
  border-bottom: 1px solid color-mix(in srgb, var(--business-blue) 65%, transparent);
  text-align: center;
  vertical-align: middle;
}

.business-table thead th {
  color: #fff;
  font-weight: 400;
  background: var(--business-blue);
}

.business-table th:first-child,
.business-table td:first-child {
  width: 36%;
  text-align: left;
}

.business-table tbody th {
  font-weight: 400;
}

.business-table tbody tr > :nth-child(4) {
  background: rgba(24, 77, 152, 0.06);
}

.business-note {
  margin: 24px 0 0;
  font-family: var(--type-footnote-family, var(--font-report-body));
  font-size: var(--business-type-6);
  line-height: 1.333333;
}

@media (max-width: 64rem) {
  .business-capitals__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .business-capital {
    max-width: 720px;
  }

  .business-chart-grid--two,
  .business-industry-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 50rem) {
  .business-model-intro {
    min-height: 250px;
  }

  .business-model-intro__image {
    object-position: 60% 72%;
  }

  .business-model-flow {
    padding-block: 60px 104px;
    gap: 68px;
  }

  .business-operational-kpis,
  .business-safety-charts {
    grid-template-columns: minmax(0, 1fr);
  }

  .business-chart__years {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 8px;
  }

  .business-impact-row {
    grid-template-columns: minmax(0, 1fr) auto 42px;
  }
}

@media (max-width: 40rem) {
  .business-model-main .business-model-title [data-source-point-size="37"] {
    font-size: clamp(30px, 9vw, 46px);
  }

  .business-capital {
    grid-template-columns: 52px minmax(0, 1fr);
  }

  .business-capital img {
    width: 52px;
    height: 52px;
  }

  .business-impact-row {
    gap: 10px 16px;
  }

}

/*
 * Business-model reveal candidate. Initial hidden states only exist after the
 * page script opts in, so the complete source content remains visible without JS.
 */
@media (prefers-reduced-motion: no-preference) {
  .business-model-motion-ready .business-model-intro .business-model-title,
  .business-model-motion-ready .business-motion-capitals .business-capitals__heading,
  .business-model-motion-ready .business-motion-capitals .business-capital,
  .business-model-motion-ready .business-motion-operational > .business-section-title,
  .business-model-motion-ready .business-motion-operational > .business-operational-kpis .business-operational-kpi,
  .business-model-motion-ready .business-motion-operation,
  .business-model-motion-ready .business-motion-impact-owner > .business-section-title,
  .business-model-motion-ready .business-motion-impact .business-impact__title,
  .business-model-motion-ready .business-motion-impact .business-impact__icon,
  .business-model-motion-ready .business-motion-impact .business-impact-row,
  .business-model-motion-ready .business-motion-plan > .business-section-title,
  .business-model-motion-ready .business-motion-plan > .business-subtitle,
  .business-model-motion-ready .business-motion-chart,
  .business-model-motion-ready .business-motion-chart .business-chart-card,
  .business-model-motion-ready .business-motion-table,
  .business-model-motion-ready .business-motion-note {
    opacity: 0;
  }

  .business-model-motion-ready .business-model-intro .business-model-title {
    transform: translate3d(0, 20px, 0);
  }

  .business-model-motion-ready .business-model-intro.is-visible .business-model-title {
    animation: business-model-title-enter 920ms cubic-bezier(0.16, 1, 0.3, 1) 100ms both;
  }

  .business-model-motion-ready .business-motion-capitals .business-capitals__heading {
    transform: translate3d(-18px, 0, 0);
  }

  .business-model-motion-ready .business-motion-capitals .business-capital,
  .business-model-motion-ready .business-motion-operational > .business-operational-kpis .business-operational-kpi,
  .business-model-motion-ready .business-motion-operation,
  .business-model-motion-ready .business-motion-chart,
  .business-model-motion-ready .business-motion-table,
  .business-model-motion-ready .business-motion-note {
    transform: translate3d(0, 24px, 0);
  }

  .business-model-motion-ready .business-motion-capitals.is-visible .business-capitals__heading {
    animation: business-model-heading-enter 860ms cubic-bezier(0.16, 1, 0.3, 1) 60ms both;
  }

  .business-model-motion-ready .business-motion-capitals.is-visible .business-capital {
    animation: business-model-object-enter 760ms cubic-bezier(0.16, 1, 0.3, 1) var(--business-motion-delay, 180ms) both;
  }

  .business-model-motion-ready .business-motion-capitals.is-visible .business-capital img {
    animation: business-model-icon-light 1040ms ease-out var(--business-motion-delay, 180ms) both;
  }

  .business-model-motion-ready .business-motion-operational > .business-section-title,
  .business-model-motion-ready .business-motion-impact-owner > .business-section-title,
  .business-model-motion-ready .business-motion-plan > .business-section-title {
    clip-path: inset(0 100% 0 0);
    transform: translate3d(-14px, 0, 0);
  }

  .business-model-motion-ready .business-motion-operational.is-visible > .business-section-title,
  .business-model-motion-ready .business-motion-impact-owner.is-visible > .business-section-title,
  .business-model-motion-ready .business-motion-plan.is-visible > .business-section-title {
    animation: business-model-section-title-enter 820ms cubic-bezier(0.16, 1, 0.3, 1) 40ms both;
  }

  .business-model-motion-ready .business-motion-operational.is-visible > .business-operational-kpis .business-operational-kpi {
    animation: business-model-object-enter 740ms cubic-bezier(0.16, 1, 0.3, 1) var(--business-motion-delay, 190ms) both;
  }

  .business-model-motion-ready .business-motion-operational.is-visible .business-operational-kpi__rule {
    transform-origin: left center;
    animation: business-model-rule-enter 820ms cubic-bezier(0.16, 1, 0.3, 1) calc(var(--business-motion-delay, 190ms) + 110ms) both;
  }

  .business-model-motion-ready .business-motion-operation.is-visible {
    animation: business-model-object-enter 780ms cubic-bezier(0.16, 1, 0.3, 1) 60ms both;
  }

  .business-model-motion-ready .business-motion-operation.is-visible > .business-subtitle {
    animation: business-model-subtitle-settle 820ms cubic-bezier(0.16, 1, 0.3, 1) 90ms both;
  }

  .business-model-motion-ready .business-motion-impact .business-impact__title {
    clip-path: inset(0 100% 0 0);
    transform: translate3d(-14px, 0, 0);
  }

  .business-model-motion-ready .business-motion-impact .business-impact__icon {
    transform: translate3d(0, 12px, 0) scale(0.82);
  }

  .business-model-motion-ready .business-motion-impact .business-impact-row {
    transform: translate3d(0, 18px, 0);
  }

  .business-model-motion-ready .business-motion-impact.is-visible .business-impact__title {
    animation: business-model-section-title-enter 780ms cubic-bezier(0.16, 1, 0.3, 1) 70ms both;
  }

  .business-model-motion-ready .business-motion-impact.is-visible .business-impact__icon {
    animation: business-model-impact-icon-enter 920ms cubic-bezier(0.16, 1, 0.3, 1) 20ms both;
  }

  .business-model-motion-ready .business-motion-impact.is-visible .business-impact-row {
    animation: business-model-row-enter 680ms cubic-bezier(0.16, 1, 0.3, 1) var(--business-motion-delay, 190ms) both;
  }

  .business-model-motion-ready .business-motion-plan > .business-subtitle {
    transform: translate3d(0, 16px, 0);
  }

  .business-model-motion-ready .business-motion-plan.is-visible > .business-subtitle {
    animation: business-model-subtitle-settle 760ms cubic-bezier(0.16, 1, 0.3, 1) 170ms both;
  }

  .business-model-motion-ready .business-motion-chart .business-chart-card {
    clip-path: inset(100% 0 0 0);
    transform: translate3d(0, 22px, 0);
    transform-origin: center bottom;
  }

  .business-model-motion-ready .business-motion-chart.is-visible {
    animation: business-model-object-enter 780ms cubic-bezier(0.16, 1, 0.3, 1) var(--business-motion-delay, 80ms) both;
  }

  .business-model-motion-ready .business-motion-chart.is-visible .business-chart-card {
    animation: business-model-chart-build 1180ms cubic-bezier(0.22, 1, 0.36, 1) var(--business-chart-card-delay, 170ms) both;
  }

  .business-model-motion-ready .business-motion-table.is-visible {
    animation: business-model-object-enter 820ms cubic-bezier(0.16, 1, 0.3, 1) 90ms both;
  }

  .business-model-motion-ready .business-motion-note.is-visible {
    animation: business-model-object-enter 680ms cubic-bezier(0.16, 1, 0.3, 1) 100ms both;
  }
}

@keyframes business-model-title-enter {
  from {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes business-model-heading-enter {
  from {
    opacity: 0;
    transform: translate3d(-18px, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes business-model-section-title-enter {
  from {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
    transform: translate3d(-14px, 0, 0);
  }
  to {
    opacity: 1;
    clip-path: inset(0 0 0 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes business-model-object-enter {
  from {
    opacity: 0;
    transform: translate3d(0, 24px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes business-model-row-enter {
  from {
    opacity: 0;
    transform: translate3d(0, 18px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes business-model-subtitle-settle {
  from {
    opacity: 0;
    transform: translate3d(0, 16px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes business-model-rule-enter {
  from {
    opacity: 0;
    transform: scaleX(0.08);
  }
  to {
    opacity: 1;
    transform: scaleX(1);
  }
}

@keyframes business-model-icon-light {
  0% {
    filter: drop-shadow(0 0 0 rgba(255, 255, 255, 0));
  }
  38% {
    filter: drop-shadow(0 0 16px rgba(255, 255, 255, 0.68));
  }
  100% {
    filter: drop-shadow(0 0 0 rgba(255, 255, 255, 0));
  }
}

@keyframes business-model-impact-icon-enter {
  0% {
    opacity: 0;
    filter: drop-shadow(0 0 0 rgba(233, 78, 15, 0));
    transform: translate3d(0, 12px, 0) scale(0.82);
  }
  52% {
    opacity: 1;
    filter: drop-shadow(0 0 15px rgba(233, 78, 15, 0.42));
    transform: translate3d(0, -2px, 0) scale(1.04);
  }
  100% {
    opacity: 1;
    filter: drop-shadow(0 0 0 rgba(233, 78, 15, 0));
    transform: translate3d(0, 0, 0) scale(1);
  }
}

@keyframes business-model-chart-build {
  from {
    opacity: 0;
    clip-path: inset(100% 0 0 0);
    transform: translate3d(0, 22px, 0);
  }
  to {
    opacity: 1;
    clip-path: inset(0 0 0 0);
    transform: translate3d(0, 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .business-model-page *,
  .business-model-page *::before,
  .business-model-page *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
