/* Integrated review only: builder CSS is preserved in source order. */
:root { --source-blue: #184d98; --source-orange: #e94e0f; --source-rule: #2c64ad; }
#page-content > [data-integration-segment] { border-bottom: 1px solid var(--border); }
#page-content > [data-integration-segment]:last-child { border-bottom: 0; }

/* print-0195 */
:root { --source-blue: #184d98; --source-orange: #e94e0f; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--surface); color: var(--text); }
.skip-link { position: absolute; left: -999rem; }
.skip-link:focus { left: 1rem; top: 1rem; z-index: 2; }
.report-page { width: min(100% - 2rem, 75rem); margin-inline: auto; padding-block: clamp(2rem, 5vw, 5rem); }
.page-title { max-width: 24ch; margin: 0 0 3rem; text-transform: uppercase; }
.materiality-intro { margin-bottom: 3rem; }
.section-title, .method-title, .report-code { margin: 0 0 1rem; }
.body-copy, .stage-lead { margin: 0 0 1rem; }
.page-title, .section-title, .method-title, .stage-heading, .benchmark-title { color: var(--source-blue); }
.stage-heading { margin: 2rem 0 1rem; }
.stage-kicker, .report-code { color: var(--source-orange); }
.stage-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(1.5rem, 4vw, 4rem); }
.source-list { margin: 0 0 1rem; padding-left: 1.4rem; }
.source-list li + li { margin-top: .5rem; }
.benchmark { min-width: 0; }
.benchmark-title { margin: 0 0 1rem; }
@media (max-width: 48rem) { .stage-grid { grid-template-columns: 1fr; } }


/* print-0196-0197 */
:root {
  color-scheme: light;
  --source-blue: #184d98;
  --source-orange: #e94e0f;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  min-width: 20rem;
  background: var(--surface);
}

body {
  margin: 0;
  color: var(--text);
  background: var(--surface);
  font-family: var(--type-table-body-family);
  font-size: var(--type-table-body-size);
  font-weight: var(--type-table-body-weight);
  line-height: var(--type-table-body-leading);
}

.segment-stage {
  padding: 2.5rem clamp(1rem, 3.35vw, 3rem);
}

.table-scroll {
  max-width: 76rem;
  margin-inline: auto;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-gutter: stable;
}

.table-scroll:focus-visible {
  outline: 0.1875rem solid #005fcc;
  outline-offset: 0.25rem;
}

.materiality-comparison {
  width: 100%;
  min-width: 74rem;
  table-layout: fixed;
  border-collapse: collapse;
  background: var(--surface);
}

.materiality-comparison .col-indicator { width: 12.5%; }
.materiality-comparison .col-samruk { width: 18.79%; }
.materiality-comparison .col-enel { width: 23.9%; }
.materiality-comparison .col-gez { width: 22.405%; }
.materiality-comparison .col-unipro { width: 22.405%; }

.materiality-comparison th,
.materiality-comparison td {
  padding: 0.375rem 0.5rem;
  vertical-align: top;
  text-align: left;
  overflow-wrap: anywhere;
}

.materiality-comparison thead th {
  color: var(--surface);
  background: var(--source-blue);
  font-family: var(--type-table-header-family);
  font-size: var(--type-table-header-size);
  font-weight: var(--type-table-header-weight);
  line-height: var(--type-table-header-leading);
}

.materiality-comparison tbody th {
  font-family: var(--type-table-header-family);
  font-size: var(--type-table-header-size);
  font-weight: var(--type-table-header-weight);
  line-height: var(--type-table-header-leading);
}

.materiality-comparison tbody th,
.materiality-comparison tbody td {
  border-right: 0.0625rem solid var(--source-blue);
  border-bottom: 0.0625rem solid var(--source-blue);
}

.materiality-comparison tbody td:last-child {
  border-right: 0;
}

.materiality-comparison tbody tr:last-child > * {
  border-bottom-width: 0.1875rem;
}

.standards-list,
.topic-list {
  margin: 0;
  padding: 0;
}

.standards-list {
  padding-left: 1.45rem;
}

.standards-list li {
  padding-left: 0.2rem;
}

.standards-list li::marker {
  color: var(--source-orange);
  font-weight: 700;
}

.gri-row p {
  margin: 0 0 0.4rem;
}

.gri-row p:last-child {
  margin-bottom: 0;
}

.gri-row strong,
.topic-heading {
  color: var(--source-blue);
  font-weight: 700;
}

.topic-group + .topic-group {
  margin-top: 1.35rem;
}

.topic-heading {
  margin: 0 0 0.65rem;
}

.topic-list {
  list-style: none;
}

.topic-list li {
  position: relative;
  min-height: 1.35rem;
  padding-left: 1.55rem;
}

.topic-list li + li {
  margin-top: 0.55rem;
}

.topic-list li::before {
  content: "";
  position: absolute;
  top: 0.25rem;
  left: 0;
  width: 0.9rem;
  height: 0.9rem;
  border: 0.1rem solid var(--source-orange);
  border-radius: 50%;
}

.topic-list li::after {
  content: "";
  position: absolute;
  top: 0.46rem;
  left: 0.29rem;
  width: 0.32rem;
  height: 0.32rem;
  border-top: 0.1rem solid var(--source-orange);
  border-right: 0.1rem solid var(--source-orange);
}

.topic-list--flush {
  margin-top: 0;
}

@media (max-width: 84rem) {
  .segment-stage {
    padding-inline: 1rem;
  }
}


/* print-0198-0199 */
:root { --source-blue: #184d98; --source-orange: #e94e0f; --source-rule: #2c64ad; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--surface); color: var(--text); }
.materiality-segment { width: min(100% - 2rem, 75rem); margin-inline: auto; padding-block: clamp(2rem, 5vw, 5rem); }
.materiality-stage + .materiality-stage, .materiality-table-region, .materiality-impact { margin-top: 3rem; }
.stage-heading, .materiality-impact__heading { margin: 0 0 1.25rem; color: var(--source-blue); }
.stage-heading__step { display: block; color: var(--source-orange); }
.materiality-stage__lead, .materiality-copy-grid p { margin: 0 0 1rem; }
.materiality-copy-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.5rem, 4vw, 4rem); }
.materiality-table-region { overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-gutter: stable; }
.materiality-table-region:focus-visible { outline: .1875rem solid var(--focus); outline-offset: .25rem; }
.materiality-table { width: 100%; min-width: 70rem; table-layout: fixed; border-collapse: collapse; font-family: var(--type-table-body-family); font-size: var(--type-table-body-size); font-weight: var(--type-table-body-weight); line-height: var(--type-table-body-leading); }
.materiality-table caption { margin-bottom: 1rem; text-align: left; color: var(--source-blue); font: inherit; font-weight: var(--type-table-header-weight); }
.materiality-table th, .materiality-table td { padding: .55rem .65rem; border: .0625rem solid var(--source-rule); vertical-align: middle; }
.materiality-table thead th { color: var(--surface); background: var(--source-blue); font-family: var(--type-table-header-family); font-size: var(--type-table-header-size); font-weight: var(--type-table-header-weight); line-height: var(--type-table-header-leading); }
.materiality-table tbody th { text-align: left; }
.materiality-table__group { background: var(--surface-muted); text-align: center !important; }
.materiality-impact__figure { margin: 2rem 0 0; }
.materiality-impact__figure img { display: block; width: 100%; aspect-ratio: 2 / 1; object-fit: cover; object-position: center; }
@media (max-width: 48rem) { .materiality-copy-grid { grid-template-columns: 1fr; } }


