/*
 * Old-site visual language applied to the current editable content model.
 * Business copy, values and media continue to come from the CMS.
 */
.heritage-page {
    --heritage-accent: #00abe5;
    --heritage-dark: #185775;
    --heritage-soft: #edf8fc;
    --heritage-soft-2: #f7fbfd;
    --heritage-line: #bfe5f2;
    --heritage-support: #7ebf25;
    --heritage-ink: #294653;
    --heritage-copy: #526a75;
    --heritage-muted: #758890;
    --heritage-radius: 5px;
    --table-v2-section-accent: var(--heritage-accent);
    --table-v2-section-header-bg: var(--heritage-dark);
    --table-v2-section-header-fg: #fff;
    --table-v2-section-dark: var(--heritage-dark);
    --table-v2-section-soft: var(--heritage-soft);
    --table-v2-section-row-alt: var(--heritage-soft-2);
    --table-v2-section-border: var(--heritage-line);
}

.heritage-page--about {
    --heritage-accent: #00abe5;
    --heritage-dark: #185775;
    --heritage-soft: #edf8fc;
    --heritage-soft-2: #f7fbfd;
    --heritage-line: #bfe5f2;
    --heritage-support: #7ebf25;
}

.heritage-page--stakeholders {
    --heritage-accent: #1687a6;
    --heritage-dark: #24566b;
    --heritage-soft: #edf8fa;
    --heritage-soft-2: #f7fbfc;
    --heritage-line: #c8e1e8;
    --heritage-support: #6a913d;
}

.heritage-page--governance {
    --heritage-accent: #0f75bb;
    --heritage-dark: #244e8d;
    --heritage-soft: #edf5fb;
    --heritage-soft-2: #f7fafc;
    --heritage-line: #bed9ec;
    --heritage-support: #357d4d;
}

.heritage-page--product {
    --heritage-accent: #0f75bb;
    --heritage-dark: #244e8d;
    --heritage-soft: #edf5fb;
    --heritage-soft-2: #f8fafc;
    --heritage-line: #bed9ec;
    --heritage-support: #ed6e4e;
}

.heritage-page--environment {
    --heritage-accent: #01a29a;
    --heritage-dark: #176d68;
    --heritage-soft: #edf7f5;
    --heritage-soft-2: #f7fbfa;
    --heritage-line: #b9ded9;
    --heritage-support: #7ebf25;
}

.heritage-page--social {
    --heritage-accent: #f08537;
    --heritage-dark: #9a5423;
    --heritage-soft: #fff5ec;
    --heritage-soft-2: #fffbf7;
    --heritage-line: #f0d2b6;
    --heritage-support: #0f75bb;
}

.heritage-page .heritage-page-main,
.heritage-page .page_main,
.heritage-page .page_con,
.heritage-page .report-module,
.heritage-page .report-module-anchor {
    min-width: 0;
}

.heritage-page .sec1 {
    background: #fff;
}

.heritage-page .page_container {
    position: relative;
}

.heritage-page .page_kv {
    isolation: isolate;
    overflow: hidden;
}

.heritage-page .page_kv_bg {
    transition: transform 700ms ease;
}

.heritage-page .page_kv:hover .page_kv_bg {
    transform: scale(1.012);
}

.heritage-page .page_kv_title {
    width: fit-content;
    max-width: min(100%, 760px);
    margin: 0;
    padding-bottom: 12px;
    color: #34474f;
    line-height: 1.25;
    letter-spacing: 0;
}

.heritage-page .page_kv_title::after {
    content: "";
    display: block;
    width: 72px;
    height: 4px;
    margin-top: 13px;
    background: var(--heritage-accent);
}

.heritage-page .left_nav {
    border-right-color: #dfe7ea;
}

.heritage-page .left_nav_item {
    padding-inline: 20px 24px;
}

.heritage-page .left_nav_btn {
    display: block;
    padding-block: 3px;
    color: #66777e;
    line-height: 1.65;
    transition: color 160ms ease, transform 160ms ease;
}

.heritage-page .left_nav_btn:hover,
.heritage-page .left_nav_btn:focus-visible,
.heritage-page .left_nav_item.active .left_nav_btn,
.heritage-page .left_nav_btn.active {
    color: var(--heritage-dark);
}

.heritage-page .left_nav_btn:hover,
.heritage-page .left_nav_btn:focus-visible {
    transform: translateX(3px);
}

.heritage-page .left_nav_item.active .left_nav_btn::after,
.heritage-page .left_nav_btn.active::after {
    background: var(--heritage-accent);
}

