html { overflow-x: clip; }            /* kill horizontal scrollbar from full-bleed sliders */
/* The web Noto Sans does not bold the Indian Rupee sign (U+20B9). Wrap each
   rupee glyph in <span class="rs"> so it uses a local font that bolds it,
   inheriting the surrounding weight. */
.rs { font-family: Arial, 'Segoe UI', sans-serif; }
body {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-size: 16px;
    font-family: 'Noto Sans', sans-serif;
    color: #222;
    overflow-x: clip;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0px;
    padding: 0px;
    font-family: 'Playfair Display', serif;
}
p {
    margin: 0px;
    padding: 0px;
}

a {
    text-decoration: none !important;
    font-size: 16px;
}

a:hover {
    text-decoration: none !important;
}

p {
    font-size: 16px;
    line-height: 24px;
}

.my-sidenav {
    display: none;
}

img { display: block; max-width: 100%; }

/* ============================================================
   PRELOADER — centred logo + horizontal progress bar + counter
   ============================================================ */
.preloader {
    position: fixed; inset: 0; z-index: 100000;
    display: flex; align-items: center; justify-content: center;
    background: #ffffff;
    transition: opacity .6s ease, visibility .6s ease;
}
.preloader.is-done { opacity: 0; visibility: hidden; }
.preloader-inner { display: flex; flex-direction: column; align-items: center; }
.preloader-logo { width: 130px; height: auto; display: block; }
.preloader-bar {
    position: relative; overflow: hidden;
    width: 220px; height: 2px; margin-top: 30px;
    background: #e6e6e6; border-radius: 2px;
}
.preloader-fill {
    position: absolute; top: 0; left: 0; height: 100%; width: 0;
    border-radius: 2px;
    background: linear-gradient(90deg, #1565C0 0%, #7B2FA8 50%, #C01535 100%);
    transition: width .25s ease;
}
.preloader-num {
    margin-top: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 13px; font-weight: 600; letter-spacing: .5px;
    color: #8a8a8a;
}

/* ============================================================
   HEADER
   ============================================================ */
:root {
    --header-bg:     rgba(255, 255, 255, 0.6);
    --header-border: rgba(0, 0, 0, 0.06);
    --header-shadow: 0 5px 18px rgba(0, 0, 0, 0.10);
    --text-primary:  #1a1a1a;
    --text-secondary:#555555;
    --divider:       rgba(0, 0, 0, 0.18);
    --hover-bg:      rgba(0, 0, 0, 0.06);
    --brand-purple:  #8e278f;
    --brand-blue:    #006db7;
}

.header-fixed {
    position: fixed;
    top: 20px;
    left: 0;
    width: 100%;
    z-index: 1000;
    transition: transform .4s ease;
}
/* hidden when scrolling down, slides back in on scroll up */
.header-fixed.header-hidden {
    transform: translateY(-160%);
}

.site-header {
    background: var(--header-bg);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid var(--header-border);
    box-shadow: var(--header-shadow);
    transition: box-shadow .35s ease;
}
.header-fixed.sticky .site-header {
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.12);
}
.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 16px;
}
.header-left { display: flex; align-items: center; gap: 18px; }

.header-logo { display: flex; align-items: center; flex-shrink: 0; }
.header-logo img { height: 46px; width: auto; }

.header-divider { width: 1px; height: 46px; background: var(--divider); flex-shrink: 0; }
.header-title { display: flex; flex-direction: column; gap: 3px; }
.company-name {
    font-size: 15px; font-weight: 600; color: var(--text-primary);
    line-height: 1.3; white-space: nowrap;
}
.report-subtitle {
    font-size: 12.5px; font-weight: 400; color: var(--text-secondary);
    line-height: 1.3; white-space: nowrap;
}

.header-right { display: flex; align-items: center; gap: 10px; }
.search-btn {
    background: none; border: none; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    width: 42px; height: 42px; border-radius: 50%;
    color: var(--text-primary);
    transition: background .2s;
}
.search-btn:hover { background: var(--hover-bg); }
.search-btn svg { width: 22px; height: 22px; }

.menu-btn {
    display: flex; align-items: center; gap: 9px;
    padding: 9px 20px; cursor: pointer;
    background: linear-gradient(90deg, #1565C0 0%, #7B2FA8 50%, #C01535 100%);
    border: none; color: #fff;
    font-size: 14.5px; font-weight: 500; letter-spacing: .2px;
    transition: opacity .2s, transform .15s;
}
.menu-btn:hover { opacity: .9; transform: scale(1.02); }
.hamburger { display: flex; flex-direction: column; gap: 4px; justify-content: center; }
.hamburger span { display: block; width: 16px; height: 1.8px; background: #fff; border-radius: 2px; }

/* ============================================================
   HERO / BANNER
   ============================================================ */
.hero-section {
    position: relative;
    height: 100vh;
    min-height: 640px;
    overflow: hidden;
    background: #f0ebe3;
}
.hero-video-wrap { position: absolute; inset: 0; z-index: 1; transition: opacity 1s ease; }
.hero-video-wrap.is-hidden { opacity: 0; }
.hero-video {
    width: 100%; height: 100%;
    object-fit: cover; object-position: center;
    display: block;
}

/* Banner content container */
.hero-container {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 100%;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    pointer-events: none;
}

/* Right-side heading + CTA + icons */
.banner-right-panel {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    pointer-events: auto;
    opacity: 0;                       /* JS sets opacity to 1 when the video completes */
    transition: opacity 0.8s ease;    /* smooth 0 -> 100% fade-in on completion */
}
.banner-right-panel.is-visible {
    opacity: 1;
}
.brp-heading {
    font-family: 'Playfair Display', serif;
    font-size: clamp(28.6px, 3.3vw, 46.2px);
    font-weight: 700;
    line-height: 1.12;
    color: var(--brand-purple);
    margin: 0 0 28px;
}

/* Read More button (outlined blue) */
.cta-read-more {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 22px;
    border-radius: 50px;
    cursor: pointer;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .3px;
    background: transparent;
    color: var(--brand-blue);
    border: 2px solid var(--brand-blue);
    transition: background .25s ease, color .25s ease;
}
.cta-read-more .cta-arrow { display: flex; align-items: center; transition: transform .25s ease; }
.cta-read-more:hover { background: var(--brand-blue); color: #fff; }
.cta-read-more:hover .cta-arrow { transform: translateX(4px); }

/* Sector icons strip */
.brp-icons-bottom {
    display: flex;
    gap: 36px;
    margin-top: 40px;
}
.brp-icon-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    border-right: .5px solid #00000020;
    padding-right: 40px;
}
.brp-icons-bottom .brp-icon-item:last-child
{
border-right: none;
}
.brp-icon-circle {
    display: flex; align-items: center; justify-content: center;
}
.brp-icon-circle img { width: 66px; height: 66px; object-fit: contain; }
.brp-icon-item span {
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #1a1a1a;
    text-align: center;
    line-height: 1.3;
    white-space: nowrap;
}

/* ============================================================
   MESSAGE FROM THE CHAIRMAN
   ============================================================ */
.chairman-section {
    position: relative;
    background: url('../images/bg.jpeg') center center / cover no-repeat;
    overflow: hidden;
    height: 100vh;
    display: flex;
    align-items: flex-end;
}
.md-section
{
     background: url('../images/bg02.jpeg') center center / cover no-repeat;
}
.chairman-row {
    display: flex;
    align-items: flex-end;
    min-height: 88vh;
}
.chairman-img-col {
    flex: 0 0 44%;
    max-width: 44%;
    display: flex;
    align-items: flex-end;
}
.chairman-img-col img {
    width: 100%;
    height: auto;
    display: block;
}
.chairman-content-col {
    flex: 1;
    align-self: center;
    padding: 0 0 0 50px;
    max-width: 620px;
}
.chairman-label {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 18px;
}
.chairman-title {
    font-family: 'Playfair Display', serif;
    font-size:40px;
    font-weight: 700;
    line-height: 1.12;
    color: var(--brand-purple);
    margin-bottom: 22px;
}
.chairman-body {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.6;
    color: #333;
    margin-bottom:30px;
}
.chairman-name {
    font-family: 'Playfair Display', serif;
    font-size: 30px;
    font-weight: 700;
    color: var(--brand-purple);
    letter-spacing: 1px;
    margin-bottom:40px;
}

/* Managing Director — same layout mirrored: image right, content left */
.md-section .chairman-row { flex-direction: row-reverse; }
.md-section .chairman-content-col {
    padding: 0 50px 0 0;
    margin-left: auto;
}

/* ============================================================
   ADANI PORTFOLIO OF COMPANIES — scroll-driven slideshow
   ============================================================ */
.pf-scroll {
    position: relative;
    height: 100vh;
    background: #e9f6fc;
}
.pf-stage {
    position: relative;
    height: 100vh;
    overflow: hidden;
}

/* Background — base image + sliced "shatter" layer.
   Base and slices use identical sizing so the assembled slices match the
   base pixel-for-pixel (no jump when the transition completes). */
.pf-bgbase {
    position: absolute; inset: 0; z-index: 1;
    background-size: 100% 100%; background-position: 0 0;
}
.pf-bgslices { position: absolute; inset: 0; z-index: 2; overflow: hidden; }
.pf-slice {
    position: absolute; left: 0; width: 100%;
    background-repeat: no-repeat;
    visibility: hidden;
    will-change: transform;
}
.pf-scrim {
    position: absolute; inset: 0; z-index: 3;
    background: rgba(0, 0, 0, 0.5);
    pointer-events: none;
}

/* UI rail — centered to the same container as the header */
.pf-ui { position: absolute; inset: 0; z-index: 5; pointer-events: none; }
.pf-ui-inner {
    position: relative; height: 100%;
    padding-left: 0; padding-right: 0;
}

/* Left title — aligned to header content (16px inside the container) */
.pf-titlebar {
    position: absolute; left: 15px; top: 50%; transform: translateY(-50%);
    width: 330px; max-width: 40%;
    pointer-events: auto;
}
.pf-eyebrow {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px; font-weight: 700;
    color: #fff; margin-bottom: 14px;
}
.pf-gradient {
    font-family: 'Playfair Display', serif;
    font-size:40px;
    font-weight: 700; line-height: 1.15;
   color: #ffffff;
}
.pf-title-cta
{
    margin-top: 28px;
    color: #fff;
    border-color: #fff;
}
.pf-title-cta:hover { background: #fff; color: #006db7; }
/* Right-side figures (per slide) */
.pf-figs {
    position: absolute; right: 16px; top: 50%; z-index: 5;
    transform: translateY(-50%);
    pointer-events: auto;
    display: flex; flex-direction: column;
    min-width: 240px;
}
.pf-figs-fy {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px; font-weight: 700; color: #fff;
    padding-bottom: 12px;
    border-bottom: 2px solid rgba(255, 255, 255, 0.7);
    margin-bottom: 4px;
}
.pf-fig {
    display: flex; flex-direction: column; gap: 4px;
    padding: 16px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.pf-fig-label {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; color: rgba(255, 255, 255, 0.85);
}
.pf-fig-val {
    font-family: 'Noto Sans', sans-serif;
    font-size: 42px; font-weight: 800; color: #fff; line-height: 1;
}
.pf-figs-unit {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px; color: rgba(255, 255, 255, 0.7);
    margin-top: 10px;
}

/* Prev / next arrows */
.pf-nav {
    position: absolute; right: 16px; bottom: 40px; z-index: 6;
    display: flex; gap: 14px;
    pointer-events: auto;
}
.pf-arrow {
    width: 48px; height: 48px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: transparent; cursor: pointer;
    border: 1.5px solid rgba(255, 255, 255, 0.7); color: #fff;
    transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.pf-arrow:hover { background: #fff; color: #1a1a1a; border-color: #fff; }

/* Fixed beige card */
.pf-cardframe {
    position: absolute; top: 0; left: 50%;
    transform: translateX(-50%);
    z-index: 4;
    width: min(430px, 86vw);
    height: 100vh;
    background: #e9f6fc;
}
.pf-card-inner {
    height: 100%;
    padding: 40px 38px;
    display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center;
}
.pf-counter {
    font-family: 'Noto Sans', sans-serif;
    font-size: 13px; letter-spacing: 3px; font-weight: 600;
    color: #7a7464; margin-bottom: 0px;
}
.pf-head { margin-bottom: 10px; }
.pf-company {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px; font-weight: 700;
    color: #2b2b2b; margin-bottom: 0px;
}
.pf-largest {
    display: block;;
    font-size: clamp(22px, 2vw, 30px); font-weight: 400;
    color: #2b2b2b; line-height: 1.1;
}
.pf-largest strong { font-weight: 700; font-size:72px; display:block; }

/* Image box — images slide vertically (one over another) */
.pf-imagebox {
    position: relative;
    width: 100%; height: 230px;
    overflow: hidden;
}
.pf-imagebox img {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover; display: block;
    transform: translateY(100%);
    transition: transform 0.85s cubic-bezier(0.76, 0, 0.24, 1);
    will-change: transform;
}

.pf-foot { margin-top: 24px; display: flex; flex-direction: column; align-items: center; gap: 0px; }
.pf-sub {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px; color: #4a4a4a; line-height: 1.45;
    max-width: 320px;
}
.pf-fade { will-change: opacity; }
.pf-discover {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 10px 22px; border-radius: 50px; cursor: pointer;
    background: transparent;
    border: 1.5px solid #3a3a3a;
    font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 500;
    color: #2b2b2b;
    transition: background 0.25s ease, color 0.25s ease, transform 0.2s ease;
}
.pf-discover:hover { background: #2b2b2b; color: #fff; transform: translateY(-2px); }
.pf-arrow { font-style: normal; font-size: 16px; }

/* ============================================================
   STABLE, PREDICTABLE GROWTH — tabs
   ============================================================ */
.growth-section { background: #fff; padding: 80px 0px; }
.industry-section { background: #fff; padding: 20px 0 80px; }
.growth-title {
    font-family: 'Playfair Display', serif;
    font-size: 40px;
    font-weight: 700; line-height: 1.15;
    color: var(--brand-purple);
    text-align: center;
    margin-bottom: 44px;
}

/* Stacked blocks (headings one below another, separated by a line) */
.growth-blocks { display: flex; flex-direction: column; }
.growth-block { padding: 40px 0; border-bottom: 1px solid #e2e2e2; }
.growth-block:last-child { border-bottom: none; }
.growth-block:first-child { padding-top: 0; }
.growth-block-title {
    font-family: 'Playfair Display', serif;
    font-size: 28px; font-weight: 700; line-height: 1.2;
    margin-bottom: 26px;
}
/* Heading accent per block */
.growth-block[data-block="0"] .growth-block-title { color: #1b8fc4; }
.growth-block[data-block="1"] .growth-block-title { color: #8e44ad; }
.growth-block[data-block="2"] .growth-block-title { color: #8e44ad; }
.growth-block-title + .growth-block-sub { margin-top: -18px; }
.growth-block-sub {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px; font-weight: 700; line-height: 1.25;
    color: #111111; margin-bottom: 22px;
}
.growth-block-intro {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; color: #444; line-height: 1.4;
    margin-bottom: 22px;
}

/* Stat grid */
.stat-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.stat { padding: 22px 34px; border-left: 1px solid #e6e6e6; }
.stat:nth-child(3n+1) { border-left: none; padding-left: 0; }
.stat:nth-child(n+4) { border-top: 1px solid #e6e6e6; padding-top: 30px; }
/* Block 2 (5 stats): full-width divider under the first row (incl. 3.32x) */
.growth-block[data-block="1"] .stat:nth-child(-n+3) { border-bottom: 1px solid #e6e6e6; padding-bottom: 30px; }
.growth-block[data-block="1"] .stat:nth-child(n+4) { border-top: none; padding-top: 30px; }
.growth-block[data-block="1"] .stat:nth-child(5) { border-right: 1px solid #e6e6e6; }
.stat-num {
    font-family: 'Noto Sans', sans-serif;
    font-size: clamp(30px, 3.4vw, 46px); font-weight: 800;
    color: #3a3a3a; line-height: 1.05; margin-bottom: 12px;
}
.stat-num .cur { font-size: 0.55em; font-weight: 600; vertical-align: 0.18em; }
.stat-num .unit { font-size: 0.42em; font-weight: 500; color: #777; }
.stat-num .unit-lead { font-size: 0.55em; font-weight: 700; }
.stat-purple .stat-num { color: var(--brand-purple); }
.stat-purple .stat-num .unit,
.stat-purple .stat-num .cur { color: var(--brand-purple); opacity: .85; }
.stat-label {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; color: #444; line-height: 1.4;
}
.stat-note { font-size: 12.5px; color: #9a9a9a; margin-top: 6px; }
.stat-cagr {
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px; color: #555; margin-top: 14px;
}
.stat-cagr .tri { color: #5fb1a1; font-style: normal; font-size: 12px; margin-right: 4px; }
.stat-cagr b { color: var(--brand-blue); font-weight: 700; }

/* Graph slider (tab 4) — two graphs per slide */
.graph-swiper { width: 100%; }
.graph-pair {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap:200px;
    align-items: start;
}
.graph-cell img { width: 100%; height: auto; display: block; }
.graph-swiper-footer {
    display: flex; align-items: center; justify-content: space-between;
    margin-top:30px;
}
.graph-swiper .swiper-pagination {
    position: static; display: flex; gap: 10px; width: auto;
}
.graph-swiper .swiper-pagination-bullet {
    width: 9px; height: 9px; background: #c9c2d6; opacity: 1;
}
.graph-swiper .swiper-pagination-bullet-active { background: var(--brand-purple); }
.graph-nav { display: flex; gap: 12px; }
.graph-arrow {
    width: 42px; height: 42px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: transparent; cursor: pointer;
    border: 1.5px solid #c9c2d6; color: #8e278f;
    transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.graph-arrow:hover { background: #8e278f; border-color: #8e278f; color: #fff; }
.graph-arrow.swiper-button-disabled { opacity: .35; cursor: default; }
.graph-arrow.swiper-button-disabled:hover { background: transparent; color: #8e278f; border-color: #c9c2d6; }

/* ============================================================
   AFTERMARKET / INDUSTRY-LEADING — card slider
   ============================================================ */
.aft-section { position: relative; overflow: hidden; }
.aft-bgs { position: absolute; inset: 0; z-index: 0; }
.aft-bg {
    position: absolute; inset: 0;
    background-size: cover; background-position: center;
    opacity: 0; transition: opacity .8s ease;
}
.aft-bg.is-active { opacity: 1; }
.aft-overlay { position: absolute; inset: 0; z-index: 1; background: rgba(0, 0, 0, 0.5); }

.aft-inner {
    position: relative; z-index: 2;
    display: flex; align-items: center; gap: 40px;
    min-height: 100vh;
}

/* Left column — heading only */
.aft-left { flex: 1; max-width: 480px; }
.aft-head {
    font-family: 'Playfair Display', serif;
    font-size:40px; font-weight: 700;
    line-height: 1.15; color: #fff;
}

/* Right column — card slider */
.aft-right {
    flex: 1; position: relative;
    display: flex; align-items: center; justify-content: center;
    padding: 0 56px;
}
.aft-swiper { width: 100%; max-width: 440px; overflow: hidden; }
.aft-card {
    background: #fff; border-radius: 14px;
    padding: 16px 16px 26px;
}
.aft-card-img { border-radius: 10px; overflow: hidden; }
.aft-card-img img { width: 100%; height: 250px; object-fit: cover; display: block; }
.aft-card-title {
    font-family: 'Playfair Display', serif;
    font-size: 24px; font-weight: 600; color: #1f1f1f;
    margin: 20px 4px 8px;
}
.aft-card-sub {
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px; color: #666; margin: 0 4px;
}
/* Graph-only card */
.aft-card-graph { padding: 24px 22px; }
.aft-card-graph img { width: 100%; height: auto; display: block; }

/* Pagination bars (hidden) */
.aft-pagination { display: none; }
.aft-pagination .swiper-pagination-bullet {
    width: 28px; height: 4px; border-radius: 2px;
    background: #cfcabf; opacity: 1; transition: background .2s, width .2s;
}
.aft-pagination .swiper-pagination-bullet-active { background: #e8862e; width: 40px; }

/* Arrows flanking the card */
.aft-arrow {
    position: absolute; top: 50%; transform: translateY(-50%); z-index: 3;
    width: 46px; height: 46px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255, 255, 255, 0.65); cursor: pointer;
    border: 1px solid rgba(0, 0, 0, 0.15); color: #555;
    transition: background .2s ease, color .2s ease;
}
.aft-arrow:hover { background: #fff; color: #1f1f1f; }
.aft-prev { left: 0; }
.aft-next { right: 0; }

/* ============================================================
   PERFORMANCE HIGHLIGHTS  (scroll-driven split + image reveal)
   Base = mobile/static layout. Desktop animation is in the
   @media (min-width:1026px) block (and driven by js/app.js).
   ============================================================ */
.ph-section { position: relative; background: #fff; padding: 70px 0; overflow: hidden; }

/* Heading words */
.ph-headwrap {
    display: flex; align-items: center; justify-content: center;
    gap: 14px; flex-wrap: wrap; text-align: center;
}
.ph-t1, .ph-t2 {
    font-family: 'Playfair Display', serif;
    font-weight: 700; line-height: 1.1;
    font-size:40px;
    color: var(--brand-purple);
    margin: 0;
}

/* Mobile-only header (above the image) — hidden on tablet/desktop */
.ph-mobile-head { display: none; }

/* Reveal image */
.ph-img { margin: 36px auto 0; max-width: 980px; position: relative; }
.ph-img img { width: 100%; height: auto; display: block; border-radius: 16px; }
/* Dark overlay — fades in (via JS) only after the image is full.
   Sits at section level, above the image (z2) but below the numbers (z6). */
.ph-scrim { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.5); opacity: 0; z-index: 5; pointer-events: none; }

/* Frosted data box */
.ph-databox-wrap { margin: 40px auto 0; }
.ph-databox {
    background: transparent;
    padding: 40px 48px;
}
.ph-eyebrow {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; font-weight: 700; letter-spacing: .3px;
    color: #2a2a2a;
    text-align: center; margin-bottom: 8px;
}
.ph-box-title {
    font-family: 'Playfair Display', serif;
    font-size: 40px; font-weight: 700; color: var(--brand-purple);
    text-align: center; margin-bottom: 34px;
}
.ph-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.ph-cell { padding: 18px 30px; border-left: 1px solid #e6e6e6; }
.ph-cell:nth-child(3n+1) { border-left: none; padding-left: 0; }
.ph-cell:nth-child(n+4) { border-top: 1px solid #e6e6e6; padding-top: 26px; }
.ph-num {
    font-family: 'Noto Sans', sans-serif;
    font-size: clamp(28px, 3vw, 40px); font-weight: 800;
    color: var(--brand-purple); line-height: 1.05; margin-bottom: 10px;
}
.ph-num .cur { font-size: 0.6em; font-weight: 600; vertical-align: 0.12em; margin-right: 2px; }
.ph-num .unit { font-size: 0.4em; font-weight: 500; color: #777; }
.ph-label { font-family: 'Noto Sans', sans-serif; font-size: 15px; color: #444; line-height: 1.4; }
.ph-box-cta { text-align: center; margin-top: 34px; }

/* ---- Desktop scroll animation states ---- */
@media (min-width: 1026px) {
    .ph-section { padding: 0; }
    .ph-headwrap { height: 100vh; flex-wrap: nowrap; gap: 0; position: relative; z-index: 4; }
    /* Each word fills half the width and hugs the centre with a small equal
       gap — words sit together at the start, then split symmetrically and the
       reveal image grows from the exact centre with equal space on both sides. */
    .ph-t1 { flex: 1; text-align: right; padding-right: 10px; white-space: nowrap; }
    .ph-t2 { flex: 1; text-align: left;  padding-left: 10px;  white-space: nowrap; }
    .ph-img {
        position: absolute; inset: 0; margin: 0; max-width: none;
        height: 100vh; width: 100%; z-index: 2;
        transform: scale(0); opacity: 0;
    }
    .ph-img img { height: 100%; object-fit: cover; object-position: center; border-radius: 0; }
    .ph-databox-wrap {
        position: absolute; left: 50%; transform: translateX(-50%);
        bottom: 40px; width: 100%; margin: 0; z-index: 6; opacity: 0;
    }
    .ph-databox { padding: 36px 90px; }
    /* white text over the darkened image */
    .ph-eyebrow { color: rgba(255, 255, 255, 0.9); }
    .ph-box-title { color: #fff; }
    .ph-num { color: #fff; }
    .ph-num .cur { color: #fff; }
    .ph-num .unit { color: rgba(255, 255, 255, 0.8); }
    .ph-label { color: rgba(255, 255, 255, 0.9); }
    .ph-cell { border-left-color: rgba(255, 255, 255, 0.28); }
    .ph-cell:nth-child(n+4) { border-top-color: rgba(255, 255, 255, 0.28); }
    .ph-box-cta .cta-read-more { color: #fff; border-color: #fff; }
    .ph-box-cta .cta-read-more:hover { background: #fff; color: var(--brand-blue); }
}

/* ============================================================
   ABOUT AEL  (scroll-driven: text rises, image grows fullscreen)
   Base = mobile/static. Desktop animation in @media + js/app.js.
   ============================================================ */
.about-section {
    position: relative;
    background: rgb(239, 234, 225);
    overflow: hidden;
    min-height: 100vh;
}
.about-section > .container {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    min-height: 100vh;
}
.about-content {
    width: 50%;
    display: flex; flex-direction: column; align-items: flex-start;
    padding: 70px 50px 70px 0;
}
.about-label {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px; font-weight: 700; color: #2a2a2a;
    margin-bottom: 16px;
}
.about-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(30px, 4.2vw, 40px);
    font-weight: 700; line-height: 1.12; color: var(--brand-purple);
    margin: 0 0 20px;
}
.about-body {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px; line-height: 1.6; color: #444;
    margin: 0 0 28px; max-width: 560px;
}
.about-media { position: absolute; top: 0; right: 0; width: 50%; height: 100%; z-index: 1; overflow: hidden; }
.about-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; will-change: transform; }

/* ============================================================
   BUSINESS SEGMENT PERFORMANCE REVIEW  (expanding card slider)
   Active card grows (350 -> 730px); the inner image stays a fixed
   730px so narrow cards show a cropped centre that "opens up".
   Driven by Swiper (virtualTranslate) + manual step — see custom.js.
   ============================================================ */
.bsp-section {
    position: relative;
    background: #fff;                     /* white */
    padding: 80px 0;
    overflow: hidden;
    --bsp-card:    350px;                 /* normal card width  */
    --bsp-active:  730px;                 /* active card width   */
    --bsp-h:       490px;                 /* card height         */
    --bsp-radius:  15px;
}
.bsp-title {
    font-family: 'Playfair Display', serif;
    font-size: 40px; font-weight: 700; line-height: 1.15;
    color: var(--brand-purple);
    text-align: center;
    margin-bottom: 44px;
}
/* Left edge aligned to the header container (logo). Track bleeds off right.
   .bsp-nav shares the same padding so the arrows line up under the card. */
.bsp-colwrap, .bsp-nav { padding-left: 16px; }
@media (min-width: 992px)  { .bsp-colwrap, .bsp-nav { padding-left: calc((100% - 960px)  / 2 + 16px); } }
@media (min-width: 1200px) { .bsp-colwrap, .bsp-nav { padding-left: calc((100% - 1140px) / 2 + 16px); } }
@media (min-width: 1400px) { .bsp-colwrap, .bsp-nav { padding-left: calc((100% - 1320px) / 2 + 16px); } }

/* margin:0 overrides Swiper's default margin:auto (which centred the card) */
.bsp-swiper { position: relative; margin-left: 0; margin-right: 0; max-width: var(--bsp-active); overflow: visible; cursor: grab; }
.bsp-swiper.is-grabbing { cursor: grabbing; }
.bsp-swiper .swiper-slide {
    max-width: var(--bsp-card);
    overflow: hidden;
    transition: max-width 1s ease;       /* matches Swiper speed (1000ms) */
}
.bsp-swiper .swiper-slide.swiper-slide-active { max-width: var(--bsp-active); }

/* Image frame */
.bsp-slide-div {
    position: relative;
    height: var(--bsp-h);
    border-radius: var(--bsp-radius);
    overflow: hidden;
}
.bsp-pic {
    position: absolute; top: 0; bottom: 0; left: 50%;
    transform: translateX(-50%);
    width: var(--bsp-active); height: 100%;
    overflow: hidden;
    border-radius: var(--bsp-radius);
    transition: all .5s ease;
}
.bsp-pic img {
    width: 100%; height: 100%;
    object-fit: cover; object-position: center;
    border-radius: var(--bsp-radius);
    transition: transform .8s ease-in-out;
}
.bsp-slide-div:hover .bsp-pic img { transform: scale(1.12); }
/* bottom scrim so the caption stays legible */
.bsp-slide-div::after {
    content: ""; position: absolute; inset: 0;
    border-radius: var(--bsp-radius);
    background: linear-gradient(to top, rgba(0,0,0,.6), rgba(0,0,0,0) 42%);
    pointer-events: none;
}

/* Caption overlay (bottom-left, italic serif w/ underline) */
.bsp-caption {
    position: absolute; left: 40px; bottom: 46px; width: 80%; z-index: 2;
    pointer-events: none;
}
.bsp-caption h5 {
    color: #fff;
 font-weight: 500;
    font-size: 20px; line-height: 28px;
    margin: 0;
}
.bsp-cap-desc {
    color: rgba(255, 255, 255, .9);
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px; line-height: 1.5;
    margin: 8px 0 0;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

/* Footer row: arrows pinned left (aligned with the card), Read More centred */
.bsp-footer { position: relative; margin-top: 36px; min-height: 46px; }
.bsp-nav { display: flex; gap: 12px; align-items: center; }
.bsp-more {
    position: absolute; top: 0; bottom: 0; left: 0; right: 0;
    display: flex; align-items: center; justify-content: center;
    pointer-events: none;                /* let arrow clicks through the centred overlay */
}
.bsp-more .cta-read-more { pointer-events: auto; }
.bsp-arrow {
    width: 50px; height: 50px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: transparent; cursor: pointer;
    border: 1.5px solid #c9c2d6; color: var(--brand-purple);
    transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.bsp-arrow:hover { background: var(--brand-purple); border-color: var(--brand-purple); color: #fff; }
.bsp-arrow.swiper-button-disabled { opacity: .35; cursor: default; }
.bsp-arrow.swiper-button-disabled:hover { background: transparent; color: var(--brand-purple); border-color: #c9c2d6; }

/* Side arrows — prev on the left, next on the right, vertically centred on the cards */
.bsp-colwrap { position: relative; }
.bsp-nav { position: static; padding: 0; }
.bsp-prev, .bsp-next {
    position: absolute; top: 50%; transform: translateY(-50%); z-index: 6;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 5px 16px rgba(0, 0, 0, .14);
}
/* left arrow sits ON the first card (container offset + 16px inset) */
.bsp-prev { left: 32px; }
@media (min-width: 992px)  { .bsp-prev { left: calc((100% - 960px)  / 2 + 32px); } }
@media (min-width: 1200px) { .bsp-prev { left: calc((100% - 1140px) / 2 + 32px); } }
@media (min-width: 1400px) { .bsp-prev { left: calc((100% - 1320px) / 2 + 32px); } }
.bsp-next { right: 16px; }
.bsp-prev:hover, .bsp-next:hover { background: var(--brand-purple); }

/* ============================================================
   BUSINESS MODEL — EMPOWERED TO DELIVER VALUE  (capital tabs)
   Each panel sets --cap (its accent). The shared bottom block's
   --cap is updated by JS to follow the active tab.
   ============================================================ */
/* --cap-bg = active capital colour (set by JS on the section) */
.bm-section { background: #f4f6f8; padding: 80px 0; --cap-bg: #8e278f; }
.bm-eyebrow {
    display: block; text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px; font-weight: 700;
    color: #1a1a1a; margin-bottom: 12px;
}
.bm-title {
    font-family: 'Playfair Display', serif;
    font-size: 40px; font-weight: 700; color: var(--brand-purple);
    text-align: center; margin-bottom: 36px;
}

/* Tabs — a coloured indicator slides behind the active tab and, via the two
   curved SVGs, merges smoothly into the coloured body (notched-tab effect). */
.bm-tabs { display: flex; flex-wrap: nowrap; align-items: stretch; justify-content: space-between; gap: 0; position: relative; z-index: 2; }
.bm-select { display: none; }   /* shown only on mobile (replaces the tab row) */
.bm-tab {
    position: relative; z-index: 1;
    background: none; border: none; cursor: pointer;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; font-weight: 600; color: #2b2b2b;
    padding: 16px 4px; white-space: nowrap;
    transition: color .25s ease;
    letter-spacing: -0.8px;
}
.bm-tab[data-tab="0"] { padding-left: 14px; }
.bm-tab[data-tab="5"] { padding-right: 14px; }
.bm-tab:not(.is-active):hover { color: #000; }
.bm-tab.is-active { color: #fff; }

.bm-indicator {
    position: absolute; top: 0; left: 0; height: 100%; z-index: 0;
    background: var(--cap-bg);
    transition: transform .55s cubic-bezier(.77, 0, .18, 1),
                width .55s cubic-bezier(.77, 0, .18, 1),
                background .3s ease;
}
.bm-indicator svg { position: absolute; bottom: 0; height: 100%; width: auto; }
.bm-indicator svg path { fill: var(--cap-bg); transition: fill .3s ease; }
.bm-ind-l { right: 98%; }
.bm-ind-r { left: 98%; }
.bm-indicator.is-first { border-top-left-radius: 14px; }
.bm-indicator.is-first .bm-ind-l { display: none; }
.bm-indicator.is-last { border-top-right-radius: 14px; }
.bm-indicator.is-last .bm-ind-r { display: none; }

/* Coloured body block (background follows the active capital) */
.bm-body {
    background: var(--cap-bg);
    border-radius: 20px;
    padding: 30px 40px 30px;
    color: #fff;
    position: relative; z-index: 1;
    transition: background .3s ease;
}
/* square the corner that connects to the first / last tab */
.bm-section.cap-first .bm-body { border-top-left-radius: 0; }
.bm-section.cap-last  .bm-body { border-top-right-radius: 0; }

.bm-panel { display: none; }
.bm-panel.is-active { display: block; }

.bm-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 26px; }
.bm-head-left { display: flex; align-items: center; gap: 16px; }
.bm-icon { width: 52px; height: 52px; object-fit: contain; filter: brightness(0) invert(1); }
.bm-cap-title {
    font-family: 'Playfair Display', serif;
    font-size: 30px; font-weight: 700; color: #fff;
    text-transform: uppercase; letter-spacing: .5px;
}
.bm-sdg { height: 54px; width: auto; object-fit: contain; flex-shrink: 0; display:none; }

/* Input / Outcomes boxes (translucent on the coloured block) */
.bm-io {
    display: grid; grid-template-columns: 1fr 1fr 1fr;
    border: 1px solid rgba(255,255,255,.4); border-radius: 10px; overflow: hidden;
    margin-bottom: 34px;
}
/* Outcomes column — stats stacked one below another */
.bm-out { display: inline-block; vertical-align: top; margin: 0 24px 0 0; }
.bm-out:last-child { margin-right: 0; }
.bm-out-num { font-family: 'Noto Sans', sans-serif; font-size: 22px; font-weight: 800; color: #fff; line-height: 1.1; }
.bm-out-lbl { font-size: 14px; color: rgba(255,255,255,.88); margin-top: 3px; }
.bm-io-col { padding: 22px 22px; }
.bm-io-col + .bm-io-col { border-left: 1px solid rgba(255,255,255,.4); }
.bm-io-label {
    display: block; font-family: 'Noto Sans', sans-serif;
    font-size: 12px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase;
    color: rgba(255,255,255,.75); margin-bottom: 16px;
}
.bm-io-col ul { list-style: none; margin: 0; padding: 0; }
.bm-io-col li {
    position: relative; padding-left: 18px; margin-bottom: 10px;
    font-size: 15px; line-height: 1.5; color: #fff;
}
.bm-io-col li:last-child { margin-bottom: 0; }
.bm-io-col li::before {
    content: ""; position: absolute; left: 0; top: 8px;
    width: 6px; height: 6px; border-radius: 50%; background: #fff;
}
.bm-out-m
{
    margin-top: 20px;
}
/* Shared bottom block — outcomes (left) + business model (right) */
.bm-block-label { margin-bottom: 16px; color: rgba(255,255,255,.78); }
.bm-bottom-grid {
    display: grid; grid-template-columns: minmax(300px, 360px) 1fr;
    gap: 25px; align-items: start; margin-bottom: 30px;
}
/* When the active capital has no SDG, the business model takes the full row */
#businessModel.bm-no-sdg .bm-bottom-grid { grid-template-columns: 1fr; }
/* SDG Alignment moved into the panel columns → business model spans full row, left aligned */
.bm-bottom-grid--single { grid-template-columns: 1fr; }
.bm-bottom-grid--single .bm-modelcol { text-align: left; }
/* SDG Alignment column inside each capital panel (in place of Output) */
.bm-io-col .bm-sdg-box { margin-top: 4px; }
.bm-io-col .bm-sdg-box img { max-width: 100%; height: auto; display: block; }
/* SDG Alignment block (replaces outcomes in the shared bottom) */

.bm-sdg-box img { max-width: 100%; height: auto; display: block; }

/* Both outcome numbers in ONE box, split by a divider */
.bm-stats {
    display: flex;
    background: rgba(255,255,255,.14);
    border-left: 4px solid #fff;
    border-radius: 10px;
    overflow: hidden;
}
.bm-stat { flex: 1; padding: 22px 20px; }
.bm-stat + .bm-stat { border-left: 1px solid rgba(255,255,255,.28); }
.bm-stat-num { font-family: 'Noto Sans', sans-serif; font-size: 28px; font-weight: 800; color: #fff; line-height: 1.1; }
.bm-stat-label { font-size: 14px; color: rgba(255,255,255,.88); margin-top: 4px; }

/* Business & operating model icons (white), to the right of outcomes */
.bm-model { display: flex; flex-wrap: wrap; gap: 22px 5px; align-items: flex-start; }
.bm-model-item {
    display: flex; flex-direction: column; align-items: center; gap: 10px;
    width: 100px; text-align: center; text-decoration: none; transition: transform .2s;
}
.bm-model-item:hover { transform: translateY(-3px); }
.bm-model-item img { width: 46px; height: 46px; object-fit: contain; filter: brightness(0) invert(1); }
.bm-model-item span { font-size: 13px; color: #fff; line-height: 1.3; }

/* Read More on the coloured block → white outline */
.bm-cta { text-align: left; }
.bm-body .cta-read-more { color: #fff; border-color: #fff; background: transparent; }
.bm-body .cta-read-more:hover { background: #fff; color: var(--cap-bg); }

/* ============================================================
   OUR STRATEGY — animated image-stack slider (Yes Bank style)
   ============================================================ */
.yb-slider {
    --font-body: 'Noto Sans', sans-serif;
    --font-heading: 'Playfair Display', serif;
    --yb-white: #fff;
    --yb-gold: #c79a4b;
    position: relative; width: 100%; height: 100vh; overflow: hidden;
    display: flex; flex-direction: column; z-index: 2;
    background-color: #1a3a6b;
    transition: background-color 1.2s ease;
}
/* Wrap = Bootstrap container (aligns content with the header), 16px gutter */
.yb-slider__wrap { flex: 1; display: flex; flex-direction: column; min-height: 0; width: 100%; padding-top: 90px; padding-bottom: 36px; padding-left: 16px; padding-right: 16px; }
.yb-slider__body { flex: 1; display: flex; flex-direction: column; padding: 0; min-height: 0; position: relative; }

/* LEFT */
.yb-slider__left { display: flex; flex-direction: column; flex: 1; min-height: 0; position: relative; z-index: 4; justify-content: center; }
.yb-slider__label { font-family: var(--font-body); font-size: 18px; font-weight: 700; color: rgba(255,255,255,.85); margin-bottom: 16px; }
.yb-slider__title { font-family: var(--font-heading); font-size: clamp(30px, 4vw, 40px); font-weight: 800; color: var(--yb-white); line-height: 1.15; overflow: hidden; position: relative; margin-bottom: 24px; }
.yb-slider__title span { display: inline-block; will-change: transform; }
.yb-slider__footer { flex-shrink: 0; }
.yb-slider__desc { font-family: var(--font-body); font-size: 15px; color: rgba(255,255,255,.7); line-height: 1.7; max-width: 440px; margin-bottom: 24px; }
/* Read More button (matches other sections), white variant for the dark bg */
.yb-slider .cta-read-more { color: #fff; border-color: #fff; background: transparent; }
.yb-slider .cta-read-more:hover { background: #fff; color: #1a3a6b; }

/* RIGHT (image stack) */
.yb-slider__right { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; pointer-events: none; }
.yb-slider__images { width: 100%; height: 100%; position: relative; }
.yb-slider__slide { position: absolute; top: 50%; right: 0; left: auto; width: 55%; aspect-ratio: 1.4; overflow: hidden; border-radius: 12px; will-change: transform, filter, opacity; }
.yb-slider__slide img { width: 100%; height: 100%; object-fit: cover; filter: brightness(.9); }

/* NAV */
.yb-slider__nav { align-self: flex-end; margin-top: 20px; display: flex; align-items: center; gap: 16px; z-index: 5; }
.yb-slider__arrow { width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(255,255,255,.4); background: none; color: var(--yb-white); font-size: 20px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: background .3s ease, border-color .3s ease; }
.yb-slider__arrow:hover { background: var(--yb-gold); border-color: var(--yb-gold); }
.yb-slider__counter-display { font-family: var(--font-body); font-size: 13px; font-weight: 500; color: rgba(255,255,255,.6); letter-spacing: .1em; }

/* Desktop: title left, images right */
@media (min-width: 1024px) {
    .yb-slider__body { flex-direction: row; padding: 0; }
    .yb-slider__left { width: 50%; flex-shrink: 0; }
    .yb-slider__right { position: static; flex: 1; display: flex; align-items: center; justify-content: flex-end; min-height: 0; pointer-events: auto; }
    .yb-slider__images { display: flex; align-items: center; justify-content: flex-end; }
    .yb-slider__slide { width: 80%; right: 0; left: auto; }
}
@media (max-width: 767.98px) {
    .yb-slider__wrap { padding-top: 40px; }
    .yb-slider__title { font-size: clamp(24px, 9vw, 40px); }
    .yb-slider__slide { width: 90%; left: 0; margin: auto; }
    .yb-slider__desc { display: none; }
    .yb-slider__title
    {
        margin-bottom: 15px;
    }
}
/* ============================================================
   ESG — full-screen background image with left heading
   ============================================================ */
.esg-section {
    position: relative;
    min-height: 100vh;
    background: url('../images/esg-img.png') center center / cover no-repeat;
    display: flex;
    align-items: center;
}
.esg-section .container { width: 100%; }
.esg-title {
    font-family: 'Playfair Display', serif;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.15;
    color: #fff;
    margin: 0;
}
@media (max-width: 767.98px) {
    .esg-section { min-height: 80vh; }
    .esg-title { font-size: clamp(28px, 8vw, 42px); }
}

/* ============================================================
   ESG FOCUS AREAS — vertical parallax slider (Swiper 11)
   ============================================================ */
.esg-slider-section { background: #fff; padding: 70px 0; }
.upk-salf-slider-wrapper {
    display: flex; flex-direction: row; position: relative;
    background: #fff; box-shadow: 0 5px 24px rgba(0,0,0,.08);
    border-radius: 10px; overflow: hidden;
    height: 400px; padding: 30px 0 30px 30px;
}
.upk-salf-slider-wrapper .swiper { flex: 1 1 auto; width: 100%; min-width: 0; height: 100%; }
.upk-salf-item { position: relative; display: flex; flex-direction: row-reverse; }
.upk-salf-item.swiper-slide-active .upk-salf-title,
.upk-salf-item.swiper-slide-active .upk-salf-desc,
.upk-salf-item.swiper-slide-active .upk-salf-button { opacity: 1; }
.upk-salf-image-wrap { height: 100%; width: 100%; }
.upk-xanc-img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 8px; }
.upk-salf-content-wrap {
    position: absolute; left: 0; bottom: 0; top: unset; max-width: 460px;
    overflow: hidden; background: rgba(255,255,255,.55);
    backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px);
    transition: backdrop-filter .9s; padding: 20px; border-radius: 8px;
}
.upk-salf-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(24px, 3vw, 40px); font-weight: 700; line-height: 1.2;
    color: var(--brand-purple); margin-bottom: 18px; opacity: 1;
}
.upk-salf-desc {
    font-family: 'Noto Sans', sans-serif;
    color: #656565; font-size: 14px; line-height: 1.6; margin-bottom: 20px; opacity: 1;
}
.upk-salf-button { opacity: 1; }
.upk-salf-button .link {
    font-family: 'Noto Sans', sans-serif;
    color: #2b2d42; cursor: pointer; font-weight: 500; text-decoration: none;
    font-size: 14px; transition: color .3s ease;
}
.upk-salf-button .link:hover { color: var(--brand-purple); }
.link--arrowed { display: inline-flex; align-items: center; gap: 8px; }
.link--arrowed .arrow-icon { transition: transform .3s ease; }
.link--arrowed .arrow-icon--circle { transition: stroke-dashoffset .3s ease; stroke-dasharray: 95; stroke-dashoffset: 95; }
.link--arrowed g { stroke: currentColor; color: #2b2d42; }
.link--arrowed:hover .arrow-icon { transform: translate3d(5px, 0, 0); }
.link--arrowed:hover .arrow-icon--circle { stroke-dashoffset: 0; }
.link--arrowed:hover g { color: var(--brand-purple); }

/* Right-side rail: circular up/down arrows (same style as other sections) */
.upk-salf-nav-pag-wrap { position: absolute; top: 0; right: 0; height: 100%; width: 76px; display: flex; align-items: center; justify-content: center; }
.upk-salf-navigation { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.esg-counter {
    display: flex; flex-direction: column; align-items: center; gap: 2px; line-height: 1.1;
    font-family: 'Noto Sans', sans-serif; color: #2b2d42;
}
.esg-counter .esg-cur { font-size: 15px; font-weight: 700; }
.esg-counter .esg-sep {
    font-size: 0;                                  /* hide the dash glyph */
    width: 18px; height: 1px; margin: 3px 0;
    background: rgba(43, 45, 66, .4);
}
.esg-counter .esg-total { font-size: 13px; color: rgba(43, 45, 66, .6); }
.upk-button-prev, .upk-button-next { cursor: pointer; }

@media (min-width: 768px) {
    .upk-salf-slider-wrapper { height: 550px; padding: 60px 0 60px 60px; }
    .upk-salf-title { font-size: 36px; }
    .upk-salf-content-wrap { max-width: 400px; padding: 40px; padding-left: 0; top: 50%; transform: translateY(-50%); bottom: unset; background: rgba(255,255,255,.55); }
    .upk-salf-image-wrap { width: 86%; }
}
@media (min-width: 1024px) {
    .upk-salf-slider-wrapper { height: 600px; padding: 70px; }
    .upk-salf-title { font-size: 40px; }
    .upk-salf-content-wrap { max-width: 460px; padding: 50px; padding-left: 0; }
    .upk-salf-desc { font-size: 16px; }
    .upk-salf-button .link { font-size: 16px; }
    .upk-salf-image-wrap { width: 84%; }
}
/* ============================================================
   DOWNLOAD CENTRE
   ============================================================ */
.dc-section {
    background: linear-gradient(90deg, #1565C0 0%, #7B2FA8 50%, #C01535 100%);
    padding: 70px 0 64px;
}
.dc-title {
    font-family: 'Playfair Display', serif;
    font-size: 40px; font-weight: 700; color: #fff;
    text-align: center; margin-bottom: 44px;
}
.dc-grid {
    display: grid;
    grid-template-columns: 1fr 240px 1fr;
    border: 1px solid rgba(255, 255, 255, .35);
}
.dc-col-left, .dc-center { border-right: 1px solid rgba(255, 255, 255, .35); }

.dc-item {
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
    padding: 30px 30px; min-height: 100px;
    color: #fff; text-decoration: none;
    border-bottom: 1px solid rgba(255, 255, 255, .35);
    transition: background .25s ease;
}
.dc-col-left .dc-item:last-child, .dc-col-right .dc-item:last-child { border-bottom: none; }
.dc-item span { font-family: 'Noto Sans', sans-serif; font-size: 17px; font-weight: 600; }
.dc-item svg { width: 24px; height: 24px; flex-shrink: 0; opacity: .9; transition: transform .25s ease; }
.dc-item:hover { background: rgba(255, 255, 255, .08); }
.dc-item:hover svg { transform: translateY(3px); }

.dc-center {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    text-align: center; padding: 30px 18px;
}
.dc-center img { width: 168px; height: auto; display: block; box-shadow: 0 8px 22px rgba(0, 0, 0, .3); }
.dc-caption { color: #fff; font-family: 'Noto Sans', sans-serif; font-size: 15px; font-weight: 600; line-height: 1.45; margin-top: 18px; }

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer {
    background-image: linear-gradient(rgba(0,0,0,.28), rgba(0,0,0,.28)),
                      linear-gradient(90deg, #1565C0 0%, #7B2FA8 50%, #C01535 100%);
    padding: 26px 0;
}
.footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.footer-copy, .footer-credit { color: rgba(255, 255, 255, .9); font-family: 'Noto Sans', sans-serif; font-size: 14px; margin: 0; }
.footer-credit a { color: #ffffff; text-decoration: none; }
.footer-credit a:hover { text-decoration: underline; }
.footer-social { display: flex; align-items: center; gap: 16px; }
.footer-social-label { color: #fff; font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 600; margin-right: 6px; }
.footer-social a {
    display: inline-flex; align-items: center; justify-content: center;
    width: 30px; height: 30px; border-radius: 6px;
    background: rgba(255, 255, 255, .12); color: #fff; font-size: 15px;
    transition: background .25s ease;
}
.footer-social a:hover { background: rgba(255, 255, 255, .28); }
/* ============================================================
   INFRASTRUCTURE PLATFORM CONTRIBUTION — auto tab slider
   ============================================================ */
.ipc-section {
    background: linear-gradient(90deg, #1565C0 0%, #7B2FA8 50%, #C01535 100%);
    padding: 70px 0 52px;
}
.ipc-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(28px, 3.4vw, 40px); font-weight: 700;
    color: #fff; text-align: center; line-height: 1.2; margin-bottom: 36px;
}
.ipc-card {
    max-width: 820px; margin: 0 auto;
    background: #fff; border-radius: 16px;
    box-shadow: 0 22px 55px rgba(0, 0, 0, .22);
    padding: 26px 34px 24px;
}
.ipc-card-head { display: flex; align-items: baseline; justify-content: space-between; padding-bottom: 16px; border-bottom: 1px solid #e3e3e3; }
.ipc-fy { font-family: 'Noto Sans', sans-serif; font-size: 15px; font-weight: 700; color: #222; }
.ipc-unit { font-family: 'Noto Sans', sans-serif; font-size: 12px; color: #9a9a9a; }
.ipc-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid #ececec; }
.ipc-row-label { font-family: 'Noto Sans', sans-serif; font-size: 16px; color: #333; }
.ipc-row-val { font-family: 'Noto Sans', sans-serif; font-size: clamp(26px, 3vw, 34px); font-weight: 800; color: var(--brand-purple); letter-spacing: .5px; }
.ipc-note { font-family: 'Noto Sans', sans-serif; font-size: 11.5px; line-height: 1.55; color: rgba(142, 39, 143, .7); margin-top: 16px; }

/* Tabs with progress bars */
.ipc-tabs { display: flex; gap: 8px; margin-top: 34px; }
.ipc-tab {
    flex: 1; min-width: 0; background: none; border: none; cursor: pointer;
    display: flex; flex-direction: column; align-items: center; gap: 12px;
    padding: 6px 4px 0;
    font-family: 'Noto Sans', sans-serif; font-size: 13px; font-weight: 600;
    letter-spacing: .5px; text-transform: uppercase;
    color: rgba(255, 255, 255, .7); transition: color .25s ease;
}
.ipc-tab:hover { color: #fff; }
.ipc-tab.is-active { color: #fff; }
.ipc-tab-label { white-space: nowrap; }
.ipc-tab-bar { width: 100%; height: 3px; background: rgba(255, 255, 255, .3); border-radius: 2px; overflow: hidden; }
.ipc-tab-fill { display: block; height: 100%; width: 0; background: #fff; border-radius: 2px; }
/*-----------Header Css End-------------*/

/* ============================================================
   ACCELERATING INFRASTRUCTURE POPUP
   ============================================================ */
.ai-popup-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0, 0, 0, 0.72);
    display: flex;
    align-items: stretch;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0.4s ease;
}
.ai-popup-overlay.is-open {
    opacity: 1;
    visibility: visible;
}
/* Full-screen panel with the PDF's soft blue gradient */
.ai-popup-panel {
    position: relative;
    width: 100%;
    height: 100vh;
    max-height: 100vh;
    background: linear-gradient(135deg, #ffffff 0%, #eaf6fc 45%, #d6eefa 100%);
    border-radius: 0;
    overflow: hidden;
    transform: translateY(100%);
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
    display: flex;
    flex-direction: column;
}
.ai-popup-overlay.is-open .ai-popup-panel {
    transform: translateY(0);
}

/* Close button */
.ai-close {
    position: absolute;
    top: 22px;
    right: 26px;
    z-index: 10;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1.5px solid rgba(0,0,0,0.18);
    background: rgba(255,255,255,0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #333;
    transition: background 0.2s, color 0.2s;
}
.ai-close:hover { background: var(--brand-purple); color: #fff; border-color: var(--brand-purple); }

/* Scroll container */
.ai-popup-inner {
    overflow-y: auto;
    overflow-x: hidden;
    height: 100vh;
    max-height: 100vh;
    padding: 36px 60px 40px;
    -webkit-overflow-scrolling: touch;
}

/* Two-column grid: media+person box (left) | all text (right) */
.ai-grid {
    display: grid;
    grid-template-columns: 0.85fr 1fr;
    gap: 50px;
    align-items: start;
}

/* Title column — dark charcoal title with purple underline (as per PDF) */
.ai-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(28px, 3.2vw, 46px);
    font-weight: 700;
    line-height: 1.1;
    color: #2b2b2b;
    margin-bottom: 22px;
    padding-bottom: 22px;
    position: relative;
}
.ai-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 70px;
    height: 2px;
    background: var(--brand-purple);
}
/* Subhead — same grey body style, NOT highlighted (as per PDF) */
.ai-subhead {
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #555;
    line-height: 1.7;
    margin-bottom: 16px;
}
.ai-body {
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.7;
    color: #555;
    margin-bottom: 16px;
}
.ai-body:last-child { margin-bottom: 0; }

/* Left media column */
.ai-col-media { position: relative; }
.ai-visual {
    position: relative;
    border-radius: 14px;
    overflow: hidden;
    height: 330px;
}
.ai-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
    filter: grayscale(30%);
}
.ai-visual-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(142,39,143,0.18) 0%, rgba(0,109,183,0.12) 100%);
    pointer-events: none;
}
.ai-grid-lines {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    mix-blend-mode: screen;
}

/* Person card — clean white box with purple border (as per PDF) */
.ai-person-card {
    margin-top: 22px;
    border: 1.5px solid var(--brand-purple);
    border-radius: 10px;
    padding: 22px 24px;
    background: rgba(255, 255, 255, 0.55);
}
.ai-person-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(142,39,143,0.2);
    margin-bottom: 14px;
}
.ai-person-name {
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    font-weight: 700;
    color: #2b2b2b;
}
.ai-person-role {
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    color: #555;
    line-height: 1.5;
}
.ai-person-bio {
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.65;
    color: #333;
    margin: 0;
}

/* ============================================================
   PORTFOLIO PAGE — A LEGACY OF VISION, LEADERSHIP & NATIONHOOD
   ============================================================ */
.pl-section {
    background: #fff;
    padding: 130px 0 0px;
}
/* Responsible Supply Chain: whole banner on a light blue background */
#rscHero.pl-section {
    padding-bottom: 40px;
    background: #d9ecf6;
}
#rscHero .pl-intro-box {
    margin-bottom: 0;
}
.pl-label {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px; font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 14px;
}
.pl-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(26px, 4vw, 40px);
    font-weight: 700;
    line-height: 1.12;
    color: var(--brand-purple);
    margin-bottom:30px;
}

/* Intro lead paragraph (no background, aligned to the heading) */
.pl-intro-box {
    padding: 0;
    margin-bottom: 50px;
}
/* Customer Relations intro sits on a light blue patch */
#customerRelationsHero .pl-intro-box {
    padding: 30px 32px;
    background: #dcecf7;
}
.pl-intro-box p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    font-weight: 600;
    color: var(--brand-blue);
    margin: 0;
}

/* ===== Reusable two-column banner (label + title + quote on the left,
   image placeholder on the right) — mirrors the .st-hero reference layout.
   The banner sits on a light tint of the quote's theme colour; the intro
   paragraph moves out below the banner, full width, in black. ===== */
.pl-hero {
    padding: 130px 0 56px;               /* light-tint banner section */
}
.pl-hero-row {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 50px;
    align-items: stretch;
    min-height: 440px;
}
.pl-hero-main {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
/* Opener quote inside the banner — solid accent patch, white bold text
   (accent colour set per page via .pl-hero-quote--<page>). */
.pl-hero-quote {
    background: var(--brand-purple);
    padding: 28px 32px 32px;
    margin: 22px 0 0;
}
.pl-hero-quote .pl-hero-quote-dot { display: block; width: 52px; height: auto; margin-bottom: 14px; }
.pl-hero-quote p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.4;
    font-weight: 700;
    color: #ffffff !important;   /* always white on the accent patch, beats page-level p colours */
}
/* Right-side image placeholder */
.pl-hero-media {
    position: relative;
    min-height: 440px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f2f4f6;
    border: 1px dashed #c3ccd3;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #8aa3b0;
}
.pl-hero-media img { width: 100%; height: 100%; min-height: 440px; object-fit: cover; display: block; }

/* Our People banner — hand-drawn "pen line" illustration + draw-on animation */
.pl-hero-media--draw {
    background: transparent;
    border: 0;
    padding: 0;
    overflow: hidden;
    /* Top-align + full-width so every banner GIF sits at the same position,
       regardless of the GIF's own aspect ratio (consistent across all pages). */
    align-items: flex-start;
    justify-content: stretch;
}
.op-draw-svg {
    /* Full width, natural aspect ratio (no crop). Height follows the width so the
       whole illustration is visible; flex-end on the parent pins it to the bottom. */
    width: 100%;
    height: auto;
    display: block;
    /* "meet" = never crop; the SVG box shows the complete drawing. */
}
/* Banner illustration GIF (replaces the drawn SVG) */
.op-hero-gif {
    width: 100%;
    height: auto;
    display: block;
}
/* Banner GIF variant for ne-hero-img based banners (e.g. corporate governance) */
.ne-hero-img--gif,
.ne-hero-img--gif.cg-hero-img {
    background: transparent;
    border: 0;
    padding: 0;
    overflow: hidden;
    min-height: 0;
    align-items: flex-start;
    justify-content: stretch;
}
.ne-hero-img--gif img { width: 100%; height: auto; min-height: 0; object-fit: contain; }
.op-draw-bg { fill: #097ab8; }
.op-draw-lines path {
    fill: none;
    stroke: #00b4d8;
    stroke-width: 2px;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-miterlimit: 10;
    /* --len is set per-path by JS (getTotalLength); fallback keeps the line visible */
    stroke-dasharray: var(--len, none);
    stroke-dashoffset: var(--len, 0);
}
/* When the banner scrolls into view, .is-drawing triggers the pen stroke */
.pl-hero-media--draw.is-drawing .op-draw-lines path {
    animation: opDraw 2.6s cubic-bezier(.6,.05,.2,1) forwards;
    animation-delay: var(--delay, 0s);
}
@keyframes opDraw {
    to { stroke-dashoffset: 0; }
}
/* Respect reduced-motion: show the finished illustration, skip the draw */
@media (prefers-reduced-motion: reduce) {
    .op-draw-lines path { stroke-dashoffset: 0 !important; animation: none !important; }
}
@media (max-width: 991px) {
    .op-draw-svg { min-height: 280px; }
}

/* Intro paragraph moved out below the banner — full width, black text */
.pl-lead {
    background: #fff;
    padding: 46px 0 0;
    margin-bottom: 30px;
}
.pl-lead p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.8;
    font-weight: 500;
    color: #1a1a1a;
    margin: 0 0 18px;
    /* max-width: 1120px; */
}
.pl-lead p:last-child { margin-bottom: 0; }

/* Per-page accent: quote patch colour + matching light banner background */
.pl-hero--env  { background: #e4efec; }
.pl-hero-quote--env  { background: #006a5e; }
.pl-hero--people { background: #e3f1fa; }
.pl-hero-quote--people { background: #1a7bbd; }
.pl-hero--ohs { background: #e0f0fa; }
.pl-hero-quote--ohs { background: #0f83c1; }
.pl-hero--cr { background: #e3f1fa; }
.pl-hero-quote--cr { background: #1a7bbd; }
.pl-hero--csr { background: #e2f0f9; }
.pl-hero-quote--csr { background: #1a7bbd; }
.pl-hero--rsc { background: #dcecf6; }
.pl-hero-quote--rsc { background: #1a7bbd; }

/* Opener quotes: transparent patch, accent-coloured quote text, no top/side padding
   (the accent colour is the patch colour each variant previously used) */
.pl-hero-quote--env,
.pl-hero-quote--people,
.pl-hero-quote--ohs,
.pl-hero-quote--cr,
.pl-hero-quote--csr,
.pl-hero-quote--rsc {
    background: transparent;
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
}
.pl-hero-quote--env p    { color: #006a5e !important; }
.pl-hero-quote--people p { color: #1a7bbd !important; }
.pl-hero-quote--ohs p    { color: #0f83c1 !important; }
.pl-hero-quote--cr p     { color: #1a7bbd !important; }
.pl-hero-quote--csr p    { color: #1a7bbd !important; }
.pl-hero-quote--rsc p    { color: #1a7bbd !important; }

@media (max-width: 991px) {
    /* Stack the banner; reorder so on mobile it reads:
       eyebrow -> title -> GIF (full width) -> quote */
    .pl-hero-row { display: flex; flex-direction: column; gap: 22px; min-height: 0; }
    .pl-hero-main { display: contents; }
    .pl-label { order: 1; }
    .pl-title { order: 2; }
    .pl-hero-media { order: 3; width: 100%; min-height: 0; }
    .pl-hero-media img,
    .pl-hero-media--draw img,
    .op-hero-gif { width: 100%; height: auto; min-height: 0; }
    .pl-hero-quote { order: 4; margin-top: 4px; }
    .pl-hero { padding-top: 110px; }
}

/* Guided-by paragraphs (left) + bird image (right) */
.pl-guided-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
    margin-bottom: 60px;
}
.pl-guided-text p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.75;
    color: #444;
    margin: 0 0 18px;
}
.pl-guided-text p:last-child { margin-bottom: 0; }
.pl-guided-media {
    border-radius: 14px;
    overflow: hidden;
}
.pl-guided-media img {
    width: 100%;
    height: auto;
    display: block;
}

/* Pedigree, Vision + Values, Culture — stacked one below the other */
.pl-pvc-row {
    display: flex;
    flex-direction: column;
    gap: 40px;
    margin-bottom: 60px;
}
/* Vision+Values and Culture side by side */
.pl-pvc-two {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px 44px;
    align-items: start;
}
.pl-col-title {
    font-family: 'Playfair Display', serif;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 16px;
}
.pl-col-title + .pl-list,
.pl-col-body + .pl-col-title { margin-top: 26px; }
.pl-title-purple { color: var(--brand-purple); }
.pl-title-blue { color: #00aeef; }
.pl-col-body {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.75;
    color: #444;
    margin: 0;
}
.pl-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.pl-list li {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #444;
    margin-bottom: 14px;
}
.pl-list li:last-child { margin-bottom: 0; }
.pl-list li strong { color: #1a1a1a; font-weight: 700; }

/* ---- A portfolio invested in India's tomorrow (text left, image right) ---- */
.pf-tomorrow { background: #eef6fb; overflow: hidden; }
.pf-tomorrow-grid {
    display: grid;
    grid-template-columns: 2fr 3fr;   /* image gets the larger share */
    align-items: stretch;
    gap: 50px;
    min-height: 88vh;
}
.pf-tomorrow-text {
    display: flex; flex-direction: column; justify-content: center;
    padding: 70px 0;
}
.pf-tomorrow-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(30px, 3.6vw, 50px);
    font-weight: 700; line-height: 1.12; color: var(--brand-purple);
    margin-bottom: 34px;
}
.pf-tomorrow-pillars {
    display: flex; flex-direction: column;
    gap: 22px;
}
.pf-pillar span {
    display: inline-block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 19px; font-weight: 600; color: #1a1a1a; line-height: 1.4;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--brand-blue);
}
.pf-tomorrow-media {
    position: relative;   /* aligns to the container (menu) right edge */
}
.pf-tomorrow-media img {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover; object-position: center;
    display: block;
}

/* ---- Built Around Core Infrastructure chart ---- */
.pf-chart-section { background: #fff; padding: 80px 0; }
.pf-sec-title {
    font-family: 'Playfair Display', serif;
    font-size: 28px;
    font-weight: 700; color: var(--brand-purple);
    margin-bottom: 16px;
}
.pf-sec-intro {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; line-height: 1.7; color: #444;
    max-width: 880px; margin-bottom: 40px;
}
.pf-chart-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: 6px; }
.pf-chart { min-width: 980px; }
/* Company-structure chart as a single SVG */
.pf-chart-img { margin: 8px 0 24px; }
.pf-chart-img img { width: 100%; max-width: 1040px; height: auto; display: block; }

/* adani logo centred over a thin rule */
.pf-chart-logo {
    position: relative;
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 16px;
}
.pf-chart-logo::before {
    content: ""; position: absolute; left: 16%; right: 16%; top: 50%;
    height: 1px; background: #d6d6d6;
}
.pf-chart-logo img { height: 38px; position: relative; background: #fff; padding: 0 24px; }

/* Group banners aligned to the 5-column grid */
.pf-chart-banners {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
    margin-bottom: 16px;
}
.pf-banner {
    position: relative;
    background: var(--brand-purple);
    color: #fff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px; font-weight: 700;
    text-align: center;
    padding: 12px 10px;
    border-radius: 3px;
}
.pf-banner-flagship { grid-column: 1; }
.pf-banner-core     { grid-column: 2 / 4; }
.pf-banner-primary  { grid-column: 4; }
.pf-banner-other    { grid-column: 5; }
/* blue right-pointing arrow sitting in the gap after the banner */
.pf-banner-arrow {
    position: absolute; right: -13px; top: 50%; transform: translateY(-50%);
    width: 0; height: 0;
    border-top: 11px solid transparent;
    border-bottom: 11px solid transparent;
    border-left: 12px solid var(--brand-blue);
}

/* Column heads + top tier (5-column grid) */
.pf-chart-cols {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
    align-items: start;
}
.pf-chart-heads { margin-bottom: 16px; }
/* stretch top columns to equal height so the AEL connector can run full length */
.pf-chart-top { align-items: stretch; }
.pf-chart-top .pf-chart-col:first-child { position: relative; }
.pf-chart-top .pf-chart-col:first-child::after {
    content: ""; position: absolute;
    left: 50%; top: 82px; bottom: -16px;
    border-left: 2px solid var(--brand-blue);
}
.pf-col-head {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; font-weight: 700; color: var(--brand-blue);
    text-align: center; line-height: 1.25;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--brand-blue);
}
.pf-node {
    display: flex; flex-direction: column; align-items: center;
    text-align: center;
    border-radius: 6px;
    padding: 12px 10px;
    margin-bottom: 14px;
}
.pf-node:last-child { margin-bottom: 0; }
.pf-listed   { background: #dceefb; border: 1.5px solid #2aa6e0; }
.pf-unlisted { background: #ececec; border: 1.5px solid transparent; }
.pf-direct   { background: #fff;    border: 1.5px solid #2aa6e0; }
.pf-node-name { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #1a1a1a; }
.pf-node-sub  { font-family: 'Noto Sans', sans-serif; font-size: 14px; color: #555; margin-top: 2px; }
.pf-node-pct  { font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 600; margin-top: 8px; }
.pf-pct-family { color: var(--brand-purple); }
.pf-pct-ael    { color: #0093d0; }
.pf-pct-ambuja { color: #3a9d3a; }

/* Materials sub-group (ACC + Orient under Ambuja) */
.pf-down-arrow {
    display: block; margin: 0 auto 12px;
    width: 0; height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 9px solid var(--brand-blue);
}
.pf-subgroup {
    border: 1px solid #cfcfcf;
    border-radius: 6px;
    padding: 14px 14px 0;
}

/* Bottom band — bordered box fed by the AEL connector */
.pf-chart-lower {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
    margin-top: 16px;
}
.pf-lower-connector { position: relative; }
.pf-lower-connector::before {
    content: ""; position: absolute;
    left: 50%; top: 0; bottom: 50%; width: 50%;
    border-left: 2px solid var(--brand-blue);
    border-bottom: 2px solid var(--brand-blue);
}
.pf-lower-connector::after {
    content: ""; position: absolute;
    right: -2px; bottom: calc(50% - 7px);
    width: 0; height: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 10px solid var(--brand-blue);
}
.pf-band {
    grid-column: 2 / 6;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border: 1px solid #c9c9c9;
    border-radius: 6px;
    padding: 18px 6px;
}
.pf-band-col { padding: 0 12px; }
.pf-band-col + .pf-band-col { border-left: 1px dashed #c2c2c2; }

/* Legend */
.pf-legend {
    display: flex; flex-wrap: wrap; gap: 12px 26px;
    margin: 34px 0 24px;
    font-family: 'Noto Sans', sans-serif; font-size: 14px; color: #444;
}
.pf-legend-item { display: inline-flex; align-items: center; gap: 8px; }
.pf-swatch { width: 26px; height: 16px; border-radius: 3px; display: inline-block; }
.pf-sw-listed { background: #dceefb; }
.pf-sw-unlisted { background: #ececec; }
.pf-sw-direct { background: #fff; border: 1.5px solid #2aa6e0; }

/* Footnotes + abbreviations */
.pf-notes {
    margin: 0 0 18px; padding-left: 20px;
    font-family: 'Noto Sans', sans-serif; font-size: 12.5px; line-height: 1.6; color: #333;
}
.pf-notes li { margin-bottom: 6px; }
.pf-abbr {
    font-family: 'Noto Sans', sans-serif; font-size: 12.5px; line-height: 1.7; color: #333;
}

/* ---- Empowering India's Critical Sectors ---- */
.pf-critical { background: #eef7f3; padding: 80px 0; }
.pf-critical-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(26px, 4vw, 40px);
    font-weight: 700; color: var(--brand-purple); line-height: 1.1;
    white-space: nowrap;
    margin-bottom: 34px;
}
.pf-critical-intro {
    max-width: 620px;
    margin-bottom: 50px;
}
/* Page-10 block: stacked text cards + flamingo image */
.pf-uns-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 40px;
    align-items: stretch;
    margin-bottom: 54px;
}
.pf-uns-textcol { display: flex; flex-direction: column; gap: 24px; }
.pf-uns-media { border-radius: 12px; overflow: hidden; min-height: 320px; }
.pf-uns-media img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* Empowering Critical Sectors — sectors + factory image (image matches sector height) */
.pf-sectors-row {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 40px;
    align-items: start;
}
.pf-sectors-media {
    border-radius: 12px;
    background: url('../images/portfolio-critical-plant.jpeg') center center / cover no-repeat;
    height: 300px;
}

/* Enabling India's Rise — plain, left-aligned (no background) */
.pf-enabling {
    padding: 0;
    margin-bottom: 54px;
}
.pf-enabling-title {
    font-family: 'Playfair Display', serif;
    font-size: 28px; font-weight: 700; color: #484848;
    line-height: 1.2; margin-bottom: 12px;
}
.pf-enabling p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; line-height: 1.7; color: #444; margin: 0;
}
.pf-sectors-block { margin-bottom: 56px; }
.pf-card-soft {
    background: rgba(255,255,255,0.6);
    border-radius: 12px; padding: 28px 30px;
}
.pf-card-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px; font-weight: 700; color: #333; line-height: 1.25;
    margin-bottom: 14px;
}
.pf-card-soft p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; line-height: 1.7; color: #444; margin: 0;
}
.pf-critical-grid {
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 44px;
    align-items: start; margin-bottom: 56px;
}
.pf-tick-list { list-style: none; margin: 18px 0 0; padding: 0; }
.pf-tick-list li {
    position: relative; padding-left: 22px; margin-bottom: 12px;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: #444;
}
.pf-tick-list li::before {
    content: ""; position: absolute; left: 0; top: 7px;
    width: 8px; height: 8px; border-radius: 50%; background: var(--brand-purple);
}
.pf-card-foot {
    font-family: 'Noto Sans', sans-serif; font-size: 12px; line-height: 1.55;
    color: #888; margin: 18px 0 0;
}
.pf-critical-media { margin-top: 24px; border-radius: 12px; overflow: hidden; }
.pf-critical-media img { width: 100%; height: auto; display: block; }

.pf-block-title {
    font-family: 'Playfair Display', serif;
    font-size: 28px; font-weight: 700;
    color: var(--brand-purple); margin-bottom: 10px;
}
.pf-block-title.pf-title-dark { color: #484848; font-size: 22px; }
.pf-block-sub {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; color: #444; margin-bottom: 26px;
}
.pf-sectors {
    display: grid; grid-template-columns: 1fr 1fr; gap: 26px 34px;
    margin-bottom: 34px;
}
.pf-sector h5 {
    font-family: 'Noto Sans', sans-serif;
    font-size: 17px; font-weight: 700; color: #1a1a1a; margin-bottom: 8px;
}
.pf-sector p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; line-height: 1.6; color: #555; margin: 0;
}
.pf-intel { border-top: 1px solid #d6e3dd; padding-top: 24px; }
.pf-intel-title {
    font-family: 'Playfair Display', serif;
    font-size: 22px; font-weight: 700; color: var(--brand-purple); line-height: 1.25;
    margin-bottom: 12px;
}
.pf-intel p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; line-height: 1.7; color: #444; margin: 0;
}

/* Purpose-driven ESG */
.pf-purpose { border-top: 1px solid #d6e3dd; padding-top: 44px; }
.pf-esg-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.pf-esg { border-radius: 10px; padding: 26px 26px; color: #fff; }
.pf-esg h5 {
    font-family: 'Noto Sans', sans-serif;
    font-size: 19px; font-weight: 700; color: #fff; margin-bottom: 16px;
}
.pf-esg ul { list-style: none; margin: 0; padding: 0; }
.pf-esg li {
    position: relative; padding-left: 18px; margin-bottom: 12px;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: rgba(255,255,255,0.95);
}
.pf-esg li:last-child { margin-bottom: 0; }
.pf-esg li::before {
    content: ""; position: absolute; left: 0; top: 8px;
    width: 6px; height: 6px; border-radius: 50%; background: #fff;
}
.pf-esg li strong { font-weight: 700; color: #fff; }
.pf-esg-env { background: #0b6e6a; }
.pf-esg-soc { background: #1a7fc0; }
.pf-esg-gov { background: #b85a28; }

/* ---- Growing with the Nation (text left, image right) ---- */
.pf-growing-hero { background: #eef6fb; overflow: hidden; scroll-margin-top: 110px; }
.pf-growing-grid {
    display: grid;
    grid-template-columns: 2fr 3fr;   /* image gets the larger share */
    align-items: stretch;
    gap: 50px;
    min-height: 88vh;
}
.pf-growing-text {
    display: flex; flex-direction: column; justify-content: center;
    padding: 70px 0;
}
.pf-growing-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(26px, 3.6vw, 40px);
    font-weight: 700; line-height: 1.12; color: var(--brand-purple);
    margin: 0;
}
.pf-growing-media {
    position: relative;   /* aligns to the container (menu) right edge */
}
.pf-growing-media img {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover; object-position: center;
    display: block;
}

/* ---- Growing with Impact (metrics) ---- */
.pf-impact { background: #fff; padding: 80px 0; }
.pf-impact-group { padding: 34px 0; border-bottom: 1px solid #e6e6e6; }
.pf-impact-group:first-child { padding-top: 0; }
.pf-impact-head {
    font-family: 'Playfair Display', serif;
    font-size: 22px; font-weight: 700; color: #1a1a1a; margin-bottom: 26px;
    display: flex; align-items: center; gap: 12px;
}
/* Placeholder icon (design team to replace the SVGs) */
.pf-impact-icon { display: inline-flex; flex-shrink: 0; }
.pf-impact-icon img { height: 40px; width: auto; display: block; }
.pf-impact-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px 50px; }
.pf-metric { }
.pf-metric-val {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: clamp(26px, 3vw, 36px); font-weight: 800;
    color: var(--brand-purple); line-height: 1.1; margin-bottom: 10px;
}
.pf-metric-val sup { font-size: 0.5em; vertical-align: super; font-weight: 600; }
.pf-metric p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; line-height: 1.6; color: #555; margin: 0;
}
.pf-notes-impact { margin-top: 30px; }
.pf-notes-impact p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 12.5px; line-height: 1.6; color: #333; margin: 0 0 6px;
}
.pf-notes-impact p:last-child { margin-bottom: 0; }
.pf-notes-impact sup { font-size: 0.75em; }

/* ============================================================
   DRIVEN BY SYNERGIES, SIGNIFICANCE AND SUSTAINABILITY
   ============================================================ */
/* Hero — text left, larger image bleeding to the right edge */
.syn-hero { 
    /* background: #eef6fb; */
     overflow: hidden; padding-top: 110px; }
.syn-eyebrow {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px; font-weight: 700; color: #1a1a1a;
    margin-bottom: 14px;
}
.syn-hero-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(26px, 4vw, 40px);
    font-weight: 700; line-height: 1.12; color: var(--brand-purple);
    margin: 0 0 24px;
}
.syn-hero-row {
    display: grid; grid-template-columns: 2fr 3fr;   /* image gets the larger share */
    gap: 50px; align-items: stretch; min-height: 480px;
}
.syn-hero-text { display: flex; flex-direction: column; justify-content: center; padding: 20px 0 40px; }
.syn-hero-img {
    position: relative;   /* aligns to the container (menu) right edge */
}
.syn-hero-img img {
    position: absolute; inset: 0;
    width: 100%; height: 100%; object-fit: cover; object-position: center;
    display: block;
}
/* Intro copy below the banner */
.syn-intro { background: #fff; padding: 50px 0 0; }
.syn-intro-copy {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; line-height: 1.7; color: #444; margin: 0;
}
.syn-intro-copy--blue { color: #0086c9; 
font-weight: 600; }
.syn-intro-copy--pink { color: #7d1f6e; font-weight: 600; }

/* Company blocks */
.syn-companies { background: #fff; padding: 70px 0 60px; }
/* Per-company colour coding (bar = header colour, accent = metric line/bullet) */
.syn-company { --syn-bar: #8e278f; --syn-accent: #00aeef; }
.syn-company--ael    { --syn-bar: #8e278f; --syn-accent: #00aeef; }
.syn-company--apsez  { --syn-bar: #42408e; --syn-accent: #42408e; }
.syn-company--agel   { --syn-bar: #2f9c6a; --syn-accent: #2f9c6a; }
.syn-company--aesl   { --syn-bar: #107aa1; --syn-accent: #107aa1; }
.syn-company--atgl   { --syn-bar: #007978; --syn-accent: #007978; }
.syn-company--apl    { --syn-bar: #2f2e82; --syn-accent: #2f2e82; }
.syn-company--ambuja { --syn-bar: #7c1f25; --syn-accent: #7c1f25; }
.syn-company--ndtv   { --syn-bar: #3d306d; --syn-accent: #3d306d; }
.syn-company { padding: 44px 0; border-bottom: 1px solid #e6e6e6; }
.syn-company:last-of-type { border-bottom: none; }
.syn-company:first-child { padding-top: 0; }

.syn-company-name {
    font-family: 'Playfair Display', serif;
    font-size: 22px; font-weight: 700; color: var(--syn-bar);
    margin: 0 0 4px;
}
.syn-company-tag {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; font-weight: 600; color: #333; margin: 0;
}
.syn-company-tag sup { font-size: 0.7em; }

/* Image (left, full height) | heading + metrics (right) */
.syn-company-top {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 40px;
    align-items: stretch; margin-bottom: 34px;
}
.syn-company-media { position: relative; border-radius: 12px; overflow: hidden; min-height: 240px; }
.syn-company-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.syn-company-right { display: flex; flex-direction: column; justify-content: center; }
.syn-company-head { margin-bottom: 24px; }
.syn-metrics {
    display: grid; grid-template-columns: 1fr 1fr; gap: 26px 30px;
}
.syn-metric-foot { grid-column: 1 / -1; }
.syn-metric-num {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 30px; font-weight: 800; color: #3a3a3a; line-height: 1.05;
    margin-bottom: 6px;
}
.syn-metric-num .syn-metric-unit { font-size: 0.5em; font-weight: 700; color: #777; }
.syn-metric-num.syn-metric-text { font-size: 20px; font-weight: 700; }
.syn-metric-logos { display: flex; align-items: center; gap: 18px; margin-top: 12px; }
.syn-metric-logos img { height: 42px; width: auto; display: block; }
.syn-metric p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px; line-height: 1.45; color: #555; margin: 0;
    position: relative; padding-top: 8px;
}
.syn-metric p::before {
    content: ""; position: absolute; top: 0; left: 0;
    width: 22px; height: 2px; background: #00aeef;
}
.syn-metric-foot {
    grid-column: 1 / -1;
    font-family: 'Noto Sans', sans-serif;
    font-size: 12px; color: #888; margin: 18px 0 0;
}

/* Contribution columns */
.syn-contrib {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 0;
    border: 1px solid #e2e2e2; border-radius: 8px; overflow: hidden;
}
.syn-contrib-2 { grid-template-columns: repeat(2, 1fr); }
.syn-contrib-col { border-left: 1px solid #e2e2e2; }
.syn-contrib-col:first-child { border-left: none; }
.syn-contrib-head {
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px; font-weight: 700; color: #fff;
    background: var(--syn-bar);
    padding: 12px 18px; margin: 0;
}
.syn-contrib-col ul { list-style: none; margin: 0; padding: 18px 18px; }
.syn-contrib-col li {
    position: relative; padding-left: 16px; margin-bottom: 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px; line-height: 1.5; color: #444;
}
.syn-contrib-col li:last-child { margin-bottom: 0; }
.syn-contrib-col li::before {
    content: ""; position: absolute; left: 0; top: 7px;
    width: 7px; height: 7px; background: #00aeef;
}
.syn-note {
    font-family: 'Noto Sans', sans-serif;
    font-size: 12.5px; line-height: 1.6; color: #333; margin: 40px 0 0;
}

/* ============================================================
   STABLE, PREDICTABLE INFRASTRUCTURE-LED GROWTH
   ============================================================ */
.spg-hero { background: #fff; padding: 130px 0 0; }
.spg-eyebrow {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px; font-weight: 700; color: #1a1a1a; margin-bottom: 14px;
}
.spg-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(26px, 4vw, 40px);
    font-weight: 700; line-height: 1.12; color: var(--brand-purple); margin: 0;
}

/* Section headings */
.spg-sec-title {
    font-family: 'Playfair Display', serif;
    font-size: 22px; font-weight: 700; color: #2b2b2b; margin: 0;
}

/* Performance section */
.spg-perf { background: #fff; padding: 28px 0 60px; }
.spg-perf-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 22px; flex-wrap: wrap; }
.spg-unit { font-family: 'Noto Sans', sans-serif; font-size: 14px; color: #888; }

/* Table */
.spg-table-wrap { overflow-x: auto; margin-bottom: 44px; }
.spg-table { width: 100%; border-collapse: collapse; min-width: 640px; }
.spg-table thead th {
    background: #1976b5; color: #fff;
    font-family: 'Noto Sans', sans-serif; font-size: 15px; font-weight: 700;
    text-align: right; padding: 14px 18px; line-height: 1.3; vertical-align: bottom;
}
.spg-table thead th:first-child { text-align: left; }
.spg-table tbody td {
    font-family: 'Noto Sans', sans-serif; font-size: 16px; color: #333;
    text-align: right; padding: 13px 18px; border-bottom: 1px solid #e6e6e6;
}
.spg-table tbody td:first-child { text-align: left; color: #1a1a1a; }
.spg-table tbody td + td { border-left: 1px solid #e6e6e6; }
.spg-table tbody tr:last-child td { border-bottom: 2px solid #1976b5; }

/* Totals */
.spg-totals { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-bottom: 50px; }
.spg-total-val {
    display: block;
    font-family: 'Noto Sans', sans-serif; font-size: clamp(26px, 2.6vw, 34px); font-weight: 800;
    color: var(--brand-purple); line-height: 1.05;
}
.spg-total-val small { font-size: 0.6em; font-weight: 700; }
.spg-total-label {
    font-family: 'Noto Sans', sans-serif; font-size: 15px; color: #444;
    position: relative; padding-left: 26px; margin: 12px 0 0;
}
.spg-total-label::before { content: ""; position: absolute; top: 0.95em; left: 0; width: 18px; height: 3px; background: var(--brand-purple); }
.spg-cagr { font-family: 'Noto Sans', sans-serif; font-size: 15px; color: #444; margin: 12px 0 0; }
.spg-cagr .spg-tri { color: #2bb3a3; font-size: 11px; }
.spg-cagr b { color: #009fc7; font-size: 17px; }

/* Split label + body (Growth with Prudence / Solid Fundamentals) */
.spg-split { display: grid; grid-template-columns: 300px 1fr; gap: 40px; align-items: stretch; padding: 36px 0; border-top: 1px solid #e6e6e6; }
.spg-card { background: #eef6f3; border-radius: 12px; padding: 30px 32px; display: flex; flex-direction: column; justify-content: center; }
.spg-card-title { font-family: 'Playfair Display', serif; font-size: 22px; font-weight: 700; color: var(--brand-purple); line-height: 1.25; margin: 0; }
.spg-card-sub { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #1a1a1a; margin: 14px 0 0; }
.spg-split-body { display: flex; flex-direction: column; justify-content: center; }
.spg-split-eyebrow { font-family: 'Noto Sans', sans-serif; font-size: 17px; color: #333; margin: 0 0 22px; }
.spg-mini-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
.spg-fund-row2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 26px 30px; margin-bottom: 30px; }
.spg-fund-row3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px 30px; }
.spg-mini-num {
    display: block;
    font-family: 'Noto Sans', sans-serif; font-size: clamp(24px, 2.4vw, 32px); font-weight: 800;
    color: #3a3a3a; line-height: 1.05;
}
.spg-mini p {
    font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.45; color: #555;
    position: relative; padding-left: 24px; margin: 8px 0 0;
}
.spg-mini p::before { content: ""; position: absolute; top: 0.9em; left: 0; width: 16px; height: 2px; background: var(--brand-purple); }
.spg-foot { font-family: 'Noto Sans', sans-serif; font-size: 12.5px; line-height: 1.6; color: #555; margin: 30px 0 0; }

/* Industry-Leading by Design — charts */
.spg-ilg { background: #fff; padding: 0 0 70px; }
.spg-ilg-title { margin-bottom: 36px; }
.ilg-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 50px 70px; }
.ilg-chart img { display: block; width: 100%; height: auto; }
.ilg-chart-title { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #1a1a1a; margin: 0 0 2px; }
.ilg-chart-title .ilg-unit { font-size: 13px; font-weight: 400; color: #888; }
.ilg-tag {
    display: inline-block; background: var(--brand-purple); color: #fff;
    font-family: 'Noto Sans', sans-serif; font-size: 12px; font-weight: 700;
    padding: 4px 12px; border-radius: 3px; margin: 9px 0 10px;
}
.ilg-bars { border-top: 1px solid #e0e0e0; }
.ilg-bar-row { display: grid; grid-template-columns: 78px 1fr auto; align-items: center; gap: 8px; padding: 4px 0; border-bottom: 1px solid #e0e0e0; }
.ilg-bar-label { font-family: 'Noto Sans', sans-serif; font-size: 13px; color: #333; }
.ilg-bar-track { display: block; height: 18px; }
.ilg-bar-fill { display: block; height: 100%; }
.ilg-ind { background: #5bc2e7; }
.ilg-comp { background: #a3d6bb; }
.ilg-bar-val { font-family: 'Noto Sans', sans-serif; font-size: 13px; color: #333; text-align: right; min-width: 46px; }
.ilg-data { width: 100%; border-collapse: collapse; margin-top: 12px; }
.ilg-data td { font-family: 'Noto Sans', sans-serif; font-size: 14px; padding: 6px 6px; border-bottom: 1px solid #e6e6e6; }
.ilg-data td:first-child { font-weight: 700; color: #1a1a1a; width: 33%; }
.ilg-data .ilg-c-ind { color: #009fc7; font-weight: 600; }
.ilg-data .ilg-c-comp { color: #5bab86; font-weight: 600; }
/* ============================================================
   FULLSCREEN MEGA MENU (copied from DAR reference)
   Opens from the existing Menu button; hamburger -> cross.
   ============================================================ */
.menu {
    position: fixed; inset: 0; z-index: 900; background: #fbfafc;
    clip-path: circle(0% at calc(100% - 48px) 42px);
    transition: clip-path .65s cubic-bezier(.22,.61,.36,1);
    display: flex; flex-direction: column; justify-content: flex-start;
    padding: 140px 0 clamp(28px,5vh,56px); overflow-y: auto;
}
/* Inner container aligns the menu's left/right edges with the header */
.menu > .container { width: 100%; }
.menu.open { clip-path: circle(150% at calc(100% - 48px) 42px); }
.menu-search { max-width: 520px; margin-bottom: clamp(18px,2.6vh,32px); display:none; }
.menu-search form { display: flex; align-items: center; gap: 10px; border-bottom: 2px solid #012a3f; padding-bottom: 10px; }
.menu-search input { flex: 1; border: none; outline: none; background: transparent; font-family: 'Noto Sans', sans-serif; font-size: 18px; color: #1b2127; }
.menu-search button { background: none; border: none; cursor: pointer; color: #012a3f; display: flex; }
.menu-search button svg { width: 20px; height: 20px; }
.menu-inner { width: 100%; max-width: 1340px; }
.mega {
    display: grid; grid-template-columns: 0.8fr 1.5fr; gap: clamp(28px,4vw,60px); align-items: stretch;
    opacity: 0; transform: translateY(18px);
}
.menu.open .mega { opacity: 1; transform: translateY(0); transition: opacity .55s cubic-bezier(.22,.61,.36,1) .14s, transform .55s cubic-bezier(.22,.61,.36,1) .14s; }
.mega-nav { display: flex; flex-direction: column; gap: 2px; border-right: 1px solid #e4e7ea; padding-right: clamp(14px,2vw,30px); }
.mega-tab {
    text-align: left; background: none; border: none; cursor: pointer; font-family: 'Playfair Display', serif;
    font-size: clamp(19px,1.9vw,28px); font-weight: 400; color: #1b2127; letter-spacing: -.01em; line-height: 1.18;
    padding: 10px 0; display: flex; align-items: baseline; gap: 13px; transition: color .25s, padding-left .25s;
}
.mega-tab .ix { font-family: 'Noto Sans', sans-serif; font-size: 12px; color: #5b6770; font-weight: 700; transition: color .25s; }
.mega-tab:hover, .mega-tab.active { color: var(--brand-purple); padding-left: 8px; }
.mega-tab:hover .ix, .mega-tab.active .ix { color: var(--brand-purple); }
.mega-panels { position: relative; min-height: 340px; }
/* Inactive panels are fully removed from layout (no stuck opacity/visibility
   transition). Only the active panel renders — it always shows in full. */
.mega-panel {
    display: none; grid-template-columns: 1.15fr 0.85fr; gap: clamp(22px,2.6vw,42px);
}
.mega-panel.active {
    display: grid; position: relative;
    animation: megaPanelIn .45s cubic-bezier(.22,.61,.36,1);
}
@keyframes megaPanelIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
.mega-subs { list-style: none; columns: 1; column-gap: 30px; align-self: center; margin: 0; padding: 0; }
.mega-subs.two { columns: 2; }
.mega-subs li { break-inside: avoid; margin-bottom: 11px; }
.mega-subs li a { font-size: 13.5px; color: #5b6770; line-height: 1.35; transition: color .2s, padding-left .2s; display: inline-block; }
.mega-subs li a:hover { color: var(--brand-purple); padding-left: 5px; }
/* Document links (Statutory / Financial) with a download icon */
.mega-subs--doc li a { display: inline-flex; align-items: center; gap: 8px; }
.mega-subs--doc .dl-ico { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 15px; width: 15px; height: 15px; color: var(--brand-purple); opacity: .55; transition: opacity .2s, transform .2s; }
.mega-subs--doc .dl-ico svg { width: 15px; height: 15px; display: block; }
.mega-subs--doc li a:hover .dl-ico { opacity: 1; transform: translateY(1px); }
.mega-figure {
    border-radius: 8px; overflow: hidden; min-height: 320px; position: relative;
    background-size: cover; background-position: center;
    background-image: linear-gradient(150deg, rgba(1,42,63,.55), rgba(138,43,140,.5)), var(--img, none);
    background-color: #0a2335;
}
.mega-figure .cap {
    position: absolute; left: 20px; bottom: 18px; right: 20px; color: #fff; font-family: 'Playfair Display', serif;
    font-size: clamp(17px,1.4vw,21px); line-height: 1.2; text-shadow: 0 2px 12px rgba(0,0,0,.4);
}
@media (max-width: 860px) {
    .menu { padding-top: 96px; }
    /* Accordion: JS moves each panel directly under its tab inside .mega-nav */
    .mega { display: block; }
    .mega-nav { border-right: none; padding-right: 0; gap: 0; }
    .mega-panels { display: none; }                 /* emptied on mobile */
    .mega-tab { border-bottom: 1px solid #e4e7ea; width: 100%; padding: 15px 0; display: flex; align-items: center; }
    .mega-tab::after { content: '+'; margin-left: auto; font-size: 24px; font-weight: 400; line-height: 1; color: var(--brand-purple); }
    .mega-tab.active::after { content: '\2212'; }   /* minus when open */
    /* smooth expand/collapse */
    .mega-panel {
        position: relative; display: block; visibility: visible; transform: none;
        max-height: 0; overflow: hidden; opacity: 0; padding: 0;
        transition: max-height .4s ease, opacity .35s ease, padding .4s ease;
    }
    .mega-panel.active { display: block; animation: none; max-height: 1000px; opacity: 1; padding: 2px 0 16px; }
    .mega-figure { display: none; }                 /* remove image on mobile */
    .mega-subs, .mega-subs.two { columns: 1; }
    .mega-subs li { margin-bottom: 13px; }
}
/* hamburger -> cross on the existing Menu button */
.menu-btn .hamburger span { transition: transform .3s cubic-bezier(.22,.61,.36,1), opacity .2s; }
.menu-btn.is-open .hamburger span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.menu-btn.is-open .hamburger span:nth-child(2) { opacity: 0; }
.menu-btn.is-open .hamburger span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

/* ============================================================
   INNER PAGE — Accelerating Infrastructure, Leveraging Intelligence
   ============================================================ */
/* Page-wide gradient background (bottom #b7f1ff -> top #fff) */
.ail-page { background: linear-gradient(to top, #b7f1ff 0%, #ffffff 65%); }
.ail-hero, .ail-content { background: transparent; }
.ail-hero { padding: 130px 0 40px; }
.ail-label {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px; font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 22px;
}
/* Two-column: heading + lead (left) | image placeholder (right) */
.ail-hero-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 56px;
    align-items: center;
}
.ail-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(26px, 4vw, 40px);
    font-weight: 700;
    line-height: 1.12;
    color: var(--brand-purple);
    margin: 0 0 20px;
    border-bottom: 2px solid #8e278f;
    padding-bottom: 20px;
}
.ail-hero-grid p 
{
    padding-bottom: 20px;
}
.ail-lead {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.7;
    font-weight: 600;
    color: var(--brand-blue);
    margin: 0;
}
.ail-hero-media { border-radius: 14px; overflow: hidden; }
.ail-img-placeholder {
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #eef0f3;
    border: 1px dashed #c4cad2;
    border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    color: #97a1ac;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; font-weight: 600; letter-spacing: .3px;
}

/* Body content — single column */
.ail-content { background: transparent; padding: 10px 0 90px; }
.ail-body { max-width: 100%; }
.ail-body > p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.8;
    color: #444;
    margin: 0 0 22px;
}

/* Profile / caption card */
.ail-profile {
    border: 1px solid #8e278f;
    border-radius: 14px;
    padding: 26px 30px;
    margin-top: 14px;
}
.ail-profile-name {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; font-weight: 700;
    color: #444;
    margin: 0 0 8px;
}
.ail-profile-role {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px; line-height: 1.6; color: #444;
    margin: 0 0 14px; padding-bottom: 14px;
    border-bottom: 1px solid #444;
}
.ail-profile-bio {
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px; line-height: 1.7; color: #444;
    margin: 0;
}

/* ============================================================
   BUSINESS MODEL PAGE — Empowered to Deliver Value (7-stage accordion)
   ============================================================ */
.bmp-section { background: #fff; padding: 130px 0 90px; }

/* Heading + intro (title left, intro right) */
/* Heading on a single full-width line, intro full-width below it */
.bmp-head-row { margin-bottom: 40px; }
.bmp-head-text { margin-bottom: 18px; }
.bmp-eyebrow {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px; font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 12px;
}
.bmp-title {
    font-family: 'Playfair Display', serif;
    font-size: 40px;
    line-height: 40px;
    font-weight: 700;
    color: var(--brand-purple);
    margin: 0;
    white-space: nowrap;
}
.bmp-intro {
    width: 100%; max-width: 100%;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #444;
    margin: 0;
}

/* ===== Accordion ===== */
.bmp-acc { border-top: 1px solid #e2e4e8; }
.bmp-item { border-bottom: 1px solid #e2e4e8; scroll-margin-top: 100px; }
.bmp-acc-head {
    width: 100%;
    display: flex; align-items: center; justify-content: space-between; gap: 20px;
    background: linear-gradient(90deg, #006cb6 0%, #8e288f 100%);
    border: none; cursor: pointer;
    padding: 18px 20px;
    text-align: left;
    margin-bottom: 20px;
}
.bmp-acc-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(18px, 2.2vw, 22px); font-weight: 700;
    color: #fff;
    line-height: 1.25;
}
/* + / − indicator */
.bmp-acc-ico { position: relative; width: 22px; height: 22px; flex: none; }
.bmp-acc-ico::before, .bmp-acc-ico::after { content: ""; position: absolute; background: #fff; }
.bmp-acc-ico::before { left: 0; top: 50%; width: 100%; height: 2px; transform: translateY(-50%); }
.bmp-acc-ico::after  { top: 0; left: 50%; width: 2px; height: 100%; transform: translateX(-50%); transition: opacity .3s ease; }
.bmp-item.is-open .bmp-acc-ico::after { opacity: 0; }   /* + becomes − */

/* Collapsible panel — jQuery slideUp/slideDown controls the height */
.bmp-panel { overflow: hidden; }
.bmp-panel-inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 40px;
    padding: 6px 4px 40px;
}
/* Accessibility / Actions — bullet clusters in columns */
.bmp-panel-inner.bmp-cols { grid-template-columns: repeat(3, 1fr); }

/* Capital / operating-model block */
.bmp-cap-head { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.bmp-cap-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px; font-weight: 700;
    color: var(--brand-purple);
    margin: 0; line-height: 1.25;
}
.bmp-sub {
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px; font-weight: 700; color: var(--brand-blue);
    margin: 12px 0 6px;
    padding-left: 52px;
}
.bmp-list { list-style: none; margin: 0; padding: 0; }
.bmp-list li {
    position: relative;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px; line-height: 1.6; color: #444;
    padding-left: 16px; margin-bottom: 5px;
}
.bmp-list li::before {
    content: ""; position: absolute; left: 0; top: 9px;
    width: 6px; height: 6px; border-radius: 0; background: #00bff3;
}
.bmp-list ul { list-style: none; margin: 6px 0 0; padding: 0; }
.bmp-list ul li { padding-left: 16px; margin-bottom: 5px; }
.bmp-list ul li::before { width: 5px; height: 5px; background: #9a9a9a; top: 8px; }
/* Input / Outcomes: align a capital's list with its heading text (icon 40 + gap 12) */
.bmp-cap > .bmp-list { padding-left: 52px; }
/* Accessibility: heading only (no icon) — align list to the left edge */
.bmp-cols .bmp-cap > .bmp-list { padding-left: 0; }
.bmp-om-copy {
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px; line-height: 1.7; color: #444; margin: 0;
}
/* Operating Model — Bootstrap-grid layout (Vision | Values / Culture / 3 lists) */
.bmp-panel-inner.bmp-om-wrap { display: block; }
.bmp-om-wrap .row { margin-bottom: 24px; }
.bmp-om-wrap .row:last-child { margin-bottom: 0; }
.bmp-om-wrap [class*="col-"] { margin-bottom: 18px; }
/* Values / Culture — cards in a row */
.bmp-om-cards { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 14px; }
.bmp-om-card {
    flex: 1 1 0; min-width: 150px;
    border-bottom: 3px solid #00bff3;
    border-right: 1px solid #00bff3;
    padding: 12px 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px; line-height: 1.5; color: #444;
}
.bmp-om1 .bmp-om-card
{
 border-top: 3px solid #6bc1b7;
    border-left: 1px solid #6bc1b7;
    border-bottom: 1px solid #6bc1b7;
    border-right: 1px solid #6bc1b7;   
}
.bmp-om-card strong { display: block; color: #1a1a1a; margin-bottom: 4px; }

.bmp-om1 .bmp-list li strong 
{
    display: block;
}
/* Outputs — figures + image */
.bmp-out-grid { grid-template-columns: 1.4fr 1fr; align-items: start; }
.bmp-out-figs { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px 30px; }
.bmp-out-val {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 30px; font-weight: 800; color: var(--brand-purple); line-height: 1.05;
}
.bmp-out-unit { font-size: 16px; font-weight: 700; color: var(--brand-purple); }
.bmp-out p { font-family: 'Noto Sans', sans-serif; font-size: 14px; color: #444; margin: 6px 0 0; }

/* Placeholders */
.bmp-ico-ph {
    flex: none;
    width: 40px; height: 40px; border-radius: 8px;
    background: #eef0f3; border: 1px dashed #c4cad2;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 10px; font-weight: 600; color: #97a1ac;
}
.bmp-img-ph {
    width: 100%; aspect-ratio: 4 / 3;
    background: #eef0f3; border: 1px dashed #c4cad2; border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #97a1ac;
}
.bmp-sdg-ph {
    width: 100%; min-height: 150px;
    background: #eef0f3; border: 1px dashed #c4cad2; border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #97a1ac;
}
/* Real icons / images (business model) */
.bmp-ico { flex: none; width: 40px; height: 40px; object-fit: contain; }
.bmp-img { width: 100%; border-radius: 12px; display: block; }
.bmp-sdg-img { width: auto; max-width: 100%; height: auto; display: block; }
/* SDG Alignment — icons grouped by capital in 3 columns */
.bmp-panel-inner.bmp-sdg-wrap { display: block; }
.bmp-sdg-block { margin-bottom: 30px; }
.bmp-sdg-block .bmp-cap-title { color: var(--brand-purple); margin-bottom: 14px; }
.bmp-sdg-icons { display: grid; grid-template-columns: repeat(3, 64px); gap: 10px; }
.bmp-sdg-ico {
    width: 64px; height: 64px;
    background: #eef0f3; border: 1px dashed #c4cad2; border-radius: 4px;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700; color: #97a1ac;
}

.bmp-foot {
    font-family: 'Noto Sans', sans-serif;
    font-size: 13px; color: #777; line-height: 1.6;
    margin: 26px 0 0;
}

/* ============================================================
   STAKEHOLDER ENGAGEMENT PAGE
   ============================================================ */
.se-hero, .se-sf-section, .se-process-section, .se-culture-section,
.se-cards-section, .se-assoc-section { --se: #0093b8; }

/* Hero banner */
/* Hero banner — same style as driven-by-synergies */
.se-hero { background: #eef6fb; overflow: hidden; padding-top: 110px; }
.se-hero-row {
    display: grid; grid-template-columns: 2fr 3fr;
    gap: 50px; align-items: stretch; min-height: 480px;
}
.se-hero-text { display: flex; flex-direction: column; justify-content: center; padding: 20px 0 40px; }
.se-eyebrow {
    display: block; font-family: 'Noto Sans', sans-serif;
    font-size: 18px; font-weight: 700; color: #1a1a1a; margin-bottom: 14px;
}
.se-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(26px, 4vw, 40px); line-height: 1.12; font-weight: 700;
    color: var(--brand-purple); margin: 0;
}
.se-hero-img {
    position: relative; min-height: 480px;
    background: #dfeaf1; border: 1px dashed #b7cdd8;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #8aa3b0;
}

/* Intro copy below the banner */
.se-intro-section { background: #fff; padding: 50px 0 0; }
.se-intro { width: 100%; font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.7; color: #444; margin: 0; }

/* Intro + Strategy — contained cyan box, single column */
.se-lead-section { background: #fff; padding: 54px 0 0px; }
.se-lead-box { background: #00bff3; padding: 40px 44px; }
.se-lead-box .se-intro { color: #ffffff; margin: 0 0 28px; }
.se-lead-box .se-h2 { color: #ffffff; font-size:16px; }
.se-lead-copy { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.75; color: #ffffff; margin: 0; }

/* Shared headings + body text */
.se-h2 {
    font-family: 'Noto Sans', sans-serif; font-size: 22px; font-weight: 700;
    color: #0485d8; margin: 0 0 14px; line-height: 1.3;
}
.se-h3 { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #1a1a1a; margin: 22px 0 14px; }
.se-sf-section p, .se-process-section > .container > p, .se-assoc-left p, .se-culture p {
    font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.7; color: #444; margin: 0 0 16px;
}
.se-culture p
{
font-weight: 600;
color: #00bff3;
}
/* Section spacing */
.se-sf-section, .se-process-section, .se-culture-section, .se-cards-section, .se-assoc-section { padding: 40px 0; }

/* Bullet lists (teal dot) */
.se-list { list-style: none; margin: 0; padding: 0; }
.se-list li { position: relative; padding-left: 16px; margin-bottom: 7px; font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.55; color: #444; }
.se-list li::before { content: ""; position: absolute; left: 0; top: 8px; width: 5px; height: 5px; border-radius:0px; background: #00bff3; }

/* ---- Strategy + Framework ---- */
.se-sf-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; }
/* Robust Engagement Framework — big box, #59baad shadow (right + bottom) */
.se-sf-right {
    border: none; background: #fff;
    padding: 32px 36px;
    -webkit-box-shadow: 10px 10px 6px -4px rgba(89,186,173,1);
    -moz-box-shadow: 10px 10px 6px -4px rgba(89,186,173,1);
    box-shadow: 10px 10px 6px -4px rgba(89,186,173,1);
    border:1px solid #59baad;
}
.se-sf-right .se-h2 { color: var(--brand-purple); }
.se-process-section > .container > .se-h2 { color: var(--brand-purple); }
.se-comm-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 14px 0 20px; }
.se-comm { border-right: 1px solid #59baad; border-bottom: 3px solid #59baad; display: flex; flex-direction: column; background-color:#f3fafe; }
.se-comm-head { background: #00bff3; color: #fff; font-weight: 700; font-size: 14px; line-height: 1.35; padding: 12px 14px; }
.se-comm-body { padding: 14px; font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.6; color: #444; }

/* ---- Process (4 numbered boxes) ---- */
.se-proc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-top: 24px; align-items: stretch; }
.se-proc {
    background: #fff;
    margin-top: 40px;
    display: flex; flex-direction: column;   /* equal-height boxes per row */
}
.se-proc .se-list { flex: 1 0 auto; }
.se-proc-head {
    position: relative;
    background: linear-gradient(90deg, #1f8775 0%, #58b9ac 100%);
    padding: 25px 12px;
}
.se-proc-head-inner {
    position: absolute; top: 0; left: 30px; transform: translateY(-50%);
    width: 375px;
    display: flex; align-items: center; gap: 10px;
    background: #ebf5f3;
    color: #14453d; font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; line-height: 1.3;
    padding: 12px 16px;
}
.se-proc-num {
    flex: none; display: flex; align-items: center; justify-content: center;
    width: 34px; height: 34px; border-radius: 6px; color: #5cbcbf; font-size: 24px; font-weight: 400;
}
.se-proc .se-list {
    padding: 18px 22px;
    -webkit-box-shadow: 2px 4px 0px 0px rgba(89,186,173,1);
    -moz-box-shadow: 2px 4px 0px 0px rgba(89,186,173,1);
    box-shadow: 2px 4px 0px 0px rgba(89,186,173,1);
min-height: 191px;
}
.se-proc .se-list li 
{
    margin-bottom: 12px;
}
/* ---- Collaborative Culture ---- */
.se-culture { border: 1px solid #00bff3;  padding: 24px 28px; 
-webkit-box-shadow: 10px 10px 6px -4px #00bff3;
    -moz-box-shadow: 10px 10px 6px -4px #00bff3;
    box-shadow: 10px 10px 6px -4px #00bff3;
}
.se-culture .se-h2 { margin-bottom: 10px; }
.se-culture p { margin: 0; }

/* ---- Stakeholder cards ---- */
.se-cards-section .se-h2 { margin-bottom: 24px; color:var(--brand-purple); }
.se-card { position: relative; border: 1px solid #00bff3;  padding: 24px 26px; margin-bottom:40px; -webkit-box-shadow: 8px 8px 0px 0px rgba(130,203,193,1);
-moz-box-shadow: 8px 8px 0px 0px rgba(130,203,193,1);
box-shadow: 8px 8px 0px 0px rgba(130,203,193,1); margin-left:40px; }
/* icon sits ON the left border, half outside the card */
.se-card-top { padding-left: 40px; margin-bottom: 18px; }
.se-col
{
    padding-left: 40px;
}
.se-card-icon {
    position: absolute; left: 0; top: 24px; transform: translateX(-50%);
    width: 65px; height: 65px;
    display: flex; align-items: center; justify-content: center;
}
.se-card-icon img { width: 65px; height: 65px; object-fit: contain; }
.se-card-title { font-family: 'Noto Sans', sans-serif; font-size: 22px; font-weight: 700; color: #00bff3; margin: 0 0 8px; }
/* Real banner / section images (stakeholder engagement) */
.se-hero-img { padding: 0; border: none; background: none; overflow: hidden; }
.se-hero-img img { width: 100%; height: 100%; min-height: 480px; object-fit: cover; display: block; }
.se-img-ph img { width: 100%; height: 100%; object-fit: cover; display: block; }
.se-card-desc { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: #444; margin: 0; }
.se-card-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 44px; }
.se-block { margin-bottom: 16px; }
.se-block:last-child { margin-bottom: 0; }
.se-block h4 { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #1a1a1a; margin: 0 0 8px; }

/* metrics footer */
.se-metrics {margin-top: 18px;}
.se-metrics-label { font-family: 'Noto Sans', sans-serif; font-size: 16px; color: #555; margin: 0 0 12px; }
.se-metric-row { display: flex; flex-wrap: nowrap; gap: 24px; }
.se-metric { flex: 1 1 0; min-width: 0; }
.se-metric-sub { display: block; font-family: 'Noto Sans', sans-serif; font-size: 13px; color: #555; margin-bottom: 2px; }
.se-metric-val { display: block; font-family: 'Noto Sans', sans-serif; font-size: 28px; font-weight: 800; color: var(--brand-purple); line-height: 1.05; }
.se-metric-unit { font-size: 15px; font-weight: 700; }
.se-metric p { font-family: 'Noto Sans', sans-serif; font-size: 13px; color: #444; margin: 8px 0 0; display: inline-block; line-height: 1.4; }
.se-metric p::before { content: ""; display: inline-block; width: 16px; height: 2px; background: #00bff3; vertical-align: middle; margin-right: 7px; }

/* ---- Associations ---- */
.se-assoc-grid { display: grid; grid-template-columns: 1fr; gap: 30px; align-items: start; }
.se-assoc-left .se-h2 { color: var(--brand-purple); }
.se-table-cap { font-family: 'Noto Sans', sans-serif; font-size: 15px; color: #1a1a1a; margin: 6px 0 10px; }
.se-table { width: 100%; border-collapse: collapse; }
.se-table th { font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700; color: #1a1a1a; text-align: left; padding: 10px 10px; border-bottom: 2px solid var(--brand-purple); }
.se-table th:last-child, .se-table td:last-child { text-align: right; white-space: nowrap; }
.se-table td { font-family: 'Noto Sans', sans-serif; font-size: 14px; color: #444; padding: 9px 10px; border-bottom: 1px solid var(--brand-purple); }

/* image placeholders */
.se-img-ph {
    width: 100%; aspect-ratio: 4 / 3;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #97a1ac;
    margin-top: 20px;
}
.se-assoc-right .se-img-ph { margin-top: 0; aspect-ratio: 16 / 7; }
.se-assoc-section
{
    padding-top: 0px;
}

/* ============================================================
   DOUBLE MATERIALITY PAGE
   ============================================================ */
.dm-hero, .dm-approach-section, .dm-process-section, .dm-assessment-section,
.dm-matrix-section, .dm-issues-section, .dm-external-section { --dm: #0093b8; }

/* Hero banner (same style as other inner pages) */
.dm-hero { background: #eef6fb; overflow: hidden; padding-top: 110px; }
.dm-hero-row { display: grid; grid-template-columns: 2fr 3fr; gap: 50px; align-items: stretch; min-height: 480px; }
.dm-hero-text { display: flex; flex-direction: column; justify-content: center; padding: 20px 0 40px; }
.dm-eyebrow { display: block; font-family: 'Noto Sans', sans-serif; font-size: 18px; font-weight: 700; color: #1a1a1a; margin-bottom: 14px; }
.dm-title { font-family: 'Playfair Display', serif; font-size: clamp(26px, 4vw, 40px); line-height: 1.12; font-weight: 700; color: var(--brand-purple); margin: 0; }
.dm-hero-img {
    position: relative; min-height: 480px; background: #dfeaf1; border: 1px dashed #b7cdd8;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #8aa3b0;
}
.dm-intro-section { background: #fff; padding: 50px 0 0; }
.dm-intro { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.7; color: #444; margin: 0; }

/* Shared headings + text */
.dm-h2 { font-family: 'Noto Sans', sans-serif; font-size: 22px; font-weight: 700; color: var(--brand-purple); margin: 0 0 14px; line-height: 1.3; }
.dm-h3 { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #1a1a1a; margin: 26px 0 14px; }
.dm-approach-section, .dm-process-section, .dm-assessment-section, .dm-matrix-section, .dm-issues-section, .dm-external-section { padding: 40px 0; }
.dm-approach-section > .container > p, .dm-process-section > .container > p, .dm-assessment-section > .container > p, .dm-issues-section > .container > p {
    font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.7; color: #444; margin: 0 0 16px;
}

/* bullet lists */
.dm-list { list-style: none; margin: 0; padding: 0; }
.dm-list li { position: relative; padding-left: 16px; margin-bottom: 8px; font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.55; color: #444; }
.dm-list li::before { content: ""; position: absolute; left: 0; top: 8px; width: 5px; height: 5px; background: #00bff3; }

/* ---- Principles of Double Materiality ---- */
.dm-principles { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; margin: 30px 0 4px; }
.dm-principle { background: #c2e9fb; border-radius: 0px; padding: 26px 30px; text-align: center;  border-bottom: 2px solid #59baad; }
.dm-principle-head { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #444; margin: 0 0 10px; }
.dm-principle p { font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.6; color: #444; margin: auto; max-width:300px; }
.dm-principle-center {
    width: 142px; height: 142px; border-radius: 50%; background: #fff; border: 4px solid #59baad;
    color: var(--brand-purple);
    display: flex; align-items: center; justify-content: center; text-align: center;
    font-family: 'Noto Sans', sans-serif; font-size: 18px; font-weight: 700; line-height: 1.25;
    padding: 14px; margin: 0 -30px; z-index: 2; position: relative;
}

/* ---- Blue quote callout ---- */
.dm-quote p {
    font-family: 'Noto Sans', sans-serif; font-size: 18px; line-height: 1.7; font-weight: 600; margin: 0;
    background: linear-gradient(90deg, #006cb6 0%, #8e288f 100%);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent; color: transparent;
}

/* ---- Assessment Process A/B/C ---- */
/* one light-bordered box holding A / B / C with a soft teal shadow */
.dm-abc {
    padding: 4px 32px 26px; margin-top: 22px;
    -webkit-box-shadow: 10px 10px 6px -4px #00bff3;
    -moz-box-shadow: 10px 10px 6px -4px #00bff3;
    box-shadow: 10px 10px 6px -4px #00bff3;
}
.dm-abc-item { border: none; }
.dm-abc-head {
    display: flex; align-items: center; gap: 12px;
    background: none; color:#0485d8;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700;
    padding: 18px 0 12px; border-bottom: 1px solid #5cbcbf; margin: 0px 42px;
}
.dm-abc-letter {
    flex: none; background: #c2e9fb; color: #0485d8; border-right: 2px solid #0485d8; border-bottom: 2px solid #0485d8;
    font-size: 15px; font-weight: 700; padding: 4px 10px; margin-left: -42px;
}
.dm-abc-body { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; padding: 18px 42px 8px 50px; }
.dm-abc-body > p { grid-column: 1 / -1; }
.dm-abc-body p { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: #444; margin: 0 0 12px; }
.dm-abc-col p:last-child { margin-bottom: 0; }

/* ---- Process framework (numbered boxes) — matches .se-proc ---- */
.dm-proc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-top: 24px; align-items: stretch; }
.dm-proc { background: #fff; margin-top: 40px; display: flex; flex-direction: column; }
.dm-proc-wide { grid-column: 1 / -1; max-width: 650px; width: 100%; margin-left: auto; margin-right: auto; }
.dm-proc-head {
    position: relative;
    background: linear-gradient(90deg, #1f8775 0%, #58b9ac 100%);
    padding: 25px 12px;
}
.dm-proc-head-inner {
    position: absolute; top: 0; left: 30px; transform: translateY(-50%);
    width: 375px;
    display: flex; align-items: center; gap: 10px;
    background: #ebf5f3;
    color: #14453d; font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; line-height: 1.3;
    padding: 12px 16px;
}
.dm-proc-num {
    flex: none; display: flex; align-items: center; justify-content: center;
    width: 34px; height: 34px; border-radius: 6px; color: #5cbcbf; font-size: 24px; font-weight: 400;
}
.dm-proc .dm-list {
    flex: 1 0 auto; padding: 18px 22px;
    -webkit-box-shadow: 2px 4px 0px 0px rgba(89,186,173,1);
    -moz-box-shadow: 2px 4px 0px 0px rgba(89,186,173,1);
    box-shadow: 2px 4px 0px 0px rgba(89,186,173,1);
    min-height: 191px;
}
.dm-proc .dm-list li { margin-bottom: 12px; }

/* ---- Materiality matrix ---- */
.dm-matrix-ph {
    width: 100%; aspect-ratio: 16 / 8; border-radius: 8px;
    background: #eef0f3; border: 1px dashed #c4cad2;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #97a1ac; margin-bottom: 14px;
}

/* ---- Identified material topics (3 columns) ---- */
.dm-topics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 34px; margin-top: 18px; }
.dm-topic-head { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: var(--dm); margin: 0 0 12px; }
.dm-topic-list { list-style: none; margin: 0; padding: 0; }
.dm-topic-list li { display: flex; align-items: flex-start; gap: 10px; font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.4; color: #333; margin-bottom: 12px; }
.dm-mcode { flex: none; min-width: 34px; text-align: center; color: var(--dm); font-size: 12px; font-weight: 700; padding: 3px 6px; }
/* Per-column colours: Environment / Social / Governance */
.dm-topic-col:nth-child(1) .dm-topic-head { color: #28bd82; border-bottom-color: #28bd82; }
.dm-topic-col:nth-child(1) .dm-mcode { color: #28bd82; -webkit-box-shadow: 2px 3px 0px 0px #28bd82;
    -moz-box-shadow: 2px 3px 0px 0px #28bd82;
    box-shadow: 2px 3px 0px 0px #28bd82; }
.dm-topic-col:nth-child(2) .dm-topic-head { color: #3ac5e0; border-bottom-color: #3ac5e0; }
.dm-topic-col:nth-child(2) .dm-mcode { color: #3ac5e0; -webkit-box-shadow: 2px 3px 0px 0px #3ac5e0;
    -moz-box-shadow: 2px 3px 0px 0px #3ac5e0;
    box-shadow: 2px 3px 0px 0px #3ac5e0; }
.dm-topic-col:nth-child(3) .dm-topic-head { color: #f58b42; border-bottom-color: #f58b42; }
.dm-topic-col:nth-child(3) .dm-mcode { color: #f58b42; -webkit-box-shadow: 2px 3px 0px 0px #f58b42;
    -moz-box-shadow: 2px 3px 0px 0px #f58b42;
    box-shadow: 2px 3px 0px 0px #f58b42; }

/* ---- Key material issue cards ---- */
.dm-issue { margin-bottom: 34px; }
.dm-issue-tab.dm-tab-emp {
    color: #469bc9;
    -webkit-box-shadow: 6px 6px 0px 0px #469bc9;
    -moz-box-shadow: 6px 6px 0px 0px #469bc9;
    box-shadow: 6px 6px 0px 0px #469bc9;
}
.dm-issue-tab.dm-tab-gov {
    color: #c67e5a;
    -webkit-box-shadow: 6px 6px 0px 0px #c67e5a;
    -moz-box-shadow: 6px 6px 0px 0px #c67e5a;
    box-shadow: 6px 6px 0px 0px #c67e5a;
}
.dm-issue-tab.dm-tab-hr,
.dm-issue-tab.dm-tab-comm {
    color: #479bca;
    -webkit-box-shadow: 6px 6px 0px 0px #479bca;
    -moz-box-shadow: 6px 6px 0px 0px #479bca;
    box-shadow: 6px 6px 0px 0px #479bca;
}
.dm-issue-tab {
    display: inline-block; background: #fff;
    color: #408f8a; font-family: 'Noto Sans', sans-serif; font-size: 18px; font-weight: 700;
    padding: 12px 22px;
    -webkit-box-shadow: 6px 6px 0px 0px #408f8a;
    -moz-box-shadow: 6px 6px 0px 0px #408f8a;
    box-shadow: 6px 6px 0px 0px #408f8a;
}
.dm-issue-body {
    display: grid; grid-template-columns: 210px 1fr; gap: 34px;
    padding: 26px 28px;
    background-color: #f5faf6;
    -webkit-box-shadow: 8px 8px 0px 0px #bfc4c3;
    -moz-box-shadow: 8px 8px 0px 0px #bfc4c3;
    box-shadow:8px 8px 0px 0px #bfc4c3;
}
.dm-issue-side { display: flex; flex-direction: column; gap: 30px; }
.dm-side-block h5 { font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700; color: #444; margin: 0 0 4px; }
.dm-side-block p { font-family: 'Noto Sans', sans-serif; font-size: 16px; color: #444; margin: 0; }
.dm-icon-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.dm-icon-ph {
    width: 40px; height: 40px; background: #eef0f3; border: 1px dashed #c4cad2;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 9px; font-weight: 600; color: #97a1ac;
}
.dm-issue-main { min-width: 0; }
.dm-issue-sub { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #444; margin: 0 0 8px; }
.dm-issue-sub2 { font-family: 'Noto Sans', sans-serif; font-size: 15px; font-weight: 700; color: var(--brand-blue); margin: 14px 0 8px; }
.dm-issue-sub2.dm-out-head { color: #1a1a1a; }
.dm-out-head + .dm-out-row { margin-bottom: 26px; }
.dm-issue-main p { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: #444; margin: 0 0 14px; }
.dm-issue-main .dm-list { margin-bottom: 14px; }
.dm-issue-main p.dm-foot  
{
    font-size: 14px;
}
/* Target / Progress table */
.dm-tp { width: 100%; border-collapse: collapse; border: 1px solid var(--brand-purple); margin: 6px 0 8px; }
.dm-tp th { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #444; text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--brand-purple); }
.dm-tp td { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.5; color: #444; padding: 10px 12px; border-bottom: 1px solid #e6eef1; vertical-align: top; }
.dm-tp td:first-child, .dm-tp th:first-child { border-right: none; width: 50%; }
.dm-tp tr:last-child td { border-bottom: none; }
.dm-foot { font-family: 'Noto Sans', sans-serif; font-size: 12px; color: #777; line-height: 1.5; margin: 8px 0 0; }
.dm-issue-ref { font-family: 'Noto Sans', sans-serif; font-size: 13px; color: #444; margin: 12px 0 0; }
.dm-issue-ref::before { content: "\2295"; margin-right: 7px; font-size: 16px; font-weight: 400; vertical-align: -1px; color: #0d6f8a; }

/* Output metrics */
.dm-out-row { display: flex; flex-wrap: wrap; gap: 30px 50px; margin-top: 8px; }
.dm-out-val { display: block; font-family: 'Noto Sans', sans-serif; font-size: 26px; font-weight: 800; color: var(--brand-purple); line-height: 1.05; }
.dm-out-unit { font-size: 15px; font-weight: 700; }
.dm-out p { font-family: 'Noto Sans', sans-serif; font-size: 16px; color: #444; margin: 8px 0 0; }
.dm-out p::before { content: ""; display: inline-block; width: 16px; height: 2px; background: #00bff3; vertical-align: middle; margin-right: 7px; }

/* Capitals legend */
.dm-capitals { display: flex; align-items: center; gap: 26px; background: #f2f7fa; padding: 20px 24px; margin-top: 30px; }
.dm-capitals-label { flex: none; font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700; color: #1a1a1a; }
.dm-capitals-grid { flex: 1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px 30px; }
.dm-capital { display: inline-flex; align-items: center; gap: 8px; font-family: 'Noto Sans', sans-serif; font-size: 13px; color: #444; }
.dm-capital .dm-icon-ph { flex: none; width: 28px; height: 28px; font-size: 8px; }
/* Real images (double materiality) */
.dm-hero-img { padding: 0; border: none; background: none; overflow: hidden; }
.dm-hero-img img { width: 100%; height: 100%; min-height: 480px; object-fit: cover; display: block; }
.dm-matrix-ph { padding: 0; border: none; background: none; aspect-ratio: auto; }
.dm-matrix-ph img { width: 100%; height: auto; display: block; }
.dm-linkage-img { max-height: 50px; width: auto; max-width: 100%; height: auto; display: block; }
/* taller / stacked SDG graphics: size by width so each icon stays ~40px */
.dm-linkage-img[src$="human-sdg.svg"] { max-height: 100px; }
.dm-linkage-img[src$="biodiversity-sdg.svg"],
.dm-linkage-img[src$="community-sdg.svg"] { max-height: none; max-width: 95px; }
/* Capital Linkages icons — smaller */
.dm-cap-link { max-height: 30px; }
.dm-capital img { flex: none; width: 28px; height: 28px; object-fit: contain; }

/* Double Materiality — intro + approach in a contained cyan box (matches .se-lead-box) */
.dm-intro-section { background: #fff; padding: 54px 0 0; }
.dm-lead-box { background: #00bff3; padding: 40px 44px; }
.dm-lead-box .dm-intro { color: #ffffff; margin: 0 0 28px; }
.dm-lead-box .dm-h2 { color: #ffffff; font-size: 16px; }
.dm-lead-copy { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.75; color: #ffffff; margin: 0; }

/* incubating-sustainable-growth start */
.incubatingtop {
    background: #fff;
    padding: 50px 0 70px;
}
.incubatingtop-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.4;
    color: var(--brand-purple);
    margin: 0 0 18px;
}
.incubatingtop-copy p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #1a1a1a;
    margin: 0 0 16px;
}
.incubatingtop-copy p:last-child {
    margin-bottom: 0;
}
.incubatingtop-feature-row {
    align-items: stretch;
    margin-top: 30px;
}
.incubatingtop-feature-row > div {
    display: flex;
}
.incubatingtop-quote {
    background: #edf5f7;
    padding: 34px 36px 40px;
    min-height: 100%;
    width: 100%;
}
.incubatingtop-quote p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.4;
    color: #7B2FA8;
    background: linear-gradient(90deg, #1565C0 0%, #7B2FA8 50%, #C01535 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin: 0;
    max-width: 400px;
    position: relative;
    padding-left: 18px;
}
.incubatingtop-quote p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 10px;
    height: 4px;
    background: #00aeef;
}
.incubatingtop-media {
    height: 100%;
    width: 100%;
}
.incubatingtop-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.incubatingcore-row {
    margin-top: 30px;
}
.incubatingcore-content p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #1a1a1a;
    margin: 0 0 14px;
}
.incubatingcore-content p:last-child {
    margin-bottom: 0;
}
.incubatingcore-content ul {
    list-style: none;
    margin: 0 0 14px;
    padding: 0;
}
.incubatingcore-content ul:last-child {
    margin-bottom: 0;
}
.incubatingcore-content li {
    position: relative;
    padding-left: 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #1a1a1a;
    margin-bottom: 10px;
}
.incubatingcore-content li:last-child {
    margin-bottom: 0;
}
.incubatingcore-content li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.6em;
    width: 5px;
    height: 5px;
    background: #00aeef;
}
/* incubating-sustainable-growth end */

.mfc-content {
    padding: 50px 0 70px;
}
.mfc-section-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.25;
    color: var(--brand-purple);
    margin: 0 0 22px;
}
.mfc-theme-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(30px, 4vw, 48px);
    font-weight: 600;
    line-height: 1.08;
    color: var(--brand-purple);
    margin: 6px 0 24px;
}
.mfc-content p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #1d1d1d;
    margin: 0 0 15px;
}
.mfc-content ul {
    list-style: none;
    margin: 0 0 15px;
    padding: 0;
}
.mfc-content li {
    position: relative;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.55;
    color: #1d1d1d;
    margin-bottom: 12px;
}
.mfc-content li:last-child {
    margin-bottom: 0;
}
.mfc-content li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 5px;
    height: 5px;
    background: #00aeef;
}
.mfc-content .mfc-quote-card {
    background: transparent;
    padding: 0;
    margin-bottom: 20px;
}
.mfc-content .mfc-quote-card p {
    font-size: 18px;
    line-height: 1.45;
    font-weight: 600;
    color: #7d7265;
    margin-bottom: 16px;
}
.mfc-content .mfc-quote-card span {
    display: inline-block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    color: #4d4d4d;
    padding-bottom: 6px;
    border-bottom: 3px solid #00aeef;
}
.mfc-content .mfc-highlight-card {
    background: transparent;
    margin: 20px 0 ;
}
.mfc-content .mfc-highlight-card p {
    font-size: 20px;
    line-height: 24px;
    font-weight: 600;
    color: #12b5ef;
    margin-bottom: 0;
}
.mfc-icon-placeholder {
    width: 58px;
    height: 58px;
    margin-bottom: 5px;
}
.mfc-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 24px;
}
.mfc-stats--duo {
    max-width: 820px;
}
.mfc-stat-card {
    padding: 0 28px 0 0;
}
.mfc-stat-card--left {
    text-align: left;
    border-right: 1px solid #d9dde3;
    padding-right: 32px;
    margin-bottom: 20px;
}
.mfc-stat-card--right {
    text-align: left;
    padding-left: 32px;
}
.mfc-stat-card h3 {
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.05;
    color: #2c66bc;
    background: linear-gradient(90deg, #1565C0 0%, #7B2FA8 50%, #C01535 100%);;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin: 0 0 8px;
}
.mfc-stat-card .rs {
    font-size: 0.9em;
}
.mfc-stat-card p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #1a1a1a;
    margin: 0;
    padding-left: 14px;
    position: relative;
}
.mfc-stat-card p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.72em;
    width: 8px;
    height: 3px;
    background: #00aeef;
}
/* message-from-the-chairman end */
p.rajeshname{
    color: var(--brand-purple);
    margin-bottom: 0;
    font-weight: 600;
}
/* about-adani-enterprises-limited start */
.aael-content {
    padding: 25px 0 20px;
}
.aael-quote-panel {
    /* background: #eef7fb; */
    /* padding: 22px 18px 22px 22px; */
    margin-bottom: 20px;
}
.aael-quote-panel p {
    position: relative;
    padding-left: 16px;
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.22;
    font-weight: 600;
    background: linear-gradient(90deg, #0f9fe6 0%, #215fbf 38%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.aael-quote-panel p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 10px;
    height: 4px;
    background: #00aeef;
}
.aael-inner-row {
    align-items: flex-start;
    row-gap: 26px;
}
.aael-section-title {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.aael-copy p,
.aael-vision-card p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444;
}
.aael-copy ul {
    list-style: none;
    margin: 0 0 16px;
    padding: 0;
}
.aael-copy li {
    position: relative;
    padding-left: 16px;
    margin-bottom: 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #444;
}
.aael-copy li:last-child {
    margin-bottom: 0;
}
.aael-copy li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 6px;
    height: 6px;
    background: #00aeef;
}
.aael-vision-card {
    padding-left: 0;
}
.aael-vision-layout {
    display: grid;
    grid-template-columns: 450px 400px;
    align-items: start;
    margin: 20px 0px;
    column-gap: 34px;
}
.aael-vision-copy {
    padding-right: 34px;
    border-right: 2px solid #d7dce2;
}
.aael-vision-stats {
    display: grid;
    row-gap: 28px;
}
.aael-vision-title {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 30px;
    line-height: 1;
    font-weight: 600;
    color: #13b5ef;
}
.aael-stat-block {
    margin-top: 0;
}
.aael-stat-block h3 {
    margin: 0 0 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1;
    font-weight: 600;
    background: linear-gradient(180deg, #0f9fe6 0%, #215fbf 30%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.aael-stat-block p {
    position: relative;
    padding-left: 14px;
    margin-bottom: 0;
    font-size: 14px;
    line-height: 1.35;
}
.aael-stat-block p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 8px;
    height: 3px;
    background: #00aeef;
}
.aael-strategy-section {
    margin: 0 0 30px;
        background: #97278f;
}
.aael-strategy-row {
    align-items: stretch;
    row-gap: 24px;
}
.aael-strategy-panel {
    height: 100%;
    background: #97278f;
    padding: 30px 20px 26px;
}
.aael-strategy-panel h2 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 600;
    color: #ffffff;
}
.aael-strategy-panel > p {
    margin: 0 0 30px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #ffffff;
}
.aael-strategy-panel h3 {
    margin: 0 0 15px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
    color: #76dff4;
}
.aael-strategy-points {
    display: grid;
}
.aael-strategy-point {
    padding: 0 0 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.8);
}
.aael-strategy-point:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}
.aael-strategy-point p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 600;
    color: #ffffff;
}
.aael-strategy-media {
    height: 100%;
}
.aael-strategy-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.aael-investment-section {
    padding: 0 0 70px;
}
.aael-investment-intro p,
.aael-investment-copy p {
    margin: 0 0 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #444;
}
.aael-investment-box-wrap {
    margin: 8px 0 28px;
}
.aael-investment-box-wrap h3 {
    margin: 0 0 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 400;
    color: #444;
}
.aael-investment-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.aael-investment-box {
    min-height: 58px;
    padding: 12px 14px;
    border: 1px solid #67d7d0;
    box-shadow: 4px 4px 0 #67d7d0;
    background: #ffffff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 400;
    color: #444;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
.aael-investment-highlight {
    /* background: #eef7f4; */
    /* padding: 22px 18px 24px 20px; */
    margin-bottom: 20px;
}
.aael-investment-highlight p {
    position: relative;
    padding-left: 18px;
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.24;
    font-weight: 600;
    background: linear-gradient(180deg, #0f9fe6 0%, #215fbf 30%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.aael-investment-highlight p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 10px;
    height: 4px;
    background: #00aeef;
}
.aael-investment-copy h2 {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.3;
    font-weight: 600;
    color: #a12b8f;
}
.aael-investment-copy ul {
    list-style: none;
    margin: 0 0 16px;
    padding: 0;
}
.aael-investment-copy li {
    position: relative;
    padding-left: 16px;
    margin-bottom: 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #444;
}
.aael-investment-copy li:last-child {
    margin-bottom: 0;
}
.aael-investment-copy li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 6px;
    height: 6px;
    background: #00aeef;
}
/* about-adani-enterprises-limited end */

/* ============================================================
   RISKS AND OPPORTUNITIES PAGE
   ============================================================ */
.ro-hero, .ro-quote-section, .ro-section { --ro: #0093b8; }

/* Hero banner */
.ro-hero { background: #eef6fb; overflow: hidden; padding-top: 110px; }
.ro-hero-row { display: grid; grid-template-columns: 2fr 3fr; gap: 50px; align-items: stretch; min-height: 440px; }
.ro-hero-text { display: flex; flex-direction: column; justify-content: center; padding: 20px 0 40px; }
.ro-eyebrow { display: block; font-family: 'Noto Sans', sans-serif; font-size: 18px; font-weight: 700; color: #1a1a1a; margin-bottom: 14px; }
.ro-title { font-family: 'Playfair Display', serif; font-size: clamp(26px, 4vw, 40px); line-height: 1.12; font-weight: 700; color: var(--brand-purple); margin: 0 0 18px; }
.ro-hero-copy { font-family: 'Noto Sans', sans-serif; font-size: 15px; line-height: 1.7; color: #444; margin: 0; }
/* Intro — blue box below the banner (matches .dm-lead-box) */
.ro-lead-section { background: #fff; padding: 54px 0 0; }
.ro-lead-box { background: #00bff3; padding: 40px 44px; }
.ro-lead-copy { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.75; color: #fff; margin: 0; }
.ro-hero-img {
    position: relative; min-height: 440px; background: #dfeaf1; border: 1px dashed #b7cdd8;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #8aa3b0;
}

/* Shared headings + text */
.ro-h2 { font-family: 'Noto Sans', sans-serif; font-size: 22px; font-weight: 700; color: var(--brand-purple); margin: 0 0 14px; line-height: 1.3; }
.ro-h3 { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #1a1a1a; margin: 22px 0 14px; }
.ro-cat-head { font-family: 'Noto Sans', sans-serif; font-size: 22px; font-weight: 700; color: #444; margin: 0 0 20px; }
.ro-section { padding: 36px 0; }
.ro-section > .container > p { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.7; color: #444; margin: 0 0 16px; }
.ro-bold { font-weight: 700; color: #1a1a1a; }
.ro-ref { font-family: 'Noto Sans', sans-serif; font-size: 13px; color: #0d6f8a; margin: 10px 0 0; }
.ro-ref::before { content: "\2295"; margin-right: 7px; font-size: 15px; vertical-align: -1px; color: #0d6f8a; }

/* bullet lists */
.ro-list { list-style: none; margin: 0 0 14px; padding: 0; }
.ro-list li { position: relative; padding-left: 16px; margin-bottom: 8px; font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.55; color: #444; }
.ro-list li::before { content: ""; position: absolute; left: 0; top: 8px; width: 5px; height: 5px; background: #00bff3; }

/* Quote (gradient text) + Key focus */
.ro-quote-section { padding: 30px 0 10px; }

.ro-quote p {
    font-family: 'Noto Sans', sans-serif; font-size: 18px; line-height: 1.6; font-weight: 600; margin: 0;
    background: linear-gradient(90deg, #006cb6 0%, #8e288f 100%);
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent;
}
.ro-focus { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; margin-top: 14px; }
.ro-focus-box {
    border-top: 3px solid #6bc1b7;
    border-left: 1px solid #6bc1b7;
    border-bottom: 1px solid #6bc1b7;
    border-right: 1px solid #6bc1b7;
    padding: 18px 16px; text-align: center;
    font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 600; color: #14453d;
}

/* Two-column text */
.ro-2col { display: grid; grid-template-columns: 1fr; gap: 30px; }
.ro-2col p { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.7; color: #444; margin: 0 0 14px; }

/* Internal control boxes */
.ro-ctrl-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-top: 18px; }
.ro-ctrl {
    border-right: 3px solid #59baad; border-top: 1px solid #59baad; background: #fff; padding: 16px 18px;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: #444;
}

/* Committees (matches .se-comm) */
/* committees stack full-width: label box (left) + bullets (right), divided */
.ro-comm-grid { display: flex; flex-direction: column; margin: 22px 0 10px; }
.ro-comm { display: grid; grid-template-columns: 260px 1fr; gap: 44px; align-items: start; padding: 28px 0; }
.ro-comm:last-child { border-bottom: none; }
.ro-comm-head {
    align-self: start; margin-left: 8px;
    background: #eef7f6; color: #14453d;
    font-family: 'Noto Sans', sans-serif; font-size: 15px; font-weight: 700; line-height: 1.3;
    padding: 16px 18px;
    -webkit-box-shadow: -8px 8px 0px 0px #58b9ac;
    box-shadow: -8px 8px 0px 0px #58b9ac;
}
.ro-comm-body { padding: 18px 20px 0 0; border-top: 1px solid #82cbc1; border-right: 3px solid #82cbc1; }
.ro-comm-body .ro-list { margin: 0; }

/* ERM process boxes (matches .dm-proc) */
.ro-proc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-top: 24px; align-items: stretch; }
.ro-proc { background: #fff; margin-top: 40px; display: flex; flex-direction: column; }
.ro-proc-wide { grid-column: 1 / -1; }
.ro-proc-head { position: relative; background: linear-gradient(90deg, #1f8775 0%, #58b9ac 100%); padding: 25px 12px; }
.ro-proc-head-inner {
    position: absolute; top: 0; left: 30px; transform: translateY(-50%); width: 375px;
    display: flex; align-items: center; gap: 10px; background: #ebf5f3;
    color: #444; font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; line-height: 1.3; padding: 12px 16px;
}
.ro-proc-num { flex: none; display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 6px; color: #5cbcbf; font-size: 24px; font-weight: 400; }
.ro-proc .ro-list {
    flex: 1 0 auto; margin: 0; padding: 18px 22px;
    -webkit-box-shadow: 2px 4px 0px 0px rgba(89,186,173,1);
    box-shadow: 2px 4px 0px 0px rgba(89,186,173,1);
    min-height: 170px;
}

/* Note: process head title uses inline number + text; wrap markup uses span not chip,
   so provide a simple inline header fallback */
.ro-proc-head .ro-proc-num { position: relative; }

/* Input boxes (GHG etc.) */
/* one outer teal box; each input divided by a cyan left bar */
.ro-inputs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 18px 0; border: 1px solid rgba(89, 186, 173, 1); padding: 16px 12px; border-bottom:4px solid rgba(89, 186, 173, 1); }
.ro-input-box {
    border-right: 1px solid rgba(89, 186, 173, 1); padding: 4px 18px; text-align: left;
    font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 600; color: #333;
}
.ro-input-box:last-child { border-right: none; }

/* ESG 3-column */
.ro-esg-cols { display: grid; grid-template-columns: 1fr; gap: 4px; margin-top: 10px; }
.ro-esg-col p { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: #444; margin: 0 0 12px; }

/* Top risks table */
.ro-legend-line { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 22px; margin-bottom: 10px; font-family: 'Noto Sans', sans-serif; font-size: 13px; color: #444; }
.ro-legend-title { font-weight: 700; color: #1a1a1a; }
.ro-leg { display: inline-flex; align-items: center; gap: 6px; }
.ro-tri { display: inline-block; width: 0; height: 0; }
.ro-tri-up { border-left: 6px solid transparent; border-right: 6px solid transparent; border-bottom: 9px solid #2e6fb0; }
.ro-tri-down { border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 9px solid #2e6fb0; }
.ro-neu { display: inline-block; width: 12px; height: 3px; background: #2e6fb0; }
.ro-neu-stack { display: inline-flex; flex-direction: column; align-items: center; gap: 3px; vertical-align: middle; }
.ro-dot { display: inline-block; width: 13px; height: 13px; }
.ro-dot-high { background: #e0322b; }
.ro-dot-med { background: #f2c200; }
.ro-dot-low { background: #37b34a; }
.ro-table-wrap { overflow-x: auto; margin-top: 8px; }
.ro-table { width: 100%; border-collapse: collapse; }
.ro-table th { font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700; color: #fff; background: rgba(89, 186, 173, 1); text-align: left; padding: 11px 14px; }
.ro-table td { font-family: 'Noto Sans', sans-serif; font-size: 14px; color: #444; padding: 10px 14px; border-bottom: 1px solid #e6eef1; }
.ro-table td:first-child, .ro-table td:nth-child(3) { color: #444; }
.ro-table td:nth-child(2), .ro-table th:nth-child(2), .ro-table td:nth-child(4), .ro-table th:nth-child(4) { text-align: center; }

/* Key legends */
.ro-keys { display: grid; grid-template-columns: 1fr 2fr; gap: 34px; margin-top: 14px; }
.ro-key-col { min-width: 0; }
.ro-key-head { font-family: 'Noto Sans', sans-serif; font-size: 15px; font-weight: 700; color: #1a1a1a; margin: 18px 0 12px; }
.ro-key-list { display: flex; flex-direction: column; gap: 12px; }
.ro-key-item { display: inline-flex; align-items: center; gap: 8px; font-family: 'Noto Sans', sans-serif; font-size: 14px; color: #444; }
.ro-key-topics { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 20px; }
.ro-key-pillars { grid-template-columns: repeat(3, 1fr); margin-top: 8px; }
.ro-key-topic { display: flex; align-items: flex-start; gap: 8px; font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.4; color: #444; }

/* Badges (S / M codes) */
.ro-badge { flex: none; display: inline-block; min-width: 30px; text-align: center; color: #8e278f; font-family: 'Noto Sans', sans-serif; font-size: 12px; font-weight: 700; padding: 3px 6px; -webkit-box-shadow: 2px 3px 0px 0px #8e278f;
    -moz-box-shadow: 2px 3px 0px 0px #8e278f;
    box-shadow: 2px 3px 0px 0px #8e278f; }
.ro-badges { display: flex; flex-wrap: wrap; gap: 6px; }
/* Strategic Pillars badges — cyan shadow (legend + inside risk cards) */
.ro-key-pillars .ro-badge,
.ro-risk-side .ro-side-block:nth-child(2) .ro-badge {
    color: #3ac5e0;
    -webkit-box-shadow: 2px 3px 0px 0px #3ac5e0;
    -moz-box-shadow: 2px 3px 0px 0px #3ac5e0;
    box-shadow: 2px 3px 0px 0px #3ac5e0;
}

/* icon placeholder */
.ro-icon-ph {
    flex: none; width: 34px; height: 34px; background: #eef0f3; border: 1px dashed #c4cad2;
    display: inline-flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 8px; font-weight: 600; color: #97a1ac;
}
.ro-icon-row { display: flex; flex-wrap: wrap; gap: 8px; }
/* Real images (risks and opportunities) */
.ro-hero-img { padding: 0; border: none; background: none; overflow: hidden; }
.ro-hero-img img { width: 100%; height: 100%; min-height: 440px; object-fit: cover; display: block; }
.ro-img-ph { padding: 0; border: none; background: none; }
.ro-img-ph img { width: 100%; height: auto; display: block;}
.ro-cap-img { max-height: 30px; width: auto; max-width: 100%; height: auto; display: block; }
.ro-key-item img { flex: none; width: 34px; height: 34px; object-fit: contain; }

/* ---- Risk cards ---- */
.ro-risk { margin-bottom: 45px; }
.ro-risk-tab {
    display: inline-flex; align-items: stretch; gap: 12px;
    font-family: 'Noto Sans', sans-serif;
}
.ro-risk-code {
    display: inline-flex; align-items: center;
    background: #dbede9; color: #444; border: 1.5px solid #82cbc1;
    font-size: 16px; font-weight: 700; padding: 9px 18px;
    -webkit-box-shadow: 5px 5px 0px 0px #82cbc1;
    box-shadow: 5px 5px 0px 0px #82cbc1;
}
.ro-risk-name {
    display: inline-flex; align-items: center;
    background: #ffffff; color: #82cbc1;
    border: 1px solid #82cbc1;
    font-size: 16px; font-weight: 700; padding: 9px 18px;
    -webkit-box-shadow: 5px 5px 0px 0px #82cbc1;
    box-shadow: 5px 5px 0px 0px #82cbc1;
}
.ro-risk-body {
    display: grid; grid-template-columns: 200px 1.3fr 1fr; gap:0px 30px;
    border: 1px solid #82cbc1; background: #ffffff; padding: 26px 28px;
    -webkit-box-shadow: 8px 8px 0px 0px #bfc4c3;
    box-shadow: 8px 8px 0px 0px #bfc4c3;
}
.ro-risk-side { display: flex; flex-direction: column; gap: 22px; }
.ro-side-block h5 { font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700; color: #1a1a1a; margin: 0 0 8px; }
.ro-risk-main, .ro-risk-opp { min-width: 0; }
/* Related Opportunities gets the teal top border in every card that has it */
.ro-relopp { border-top: 2px solid #82cbc1; padding-top: 14px; }
/* Related Opportunities full-width footer row (emerging / Type-B cards) */
.ro-relopp-full { grid-column: 2 / -1; margin-top: 4px; }
.ro-sub { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #444; margin: 0 0 6px; }
.ro-risk-main p, .ro-risk-opp p { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: #444; margin: 0 0 14px; }
.ro-risk-main .ro-sub:not(:first-child), .ro-risk-opp .ro-sub:not(:first-child) { margin-top: 14px; }

/* ---- Opportunity cards ---- */
.ro-opp { margin-bottom: 32px; }
.ro-opp-body {
    display: grid; grid-template-columns: 1fr 1fr; gap: 34px;
    border: 1px solid #cfe9f2; background: #ffffff; padding: 26px 28px;
    -webkit-box-shadow: 8px 8px 0px 0px #bfc4c3;
    box-shadow: 8px 8px 0px 0px #bfc4c3;
}
.ro-opp-col p { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: #444; margin: 0 0 14px; }
.ro-opp-col .ro-sub:not(:first-child) { margin-top: 14px; }
/* Sustainability Opportunities body — column divider + first-heading underline */
.ro-opp-col { border-right: 1px solid #82cbc1; padding-right: 24px; }
.ro-opp-col:last-child { border-right: none; padding-right: 0; }
.ro-opp-col .ro-sub:first-child { border-bottom: 2px solid #82cbc1; padding-bottom: 8px; }
.ro-img-ph {
    width: 100%; aspect-ratio: 21 / 7;  margin-top: 18px;
}
.ro-ref
{
    font-size: 14px !important;
    color: #7b7b7b !important;
}

/* ============================================================
   STRATEGY PAGE
   ============================================================ */
.st-hero, .st-section { --st: #0093b8; }
.st-hero { background: #eef6fb; overflow: hidden; padding-top: 110px; }
.st-hero-row { display: grid; grid-template-columns: 2fr 3fr; gap: 50px; align-items: stretch; min-height: 440px; }
.st-hero-text { display: flex; flex-direction: column; justify-content: center; padding: 20px 0 40px; }
.st-eyebrow { display: block; font-family: 'Noto Sans', sans-serif; font-size: 18px; font-weight: 700; color: #1a1a1a; margin-bottom: 14px; }
.st-title { font-family: 'Playfair Display', serif; font-size: clamp(26px, 4vw, 40px); line-height: 1.12; font-weight: 700; color: var(--brand-purple); margin: 0 0 18px; }
.st-hero-img {
    position: relative; min-height: 440px; background: #dfeaf1; border: 1px dashed #b7cdd8;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #8aa3b0;
}
.st-lead-section { background: #fff; padding: 54px 0 0; }
.st-lead-box { background: #00bff3; padding: 40px 44px; }
.st-lead-copy { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.75; color: #fff; margin: 0; }
.st-section { padding: 36px 0; }
.st-section.pt-0 { padding-top: 0; }
.st-section > .container > p { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.7; color: #444; margin: 0 0 16px; }
.st-h2 { font-family: 'Noto Sans', sans-serif; font-size: 22px; font-weight: 700; color: var(--brand-purple); margin: 0 0 14px; line-height: 1.3; }
.st-h3 { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #1a1a1a; margin: 22px 0 14px; }
.st-img-ph {
    width: 100%; aspect-ratio: 21 / 7; border-radius: 8px; margin-top: 18px; margin-bottom:40px;
    background: #eef0f3; border: 1px dashed #c4cad2;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #97a1ac;
}
.st-lead-copy + .st-lead-copy { margin-top: 16px; }
.st-lead-copy.is-bold { font-weight: 700; }

/* Shared bullet list */
.st-list { list-style: none; margin: 0 0 14px; padding: 0; }
.st-list li { position: relative; padding-left: 16px; margin-bottom: 8px; font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.5; color: #444; }
.st-list li::before { content: ""; position: absolute; left: 0; top: 7px; width: 5px; height: 5px; background: #00bff3; }

/* Legend (Capitals + Material Topics) */
.st-legend { display: grid; grid-template-columns: 1fr 2fr; gap: 34px; margin-top: 6px; }
.st-legend-head { font-family: 'Noto Sans', sans-serif; font-size: 15px; font-weight: 700; color: #1a1a1a; margin: 0 0 12px; }
.st-cap-list { display: flex; flex-direction: column; gap: 12px; }
.st-cap-item { display: inline-flex; align-items: center; gap: 8px; font-family: 'Noto Sans', sans-serif; font-size: 14px; color: #444; }
.st-topics { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 20px; }
.st-topic { display: flex; align-items: flex-start; gap: 8px; font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.4; color: #444; }

/* Badges (M / S codes) */
.st-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.st-badge { flex: none; display: inline-block; min-width: 30px; text-align: center; color: #8e278f; font-family: 'Noto Sans', sans-serif; font-size: 12px; font-weight: 700; padding: 3px 6px;
    -webkit-box-shadow: 2px 3px 0px 0px #8e278f; box-shadow: 2px 3px 0px 0px #8e278f; }

/* Icon placeholder */
.st-icon-row { display: flex; flex-wrap: wrap; gap: 8px; }
.st-icon-ph { flex: none; width: 34px; height: 34px; background: #eef0f3; border: 1px dashed #c4cad2;
    display: inline-flex; align-items: center; justify-content: center;
    font-family: 'Noto Sans', sans-serif; font-size: 8px; font-weight: 600; color: #97a1ac; }
/* Real images (strategy) */
.st-hero-img { padding: 0; border: none; background: none; overflow: hidden; }
.st-hero-img img { width: 100%; height: 100%; min-height: 440px; object-fit: cover; display: block; }
.st-img-ph { padding: 0; border: none; background: none; aspect-ratio: auto; }
.st-img-ph img { width: 100%; height: auto; display: block; border-radius: 8px; }
.st-cap-item img { flex: none; width: 34px; height: 34px; object-fit: contain; }
.st-cap-img { max-height: 30px; width: auto; max-width: 100%; height: auto; display: block; }
.st-cap-img[src$="s5-capitals-icon.svg"] { max-height: 80px; }

/* Strategy pillar cards (S1–S7) */
.st-pillar { margin-bottom: 45px; }
.st-pillar-tab { display: inline-flex; align-items: stretch; gap: 12px; font-family: 'Noto Sans', sans-serif; }
.st-pillar-code { display: inline-flex; align-items: center; background: #fff; color: #00bff3; font-size: 20px; font-weight: 700; padding: 10px 20px; border:1px solid #00bff3; -webkit-box-shadow: 5px 5px 0px 0px #00bff3;
    box-shadow: 5px 5px 0px 0px #00bff3; }
.st-pillar-name { display: inline-flex; align-items: center; background: #ffffff; color: #00bff3; font-size: 18px; font-weight: 700; line-height: 1.2; padding: 10px 20px; }
.st-pillar-body { display: grid; grid-template-columns: 240px 1.4fr 1fr; gap: 0 34px; border: 1px solid #00bff3; background: #fff; padding: 26px 28px;
    -webkit-box-shadow: 8px 8px 0px 0px #b3ebfb; box-shadow: 8px 8px 0px 0px #b3ebfb; }
.st-pillar-side { display: flex; flex-direction: column; gap: 30px; }
.st-side-block h5 { font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700; color: #1a1a1a; margin: 0 0 8px; }
.st-side-block > p { font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.5; color: #444; margin: 0; }
.st-pillar-main, .st-pillar-aside { min-width: 0; }
.st-pillar-main p { font-family: 'Noto Sans', sans-serif; font-size: 15px; line-height: 1.65; color: #444; margin: 0 0 14px; }
.st-pillar-aside > p { font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.5; color: #444; margin: 0 0 10px; }
.st-aside-head { font-family: 'Noto Sans', sans-serif; font-size: 15px; font-weight: 700; color: #1a1a1a; margin: 0 0 10px; }
.st-aside-head:not(:first-child) { margin-top: 20px; }
.st-wf { margin-bottom: 12px; }
.st-wf-year { display: block; font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700; color: #4975c9; margin-bottom: 2px; }
.st-wf p { font-family: 'Noto Sans', sans-serif; font-size: 14px; line-height: 1.5; color: #444; margin: 0; }
.st-kpi { margin-bottom: 14px; }
.st-kpi-sub { font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700; color: #1a1a1a; margin: 0 0 4px; }
.st-kpi-val { display: block; font-family: 'Noto Sans', sans-serif; font-size: 22px; font-weight: 700; color: #8e278f; line-height: 1.2; }
.st-kpi-label { display: flex; gap: 6px; font-family: 'Noto Sans', sans-serif; font-size: 13px; line-height: 1.4; color: #444; }
.st-kpi-label::before { content: ""; flex: none; width: 14px; height: 2px; background: #00bff3; margin-top: 8px; }

/* ============================================================
   NEW ENERGY ECOSYSTEM PAGE
   ============================================================ */
.ne-hero { background: #eef6fb; overflow: hidden; padding-top: 110px; }
.ne-hero-row { display: grid; grid-template-columns: 2fr 3fr; gap: 50px; align-items: stretch; min-height: 440px; }
.ne-hero-text { display: flex; flex-direction: column; justify-content: center; padding: 20px 0 40px; }
.ne-eyebrow { display: block; font-family: 'Noto Sans', sans-serif; font-size: 18px; font-weight: 700; color: #1a1a1a; margin-bottom: 16px; }
.ne-title { display: flex; align-items: center; gap: 16px; font-family: 'Playfair Display', serif; font-size: clamp(26px, 4vw, 40px); line-height: 1.12; font-weight: 700; color: var(--brand-purple); margin: 0; }
.ne-ico-ph { flex: none; background: #eef0f3; border: 1px dashed #c4cad2; display: inline-flex; align-items: center; justify-content: center; font-family: 'Noto Sans', sans-serif; font-weight: 600; color: #97a1ac; }
.ne-title-icon { width: 64px; height: 64px; border-radius: 10px; font-size: 10px; }
.ne-title-icon img { width: 64px; height: 64px; object-fit: contain; }
.ne-title-main { display: flex; flex-direction: column; }
.ne-title-sub { font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 600; color: #8e278f; line-height: 1.2; margin-top: 6px; }
.ne-hero-img { position: relative; min-height: 440px; display: flex; align-items: center; justify-content: center; font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #8aa3b0; }
.ne-hero-img img { width: 100%; height: 100%; min-height: 440px; object-fit: cover; display: block; }
/* Wind banner: show the whole image without cropping/zooming */
.ne-hero-img--contain img { object-fit: contain; }

/* Vision blue box below banner */
.ne-lead-section { background: #fff; padding: 54px 0 0; }
.ne-lead-box { background: none; padding: 0; }
.ne-lead-box h2 { font-family: 'Noto Sans', sans-serif; font-size: 28px; font-weight: 700; color: var(--brand-purple); margin: 0 0 12px; }
.ne-lead-copy { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.75; color: #444; margin: 0; padding-bottom:20px; }
/* Vision/Mission with the key numbers alongside */
.ne-lead-container { display: grid; grid-template-columns: 2fr 1fr; gap: 40px; align-items: start; }
.ne-lead-stats { display: flex; flex-direction: column; gap: 8px; }

.ne-section { padding:0px; }
.ne-section.pt-0 { padding-top: 0; }
/* ===== ne- HEADING SYSTEM (reusable across segment pages) =====
   h2.ne-h2           section heading   — purple, 26px
   h3.ne-h3           subsection        — purple, 22px
   h3.ne-h3.ne-dark   dark subsection   — near-black, 18px
   h4.ne-sub / h4.ne-em-head  minor heading — blue, 16px
   p                  body copy         — #444, 16px
   ============================================================= */
.ne-h2 { font-family: 'Noto Sans', sans-serif; font-size: 18px; font-weight: 700; color: var(--brand-purple); margin: 20px 0 16px; }
.ne-h3 { font-family: 'Noto Sans', sans-serif; font-size: 18px; font-weight: 700; color: var(--brand-purple); margin: 24px 0 10px; }
.ne-h3.ne-dark { color: #444; font-size: 18px; }
.ne-sub, .ne-em-head { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #4975c9; margin: 0 0 6px; line-height: 1.4; }
.ne-em-head--dot { position: relative; padding-left: 16px; }
.ne-em-head--dot::before { content: ""; position: absolute; left: 0; top: 9px; width: 6px; height: 6px; background: #00bff3; }
.ne-section p { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.7; color: #444; margin: 0 0 14px; }
.ne-lead-line { font-weight: 700; color: #1a1a1a; font-size:18px !important }
.ne-offer { margin-bottom: 18px; }
.ne-em { margin-bottom: 18px; }
.ne-em p { font-size: 16px; margin: 0; }

/* Milestone callout */
.ne-milestone {margin: 26px 0; }
.ne-milestone p { font-family: 'Noto Sans', sans-serif; font-size: 18px; line-height: 1.6; font-weight: 700; color: #959595; margin: 0; }
.ne-milestone::after { content: ""; display: block; width: 90px; height: 4px; background: var(--brand-purple); margin-top: 16px; }

/* CEO quote */
.ne-quote { display: flex; flex-direction: column; gap: 14px; margin: 30px 0; }
.ne-quote-icon { width: 46px; height: 38px; border-radius: 6px; font-size: 9px; }
.ne-quote p { font-family: 'Noto Sans', sans-serif; font-size: 18px; line-height: 1.6; font-weight: 600; margin: 0; color: #12b5ef; }
.ne-quote cite { font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700; font-style: normal; color: #444; }

/* Section image */
.ne-img-ph { width: 100%; display: flex; align-items: center; justify-content: center; font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 600; color: #97a1ac; margin: 20px 0; }
.ne-img-ph img { width: 100%; height: 100%; object-fit: cover;  display: block; }

/* Electrolyser Manufacturing list */
.ne-list { list-style: none; margin: 10px 0 0; padding: 0; }
.ne-list li { position: relative; padding-left: 18px; margin-bottom: 14px; font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: #444; }
.ne-list li::before { content: ""; position: absolute; left: 0; top: 9px; width: 6px; height: 6px; background: #00bff3; }
/* Hyphen markers instead of the square dot */
.ne-list--hyphen li::before { content: "-"; top: 0; width: auto; height: auto; background: none; color: #444; font-weight: 700; }
.ne-list b { color: #4975c9; display:block; }

/* Awards & Accolades callout */
/* Awards box — S1-card style (cyan chips + bordered body with cyan shadow) */
.ne-awards { margin: 40px 0px 30px 0px; }
.ne-awards-tab { display: inline-flex; align-items: stretch; gap: 12px; }
.ne-awards-icon { flex: none; width: 56px; background: #fff; display: inline-flex; align-items: center; justify-content: center; font-family: 'Noto Sans', sans-serif; font-size: 8px; font-weight: 600; color: #97a1ac; }
.ne-awards-icon img { width:auto; height:auto; object-fit: cover; }
.ne-awards-name { display: inline-flex; align-items: center; background: #fff; color: #8e278f; font-family: 'Noto Sans', sans-serif; font-size: 18px; font-weight: 700;}
.ne-awards-body { border: 1px solid #00bff3; background: #fff; padding: 24px 26px;
    -webkit-box-shadow: 8px 8px 0px 0px #b3ebfb; box-shadow: 8px 8px 0px 0px #b3ebfb; }
.ne-awards-body p { font-family: 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.6; color: #444; margin: 0; }

.ro-opp .ro-risk-code {
    display: inline-flex;
    align-items: center;
    background: #82cbc1;
    color: #444;
    font-size: 16px;
    font-weight: 700;
    padding: 9px 18px;
    box-shadow: none;
}
.ro-opp .ro-risk-name
{
border: none;
color: #444;
}
.ro-opp .ro-opp-body
{
box-shadow: none;
border: none;
padding-left: 0px;
padding-right: 0px;
}
.st-kpi-val1
{
    font-size: 16px;
}
/* Bottom links - business segments (new-energy-ecosystem) */
.ne-links-section { padding: 20px 0 56px; }
.ne-links { display: flex; flex-wrap: wrap; gap: 16px; padding-top: 30px; }
.ne-links a { display: inline-flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 22px;
    background: var(--brand-purple); color: #fff; border-radius: 10px;
    font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; letter-spacing: .3px; text-transform: uppercase;
    text-decoration: none; transition: background .2s; }
.ne-links a::after { content: "\2197"; font-size: 22px; font-weight: 400; color: #fff; line-height: 1; }
.ne-links a:hover { background: #741f75; }

/* Solar Manufacturing - Domestic/Export Market sub-headings */
.ne-market-head { font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 700; color: #444 !important; margin: 0 0 6px; line-height: 1.4; }

/* Wind Turbine Generators - gradient stat numbers */
.ne-num {
    font-size: 34px;
    font-weight: 700;
    margin-right: 4px;
    color: #0093b8;
}

/* Wind - gradient on the whole stat heading (unit text too) */
.ne-em-head.ne-grad {
    color: #7B2FA8;
    background: linear-gradient(90deg, #1565C0 0%, #7B2FA8 10%, #C01535 65%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 10px;
}

/* Wind stat lists - short line marker instead of dot */
.ne-stat .ne-list { margin-top: 6px; }
.ne-stat .ne-list li { padding-left: 22px;}
.ne-stat .ne-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 11px;
    width: 13px;
    height: 3px;
    background: #00bff3;
}

/* 3-column list (data-center Values) */
.ne-list-3col { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px 30px; }

/* Key numbers 2-column grid (data-center) */
.ne-stat-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px 40px; }
.ne-stat-grid .ne-em { margin-bottom: 8px; }

/* Scale-tier boxes (data-center) - 3 columns with teal border */
.ne-scale-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 20px 0 24px; align-items: stretch; }
.ne-scale {
    border-top: 3px solid #6bc1b7;
    border-left: 1px solid #6bc1b7;
    border-bottom: 1px solid #6bc1b7;
    border-right: 1px solid #6bc1b7;
    padding: 18px 18px;
}
.ne-scale .ne-em-head { margin-bottom: 8px; }
.ne-scale p { font-size: 16px; margin: 0; }

/* AdaniConneX Promise boxes (data-center) */
.ne-promise-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px 34px; margin: 16px 0 30px; }
.ne-promise {
    background: #e9f7fd;
    padding: 20px 22px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    color: #444;
    -webkit-box-shadow: 8px 8px 0px 0px #b3ebfb;
    box-shadow: 8px 8px 0px 0px #b3ebfb;
}

/* Stat cell aligned to bottom (data-center) */
.ne-stat-bottom { display: flex; flex-direction: column; justify-content: flex-end; }
.ne-stat-bottom .ne-em-head { margin-bottom: 6px; }

/* Awards list 2-column, 4 items per column (column-first fill) */
.ne-list-2col4 { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: repeat(4, auto); grid-auto-flow: column; column-gap: 34px; }

/* Generic 2-column list (row-first) - data-center certifications */
.ne-list-2col { display: block; column-count: 2; column-gap: 40px; }
.ne-list-2col li { break-inside: avoid; -webkit-column-break-inside: avoid; }

/* Certification blocks paired 2-column (data-center) */
.ne-cert-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 40px; align-items: start; margin-bottom: 6px; }
.ne-cert-col .ne-sub { margin-top: 18px; }

/* Vision/Mission 2-column variant (water) */
.ne-vmv.ne-vmv-2 { grid-template-columns: 1fr 1fr; }

/* Water key numbers - content-width columns, close together */
.ne-stat-grid.ne-stat-inline { grid-template-columns: max-content max-content; justify-content: start; column-gap: 110px; }

.ne-list1.ne-list b
{
    display: inline;
    color: #444;
    font-size: 16px;
}
/* Gradient callout quote (airports Non-Aero) */
.ne-quote-grad p {
    background: linear-gradient(90deg,  #12b5ef 0%, #7B2FA8 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

/* Seven strategic pillars callout box (airports) - matches Promise box style */
.ne-pillars-box {
    background: #e9f7fd;
    padding: 18px 24px;
    margin: 22px 0 55px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    color: #14556b;
    -webkit-box-shadow: 8px 8px 0px 0px #b3ebfb;
    box-shadow: 8px 8px 0px 0px #b3ebfb;
}
.ne-pillars-box1
{
    margin-bottom:40px !important;
    margin-top: 30px !important;
}
/* NMIA section - bordered box + accent heading (airports) */
.ne-nmia > .container {
    border-top: 1px solid #00bff3;
    border-right: 1px solid #00bff3;
    padding-top: 24px;
    padding-right: 24px;
}
.ne-nmia .ne-h2 {
    color: #4975c9;
    border-left: 4px solid #4975c9;
    padding-left: 16px;
}

/* Inline list (agri-fresh Product/Service Offerings) */
.ne-list-inline { display: flex; flex-wrap: wrap; gap: 10px 28px; }
.ne-list-inline li { margin-bottom: 0; }

/* Numbered list variant (natural-resources BSM) */
ol.ne-list { list-style: decimal; padding-left: 20px; }
ol.ne-list.ne-list-num li { padding-left: 4px; }
/* Roman-numeral variant (i, ii, iii, iv) — e.g. Board and MD's Compensation */
ol.ne-list.cg-roman-list { list-style: lower-roman; padding-left: 26px; }
ol.ne-list.cg-roman-list li { padding-left: 6px; }
ol.ne-list.cg-roman-list li::before { content: none; }
ol.ne-list.ne-list-num li::before { content: none; }

/* Section-name band heading (natural-resources) */
.ne-h2.ne-band {
    background: #e9f7fd;
    color: var(--brand-purple);
    padding: 16px 24px;
    margin: 0 0 32px;
    -webkit-box-shadow: 8px 8px 0px 0px #4091c9;
    box-shadow: 8px 8px 0px 0px #4091c9;
}

/* Image + numbers side by side (natural-resources Mining Services) */
.ne-img-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; align-items: center; margin: 4px 0 30px; }
.ne-img-stats .ne-img-ph { margin: 0; }
.ne-img-stats .ne-stat-grid { grid-template-columns: 1fr 1fr; }
.ne-img-ph1
{
aspect-ratio: 16 / 11;  
}
/* Natural-resources sub-section headings */
.ne-h3.ne-h3-line { color: #444; border-bottom: 1px solid #00bff3; padding-bottom: 10px; font-size:18px; }
.ne-sub.ne-sub-purple { color: var(--brand-purple); font-size:18px; margin-top:15px; }

/* Sustainability blocks: text + image 2-column, alternating (natural-resources) */
.ne-em-img { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; align-items: center; margin-bottom: 30px; }
.ne-em-img .ne-em { margin-bottom: 0; }
.ne-em-img .ne-img-ph { margin: 0; }

/* Production Capacity heading beside numbers (natural-resources Copper) */
.ne-stat-col .ne-sub { margin-top: 0; margin-bottom: 12px; }
.ne-img-ph1
{
    aspect-ratio: 16/10;
}

/* our-people-css */
.pl-section.our-people h1{
    color: #00bff3;
}
.pl-section.our-people p{
    color: #696A6C;
}


.op-linkages-section {
    background: #fff;
    padding: 34px 0 0px;
}

.op-linkages-section--standalone {
    margin-top: 38px;
    padding-top: 18px;
}

.op-safety-section {
    padding: 34px 0 0;
}

.op-safety-copy {
    padding-right: 14px;
}

.op-safety-kicker {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: #a239a5;
    margin: 0 0 10px;
}

.op-safety-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
    color: #111;
    margin: 0 0 12px;
}

.op-safety-copy p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
    margin: 0 0 14px;
}

.op-safety-copy p:last-child {
    margin-bottom: 0;
}

.op-sphere-wrap {
    text-align: center;
}


.op-safety-metrics {
    margin-top: 26px;
}

.op-safety-metric {
    font-family: 'Noto Sans', sans-serif;
}

.op-safety-metric-value {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 6px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 6px;
}

.op-safety-metric-value .count {
    font-size: 28px;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

.op-safety-metric-unit {
    font-size: 20px;
    color: #0096c8;
}

.op-safety-metric-label {
    font-size: 16px;
    line-height: 1.35;
    color: #111;
    max-width: 280px;
    position: relative;
    padding-left: 18px;
}

.op-safety-metric-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 11px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

.op-hierarchy-section {
    padding: 48px 0 0;
}

.op-hierarchy-copy {
    margin-bottom: 22px;
}

.op-hierarchy-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
    color: #111;
    margin: 0 0 10px;
}
/* Section-style heading aligned left, above the (centered) triangle diagram */
.op-hierarchy-title--left {
    text-align: left;
    margin: 40px 0 0;
}

.op-hierarchy-copy p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.55;
    color: #111;
    margin: 0;
    max-width: 1120px;
}

.op-hierarchy-wrap {
    text-align: center;
    margin: 20px 0px;
}

.op-hierarchy-img {
    display: block;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.op-governance-link {
    color: #a12b8f;
    font-weight: 700;
    text-decoration: none;
}

.op-governance-link:hover {
    text-decoration: underline;
}

.op-governance-subtitle {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111;
    margin: 22px 0 18px;
}

.op-sms-section {
    padding: 54px 0 0;
}

.op-sms-stack {
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.op-sms-copy {
    padding-right: 0;
}

.op-sms-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: #a239a5;
    margin: 0 0 12px;
}

.op-sms-copy p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #111;
    margin: 0;
}

.op-sms-panel {
    background: #fff;
}

.op-sms-stat {
    font-family: 'Noto Sans', sans-serif;
}

.op-sms-stat-value {
    display: flex;
    align-items: baseline;
    gap: 0;
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 6px;
}

.op-sms-stat-value .count,
.op-sms-callout {
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

.op-sms-stat-value .count {
    font-size: 28px;
}

.op-sms-percent {
    color: #00B0D6 ;
    font-size: 28px;
    font-weight: 700;
}

.op-sms-stat-label {
    position: relative;
    padding-left: 18px;
    font-size: 16px;
    line-height: 1.4;
    color: #111;
}

.op-sms-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

.op-sms-subtitle {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
    color: #111;
    margin: 6px 0 8px;
}

.op-sms-paragraph {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #111;
    margin: 0;
}

.op-sms-callout {
    position: relative;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.35;
    font-weight: 700;
    margin-top: 4px;
    padding-left: 30px;
}

.op-sms-callout::before {
    content: "";
    position: absolute;
    left: 0;
    top: 13px;
    width: 20px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

.op-sms-note {
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.35;
    color: #666;
}

.op-sms-note strong {
    color: #111;
}

.op-risk-section {
    padding: 35px 0 0;
}

.op-risk-stack {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.op-risk-copy {
    max-width: 1120px;
}

.op-risk-kicker {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: #a239a5;
    margin: 0 0 8px;
}

.op-risk-subtitle {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
    color: #111;
    margin: 0 0 8px;
}

.op-risk-copy p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
    margin: 0;
}

.op-risk-response {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    margin-top: 4px;
}

.op-risk-chip {
    position: relative;
    min-height: 78px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 10px 12px 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 400;
    color: #111;
    border-bottom: 4px solid #1aa9d8;
}

.op-risk-chip:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 26%;
    width: 1px;
    height: 56%;
    background: #b9c6cf;
}

.op-risk-chip::before {
    content: "";
    position: absolute;
    right: -19px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-left: 12px solid #1aa9d8;
}

.op-risk-chip:last-child::before {
    display: none;
}

.op-risk-chip span {
    display: block;
    font-size: 16px;
    line-height: 1.2;
    margin-top: 2px;
}

.op-risk-callout {
    max-width: 1120px;
}

.op-risk-callout p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.35;
    font-weight: 700;
    margin: 0;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

.op-worker-section {
    padding: 56px 0 0;
}

.op-worker-media img {
    display: block;
    width: 100%;
    max-width: 100%;
}

.op-worker-grid {
    margin-top: 28px;
}

.op-worker-card {
    font-family: 'Noto Sans', sans-serif;
    color: #111;
}

.op-worker-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: #a239a5;
    margin: 0 0 8px;
}

.op-worker-card p {
    font-size: 16px;
    line-height: 1.45;
    margin: 0;
    padding-bottom: 20px;
}

.op-incident-section {
    padding: 24px 0 0;
}

.op-incident-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: #a239a5;
    margin: 0 0 16px;
}

.op-incident-item {
    position: relative;
    min-height: 98px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 18px 12px 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
    color: #111;
    border-bottom: 4px solid #1aa9d8;
}

.op-incident-item:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 26%;
    width: 1px;
    height: 56%;
    background: #b9c6cf;
}

.op-incident-item:not(:last-child)::before {
    content: "";
    position: absolute;
    right: -16px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-left: 12px solid #1aa9d8;
}

.op-incident-item--highlight {
    background: #dff0f8;
    box-shadow: 0 10px 16px rgba(26, 169, 216, 0.22);
}

.op-incident-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
}

.op-incident-arrow img {
    display: none;
    width: 16px;
    height: 16px;
}

.op-card {
    background: #fff;
}

.op-section-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #8e278f;
    margin: 0 0 22px;
}

.op-block {
    margin-bottom: 34px;
}

.op-block:last-child {
    margin-bottom: 0;
}

.op-block-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
    margin: 0 0 18px;
}

.op-link-list {
    margin: 0;
    padding: 0;
}

.op-link-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 10px;
}

.op-link-list li:last-child {
    margin-bottom: 0;
}

.op-code {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 58px;
    padding: 0 12px 5px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.15;
    text-align: center;
    align-self: flex-start;
}

.op-code--purple {
    color: #a239a5;
}

.op-code--blue {
    color: #00a6ef;
}

.op-code--teal {
    color: #4bc0c8;
}

/* invisible spacer to keep text aligned when there's no risk code */
.op-code--empty {
    border-right: none;
    border-bottom: none;
}

.op-link-text {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
    padding-top: 1px;
}

.op-capital-list {
    display: flex;
    flex-direction: column;
    gap: 18px;
}
/* Key Linkages: balanced top-3 / bottom-2 layout */
.op-linkages-bottom {
    margin-top: 10px;
}
/* Key Highlights shown full width below the linkages */
.op-highlights-full {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #e6e6e6;
}
.op-highlights-full .op-highlights-row {
    --bs-gutter-y: 20px;
}
/* CSR philosophy sits full width below the Key Linkages */
.cr-philosophy-full {
    margin-top: 34px;
    padding-top: 30px;
    border-top: 1px solid #e6e6e6;
}
.op-capital-list--2col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px 28px;
}

.op-capital-item {
    display: flex;
    align-items: center;
    gap: 14px;
}

.op-capital-item img {
    width: 52px;
    height: 52px;
    object-fit: contain;
    flex: 0 0 auto;
}

.op-capital-item span {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #111111;
}

.op-sdg-grid {
   max-width: 250px;
}


.op-highlights-row {
    margin-top: 44px;
}

.op-highlights-card {
    padding-top: 4px;
}

.op-highlights-grid .op-stat {
    margin-bottom: 0;
}

.op-stat {
    margin-bottom: 30px;
}

.op-stat:last-child {
    margin-bottom: 0;
}

.op-stat-value {
    display: flex;
    align-items: baseline;
    gap: 2px;
    color: #00a6d6;
    line-height: 1;
}

.op-stat-value .count,
.op-stat-value .count-static {
    font-family: 'Noto Sans', sans-serif;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: -0.02em;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.op-stat-unit {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #00a6d6;
}

.op-stat-label {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.35;
    color: #111111;
    margin-top: 6px;
    position: relative;
    padding-left: 18px;
}
.op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 11px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

/* Key Highlights (Our People): even grid so numbers, lines and labels align across all four stats */
.op-highlights-card > .row {
    --bs-gutter-y: 28px;
}

.op-highlights-card .op-stat {
    display: flex;
    flex-direction: column;
    height: 100%;
    margin-bottom: 0;
}

.op-highlights-card .op-stat-value {
    min-height: 30px;
}

/* separator line sits to the left of the label, inline with the black text */
.op-highlights-card .op-stat-value {
    margin-bottom: 14px;
}
.op-highlights-card .op-stat-label {
    margin-top: 0;
    padding-left: 34px;
    padding-top: 0;
}
.op-highlights-card .op-stat-label::before {
    top: 0.6em;
    bottom: auto;
    margin-bottom: 0;
    width: 26px;
    height: 4px;
}

/* Customer Relations Key Highlights: bigger blue stat, blue %, dash slab before label */
.cr-highlights .op-stat-value .count,
.cr-highlights .op-stat-value .count-static {
    font-size: 44px;
}
.cr-highlights .op-sms-percent {
    font-size: 44px;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.cr-highlights .op-stat-label {
    position: relative;
    padding-left: 22px;
    margin-top: 10px;
    font-size: 16px;
}
.cr-highlights .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 14px;
    height: 4px;
    background: #00a6d6;
}

.op-annexure {
    margin-top: 56px;
    padding-bottom: 10px;
}

.op-annexure-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.25;
    color: #111111;
    margin: 0 0 14px;
}

.op-table-wrap {
    margin-top: 12px;
}

.op-hr-table {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
    border-collapse: collapse;
    margin: 0;
}

.op-hr-table thead th {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.15;
    color: #111111;
    text-align: center;
    padding: 10px 12px;
    border-bottom: 2px solid #00a6ef;
    border-top: 1px solid #c8d2da;
}

.op-hr-table thead tr:first-child th {
    font-size: 15px;
    padding-top: 12px;
    padding-bottom: 8px;
}

.op-hr-table thead .op-age-row th {
    padding-top: 8px;
    padding-bottom: 10px;
}

.op-hr-table tbody td {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #111111;
    text-align: right;
    padding: 8px 12px;
    border-bottom: 1px solid #c8d2da;
}

.op-hr-table tbody td + td,
.op-hr-table thead th + th {
    border-left: 1px solid #c8d2da;
    text-align: right;
}

.op-hr-table .op-row-label {
    text-align: left;
    font-size: 16px;
}

.op-hr-table .op-group-row td {
    font-family: 'Noto Sans', sans-serif;
    font-size: 17px;
    font-weight: 700;
    text-align: center;
    padding: 8px 12px 6px;
    border-bottom: 1px solid #c8d2da;
    border-top: 0;
}

.op-hr-table .op-total-row td {
    font-weight: 700;
}

.op-hr-table tbody tr:last-child td {
    border-bottom: 2px solid #00a6ef;
}

.op-hr-table .op-col-label {
    width: 24%;
}

.op-hr-table .op-col-total {
    width: 12%;
}

.op-hr-table--management {
    min-width: 0;
    margin-top: 28px;
}

.op-hr-table--management thead th {
    font-size: 16px;
    padding-top: 12px;
    padding-bottom: 12px;
}

.op-hr-table--management tbody td {
    font-size: 16px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.op-diff-annexure {
    margin-top: 52px;
}

.op-diff-table {
    min-width: 0;
}

.op-diff-table thead th {
    font-size: 18px;
    padding-top: 12px;
    padding-bottom: 10px;
}

.op-diff-table tbody td {
    font-size: 17px;
    padding-top: 8px;
    padding-bottom: 8px;
}

.op-diff-table .op-col-label--wide {
    width: 40%;
}

.op-diff-table .op-col-num {
    width: 20%;
}

.op-diff-table .op-num {
    text-align: right;
    padding-right: 14px;
}

.op-diff-table thead th:last-child {
    text-align: right;
    padding-right: 14px;
}

.op-diversity-annexure {
    margin-top: 52px;
}

.op-diversity-table {
    min-width: 0;
}

.op-diversity-table thead th {
    font-size: 18px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.op-diversity-table thead th:first-child {
    text-align: left;
}

.op-diversity-table tbody td {
    font-size: 16px;
    padding-top: 7px;
    padding-bottom: 7px;
    vertical-align: top;
}

.op-diversity-table .op-col-label--wide {
    width: 76%;
}

.op-diversity-table .op-col-percent {
    width: 12%;
}

.op-diversity-table .op-col-target {
    width: 12%;
}

.op-diversity-table .op-num {
    text-align: right;
    padding-right: 16px;
    white-space: nowrap;
}

.op-diversity-table .op-target {
    text-align: center;
    font-size: 18px;
    line-height: 1.35;
    vertical-align: middle;
    padding-left: 16px;
    padding-right: 16px;
}

.op-diversity-table thead th:nth-child(2),
.op-diversity-table tbody td:nth-child(2) {
    text-align: right;
    padding-right: 16px;
}

.op-diversity-table thead th:nth-child(3) {
    text-align: center;
}

.op-diversity-table tbody tr:last-child td {
    border-bottom: 2px solid #00a6ef;
}

.op-footnote {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
    margin: 12px 0 0;
}

.op-pay-annexure,
.op-hiring-annexure,
.op-turnover-annexure,
.op-training-annexure {
    margin-top: 52px;
}

.op-pay-table,
.op-hiring-table,
.op-turnover-table,
.op-training-table,
.op-management-table,
.op-turnover-management-table,
.op-training-management-table {
    min-width: 0;
}

.op-pay-table thead th,
.op-hiring-table thead th,
.op-turnover-table thead th,
.op-training-table thead th,
.op-management-table thead th,
.op-turnover-management-table thead th,
.op-training-management-table thead th {
    font-size: 18px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.op-pay-table tbody td,
.op-hiring-table tbody td,
.op-turnover-table tbody td,
.op-training-table tbody td,
.op-management-table tbody td,
.op-turnover-management-table tbody td,
.op-training-management-table tbody td {
    font-size: 16px;
    padding-top: 8px;
    padding-bottom: 8px;
}

.op-pay-table .op-pay-label-col {
    width: 56%;
}

.op-pay-table .op-pay-num-col {
    width: 22%;
}

.op-pay-table .op-num {
    text-align: right;
    padding-right: 16px;
    white-space: nowrap;
}

.op-hiring-table .op-hiring-label-col {
    width: 34%;
}

.op-hiring-table .op-hiring-gender-col {
    width: 11%;
}

.op-hiring-table .op-hiring-age-col {
    width: 13%;
}

.op-hiring-table .op-hiring-total-col {
    width: 16%;
}

.op-hiring-table td[colspan="4"],
.op-training-table td[colspan="4"] {
    border-left: 1px solid #c8d2da;
}

.op-hiring-table .op-num,
.op-turnover-table .op-num,
.op-training-table .op-num,
.op-management-table .op-num,
.op-turnover-management-table .op-num,
.op-training-management-table .op-num {
    text-align: right;
    padding-right: 16px;
    white-space: nowrap;
}

.op-hiring-table tbody tr td:nth-child(2),
.op-training-table tbody tr td:nth-child(2) {
    text-align: right;
}

/* Training tables: centre the numbers under their centred column headers */
.op-training-table .op-num,
.op-training-management-table .op-num {
    text-align: right;
    padding-right: 4px;
}

.op-management-table .op-management-label-col,
.op-turnover-management-table .op-management-label-col,
.op-training-management-table .op-management-label-col {
    width: 30%;
}

.op-turnover-table .op-turnover-label-col {
    width: 26%;
}

.op-turnover-table .op-turnover-age-col {
    width: 10.5%;
}

.op-turnover-table .op-turnover-total-col {
    width: 12%;
}

.op-training-table .op-training-label-col {
    width: 34%;
}

.op-training-table .op-training-gender-col {
    width: 11%;
}

.op-training-table .op-training-age-col {
    width: 13%;
}

.op-training-table .op-training-total-col {
    width: 16%;
}

.op-framework-section {
    margin-top: 20px;
}

.op-framework-section .op-proc-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 30px;
    margin-top: 24px;
    align-items: stretch;
}

.op-framework-section .op-proc {
    background: #fff;
    margin-top: 40px;
    display: flex;
    flex-direction: column;
}

.op-framework-section .op-proc-head {
    position: relative;
    background: linear-gradient(90deg, #00b8df 0%, #0098cf 100%);
    padding: 25px 12px;
}

.op-framework-section .op-proc-head-inner {
    position: absolute;
    top: 0;
    left: 30px;
    transform: translateY(-50%);
    width: 312px;
    display: flex;
    align-items: center;
    gap: 10px;
    background: #edf7fb;
    color: #1a1a1a;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
    padding: 12px 16px;
}

.op-framework-section .op-proc-num {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 6px;
    color: #8e278f;
    font-size: 24px;
    font-weight: 400;
}

.op-framework-section .op-proc-body {
    flex: 1 0 auto;
    padding: 18px 22px;
    -webkit-box-shadow: 2px 4px 0px 0px rgba(0, 184, 223, 0.45);
    -moz-box-shadow: 2px 4px 0px 0px rgba(0, 184, 223, 0.45);
    box-shadow: 2px 4px 0px 0px rgba(0, 184, 223, 0.45);
    min-height: 191px;
}

.op-framework-section .op-proc-body p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #444;
    margin: 0;
}

.op-framework-section .op-proc-list {
    margin: 0;
    padding: 0;
}

.op-framework-section .op-proc-list li {
    position: relative;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
    padding-left: 0px;
    margin-bottom: 12px;
    list-style: none;
}

.op-framework-section .op-proc-list li:last-child {
    margin-bottom: 0;
}

.op-framework-section .op-proc-list li::before {
    content: "";
    position: absolute;
    left: -20px;
    top: 9px;
    width: 8px;
    height: 8px;
    background: #1aa9d8;
}

.op-framework-section .op-proc-callout {
    margin-top: 18px;
}

.op-framework-section .op-proc-callout p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.35;
    font-weight: 700;
    margin: 0;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

.op-emergency-section {
    padding: 25px 0 0;
}

.op-emergency-stack,
.op-awareness-stack {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.op-emergency-copy,
.op-awareness-copy {
    max-width: 1120px;
}

.op-emergency-title,
.op-awareness-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: #a239a5;
    margin: 0 0 8px;
}

.op-emergency-copy p,
.op-awareness-copy p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
    margin: 0;
}

.op-emergency-box {
    border: 1px solid #1aa9d8;
    box-shadow: 0 8px 0 rgba(26, 169, 216, 0.2);
    background: #fff;
}

.op-emergency-box-head {
    position: relative;
    width: fit-content;
    margin: -18px auto 18px;
    padding: 12px 24px;
    background: #edf7fb;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111;
    box-shadow: 0 8px 0 #00b8df;
}

.op-emergency-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    padding: 18px 30px 28px;
}

.op-emergency-item {
    position: relative;
    min-height: 126px;
    display: flex;
    align-items: center;
    padding: 14px 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
}

.op-emergency-item:nth-child(odd) {
    border-right: 1px solid #c8d2da;
}

.op-emergency-item:nth-child(-n + 2) {
    border-bottom: 1px solid #c8d2da;
}

.op-awareness-section {
    padding: 56px 0 0;
}

.op-awareness-subtitle {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111;
    margin: 0 0 8px;
}

/* Awareness section: text on the left, highlighted blue quote on the right */
.op-awareness-grid {
    display: grid;
    grid-template-columns: 1.6fr 1fr;
    gap: 40px;
    align-items: start;
    max-width: 1120px;
}

.op-awareness-quote {
    max-width: 1120px;
}

.op-awareness-quote p {
    position: relative;
    padding-left: 26px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.35;
    font-weight: 700;
    margin: 0;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
}
/* cyan dash marker before the quote */
.op-awareness-quote p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 14px;
    width: 18px;
    height: 4px;
    background: #00a6d6;
}

.op-awareness-media img {
    display: block;
    width: 100%;
    max-width: 100%;
}

.op-capability-section {
    padding: 56px 0 0;
}

.op-capability-wrap {
    border-bottom: 2px solid #1678b8;
    padding-bottom: 20px;
}

.op-capability-title {
    position: relative;
    margin: 0 0 18px;
    padding-left: 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
    color: #1678b8;
}

.op-capability-title span {
    display: block;
    color: #08A9CC;
    font-size: 22px;
}

.op-capability-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.12em;
    width: 4px;
    height: 1.7em;
    background: #1678b8;
}

.op-capability-copy + .op-capability-copy {
    margin-top: 22px;
}

.op-capability-copy h3 {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111;
    margin: 0 0 8px;
}

.op-capability-copy p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
    margin: 0 0 14px;
}

.op-capability-copy p:last-child {
    margin-bottom: 0;
}

.op-capability-list {
    margin: 0 0 18px;
    padding: 0;
}

.op-capability-list li {
    position: relative;
    padding-left: 18px;
    margin-bottom: 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
}

.op-capability-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 7px;
    height: 7px;
    background: #08A9CC;
}

.op-capability-stat {
    margin-top: 18px;
}

.op-capability-stat-value {
    display: flex;
    align-items: baseline;
    gap: 0;
    line-height: 1;
    font-family: 'Noto Sans', sans-serif;
    font-weight: 700;
}

.op-capability-stat-value .count {
    font-size: 28px;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

.op-capability-stat-label {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111;
}

.op-capability-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

.op-capability-image-wrap {
    margin-top: 24px;
}

.op-capability-image {
    width: 100%;
    display: block;
}

.op-community-section {
    padding: 56px 0 0;
}

.op-community-stack,
.op-ai-stack {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.op-community-copy,
.op-ai-stack {
    max-width: 1120px;
}

.op-community-title,
.op-ai-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: #a239a5;
    margin: 0;
}

.op-community-copy p,
.op-ai-stack p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
    margin: 0;
}

.op-community-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.op-community-box {
    background: #edf7fb;
    padding: 26px 28px;
    min-height: 165px;
    box-shadow: 8px 10px 0 rgba(26, 169, 216, 0.18);
}

.op-community-box p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
}

.op-ai-section {
    padding: 42px 0 0;
}

.op-safex-section,
.op-air-section {
    padding: 56px 0 0;
}

.op-safex-wrap,
.op-air-wrap {
    padding-bottom: 20px;
}

.op-safex-title,
.op-air-title {
    position: relative;
    margin: 0 0 18px;
    padding-left: 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.15;
    color: #1678b8;
}

.op-safex-title span,
.op-air-title span {
    display: block;
    color: #08A9CC;
    font-size: 22px;
}

.op-safex-title::before,
.op-air-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.12em;
    width: 4px;
    height: 1.7em;
    background: #1678b8;
}

.op-safex-copy,
.op-air-wrap p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
}

.op-safex-copy h3,
.op-air-wrap h3 {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111;
    margin: 14px 0 8px;
}

.op-safex-list {
    margin: 0;
    padding: 0;
}

.op-safex-list li {
    position: relative;
    padding-left: 18px;
    margin-bottom: 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
}

.op-safex-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 7px;
    height: 7px;
    background: #08A9CC;
}

.op-safex-image-wrap {
    border: 1px solid #c8cfd4;
    padding: 0;
        max-width: 700px;
    margin: auto;
}

.op-safex-image,
.op-air-image {
    width: 100%;
    display: block;
}

.op-air-image-wrap {
    margin-top: 18px;
    border: 1px solid #c8cfd4;
}

.cr-approach-section {
    padding: 56px 0 0;
}

.cr-approach-stack {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.cr-approach-copy {
    /* max-width: 1120px; */
}

.cr-section-title,
.cr-subtitle {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
    margin: 0 0 10px;
}

.cr-section-title {
    color: #a334a8;
}

.cr-section-title--black {
    color: #111111;
}

.cr-subtitle--purple {
    color: #a334a8;
}

.cr-approach-copy p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
    margin: 0 0 16px;
    max-width: 100%;
}

.cr-approach-copy p:last-child {
    margin-bottom: 0;
}

.cr-quote-box {
    /* max-width: 1120px; */
}

/* Full-width blue quote callout (before "Our Approach to Customer Centricity") */
.cr-callout-section {
    padding: 44px 0 0;
}
.cr-callout {
    padding: 44px 48px 48px;
    background: #1478b8;
}
.cr-callout-icon {
    width: 62px;
    margin-bottom: 24px;
}
.cr-callout-icon img {
    width: 100%;
    height: auto;
    display: block;
}
.cr-callout p {
    margin: 0;
    max-width: 900px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 26px;
    line-height: 1.35;
    font-weight: 700;
    color: #ffffff;
}

.cr-gradient-quote,
.cr-approach-copy p.cr-gradient-quote {
    position: relative;
    margin: 0;
    padding-left: 30px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.35;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
/* cyan dash marker before the gradient quote */
.cr-gradient-quote::before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 20px;
    height: 4px;
    background: #00a6d6;
}

.cr-wrap-section {
    padding: 56px 0 0;
}

.cr-split-section {
    padding: 56px 0 0;
}

.cr-wrap-frame,
.cr-split-wrap {
    border-top: 2px solid #1aa9d8;
    border-right: 2px solid #1aa9d8;
    padding: 22px 22px 26px;
    background: #fff;
}

.cr-wrap-title {
    position: relative;
    margin: 0 0 16px;
    padding-left: 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.08;
    font-weight: 700;
    color: #0c79bf;
    text-transform: uppercase;
}

.cr-wrap-title span {
    display: block;
    color: #10acd6;
    font-size: 20px;
}

.cr-wrap-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.12em;
    width: 5px;
    height: 1.7em;
    background: #1486c6;
}

.cr-wrap-frame p,
.cr-split-wrap p {
    margin: 0 0 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.48;
    color: #111111;
}

.cr-split-wrap .row {
    margin-top: 4px;
}

.cr-image-panel {
    border: 1px solid #c8d6df;
    padding: 10px;
    background: #fff;
}

.cr-image-full {
    width: 100%;
    display: block;
}

.cr-airport-section,
.cr-sbd-section,
.cr-signage-section {
    padding: 44px 0 0;
}

.cr-airport-wrap,
.cr-sbd-wrap,
.cr-signage-wrap {
    padding-bottom: 24px;
}

.cr-airport-wrap p,
.cr-sbd-wrap p,
.cr-signage-wrap > p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.cr-how-panel {
    border: 1px solid #3ea4e0;
    padding: 28px 22px 22px;
    position: relative;
    min-height: 100%;
    margin-top: 58px;
}

.cr-how-head {
    position: absolute;
    top: -28px;
    left: 50%;
    transform: translateX(-50%);
    padding: 14px 34px 18px;
    min-width: 200px;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #111111;
    background: #eaf3fb;
}
/* blue 3D bottom face (extruded shadow, down-left) */
.cr-how-head::after {
    content: "";
    position: absolute;
    left: 0;
    right: 10px;
    bottom: -10px;
    height: 14px;
    z-index: -1;
    background: linear-gradient(180deg, #12abd6 0%, #0d76b8 100%);
    clip-path: polygon(14px 0, 100% 0, calc(100% - 10px) 100%, 0 100%);
}
/* bright-blue angled tab on the left */
.cr-how-head::before {
    content: "";
    position: absolute;
    left: -16px;
    top: 0;
    bottom: -10px;
    width: 28px;
    background: linear-gradient(160deg, #17b0dd 0%, #0d76b8 100%);
    clip-path: polygon(16px 0, 100% 0, 100% 100%, 0 100%);
}

.cr-how-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px;
}

.cr-how-cell {
    min-height: 92px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.22;
    color: #111111;
    padding: 12px 10px;
    border-bottom: 1px solid #c7d1d8;
    border-right: 1px solid #c7d1d8;
}

.cr-how-cell:nth-child(2n) {
    border-right: 0;
}

.cr-how-cell:nth-last-child(-n+2) {
    border-bottom: 0;
}

.cr-benefits-title {
    margin: 10px 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
    margin-bottom: 32px;
}

.cr-benefits-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 28px;
    margin-bottom: 24px;
}

.cr-benefit-card {
    position: relative;
    background: #edf7fb;
    padding: 28px 20px 18px;
    min-height: 170px;
    border-bottom: 4px solid #1c8ed0;
}

.cr-benefit-head {
    position: absolute;
    top: -16px;
    left: 18px;
    display: inline-block;
    background: #12abd6;
    color: #fff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.15;
    padding: 8px 14px;
}

.cr-benefit-list {
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
}

.cr-benefit-list li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.cr-benefit-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.cr-signage-image {
    border: 1px solid #d0d8de;
    padding: 12px;
}

.cr-signage-image img {
    width: 100%;
    display: block;
}

.cr-satisfaction-section,
.cr-grievance-section,
.cr-health-section,
.cr-marketing-section {
    padding: 30px 0 0;
}

.cr-satisfaction-stack {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.cr-satisfaction-copy,
.cr-text-stack {
    /* max-width: 1120px; */
}

.cr-satisfaction-copy p,
.cr-text-stack p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.cr-bullet-list {
    margin: 8px 0 0;
    padding: 0;
    list-style: none;
}

.cr-bullet-list li {
    position: relative;
    padding-left: 18px;
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.34;
    color: #111111;
}

.cr-bullet-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.cr-table-copy {
    margin-top: 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.cr-table-wrap {
    margin-top: 2px;
}

.cr-fy-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
}

.cr-fy-table th,
.cr-fy-table td {
    border-bottom: 2px solid #2ca6dc;
    padding: 8px 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.15;
    text-align: center;
    color: #111111;
}

.cr-fy-table thead th {
    font-weight: 700;
    border-top: 1px solid #2ca6dc;
}

.cr-fy-table .cr-row-label {
    text-align: left;
    width: 34%;
}

.cr-fy-table thead th:first-child {
    width: 34%;
}

.cr-table-highlight {
    background: #e5f3fb;
}

thead .cr-table-highlight {
    background: #1aa9d8;
    color: #fff;
}

.cr-gradient-quote--wide,
.cr-gradient-quote--stack {
    /* max-width: 1120px; */
    margin-top: 18px;
    font-size: 22px;
    line-height: 1.32;
}


.cr-text-stack p:last-child {
    margin-bottom: 0;
}

.cr-health-stat-stack {
    display: flex;
    gap: 28px;
    padding-top: 34px;
}

.cr-health-stat .op-stat-value {
    margin-bottom: 4px;
}

.cr-health-stat .op-stat-label {
    position: relative;
    max-width: 320px;
    padding-left: 22px;
}
.cr-health-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 14px;
    height: 4px;
    background: #00a6d6;
}

.cr-marketing-boxes {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 20px;
}

.cr-info-box {
    position: relative;
    background: #edf7fb;
    border-top: 1px solid #2ca6dc;   /* thin line on top */
    padding: 18px 22px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}
/* thick cyan vertical border alternates: odd boxes on the right, even on the left */
.cr-info-box:nth-child(odd) {
    border-right: 4px solid #2ca6dc;
}
.cr-info-box:nth-child(even) {
    border-left: 4px solid #2ca6dc;
}

.cr-philosophy-section {
    padding: 44px 0 0;
}

.cr-philosophy-left,
.cr-philosophy-copy {
    max-width: 100%;
}

.cr-philosophy-copy p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #111111;
}

.cr-sdg-title {
    margin: 18px 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-sdg-grid img {
    display: block;
    max-width: 300px;
}

.cr-tenets-section {
    padding: 48px 0 0;
}

.cr-tenets-title {
    margin: 0 0 24px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
    color: #a334a8;
}

.cr-tenets-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px 36px;
}

.cr-tenet-item {
    position: relative;
    min-height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.cr-tenet-arc {
    position: relative;
    width: 180px;
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 12px solid #12afd2;
    box-sizing: border-box;
    background: radial-gradient(circle at center, rgba(18, 175, 210, 0.08) 0%, rgba(18, 175, 210, 0.02) 62%, rgba(18, 175, 210, 0) 63%);
}

.cr-tenet-arc::before,
.cr-tenet-arc::after {
    content: "";
    display: none;
}

.cr-tenet-item span {
    position: relative;
    z-index: 1;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.3;
    color: #111111;
    max-width: 120px;
}

.cr-foundation-section {
    padding: 48px 0 0;
}

.cr-foundation-copy {
    max-width: 100%;
}

.cr-foundation-copy p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #111111;
}

.cr-foundation-link {
    color: #7d7d7d;
}

.cr-foundation-link span {
    color: #5e65d8;
    font-size: 20px;
    display: inline-block;
    margin-right: 6px;
}

.cr-vision-panel {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
}

.cr-vision-card,
.cr-target-card {
    background: #edf7fb;
    padding: 18px 18px 16px;
    box-shadow: 10px 10px 0 rgba(26, 169, 216, 0.18);
}

.cr-vision-card h3,
.cr-target-card h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.15;
    font-weight: 700;
    color: #1975b8;
}

.cr-target-card h3 {
    font-size: 22px;
    line-height: 1.12;
}

.cr-vision-card p,
.cr-target-card p {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.cr-target-card h4 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-impact-section {
    padding: 48px 0 0;
}

.cr-impact-wrap {
    max-width: 100%;
}

.cr-impact-table-copy h3 {
    margin: 0 0 2px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.15;
    font-weight: 700;
    color: #111111;
}

.cr-impact-table-copy p {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #111111;
}

.cr-impact-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
}

.cr-impact-table td {
    border-top: 1px solid #9e9e9e;
    border-bottom: 1px solid #9e9e9e;
    padding: 7px 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.15;
    color: #111111;
}

.cr-impact-table td:first-child {
    width: 16%;
    font-weight: 700;
}

.cr-impact-table td:nth-child(2) {
    width: 58%;
    padding-right: 18px;
}

.cr-impact-table td:last-child {
    width: 16%;
    text-align: right;
    font-weight: 700;
}

.cr-bar {
    height: 28px;
    background: rgba(26, 169, 216, 0.28);
}

.cr-bar--fy26 {
    width: 72%;
    background: #197ab8;
}

.cr-bar--fy25 {
    width: 58%;
}

.cr-bar--fy24 {
    width: 31%;
}

.cr-bar-num {
    text-align: right;
}

.cr-impact-stat {
    padding-top: 18px;
        padding-left: 50px;
}

.cr-impact-stat .op-stat-value {
    margin-bottom: 8px;
}

.cr-impact-stat .op-stat-value .count,
.cr-impact-stat .op-sms-percent {
    display: inline-block;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.cr-impact-stat .op-stat-value .count {
    font-size: 28px;
}

.cr-impact-stat .op-sms-percent {
    font-size: 28px;
    font-weight: 700;
}

.cr-impact-stat .op-stat-label {
    max-width: 260px;
}

.cr-empower-section {
    padding: 48px 0 0;
}

.cr-empower-block {
    padding: 4px 0 0px;
}

.cr-empower-block--last {
    border-bottom: 0;
}

.cr-empower-block h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.cr-empower-block p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.48;
    color: #111111;
}

.cr-invest-section {
    padding: 48px 0 0;
}


.cr-invest-copy p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.48;
    color: #111111;
}

.cr-invest-table-wrap {
    overflow-x: auto;
}

.cr-invest-table {
    width: 100%;
    min-width: 900px;
    margin: 0;
    border-collapse: collapse;
    font-family: 'Noto Sans', sans-serif;
}

.cr-invest-table th,
.cr-invest-table td {
    border: 1px solid #c8c8c8;
    padding: 9px 10px;
    vertical-align: top;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
}

.cr-invest-table thead th {
    font-size: 18px;
    font-weight: 700;
    color: #111111;
    border-top: 2px solid #a334a8;
    border-bottom: 2px solid #a334a8;
}

.cr-invest-table tbody tr:last-child td {
    border-bottom: 2px solid #a334a8;
}

.cr-invest-table td:first-child {
    width: 14%;
    font-weight: 700;
}

.cr-invest-table td:nth-child(2) {
    width: 54%;
}

.cr-invest-table td:nth-child(3) {
    width: 10%;
    font-weight: 700;
}

.cr-invest-table td:last-child {
    width: 22%;
}

.cr-sdg-cell {
    font-size: 12px;
    line-height: 1.2;
    color: #7d7d7d;
    word-spacing: 4px;
}

.cr-subhead {
    margin: 12px 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-bullet-list {
    margin: 10px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}

.cr-bullet-list li {
    margin-bottom: 8px;
}

.cr-flow-section {
    padding: 48px 0 0;
}

.cr-flow-top,
.cr-flow-bottom {
    display: flex;
    align-items: stretch;
    gap: 18px;
}

.cr-flow-top {
    margin-top: 10px;
}

.cr-flow-bottom {
    margin-top: 40px;
}

.cr-flow-card {
    flex: 1 1 0;
    border: 1px solid #14b9e3;
    background: #ffffff;
    padding: 18px 20px 16px;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.14);
}

.cr-flow-card--small {
    min-height: 330px;
}

.cr-flow-card h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.18;
    font-weight: 700;
    color: #111111;
}

.cr-flow-list {
    margin: 0;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}

.cr-flow-list li {
    margin-bottom: 8px;
}

.cr-flow-list li::marker,
.cr-bullet-list li::marker {
    color: #14b9e3;
}

.cr-flow-arrow,
.cr-flow-drop {
    flex: 0 0 26px;
    position: relative;
}

.cr-flow-arrow::before,
.cr-flow-drop::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-style: solid;
}

.cr-flow-arrow--right::before {
    border-width: 10px 0 10px 14px;
    border-color: transparent transparent transparent #197ab8;
}

.cr-flow-arrow--left::before {
    border-width: 10px 14px 10px 0;
    border-color: transparent #197ab8 transparent transparent;
}

.cr-flow-drop {
    width: 100%;
    height: 22px;
    flex: 0 0 auto;
}

.cr-flow-drop::before {
    border-width: 14px 10px 0 10px;
    border-color: #197ab8 transparent transparent transparent;
    top: 3px;
}

@media (max-width: 991.98px) {
    .cr-flow-top,
    .cr-flow-bottom {
        flex-direction: column;
    }

    .cr-flow-card {
        flex: 0 0 auto;
        width: 100%;
    }

    .cr-flow-arrow,
    .cr-flow-drop {
        width: 100%;
        height: 18px;
        flex: 0 0 auto;
    }

    .cr-flow-arrow--right::before,
.cr-flow-arrow--left::before,
.cr-flow-drop::before {
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%) rotate(90deg);
    }

    .cr-flow-card--small {
        min-height: 0;
    }
}

.cr-major-section {
    padding: 48px 0 0;
}

.cr-major-section .cr-section-title {
    color: #197ab8;
}

.cr-major-panel {
    position: relative;
    padding-top: 6px;
}

.cr-major-image {
    min-height: 662px;
    background: linear-gradient(180deg, #a9d7f5 0%, #4ea1da 18%, #efe2bc 19%, #d9c59e 42%, #8a6b3a 61%, #4e7ec4 100%);
    border: 1px solid #d7dfe6;
    overflow: hidden;
    position: relative;
}

.cr-major-image::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 58% 16%, rgba(255, 255, 255, 0.75) 0 8%, transparent 9%),
        radial-gradient(circle at 72% 22%, rgba(255, 255, 255, 0.72) 0 6%, transparent 7%),
        radial-gradient(circle at 83% 12%, rgba(255, 255, 255, 0.62) 0 10%, transparent 11%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0) 35%);
}

.cr-major-image::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 28%;
    background: linear-gradient(180deg, rgba(23, 54, 89, 0) 0%, rgba(23, 54, 89, 0.24) 100%);
}

.cr-major-image-placeholder {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.cr-major-card {
    position: absolute;
    right: 0;
    bottom: 0px;
    width: 31%;
    min-width: 400px;
    background: #d9eaf6;
    padding: 18px 18px 16px;
    box-shadow: 0 0 0 0 transparent;
}

.cr-major-tag {
    display: inline-block;
    margin: -36px 0 12px auto;
    padding: 7px 18px 6px;
    background: #197ab8;
    color: #ffffff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
}

.cr-major-card p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.42;
    color: #5d6b76;
    font-weight: 700;
}

.cr-major-card p + p {
    color: #111111;
    font-weight: 400;
}

.cr-major-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.cr-major-list li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.42;
    color: #111111;
}

.cr-major-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.63em;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #197ab8;
}

.cr-school-section {
    padding: 48px 0 0;
}

.cr-edu-section {
    padding: 0;
}

.cr-edu-block {
    padding: 0 0 22px;
}

.cr-edu-banner {
    margin: 0 0 22px;
    border: 1px solid #d7dfe6;
    overflow: hidden;
    line-height: 0;
}

.cr-edu-banner img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

.cr-edu-row {
    height: 100%;
}

.cr-edu-row > [class*="col-"] {
    display: flex;
    flex-direction: column;
}

.cr-edu-row .cr-udaan-image {
    height: 100%;
    width: 100%;
    min-height: 0;
    align-self: stretch;
}

.cr-edu-row .cr-udaan-image img {
    object-position: top;
}

.cr-edu-block + .cr-edu-block {
    padding-top: 0;
}

.cr-edu-block--last {
    padding-bottom: 0;
}

.cr-edu-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: #a334a8;
}

.cr-edu-block p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.46;
    color: #111111;
}

.cr-edu-subtitle {
    margin: 18px 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-edu-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.cr-edu-stat-grid--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.cr-edu-stat {
    max-width: 250px;
}

.cr-edu-stat-grid--two .cr-edu-stat {
    max-width: none;
}

.cr-edu-stat .op-stat-value {
    margin-bottom: 4px;
    line-height: 1;
}

.cr-edu-stat .op-stat-label {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #111111;
    position: relative;
    padding-left: 18px;
}

.cr-edu-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}



.cr-school-block + .cr-school-block {
    padding-top: 20px;
}

.cr-school-copy p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.46;
    color: #111111;
}

.cr-school-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.18;
    font-weight: 700;
    color: #a334a8;
}

.cr-school-stats h3,
.cr-school-subtitle,
.cr-school-recognitions h4 {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-school-stats h3 {
    font-size: 18px;
}

.cr-school-subtitle {
    margin-top: 18px;
    font-size: 20px;
}

.cr-school-recognitions h4 {
    font-size: 20px;
}

.cr-school-highlights {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
}

.cr-school-stat .op-stat-value {
    margin-bottom: 4px;
    line-height: 1;
}

.cr-school-stat .op-stat-value .count {
    display: inline-block;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 28px;
}

.cr-school-stat .op-stat-label {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #111111;
    max-width: 170px;
    position: relative;
    padding-left: 18px;
}

.cr-school-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

.cr-school-donut-row {
    display: grid;
    grid-template-columns: 170px 220px 180px;
    gap: 24px;
    align-items: center;
    margin-top: 8px;
}

.cr-school-donut {
    text-align: center;
}

.cr-donut {
    width: 150px;
    height: 150px;
    margin: 0 auto 10px;
    border-radius: 50%;
    position: relative;
}

.cr-donut::after {
    content: "";
    position: absolute;
    inset: 34px;
    border-radius: 50%;
    background: #ffffff;
}

.cr-donut--boys-girls {
    background: conic-gradient(#1a79b7 0 50%, #11b4d8 50% 100%);
}

.cr-donut--boys-girls-alt {
    background: conic-gradient(#1a79b7 0 51%, #11b4d8 51% 100%);
}

.cr-donut--caste {
    background: conic-gradient(#1a79b7 0 10%, #11b4d8 10% 35%, #9fcfe6 35% 75%, #26b4df 75% 100%);
}

.cr-donut--caste-alt {
    background: conic-gradient(#1a79b7 0 17%, #11b4d8 17% 26%, #9fcfe6 26% 59%, #26b4df 59% 100%);
}

.cr-donut-caption {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    color: #111111;
}

.cr-donut-caption span {
    width: 10px;
    height: 10px;
    display: inline-block;
    background: currentColor;
}

.cr-school-total {
    background: #e8f4fb;
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 28px;
    font-weight: 700;
    color: #197ab8;
}

.cr-school-total span {
    font-size: 16px;
    font-weight: 400;
    color: #111111;
}

.cr-school-recognitions {
    margin-top: 16px;
}

.cr-school-recognitions .cr-bullet-list {
    margin-top: 6px;
        padding-bottom: 20px;
}

.cr-udaan-section {
    padding: 48px 0 0;
}

.cr-udaan-image {
    min-height: 360px;
    margin-top: 0;
   
    position: relative;
    overflow: hidden;
}

.cr-udaan-image::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.36), rgba(255,255,255,0) 34%),
        radial-gradient(circle at 18% 30%, rgba(255,255,255,0.6) 0 6%, transparent 7%),
        radial-gradient(circle at 68% 24%, rgba(255,255,255,0.45) 0 5%, transparent 6%);
}

.cr-udaan-image img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cr-udaan-text {
    max-width: 100%;
}

.cr-edu-title--udaan {
    margin-bottom: 20px;
    font-size: 24px;
    color: #a334a8;
}

.cr-udaan-text .cr-edu-subtitle {
    color: #111111;
}

.cr-udaan-text p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.48;
    color: #111111;
}

@media (max-width: 991.98px) {
    .cr-udaan-image {
        min-height: 0;
    }

    .cr-udaan-text {
        max-width: none;
    }
}

@media (max-width: 991.98px) {
    .cr-major-panel {
        min-height: 0;
    }

    .cr-major-image {
        min-height: 420px;
    }

    .cr-major-card {
        position: static;
        width: 100%;
        min-width: 0;
        margin-top: -12px;
    }

    .cr-major-tag {
        margin: -34px 0 12px 0;
    }
}

.op-strategy-section {
    margin-top: 60px;
    padding-bottom: 8px;
}

.op-strategy-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
    color: #8e278f;
    margin: 0 0 10px;
}

.op-strategy-intro {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.55;
    color: #111111;
    margin: 0 0 18px;
    /* max-width: 980px; */
}

.op-pillars-band {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
    margin: 10px 0 18px;
}

.op-pillars-band span {
    display: block;
    height: 2px;
    background: #1aa9d8;
}

.op-pillars-band-label {
    padding: 10px 34px;
    background: #0d7fc0;
    color: #fff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
    box-shadow: 0 2px 0 rgba(0, 0, 0, 0.04);
}

.op-pillars-layout {
    display: grid;
    grid-template-columns: 1fr 96px 1fr;
    gap: 24px;
    align-items: start;
}

.op-pillars-col {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.op-pillars-spine {
    position: relative;
    min-height: 560px;
    display: flex;
    align-items: stretch;
    justify-content: center;
}

.op-spine-line {
    width: 48px;
    border-left: 2px solid #1aa9d8;
    border-right: 2px solid #1aa9d8;
    background: #fff;
    margin: 28px 0;
}

.op-spine-cap {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 76px;
    height: 12px;
    border: 1px solid #1aa9d8;
    background: #fff;
}

.op-spine-cap--top { top: 8px; }
.op-spine-cap--bottom { bottom: 8px; }

.op-pillar {
    position: relative;
}

.op-pillar-head {
    display: inline-block;
    max-width: 100%;
    padding: 9px 14px 8px;
    background: #e4f3fb;
    color: #1678b8;
    font-family: 'Noto Sans', sans-serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.25;
    box-shadow: 0 8px 10px rgba(26, 169, 216, 0.18);
}

.op-pillar-body {
    margin-top: 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
    max-width: 94%;
}

.op-leadership-section {
    position: relative;
    padding: 44px 0 56px;
    overflow: hidden;
    margin-bottom: 60px;
}

/* Full-width office backdrop behind the framework panel (matches reference) */
.op-leadership-section::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    background: url("../images/our-people/our-people-img1.png") center center / cover no-repeat;
    z-index: 0;
}

.op-leadership-section .container {
    position: relative;
    z-index: 1;
}

.op-leadership-title {
    font-size: 20px;
    margin-bottom: 8px;
}

.op-leadership-intro {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.55;
    color: #111111;
    margin: 0;
    padding-bottom: 30px;
}

.op-leadership-panel {
    position: relative;
    margin-top: 28px;
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
    padding: 48px 22px 22px;
    border: 2px solid #1aa9d8;
    background: rgba(238, 246, 251, 0.94);
    box-shadow: 0 2px 0 rgba(26, 169, 216, 0.08);
}

.op-leadership-panel-label {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 10px 28px;
    background: #167fc0;
    color: #fff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    box-shadow: 0 3px 0 rgba(26, 169, 216, 0.35);
}

.op-leadership-rows {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.op-leadership-row {
    display: grid;
    grid-template-columns: 168px minmax(0, 1fr);
    gap: 16px;
    align-items: stretch;
    padding-bottom: 12px;
   
}

.op-leadership-row:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

.op-leadership-card {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px 16px;
    background: #ffffff;
    color: #111111;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: 0 4px 10px rgba(26, 169, 216, 0.2);
}

.op-leadership-list {
    margin: 0;
    padding: 0;
    list-style: none;
     border-bottom: 2px solid #1aa9d8;
        border-right: 2px solid #1aa9d8;
        padding-bottom: 15px;
}

.op-leadership-list li {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
    margin-bottom: 6px;
}

.op-leadership-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.64em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-future-ready-section {
    margin-top: 56px;
    padding: 10px 0 18px;
}

.op-future-subsection + .op-org-section,
.op-org-section + .op-hrg-section,
.op-hrg-section + .op-plan-section {
    margin-top: 34px;
}

.op-future-title,
.op-org-title,
.op-hrg-title,
.op-plan-title {
    font-size: 20px;
    margin-bottom: 10px;
}

.op-future-subtitle,
.op-org-subtitle {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.22;
    color: #111111;
    margin: 0 0 8px;
}

.op-future-lead,
.op-org-lead,
.op-org-body,
.op-plan-body {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #111111;
    margin: 0;
    padding-bottom: 30px;
}

.op-future-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px;
    margin-top: 26px;
}

.op-future-card {
    position: relative;
    padding: 58px 20px 20px;
    border-right: 3px solid #1186c7;
    border-bottom: 6px solid #1186c7;
    background: #fff;
    min-height: 300px;
}

.op-future-card-label {
    position: absolute;
    top: -18px;
    left: 18px;
    padding: 10px 18px;
    background: #eaf5fb;
    color: #1678b8;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: 6px 6px 0 rgba(26, 169, 216, 0.28);
}

.op-future-card p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.55;
    color: #111111;
    margin: 0;
}

.op-future-note {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    margin-top: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #4f6271;
    text-decoration: none;
    transition: color 0.2s ease;
}

a.op-future-note:hover {
    color: #8e278f;
}

a.op-future-note:hover span {
    background: #8e278f;
    border-color: #8e278f;
    color: #fff;
}

.op-future-note span {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid #8e278f;
    color: #8e278f;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    margin-top: 2px;
    font-size: 16px;
    line-height: 1;
}

.op-org-section {
    margin-top: 34px;
}

.op-hrg-section {
    margin-top: 38px;
}

.op-hrg-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 350px;
    gap: 26px;
    align-items: stretch;
    margin-top: 24px;
}

.op-hrg-item {
    position: relative;
    padding-right: 18px;
    padding-bottom: 15px;
    border-right: 1px solid #c8d1d8;
        border-bottom: 1px solid #c8d1d8;
}

/* Flow arrows between the HR Governance boxes (Framework > Execution > Outcomes) */
.op-hrg-item::after {
    content: "";
    position: absolute;
    top: 34px;
    right: -20px;
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-left: 12px solid #1aa9d8;
    z-index: 2;
}

.op-hrg-card {
    display: inline-block;
    padding: 14px 18px;
    margin: 0 0 16px;
    background: #eaf5fb;
    color: #111111;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    box-shadow: 5px 6px 0 rgba(26, 169, 216, 0.26);
}

.op-hrg-item p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #111111;
    margin: 0;
}

.op-hrg-outcomes {
     padding-right: 18px;
    padding-bottom: 15px;
    border-right: 1px solid #c8d1d8;
        border-bottom: 1px solid #c8d1d8;
}

.op-hrg-outcomes-label {
    margin-bottom: 18px;
    padding: 18px 16px;
    background: linear-gradient(90deg, #09afd8 0%, #0baad3 100%);
    color: #fff;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: 0 5px 0 rgba(18, 118, 182, 0.18);
}

.op-hrg-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.op-hrg-list li {
    position: relative;
    padding-left: 18px;
    margin-bottom: 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}

.op-hrg-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-plan-section {
    margin-top: 34px;
}

.op-plan-body {
    margin-bottom: 22px;
}

.op-plan-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 24px;
}

.op-plan-card {
    position: relative;
    padding: 56px 20px 22px;
    border: 2px solid #1aa9d8;
    border-left: none;
    background: #fff;
    min-height: 280px;
    margin-bottom: 20px;
}

.op-plan-card-label {
    position: absolute;
    top: -18px;
    left: 0px;
    padding: 10px 18px;
    background: #eaf5fb;
    color: #1678b8;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.26);
}

.op-plan-card p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.55;
    color: #111111;
}

.op-plan-card--tall {
    min-height: 315px;
}

.op-plan-subblock + .op-plan-subblock {
    margin-top: 18px;
}

.op-plan-subblock h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 700;
    color: #111111;
}

.op-plan-subblock p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.55;
    color: #111111;
}

.op-hiring-photo-section {
    margin-top: 48px;
    padding: 0 0 20px;
}

.op-hiring-photo-copy {
    height: 100%;
    padding: 24px 18px 24px 0;
}

.op-hiring-photo-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin: 0 0 18px;
}

.op-hiring-photo-text {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin: 0 0 18px;
}

.op-hiring-photo-subtitle {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #000;
   
    margin: 0 0 16px;
}

.op-hiring-highlights {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px 34px;
}

.op-hiring-highlight {
    min-width: 0;
}

.op-hiring-highlight-num {
    font-family: 'Noto Sans', sans-serif;
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin: 0 0 8px;
}

.op-hiring-highlight-num span {
    font-size: 22px;
    font-weight: 700;
}

.op-hiring-highlight-num .count {
    display: inline-block;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 28px;
}

.op-hiring-highlight p {
    position: relative;
    margin: 0;
    padding-left: 34px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
}

.op-hiring-highlight p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.6em;
    width: 26px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

.op-hiring-highlight--wide {
    grid-column: span 2;
}

.op-hiring-photo-image {
    height: 100%;
    min-height: 360px;
    background: #fff;
    overflow: hidden;
}

.op-hiring-photo-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.op-cadre-section {
    margin-top: 54px;
    padding: 22px 16px 18px;
    background: #fff;
}

.op-cadre-title {
    position: relative;
    margin: 0 0 18px;
    padding-left: 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.05;
    color: #2a79c5;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.op-cadre-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.12em;
    width: 4px;
    height: 1.7em;
    background: #1aa9d8;
}

.op-cadre-intro {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #111111;
    margin: 0 0 12px;
    max-width: 1040px;
}

.op-cadre-box {
    margin-top: 22px;
    padding: 30px 28px 26px;
    background: #edf7fb;
}

.op-cadre-box-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.25;
    color: #111111;
    margin: 0 0 20px;
}

.op-cadre-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px 36px;
}

.op-cadre-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.op-cadre-list li {
    position: relative;
    padding-left: 18px;
    margin-bottom: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.op-cadre-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.58em;
    width: 7px;
    height: 7px;
    background: #16a3d6;
}

.op-cadre-list strong {
    font-weight: 700;
}

.op-hci-section {
    margin-top: 48px;
}

.op-hci-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    gap: 34px;
    align-items: start;
}

.op-hci-title,
.op-hci-chart-title,
.op-local-impact-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.25;
    color: #111111;
    margin: 0;
}

.op-hci-stats {
    margin-top: 22px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px 28px;
}

.op-hci-stat-num {
    font-family: 'Noto Sans', sans-serif;
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin: 0 0 8px;
}

.op-hci-stat-num .count {
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.op-hci-stat p {
    position: relative;
    margin: 0;
    padding-left: 34px;
    color: #111111;
}

.op-hci-stat p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.6em;
    width: 26px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}
/* performance-highlights start */
.phl-stats-section {
    padding: 50px 0;
    margin: 40px 0;
    background: #a12b8f;
}
.phl-stats-row {
    row-gap: 36px;
}
.phl-stat-card {
    padding: 0 0 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.35);
}
.phl-stat-card h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1.15;
    font-weight: 600;
    color: #fff;
}
.phl-stat-card .rs {
    font-size: 24px;
    font-weight: 400;
}
.phl-stat-card .phl-stat-unit {
    font-size: 24px;
    font-weight: 600;
}
.phl-stat-card p {
    position: relative;
    margin: 0;
    padding-left: 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #fff;
}
.phl-stat-card p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 8px;
    height: 3px;
    background: #00aeef;
}
.phl-rating-section {
    padding: 0 0 30px;
}
.phl-rating-heading {
    display: inline-block;
    margin-bottom: 14px;
    padding: 8px 14px;
    background: #176faa;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #ffffff;
}
.phl-rating-card {
    padding: 0 24px 0 0;
}
.phl-rating-card--long {
    border-right: 1px solid #cfcfcf;
    padding-right: 28px;
}
.phl-rating-card--short {
    padding-left: 28px;
}
.phl-rating-card h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 600;
    color: #0f9fe6;
    /* -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent; */
}
.phl-rating-value {
    margin: 0 0 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #bdbdbd;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1.15;
    font-weight: 600;
    background: linear-gradient(90deg, #0f9fe6 0%, #215fbf 5%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.phl-rating-agencies {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 600;
    color: #6d6d6d;
}
.phl-rating-agencies span {
    display: inline-block;
    margin: 0 12px;
    color: #8d8d8d;
}
.phl-esg-section {
    padding: 0 0 70px;
}
.phl-esg-block {
    min-height: 172px;
    padding: 0 28px 10px 0;
    border-bottom: 1px solid #bdbdbd;
}
.phl-esg-value {
    margin: 0 0 2px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1.15;
    font-weight: 600;
    background: linear-gradient(90deg, #0f9fe6 0%, #215fbf 5%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.phl-esg-subvalue {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 24px;
    line-height: 1.25;
    font-weight: 600;
    background: linear-gradient(90deg, #0f9fe6 0%, #215fbf 5%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.phl-esg-source {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 400;
    color: #6d6d6d;
}
/* performance-highlights end */
/* investment-case start */
/* Intro blue patch (Investment Case) */
section.syn-intro--blue-patch {
    padding: 40px 0 10px;
    background: #fff;
}
.syn-intro-patch {
    padding: 40px 44px;
    background: #00aeef;
}
.syn-intro-patch .syn-intro-copy {
    color: #fff;
    font-weight: 700;
}

/* Straight (single-column) layout for prose in Investment Case blocks.
   Forces the top-level para column and its Value Created column to full width
   and stack, while leaving the inner number grids (ic-growth-stats,
   ic-capacity-row, ic-discipline-charts) and the discipline table untouched. */
.ic-growth-block > .row > .col-lg-6,
.ic-tomorrow-block > .row > .col-lg-6,
.ic-discipline-top > .col-lg-6 {
    flex: 0 0 100%;
    max-width: 100%;
}
.ic-growth-block > .row > .col-lg-6 + .col-lg-6,
.ic-tomorrow-block > .row > .col-lg-6 + .col-lg-6,
.ic-discipline-top > .col-lg-6 + .col-lg-6 {
    margin-top: 24px;
}
.ic-discipline-top > .col-lg-6 .wow,
.ic-growth-block > .row > .col-lg-6 .ic-growth-copy {
    padding-right: 0;
}
.ic-growth-block > .row > .col-lg-6 .ic-growth-values,
.ic-tomorrow-block > .row > .col-lg-6 .ic-growth-values {
    padding-left: 0;
}

/* Investment overview (PDF page 45) */
.ic-overview-section {
    padding: 40px 0 10px;
}
.ic-overview-col p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444;
}
.ic-overview-col p + p {
    margin-top: 14px;
}
.ic-overview-title {
    margin: 24px 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.ic-overview-col > .ic-overview-title:first-child {
    margin-top: 0;
}
.ic-overview-callout {
    margin-top: 36px;
    padding: 34px 40px;
    background: #ffffff;
    border-top: 1px solid #41c3f0;
    border-left: 1px solid #41c3f0;
    border-right: 5px solid #41c3f0;
    border-bottom: 5px solid #41c3f0;
}
.ic-overview-callout p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 600;
    color: #00aeef;
}

.ic-model-section {
    padding: 30px 0 40px;
}

.ic-model-head {
    display: flex;
    align-items: center;
    border-top: 1px solid #41c3f0;
    border-right: 5px solid #41c3f0;
    border-left: 1px solid #41c3f0;
    border-bottom: 5px solid #41c3f0;
    background: #ffffff;
}
.ic-model-tag {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 14px 14px;
    background: #126dad;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 600;
    color: #ffffff;
}
.ic-model-head h2 {
    margin: 0;
    padding: 0 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
    color: #126dad;
}
.ic-model-body {
    margin-top: 20px;
    padding: 0 30px 12px;
    border-right: 5px solid #bcc2c6;
    border-bottom: 5px solid #bcc2c6;
    background: #ffffff;
}
.ic-model-body > p,
.ic-model-copy > p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #444;
}
.ic-model-figure {
    margin-top: 18px;
}
.ic-model-figure img {
    width: 100%;
    display: block;
}
.ic-model-content-row {
    margin-top: 22px;
    row-gap: 24px;
}
.ic-model-copy ul {
    list-style: none;
    margin: 14px 0 0;
    padding: 0;
}
.ic-model-copy li {
    position: relative;
    padding-left: 16px;
    margin-bottom: 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #444;
}
.ic-model-copy li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 6px;
    height: 6px;
    background: #00aeef;
}
.ic-model-copy--right {
    padding-left: 14px;
}
.ic-model-value-box {
    margin-top: 18px;
}
.ic-model-value-box h3 {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 600;
    color: #444;
}
.ic-model-metric + .ic-model-metric {
    margin-top: 18px;
}
.ic-model-metric-value {
    display: inline-block;
    margin-bottom: 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1.1;
    font-weight: 600;
    background: linear-gradient(90deg, #0f9fe6 0%, #215fbf 10%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.ic-model-metric-value small {
    font-size: 0.78em;
}
.ic-model-metric p {
    position: relative;
    margin: 0;
    padding-left: 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
}
.ic-model-metric p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 8px;
    height: 3px;
    background: #00aeef;
}
.ic-growth-section {
    padding: 0 0 40px;
}
.ic-growth-body {
    padding-top: 14px;
}
.ic-growth-block {
    margin-top: 22px;
}
.ic-growth-copy h3,
.ic-growth-values h4 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.ic-growth-values h4 {
    color: #444;
    font-size: 24px;
}
.ic-growth-copy p,
.ic-growth-body > p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #444;
}
.ic-growth-copy p + p {
    margin-top: 14px;
}
.ic-growth-values {
    padding-left: 18px;
}
.ic-growth-stats {
    row-gap: 18px;
}
.ic-growth-stat-value {
    display: inline-block;
    margin-bottom: 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1.1;
    font-weight: 600;
    background: linear-gradient(90deg, #0f9fe6 0%, #215fbf 10%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.ic-growth-stat-value small {
    font-size: 24px;
}
.ic-growth-stat p {
    position: relative;
    margin: 0;
    padding-left: 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
}
.ic-growth-stat p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 8px;
    height: 3px;
    background: #00aeef;
}
.ic-growth-divider {
    margin: 26px 0 20px;
    border-top: 1px solid #444;
}
.ic-tomorrow-section {
    padding: 0 0 40px;
}
.ic-tomorrow-body {
    padding-top: 14px;
}
.ic-tomorrow-block {
    margin-top: 22px;
}
.ic-capacity-box {
    margin-top: 24px;
    padding: 14px 16px 12px;
    border: 1px solid #c9c9c9;
    background: #ffffff;
    border-bottom: 5px solid #c9c9c9;
}
.ic-capacity-box h5 {
    margin: 0 0 14px;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 600;
    color: #444;
}
.ic-capacity-row {
    align-items: stretch;
}
.ic-capacity-item {
    text-align: center;
    padding: 0 14px;
}
.ic-capacity-row .col-md-4:nth-child(1) .ic-capacity-item,
.ic-capacity-row .col-md-4:nth-child(2) .ic-capacity-item {
    border-right: 1px solid #c9c9c9;
}
.ic-capacity-value {
    display: inline-block;
    margin-bottom: 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 24px;
    line-height: 1.1;
    font-weight: 600;
    background: linear-gradient(90deg, #0f9fe6 0%, #215fbf 10%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.ic-capacity-value small {
    font-size: 18px;
}
.ic-capacity-item p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #444;
}
.ic-discipline-section {
    padding: 0 0 70px;
}
.ic-discipline-body {
    padding-top: 14px;
}
.ic-discipline-top {
    row-gap: 18px;
}
.ic-discipline-top p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #444;
}
.ic-discipline-table {
    margin-top: 20px;
    overflow-x: auto;
}
.ic-discipline-table table {
    width: 100%;
    min-width: 980px;
    border-collapse: separate;
    border-spacing: 0;
}
.ic-discipline-col--share {
    width: 28%;
}
.ic-discipline-col--accounted {
    width: 48%;
}
.ic-discipline-col--unlock {
    width: 24%;
}
.ic-discipline-table thead th {
    background: #d8edf8;
    padding: 14px 10px 12px;
    vertical-align: middle;
}
.ic-discipline-table thead h3 {
    margin: 0 0 6px;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 600;
    color: #444;
}
.ic-discipline-table thead h3 span{
    display: block;
}
.ic-discipline-table thead p {
    margin: 0;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
    background: #8a2da6 ;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.ic-discipline-table tbody td {
    padding: 8px 10px 10px;
    vertical-align: top;
}
.ic-discipline-share {
    min-height: 88px;
    padding: 16px 14px;
    text-align: center;
    background: #eef6f7;
    box-shadow: 4px 5px 0 rgba(25, 192, 244, 0.15);
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.ic-discipline-share span {
    display: inline-block;
    margin-bottom: 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 24px;
    line-height: 1.1;
    font-weight: 700;
    background: linear-gradient(90deg, #0f9fe6 0%, #215fbf 10%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.ic-discipline-share p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #444;
}
.ic-discipline-item ul {
    display: none;
}
.ic-discipline-table tbody ul {
    list-style: none;
    margin: 0;
    min-height: 125px;
    padding: 0 18px 0 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-bottom: 4px solid #c7c7c7;
}
.ic-discipline-table tbody li {
    position: relative;
    margin-bottom: 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
}
.ic-discipline-table tbody li:last-child {
    margin-bottom: 0;
}
.ic-discipline-table tbody li::before {
    content: "";
    position: absolute;
    left: -14px;
    top: 8px;
    width: 6px;
    height: 6px;
    background: #00aeef;
}
.ic-discipline-unlock {
    min-height: 125px;
    position: relative;
    padding: 0 0 0 26px;
    border-right: 1px solid #c7c7c7;
    border-bottom: 4px solid #c7c7c7;
    display: flex;
    align-items: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 600;
    color: #444;
}
.ic-discipline-table tbody tr:last-child ul,
.ic-discipline-table tbody tr:last-child .ic-discipline-unlock {
    border-bottom-width: 4px;
}
.ic-discipline-unlock::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 4px;
    width: 1px;
    background:
        linear-gradient(
            to bottom,
            #444 0,
            #444 calc(50% - 12px),
            transparent calc(50% - 12px),
            transparent calc(50% + 12px),
            #444 calc(50% + 12px),
            #444 100%
        );
}
.ic-discipline-unlock::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 10px solid #11b7ee;
}
.ic-discipline-charts {
    margin-top: 20px;
    row-gap: 22px;
}
.ic-chart-box h4 {
    margin: 0 0 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid #444;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 600;
    color: #444;
}
.ic-chart-box img {
    width: 100%;
    display: block;
}
/* investment-case end */
/* our-approach-to-esg start */
.oae-content-section {
    padding: 30px 0 40px;
}
.oae-mini-card h2 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.oae-mini-card p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #444;
    padding-bottom: 18px;
}
.oae-message-card {
    margin-top: 30px;
    padding: 10px 20px 20px 10px;
    box-shadow: 10px 10px 14px rgba(162, 43, 143, 0.28);
}
.oae-message-intro {
    display: flex;
    align-items: flex-start;
    gap: 18px;
}
.oae-quote-mark {
    flex: 0 0 42px;
    width: 42px;
    height: auto;
    margin-top: 2px;
}
.oae-quote-mark img {
    width: 100%;
    height: auto;
    display: block;
}
.oae-message-intro p {
    flex: 1;
}
.oae-message-follow {
    /* padding-left: 60px; */
}
.oae-message-copy p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #6d665f;
}
.oae-message-copy--right {
    padding-left: 8px;
}
.oae-signoff {
    margin-top: 18px;
    position: relative;
}
.oae-signoff span {
    display: inline-block;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #444;
}
.oae-signoff::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(180deg, #a12b8f 0%, #1d9de7 100%);
}
.oae-signoff p {
    margin: 4px 0 0 16px;
    font-size: 16px;
    line-height: 1.3;
    color: #444;
}
.oae-governance-section {
    padding: 0 0 40px;
}
.oae-governance-wrap {
    padding: 30px;
    background: #eaf5ee;
}
.oae-governance-wrap h2 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.oae-governance-wrap > p {
    margin: 0 0 14px;
    max-width: 1030px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #222222;
}
.oae-gov-board,.oae-gov-middle{
    margin-top: 30px;
}
.oae-gov-board h3,
.oae-gov-middle h3,
.oae-gov-branch > h3 {
    position: relative;
    margin: 0 auto;
    margin-bottom: 20px;
    width: fit-content;
    padding: 8px 20px 9px;
    background: #00a85a;
    box-shadow: 5px 5px 0 #0b7e84;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
    color: #ffffff;
    text-transform: uppercase;
}
.oae-gov-panel {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 14px 12px 12px;
    border-right: 1px solid #aebdb3;
    border-bottom: 5px solid #aebdb3;
}
.oae-gov-panel p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #222222;
}
.oae-gov-panel p:last-child {
    margin-bottom: 0;
}
.oae-gov-panel--board {
    margin-bottom: 18px;
}
.oae-gov-row {
    position: relative;
    display: flex;
    flex-wrap: wrap;
}
.oae-gov-row > div {
    display: flex;
    align-items: stretch;
    padding-left: 18px;
    padding-right: 18px;
}
.oae-gov-branch {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}
.oae-gov-note a {
    position: relative;
    padding-left: 16px;
    color: #6e7e8b !important;
}
.oae-gov-note a::before {
    content: "+";
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 700;
    color: #8ea1af;
}
.oae-gov-middle-copy {
    position: relative;
    margin-top: 12px;
    padding: 0 4px 12px;
}
.oae-gov-middle-copy p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #222222;
}
.oae-gov-middle-copy p:last-child {
    margin-bottom: 0;
}
.oae-gov-row--bottom {
    margin-top: 18px;
    align-items: stretch;
}
.oae-gov-row--bottom > div,
.oae-gov-row--bottom .oae-gov-branch,
.oae-gov-row--bottom .oae-gov-panel {
    height: 100%;
}
.oae-gov-row--bottom > div {
    display: flex;
}
.oae-gov-row--bottom .oae-gov-branch {
    justify-content: flex-start;
}
.oae-gov-row--bottom .oae-gov-panel {
    min-height: 200px;
}
.oae-performance-section {
    padding: 0 0 70px;
}
.oae-performance-wrap h2 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.oae-performance-wrap > p {
    margin: 0 0 24px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.42;
    color: #444;
}
.oae-performance-block {
    margin-top: 34px;
}
.oae-performance-top {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}
.oae-performance-label {
    min-width: 182px;
    width: fit-content;
    padding: 10px 20px 11px;
    background: #e6f7f1;
    box-shadow: 6px 6px 10px rgba(48, 221, 179, 0.24);
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #006d78;
}
.oae-performance-label--social {
    min-width: 146px;
    background: #e4f1fb;
    box-shadow: 6px 6px 10px rgba(52, 182, 236, 0.22);
    color: #1875b3;
}
.oae-performance-label--governance {
    min-width: 182px;
    background: #fff0e4;
    box-shadow: 6px 6px 10px rgba(255, 145, 63, 0.24);
    color: #cc641d;
}
.oae-performance-sdgs {
    display: flex;
    align-items: center;
    gap: 4px;
}
.oae-performance-sdgs span {
    margin-right: 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #444;
}
.oae-performance-sdgs img {
    /* width: 48px; */
    height: 48px;
    display: block;
}
.oae-performance-table {
    border-top: 2px solid #12b6aa;
    border-bottom: 2px solid #12b6aa;
}
.oae-performance-table table {
    width: 100%;
    border-collapse: collapse;
}
.oae-performance-table th,
.oae-performance-table td {
    padding: 8px 12px;
}
.oae-performance-col--target {
    width: 64%;
    padding-left: 0 !important;
    text-align: left;
}
.oae-performance-col--score {
    width: 16%;
    text-align: center;
    background: rgba(161, 219, 196, 0.38);
}
.oae-performance-col--status {
    width: 20%;
    text-align: center;
}
.oae-performance-table thead th {
    border-bottom: 2px solid #12b6aa;
    vertical-align: middle;
}
.oae-performance-table th {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #444;
}
.oae-performance-table thead .oae-performance-col--score {
    background: #00a85a;
    color: #ffffff;
}
.oae-performance-table--governance {
    border-top-color: #ff8a2f;
    border-bottom-color: #ff8a2f;
}
.oae-performance-table--social {
    border-top-color: #1ea7e8;
    border-bottom-color: #1ea7e8;
}
.oae-performance-table--social thead th {
    border-bottom-color: #1ea7e8;
}
.oae-performance-table--social thead .oae-performance-col--score {
    background: #1b97dd;
}
.oae-performance-table--social .oae-performance-col--score {
    background: rgba(125, 195, 238, 0.28);
}
.oae-performance-table--governance thead th {
    border-bottom-color: #ff8a2f;
}
.oae-performance-table--governance thead .oae-performance-col--score {
    background: #ff8a2f;
}
.oae-performance-table--governance .oae-performance-col--score {
    background: rgba(255, 184, 126, 0.28);
}
.oae-performance-table tbody tr {
    border-top: 1px solid #bfc6c2;
}
.oae-performance-table td {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    color: #444;
}
.oae-performance-note {
    margin: 10px 0 0 !important;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
}
.oae-ratings-card {
    margin-top: 34px;
    padding: 0 0 16px;
    box-shadow: 8px 8px 12px rgba(44, 191, 241, 0.28);
}
.oae-ratings-card h3 {
    margin: 0 0 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.oae-rating-item {
    min-height: 100%;
    padding: 0 22px 0 0;
}
.oae-ratings-card .col-lg-4:not(:last-child) .oae-rating-item {
    border-right: 1px solid #5b5b5b;
}
.oae-rating-item p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #444;
}
.oae-rating-item strong {
    font-weight: 700;
}
.oae-awards-section {
    margin-top: 34px;
}
.oae-awards-section h3 {
    margin: 0 0 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.oae-award-card {
    height: 100%;
    position: relative;
}
.oae-award-image {
    border: 1px solid #d7d7d7;
    background: #f7f7f7;
}
.oae-award-image img {
    width: 100%;
    display: block;
}
.oae-award-copy {
    position: relative;
    width: calc(100% - 54px);
    margin-top: -36px;
    margin-left: 22px;
    padding: 14px 16px 0 16px;
    background: #ffffff;
}
.oae-award-accent {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 54px;
    margin: 0 0 12px;
}
.oae-award-accent span:first-child {
    width: 34px;
    height: 4px;
    background: linear-gradient(90deg, #1ea7e8 0%, #a12b8f 100%);
}
.oae-award-accent span:last-child {
    width: 54px;
    height: 4px;
    background: linear-gradient(90deg, #1ea7e8 0%, #a12b8f 100%);
}
.oae-award-card p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #444;
}
.oae-business-awards-section {
    margin-top: 34px;
}
.oae-business-awards-section h3 {
    margin: 0 0 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 700;
    color: #444;
}
.oae-business-awards-row {
    margin-top: 28px;
}
/* our-approach-to-esg end */

/* enviroment page css start*/
/* .pl-section.enviropage{
    background-color: #d4ebdb;
} */
.pl-section.enviropage h1{
    color: #00b16b;
}
.pl-section.enviropage .pl-intro-box p{
    color: #444;
    padding-bottom: 10px;
}
.env-linkages-section {
    padding: 0px 0 40px;
    background: #ffffff;
}
.env-linkages-wrap h2 {
    margin: 0 0 20px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.env-linkages-block h3 {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #444;
}
.env-linkages-top {
    row-gap: 26px;
    margin-bottom: 20px;
}
.env-linkages-top > div {
    display: flex;
    flex-direction: column;
}
/* Bottom row: Capitals Impacted (2-column) + SDGs Aligned */
.env-linkages-bottom {
    margin-top: 36px;
    row-gap: 26px;
}
.env-capitals-list--2col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 28px;
}
.env-capitals-list--2col li {
    margin-bottom: 10px;
}
.env-link-list,
.env-capitals-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.env-link-list li,
.env-capitals-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 10px;
}
.env-link-list li:last-child,
.env-capitals-list li:last-child {
    margin-bottom: 0;
}
.env-link-list span {
    flex: 0 0 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    border-bottom: 2px solid #25b7e8;
    border-right: 2px solid #25b7e8;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1;
    font-weight: 700;
    color: #a12b8f;
}
.env-linkages-top .col-lg-4:first-child .env-link-list span {
    border-bottom-color: #a12b8f;
    border-right-color: #a12b8f;
    color: #a12b8f;
}
/* Extra gap between the pink M badges and the topic text (Material Topics) */
.env-linkages-top .col-lg-4:first-child .env-link-list li {
    gap: 20px;
}
.env-linkages-top .col-lg-4:nth-child(2) .env-link-list span {
    border-bottom-color: #25b7e8;
    border-right-color: #25b7e8;
    color: #25b7e8;
}
.env-link-list p,
.env-capitals-list p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
}
.env-link-list--compact li {
    margin-bottom: 14px;
}
.env-linkages-block--bottom {
    padding-top: 34px;
}
.env-link-list--tags {
    margin-bottom: 12px;
}
.env-link-list--tags span {
    border-bottom-color: #25b7e8;
    border-right-color: #25b7e8;
    color: #a12b8f;
}
.env-capitals-list img {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    display: block;
}
.env-opportunity-tags {
    display: flex;
    gap: 8px;
}
.env-opportunity-tags span {
    min-width: 34px;
    padding: 6px 10px;
    background: #63cfc2;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1;
    font-weight: 700;
    color: #ffffff;
    text-align: center;
}

.env-sdg-grid img {
    /* width: 56px; */
    height: 66px;
    display: block;
}
.env-highlights-section {
    padding: 0 0 40px;
    background: #ffffff;
}
.env-quote {
    margin: 0 0 40px;
    padding: 40px 44px 44px;
    background: #006a5e;
}
.env-quote-icon {
    width: 64px;
    height: auto;
    margin-bottom: 24px;
}
.env-quote-icon img {
    width: 100%;
    height: auto;
    display: block;
}
.env-quote p {
    margin: 0;
    /* max-width: 900px; */
    font-family: 'Noto Sans', sans-serif;
    font-size: 26px;
    line-height: 1.35;
    font-weight: 700;
    color: #ffffff;
}
.env-highlights-wrap h2 {
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.envhighlightmrgn{
    margin-bottom: 50px;
}
.env-highlight-item {
    padding: 25px 0px 0 0 ;
}
.env-highlight-item h3 {
    margin: 0 0 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1;
    font-weight: 700;
    color: #00a86b;
}
.env-highlight-item p {
    position: relative;
    margin: 0;
    padding-left: 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    color: #444;
}
.env-highlight-item p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 8px;
    height: 3px;
    background: #00a86b;
}
.env-certification-inner {
    display: flex;
    max-width: 625px;
    margin: 5px 0px;
}
.env-certification-item {
    flex: 1 1 50%;
}
.env-certification-item + .env-certification-item {
    border-left: 1px solid #d3d3d3;
    padding-left: 26px;
    margin-left: 26px;
}
.env-certification-item h3 {
    margin: 0 0 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1;
    font-weight: 700;
    color: #00a86b;
}
.env-certification-item p {
    position: relative;
    margin: 0;
    padding-left: 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    color: #444;
}
.env-certification-item p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 8px;
    height: 3px;
    background: #00a86b;
}
.env-certification-note {
    margin: 18px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.35;
    color: #444;
}
.env-image-feature {
    position: relative;
    margin-bottom: 30px;
}
.env-image-feature > img {
    display: block;
    width: 100%;
    height: 520px;
    object-fit: cover;
}
.env-image-caption {
    position: absolute;
    right: 1px;
    bottom: 1px;
    display: flex;
    align-items: center;
    gap: 18px;
    width: 100%;
    max-width: fit-content;
    padding: 5px 10px;
    background: #ffffff;
}
.env-image-caption-mark {
    position: relative;
    flex: 0 0 54px;
    width: 54px;
    height: 20px;
}
.env-image-caption-mark::before,
.env-image-caption-mark::after {
    content: "";
    position: absolute;
    left: 0;
    height: 5px;
    background: linear-gradient(90deg, #1ea7e8 0%, #245fbe 45%, #a12b8f 100%);
}
.env-image-caption-mark::before {
    top: 2px;
    width: 30px;
}
.env-image-caption-mark::after {
    top: 11px;
    width: 48px;
}
.env-image-caption p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #444;
}
.env-focus-card {
    position: relative;
    margin-bottom: 34px;
    padding: 34px 26px 24px;
    border: 1px solid #cfcfcf;
    box-shadow: 4px 5px 0 #bdbdbd;
}
.env-focus-badge {
    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);
    padding: 10px 18px;
    background: #eefaf2;
    box-shadow: 7px 7px 10px rgba(48, 221, 179, 0.24);
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.1;
    font-weight: 600;
    color: #a12b8f;
}
.env-focus-grid {
    row-gap: 28px;
}
.env-focus-item {
    text-align: center;
}
.env-focus-item img {
    width: 38px;
    height: 38px;
    display: block;
    margin: 0 auto 10px;
}
.env-focus-item p {
    margin: 0 auto;
    max-width: 150px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #444;
}
.env-system-copy h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.env-system-copy h3.env-h3--black { color: #222; }
.env-system-copy .col-lg-12 + .col-lg-12 {
    margin-top: 20px;
}
.env-system-copy p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
}
.env-system-copy p a {
    color: #a12b8f;
    text-decoration: none;
}
.env-system-note a {
    position: relative;
    padding-left: 16px;
    color: #7f8495 !important;
}
.env-system-note a::before {
    content: "+";
    position: absolute;
    left: 0;
    top: 0;
    color: #8ea1af;
    font-weight: 700;
}
.env-monitoring-section {
    padding: 0 0 55px;
    background: #ffffff;
}
.env-monitoring-copy h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
    color: #444;
}
.env-monitoring-copy h3 + p {
    margin-top: 0;
}
.env-monitoring-copy h3 + p + h3 {
    margin-top: 20px;
}
.env-monitoring-copy p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
}

/* enviroment page css end*/

/* climate action page css start*/
.ca-content-section {
    padding: 50px 0 10px;
    background: #ffffff;
}
.syn-hero-text {
    position: relative;
}
.ca-hero-copy {
    position: relative;
    z-index: 2;
    margin-right: -150px;
    padding: 20px;
    background: #eef6fb;
}
.ca-hero-copy p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;

}

.op-hci-stat:last-child {
    grid-column: span 2;
}

.op-hci-stat:last-child .op-hci-stat-num {
    font-size: 28px;
}

.op-hci-stat:last-child p {
    max-width: 350px;
}

.op-hci-right {
    padding-top: 4px;
}

.op-hci-chart {
    margin-top: 18px;
    border-top: 1px solid #c7c7c7;
}

.op-hci-row {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) 36px;
    align-items: center;
    gap: 10px;
    padding: 6px 0;
    border-bottom: 1px solid #c7c7c7;
}

.op-hci-row span,
.op-hci-row b {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #111111;
}

.op-hci-row b {
    text-align: right;
    font-weight: 400;
}

.op-hci-bar-wrap {
    position: relative;
    height: 30px;
    background: #c9e4ef;
    overflow: hidden;
}

.op-hci-bar {
    height: 100%;
    background: #bfe0ec;
}

.op-hci-bar--strong {
    background: #1678b8;
}

.op-hci-note {
    margin: 18px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
    max-width: 520px;
}

.op-local-section {
    margin-top: 54px;
}

.op-local-card {
    max-width: 100%;
}

.op-local-title {
    margin-bottom: 10px;
}

.op-local-card p,
.op-local-subcard p,
.op-local-transition p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #111111;
    margin: 0;
}

.op-ase-section {
    margin-top: 54px;
    padding: 0 0 10px;
}

.op-ase-panel {
    padding: 0 0 0;
}

.op-ase-head {
    position: relative;
    margin-bottom: 24px;
    padding-left: 12px;
}

.op-ase-head::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.12em;
    width: 5px;
    height: 70px;
    background: #1aa9d8;
}

.op-ase-title {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: 0.01em;
    color: #158fc6;
    text-transform: uppercase;
}

.op-ase-top {
    --bs-gutter-x: 40px;
    --bs-gutter-y: 22px;
    align-items: flex-start;
}

.op-ase-copy p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.48;
    color: #111111;
}

.op-ase-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 36px;
    align-items: start;
}

.op-ase-stat {
    min-width: 0;
}

.op-ase-stat-wide {
    grid-column: 1 / -1;
    margin-top: 2px;
}

.op-ase-stat-num {
    display: inline-flex;
    align-items: baseline;
    gap: 1px;
    margin: 0 0 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 28px;
    line-height: 1;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    padding-bottom: 4px;
}

.op-ase-plus {
    font-size: 0.82em;
    line-height: 1;
}

.op-ase-stat p {
    position: relative;
    margin: 0;
    padding-top: 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.32;
    color: #111111;
}

.op-ase-stat p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 26px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

.op-ase-image-wrap {
    margin-top: 26px;
}

.op-ase-image {
    width: 100%;
    display: block;
    object-fit: cover;
}

.op-ld-section {
    margin-top: 56px;
    padding: 0 0 4px;
}

.op-ld-title {
    margin-bottom: 18px;
}

.op-ld-grid {
    --bs-gutter-x: 34px;
    --bs-gutter-y: 24px;
    display: block;
    margin-left: 0;
    margin-right: 0;
}

.op-ld-grid > [class*="col-"] {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
    margin-bottom: 22px;
    padding-left: 0;
    padding-right: 0;
}

.op-ld-col {
    min-height: 100%;
}

.op-ld-col h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.15;
    color: #111111;
}

.op-ld-col p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.48;
    color: #111111;
}

.op-ld-col ul {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

.op-ld-col li {
    position: relative;
    margin: 0 0 8px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-ld-col li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 7px;
    height: 7px;
    background: #1aa9d8;
}

.op-cap-title {
    margin-bottom: 18px;
    color: #000;
}

.op-cap-block {
    margin-top: 18px;
}

.op-cap-heading {
    display: flex;
    align-items: baseline;
    gap: 14px;
    margin-bottom: 10px;
}

.op-cap-index {
    flex: none;
    font-family: 'Noto Sans', sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    color: #111111;
    min-width: 24px;
}

.op-cap-heading h3 {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-cap-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    border-top: 1px solid #1aa9d8;
}

.op-cap-table th,
.op-cap-table td {
    vertical-align: top;
    padding: 12px 14px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}

.op-cap-table th {
    padding-top: 10px;
    padding-bottom: 8px;
    font-size: 18px;
    font-weight: 700;
    color: #0d7fc0;
    border-bottom: 1px solid #1aa9d8;
}

.op-cap-table th + th,
.op-cap-table td + td {
    padding-left: 22px;
    border-left: 1px solid #b9c9d4;
}

.op-cap-table tbody td {
    padding-top: 12px;
}

.op-cap-table tbody tr + tr td {
    padding-top: 10px;
}

.op-cap-table td ul {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

.op-cap-table td li {
    position: relative;
    padding-left: 16px;
    margin: 0 0 6px;
}

.op-cap-table td li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-cap-table h4 {
    margin: 14px 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.2;
    color: #0d7fc0;
}

.op-cap-table p {
    margin: 0;
}

.op-lead-section {
    margin-top: 56px;
}

.op-lead-title {
    margin-bottom: 18px;
    color: #000;
}

.op-lead-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    border-top: 1px solid #1aa9d8;
}

.op-lead-table th,
.op-lead-table td {
    vertical-align: top;
    padding: 10px 14px 12px 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
    border-bottom: 1px solid #c9d3da;
}

.op-lead-table th {
    width: 15%;
    padding: 12px 12px;
    background: #e8f2f8;
    font-weight: 400;
    text-align: left;
    color: #111111;
}

.op-lead-table td {
    width: 42.5%;
    padding-left: 16px;
}

.op-lead-table td + td {
    border-left: 1px solid #c9d3da;
}

.op-lead-table h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-lead-table h4 {
    margin: 12px 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-lead-table p {
    margin: 0 0 10px;
}

.op-lead-table ul {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

.op-lead-table li {
    position: relative;
    margin: 0 0 8px;
    padding-left: 18px;
}

.op-lead-table li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-competency-section {
    margin-top: 56px;
}

.op-competency-title {
    margin-bottom: 18px;
    color: #000;
}

.op-competency-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    border-top: 1px solid #1aa9d8;
}

.op-competency-table th,
.op-competency-table td {
    vertical-align: top;
    padding: 10px 14px 12px 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
    border-bottom: 1px solid #c8d4dc;
}

.op-competency-table th {
    padding-top: 10px;
    padding-bottom: 8px;
    font-size: 18px;
    font-weight: 700;
    color: #0d7fc0;
    text-align: left;
    border-bottom: 1px solid #1aa9d8;
}

.op-competency-table th + th,
.op-competency-table td + td {
    padding-left: 20px;
    border-left: 1px solid #c8d4dc;
}

.op-competency-table td ul {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

.op-competency-table td li {
    position: relative;
    margin: 0 0 6px;
    padding-left: 16px;
}

.op-competency-table td li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-futurebox-section {
    margin-top: 56px;
}

.op-futurebox {
    padding: 28px 34px 32px;
    border: 1px solid #1aa9d8;
    box-shadow: 10px 10px 0 rgba(26, 169, 216, 0.16);
    background: #ffffff;
}

.op-futurebox-title {
    margin: 0 0 22px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #0d7fc0;
}

.op-futurebox-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0;
    background: #eaf3f8;
    padding: 18px 18px 20px;
}

.op-futurebox-col {
    min-width: 0;
    padding: 8px 22px 0 22px;
}

.op-futurebox-col-right {
    border-left: 1px solid #c8d4dc;
}

.op-futurebox-item {
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid #c8d4dc;
}

.op-futurebox-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.op-futurebox-item h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.22;
    color: #0d7fc0;
}

.op-futurebox-item p {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-futurebox-divider {
    display: none;
}

.op-training-section {
    margin-top: 56px;
}


.op-training-title {
    margin: 0 0 20px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-training-grid {
    display: grid;
        grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.op-training-item {
    min-width: 0;
}

.op-training-num {
    display: inline-flex;
    align-items: baseline;
    gap: 10px;
    margin: 0 0 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 28px;
    line-height: 1;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.op-training-unit {
    font-size: 0.9em;
    line-height: 1;
}

.op-training-item p {
    position: relative;
    margin: 0;
    padding-top: 12px;
    color: #444;
}

.op-training-item p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 26px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}
.ca-intro-copy p,
.ca-governance-block p,
.ca-detail-block p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
}
.ca-governance-block {
    margin-bottom: 0;
}
.ca-governance-block h3,
.ca-detail-block h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}
.ca-governance-grid {
    row-gap: 14px;
    margin-top: 14px;
    margin-bottom: 10px;
}
.ca-governance-card {
    position: relative;
    min-height: 100%;
    padding: 12px 14px;
    background: #00a86b;
    box-shadow: 5px 5px 0 #0b8271;
}
.ca-governance-card h4 {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 700;
    color: #ffffff;
}
.ca-governance-copy {
    min-height: 100%;
    padding: 12px 14px;
    border-right: 5px solid #c7c7c7;
    border-bottom: 5px solid #c7c7c7;
}
.ca-governance-copy p {
    margin: 0;
}
.ca-governance-meta {
    margin-bottom: 10px;
    font-size: 14px !important;
    line-height: 1.35 !important;
    color: #444444 !important;
}
.ca-more-link {
    margin-bottom: 0;
}
.ca-more-link a {
    position: relative;
    display: inline-block;
    padding-left: 16px;
    font-size: 14px;
    line-height: 1.35;
    color: #444;
    text-decoration: none;
}
.ca-more-link a::before {
    content: "+";
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 700;
    color: #8b8f9d;
}
.ca-detail-row {
    row-gap: 18px;
}
.ca-detail-block h3 + p {
    margin-top: 0;
}
.ca-detail-block h3 + p + h3 {
    margin-top: 18px;
}
.ca-detail-block h3.ca-subtitle-dark {
    font-size: 20px;
    color: #111111;
}
.ca-detail-block strong {
    font-weight: 600;
}
.ca-detail-block--spacer {
    padding-top: 170px;
}
.ca-risks-section {
    padding: 0 0 70px;
    background: #ffffff;
}
.ca-risks-wrap h3 {
    margin: 0 0 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 600;
    color: #444;
}
.ca-risks-wrap > p {
    margin: 20px 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.35;
    color: #444;
}
.ca-risks-table-wrap {
    overflow-x: auto;
}
.ca-risks-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border-bottom: 1px solid #444;
}
.ca-risks-table thead th {
    padding: 10px 14px;
    background: #00a86b;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #ffffff;
    text-align: left;
}
.ca-risks-table tbody td {
    position: relative;
    padding: 14px 16px;
    --ca-arrow-pos: 50%;
}
.ca-risks-table tbody td + td::before {
    content: "";
    position: absolute;
    left: 0;
    top: 16px;
    bottom: 16px;
    width: 1px;
    background: linear-gradient(
        to bottom,
        #444 0,
        #444 calc(var(--ca-arrow-pos) - 12px),
        transparent calc(var(--ca-arrow-pos) - 12px),
        transparent calc(var(--ca-arrow-pos) + 12px),
        #444 calc(var(--ca-arrow-pos) + 12px),
        #444 100%
    );
}
.ca-risks-table tbody td + td::after {
    content: "";
    position: absolute;
    left: 1px;
    top: var(--ca-arrow-pos);
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid #0aa56c;
}
.ca-risks-table tbody .ca-risk-horizon-cell::before {
    top: 16px;
    bottom: 16px;
}
.ca-risks-table tbody .ca-risk-horizon-cell {
    --ca-arrow-pos: 40%;
}
.ca-risks-table tbody .ca-risk-horizon-cell::after {
    border-top-width: 5px;
    border-bottom-width: 5px;
    border-left-width: 7px;
    border-left-color: #0aa56c;
    z-index: 2;
}
.ca-risks-table tbody tr + tr td {
    border-top: 1px solid #d8d8d8;
}
.ca-risk-label {
    min-height: 100%;
    padding: 18px 14px;
    background: #eef8ef;
    box-shadow: 4px 4px 0 rgba(48, 221, 179, 0.38);
}
.ca-risk-label span {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
    color: #444;
}
.ca-risk-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ca-risk-list li {
    position: relative;
    margin: 0 0 2px;
    padding-left: 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #444;
}
.ca-risk-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 4px;
    height: 4px;
    background: #25b7e8;
}
.ca-risks-copy {
    margin-top: 24px;
}
.ca-risks-copy p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
}
.ca-risks-copy h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 600;
    color: #444;
}
.ca-impact-grid {
    row-gap: 24px;
    margin-bottom: 20px;
}
.ca-impact-grid > div {
    display: flex;
}
.ca-impact-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 100%;
    padding: 14px 0 0 14px;
    border-top: 2px solid #79dfcd;
    border-right: 2px solid #79dfcd;
}
.ca-impact-head {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin: 0 14px 18px 0;
    padding: 10px 14px;
    background: #eaf7ec;
}
.ca-impact-head--single {
    display: block;
}
.ca-impact-head h4 {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
    color: #111111;
}
.ca-impact-head h4 span {
    font-weight: 400;
}
.ca-impact-body {
    flex: 1 1 auto;
    padding: 0 14px 18px 0;
}
.ca-impact-body h5 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #006fd0;
}
.ca-impact-body h5 + p,
.ca-impact-body h5 + ul {
    margin-top: 0;
}
.ca-impact-body h5 + p + h5,
.ca-impact-body p + h5,
.ca-impact-body ul + h5 {
    margin-top: 20px;
}
.ca-impact-body p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
}
.ca-impact-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ca-impact-list li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
}
.ca-impact-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 4px;
    height: 4px;
    background: #25b7e8;
}
.ca-impact-grid--full .ca-impact-card {
    width: 100%;
}
.ca-impact-inner-grid {
    row-gap: 18px;
}
.ca-impact-note {
    margin: 18px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
}
.ca-adaptation-copy h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.25;
    font-weight: 600;
    color: #a12b8f;
}
.ca-adaptation-copy p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
}

.op-effect-section {
    margin-top: 56px;
}

.op-effect-section .container {
    display: block;
}

.op-effect-copy {
    min-width: 0;
}

.op-effect-title {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.15;
    color: #8d2ea3;
}

.op-effect-copy > p {
    margin: 0 0 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.op-effect-copy h3 {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-effect-lever {
    margin-bottom: 18px;
}

.op-effect-lever h4 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #0d7fc0;
}

.op-effect-lever p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.op-effect-image-wrap {
    min-width: 0;
    align-self: start;
    padding-top: 4px;
}

.op-effect-image {
    width: 100%;
    display: block;
}

.op-transition-section {
    margin-top: 56px;
}

.op-transition-title {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #8d2ea3;
}

.op-transition-copy {
    margin: 0 0 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-transition-subtitle {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-transition-cards {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.op-transition-card {
    background: #ffffff;
    border: 1px solid #cfd9df;
    box-shadow: 0 8px 0 rgba(26, 169, 216, 0.16);
    padding: 14px 16px 16px;
    min-height: 100%;
}

.op-transition-card h4 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-transition-card p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #111111;
}

.op-transition-outcomes {
    margin-top: 40px;
    border: 1px solid #cfd0d4;
    box-shadow: 0 8px 0 rgba(0, 0, 0, 0.12);
    background: #ffffff;
    padding: 30px 24px 18px;
    position: relative;
}

.op-transition-outcomes-head {
    position: absolute;
    left: 50%;
    top: -18px;
    transform: translateX(-50%);
    background: #12b4d8;
    color: #ffffff;
    padding: 12px 34px;
    min-width: 160px;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.1;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.18);
}

.op-transition-outcomes p {
    margin: 0;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #111111;
}

.op-performance-section {
    margin-top: 56px;
}

.op-performance-row {
    align-items: flex-start;
}

.op-performance-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #8d2ea3;
}

.op-performance-copy p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-performance-stat {
    padding-left: 34px;
}

.op-performance-num {
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
    margin: 0 0 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 34px;
    line-height: 1;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.op-performance-unit {
    font-size: 0.9em;
}

.op-performance-stat p {
    position: relative;
    margin: 0;
    padding-top: 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.34;
    color: #111111;
}

.op-performance-stat p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 26px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

.op-pms-section {
    margin-top: 56px;
}

.op-pms-title {
    margin: 0 0 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-pms-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.op-pms-card {
    min-height: 100%;
    background: #e8f2f8;
    border-right: 4px solid #8bc2e4;
    border-bottom: 7px solid #8bc2e4;
    padding: 18px 16px 20px;
}

.op-pms-card h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-pms-card p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-pms-image-section {
    margin-top: 32px;
}

.op-pms-image {
    width: 100%;
    display: block;
}

.op-dei-section {
    margin-top: 56px;
}

.op-dei-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 36px;
    align-items: start;
}

.op-succession-title {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.18;
    color: #111111;
}

.op-succession-copy p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #111111;
}

.op-dei-title {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.18;
    color: #8d2ea3;
}

.op-dei-copy > p {
    margin: 0 0 20px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-dei-copy h3 {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-dei-copy ul {
    margin: 0 0 18px;
    padding-left: 0;
    list-style: none;
}

.op-dei-copy li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #111111;
}

.op-dei-copy li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-gender-section {
    margin-top: 34px;
}

.op-gender-title {
    margin: 0 0 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #8d2ea3;
}

.op-gender-grid {
    --bs-gutter-x: 36px;
    --bs-gutter-y: 20px;
}

.op-gender-col p {
    margin: 0 0 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-gender-col h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-gender-visual-section {
    margin-top: 34px;
}

.op-gender-visual {
    width: 100%;
    display: block;
}

.op-gender-timeline-section {
    margin-top: 34px;
}

.op-gender-timeline p,
.op-gender-timeline li {
    margin: 0 0 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-gender-timeline ul {
    margin: 0 0 16px;
    padding-left: 0;
    list-style: none;
}

.op-gender-timeline li {
    position: relative;
    padding-left: 18px;
}

.op-gender-timeline li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-gender-timeline h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-care-section {
    margin-top: 56px;
}

.op-care-row {
    align-items: flex-start;
    --bs-gutter-x: 36px;
}

.op-care-title {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #8d2ea3;
}

.op-care-copy h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-care-copy p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-care-quote {
    padding-top: 28px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.op-well-section {
    margin-top: 56px;
}

.op-well-callout {
    margin-bottom: 22px;
}

.op-well-banner {
    display: inline-block;
    margin-left: 8px;
    margin-bottom: 16px;
    padding: 11px 28px 12px;
    background: #0b7db3;
    color: #ffffff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.1;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.18);
}

.op-well-panel {
    background: #eaf3f8;
    padding: 28px 34px 28px;
}

.op-well-top {
    margin-bottom: 22px;
}

.op-well-subtitle {
    display: inline-block;
    margin: 0 0 18px;
    padding: 10px 18px 10px;
    background: #ffffff;
    border-bottom: 4px solid #1aa9d8;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.18;
    color: #0d7fc0;
}

.op-well-list {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

.op-well-list li {
    position: relative;
    margin: 0 0 9px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.32;
    color: #111111;
}

.op-well-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-well-grid {
    --bs-gutter-x: 32px;
    --bs-gutter-y: 18px;
}

.op-well-card {
    min-height: 100%;
}

.op-well-card h4 {
    display: inline-block;
    margin: 0 0 14px;
    padding: 10px 16px 10px;
    background: #ffffff;
    border-bottom: 4px solid #1aa9d8;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.18;
    color: #0d7fc0;
}

.op-remote-section {
    margin-top: 35px;
}

.op-remote-row {
    --bs-gutter-y: 20px;
}

.op-remote-card {
    max-width: 100%;
}

.op-remote-card h2 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.18;
    color: #8d2ea3;
}

.op-remote-card p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-remote-num {
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
    margin: 8px 0 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 32px;
    line-height: 1;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.op-remote-unit {
    font-size: 0.9em;
}


.op-worker-banner {
    display: block;
    padding: 10px 28px 11px;
    margin: 0 0 14px;
    background: #1587c5;
    color: #ffffff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.2);
}

.op-worker-panel {
    background: #eaf3f8;
    padding: 28px 30px 30px;
}

.op-worker-subtitle {
    margin: 0 0 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-worker-grid {
    --bs-gutter-x: 34px;
    --bs-gutter-y: 22px;
}

.op-worker-card h4 {
    display: inline-block;
    margin: 0 0 14px;
    padding: 9px 14px 10px;
    background: #ffffff;
    border-bottom: 4px solid #12b4d8;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #0d7fc0;
}

.op-engage-section {
    margin-top: 56px;
}

.op-engage-title {
    margin: 0 0 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #8d2ea3;
}

.op-engage-subtitle {
    margin: 0 0 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-engage-panel {
    border: 1px solid #cfd3d6;
    padding: 16px 16px 18px;
}

.op-engage-grid {
    --bs-gutter-x: 30px;
    --bs-gutter-y: 18px;
}

.op-engage-card {
    min-height: 100%;
}

.op-engage-card h4 {
    margin: 0 0 12px;
    padding: 12px 16px;
    background: #d7e8f2;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.18;
    color: #111111;
}

.op-engage-card p {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.op-engage-outcomes {
    position: relative;
    margin-top: 22px;
    border: 1px solid #cfd0d4;
    background: #ffffff;
    box-shadow: 0 8px 0 rgba(0, 0, 0, 0.12);
    padding: 28px 22px 16px;
    text-align: center;
}

.op-engage-outcomes-head {
    position: absolute;
    left: 50%;
    top: -17px;
    transform: translateX(-50%);
    padding: 11px 32px;
    background: #12b4d8;
    color: #ffffff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.1;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.2);
}

.op-engage-outcomes p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #111111;
        padding-top: 15px;
}

.op-townhall-section {
    margin-top: 56px;
}

.op-townhall-row,
.op-blood-row {
    align-items: flex-start;
    --bs-gutter-x: 28px;
}

.op-townhall-card,
.op-blood-card {
    min-height: 100%;
    border: 1px solid #8fc8e1;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.5);
    padding: 22px 24px;
}

.op-townhall-card h2,
.op-blood-card h2 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #0d7fc0;
}

.op-townhall-card p,
.op-blood-card p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #08A9CC;
    font-weight: 500;
}

.op-townhall-image,
.op-blood-image {
    width: 100%;
    display: block;
}

.op-blood-section {
    margin-top: 56px;
}

.op-listen-section {
    margin-top: 56px;
}

.op-listen-title {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #8d2ea3;
}

.op-listen-intro {
    margin: 0 0 22px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-listen-subtitle {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-listen-table {
    border-top: 1px solid #1b8fca;
    border-bottom: 2px solid #1b8fca;
    margin-bottom: 26px;
}

.op-listen-head,
.op-listen-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 166px;
}

.op-listen-head > div:first-child {
    min-height: 1px;
}

.op-listen-head > div:last-child {
    background: #0b7db3;
    color: #ffffff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    padding: 12px 10px;
}

.op-listen-row {
    border-top: 1px solid #c9cfd4;
}

.op-listen-row > div {
    padding: 10px 10px 10px 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.34;
    color: #111111;
}

.op-listen-row > div:last-child {
    text-align: center;
    background: #e8f2f8;
    padding-left: 10px;
    font-size: 18px;
}

.op-listen-panel {
    border: 1px solid #89c8e2;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.16);
    padding: 18px 20px 20px;
}

.op-listen-panel-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #0d7fc0;
}

.op-listen-panel > p {
    margin: 0 0 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-listen-grid {
    --bs-gutter-x: 28px;
    --bs-gutter-y: 18px;
}

.op-listen-card {
    padding-bottom: 18px;
    margin-bottom: 18px;
    border-bottom: 1px solid #c9cfd4;
}
.row.op-digital-row {
    align-items: center;
}
.op-listen-card:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.op-listen-card h4 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-listen-way {
    margin-top: 24px;
}

.op-listen-way h3 {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-listen-way-list {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

.op-listen-way-list li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.34;
    color: #111111;
}

.op-listen-way-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-digital-section {
    margin-top: 56px;
}

.op-digital-row,
.op-rights-row,
.op-risk-row {
    --bs-gutter-x: 30px;
    --bs-gutter-y: 22px;
}

.op-digital-copy h2,
.op-rights-copy h2,
.op-risk-copy h2,
.op-zero-title {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #8d2ea3;
}

.op-digital-copy p,
.op-rights-copy p,
.op-risk-copy p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-digital-card {
    padding: 18px 18px 16px;
    border: 1px solid #b9d8e7;
    background: #ffffff;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.18);
}

.op-digital-card h3,
.op-rights-copy h3,
.op-risk-copy h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #111111;
}

.op-bullet-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.op-bullet-list li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.op-bullet-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-note-link,
.op-zero-link {
    margin: 12px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.35;
    color: #7e7e7e;
}

.op-note-link strong,
.op-zero-link strong {
    color: #111111;
}

.op-zero-link a {
    color: #8d2ea3;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.op-zero-link a strong {
    color: #8d2ea3;
}

.op-zero-link a:hover {
    color: #6f2380;
}

.op-rights-section {
    margin-top: 56px;
}

.op-rights-quote {
    margin-top: 8px;
    padding: 18px 6px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.op-zero-section {
    margin-top: 56px;
}

.op-zero-title {
    margin-bottom: 18px;
    color: #111111;
}

.op-zero-grid {
    --bs-gutter-x: 24px;
    --bs-gutter-y: 24px;
}

.op-zero-card {
    position: relative;
    min-height: 220px;
    border-left: 10px solid #1187c8;
    border-right: 10px solid #1187c8;
    border-radius: 50% / 100%;
    padding: 42px 28px 34px;
    text-align: center;
    background: #ffffff;
}


.op-zero-card::before {
    top: 0;
}

.op-zero-card::after {
    bottom: 0;
}

.op-zero-card p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.36;
    color: #111111;
}

.op-zero-link {
    margin-top: 14px;
}


.op-risk-box {
    border: 2px solid #1aa9d8;
    background: #ffffff;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.16);
    padding: 18px 18px 20px;
}

.op-risk-box-head {
    margin: -34px auto 18px;
    max-width: 520px;
    padding: 12px 18px;
    background: #dfeef7;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.16);
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    color: #0d7fc0;
}

.op-risk-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.op-risk-item {
    min-height: 104px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px 18px;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
}

.op-risk-item:nth-child(odd) {
    border-right: 1px solid #c9cfd4;
}

.op-risk-item:nth-child(-n + 4) {
    border-bottom: 1px solid #c9cfd4;
}

.op-hrdd-section {
    margin-top: 56px;
}

.op-hrdd-title,
.op-hrtrain-title,
.op-remediation-copy h2 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #8d2ea3;
}

.op-hrdd-copy,
.op-hrtrain-intro,
.op-remediation-copy p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-hrtrain-section {
    margin-top: 35px;
}

.op-hrtrain-panel {
    padding: 0;
}

.op-hrtrain-intro {
    margin-bottom: 18px;
}

.op-hrtrain-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.op-hrtrain-list li {
    position: relative;
    margin: 0 0 12px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-hrtrain-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    background: #1aa9d8;
}

.op-hrtrain-stat {
    margin-top: 18px;
}

.op-hrtrain-num {
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
    margin: 0 0 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 34px;
    line-height: 1;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.op-hrtrain-stat p {
    position: relative;
    margin: 0;
    padding-top: 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.34;
    color: #111111;
}

.op-hrtrain-stat p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 26px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

.op-remediation-section {
    margin-top: 35px;
}

.op-remediation-copy {
    max-width: 100%;
}

.op-image-section {
    margin-top: 56px;
}

.op-image-frame {
    border: 1px solid #b9d8e7;
    box-shadow: 8px 8px 0 rgba(26, 169, 216, 0.14);
    background: #ffffff;
    padding: 12px;
}

.op-image-full {
    width: 100%;
    display: block;
}

.op-image-quote {
    margin-top: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.18;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.op-labour-section {
    margin-top: 56px;
}

.op-labour-block {
    margin-bottom: 34px;
}

.op-labour-block:last-child {
    margin-bottom: 0;
}

.op-labour-block h2 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: #8d2ea3;
}

.op-labour-block h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    color: #111111;
}

.op-labour-block p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.op-labour-note {
    color: #7e7e7e;
}

.op-labour-note strong {
    color: #111111;
}

.op-local-impact {
    margin-top: 22px;
    max-width: 100%;
}

.op-local-impact-title {
    margin-bottom: 12px;
}

.op-local-stack {
    display: flex;
    flex-direction: column;
    gap: 22px;
    margin-top: 4px;
}

.op-local-subcard {
    padding-right: 0;
}

.op-local-subcard h3,
.op-local-transition h3 {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    color: #1678b8;
    margin: 0 0 10px;
}

.op-local-transition {
    margin-top: 24px;
    max-width: 100%;
}

.op-evp-section {
    margin-top: 62px;
    padding: 22px 0 10px;
}

.op-evp-title {
    max-width: 1180px;
}

.op-evp-intro {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #111111;
    margin: 0 0 16px;
    max-width: 1210px;
}

.op-evp-band,
.op-evp-apart-label,
.op-evp-future-label {
    display: flex;
   justify-content: center;
    align-items: center;
    gap: 14px;
    margin-top: -23px;
    transform: translateY(-18px);
}

.op-evp-band span {
    display: block;
    height: 2px;
    background: #1aa9d8;
}

.op-evp-band-label {
    justify-self: center;
    padding: 10px 24px;
    background: #167fc0;
    color: #fff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
}

.op-evp-apart-label::before,
.op-evp-future-label::before {
    margin-right: 12px;
}

.op-evp-apart-label::after,
.op-evp-future-label::after {
    margin-left: 12px;
}

.op-evp-apart-label span,
.op-evp-future-label span {
    justify-self: center;
    padding: 10px 24px;
    background: #167fc0;
    color: #fff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
}

.op-evp-feature-box,
.op-evp-apart,
.op-evp-future {
    border: 2px solid #1aa9d8;
    border-bottom: none;
    margin-bottom: 60px;
    background: #eef6fb;
    box-shadow: 0 2px 0 rgba(26, 169, 216, 0.08);
}

.op-evp-feature-box {
    padding: 16px 14px 18px;
}

.op-evp-feature-caption {
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    color: #111111;
    text-align: center;
    background: #e4f3fb;
    max-width: 434px;
        margin: auto;
    margin-bottom: 14px;
    margin-top: -27px;
}

.op-evp-pillars {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    align-items: stretch;
}

.op-evp-pillar {
    padding: 4px 16px 2px;
    text-align: center;
    border-right: 1px solid #c3d4dd;
}

.op-evp-pillar:last-child {
    border-right: none;
}

.op-evp-pillar h3 {
    margin: 0 0 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.15;
    color: #111111;
}

.op-evp-pillar p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.32;
    color: #111111;
}

.op-evp-apart {
    padding: 24px 26px 18px;
}

.op-evp-apart-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 40px;
}

.op-evp-apart-item {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

.op-evp-num {
    flex: none;
    font-family: 'Noto Sans', sans-serif;
    font-size: 40px;
    line-height: 0.86;
    font-weight: 300;
    color: #17b0e3;
    margin-top: -2px;
    min-width: 28px;
}

.op-evp-apart-item h3 {
    margin: 0 0 2px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.22;
    color: #111111;
}

.op-evp-apart-item p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.28;
    color: #111111;
}

.op-evp-future {
    padding: 18px 16px 18px;
}

.op-evp-future-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.op-evp-future-col {
    padding: 0 18px 0 16px;
    border-right: 1px solid #c3d4dd;
}

.op-evp-future-col:last-child {
    border-right: none;
}

.op-evp-future-col h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.18;
    color: #111111;
}

.op-evp-future-col p {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.28;
    color: #111111;
}

.op-evp-future-col ul {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

.op-evp-future-col li {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.28;
    color: #111111;
    margin-bottom: 6px;
}

.op-evp-future-col li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 7px;
    height: 7px;
    background: #1aa9d8;
}
.op-hiring-photo-section .row{
    align-items: center;
}
.wrap{
    border-top: 2px solid #1678b8;
    border-right: 2px solid #1678b8;
    padding: 20px 20px 20px 0;
}
.wrap h2 span{
    display: block;
    color: #08A9CC;
    font-size: 22px;
}
.op-ase-head h2 span{
    display: block;
    color: #08A9CC;
    font-size: 22px;
}
.ca-adaptation-media {
    position: relative;
}

.ca-adaptation-caption {
    position: absolute;
    left: 1px;
    bottom: 1px;
    display: flex;
    align-items: center;
    gap: 16px;
    width: calc(100% - 1px);
    max-width: fit-content;
    padding: 5px 10px;
    background: #ffffff;
}
.ca-adaptation-caption-mark {
    position: relative;
    flex: 0 0 54px;
    width: 54px;
    height: 20px;
}
.ca-adaptation-caption-mark::before,
.ca-adaptation-caption-mark::after {
    content: "";
    position: absolute;
    left: 0;
    height: 5px;
    background: linear-gradient(90deg, #1ea7e8 0%, #245fbe 45%, #a12b8f 100%);
}
.ca-adaptation-caption-mark::before {
    top: 2px;
    width: 48px;
}
.ca-adaptation-caption-mark::after {
    top: 11px;
    width: 30px;
}
.ca-adaptation-caption p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #111111;
}
/* climate action page css end*/

/* climate action page css callout start */
.ca-adaptation-callout-row {
    margin-top: 30px;
}

.ca-adaptation-callout {
    /* max-width: 780px; */
    padding: 18px 20px;
    border: 1px solid #5fd0c3;
    background: #ffffff;
    box-shadow: 7px 7px 10px rgba(48, 221, 179, 0.24);
}

.ca-adaptation-callout p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    font-weight: 600;
    color: #0b84a3;
}
/* climate action page css callout end */


.op-safety-section .row{
    align-items: center;
}
.cr-udaan-impact h3{
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
}
.cr-udaan-text h3{
     font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
}
.cr-udaan-title{
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.18;
    font-weight: 700;
    color: #a334a8;
}
.cr-udaan-goal{
    padding-bottom: 15px;
}
.cr-udaan-impact{
    margin-top: 22px;
}
.cr-udaan-section .row{
    align-items: center;
}

/* climate action page css strategy start */
.ca-strategy-row {
    margin-top: 34px;
}


.ca-strategy-block h3 {
    margin: 10px 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
    color: #444;
}

.ca-strategy-block p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #444;
}
/* climate action page css strategy end */

/* climate action page css transition start */
.ca-transition-row {
    margin-top: 30px;
}

.ca-transition-title {
    margin: 0 0 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 600;
    color: #111111;
}

.ca-transition-panel {
    position: relative;
    padding: 40px 24px 22px 0;
    margin: 30px 0px;
    border-top: 2px solid #59d7c8;
    border-right: 2px solid #59d7c8;
    border-bottom: 2px solid #59d7c8;
    background: #ffffff;
}

.ca-transition-badge {
    position: absolute;
    top: -14px;
    left: 0;
    display: inline-block;
}

.ca-transition-badge h4 {
    margin: 0;
    padding: 10px 16px;
    background: #06b36f;
    box-shadow: 5px 5px 0 #0b7e84;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.1;
    font-weight: 600;
    color: #ffffff;
}

.ca-transition-content h5 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 600;
    color: #111111;
}

.ca-transition-content > p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.ca-transition-grid {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid #cfcfcf;
    row-gap: 20px;
}

.ca-transition-col {
    min-height: 100%;
}

.ca-transition-col p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}
/* climate action page css transition end */

/* climate action page css financial start */

.ca-financial-block h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.25;
    font-weight: 600;
    color: #a12b8f;
}

.ca-financial-block p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.ca-financial-block p:last-child {
    margin-bottom: 0;
}
/* climate action page css financial end */

/* climate action page css icp start */
.ca-icp-row {
    margin-top: 34px;
}

.ca-icp-panel {
    padding: 20px 18px;
    background: #eef8f2;
    margin-bottom: 30px;
}

.ca-icp-copy h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
    color: #111111;
}

.ca-icp-copy p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.ca-icp-grid {
    row-gap: 18px;
}

.ca-icp-card {
    min-height: 100%;
    text-align: center;
}

.ca-icp-card h4 {
    margin: 0 0 20px;
    padding: 10px 12px;
    background: #ffffff;
    box-shadow: 4px 4px 0 #0b8271;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.ca-icp-card p {
    margin: 0;
    padding: 0 8px 12px;
    margin-bottom: 20px;
    background: #eef8f2;
    box-shadow: 4px 4px 0 #c7c7c7;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #111111;
}
/* climate action page css icp end */

/* climate action page css opportunity start */

.ca-opportunity-block h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
    color: #a12b8f;
}

.ca-opportunity-block p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.ca-opportunity-block p:last-child {
    margin-bottom: 0;
}
/* climate action page css opportunity end */

/* climate action page css hydrogen start */
.ca-hydrogen-row {
    margin-top: 34px;
    align-items: flex-start;
    border-left: 2px solid #57d4c5;
    border-bottom: 2px solid #57d4c5;
    padding: 0 0 14px 14px;
}


.ca-hydrogen-panel {
    height: 100%;
    padding: 0 0 14px 0;
}

.ca-hydrogen-panel h3 {
    position: relative;
    margin: 0 0 12px;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 19px;
    line-height: 1.02;
    font-weight: 700;
    text-transform: uppercase;
    color: #0c7f8d;
}
.ca-hydrogen-panel h3 span{
    display: block;
    color: #07b36f;
}
.ca-hydrogen-panel h3::before {
    content: "";
    position: absolute;
    left: 0;
    top: 1px;
    width: 4px;
    height: calc(100% - 2px);
    background: linear-gradient(180deg, #0c7f8d 0%, #07b36f 100%);
}

.ca-hydrogen-panel p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}


.ca-hydrogen-media {
    position: relative;
}

.ca-hydrogen-media img {
    width: 100%;
    display: block;
    object-fit: cover;
    margin-bottom: 20px;
}

.ca-hydrogen-caption {
    position: absolute;
    left: 1px;
    bottom: 1px;
    display: flex;
    align-items: center;
    gap: 12px;
    width: calc(100% - 1px);
    max-width: fit-content;
    padding: 5px 10px;
    background: #ffffff;
}

.ca-hydrogen-caption-mark {
    position: relative;
    flex: 0 0 54px;
    width: 54px;
    height: 20px;
}

.ca-hydrogen-caption-mark::before,
.ca-hydrogen-caption-mark::after {
    content: "";
    position: absolute;
    left: 0;
    height: 5px;
    background: linear-gradient(90deg, #1ea7e8 0%, #245fbe 45%, #a12b8f 100%);
}

.ca-hydrogen-caption-mark::before {
    top: 2px;
    width: 30px;
}

.ca-hydrogen-caption-mark::after {
    top: 11px;
    width: 48px;
}

.ca-hydrogen-caption p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #111111;
}
/* climate action page css hydrogen end */

/* climate action page css strategy v2 start */
.ca-strategy-block {
    background: transparent;
}

.ca-strategy-block > h3:first-child {
    margin: 0 0 10px;
    color: #a12b8f;
    font-size: 22px;
}

.ca-strategy-block > p:first-of-type {
    margin: 0;
    color: #111111;
}

.ca-strategy-badge {
    text-align: center;
}

.ca-strategy-badge h4 {
    display: inline-block;
    margin: 0;
    padding: 10px 26px;
    background: #06b36f;
    box-shadow: 5px 5px 0 #0b7e84;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.1;
    font-weight: 600;
    color: #ffffff;
    z-index: 2;
}

.ca-strategy-intro {
    margin: 16px auto 0;
    text-align: center;
    color: #111111;
}
.op-stat-label span{
    display: block;
}
.ca-strategy-panel {
    margin-top: 18px;
    border-top: 1px solid #57d4c5;
    border-right: 1px solid #57d4c5;
    border-bottom: 4px solid #0b7e84;
    background: transparent;
}

.ca-strategy-panel-title {
    margin: 0;
    padding: 10px 18px;
    border-bottom: 1px solid #57d4c5;
}
.cr-mhcu-section {
    padding: 48px 0 0;
}
.main-mh {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}
.cr-mhcu-copy h2 {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.18;
    font-weight: 700;
    color: #a334a8;
}

.cr-mhcu-copy h3,
.cr-mhcu-stats h3 {
    margin: 16px 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}


.ca-strategy-col {
    height: 100%;
    padding: 14px 16px 16px;
    border-right: 1px solid #c6c6c6;
}

.ca-strategy-fourcol > div:last-child .ca-strategy-col {
    border-right: 0;
}

.ca-strategy-col h5 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 700;
    color: #0072ce;
}

.ca-strategy-col p {
    margin: 0;
    color: #111111;
}


.ca-strategy-subpanel {
    height: 100%;
}

.ca-strategy-subpanel .ca-strategy-panel-title {
    border-top: 1px solid #57d4c5;
    border-right: 1px solid #57d4c5;
    border-bottom: 4px solid #0b7e84;
}

.ca-strategy-list {
    margin: 14px 0 0;
    padding: 0;
    list-style: none;
}

.ca-strategy-list li {
    position: relative;
    margin: 0 0 12px;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}

.ca-strategy-list li:last-child {
    margin-bottom: 0;
}

.ca-strategy-list li::before {
    content: "";
    position: absolute;
    top: 8px;
    left: 0;
    width: 6px;
    height: 6px;
    background: #17b9f2;
}

.ca-strategy-subpanel .ca-more-link {
    margin-top: 12px;
}


.ca-strategy-badge--water {
    margin-bottom: 0;
}

.ca-strategy-panel--water {
    margin-top: 18px;
}


.ca-strategy-water-item {
    height: 100%;
    padding: 14px 16px;
    border-right: 1px solid #c6c6c6;
}

.ca-strategy-water-grid > div:last-child .ca-strategy-water-item {
    border-right: 0;
}

.ca-strategy-water-item p {
    margin: 0;
    text-align: center;
    color: #111111;
}
/* climate action page css strategy v2 end */

/* climate action page css metrics start */
.ca-metrics-row {
    margin-top: 34px;
}

.ca-metrics-block > h3 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #a12b8f;
}

.ca-metrics-block > h4,
.ca-metrics-subtitle {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.24;
    font-weight: 700;
    color: #111111;
}


.ca-metrics-plan-head h5 {
    margin: 0;
    padding: 9px 12px;
    background: #06b36f;
    box-shadow: 5px 5px 0 #0b7e84;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.1;
    font-weight: 600;
    text-align: center;
    color: #ffffff;
}


.ca-metrics-plan-grid--single {
    margin-top: 10px;
    margin-bottom: 20px;
}

.ca-metrics-plan-item {
    height: 100%;
    padding: 12px 14px 10px;
    border-right: 1px solid #bfbfbf;
    border-bottom: 4px solid #c8c8c8;
}




.ca-metrics-plan-item h6 {
    margin: 0 0 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
    color: #111111;
}

.ca-metrics-plan-item p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.28;
    text-align: center;
    color: #111111;
}

.ca-metrics-subtitle {
    margin-top: 26px;
}


.ca-metrics-goal-card {
    text-align: center;
}

.ca-metrics-goal-card img {
    margin-bottom: 10px;
}

.ca-metrics-block > p {
    margin: 0 0 20px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.38;
    color: #111111;
}


.ca-metrics-progress-card {
    height: 100%;
}

.ca-metrics-progress-card.cargbgghp {
    padding: 12px;
    background: #edf8f0;
}

.ca-metrics-progress-card h5 {
    margin: 0 0 5px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.22;
    font-weight: 700;
    color: #111111;
}

.ca-metrics-progress-card--bars > p {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.32;
    color: #111111;
    padding-bottom: 15px;
}

.ca-metrics-table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
    margin-top: 20px;
}

.ca-metrics-table th,
.ca-metrics-table td {
    padding: 10px 12px;
    border-bottom: 2px solid #20c4a4;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    text-align: left;
    color: #111111;
}

.ca-metrics-table thead th {
    font-weight: 700;
    border-top: 2px solid #20c4a4;
}

.ca-metrics-bars {
    border-top: 1px solid #bbbbbb;
}

.ca-metrics-bar-row {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) 34px;
    align-items: center;
    gap: 10px;
    padding: 7px 0;
    border-bottom: 1px solid #bbbbbb;
}

.ca-metrics-bar-row span,
.ca-metrics-bar-row strong {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #111111;
}

.ca-metrics-bar-row strong {
    font-weight: 700;
    text-align: right;
}

.ca-metrics-bar-track {
    height: 28px;
    background: #cae8d3;
    overflow: hidden;
}

.ca-metrics-bar-track i {
    display: block;
    height: 100%;
    background: #06b36f;
}

.ca-metrics-note {
    margin-top: 2px;
}
/* climate action page css metrics end */

/* climate action page css metrics compact override start */


.ca-metrics-plan-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    vertical-align: top;
}

.ca-metrics-plan-head h5 {
    display: inline-block;
    min-width: 100%;
    padding: 8px 10px;
    font-size: 16px;
    line-height: 1.05;
    margin-bottom: 10px;
}



.ca-metrics-plan-item {
    height: 100%;
    padding: 10px 12px 8px;
    border-right: 3px solid #c9c9c9;
    border-bottom: 3px solid #c8c8c8;
}

.ca-metrics-plan-grid .col-md-12 .ca-metrics-plan-item {
    border-bottom: 0;
    box-shadow: 0 4px  0 #c8c8c8;
}

.ca-metrics-plan-grid .col-md-6:last-child .ca-metrics-plan-item {
    border-right: 4px solid #c9c9c9;
}

.ca-metrics-plan-item h6 {
    margin-bottom: 4px;
    font-size: 16px;
    line-height: 1.15;
}

.ca-metrics-plan-item p {
    font-size: 16px;
    line-height: 1.22;
}

.ca-metrics-plan-card--short .ca-metrics-plan-item,
.ca-metrics-plan-card--medium .ca-metrics-plan-item,
.ca-metrics-plan-card--long .ca-metrics-plan-item {
    min-height: 110px;
}
/* climate action page css metrics compact override end */

/* climate action page css metrics subtitle accent start */
.ca-metrics-subtitle--accent {
    font-size: 22px;
    color: #a12b8f;
}
/* climate action page css metrics subtitle accent end */

/* climate action page css scope3 start */
.ca-scope3-block {
    margin-top: 26px;
}

.ca-scope3-block h4 {
    margin: 0 0 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
    color: #0072ce;
}

.ca-scope3-block > p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
}

.ca-scope3-table-wrap {
    background: #edf8f0;
    padding: 0;
}

.ca-scope3-table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
}

.ca-scope3-table th,
.ca-scope3-table td {
    padding: 6px 10px;
    border-bottom: 1px solid #c2d3cc;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    color: #111111;
    vertical-align: top;
}

.ca-scope3-table thead th {
    padding: 8px 10px;
    background: #06b36f;
    font-weight: 600;
    text-align: left;
    color: #ffffff;
    border-bottom: 0;
}

.ca-scope3-table tbody tr:last-child td {
    border-bottom: 2px solid #20c4a4;
}

.ca-scope3-table tbody td:nth-child(1),
.ca-scope3-table tbody td:nth-child(3) {
    background: #e7f2ea;
    width: 40%;
}

.ca-scope3-table tbody td:nth-child(2),
.ca-scope3-table tbody td:nth-child(4) {
    width: 10%;
    white-space: nowrap;
}

.ca-scope3-table strong {
    font-weight: 600;
}
/* climate action page css scope3 end */

/* climate action page css non ghg start */
.ca-non-ghg-block {
    margin-top: 26px;
}


.ca-non-ghg-copy h4 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.ca-non-ghg-copy p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
}

.ca-non-ghg-copy p:last-child {
    margin-bottom: 0;
}

.ca-non-ghg-copy--side {
    max-width: 230px;
}

.ca-non-ghg-note {
    margin: 12px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #444444;
}

.ca-non-ghg-table-wrap {
    max-width: 560px;
    margin-top: 18px;
}

.ca-non-ghg-table-wrap h5 {
    margin: 0 0 8px;
    color: #111111;
    
    font-family: 'Noto Sans', sans-serif;
}

.cr-mhcu-copy p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}

.cr-mhcu-stats {
    display: grid;
    gap: 16px;
    align-content: start;
}
.cr-mhcu-stat{
    margin-bottom: 20px;

}
.cr-mhcu-stat .op-stat-value {
    margin: 0 0 4px;
    line-height: 1;
}

.cr-mhcu-stat .op-stat-value .count {
    display: inline-block;
    font-size: 28px;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.cr-mhcu-stat .op-stat-label {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.36;
    color: #111111;
}

.cr-mhcu-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

@media (max-width: 991.98px) {
    .cr-mhcu-stats {
        gap: 12px;
    }
}

.cr-csr-program-section {
    padding: 18px 0 0;
}

.cr-csr-program-image {
    width: 100%;
    overflow: hidden;
}

.cr-csr-program-image img {
    display: block;
    width: 100%;
    height: auto;
}

.cr-csr-program-copy {
    padding-top: 10px;
}

.cr-csr-program-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.18;
    font-weight: 700;
    color: #a334a8;
}
.rsc-image-frame {
    /* max-width: 800px; */
    margin: auto;
}
.cr-csr-program-text h3,
.cr-csr-program-stat h3 {
    margin: 16px 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.ca-non-ghg-table {
    width: 100%;
    border-collapse: collapse;
    background: #edf8f0;
}

.ca-non-ghg-table th,
.ca-non-ghg-table td {
    padding: 8px 10px;
    border-bottom: 2px solid #20c4a4;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    text-align: center;
    color: #111111;
}

.ca-non-ghg-table thead th {
    font-weight: 700;
}

.ca-non-ghg-table th:first-child,
.ca-non-ghg-table td:first-child {
    text-align: left;
}
/* climate action page css non ghg end */

/* climate action page css strategy compact override start */
.ca-strategy-block {
    background: #edf8f0;
    padding: 10px 14px 18px;
}

.ca-strategy-decarbon-wrap {
    margin-top: 18px;
}

.ca-strategy-decarbon-secondary {
    margin-top: 14px;
}

.ca-strategy-block .ca-strategy-badge {
    position: relative;
    margin-top: 0;
    text-align: center;
}

.ca-strategy-block .ca-strategy-badge::before,
.ca-strategy-block .ca-strategy-badge::after {
    content: "";
    position: absolute;
    top: 50%;
    width: calc(50% - 95px);
    border-top: 2px solid #57d4c5;
    transform: translateY(-50%);
}

.ca-strategy-block .ca-strategy-badge::before {
    left: 0;
}

.ca-strategy-block .ca-strategy-badge::after {
    right: 0;
}

.ca-strategy-block .ca-strategy-badge h4 {
    position: relative;
    z-index: 1;
}

.ca-strategy-block .ca-strategy-intro {
    max-width: 950px;
    margin: 18px auto 0;
    font-size: 16px;
    line-height: 1.35;
}

.ca-strategy-block .ca-strategy-panel {
    margin-top: 16px;
    border-top: 1px solid #57d4c5;
    border-right: 1px solid #57d4c5;
    border-bottom: 4px solid #0b7e84;
    background: transparent;
}

.ca-strategy-block .ca-strategy-panel-title {
    padding: 8px 16px;
    font-size: 16px;
    border-bottom: 4px solid #0b7e84;
    background: #ffffff;
    font-family: 'Noto Sans', sans-serif;
}



.ca-strategy-block .ca-strategy-col {
    padding: 12px 14px 16px;
    background: transparent;
}

.ca-strategy-block .ca-strategy-col h5 {
    font-size: 16px;
    line-height: 1.2;
    color: #0072ce;
}

.ca-strategy-block .ca-strategy-col p {
    font-size: 16px;
    line-height: 1.34;
}



.ca-strategy-block .ca-strategy-subpanel .ca-strategy-panel-title {
    background: #ffffff;
    border-top: 0;
    border-left: 0;
}

.ca-strategy-block .ca-strategy-subpanel {
    padding-top: 0;
}

.ca-strategy-block .ca-strategy-list {
    margin-top: 12px;
}

.ca-strategy-block .ca-strategy-list li {
    font-size: 16px;
    line-height: 1.34;
}

.ca-strategy-block .ca-strategy-subpanel .ca-more-link {
    margin-top: 10px;
}

.ca-strategy-block .ca-strategy-panel--water {
    background: transparent;
}

.row.ca-strategy-water-grid {
    background: #ffffff;
}
/* climate action page css strategy compact override end */

/* energy management page css start */
.em-hero-copy {
    position: relative;
    z-index: 2;
    margin-right: -150px;
    padding: 16px 14px;
    background: #eef8f2;
}
.em-hero-goals-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}
.em-hero-goals-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.em-hero-goals-list li {
    position: relative;
    margin: 0 0 14px;
    padding-left: 20px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 600;
    color: transparent;
    background: linear-gradient(225deg, #0c7f8d 0%, #07b36f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.cr-csr-program-text p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
    max-width: 100%;
}

.cr-csr-program-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
    padding-top: 8px;
}

.cr-csr-program-stat .op-stat-value {
    margin-bottom: 4px;
    line-height: 1;
}

.cr-csr-program-stat .op-stat-value .count {
    display: inline-block;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 28px;
    font-weight: 700;
}

.cr-csr-program-stat .op-stat-unit {
    font-family: 'Noto Sans', sans-serif;
    font-size: 28px;
    line-height: 1;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.em-hero-goals-list li:last-child {
    margin-bottom: 0;
}
.em-hero-goals-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.6em;
    width: 14px;
    height: 3px;
    background: linear-gradient(180deg, #0c7f8d 0%, #07b36f 100%);
}
.em-hero-media {
    position: relative;
}
.em-hero-caption {
    position: absolute;
    right: 1px;
    bottom: 1px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 16px;
    max-width: calc(100% - 1px);
    padding: 5px 10px;
    background: #ffffff;
}
.em-hero-caption-mark {
    position: relative;
    flex: 0 0 54px;
    width: 54px;
    height: 20px;
}
.em-hero-caption-mark::before,
.em-hero-caption-mark::after {
    content: "";
    position: absolute;
    left: 0;
    height: 5px;
    background: linear-gradient(90deg, #1ea7e8 0%, #245fbe 45%, #a12b8f 100%);
}
.em-hero-caption-mark::before {
    top: 2px;
    width: 30px;
}
.em-hero-caption-mark::after {
    top: 11px;
    width: 48px;
}
.em-hero-caption p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #111111;
}

/* energy management content start */
.em-content-section {
    padding: 50px 0 60px;
    background: #ffffff;
}
.em-content-section .row {
    row-gap: 30px;
}
.em-intro-copy p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444;
}
.em-intro-copy p:last-child {
    margin-bottom: 0;
}
.em-fms-panel {
    padding: 0 18px 20px;
    border-left: 2px solid #57d4c5;
    border-bottom: 2px solid #57d4c5;
    background: #ffffff;
}
.em-fms-panel h3 {
    position: relative;
    margin: 0 0 16px;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.1;
    font-weight: 700;
    text-transform: uppercase;
    color: #0c7f8d;
}
.em-fms-panel h3 span {
    color: #07b36f;
    display: block;
}
.em-fms-panel h3::before {
    content: "";
    position: absolute;
    left: 0;
    top: 1px;
    width: 4px;
    height: calc(100% - 2px);
    background: linear-gradient(180deg, #0c7f8d 0%, #07b36f 100%);
}
.em-fms-grid {
    row-gap: 4px;
}
.em-fms-panel p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}
.em-fms-panel p:last-child {
    margin-bottom: 0;
}
.em-renewable-block h3 {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #111111;
}
.em-renewable-block > p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}
.em-renewable-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.em-renewable-list li {
    position: relative;
    margin: 0 0 12px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}
.em-renewable-list li:last-child {
    margin-bottom: 0;
}
.em-renewable-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    background: #25b7e8;
}
.em-scaling-box {
    padding: 20px 22px;
    border: 1px solid #5fd0c3;
    background: #ffffff;
    box-shadow: 7px 7px 10px rgba(48, 221, 179, 0.24);
}
.em-scaling-box h4 {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
    color: #0c7f8d;
}
.em-scaling-box p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    font-weight: 600;
    color: #07b36f;
}

.cr-csr-program-stat .op-stat-label {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.36;
    color: #111111;
}

.cr-csr-program-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

@media (max-width: 991.98px) {
    .cr-csr-program-stats {
        grid-template-columns: 1fr;
    }

    .cr-csr-program-stat .op-stat-unit {
        font-size: 24px;
    }
}

.cr-healthcare-section,
.cr-story-section {
    padding: 24px 0 0;
}

.cr-healthcare-frame,
.cr-story-frame {
    position: relative;
    border-top: 2px solid #1b7cc4;
    border-right: 2px solid #1b7cc4;
    border-bottom: 2px solid #1b7cc4;
    padding: 18px 18px 16px;
    background: #ffffff;
}

.cr-healthcare-frame::before,
.cr-story-frame::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 2px;
    height: 44px;
    background: #1b7cc4;
}

.cr-healthcare-title,
.cr-story-title {
    position: relative;
    margin: 0 0 14px;
    padding-left: 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 21px;
    line-height: 1.15;
    font-weight: 800;
    color: #1b7cc4;
    text-transform: uppercase;
}

.cr-healthcare-title::before,
.cr-story-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.15em;
    width: 4px;
    height: 1.1em;
    background: #1b7cc4;
}

.cr-healthcare-copy,
.cr-story-copy {
    font-family: 'Noto Sans', sans-serif;
    color: #111111;
}

.cr-healthcare-copy p,
.cr-story-copy p {
    margin: 0 0 12px;
    font-size: 16px;
    line-height: 1.45;
}

.cr-story-copy h3 {
    margin: 6px 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-story-image {
    width: 100%;
    overflow: hidden;
}

.cr-story-image img {
    display: block;
    width: 100%;
    height: auto;
}

@media (max-width: 991.98px) {
    .cr-healthcare-frame,
    .cr-story-frame {
        padding: 16px 14px 14px;
    }

    .cr-healthcare-title,
    .cr-story-title {
        font-size: 20px;
    }
}

.cr-csr-latest-section {
    padding: 30px 0 0;
}

.cr-csr-latest-block {
    padding-top: 2px;
}

.cr-csr-latest-title {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.18;
    font-weight: 700;
    color: #a334a8;
}

.cr-csr-latest-copy h3,
.cr-csr-latest-stat h3 {
    margin: 16px 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-csr-latest-copy p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}


.cr-csr-latest-stat .op-stat-value {
    margin-bottom: 4px;
    line-height: 1;
}

.cr-csr-latest-stat .op-stat-value .count,
.cr-csr-latest-stat .op-stat-unit {
    display: inline-block;
    font-size: 28px;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* energy management integrate + stats + intensity start */
.em-integrate-panel {
    padding: 0 18px 20px;
    border-left: 2px solid #57d4c5;
    border-bottom: 2px solid #57d4c5;
}
.em-integrate-panel h3 {
    position: relative;
    margin: 0 0 18px;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.1;
    font-weight: 700;
    text-transform: uppercase;
    color: #0c7f8d;
}
.em-integrate-panel h3 span {
    display: block;
    color: #07b36f;
}
.em-integrate-panel h3::before {
    content: "";
    position: absolute;
    left: 0;
    top: 1px;
    width: 4px;
    height: calc(100% - 2px);
    background: linear-gradient(180deg, #0c7f8d 0%, #07b36f 100%);
}
.em-integrate-grid {
    row-gap: 18px;
}
.em-integrate-grid p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444;
}
.em-integrate-grid p:last-child {
    margin-bottom: 0;
}
.em-integrate-grid strong {
    color: #111111;
}
.em-stats-box {
    padding: 24px 22px;
    background: #eef8f2;
}
.em-stat {
    margin-bottom: 26px;
}
.em-stat-num {
    display: block;
    margin-bottom: 5px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1.5;
    font-weight: 600;
    color: transparent;
    background: linear-gradient(180deg, #0c7f8d 0%, #07b36f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.em-stat p {
    position: relative;
    margin: 0;
    padding-left: 22px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
}
.em-stat p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 14px;
    height: 3px;
    background: #07b36f;
}
.em-stat-highlight {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.3;
    font-weight: 700;
    color: #07b36f;
}
.cr-csr-latest-stat .op-stat-label {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.36;
    color: #111111;
}

.cr-csr-latest-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

@media (max-width: 991.98px) {
    .cr-csr-latest-stats {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

.cr-major-section--women-skilling .cr-major-card {
    bottom: 18px;
    width: 42%;
    min-width: 360px;
}

.cr-major-section--women-skilling .cr-major-tag {
    margin: -36px 0 12px auto;
    max-width: 100%;
    white-space: normal;
    line-height: 1.18;
}

.cr-major-card--lower {
    background: #ffffff;
}

.cr-women-skilling-section {
    padding: 30px 0 0;
}

.cr-women-skilling-frame {
    padding-top: 2px;
}

.cr-women-skilling-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.18;
    font-weight: 700;
    color: #a334a8;
}

.cr-women-skilling-copy p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.cr-women-skilling-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    align-content: start;
}

.cr-women-skilling-stat h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-women-skilling-stat .op-stat-value {
    margin: 0 0 4px;
    line-height: 1;
}

.cr-women-skilling-stat .op-stat-value .count {
    display: inline-block;
    font-size: 28px;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.em-stats-note {
    margin: 12px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.35;
    color: #444;
}
.em-stats-note sup {
    margin-right: 2px;
}
.em-intensity-card h4 {
    margin: 0 0 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}
.em-intensity-card h4 span {
    font-size: 15px;
    font-weight: 400;
    color: #555555;
}
.em-intensity-card h4 + .em-intensity-sub {
    margin-bottom: 14px;
}
.em-intensity-sub {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.3;
    color: #444;
}
.em-intensity-graph {
    margin-bottom: 12px;
}
.em-intensity-graph img {
    width: 100%;
    display: block;
}
.em-intensity-card > p {
    margin: 0 0 14px;
}

.cr-women-skilling-stat .op-stat-label {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.36;
    color: #111111;
}

.cr-women-skilling-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

@media (max-width: 991.98px) {
    .cr-major-section--women-skilling .cr-major-card {
        width: 100%;
        min-width: 0;
        bottom: 12px;
    }

    .cr-women-skilling-stats {
        gap: 16px;
    }
}

.cr-story-frame--stacked {
    padding-bottom: 16px;
}

.cr-story-image--bottom {
    margin-top: 18px;
}

.cr-story-image--bottom img {
    width: 100%;
    height: auto;
    display: block;
}

.cr-community-section {
    padding: 30px 0 0;
}

.cr-community-frame {
    position: relative;
    padding-top: 2px;
}

.cr-community-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.18;
    font-weight: 700;
    color: #a334a8;
}

.cr-community-copy p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.cr-community-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.cr-community-list li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.cr-community-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.7em;
    width: 8px;
    height: 8px;
    background: #14b9e3;
}

.cr-community-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    padding-top: 8px;
}

.cr-community-stat h3 {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-community-stat .op-stat-value {
    margin: 0 0 4px;
    line-height: 1;
}

.cr-community-stat .op-stat-value .count {
    display: inline-block;
    font-size: 28px;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.cr-community-stat .op-stat-label {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.36;
    color: #111111;
}

.cr-community-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

@media (max-width: 991.98px) {
    .cr-community-stats {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

.cr-mangal-seva-section {
    padding: 30px 0 0;
}

.cr-mangal-seva-frame {
    position: relative;
    padding: 18px 18px 16px;
    border-top: 2px solid #14b9e3;
    border-right: 2px solid #14b9e3;
    border-bottom: 2px solid #14b9e3;
    background: #ffffff;
}

.cr-mangal-seva-frame::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 2px;
    height: 44px;
    background: #14b9e3;
}

.cr-mangal-seva-title {
    position: relative;
    margin: 0 0 14px;
    padding-left: 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.12;
    font-weight: 800;
    color: #197ab8;
    text-transform: uppercase;
}

.cr-mangal-seva-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.15em;
    width: 4px;
    height: 1.1em;
    background: #197ab8;
}

.cr-mangal-seva-copy p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.cr-mangal-seva-image {
    margin-top: 8px;
}

.cr-mangal-seva-image img {
    display: block;
    width: 100%;
    height: auto;
}

.cr-major-section--climate .cr-major-card {
    bottom: 0px;
    width: 36%;
    min-width: 414px;
}

.cr-major-section--climate .cr-major-tag {
    margin: -36px 0 12px auto;
}

.cr-major-card--climate {
    background: #d9eaf6;
}

.cr-major-section--sports .cr-major-card {
    bottom: 72px;
    width: 32%;
    min-width: 390px;
}

.cr-major-section--sports .cr-major-tag {
    margin: -36px 0 12px auto;
}

/* Garv Hai sports talent section */
.cr-garv-section {
    padding: 30px 0 0;
}

.cr-garv-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.18;
    font-weight: 700;
    color: #a334a8;
}

.cr-garv-copy h3,
.cr-garv-stat h3 {
    margin: 0 0 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.15;
    font-weight: 700;
    color: #111111;
}

.cr-garv-copy p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.em-intensity-card .ca-more-link {
    margin-bottom: 14px;
}
.em-intensity-card h4 + .em-energy-table-wrap {
    margin-top: 12px;
}
.em-energy-table-wrap {
    margin-top: 12px;
    overflow-x: auto;
}
.em-energy-table {
    width: 100%;
    border-collapse: collapse;
    border-bottom: 2px solid #12a75c;
}
.em-energy-table thead th {
    padding: 5px 16px;
    background: #12a75c;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 600;
    color: #ffffff;
    text-align: left;
    border-top: 2px solid #12a75c;
    border-bottom: 2px solid #12a75c;
}
.em-energy-table thead th:first-child {
    background: transparent;
    color: #111111;
}
.em-energy-table thead th + th {
    text-align: right;
}
.em-energy-table tbody td {
    padding: 10px 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
    background: #ffffff;
    border-bottom: 1px solid #dce6e0;
}
.em-energy-table tbody td + td {
    background: #eaf6ee;
    text-align: right;
    white-space: nowrap;
}
.em-energy-title {
    margin: 15px 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
    color: #444;
}
.em-energy-title span {
    font-size: 18px;
    font-weight: 400;
    color: #444444;
}
.em-energy-title + .em-energy-table-wrap {
    margin-top: 12px;
}

/* energy management business-wise targets table start */
.em-targets-title {
    margin: 0 0 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
    color: #444;
}
.em-targets-table-wrap {
    overflow-x: auto;
}
.em-targets-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}
.em-targets-table thead th {
    padding: 5px 16px;
    background: #12a75c;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 600;
    color: #ffffff;
    text-align: left;
}
.em-targets-table tbody td {
    position: relative;
    padding: 10px 40px 22px 0;
    vertical-align: top;
}
.em-targets-table tbody td:nth-child(2),
.em-targets-table tbody td:nth-child(3) {
    padding-top: 24px;
}
.em-targets-table tbody td:nth-child(2)::after,
.em-targets-table tbody td:nth-child(3)::after {
    content: "";
    position: absolute;
    left: 0;
    right: 40px;
    bottom: 0;
    border-top: 1px solid #b7b7b7;
}
.em-targets-table tbody td:first-child {
    width: 20%;
    padding: 10px 30px 22px 0;
}
.em-targets-table tbody td:nth-child(2) {
    width: 40%;
    vertical-align: middle;
}
.em-targets-table tbody td:nth-child(3) {
    width: 40%;
    vertical-align: middle;
}
.em-target-name {
    display: block;
    padding: 18px 14px;
    background: #e9f7ef;
    box-shadow: 5px 6px 12px rgba(6, 179, 111, 0.20);
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #1a1a1a;
}
.em-target-text {
    position: relative;
    display: block;
    padding-left: 22px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #444;
}
.em-target-text::before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 8px solid #06b36f;
}
/* energy management business-wise targets table end */

/* energy management upstream/downstream start */
.em-updown-block h4 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
    color: #444;
}
.em-updown-intro {
    margin: 0 0 22px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #444444;
}
.em-updown-media {
    position: relative;
}
.em-updown-media img {
    width: 100%;
    display: block;
}
.em-updown-caption {
    position: absolute;
    left: 1px;
    bottom: 1px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 16px;
    max-width: calc(100% - 1px);
    padding: 8px 16px;
    background: #ffffff;
}
.em-updown-caption-mark {
    position: relative;
    flex: 0 0 54px;
    width: 54px;
    height: 20px;
}
.em-updown-caption-mark::before,
.em-updown-caption-mark::after {
    content: "";
    position: absolute;
    left: 0;
    height: 5px;
    background: linear-gradient(90deg, #1ea7e8 0%, #245fbe 45%, #a12b8f 100%);
}
.em-updown-caption-mark::before {
    top: 2px;
    width: 30px;
}
.em-updown-caption-mark::after {
    top: 11px;
    width: 48px;
}
.em-updown-caption p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #111111;
}
/* energy management upstream/downstream end */
/* energy management integrate + stats + intensity end */
/* energy management content end */
/* energy management page css end */

/* water stewardship page css start */
.synwater .ws-hero-copy {
    position: relative;
    z-index: 2;
    margin-right: -150px;
    padding: 16px 14px;
    background: #eef8f2;
}
.synwater .ws-hero-goals-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
}

.cr-garv-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    margin: 6px 0 18px;
}

.cr-garv-stat .op-stat-value {
    margin-bottom: 4px;
}

.cr-garv-stat .op-stat-label {
    max-width: 320px;
}

.cr-garv-table-wrap {
    overflow-x: auto;
}

.cr-garv-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    min-width: 0;
}

.cr-garv-table thead th {
    background: #14b9e3;
    color: #ffffff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    font-weight: 700;
    text-align: left;
    padding: 10px 12px;
    line-height: 1.2;
}

.cr-garv-table tbody td {
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.35;
    color: #111111;
    padding: 8px 12px;
    border-bottom: 1px solid #d9d9d9;
    vertical-align: top;
    word-break: break-word;
}

.cr-garv-table tbody tr:last-child td {
    border-bottom: 2px solid #14b9e3;
}

.cr-garv-table thead th + th,
.cr-garv-table tbody td + td {
    border-left: 1px solid #d9d9d9;
}

.cr-garv-table thead th:nth-child(1),
.cr-garv-table tbody td:nth-child(1) { width: 28%; }
.cr-garv-table thead th:nth-child(2),
.cr-garv-table tbody td:nth-child(2) { width: 12%; }
.cr-garv-table thead th:nth-child(3),
.cr-garv-table tbody td:nth-child(3) { width: 14%; }
.cr-garv-table thead th:nth-child(4),
.cr-garv-table tbody td:nth-child(4) { width: 18%; }
.cr-garv-table thead th:nth-child(5),
.cr-garv-table tbody td:nth-child(5) { width: 28%; }

.cr-garv-image-section {
    padding: 24px 0 0;
}

.cr-garv-image-frame img {
    display: block;
    width: 100%;
    height: auto;
}

/* taranga hills section start */
.cr-taranga-section {
    padding: 30px 0 0;
}

.cr-taranga-frame {
    position: relative;
    padding: 18px 18px 16px 0;
    background: #ffffff;
}

.cr-taranga-title {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.12;
    font-weight: 800;
    color: #a334a8;
    text-align: left;
}

.cr-taranga-copy h3 {
    margin: 16px 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-taranga-copy p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.cr-taranga-list {
    margin: 0 0 12px;
    padding: 0;
    list-style: none;
}

.cr-taranga-list li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.cr-taranga-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.7em;
    width: 7px;
    height: 7px;
    background: #14b9e3;
}

.cr-taranga-stats {
    padding-top: 10px;
}

.cr-taranga-stat {
    display: block;
}

.cr-taranga-stat-item {
    padding-bottom: 16px;
}



.cr-taranga-stat h3 {
    margin: 0 0 2px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.synwater .ws-hero-goals-text {
    position: relative;
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 600;
    color: transparent;
    background: linear-gradient(225deg, #0c7f8d 0%, #07b36f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.cr-taranga-stat-item .op-stat-value {
    margin: 0 0 4px;
    line-height: 1;
}

.cr-taranga-stat-item .op-stat-value .count,
.cr-taranga-stat-item .op-stat-unit {
    display: inline-block;
    font-size: 28px;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* water stewardship content start */
.ws-content-section {
    padding: 50px 0 60px;
    background: #ffffff;
}
.ws-title-purple {
    margin: 10px 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 600;
    color: #a12b8f;
}
.ws-title-purple.ws-title--black { color: #111111; }
.ws-title-dark {
    margin: 26px 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
    color: #444444;
}
.ws-title-blue {
    margin: 10px 0 5px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 600;
    color: #0d7fc0;
}
.ws-title-blue a {
    color: inherit;
    text-decoration: none;
}
.ws-title-blue a:hover {
    text-decoration: underline;
}
.ws-copy{
    margin-top: 20px;
}
.ws-copy p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444444;
}
.ws-list {
    margin: 0 0 14px;
    padding: 0;
    list-style: none;
}
.ws-list li {
    position: relative;
    margin: 0 0 14px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444444;
}
.ws-list li:last-child {
    margin-bottom: 0;
}
.ws-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 7px;
    height: 7px;
    background: #25b7e8;
}
.ws-lead {
    font-size: 16px;
    color: #444444;
}
p.ws-stat-num {
    margin: 4px 0 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1.05;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(180deg, #0c7f8d 0%, #07b36f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
p.ws-stat-num span {
    font-weight: 700;
}
.ws-stat-note {
    position: relative;
    margin: 0 0 18px;
    padding-left: 22px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 600;
    color: #444444;
}
.ws-stat-note::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 14px;
    height: 3px;
    background: linear-gradient(90deg, #0c7f8d 0%, #07b36f 100%);
}
.ws-stat-note--lg {
    font-size: 22px;
    line-height: 1.25;
    color: transparent;
    background: linear-gradient(225deg, #0c7f8d 0%, #07b36f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.ws-stat-note--lg::before {
    top: 13px;
}
.ws-stat-note--green {
    color: transparent;
    background: linear-gradient(90deg, #0c7f8d 0%, #07b36f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.ws-initiatives {
    margin-top: 20px;
}
.ws-initiatives-row {
    margin-top: 10px;
    row-gap: 20px;
}
.ws-initiative {
    position: relative;
}
.ws-initiative-graph {
    width: 100%;
    display: block;
}
.ws-initiatives .ca-more-link {
    margin-top: 18px;
}
.ws-media {
    position: relative;
    margin-top: 10px;
}
.ws-media img {
    width: 100%;
    display: block;
}
.ws-caption {
    position: absolute;
    top: 1px;
    left: 1px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 16px;
    max-width: calc(100% - 1px);
    padding: 8px 16px;
    background: #ffffff;
}
.ws-caption--br {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
}
.ws-caption-mark {
    position: relative;
    flex: 0 0 54px;
    width: 54px;
    height: 20px;
}
.ws-caption-mark::before,
.ws-caption-mark::after {
    content: "";
    position: absolute;
    left: 0;
    height: 5px;
    background: linear-gradient(90deg, #1ea7e8 0%, #245fbe 45%, #a12b8f 100%);
}
.ws-caption-mark::before {
    top: 2px;
    width: 30px;
}
.ws-caption-mark::after {
    top: 11px;
    width: 48px;
}
.ws-caption p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #111111;
}
.ws-digital-panel {
    margin-top: 34px;
    padding: 6px 0 22px 22px;
    border-left: 2px solid #57d4c5;
    border-bottom: 2px solid #57d4c5;
}
.ws-digital-panel h3 {
    position: relative;
    margin: 0 0 18px;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.1;
    font-weight: 700;
    text-transform: uppercase;
    color: #0c7f8d;
}
.ws-digital-panel h3 span {
    display: block;
    color: #07b36f;
}
.ws-digital-panel h3::before {
    content: "";
    position: absolute;
    left: 0;
    top: 1px;
    width: 4px;
    height: calc(100% - 2px);
    background: linear-gradient(180deg, #0c7f8d 0%, #07b36f 100%);
}
.ws-digital-grid {
    --bs-gutter-x: 40px;
    row-gap: 14px;
}
.ws-digital-grid p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444444;
}
.ws-digital-grid p:last-child {
    margin-bottom: 0;
}

/* water stewardship progress metrics start */
.ws-metrics-title,
.ws-metrics-subtitle {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
    color: #444;
}
.ws-metrics-title span,
.ws-metrics-subtitle span {
    font-size: 16px;
    font-weight: 400;
    color: #444;
}
.ws-metrics-table-wrap {
    overflow-x: auto;
    margin-bottom: 20px;
}
.ws-metrics-table {
    width: 100%;
    border-collapse: collapse;
    border-bottom: 2px solid #12a75c;
}
.ws-metrics-table thead th {
    padding: 11px 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #444;
    text-align: left;
    border-top: 2px solid #12a75c;
    border-bottom: 2px solid #12a75c;
}
.ws-metrics-table thead th + th {
    background: #12a75c;
    color: #fff;
    text-align: right;
}
.ws-metrics-table tbody td {
    padding: 12px 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444;
    background: #ffffff;
    border-bottom: 1px solid #dce6e0;
}
.ws-metrics-table tbody td + td {
    background: #eaf6ee;
    text-align: right;
    white-space: nowrap;
}
.ws-note {
    margin: 10px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.45;
    color: #444;
}
.ws-note strong {
    font-weight: 700;
}
.ws-intensity-block {
    min-height: 100%;
}
.ws-intensity-block .ws-stat-note--lg {
    margin-bottom: 18px;
}
.ws-intensity-sub {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.3;
    color: #444444;
}
.ws-intensity-graph {
    margin-bottom: 20px;
}
.ws-intensity-graph img {
    width: 100%;
    display: block;
}
.ws-metrics-note {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.35;
    color: #444444;
}
.ws-witnessed-note {
    margin-top: 24px;
}
/* water stewardship progress metrics end */

/* nature LEAP cards start */

.ws-leap-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}
/* --- LEAP header: static 3D extruded ribbon tab -------------------------- */
/* Wrapper reserves room for the bright-green left fold and dark bottom face. */
.ws-leap-head {
    position: relative;
    margin: 0 20px 22px 0;
    padding-left: 18px;   /* room for the bright-green left fold */
    padding-bottom: 20px; /* room for the dark 3D bottom face */
}
/* Bright-green LEFT fold (angled corner that "peels" up from the bar) */
.ws-leap-head::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 40px;
    height: 100%;
    background: #12b46f;
    clip-path: polygon(0 26px, 44px 0, 44px 100%, 0 100%);
    z-index: 1;
}
/* Dark-green BOTTOM face (the 3D underside / drop shadow) */
.ws-leap-head::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 0;
    bottom: 0;
    height: 30px;
    background: linear-gradient(180deg, #0e7f4a 0%, #0a3d24 100%);
    clip-path: polygon(24px 0, 100% 0, calc(100% - 22px) 100%, 0 100%);
    z-index: 0;
}
/* Light-green TOP bar carrying the label */
.ws-leap-head-bar {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    margin-left: 18px;
    padding: 12px 18px;
    background: #e6f4ec;
}
.ws-leap-head h4 {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
    text-align: center;
}
/* right-pointing arrow between cards */
.ws-leap-head-arrow {
    position: absolute;
    top: 25px;
    right: -18px;
    z-index: 3;
    width: 0;
    height: 0;
    border-top: 12px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 16px solid #12b46f;
}
/* 4th (last) LEAP card has no following card, so drop its arrow */
.ws-leap-row > .col-lg-3:nth-child(5) .ws-leap-head-arrow {
    display: none;
}
/* product-stewardship LEAP row: show arrow only between adjacent cards */
.ws-prod-row > .col-lg-4 .ws-leap-head-arrow {
    display: none;
}
.ws-prod-row > .col-lg-4:has(+ .col-lg-4) .ws-leap-head-arrow {
    display: block;
}
.ws-leap-body {
    flex: 1 1 auto;
    padding: 18px 16px 20px;
    background: #ffffff;

    box-shadow: 7px 7px 10px rgba(48, 221, 179, 0.24);
}
.ws-leap-body p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.5;
    color: #444444;
}
/* nature LEAP cards end */
/* nature biodiversity approach start */

.ws-bio-approach-title {
    margin: 0 0 20px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
    color: #111111;
    text-align: center;
}
.ws-bio-row {
    row-gap: 20px;
}
.ws-bio-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.ws-bio-card-head {
    padding: 12px 14px;
    background: #00a86b;
    box-shadow: 5px 5px 0 #0b8271;
}
.ws-bio-card-head h5 {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 700;
    color: #ffffff;
    text-align: center;
}
.ws-bio-card-body {
    flex: 1 1 auto;
    padding: 14px;
    margin-top: 10px;
    border-bottom: 3px solid #00a86b;
    border-right: 1px solid #00a86b;
    margin-bottom: 30px;
}
.ws-bio-card-body > p {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.45;
    color: #444444;
}
.ws-bio-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ws-bio-list li {
    position: relative;
    margin: 0 0 8px;
    padding-left: 20px;
}
.cr-taranga-stat-item .op-stat-label {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.36;
    color: #111111;
}

.cr-taranga-stat-item .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

@media (max-width: 991.98px) {
    .cr-taranga-frame {
        padding: 16px 14px 14px;
    }

    .cr-taranga-title {
        font-size: 20px;
    }

    .cr-taranga-stat {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .cr-taranga-stat-item:nth-child(n) {
        grid-column: auto;
    }
}
/* taranga hills section end */

.cr-biodiversity-section {
    padding: 0px 0 0;
}

.cr-biodiversity-frame {
    padding-top: 2px;
}

.cr-biodiversity-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.18;
    font-weight: 700;
    color: #a334a8;
    text-align: left;
}

.cr-biodiversity-list {
    margin: 0 0 28px;
    padding: 0;
    list-style: none;
}

.cr-biodiversity-list li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #4a4a4a;
}
.ws-bio-list li:last-child {
    margin-bottom: 0;
}
.ws-bio-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 7px;
    width: 6px;
    height: 6px;
    background: #0d7fc0;
}
.ws-bio-hierarchy {
    margin-top: 14px;
    max-width: 230px;
}
.ws-bio-hier-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.ws-bio-hier-label {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    color: #444;
}
.ws-bio-hier-mid {
    display: flex;
    justify-content: flex-end;
    padding: 6px 34px 6px 0;
}
.ws-bio-arrow {
    display: inline-block;
    width: 0;
    height: 0;
}
.ws-bio-arrow--right {
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 9px solid #06843f;
}
.ws-bio-arrow--left {
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-right: 9px solid #06843f;
}
.ws-bio-arrow--down {
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 9px solid #06843f;
}
/* nature biodiversity approach end */
/* water stewardship content end */
/* water stewardship page css end */

/* nature pledge box start */
.ws-pledge-box {
    height: 100%;
}
.ws-pledge-head {
    padding: 16px 20px;
    background: #00a86b;
}
.ws-pledge-head h4 {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.3;
    font-weight: 700;
    color: #ffffff;
}
.ws-pledge-body {
    padding: 20px;
    background: #e9f7ef;
}
.ws-pledge-body p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 700;
    color: #0c7f8d;
}

.cr-biodiversity-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.7em;
    width: 7px;
    height: 7px;
    background: #14b9e3;
}

.cr-biodiversity-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px 26px;
}

.cr-biodiversity-stat .op-stat-value {
    margin: 0 0 4px;
    line-height: 1;
}

.cr-biodiversity-stat .op-stat-value .count,
.cr-biodiversity-stat .op-stat-unit {
    display: inline-block;
    font-size: 28px;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}/* nature pledge box end */

/* nature restoration panel start */
.ws-restore-panel {
    position: relative;
    margin-top: 30px;
    padding: 40px 24px 8px;
    border: 2px solid #00a86b;
    background: #e9f7ef;
}
.ws-restore-badge {
    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);
    max-width: calc(100% - 32px);
    padding: 10px 24px;
    background: #00a86b;
}
.ws-restore-badge h4 {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #ffffff;
    text-align: center;
    white-space: nowrap;
}
.ws-restore-grid {
    row-gap: 8px;
}
.ws-restore-stat {
    margin-bottom: 22px;
}
.ws-restore-num {
    margin: 0 0 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #0c7f8d 0%, #07b36f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.cr-biodiversity-stat .op-stat-label {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.36;
    color: #111111;
}

.cr-biodiversity-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

@media (max-width: 991.98px) {
    .cr-biodiversity-stats {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

.cr-csr-final-section {
    padding: 30px 0 0;
}

.cr-csr-final-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    border-left: 1px solid #cfcfcf;
    border-right: 1px solid #cfcfcf;
}

.cr-csr-final-card {
    padding: 0 18px 16px;
}

.cr-csr-final-card + .cr-csr-final-card {
    border-left: 1px solid #cfcfcf;
}

.cr-csr-final-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.15;
    font-weight: 700;
    color: #a334a8;
}

.cr-csr-final-card h3 {
    margin: 16px 0 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}

.cr-csr-final-card p {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.cr-csr-final-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 26px;
    align-items: start;
    margin-top: 8px;
}

.cr-csr-final-stats--single {
    grid-template-columns: 1fr;
}

.cr-csr-final-stat .op-stat-value {
    margin: 0 0 4px;
    line-height: 1;
}

.cr-csr-final-stat .op-stat-value .count,
.cr-csr-final-stat .op-stat-unit {
    display: inline-block;
    font-size: 28px;
    font-weight: 700;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.ws-restore-note {
    position: relative;
    margin: 0;
    padding-left: 20px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 600;
    color: #444;
}
.ws-restore-note::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 12px;
    height: 3px;
    background: linear-gradient(90deg, #0c7f8d 0%, #07b36f 100%);
}
/* nature restoration panel end */

/* nature liquid tree media */
.ws-digital-media {
    margin-top: 22px;
}


.pdcopy {
    background: #bcdcc9;
}
.pdcopy p{
    padding-bottom: 15px;
}

/* product stewardship start */

.ws-portfolio-box {
    height: 100%;
    padding: 20px 22px;
    background: #ffffff;
    border: 1px solid #5fd0c3;
    box-shadow: 7px 7px 10px rgba(48, 221, 179, 0.24);
}
.ws-portfolio-box h4 {
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
    color: #086a64;
}
.ws-portfolio-box p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #00b16b;
    font-weight: 600;
}
.ws-portfolio-box p + p {
    margin-top: 16px;
}
/* product stewardship end */

.cr-csr-final-stat .op-stat-label {
    position: relative;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.36;
    color: #111111;
}

.cr-csr-final-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

.cr-csr-final-wide-image {
    margin-top: 18px;
}

.cr-csr-final-wide-image img {
    display: block;
    width: 100%;
    height: auto;
}

.cr-csr-final-image-pair {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 18px;
}

.cr-csr-final-image-item img {
    display: block;
    width: 100%;
    height: auto;
}

.cr-csr-final-link {
    margin-top: 10px;
    color: #197ab8;
    font-weight: 700;
}

@media (max-width: 991.98px) {
    .cr-csr-final-grid,
    .cr-csr-final-image-pair,
    .cr-csr-final-stats {
        grid-template-columns: 1fr;
    }

    .cr-csr-final-card + .cr-csr-final-card {
        border-left: 0;
        border-top: 1px solid #cfcfcf;
        padding-top: 16px;
        margin-top: 16px;
    }
}

@media (max-width: 991.98px) {
    .cr-mangal-seva-frame {
        padding: 16px 14px 14px;
    }

    .cr-mangal-seva-title {
        font-size: 20px;
    }

    .cr-major-section--climate .cr-major-card {
        width: 100%;
        min-width: 0;
        bottom: 12px;
    }

    .cr-major-section--sports .cr-major-card {
        width: 100%;
        min-width: 0;
        bottom: 12px;
    }

    .cr-garv-stats {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}
.cr-taranga-stats h3{
    margin: 0 0 2px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
    padding-bottom: 25px;
}


/* board of directors profile start */
.bd-section {
    padding: 50px 0 60px;
    background: #ffffff;
}
.bd-profile-head {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    align-items: end;
    padding-bottom: 15px;
}
.bd-profile-photo {
    flex: 0 0 300px;
    max-width: 300px;
}
.bd-profile-photo img {
    width: 100%;
    display: block;
}
.bd-profile-meta {
    flex: 1 1 300px;
    border-bottom: 2px solid #f47920;
    padding-bottom: 10px;
}
.bd-profile-name {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    color: #111111;
}
.bd-profile-age {
    display: inline-block;
    margin-bottom: 12px;
    padding: 4px 12px;
    background: #f47920;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #ffffff;
}
.bd-profile-nat {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #444444;
}
.bd-profile-body p {
    margin: 0 0 12px;
}
.bd-profile-body p:last-child {
    margin-bottom: 0;
}

.syn-hero-row.bodrowhero{
    min-height: auto;
}
.syn-hero-text.bodherotext{
    padding-bottom: 0;
}
/* board of directors profile end */

/* board other directorships table start */
.bd-dir-title {
    margin: 30px 0 10px;
}
.bd-dir-table-wrap {
    overflow-x: auto;
}
.bd-dir-table {
    width: 100%;
    border-collapse: collapse;
}
.bd-dir-table thead th {
    padding: 5px 16px;
    background: #a0522d;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 700;
    color: #ffffff;
    text-align: left;
    border-bottom: 1px solid #b7b7b7;
}
.bd-dir-table thead th:first-child {
    width: 62%;
}
.bd-dir-table tbody td {
    padding: 5px 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #444444;
    border-bottom: 1px solid #d8d8d8;
}
/* board other directorships table end */

/* board disclosure start */
.bd-disclosure {
    margin-top: 24px;
}
.bd-mail {
    color: #444444;
    text-decoration: none;
}
.bd-mail:hover {
    text-decoration: underline;
}
/* board disclosure end */

/* board multiple directors spacing */
.bd-director-row {
    margin-top: 44px;
}

/* board disclosure numbered list */
.bd-disc-list {
    margin: 0 0 12px;
    padding-left: 20px;
}
.bd-disc-list li {
    margin-bottom: 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444444;
}
.bd-disc-list li:last-child {
    margin-bottom: 0;
}


/* Responsible Supply Chain */
.rsc-supplier-section {
    padding: 28px 0 0;
}

.rsc-section-title {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 20px;
    line-height: 1.18;
    font-weight: 700;
    color: #a334a8;
        padding-top: 10px;
}

.rsc-supplier-copy p {
    margin: 14px 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #111111;
}

.rsc-subtitle {
    margin: 18px 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.15;
    font-weight: 700;
    color: #111111;
}

.rsc-table-wrap {
    margin-top: 8px;
}

.rsc-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.rsc-table thead th {
    padding: 10px 12px;
    border-top: 2px solid #27b6df;
    border-bottom: 2px solid #27b6df;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.15;
    font-weight: 700;
    color: #111111;
    text-align: left;
}

.rsc-table thead th.rsc-table-highlight {
    background: #14b9e3;
    color: #ffffff;
    text-align: right;
}

.rsc-table tbody td {
    padding: 9px 12px;
    border-bottom: 1px solid #c7c7c7;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    color: #111111;
    vertical-align: top;
}

.rsc-table tbody td + td {
    border-left: 1px solid #c7c7c7;
    text-align: right;
    font-weight: 700;
}
/* Supplier Details table numbers: not bold */
.rsc-table tbody td.rsc-table-num {
    font-weight: 400;
}

.rsc-table-footnote {
    margin: 8px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.25;
    color: #111111;
}

.rsc-highlight-panel {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.rsc-highlight-box {
    border: 1px solid #27b6df;
    box-shadow: 8px 8px 0 rgba(39, 182, 223, 0.22);
    padding: 22px 20px;
    background: #ffffff;
}

.rsc-highlight-box p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.42;
    color: #14b9e3;
}

.rsc-highlight-copy .rsc-section-title {
    margin-bottom: 10px;
}

.rsc-highlights-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 28px;
    align-items: start;
}

.rsc-highlight-item .op-stat-value {
    margin-bottom: 2px;
    line-height: 1;
}

.rsc-highlight-item .op-stat-value .count,
.rsc-highlight-item .op-stat-unit {
    display: inline-block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
    color: transparent;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.rsc-highlight-item .op-stat-label {
    max-width: 100%;
}

.rsc-highlight-note {
    margin: 48px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.25;
    color: #111111;
}


.rsc-image-section {
    padding: 24px 0 0;
}

.rsc-image-frame {
    text-align: center;
}
.rsc-image-frame img {
    display: block;
    width: 100%;
    /* max-width: 520px; */
    height: auto;
    margin: 0 auto;
}

.rsc-governance-section {
    padding: 26px 0 0;
}

.rsc-governance-stack {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.rsc-governance-card {
    padding: 0;
}

.rsc-governance-card .rsc-section-title {
    margin-bottom: 10px;
}

.rsc-governance-card p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 1.45;
    color: #111111;
}
/* Extra gap above the second Governance paragraph */
.rsc-governance-card p.rsc-gov-para2 {
    margin-top: 16px;
}

.rsc-code-section {
    padding: 0px 0 0;
}

.rsc-code-intro {
    margin: 0 0 16px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}

.rsc-code-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.rsc-code-section .op-proc-head-inner {
    width: calc(100% - 60px);
    min-width: 0;
    max-width: none;
    text-transform: uppercase;
}

.rsc-code-section .op-proc--green .op-proc-head {
    background: linear-gradient(90deg, #00a85a 0%, #00b56b 100%);
}

.rsc-code-section .op-proc--green .op-proc-body {
    -webkit-box-shadow: 2px 4px 0px 0px rgba(0, 168, 90, 0.35);
    -moz-box-shadow: 2px 4px 0px 0px rgba(0, 168, 90, 0.35);
    box-shadow: 2px 4px 0px 0px rgba(0, 168, 90, 0.35);
}

.rsc-code-section .op-proc--blue .op-proc-head {
    background: linear-gradient(90deg, #00b8df 0%, #0098cf 100%);
}

.rsc-code-section .op-proc--blue .op-proc-body {
    -webkit-box-shadow: 2px 4px 0px 0px rgba(0, 184, 223, 0.35);
    -moz-box-shadow: 2px 4px 0px 0px rgba(0, 184, 223, 0.35);
    box-shadow: 2px 4px 0px 0px rgba(0, 184, 223, 0.35);
}

.rsc-code-section .op-proc--orange .op-proc-head {
    background: linear-gradient(90deg, #f67d1f 0%, #f36e19 100%);
}

.rsc-code-section .op-proc--orange .op-proc-body {
    -webkit-box-shadow: 2px 4px 0px 0px rgba(246, 125, 31, 0.35);
    -moz-box-shadow: 2px 4px 0px 0px rgba(246, 125, 31, 0.35);
    box-shadow: 2px 4px 0px 0px rgba(246, 125, 31, 0.35);
}

.rsc-esg-program-section,
.rsc-oversight-section,
.rsc-screening-section,
.rsc-assessment-section,
.rsc-kcl-section {
    padding: 24px 0 0;
}

.rsc-kcl-card {
    border: 1px solid #27b6df;
    box-shadow: 8px 8px 0 rgba(39, 182, 223, 0.22);
    padding: 22px 20px 18px;
    background: #ffffff;
}

.rsc-kcl-card .rsc-section-title {
    color: #1a8fd0;
    margin-bottom: 12px;
}

.rsc-kcl-card p,
.rsc-kcl-card .rsc-text-stack p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #18aee0;
}

.rsc-kpi-section {
    padding: 24px 0 30px;
}

.rsc-kpi-section .rsc-section-title {
    margin-bottom: 10px;
}

.rsc-kpi-table thead th:first-child {
    width: calc(100% - 130px);
}

.rsc-kpi-table tbody td:first-child {
    text-align: left;
    font-weight: 400;
}

.rsc-kpi-table tbody td:last-child {
    width: 130px;
    text-align: right;
    font-weight: 400;
}

.rsc-text-stack {
    max-width: 100%;
}

.rsc-text-stack p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}

.rsc-bullet-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.rsc-bullet-list li {
    position: relative;
    padding-left: 18px;
    margin: 0 0 10px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}

.rsc-bullet-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.68em;
    width: 8px;
    height: 8px;
    background: #14b9e3;
}

.rsc-oversight-card {
    height: 100%;
    padding: 14px 16px 18px;
    border-bottom: 4px solid #0f88c8;
    background: #ffffff;
}

.rsc-oversight-label {
    display: inline-block;
    min-width: 220px;
    margin-bottom: 14px;
    padding: 6px 12px;
    background: #14b9e3;
    color: #ffffff;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.1;
}

.rsc-oversight-card p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111111;
}

.rsc-screening-stat {
    margin-top: 12px;
}

.rsc-screening-stat .op-stat-label {
    max-width: none;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    color: #111111;
    position: relative;
    padding-left: 18px;
}

.rsc-screening-stat .op-stat-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 12px;
    height: 4px;
    background: linear-gradient(90deg, #00B0D6 0%, #0096C8 50%, #087FBB 100%);
}

@media (max-width: 991.98px) {
    .rsc-supplier-section {
        padding-top: 20px;
    }

    .rsc-section-title {
        font-size: 20px;
    }

    .rsc-highlight-panel {
        gap: 14px;
    }

    .rsc-highlight-box {
        box-shadow: 5px 5px 0 rgba(39, 182, 223, 0.18);
    }

    .rsc-highlights-list {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .rsc-governance-section {
        padding-top: 20px;
    }

    .rsc-governance-stack {
        gap: 16px;
    }

    .rsc-code-section {
        padding-top: 18px;
    }

    .rsc-code-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .rsc-code-section .op-proc-head-inner {
        min-width: 0;
    }

    .rsc-oversight-card {
        padding: 12px 14px 16px;
    }

    .rsc-oversight-label {
        min-width: 0;
    }

    .rsc-esg-program-section,
    .rsc-oversight-section,
    .rsc-screening-section,
    .rsc-assessment-section,
    .rsc-kcl-section {
        padding-top: 20px;
    }

    .rsc-kcl-card {
        padding: 18px 16px 16px;
        box-shadow: 5px 5px 0 rgba(39, 182, 223, 0.18);
    }

    .rsc-kcl-card .rsc-section-title {
        margin-bottom: 10px;
    }

    .rsc-kpi-section {
        padding-top: 20px;
    }

    .rsc-kpi-table thead th:first-child {
        width: auto;
    }

    .rsc-kpi-table tbody td:last-child {
        width: 90px;
    }
}
.cr-major-card.new{
    min-width: 500px;
}
.outcome{
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.op-stat-label span{
    display: block;
}
.cr-garv-image-frame{
    padding-bottom: 20px;
}
.cr-marketing-section{
    padding-bottom: 20px;
}


.pl-section.globaltaxpage {
    background-color: #006db7;
    padding-bottom: 30px;
}
.pl-section.globaltaxpage .syn-eyebrow {
    color: #fff;
}
.pl-section.globaltaxpage .syn-hero-title{
    color: #fff;
}
.pl-section.globaltaxpage .pl-intro-box p{
    color: #fff;
    padding-bottom: 10px;
}
.pl-section.globaltaxpage .pl-intro-box{
    margin-bottom: 30px;
}
.pl-section.globaltaxpage .syn-hero-img {
    position: relative;
}
.pl-section.globaltaxpage .syn-hero-img img {
    position: static;
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}
.globaltax-content-section {
    padding: 50px 0 30px;
    background: #ffffff;
}
.globaltax p {
    margin: 0 0 14px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444444;
}
/* global tax principles start */
.gt-principles-section {
    padding: 0px 0 30px;
}
.gt-principles-title {
    margin: 0 0 26px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    text-transform: uppercase;
    color: #8e278f;
}
.gt-principle-row {
    align-items: flex-start;
    margin-bottom: 26px;
}
.gt-principle-row:last-child {
    margin-bottom: 0;
}
.gt-principle-badge {
    display: flex;
    align-items: center;
    gap: 16px;
    min-height: 60px;
    padding: 12px 18px;
    background: #eef6fb;
    border: 1px solid #cfe0ec;
    box-shadow: 5px 5px 0 #1f93d8;
}
.gt-principle-num {
    flex: 0 0 auto;
    font-family: 'Noto Sans', sans-serif;
    font-size: 26px;
    line-height: 1;
    font-weight: 600;
    color: #1f93d8;
}
.gt-principle-title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 600;
    color: #111111;
}
.gt-principle-textbox {
    padding: 16px 18px;
    border-top: 2px solid #1f93d8;
    border-right: 2px solid #1f93d8;
}
.gt-principle-text {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444444;
}
.gt-principle-text:last-child {
    margin-bottom: 0;
}
/* global tax principles end */

/* global tax governance structure start */
.gt-structure-section {
    padding: 0px 0 30px;
    background: #ffffff;
}
.gt-structure-title {
    margin: 0 0 15px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    text-transform: uppercase;
    color: #a12b8f;
}
.gt-structure-media {
    margin-bottom: 22px;
}
.gt-structure-media img {
    width: 100%;
    display: block;
}
.gt-structure-text {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 600;
    color: #444;
}
/* global tax governance structure end */

/* global tax risk management start */
.gt-risk-section {
    padding: 0px 0 30px;
    background: #ffffff;
}
.gt-risk-panel {
    position: relative;
    margin-top: 22px;
    padding: 46px 24px 10px;
    border: 1px solid #bcdcdc;
    border-bottom: 4px solid #bcdcdc;
    /* box-shadow: 0 8px 8cap rgba(0, 0, 0, 0.10); */
}
.gt-risk-badge {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    max-width: calc(100% - 32px);
    padding: 11px 40px;
    background: #ffffff;
    box-shadow: 5px 5px 5px 5px #1f93d8;
}
.gt-risk-badge h4 {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    text-transform: uppercase;
    color: #111111;
    text-align: center;
    white-space: nowrap;
}
.gt-risk-grid {
    --bs-gutter-x: 0;
}
.gt-risk-cell {
    position: relative;
    padding: 22px 26px;
}
.gt-risk-cell:nth-child(odd)::after {
    content: "";
    position: absolute;
    top: 16px;
    bottom: 16px;
    right: 0;
    width: 1px;
    background: #7fc6c6;
}
.gt-risk-cell:nth-child(1)::before,
.gt-risk-cell:nth-child(2)::before {
    content: "";
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 0;
    height: 1px;
    background: #7fc6c6;
}
.gt-risk-item {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}
.gt-risk-num {
    flex: 0 0 auto;
    align-self: flex-start;
    padding: 2px 6px 8px 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 30px;
    line-height: 1;
    font-weight: 400;
    color: #a9d0d0;
    box-shadow: 2px 2px 0px #5bbcbc;
}
.gt-risk-content h5 {
    margin: 0 0 6px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #0d7fc0;
}
.gt-risk-content p {
    margin: 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.45;
    color: #333333;
}
/* global tax risk management end */

/* global tax exchequer contribution start */
.gt-exch-section {
    padding: 0px 0 30px;
    background: #ffffff;
}
.gt-exch-intro {
    margin: 0 0 26px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444444;
}
.gt-exch-diagram {
    position: relative;
    margin-top: 65px;
    padding: 80px 24px 22px;
    border: 1px solid #d8d8d8;
    box-shadow: 0 8px 26px rgba(0, 0, 0, 0.10);
}
.gt-exch-total {
    position: absolute;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
    max-width: calc(100% - 40px);
    padding: 14px 25px;
    text-align: center;
    background: #e9f4f6;
    border-radius: 14px;
    box-shadow: 0 10px 22px rgba(15, 111, 119, 0.16);
}
.gt-exch-total-num {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1.1;
    font-weight: 700;
    background: linear-gradient(180deg, #0f9fe6 0%, #215fbf 38%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.gt-exch-total-num small {
    font-size: 24px;
    font-weight: 600;
    color: #111111;
}
.gt-exch-total-label {
    display: block;
    margin-top: 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.2;
    font-weight: 700;
    color: #111111;
}
.gt-exch-split {
    --bs-gutter-x: 0;
    row-gap: 18px;
.gt-exch-split > [class*="col-"] {
    position: relative;
}
.gt-exch-split > .col-6:first-child::after {
    content: "";
    position: absolute;
    top: 8px;
    bottom: 8px;
    right: 0;
    width: 1px;
    background: #cccccc;
}
.gt-exch-split > .col-6::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 20px;
    right: 20px;
    height: 1px;
    background: #cccccc;
}
}
.gt-exch-item {
    text-align: center;
    padding: 4px 12px;
}
.gt-exch-num {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1.15;
    font-weight: 700;
}
.gt-exch-num small {
    font-size: 24px;
}
.gt-exch-num small span {
    color: #111111;
}
.gt-exch-num--purple {
    color: #8e4d9e;
}
.gt-exch-item-label {
    display: block;
    margin-top: 3px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 600;
    color: #111;
}
.gt-exch-note {
    margin: 16px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 600;
    color: #444;
}
.gt-exch-section .row > .col-lg-6:last-child {
    display: flex;
    align-items: center;
}
.gt-exch-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.gt-exch-list li {
    position: relative;
    margin: 0 0 16px;
    padding-left: 18px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444444;
}
.gt-exch-list li:last-child {
    margin-bottom: 0;
}
.gt-exch-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 7px;
    height: 7px;
    background: #00bff3;
}
.gt-exch-list strong {
    color: #444;
}
/* global tax exchequer contribution end */

/* global tax country-wise table start */
.gt-country-section {
    padding: 0px 0 60px;
    background: #ffffff;
}
.gt-country-unit {
    margin: 0 0 8px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.3;
    color: #444444;
    text-align: right;
}
.gt-country-table-wrap {
    overflow-x: auto;
}
.gt-country-table {
    width: 100%;
    min-width: 1000px;
    border-collapse: collapse;
    font-family: 'Noto Sans', sans-serif;
}
.gt-country-table thead th {
    padding: 10px 12px;
    background: #52a99b;
    font-size: 14px;
    line-height: 1.25;
    font-weight: 700;
    color: #ffffff;
    text-align: right;
    vertical-align: bottom;
}
.gt-country-table thead th.gt-c-group {
    text-align: center;
    vertical-align: middle;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.gt-country-table thead th.gt-c-country {
    text-align: left;
    vertical-align: bottom;
}
.gt-country-table thead th.gt-c-total {
    text-align: right;
    vertical-align: bottom;
}
.gt-country-table tbody td {
    padding: 12px 12px;
    font-size: 15px;
    line-height: 1.3;
    color: #333333;
    text-align: right;
    white-space: nowrap;
    border-bottom: 1px solid #e2e2e2;
}
.gt-country-table tbody td:first-child {
    text-align: left;
    color: #222222;
}
.gt-country-table tfoot td {
    padding: 12px 12px;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 700;
    color: #111111;
    text-align: right;
    white-space: nowrap;
    border-top: 2px solid #9b9b9b;
    border-bottom: 2px solid #52a99b;
}
.gt-country-table tfoot td:first-child {
    text-align: left;
}
/* global tax country-wise table end */

/* global tax state-wise grid start */
.gt-state-section {
    padding: 0px 0 30px;
}
.gt-state-unit {
    margin: 0 0 12px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #444444;
    text-align: right;
}
.gt-state-grid {
    --bs-gutter-x: 0;
}
.gt-state-cell {
    position: relative;
    padding: 20px 16px;
}
.gt-state-cell:not(:nth-child(4n))::after {
    content: "";
    position: absolute;
    top: 16px;
    bottom: 16px;
    right: 0;
    width: 1px;
    background: #d5d5d5;
}
.gt-state-cell::before {
    content: "";
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 0;
    height: 1px;
    background: #d5d5d5;
}
.gt-state-cell:nth-last-child(-n+3)::before {
    display: none;
}
.gt-state-item {
    display: flex;
    align-items: center;
    gap: 16px;
}
.gt-state-map {
    flex: 0 0 auto;
    width: 62px;
    height: auto;
    display: block;
}
.gt-state-info {
    min-width: 0;
}
.gt-state-name {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 600;
    color: #444444;
}
.gt-state-num {
    display: block;
    margin-top: 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 24px;
    line-height: 1;
    font-weight: 600;
    color: #a12b8f;
}
.gt-state-note {
    margin: 14px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    line-height: 1.3;
    color: #888888;
}
/* global tax state-wise grid end */

/* global tax contribution snapshot start */
.gt-snap-section {
    padding: 0px 0 30px;
    background: #ffffff;
}
.gt-snap-total {
    max-width: 340px;
    margin: 0 auto 10px;
    padding: 16px 22px;
    text-align: center;
    background: #e9f4f6;
    border-radius: 12px;
    box-shadow: 5px 8px 0px rgba(15, 111, 119, 0.14);
}
.gt-snap-total-label {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 700;
    color: #444;
}
.gt-snap-total-num {
    display: block;
    margin-top: 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #444;
}
.gt-snap-row {
    --bs-gutter-x: 30px;
    row-gap: 30px;
    margin-top: 40px;
    align-items: stretch;
}
.gt-snap-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.gt-snap-card {
    position: relative;
    flex: 1 1 auto;
    width: 100%;
    padding-bottom: 6px;
    text-align: center;
    background: #ffffff;
    border: 1px solid #e4e4e4;
    border-bottom: 3px solid #e4e4e4;
}
.gt-snap-badge {
    display: inline-block;
    margin-top: -26px;
    padding: 14px 26px;
    text-align: center;
    background: #4bb0a4;
    max-width: 250px;
    box-shadow: 0 6px 14px rgba(31, 127, 121, 0.22);
}
.gt-snap-badge h4 {
    margin: 0 0 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 17px;
    line-height: 1.2;
    font-weight: 700;
    color: #ffffff;
}
.gt-snap-badge span {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.2;
    font-weight: 700;
    color: #ffffff;
}
.gt-snap-list {
    margin: 0;
    padding: 18px 16px 20px;
    list-style: none;
}
.gt-snap-list li {
    margin-bottom: 16px;
}
.gt-snap-list li:last-child {
    margin-bottom: 0;
}
.gt-snap-name {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #333333;
}
.gt-snap-val {
    display: block;
    margin-top: 3px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 600;
    color: #444;
}
/* global tax contribution snapshot end */

/* global tax vertical-wise start */
.gt-vert-section {
    padding: 0px 0 60px;
    background: #ffffff;
}
.gt-vert-panel {
    position: relative;
    margin-top: 50px;
    padding: 60px 10px 10px;
    border: 1px solid #d8d8d8;
}
.gt-vert-total {
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    max-width: calc(100% - 40px);
    padding: 16px 30px;
    text-align: center;
    background: #e9f4f6;
    border-radius: 14px;
    box-shadow: 0 12px 22px rgba(15, 111, 119, 0.16);
}
.gt-vert-total-num {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 36px;
    line-height: 1.1;
    font-weight: 600;
   background: linear-gradient(180deg, #0f9fe6 0%, #215fbf 38%, #8a2da6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.gt-vert-total-num i {
    font-style: normal;
    color: #1f9bb5;
}
.gt-vert-total-num small {
    font-size: 24px;
    font-weight: 600;
    color: #7a2f8f;
}
.gt-vert-total-label {
    display: block;
    margin-top: 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 600;
    color: #444;
}
.gt-vert-grid {
    --bs-gutter-x: 0;
    row-gap: 0;
}
.gt-vert-cell {
    position: relative;
    padding: 22px 24px;
}
.gt-vert-cell:not(:nth-child(3n))::after {
    content: "";
    position: absolute;
    top: 16px;
    bottom: 16px;
    right: 0;
    width: 1px;
    background: #d5d5d5;
}
.gt-vert-cell:nth-child(-n+3)::before {
    content: "";
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 0;
    height: 1px;
    background: #d5d5d5;
}
.gt-vert-num {
    display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 24px;
    line-height: 1.1;
    font-weight: 600;
    color: #a12b8f;
}
.gt-vert-num i {
    color: #a12b8f;
}
.gt-vert-num small {
    font-size: 20px;
    font-weight: 600;
    color: #a12b8f;
}
.gt-vert-name {
    display: block;
    margin-top: 4px;
    padding-left: 20px;
    position: relative;
    font-family: 'Noto Sans', sans-serif;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 700;
    color: #333333;
}
.gt-vert-name::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 13px;
    height: 3px;
    background: #1f9bb5;
}
.gt-vert-note {
    margin: 20px 0 0;
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #444444;
}
.gt-vert-link {
    font-weight: 700;
    color: #a12b8f;
    text-decoration: none;
}


/* ============================================================
   CORPORATE GOVERNANCE (cg-)  ESG chapter
   ============================================================ */
.cg-linkage { background:none; border:none; padding:0; margin:10px 0 0; }
.cg-kl-top { display:grid; grid-template-columns:1fr 1fr 1fr; gap:32px; }
.cg-kl-head {font-family: 'Noto Sans', sans-serif; font-size:16px; font-weight:700; color:#444; margin:0 0 16px; }
.cg-kl-item { display:flex; align-items:flex-start; gap:10px; margin-bottom:12px; font-family:'Noto Sans', sans-serif; font-size:15px; line-height:1.45; color:#333; }
.cg-kl-badge { flex:none; min-width:36px; text-align:center;padding:3px 6px; font-weight:700; font-size:13px; color:#8e278f; -webkit-box-shadow: 2px 3px 0px 0px #8e278f;
    box-shadow: 2px 3px 0px 0px #8e278f;-webkit-box-shadow: 2px 3px 0px 0px #8e278f;
    box-shadow: 2px 3px 0px 0px #8e278f; }
.cg-kl-sub { display:grid; grid-template-columns:2fr 1fr; gap:32px; margin-top:36px; align-items:start; }
.cg-cap-list { display:grid; grid-template-columns:1fr 1fr; gap:12px 28px; }
.cg-cap-item { display:flex; align-items:center; gap:12px; font-family:'Noto Sans', sans-serif; font-size:15px; color:#333; }
.cg-cap-item img { width:30px; height:30px; object-fit:contain; }
.cg-sdg-row { display:flex; flex-wrap:wrap; gap:12px; }
.cg-sdg-ph { width:70px; height:70px; border-radius:6px; background:#eef0f3; border:1px dashed #c4cad2; display:flex; align-items:center; justify-content:center; font-family:'Noto Sans', sans-serif; font-size:9px; font-weight:600; color:#97a1ac; text-align:center; }
.cg-sdg-ph img { width:70px; height:70px; object-fit:contain; border-radius:6px; }

.cg-table-wrap { overflow-x:auto; margin:20px 0 10px; }
.cg-table { width:100%; border-collapse:collapse; font-family:'Noto Sans', sans-serif; font-size:15px; margin-bottom:15px; }
.cg-table th { background:#f47721; color:#fff; text-align:left; padding:12px 16px; font-weight:600; font-size:16px; border:none; }
.cg-table td { border:none; border-bottom:1px solid #e4e4e4; padding:12px 16px; vertical-align:top; color:#333; line-height:1.5; }
.cg-table .cg-c1 { font-weight:700; color:#444; background:#ffeee0; white-space:nowrap; }
.cg-table ul { margin:0; padding-left:0; list-style:none; }
.cg-table ul li { position:relative; padding-left:16px; margin-bottom:4px; }
.cg-table ul li::before { content:""; position:absolute; left:0; top:8px; width:6px; height:6px; background:#00bff3; }

.cg-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:26px 22px; margin:24px 0; }
.cg-stat-val { font-family:'Noto Sans', sans-serif; font-size:30px; font-weight:700; line-height:1; display:inline-block; background:linear-gradient(90deg,#f37620 0%,#b45323 100%) !important; -webkit-background-clip:text !important; background-clip:text !important; -webkit-text-fill-color:transparent !important; color:transparent !important; }
.cg-stat p { margin:8px 0 0; font-size:14px; color:#444; line-height:1.4; }

.cg-cols { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin:22px 0; }
.cg-col { background:#e9f7fd; padding:24px; -webkit-box-shadow:8px 8px 0px 0px #b3ebfb; box-shadow:8px 8px 0px 0px #b3ebfb; }
.cg-col-head { font-family:'Playfair Display', serif; font-size:18px; font-weight:700; color:var(--brand-purple); margin:0 0 14px; }
.cg-col ul { margin:0; padding-left:18px; }
.cg-col ul li { margin-bottom:8px; font-size:14px; color:#333; line-height:1.5; }

.cg-committee-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin:22px 0; }
.cg-comm { border:1px solid #d7e6f0; border-top:4px solid #4091c9; padding:20px; background:#fff; }
.cg-comm h4 { font-family:'Playfair Display', serif; font-size:16px; font-weight:700; color:var(--brand-purple); margin:0 0 6px; }
.cg-comm .cg-ind { font-size:13px; color:#2e6fb0; font-weight:700; margin:0 0 10px; }
.cg-comm p { margin:2px 0; font-size:14px; color:#333; line-height:1.5; }

.cg-leader-grid { display:grid; grid-template-columns:1fr 1fr; gap:44px; margin:22px 0; }
.cg-leader { border:none; padding:16px 0 0; background:none; -webkit-box-shadow: 2px 2px 0px 0px #bfc4c3;
    box-shadow: 2px 2px 0px 0px #bfc4c3;  }
.cg-leader h4 {font-family:'Noto Sans', sans-serif; font-size:18px; font-weight:700; color:#4975c9; margin:0 0 2px; }
.cg-leader .cg-role { font-size:14px; font-weight:700; color:#444; margin:0 0 14px; }
.cg-leader ul { list-style:none; margin:0; padding:0; padding-right:20px; }
.cg-leader ul li { position:relative; padding-left:16px; margin-bottom:9px; font-size:14px; color:#333; line-height:1.5; } .cg-leader ul li::before { content:""; position:absolute; left:0; top:8px; width:6px; height:6px; background:#00bff3; }

.cg-pillars { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin:22px 0; }
.cg-pillar { background:#f4f8fb; border:1px solid #d7e6f0; border-radius:10px; text-align:center; padding:26px 22px; font-family:'Noto Sans', sans-serif; font-size:14px; line-height:1.5; color:#333; }
.cg-key2 { display:grid; grid-template-columns:1fr 1fr; gap:24px 34px; margin:22px 0; }
.cg-key2 .cg-key2-item { border-left:2px solid #f47721; padding:0 0 0 18px; font-size:15px; color:#444; line-height:1.55; }

/* Corporate Governance banner: light orange background + orange heading */
#cgHero { background:#fdeee1; }
#cgHero .st-title { color:#f47721; }

/* Corporate Governance intro: no background, dark text.
   Matches the shared .pl-lead p treatment so the after-banner lead paragraph
   is identical across all opener pages (font, size, weight, line-height, width). */
.cg-lead-plain { background:none !important; box-shadow:none !important; padding:0 !important; }
/* Match .pl-lead section top spacing (46px) on the corporate-governance intro */
.st-lead-section:has(.cg-lead-plain) { padding: 46px 0 0 !important; }
.cg-lead-plain .st-lead-copy {
    font-family: 'Noto Sans', sans-serif;
    font-size: 16px !important;
    line-height: 1.8 !important;
    font-weight: 500 !important;
    color: #1a1a1a !important;
    margin: 0 0 18px !important;
    
}
.cg-lead-plain .st-lead-copy:last-child { margin-bottom: 0 !important; }

/* Corporate Governance quote text colour */
.cg-quote .ne-quote-icon { display:none !important; }
.cg-quote p { position:relative; padding-top:0; padding-left:34px; background:linear-gradient(90deg,#f37620 0%,#b45323 100%) !important; -webkit-background-clip:text !important; background-clip:text !important; -webkit-text-fill-color:transparent !important; color:transparent !important; }
.cg-quote p::before { content:""; position:absolute; left:0; top:12px; width:15px; height:4px; background:#f37620; }

/* Strategic Priorities badges (S1-S7) cyan style */
.cg-kl-top > div:nth-child(2) .cg-kl-badge {
	color:#3ac5e0;
	-webkit-box-shadow:2px 3px 0px 0px #3ac5e0;
	-moz-box-shadow:2px 3px 0px 0px #3ac5e0;
	box-shadow:2px 3px 0px 0px #3ac5e0;
}

/* Key Risks and Opportunities badges (R4-R10) style */
.cg-kl-top > div:nth-child(3) .cg-kl-badge {
	color:#59baad;
	-webkit-box-shadow:2px 3px 0px 0px #59baad;
	-moz-box-shadow:2px 3px 0px 0px #59baad;
	box-shadow:2px 3px 0px 0px #59baad;
}

/* Governance Practices-in-Action: dark heading + bordered 2-col box */
.cg-dark-head { color:#444; }
.cg-box-list { border:1px solid #f47721; padding:26px 30px 26px 30px; column-count:2; column-gap:44px; margin-top:20px; }
.cg-box-list li { -webkit-column-break-inside:avoid; break-inside:avoid; }

/* cg-table last row: orange bottom border */
.cg-table tbody tr:last-child td { border-bottom:2px solid #f47721; }
/* Close the table's bottom edge under rowspan cells (e.g. whistleblower complaints table) */
.cg-table tbody td[rowspan] { border-bottom:2px solid #f47721; }
/* Whistleblower Complaints table: centered data columns + grouped rowspan cells */
.cg-table .cg-center { text-align:center; }
.cg-wb-table th.cg-center { text-align:center; }
.cg-wb-table td[rowspan] { vertical-align:middle; }

/* Strategic Focus Areas across Capitals table */
.cg-cap-table thead th { background:#b45323; }
.cg-cap-table .cg-c1 { background:transparent; box-shadow:none; white-space:normal; vertical-align:middle; padding:14px 22px 14px 0; }
.cg-cap-box { display:flex; align-items:center; gap:10px; background:#ffeee0; -webkit-box-shadow:3px 3px 5px 0px #f47721; box-shadow:3px 3px 5px 0px #f47721; border-radius:0px; padding:30px 16px; font-weight:700; color:#444; }
.cg-cap-ph { flex:none; display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; background:#fff; border:1px dashed #c4cad2; border-radius:6px; font-family:'Noto Sans', sans-serif; font-size:9px; font-weight:600; color:#97a1ac; }

/* Corporate Governance full-width diagrams */
.cg-diagram { margin:20px auto 40px auto; max-width:850px; }
.cg-diagram img { width:100%; height:auto; display:block; }
/* Board of Directors committee diagram sits on a light-orange panel (per report) */
.cg-diagram-board { max-width:100%; background:#fdeede; padding:30px 24px; }

/* Commitment table: vertical line + orange arrow on Commitment & Progress columns */
.cg-commit-table td:not(.cg-c1) { position:relative; padding-left:36px; vertical-align:middle; }
.cg-commit-table td:not(.cg-c1)::before { content:""; position:absolute; left:16px; top:12px; bottom:12px; width:1px; background:#333; }
.cg-commit-table td:not(.cg-c1)::after { content:""; position:absolute; left:12px; top:50%; transform:translateY(-50%); width:0; height:0; border-left:9px solid #f47721; border-top:6px solid transparent; border-bottom:6px solid transparent; background-color:#ffffff; }
.cg-cap-table tbody tr:last-child td, .cg-commit-table tbody tr:last-child td
{
border-bottom: 1px solid #e4e4e4;
}
/* Board's Snapshot: short line to the left of each stat label */
.cg-stat p { position:relative; padding-left:20px; }
.cg-stat p::before { content:""; position:absolute; left:0; top:9px; width:12px; height:3px; background:#f47721; }

/* Board Diversity / Age pie charts */
.cg-chart { aspect-ratio:auto; background:none; border:none; margin:0; display:flex; justify-content:center; align-items:center; min-height:260px; }
.cg-chart img { width:auto; max-width:100%; height:240px; object-fit:contain; border-radius:0; }
/* Both donut charts share the same donut diameter despite different SVG aspect ratios */
.cg-chart--diversity img { height:260px; }
.cg-chart--age img { height:240px; }


/* Cross-reference link with circled-plus icon */
.cg-ref { position:relative; padding-left:28px; color:#444; cursor:pointer; }
.cg-ref::before { content:"\2295"; position:absolute; left:0; top:-1px; font-size:19px; line-height:1.5; color:#444; }
.cg-ref:hover { text-decoration:underline; }

/* Key Governance Committees - gradient-header boxes (like ro-proc, orange) */
.cg-gov-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px; margin-top:24px; align-items:stretch; }
.cg-gov { background:#fff; margin-top:40px; display:flex; flex-direction:column; }
.cg-gov-head { position:relative; background:linear-gradient(90deg,#b45323 0%,#f37620 100%); padding:26px 12px; }
.cg-gov-head-inner { position:absolute; top:0; left:20px; right:20px; transform:translateY(-50%); display:flex; align-items:center; justify-content:center; text-align:center; background:#fdece1; color:#444; font-family:'Noto Sans', sans-serif; font-size:16px; font-weight:700; line-height:1.3; padding:14px 16px; max-width:400px; }
.cg-gov-body { flex:1 0 auto; padding:20px 22px; -webkit-box-shadow:2px 4px 0px 0px #f37620; box-shadow:2px 4px 0px 0px #f37620; }
.cg-rr { font-family:'Noto Sans', sans-serif; font-weight:700; font-size:16px; color:#333; margin:0 0 10px; }
.cg-gov-body .ne-list { margin-top:0; }

/* Board Nomination section - bordered callout boxes */
.cg-callout { border:1px solid #f47721; -webkit-box-shadow:3px 3px 5px 0px #f47721; box-shadow:3px 3px 5px 0px #f47721; padding:24px 28px; margin:26px 0 34px; }
.cg-callout .ne-h3 { color:#bf5d1a; font-size:16px; margin-top:0; border:none; padding:0; }
.cg-callout p { margin:10px 0 0; color:#333; font-weight: 600;}
.cg-callout .ne-note.cg-ref { margin-top:16px; color:#444; }

/* Promoter Holding table - full-width title row + vertical borders (this table only) */
.cg-promoter-table .cg-tbl-title { background:#f47721; color:#fff; text-align:center; font-size:15px; font-weight:700; padding:12px 16px; border-bottom:1px solid #fff; }
.cg-promoter-table th, .cg-promoter-table td { border-right:1px solid #e4e4e4; }
.cg-promoter-table th:last-child, .cg-promoter-table td:last-child { border-right:none; }
.cg-promoter-table .cg-tbl-title { border-right:none; }

/* 3-column variant of the gradient committee boxes (Safeguarding/Reporting/Board-levels) */
.cg-gov-grid-3 { grid-template-columns:repeat(3,1fr); gap:26px; }
.cg-gov-grid-3 .cg-gov-head-inner { font-size:15px; }
.cg-gov-grid-3 .cg-gov-body { padding:18px 20px; }
.cg-gov-grid-3 .cg-gov-body ul { list-style:none; margin:0; padding:0; }
.cg-gov-grid-3 .cg-gov-body ul li { position:relative; padding-left:16px; margin-bottom:8px; font-family:'Noto Sans', sans-serif; font-size:14px; color:#333; line-height:1.5; }
.cg-gov-grid-3 .cg-gov-body ul li::before { content:""; position:absolute; left:0; top:8px; width:6px; height:6px; background:#00bff3; }
.cg-gov-grid-3 .cg-gov-body p { font-family:'Noto Sans', sans-serif; font-size:14px; color:#333; line-height:1.5; margin:0 0 8px; }
.cg-gov-grid-3 .cg-gov-body p:last-child { margin-bottom:0; }

/* soft drop shadow on the 3-column boxes only */
.cg-gov-grid-3 .cg-gov { box-shadow:none; }

/* cg-gov-body inherits the box's shadow (not set directly) */
.cg-gov-grid-3 .cg-gov-body { -webkit-box-shadow:3px 3px 5px 0px #f47721; box-shadow:3px 3px 5px 0px #f47721a3; }

/* Environment policy table - green variant of the Commitment table styling */
.cg-env-table thead th { background:#00b16b; }
.cg-env-table .cg-cap-box { background:#e8f4eb; -webkit-box-shadow:5px 5px 5px 0px #00b16b70; box-shadow:5px 5px 5px 0px #00b16b70; }
.cg-env-table td:not(.cg-c1)::after { border-left-color:#00b16b; }
.cg-env-table tbody tr:last-child td { border-bottom-color:#00b16b; }

/* Social policy table - blue variant of the Commitment table styling */
.cg-soc-table thead th { background:#00b4d8; }
.cg-soc-table .cg-cap-box { background:#e9f4f9; -webkit-box-shadow:5px 5px 5px 0px #00b4d870; box-shadow:5px 5px 5px 0px #00b4d870; }
.cg-soc-table td:not(.cg-c1)::after { border-left-color:#00b4d8; }
.cg-soc-table tbody tr:last-child td { border-bottom-color:#00b4d8; }
.ne-note
{
    font-size: 14px !important;
}

/* cross-reference link list spacing */
.cg-reflist { margin:14px 0; }
.cg-reflist .cg-ref { margin:0 0 10px; }
.cg-readmore-lead { margin-top:18px; margin-bottom:6px; font-weight:700; }

/* ISO 27001 certification callout - gradient text + leading line */
.cg-iso .ne-em-head { font-size:24px; background:linear-gradient(90deg,#b45323 0%,#f37620 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent; margin-bottom:6px; }
.cg-iso p { position:relative; padding-left:34px; color:#444; }
.cg-iso p::before { content:""; position:absolute; left:0; top:11px; width:24px; height:3px; background:#b45323; }

/* Key Focus Areas / Steering / Key Training - bordered box with orange heading tab + internal dividers */
.cg-focus-box { position:relative; border:1px solid #d5d5d5; padding:34px 0 0; margin:44px 0 26px; -webkit-box-shadow: 2px 4px 0px 0px #bfc4c3;
    box-shadow: 2px 4px 0px 0px #bfc4c3; }
.cg-focus-head { position:absolute; top:0; left:24px; transform:translateY(-50%); background:#f47721; color:#fff; font-family:'Noto Sans', sans-serif; font-size:15px; font-weight:700; padding:9px 22px; }
.cg-focus-box .cg-key2 { gap:0; margin:0; }
.cg-focus-box .cg-key2-item { position:relative; border-left:none; padding:20px 26px; }
.cg-focus-box .cg-key2-item:nth-child(1) { border-bottom:1px solid #f47721; }
.cg-focus-box .cg-key2-item:nth-child(2) { border-bottom:1px solid #f47721; }
.cg-focus-box .cg-key2-item:nth-child(1)::after,
.cg-focus-box .cg-key2-item:nth-child(3)::after { content:""; position:absolute; right:0; top:20px; bottom:20px; width:1px; background:#f47721; }

/* Steering IT Security Excellence - single-row 4-column variant (only this box) */
.cg-focus-4 .cg-key2 { grid-template-columns:repeat(4,1fr); }
.cg-focus-4 .cg-focus-head { left:50%; transform:translate(-50%,-50%); }
.cg-focus-4 .cg-key2-item:nth-child(1), .cg-focus-4 .cg-key2-item:nth-child(2) { border-bottom:none; }
.cg-focus-4 .cg-key2-item:nth-child(2)::after { content:""; position:absolute; right:0; top:20px; bottom:20px; width:1px; background:#f47721; }
.ne-list7 li b 
{
    color: #444;
}
.ne-list7
{
    margin-bottom: 60px;
}
.cg-gov-grid-5 .cg-gov-body
{
-webkit-box-shadow: 2px 4px 0px 0px #bfc4c3;
    box-shadow: 2px 4px 0px 0px #bfc4c3;
}
/* Steering box styled like Board Level box */
.cg-steer { border:none; padding:0; margin-top:34px; border: 1px solid #d5d5d5; }
.cg-steer .cg-gov-head { position:relative; background:linear-gradient(90deg,#b45323 0%,#f37620 100%); padding:22px 12px; max-width:400px; margin:auto; }
.cg-steer .cg-gov-head-inner { position:absolute; top:0; left:30px; right:16px; transform:translateY(-58%); display:flex; align-items:center; justify-content:center; text-align:center; background:#fdece1; color:#444; font-family:'Noto Sans', sans-serif; font-size:15px; font-weight:700; padding:14px 16px; }

/* Key Training box: 4-column but heading stays top-left */
.cg-focus-left .cg-focus-head { left:24px; transform:translateY(-50%); }

/* Cyber Security Governance Framework — light-peach panel wrapping the
   heading, intro, the Board/Business/Unit boxes and the leadership cards */
.cg-gov-framework-panel { background:#fdeede; padding:34px 34px 40px; margin:30px 0; }
.cg-gov-framework-panel > h2:first-child { margin-top:0; }

/* Flat orange header bars with left-aligned white text (per report layout) */
.cg-gov-grid-flat .cg-gov { margin-top:0; }
.cg-gov-grid-flat .cg-gov-head { background:#f37720; padding:0; }
.cg-gov-grid-flat .cg-gov-head-inner {
	position:static;
	transform:none;
	background:none;
	color:#fff;
	justify-content:flex-start;
	text-align:left;
	max-width:none;
	padding:14px 18px;
	font-size:16px;
}
.cg-gov-grid-flat .cg-gov-body { background:#fff; box-shadow:2px 4px 0px 0px #bfc4c3; }

/* SDG combined icon image */
.cg-sdg-row .cg-sdg-img { width:auto; max-width:100%; height:auto; max-height:74px; }

/* Capital icons in Strategic Focus Areas table */
.cg-cap-icon { flex:none; width:32px; height:32px; object-fit:contain; }

/* Hero right-side image placeholder */
/* .cg-hero-img {
	background:#f2f4f6;
	border:1px dashed #c3ccd3;
	color:#8aa3b0;
} */

/* Opener quote (At Adani...): orange patch with white text, sits below the banner title */
.cg-quote-opener {
	background:transparent;
	padding:0 0 32px;
	border-radius:0;
	margin:26px 0 0;
}
.cg-quote-opener .cg-quote-dot { display:block; width:52px; height:auto; margin-bottom:14px; }
.cg-quote-opener p {
	padding-left:0 !important;
	background:none !important;
	-webkit-background-clip:border-box !important;
	background-clip:border-box !important;
	-webkit-text-fill-color:#b5561f !important;
	color:#b5561f !important;
	font-size:18px;
	line-height:1.4;
	font-weight:700;
}
.cg-quote-opener p::before { content:none; }
.gt-vert-link:hover {
    text-decoration: underline;
}
/* global tax vertical-wise end */

.ne-img-ph7
{
    max-width: 850px;
    margin: 20px auto;
}
.lastimgglobaltax{
    margin: 20px 0px;
}
.ca-hero-copy p a{
    color: #000;
}
.climateaddpara p{
    padding-bottom: 20px;
}
.climateaddpara h3{
    padding-top: 10px;
}
.op-stat-value{
font-weight: 700;
}
/* ============================================================
   PREV / NEXT PAGE NAVIGATION (matches reference design)
   ============================================================ */
.page-nav { border-top: 1px solid #e6e6e6; padding: 28px 0; background: #fff; }
.page-nav-inner { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; }
.page-nav-link { display: flex; align-items: flex-start; gap: 12px; text-decoration: none; color: #1a1a1a; max-width: 48%; transition: color .2s; }
.page-nav-prev { margin-right: auto; }
.page-nav-next { margin-left: auto; text-align: right; }
.page-nav-link:hover { color: var(--brand-blue); }
/* Arrow aligns to the first line of the (possibly wrapping) title */
.page-nav-arrow {
    font-size: 20px;
    line-height: 1.3;
    color: var(--brand-blue);
    flex-shrink: 0;
}
.page-nav-txt { display: flex; flex-direction: column; gap: 3px; }
.page-nav-txt small { font-family: 'Noto Sans', sans-serif; font-size: 12px; color: #888; text-transform: uppercase; letter-spacing: .6px; }
.page-nav-txt > span { font-family: 'Noto Sans', sans-serif; font-size: 15px; font-weight: 700; line-height: 1.3; }

/* ===== Inline reference / read-more / click-here links — theme light blue ===== */
.ca-more-link a,
.ne-note a,
.cg-ref a,
.oae-gov-note a,
.env-system-note a,
.op-note-link a,
.op-labour-note a,
.op-future-note,
.dm-issue-ref a,
.ro-ref a,
.cr-foundation-link,
.cr-foundation-link a {
    color: #0d7fc0 !important;
    text-decoration: none;
}

.cr-foundation-link span,
.cr-foundation-link strong,
.cr-foundation-link a span,
.cr-foundation-link a strong {
    color: #0d7fc0 !important;
}

.ca-more-link a:hover,
.ne-note a:hover,
.cg-ref a:hover,
.oae-gov-note a:hover,
.env-system-note a:hover,
.op-note-link a:hover,
.op-labour-note a:hover,
.op-future-note:hover,
.dm-issue-ref a:hover,
.ro-ref a:hover,
.cr-foundation-link:hover {
    color: #0b6ba6 !important;
    text-decoration: underline;
}

/* ===== Business Model: per-column scroll + sub-heads + 2-per-row output ===== */
.scroll-text-new { overflow-y:auto; overflow-x:hidden; padding-right:10px; max-height:105px; }
.scroll-text-new::-webkit-scrollbar { width:3px; }
.scroll-text-new::-webkit-scrollbar-track { border-radius:0; background-color:rgba(255,255,255,.2); }
.scroll-text-new::-webkit-scrollbar-thumb { border-radius:0; background-color:rgba(255,255,255,.85); }
.bm-subhead { font-family:'Noto Sans', sans-serif; font-weight:700; font-size:14px; color:#fff; margin:14px 0 8px; }
.scroll-text-new > .bm-subhead:first-child { margin-top:0; }
.bm-out-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px 14px; }
.bm-out-grid .bm-out { margin:0; }
.bm-sub { margin:6px 0 2px; padding-left:4px; }
.bm-sub li { font-size:14px; margin-bottom:5px; }

/* Intellectual Capital: no Output column (2-column layout) */
.bm-io-2 { grid-template-columns:1fr 1fr; }

/* ============================================================
   SEARCH PAGE
   ============================================================ */
.search-page {
    background: #ffffff;
}
.search-page #wrapper {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}
.search-page .syn-hero {
    flex: 1;
    min-height: 0;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 112px 0 90px;
    background:
        radial-gradient(circle at 50% 30%, rgba(108, 176, 235, 0.22), rgba(108, 176, 235, 0.08) 26%, transparent 48%),
        linear-gradient(180deg, #ffffff 0%, #ffffff 100%);
}
.search-page .syn-hero .container {
    width: 100%;
}
.search-page .yb-search-box {
    position: relative;
    display: flex;
    align-items: center;
    width: min(100%, 880px);
    min-height: 64px;
    margin: 22px auto 0;
    padding: 0 24px;
    background: #ffffff;
    border: 1px solid #86c3f8;
    border-radius: 999px;
    box-shadow: 0 18px 46px rgba(111, 170, 227, 0.18);
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
.search-page .yb-search-box:focus-within {
    border-color: #62afea;
    box-shadow: 0 24px 56px rgba(111, 170, 227, 0.24);
}
.search-page .yb-search-icon {
    display: none;
}
.search-page .yb-search-input {
    flex: 1;
    min-width: 0;
    width: 100%;
    height: 62px;
    padding: 0;
    border: none;
    background: transparent;
    outline: none;
    font-family: 'Noto Sans', sans-serif;
    font-size: clamp(18px, 1.9vw, 20px);
    font-weight: 400;
    color: #31485d;
    letter-spacing: 0;
}
.search-page .yb-search-input::placeholder {
    color: #5f7083;
}
.search-page .search-widget-results--page {
    position: static;
    width: min(100%, 880px);
    margin: 18px auto 0;
    border: 1px solid #d9e6f4;
    border-radius: 18px;
    box-shadow: 0 22px 52px rgba(111, 170, 227, 0.22);
    max-height: none;
    overflow: visible;
}
.search-page .search-widget-link {
    padding: 16px 20px;
}
.search-page .search-widget-pdf-item {
    padding: 16px 20px;
}
.search-page .search-widget-title {
    color: #0c5f9f;
}
.search-page .search-widget-snippet {
    color: #59697b;
}
.search-page .search-widget-snippet b {
    background-color: #dff0ff;
}
.search-page .search-widget-pdf-btn {
    border-radius: 999px;
}