/* print-0200 */
:root { --source-blue: #184d98; --source-orange: #e94e0f; --source-grid: #dce6f2; --source-internal: #f48749; --source-external: #637dbd; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--surface); color: var(--text); }
.stakeholder-segment { width: min(100% - 2rem, 75rem); margin-inline: auto; padding-block: clamp(2rem, 5vw, 5rem); }
.stakeholder-segment__title { margin: 0 0 1rem; color: var(--source-blue); }
.stakeholder-segment__code { margin: 0 0 2rem; color: var(--source-orange); }
.stakeholder-segment__intro, .stakeholder-segment__continuation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.25rem, 3vw, 3rem); }
.stakeholder-segment__intro p, .stakeholder-segment__continuation p { margin: 0 0 1rem; }
.stakeholder-map { margin: 3rem 0; }
.stakeholder-map__scroll { overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-gutter: stable; }
.stakeholder-map__scroll:focus-visible { outline: .1875rem solid var(--focus); outline-offset: .25rem; }
.stakeholder-map__svg { display: block; width: 100%; min-width: 48rem; height: auto; }
.stakeholder-map__grid path { fill: none; stroke: var(--source-grid); stroke-width: 2; stroke-dasharray: 7 7; }
.stakeholder-map__axis, .stakeholder-map__labels { fill: var(--text); font-family: var(--type-body-family); font-size: var(--type-body-size); font-weight: var(--type-body-weight); }
.bubble { stroke: var(--surface); stroke-width: 4; }
.bubble--internal { fill: var(--source-internal); }
.bubble--external { fill: var(--source-external); }
.stakeholder-map__caption { margin: 1rem 0; padding: 1rem 1.25rem; background: var(--surface-muted); white-space: pre-line; }
.stakeholder-map__legend { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
.stakeholder-map__legend p { display: grid; grid-template-columns: auto 1fr; gap: .75rem; margin: 0; }
.legend-dot { width: 1.25rem; height: 1.25rem; margin-top: .2rem; border-radius: 50%; }
.legend-dot--internal { background: var(--source-internal); }
.legend-dot--external { background: var(--source-external); }
.stakeholder-segment__next { margin: 3rem 0 0; color: var(--source-blue); }
@media (max-width: 48rem) {
  .stakeholder-segment__intro, .stakeholder-segment__continuation, .stakeholder-map__legend { grid-template-columns: 1fr; }
}


/* print-0201-0207 */
@font-face {
  font-family: "Samruk Energy Good Pro";
  src: url("/assets/review/7b0e352971a6/good-pro-bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Samruk Energy Roboto";
  src: url("/assets/review/aaf1a5ddd2bd/roboto-regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Samruk Energy Roboto";
  src: url("/assets/review/f7de1da43a11/roboto-bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  --surface: #ffffff;
  --surface-muted: #eef3fa;
  --surface-subtle: #f7f9fc;
  --text: #171717;
  --blue: #20579f;
  --blue-deep: #164b90;
  --line: #5e83c3;
  --orange: #ed4d0c;
  --focus: #005fcc;
  --font-report-display: "Samruk Energy Good Pro", Arial, sans-serif;
  --font-report-body: "Samruk Energy Roboto", Arial, sans-serif;
  --type-subsection-heading-family: var(--font-report-display);
  --type-subsection-heading-weight: 700;
  --type-subsection-heading-size: clamp(1.5rem, 2.3vw, 2.25rem);
  --type-subsection-heading-leading: 1.08;
  --type-body-family: var(--font-report-body);
  --type-body-weight: 400;
  --type-body-size: 1rem;
  --type-body-leading: 1.55;
  --type-table-header-family: var(--font-report-body);
  --type-table-header-weight: 700;
  --type-table-header-size: 1rem;
  --type-table-header-leading: 1.25;
  --type-table-body-family: var(--font-report-body);
  --type-table-body-weight: 400;
  --type-table-body-size: 1rem;
  --type-table-body-leading: 1.35;
  --rail: 90rem;
  --gutter: clamp(1rem, 4vw, 3rem);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  min-width: 20rem;
  color-scheme: light;
}

body {
  min-height: 100vh;
  margin: 0;
  color: var(--text);
  background: var(--surface);
  font-family: var(--type-body-family);
  font-size: var(--type-body-size);
  font-weight: var(--type-body-weight);
  line-height: var(--type-body-leading);
  font-synthesis: none;
}

.segment {
  width: min(100%, calc(var(--rail) + 2 * var(--gutter)));
  margin-inline: auto;
  padding: clamp(2rem, 5vw, 5rem) var(--gutter) clamp(4rem, 8vw, 8rem);
}

.stakeholder-table-section,
.stakeholder-narrative,
.narrative-grid,
.narrative-section,
.stakeholder-photo {
  min-width: 0;
}

.stakeholder-table-scroll {
  width: 100%;
  overflow-x: auto;
  border-radius: 0.25rem 0.25rem 0 0;
  overscroll-behavior-inline: contain;
  scrollbar-gutter: stable;
}

.stakeholder-table-scroll:focus-visible {
  outline: 0.1875rem solid var(--focus);
  outline-offset: 0.25rem;
}

.stakeholder-table {
  width: 100%;
  min-width: 70rem;
  border-collapse: collapse;
  table-layout: fixed;
  font-family: var(--type-table-body-family);
  font-size: var(--type-table-body-size);
  font-weight: var(--type-table-body-weight);
  line-height: var(--type-table-body-leading);
}

.stakeholder-table__interest {
  width: 29%;
}

.stakeholder-table__mechanisms {
  width: 51%;
}

.stakeholder-table__results {
  width: 20%;
}

.stakeholder-table th,
.stakeholder-table td {
  padding: 1rem 1.125rem;
  border-right: 0.0625rem solid var(--line);
  border-bottom: 0.0625rem solid var(--line);
  vertical-align: top;
  text-align: left;
}

.stakeholder-table th:last-child,
.stakeholder-table td:last-child {
  border-right: 0;
}

.stakeholder-table thead th {
  padding-block: 1.125rem;
  color: #ffffff;
  background: var(--blue);
  border-color: var(--blue);
  font-family: var(--type-table-header-family);
  font-size: var(--type-table-header-size);
  font-weight: var(--type-table-header-weight);
  line-height: var(--type-table-header-leading);
  vertical-align: middle;
}

.stakeholder-table__scope-row th {
  padding-block: 0.75rem;
  color: var(--text);
  background: #ffffff;
  font-family: var(--type-table-header-family);
  font-size: var(--type-table-header-size);
  font-weight: var(--type-table-header-weight);
  line-height: var(--type-table-header-leading);
  text-transform: uppercase;
}

.stakeholder-table__group-row th {
  padding-block: 0.65rem;
  color: var(--blue-deep);
  background: var(--surface-muted);
  font-family: var(--type-table-header-family);
  font-size: var(--type-table-header-size);
  font-weight: var(--type-table-header-weight);
  line-height: var(--type-table-header-leading);
}

.stakeholder-table tbody td {
  background: #ffffff;
}

.stakeholder-list {
  display: grid;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.stakeholder-list__item {
  position: relative;
  padding-inline-start: 1.6rem;
}

.stakeholder-list__item::before {
  content: "↗";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.02em;
  color: var(--orange);
  font-weight: 700;
  line-height: inherit;
}

.stakeholder-list__item--nested {
  padding-inline-start: 2.35rem;
}

.stakeholder-list__item--nested::before {
  content: "↘";
  inset-inline-start: 0.75rem;
}

.stakeholder-table__result {
  margin: 0;
}

.source-node--emphasis {
  font-weight: 700;
}

.stakeholder-narrative {
  margin-block-start: clamp(3rem, 7vw, 7rem);
}

.narrative-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(2.5rem, 5vw, 5rem) clamp(2rem, 6vw, 6rem);
  align-items: start;
}

.narrative-section {
  display: flow-root;
}

.narrative-section__title {
  margin: 0 0 1.5rem;
  color: var(--blue-deep);
  font-family: var(--type-subsection-heading-family);
  font-size: var(--type-subsection-heading-size);
  font-weight: var(--type-subsection-heading-weight);
  line-height: var(--type-subsection-heading-leading);
}

.narrative-section__subhead {
  margin: 1.75rem 0 0.75rem;
  color: var(--blue-deep);
  font-family: var(--type-body-family);
  font-size: var(--type-body-size);
  font-weight: 700;
  line-height: var(--type-body-leading);
}

.narrative-section__body {
  margin: 0 0 1rem;
  font-family: var(--type-body-family);
  font-size: var(--type-body-size);
  font-weight: var(--type-body-weight);
  line-height: var(--type-body-leading);
}

.narrative-section__body:last-child {
  margin-bottom: 0;
}

.stakeholder-photo {
  margin: clamp(3rem, 7vw, 7rem) 0 0;
}

.stakeholder-photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

@media (max-width: 62rem) {
  .narrative-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 40rem) {
  .segment {
    padding-block-start: 1.5rem;
  }

  .stakeholder-table {
    min-width: 62rem;
  }

  .stakeholder-table th,
  .stakeholder-table td {
    padding: 0.875rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
  }
}


/* print-0208-0209 */
.segment-stage {
  min-height: 100vh;
  padding: var(--shell-gutter);
  background: var(--surface);
  color: var(--text);
}

.late-segment {
  width: min(100%, var(--shell-max));
  margin-inline: auto;
}

.late-segment__heading {
  max-width: 16ch;
  margin: 0;
}

.late-segment__code {
  margin-block: 1rem 2rem;
  color: var(--focus);
}

.partnerships-table-region {
  overflow-x: auto;
  border-radius: 0.25rem;
  outline: 0;
}

.partnerships-table-region:focus-visible {
  box-shadow: 0 0 0 0.2rem var(--surface), 0 0 0 0.4rem var(--focus);
}

.partnerships-table {
  width: 100%;
  min-width: 44rem;
  border-collapse: collapse;
  font-family: var(--type-table-body-family);
  font-size: var(--type-table-body-size);
  line-height: var(--type-table-body-leading);
}

.partnerships-table thead {
  color: var(--surface);
  background: var(--focus);
}

.partnerships-table th,
.partnerships-table td {
  padding: 1rem;
  border-bottom: 1px solid var(--focus);
  text-align: start;
  vertical-align: top;
}

.partnerships-table thead th {
  font-family: var(--type-table-header-family);
  font-size: var(--type-table-header-size);
  font-weight: var(--type-table-header-weight);
  line-height: var(--type-table-header-leading);
}

.partnerships-table tbody th {
  width: 38%;
  font-weight: var(--type-table-body-weight);
}

.partnerships-table tbody tr:last-child > * {
  border-bottom-width: 0.2rem;
}

.partnerships-table__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.partnerships-table__list li {
  position: relative;
  padding-inline-start: 1.5rem;
}

.partnerships-table__list li + li {
  margin-block-start: 0.35rem;
}

.partnerships-table__list li::before {
  position: absolute;
  inset-inline-start: 0;
  color: var(--focus);
  content: "↗";
}

.engagement-layout {
  display: grid;
  grid-template-columns: minmax(16rem, 0.8fr) minmax(0, 1.7fr);
  gap: var(--shell-gutter);
  margin-block-start: clamp(2rem, 5vw, 5rem);
  align-items: start;
}

.engagement-figure {
  margin: 0;
  overflow: hidden;
  aspect-ratio: 235.2756 / 238.5287;
  border-start-end-radius: 1rem;
  border-end-start-radius: 1rem;
}

.engagement-figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

.engagement-story {
  columns: 2 24rem;
  column-gap: var(--shell-gutter);
}

.engagement-story p,
.engagement-story ul,
.engagement-story h3 {
  margin-block-start: 0;
}

.engagement-story p {
  margin-block-end: 1em;
  orphans: 3;
  widows: 3;
}

.story-list {
  margin-block-end: 1em;
  padding-inline-start: 1.5em;
}

.story-list li {
  margin-block-end: 0.55em;
  padding-inline-start: 0.25em;
}

.story-list li::marker {
  color: var(--focus);
}

.story-list--nested {
  margin-block-start: 0.55em;
  margin-block-end: 0;
}

.story-subsection {
  break-inside: avoid-column;
}

.story-subhead {
  margin-block-end: 0.55em;
  font-family: var(--type-body-family);
  font-size: var(--type-body-size);
  font-weight: var(--type-table-header-weight);
  line-height: var(--type-body-leading);
  color: var(--focus);
}

.source-no-break {
  white-space: nowrap;
}

@media (max-width: 64rem) {
  .engagement-layout {
    grid-template-columns: 1fr;
  }

  .engagement-figure {
    width: min(100%, 32rem);
  }

  .engagement-story {
    columns: auto;
  }
}

@media (max-width: 45rem) {
  .segment-stage {
    padding-inline: max(1rem, var(--shell-gutter));
  }

  .late-segment__heading {
    font-size: var(--type-subsection-heading-size);
    line-height: var(--type-subsection-heading-leading);
  }

  .source-no-break {
    white-space: normal;
  }
}


/* Integration-only containment: source-key spans must wrap within the mobile rail. */
@media (max-width: 30rem) { .page-title { overflow-wrap: anywhere; } .page-title > [data-source-key] { display: contents; } }

/*
 * Correction candidate only. Shared typography values and the report bullet
 * ratios are copied verbatim from the approved live design-system registry;
 * this file does not change shared or published CSS.
 */

:root {
  --source-blue: #184d98;
  --source-orange: #e94e0f;
  --source-rule: #2c64ad;
  --source-grid: #dce6f2;
  --source-internal: #f48749;
  --source-external: #637dbd;

  --approved-type-page-heading-family: var(--font-report-display);
  --approved-type-page-heading-weight: 700;
  --approved-type-page-heading-size: 46.2222px;
  --approved-type-page-heading-leading: 1.05;
  --approved-type-section-heading-family: var(--font-report-display);
  --approved-type-section-heading-weight: 700;
  --approved-type-section-heading-size: 32px;
  --approved-type-section-heading-leading: 1.1;
  --approved-type-subsection-heading-family: var(--font-report-display);
  --approved-type-subsection-heading-weight: 700;
  --approved-type-subsection-heading-size: 24.8889px;
  --approved-type-subsection-heading-leading: 1.15;
  --approved-type-card-title-family: var(--font-report-display);
  --approved-type-card-title-weight: 700;
  --approved-type-card-title-size: 24.8889px;
  --approved-type-card-title-leading: 1.15;
  --approved-type-body-family: var(--font-report-body);
  --approved-type-body-weight: 400;
  --approved-type-body-size: 16px;
  --approved-type-body-leading: 1.5;
  --approved-type-table-header-family: var(--font-report-body);
  --approved-type-table-header-weight: 700;
  --approved-type-table-header-size: 16px;
  --approved-type-table-header-leading: 1.3;
  --approved-type-table-body-family: var(--font-report-body);
  --approved-type-table-body-weight: 400;
  --approved-type-table-body-size: 16px;
  --approved-type-table-body-leading: 1.35;
  --approved-type-report-code-family: var(--font-report-body);
  --approved-type-report-code-weight: 900;
  --approved-type-report-code-size: 17.7778px;
  --approved-type-report-code-leading: 1.2;
}

.materiality-correction-candidate {
  margin: 0;
  color: var(--text);
  background: var(--surface);
  font-family: var(--approved-type-body-family);
  font-size: var(--approved-type-body-size);
  font-weight: var(--approved-type-body-weight);
  line-height: var(--approved-type-body-leading);
  font-synthesis: none;
}

.materiality-correction-candidate .report-type-page-heading {
  font-family: var(--approved-type-page-heading-family);
  font-size: var(--approved-type-page-heading-size);
  font-weight: var(--approved-type-page-heading-weight);
  line-height: var(--approved-type-page-heading-leading);
}

.materiality-correction-candidate .report-type-section-heading {
  font-family: var(--approved-type-section-heading-family);
  font-size: var(--approved-type-section-heading-size);
  font-weight: var(--approved-type-section-heading-weight);
  line-height: var(--approved-type-section-heading-leading);
}

.materiality-correction-candidate .report-type-subsection-heading,
.materiality-correction-candidate .stage-heading,
.materiality-correction-candidate .benchmark-title,
.materiality-correction-candidate .materiality-impact__heading {
  font-family: var(--approved-type-subsection-heading-family);
  font-size: var(--approved-type-subsection-heading-size);
  font-weight: var(--approved-type-subsection-heading-weight);
  line-height: var(--approved-type-subsection-heading-leading);
}

.materiality-correction-candidate .report-type-card-title,
.materiality-correction-candidate .story-subhead {
  color: var(--source-blue);
  font-family: var(--approved-type-card-title-family);
  font-size: var(--approved-type-card-title-size);
  font-weight: var(--approved-type-card-title-weight);
  line-height: var(--approved-type-card-title-leading);
}

.materiality-correction-candidate .report-type-body,
.materiality-correction-candidate .body-copy,
.materiality-correction-candidate .materiality-stage__lead,
.materiality-correction-candidate .narrative-section__body,
.materiality-correction-candidate .engagement-story {
  font-family: var(--approved-type-body-family);
  font-size: var(--approved-type-body-size);
  font-weight: var(--approved-type-body-weight);
  line-height: var(--approved-type-body-leading);
}

.materiality-correction-candidate .report-type-report-code,
.materiality-correction-candidate .report-code,
.materiality-correction-candidate .late-segment__code,
.materiality-correction-candidate .stakeholder-segment__code {
  color: var(--source-orange);
  font-family: var(--approved-type-report-code-family);
  font-size: var(--approved-type-report-code-size);
  font-weight: var(--approved-type-report-code-weight);
  line-height: var(--approved-type-report-code-leading);
}

#page-content > [data-integration-segment] {
  border: 0;
}

/* `body` is a column flex container in the shared shell. Its `main` child
   must be allowed to shrink below the min-content width of scrollable tables. */
#page-content {
  width: 100%;
  min-width: 0;
}

.report-page,
.materiality-segment,
.stakeholder-segment,
.segment,
.late-segment {
  width: min(100% - 2rem, 90rem);
  margin-inline: auto;
}

.report-page,
.materiality-segment,
.stakeholder-segment,
.segment,
.segment-stage {
  padding-block: clamp(2.5rem, 6vw, 6rem);
}

.page-title {
  max-width: 34ch;
  margin: 0 0 clamp(2rem, 5vw, 4rem);
  text-transform: uppercase;
}

.section-title,
.method-title,
.stakeholder-segment__title,
.late-segment__heading {
  max-width: none;
  margin: 0 0 1rem;
  color: var(--source-blue);
}

.materiality-intro,
.methodology,
.materiality-stage,
.materiality-table-region,
.materiality-impact,
.stakeholder-map,
.stakeholder-table-section,
.stakeholder-narrative,
.partnerships-table-region,
.engagement-layout {
  margin-block-start: clamp(2rem, 5vw, 4.5rem);
}

.method-intro,
.intro-copy,
.materiality-stage__lead,
.body-copy,
.narrative-section__body,
.engagement-story p {
  max-width: none;
  margin-block: 0 1rem;
}

.stage-heading {
  margin: 2.25rem 0 1.25rem;
  color: var(--source-blue);
}

.stage-kicker,
.stage-heading__step {
  display: block;
  margin-block-end: 0.35rem;
  color: var(--source-orange);
}

.stage-title,
.stage-heading__title {
  display: block;
  color: var(--source-blue);
  white-space: pre-line;
}

.stage-lead[data-source-key="uc397:content:000001"] {
  font-weight: 700;
}

.stage-grid,
.materiality-copy-grid,
.stakeholder-segment__intro,
.stakeholder-segment__continuation,
.narrative-grid,
.engagement-story {
  display: block;
  columns: auto;
}

.benchmark,
.narrative-section + .narrative-section {
  margin-block-start: clamp(2rem, 4vw, 3.5rem);
}

/* Approved report bullet component. */
.report-bullet-list {
  --report-bullet-marker-size: 1em;
  --report-bullet-marker-gap: 1.25em;
  --report-bullet-item-gap: 0.708661em;
  --report-bullet-marker-first-line-offset: calc((1lh - var(--report-bullet-marker-size)) / 2);
  display: grid;
  row-gap: var(--report-bullet-item-gap);
  margin: 0;
  padding: 0;
  color: #3c3c3b;
  font-family: var(--approved-type-body-family);
  font-size: var(--approved-type-body-size);
  font-weight: var(--approved-type-body-weight);
  line-height: var(--approved-type-body-leading);
  list-style: none;
}

.report-bullet-list > li {
  display: grid;
  grid-template-columns: var(--report-bullet-marker-size) minmax(0, 1fr);
  column-gap: var(--report-bullet-marker-gap);
  min-width: 0;
  padding: 0;
}

.report-bullet-list__marker {
  display: block;
  width: var(--report-bullet-marker-size);
  height: var(--report-bullet-marker-size);
  margin-block-start: var(--report-bullet-marker-first-line-offset);
  align-self: start;
}

.report-bullet-list__copy {
  min-width: 0;
  line-height: inherit;
}

.report-bullet-list .report-bullet-list {
  margin-block-start: 0.55rem;
}

.source-list li::before,
.source-list li::after,
.topic-list li::before,
.topic-list li::after,
.stakeholder-list__item::before,
.partnerships-table__list li::before {
  content: none !important;
}

.standards-list {
  padding-inline-start: 1.65rem;
}

.standards-list li::marker {
  color: var(--source-orange);
  font-weight: 700;
}

/* Canonical native tables. */
.materiality-comparison,
.materiality-table,
.stakeholder-table,
.partnerships-table {
  color: var(--text);
  background: var(--surface);
  font-family: var(--approved-type-table-body-family);
  font-size: var(--approved-type-table-body-size);
  font-weight: var(--approved-type-table-body-weight);
  line-height: var(--approved-type-table-body-leading);
}

.materiality-comparison thead th,
.materiality-table thead th,
.stakeholder-table thead th,
.partnerships-table thead th {
  color: #fff;
  background: var(--source-blue);
  font-family: var(--approved-type-table-header-family);
  font-size: var(--approved-type-table-header-size);
  font-weight: var(--approved-type-table-header-weight);
  line-height: var(--approved-type-table-header-leading);
}

.materiality-table tbody td:first-child,
.partnerships-table tbody th {
  font-weight: var(--approved-type-table-body-weight);
}

.materiality-table__group,
.stakeholder-table__group-row th,
.stakeholder-table__scope-row th {
  background: #eef3fa;
  color: var(--source-blue);
  font-weight: 700;
}

.materiality-table caption {
  color: var(--source-blue);
  font-family: var(--approved-type-table-header-family);
  font-size: var(--approved-type-table-header-size);
  font-weight: var(--approved-type-table-header-weight);
  line-height: var(--approved-type-table-header-leading);
}

.table-scroll,
.materiality-table-region,
.stakeholder-table-scroll,
.partnerships-table-region {
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-gutter: stable;
}

.table-scroll:focus-visible,
.materiality-table-region:focus-visible,
.stakeholder-table-scroll:focus-visible,
.partnerships-table-region:focus-visible {
  outline: 3px solid var(--focus);
  outline-offset: 4px;
}

/* Exact source raster from canonical PDF print 200. */
.stakeholder-map__image {
  display: block;
  width: 100%;
  height: auto;
  background: #fff;
}

.report-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Images retain their source pixels; web only controls a documented crop. */
.materiality-impact__figure,
.stakeholder-photo {
  margin: clamp(2rem, 5vw, 4rem) 0 0;
}

.materiality-impact__figure img,
.stakeholder-photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center;
}

.engagement-layout {
  display: block;
}

.engagement-opening {
  display: grid;
  grid-template-columns: minmax(18rem, 0.9fr) minmax(0, 1.35fr);
  gap: clamp(1.5rem, 4vw, 4rem);
  align-items: start;
}

.engagement-figure {
  margin: 0;
  overflow: hidden;
  aspect-ratio: 235.2756 / 238.5287;
  border-radius: 0 1rem 0 1rem;
}

.engagement-figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.engagement-story {
  margin-block-start: 1.5rem;
}

.engagement-story > :first-child {
  margin-block-start: 0;
}

@media (max-width: 48rem) {
  .engagement-opening {
    grid-template-columns: 1fr;
  }

  .report-page,
  .materiality-segment,
  .stakeholder-segment,
  .segment,
  .late-segment {
    width: min(100% - 2rem, 90rem);
  }

}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
  }
}