.heritage-page .page-title-row,
.heritage-page .topic-title-row {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
    margin: 0 0 34px;
    padding: 0 0 17px;
    border-bottom: 1px solid var(--heritage-line);
}

.heritage-page .page_con_title,
.heritage-page.topic-page .page_con_title {
    position: relative;
    margin: 0;
    padding: 0 0 0 18px;
    border: 0;
    color: #3f474b;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0;
}

.heritage-page .page_con_title::before {
    content: "";
    position: absolute;
    inset: .16em auto .16em 0;
    width: 5px;
    border-radius: 2px;
    background: var(--heritage-accent);
}

.heritage-page .page_con_title::after,
.heritage-page.topic-page .page_con_title::after {
    display: none;
}

.heritage-page .page_main > .page_con_title {
    margin-bottom: 30px;
    padding-bottom: 17px;
    border-bottom: 1px solid var(--heritage-line);
}

.heritage-page .page_con,
.heritage-page .report-richtext {
    color: var(--heritage-copy);
}

.heritage-page .page_con p,
.heritage-page .page_con li {
    line-height: 1.85;
}

.heritage-page .page_con a:not([class]) {
    color: var(--heritage-dark);
    text-decoration-color: var(--heritage-line);
    text-underline-offset: 3px;
}

.heritage-page .page_con_title2,
.heritage-page .page-content-block > h3 {
    margin: 38px 0 20px;
    padding: 15px 18px;
    border: 0;
    border-top: 3px solid var(--heritage-accent);
    background: var(--heritage-soft);
    color: var(--heritage-dark);
    font-size: 21px;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0;
}

.heritage-page .page_con_title3,
.heritage-page .page_con_title4,
.heritage-page .page_con_title5,
.heritage-page .page-content-block h4 {
    margin: 28px 0 10px;
    color: var(--heritage-dark);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0;
}

.heritage-page .page-content-block + .page-content-block {
    margin-top: 40px;
}

.heritage-page .report-module-list {
    gap: 46px;
    margin-top: 38px;
}

.heritage-page .report-module-list > .report-module-anchor:has(> .report-module > .report-module__body:only-child:empty) {
    display: none;
}

.heritage-page .report-module {
    --report-accent: var(--heritage-accent);
    --report-accent-strong: var(--heritage-dark);
    --report-accent-soft: var(--heritage-soft);
    --report-support: var(--heritage-support);
    --report-border: var(--heritage-line);
    --report-heading: var(--heritage-ink);
    --report-text: var(--heritage-copy);
    --report-tint: var(--heritage-soft);
    --report-surface: var(--heritage-soft-2);
    --report-line: var(--heritage-line);
    --report-radius: var(--heritage-radius);
    --report-shadow: 0 8px 22px rgba(36, 78, 105, .07);
    padding-top: 0;
    border-top: 0;
}

.heritage-page--environment .report-tone--e,
.heritage-page--environment .report-tone--environment {
    --tone: #01a29a;
    --tone-strong: #176d68;
    --tone-soft: #edf7f5;
    --tone-border: #b9ded9;
}

.heritage-page--social .report-tone--s,
.heritage-page--social .report-tone--social {
    --tone: #f08537;
    --tone-strong: #9a5423;
    --tone-soft: #fff5ec;
    --tone-border: #f0d2b6;
}

.heritage-page--product .report-tone--economy,
.heritage-page--product .report-tone--product {
    --tone: #0f75bb;
    --tone-strong: #244e8d;
    --tone-soft: #edf5fb;
    --tone-border: #bed9ec;
}

.heritage-page .report-module > .report-module__header {
    gap: 7px;
    margin: 0 0 24px;
    padding: 16px 18px;
    border: 0;
    border-top: 3px solid var(--heritage-accent);
    background: var(--heritage-soft);
}

.heritage-page .report-module > .report-module__header:empty,
.heritage-page .report-module > .report-module__header:not(:has(.report-module__title, .report-module__subtitle, img, svg)) {
    display: none;
}

.heritage-page .report-template--ppt-editorial > .report-module__header {
    border-bottom: 0;
}

.heritage-page .report-module__title {
    padding-left: 0;
    color: var(--heritage-dark);
    font-size: 23px;
    line-height: 1.5;
    letter-spacing: 0;
}

.heritage-page .report-module__title::before {
    display: none;
}

.heritage-page .report-module__subtitle {
    color: #6b7d84;
}