/* User-approved compact five-column benchmark matrix. Match the dense
   performance-table role from strategy through a route-local modifier. */
.materiality-comparison--compact-strategy {
  font-size: 13px;
  line-height: 17px;
}

.materiality-comparison--compact-strategy th,
.materiality-comparison--compact-strategy td,
.materiality-comparison--compact-strategy p,
.materiality-comparison--compact-strategy li,
.materiality-comparison--compact-strategy span,
.materiality-comparison--compact-strategy strong {
  font-size: inherit;
  line-height: inherit;
}

.materiality-comparison--compact-strategy tbody th,
.materiality-comparison--compact-strategy tbody td {
  padding: 6px 8px;
}

.materiality-comparison--compact-strategy thead th {
  padding: 9px 8px;
  font-size: 13px;
  line-height: 17px;
}

.materiality-comparison--compact-strategy .report-bullet-list {
  --report-bullet-marker-size: 1em;
  --report-bullet-marker-gap: 0.55em;
  --report-bullet-item-gap: 0.35em;
  font-family: var(--approved-type-table-body-family);
  font-size: 13px;
  font-weight: var(--approved-type-table-body-weight);
  line-height: 17px;
}

.materiality-comparison--compact-strategy .report-bullet-list > li,
.materiality-comparison--compact-strategy .report-bullet-list__copy {
  font-size: inherit;
  line-height: inherit;
}

.materiality-comparison--compact-strategy .report-bullet-list .report-bullet-list {
  margin-block-start: 0.35em;
}

[data-integration-segment="print-0195"] > .report-page {
  padding-block-end: clamp(1.5rem, 2.5vw, 2.5rem);
}

[data-integration-segment="print-0196-0197"].segment-stage {
  padding-block: clamp(1rem, 2vw, 2rem);
}

[data-integration-segment="print-0198-0199"] > .materiality-segment {
  padding-block-start: clamp(1.25rem, 2.5vw, 2.5rem);
}

[data-integration-segment="print-0198-0199"] .materiality-stage--survey > .stage-heading {
  margin-block-start: 0;
}

/* Keep the print-200 heading visually attached to its continuous table. */
[data-integration-segment="print-0200"] > .stakeholder-segment {
  padding-block-end: clamp(1rem, 2vw, 1.75rem);
}

[data-integration-segment="print-0201-0207"].segment {
  padding-block-start: 0;
}

[data-integration-segment="print-0201-0207"] > .stakeholder-table-section {
  margin-block-start: 0;
}

/* User-approved shared alignment and spacing for materiality stages 1–3. */
.materiality-correction-candidate .methodology > .stage-heading,
.materiality-correction-candidate .materiality-stage > .stage-heading {
  display: grid;
  justify-items: start;
  row-gap: 0.35rem;
  margin-inline: 0;
  padding-inline: 0;
  text-align: start;
}