.heritage-page .report-richtext .report-lead {
    border-left-color: var(--heritage-support);
    background: var(--heritage-soft);
    color: var(--heritage-dark);
}

.heritage-page .report-richtext .report-points li,
.heritage-page .report-visualization,
.heritage-page .report-map__canvas-wrap,
.heritage-page .report-map__facility,
.heritage-page .report-org__node {
    border-color: var(--heritage-line);
    border-radius: var(--heritage-radius);
}

.heritage-page .ppt-editorial {
    --ppt-accent: var(--heritage-accent);
    --ppt-accent-soft: var(--heritage-soft);
    --ppt-rule: var(--heritage-line);
}

.heritage-page .ppt-editorial__block--title,
.heritage-page .ppt-editorial__block--heading {
    background: var(--heritage-soft);
}

.heritage-page .table-v2-scroll,
.heritage-page .report-table-wrap {
    border-color: var(--heritage-line);
    border-radius: var(--heritage-radius);
    box-shadow: 0 8px 22px rgba(36, 78, 105, .06);
}

.heritage-page .report-table th,
.heritage-page .gov_table th,
.heritage-page .page_con table:not([class]) th {
    border-color: var(--heritage-line);
    background: var(--table-v2-section-header-bg, var(--heritage-dark));
    color: var(--table-v2-section-header-fg, #fff);
}

.heritage-page .report-table td,
.heritage-page .gov_table td,
.heritage-page .page_con table:not([class]) td {
    border-color: var(--heritage-line);
}

.heritage-page .report-table tbody tr:nth-child(even),
.heritage-page .gov_table tbody tr:nth-child(even),
.heritage-page .page_con table:not([class]) tbody tr:nth-child(even) {
    background: var(--heritage-soft-2);
}

.heritage-page .report-table tbody tr,
.heritage-page .table-v2-row .table-v2-cell,
.heritage-page .gov_table tbody tr,
.heritage-page .page_con table:not([class]) tbody tr {
    transition: background-color 160ms ease;
}

.heritage-page .report-table tbody tr:hover,
.heritage-page .gov_table tbody tr:hover,
.heritage-page .page_con table:not([class]) tbody tr:hover {
    background: var(--heritage-soft);
}

.heritage-page .table-v2-row:not(.table-v2-row--header):hover .table-v2-cell:not([class*="table-v2-cell-tone--"]) {
    background: var(--table-v2-subheader-bg, var(--heritage-soft));
}

.heritage-page .table-v2-cell,
.heritage-page .report-table td,
.heritage-page .report-table th,
.heritage-page .gov_table td,
.heritage-page .gov_table th,
.heritage-page .page_con table:not([class]) td,
.heritage-page .page_con table:not([class]) th {
    line-height: 1.65;
}

.heritage-page .table-v2-data--number,
.heritage-page .table-v2-data--percent,
.heritage-page .table-v2-data--date,
.heritage-page .report-table td:nth-child(n + 3) {
    font-variant-numeric: tabular-nums;
}

.heritage-page--governance .gov3_table2 th {
    background: #357d4d;
    border-color: #78ab88;
}

.heritage-page--governance [data-report-module="original-security-internal"] {
    --table-v2-border: #b8d3c0;
    --table-v2-header-bg: #357d4d;
    --table-v2-header-fg: #fff;
    --table-v2-subheader-bg: #eaf3ed;
    --table-v2-subheader-fg: #285d39;
    --table-v2-row-alt: #f5faf6;
    --table-v2-accent: #357d4d;
}

.heritage-page--environment .climate-register__table thead th,
.heritage-page--environment .energy-register__table thead th,
.heritage-page--environment .waste-register__table thead th {
    background: var(--table-v2-header-bg);
    color: var(--table-v2-header-fg);
}

.heritage-page--social .social-register__table thead th,
.heritage-page--social .energy-register__table thead th,
.heritage-page--social .waste-register__table thead th {
    background: var(--table-v2-header-bg);
    color: var(--table-v2-header-fg);
}

.heritage-page .page_con table:not(.table-v2-table) > thead > tr + tr > th,
.heritage-page .page_con table:not(.table-v2-table) > thead > tr + tr > td {
    background: var(--table-v2-subheader-bg, var(--heritage-soft));
    color: var(--table-v2-subheader-fg, var(--heritage-dark));
}

.heritage-page .topic-page,
.heritage-page .topic-page .page_main {
    --topic-blue: var(--heritage-accent);
    --topic-teal: var(--heritage-dark);
    --topic-green: var(--heritage-support);
    --topic-line: var(--heritage-line);
    --topic-ink: var(--heritage-ink);
    --topic-text: var(--heritage-copy);
}

.heritage-page .topic-page .topic-section {
    border-top-color: var(--heritage-line);
}

.heritage-page .topic-page .topic-heading {
    margin-bottom: 22px;
    padding: 14px 16px;
    border: 0;
    border-top: 3px solid var(--heritage-accent);
    background: var(--heritage-soft);
    color: var(--heritage-dark);
}

.heritage-page .topic-page .topic-heading > .ti,
.heritage-page .topic-page .topic-org-icon {
    color: var(--heritage-accent);
}

.heritage-page .topic-page .topic-org-node {
    border-color: var(--heritage-line);
    border-top-color: var(--heritage-accent);
    background: var(--heritage-soft-2);
}

.heritage-page .report-flow__node,
.heritage-page .report-roadmap__item,
.heritage-page .report-org__node,
.heritage-page .report-icon-grid__item,
.heritage-page .report-kpi__item,
.heritage-page .ppt-editorial__block,
.heritage-page .social-groups__item,
.heritage-page .risk-register details {
    transition: border-color 170ms ease, background-color 170ms ease, transform 170ms ease, box-shadow 170ms ease;
}

.heritage-page .target-register__group,
.heritage-page .water-risks__location h4,
.heritage-page .waste-groups__group,
.heritage-page .risk-register details,
.heritage-page .social-groups__item {
    border-color: var(--heritage-accent);
}

.heritage-page .target-register__group > summary,
.heritage-page .waste-groups__group summary,
.heritage-page .risk-register summary,
.heritage-page .social-groups__item summary {
    color: var(--heritage-dark);
}

.heritage-page .waste-groups__group summary,
.heritage-page .energy-register__group h4,
.heritage-page .climate-register__group h4,
.heritage-page .waste-register__category {
    border-color: var(--heritage-accent);
    background: var(--heritage-soft);
    color: var(--heritage-dark);
}

.heritage-page .dl_btn {
    color: var(--heritage-dark);
    border-bottom-color: var(--heritage-line);
}

.heritage-page .dl_btn:hover,
.heritage-page .dl_btn:focus-visible {
    color: var(--heritage-accent);
}

.heritage-page .translation-fallback-notice {
    border-left-color: var(--heritage-accent);
    background: var(--heritage-soft);
    color: var(--heritage-dark);
}

.heritage-page .translation-fallback-notice .ti {
    color: var(--heritage-accent);
}

.heritage-page .list-group {
    border-top: 3px solid var(--heritage-accent);
}

.heritage-page .list-group-item {
    padding: 20px 18px;
    border-color: var(--heritage-line);
    color: var(--heritage-ink);
    transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.heritage-page .list-group-item:nth-child(even) {
    background: var(--heritage-soft-2);
}

.heritage-page .list-group-item:hover,
.heritage-page .list-group-item:focus-visible {
    z-index: 1;
    border-color: var(--heritage-line);
    background: var(--heritage-soft);
    color: var(--heritage-dark);
    transform: translateX(3px);
}

.heritage-page .dl_box {
    height: 100%;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--heritage-line);
    color: var(--heritage-ink);
}

.heritage-page .dl_box::before {
    content: "";
    display: block;
    width: 100%;
    height: 3px;
    margin-bottom: 12px;
    background: var(--heritage-accent);
}

.heritage-page .dl_box:hover,
.heritage-page .dl_box:focus-visible {
    color: var(--heritage-dark);
}

.heritage-page .search-page-form .btn-primary,
.heritage-page .btn-primary {
    border-color: var(--heritage-accent);
    background: var(--heritage-accent);
}

.heritage-page .btn-outline-primary {
    border-color: var(--heritage-accent);
    color: var(--heritage-dark);
}

.heritage-page .btn-outline-primary:hover,
.heritage-page .btn-outline-primary:focus-visible {
    border-color: var(--heritage-accent);
    background: var(--heritage-accent);
    color: #fff;
}

.heritage-page .search-result-item {
    border-color: var(--heritage-line);
}

.heritage-page .search-result-item p,
.heritage-page .search-result-link {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.heritage-page .search-result-item:hover {
    background: var(--heritage-soft-2);
}

.heritage-page .search-result-item h3 a,
.heritage-page .search-result-link {
    color: var(--heritage-dark);
}

.heritage-page .scroll-x,
.heritage-page .report-org__viewport,
.heritage-page .report-map__table-scroll {
    scrollbar-width: none;
}

.heritage-page .scroll-x::-webkit-scrollbar,
.heritage-page .report-org__viewport::-webkit-scrollbar,
.heritage-page .report-map__table-scroll::-webkit-scrollbar {
    display: none;
}

.heritage-page .table-v2-scroll,
.heritage-page .report-table-wrap {
    scrollbar-color: var(--table-v2-accent, var(--heritage-accent)) #edf1f3;
    scrollbar-width: thin;
}

.heritage-page .table-v2-scroll::-webkit-scrollbar,
.heritage-page .report-table-wrap::-webkit-scrollbar {
    display: block;
    width: 8px;
    height: 8px;
}

.heritage-page .table-v2-scroll::-webkit-scrollbar-track,
.heritage-page .report-table-wrap::-webkit-scrollbar-track {
    background: #edf1f3;
}

.heritage-page .table-v2-scroll::-webkit-scrollbar-thumb,
.heritage-page .report-table-wrap::-webkit-scrollbar-thumb {
    border: 2px solid #edf1f3;
    border-radius: 999px;
    background: var(--table-v2-accent, var(--heritage-accent));
}

@media (hover: hover) and (pointer: fine) {
    .heritage-page .report-flow__node:hover,
    .heritage-page .report-roadmap__item:hover,
    .heritage-page .report-org__node:hover,
    .heritage-page .report-icon-grid__item:hover,
    .heritage-page .report-kpi__item:hover,
    .heritage-page .social-groups__item:hover,
    .heritage-page .risk-register details:hover {
        border-color: var(--heritage-accent);
        box-shadow: 0 9px 22px rgba(36, 78, 105, .09);
        transform: translateY(-2px);
    }
}

@media (max-width: 1199.98px) {
    .heritage-page .page-title-row,
    .heritage-page .topic-title-row {
        margin-bottom: 30px;
    }

    .heritage-page .report-module-list {
        gap: 38px;
    }
}

@media (max-width: 767.98px) {
    /* T102 banners keep the mobile center crop light for the live localized title. */
    .heritage-page .page_kv::after {
        background: linear-gradient(90deg, rgba(255, 255, 255, .78), rgba(255, 255, 255, .38) 62%, rgba(255, 255, 255, .12));
    }

    .heritage-page .page_kv_title {
        font-size: 29px;
        color: #34474f;
        text-shadow: 0 1px 0 rgba(255, 255, 255, .72);
    }

    .heritage-page .page_kv_title::after {
        width: 54px;
        height: 3px;
        margin-top: 10px;
    }

    .heritage-page .page-title-row,
    .heritage-page .topic-title-row {
        gap: 12px;
        margin-bottom: 26px;
        padding-bottom: 14px;
    }

    .heritage-page .page_con_title,
    .heritage-page.topic-page .page_con_title {
        padding-left: 14px;
        font-size: 25px;
    }

    .heritage-page .page_con_title::before {
        width: 4px;
    }

    .heritage-page .page_con_title2,
    .heritage-page .page-content-block > h3,
    .heritage-page .report-module > .report-module__header,
    .heritage-page .topic-page .topic-heading {
        padding: 13px 14px;
    }

    .heritage-page .page_con_title2,
    .heritage-page .page-content-block > h3 {
        margin-top: 30px;
        font-size: 19px;
    }

    .heritage-page .report-module__title {
        font-size: 20px;
    }

    .heritage-page .report-module-list {
        gap: 32px;
        margin-top: 30px;
    }

    .heritage-page .report-richtext,
    .heritage-page .page_con {
        font-size: 15px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .heritage-page .page_kv_bg,
    .heritage-page .left_nav_btn,
    .heritage-page .report-flow__node,
    .heritage-page .report-roadmap__item,
    .heritage-page .report-org__node,
    .heritage-page .report-icon-grid__item,
    .heritage-page .report-kpi__item,
    .heritage-page .ppt-editorial__block,
    .heritage-page .social-groups__item,
    .heritage-page .risk-register details {
        transition: none;
    }
}

@media print {
    .heritage-page .page_kv_bg,
    .heritage-page .report-flow__node,
    .heritage-page .report-roadmap__item,
    .heritage-page .report-org__node,
    .heritage-page .report-icon-grid__item,
    .heritage-page .report-kpi__item {
        transform: none !important;
        box-shadow: none !important;
    }
}