.materiality-correction-candidate .stage-kicker,
.materiality-correction-candidate .stage-heading__step,
.materiality-correction-candidate .stage-title,
.materiality-correction-candidate .stage-heading__title {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  text-indent: 0;
  white-space: normal;
}

.materiality-correction-candidate .stage-lead,
.materiality-correction-candidate .materiality-stage__lead,
.materiality-correction-candidate .materiality-copy-grid {
  margin-inline: 0;
}

.materiality-correction-candidate .methodology .source-list,
.materiality-correction-candidate .materiality-stage > .report-bullet-list {
  margin-block-end: clamp(1.5rem, 2.5vw, 2rem);
}

.materiality-correction-candidate .source-leading-separator {
  display: none;
}

/* User-approved stakeholder engagement composition. */
.materiality-correction-candidate .engagement-context {
  display: grid;
  gap: 1rem;
}

.materiality-correction-candidate .engagement-context > p,
.materiality-correction-candidate .engagement-community__copy > p {
  max-width: none;
  margin: 0;
}

.materiality-correction-candidate .engagement-community {
  display: grid;
  grid-template-columns: minmax(18rem, 0.9fr) minmax(0, 1.35fr);
  gap: clamp(1.5rem, 4vw, 4rem);
  align-items: start;
  margin-block-start: clamp(1.5rem, 3vw, 2.75rem);
}

.materiality-correction-candidate .engagement-community__copy > .story-list {
  margin-block: 1rem 0;
}

@media (max-width: 48rem) {
  body.v4-page.materiality-stakeholders-page #page-content .segment-stage > .late-segment {
    position: static;
    inset-inline-start: auto;
    width: 100%;
    max-width: none;
    margin-inline: 0;
    transform: none;
  }

  .materiality-correction-candidate .engagement-community {
    grid-template-columns: 1fr;
  }

  .materiality-correction-candidate .engagement-figure {
    width: min(100%, 32rem);
  }
}

/* Owner-local motion. Source photographs stay outside the reveal scope. */
html.materiality-motion-ready [data-materiality-reveal] {
  opacity: 0;
  transform: translate3d(0, 24px, 0);
  transition:
    opacity 720ms cubic-bezier(.16, 1, .3, 1),
    transform 860ms cubic-bezier(.16, 1, .3, 1);
  will-change: opacity, transform;
}

html.materiality-motion-ready [data-materiality-reveal][data-materiality-table] {
  transform: translate3d(0, 18px, 0);
}

html.materiality-motion-ready [data-materiality-reveal].is-materiality-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  will-change: auto;
}

html.materiality-motion-ready [data-materiality-item] {
  opacity: 0;
  transform: translate3d(0, 14px, 0);
  transition:
    opacity 640ms cubic-bezier(.16, 1, .3, 1) var(--materiality-item-delay, 0ms),
    transform 740ms cubic-bezier(.16, 1, .3, 1) var(--materiality-item-delay, 0ms);
}

html.materiality-motion-ready [data-materiality-item].is-materiality-item-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

html.materiality-motion-ready [data-materiality-diagram] .stakeholder-map__image {
  opacity: 0;
  clip-path: inset(100% 0 0 0);
  transform: translate3d(0, 18px, 0);
  transform-origin: 50% 100%;
  transition:
    opacity 680ms cubic-bezier(.16, 1, .3, 1) 100ms,
    clip-path 1080ms cubic-bezier(.16, 1, .3, 1) 100ms,
    transform 1080ms cubic-bezier(.16, 1, .3, 1) 100ms;
}

html.materiality-motion-ready [data-materiality-diagram].is-materiality-visible .stakeholder-map__image {
  opacity: 1;
  clip-path: inset(0 0 0 0);
  transform: translate3d(0, 0, 0);
}

@media (prefers-reduced-motion: reduce) {
  html.materiality-motion-ready [data-materiality-reveal],
  html.materiality-motion-ready [data-materiality-item] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  html.materiality-motion-ready [data-materiality-diagram] .stakeholder-map__image {
    opacity: 1 !important;
    clip-path: inset(0 0 0 0) !important;
    transform: none !important;
    transition: none !important;
  }
}

/* Source NormalParagraphStyle + Blue Bold: internal headings, not source H3. */
.materiality-correction-candidate .narrative-section__subhead {
  color: var(--source-blue);
  font-family: var(--approved-type-body-family);
  font-size: var(--approved-type-body-size);
  font-weight: 700;
  line-height: var(--approved-type-body-leading);
}

/* Owner-specific source overrides; approved roles and all other surfaces retained. */
.materiality-stakeholders-page .v4-menu-button{padding:0;border:0;background:none;cursor:pointer}
#page-content [data-en-weight="400"]{font-weight:400!important}
#page-content [data-en-weight="500"]{font-weight:500!important}
#page-content [data-en-weight="700"]{font-weight:700!important}
#page-content [data-en-weight="900"]{font-weight:900!important}
#page-content [data-en-case="uppercase"]{text-transform:uppercase}
#page-content [data-en-case="none"]{text-transform:none}
#page-content [data-en-nobreak="true"]{white-space:nowrap}
#page-content .page-title{overflow-wrap:normal;word-break:normal}
#page-content .page-title > [data-source-key]{display:inline;white-space:normal}
#page-content .en-glyph-fallback{font-family:var(--font-report-body)!important}
#page-content [role="region"][tabindex]{scrollbar-gutter:auto}
#page-content .stakeholder-map{overflow-x:auto;position:relative;max-width:100%}
#page-content .stakeholder-map__image{min-width:1200px;width:100%;max-width:none}
#page-content .stakeholder-map:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
