/* Stakeholder Relations — VCG (thevcg.tech). Swap --font for the site's global font if different. */
/* uses thevcg.tech /styles.css tokens: --text, --display, --hero, --ink, --mist, --line, --muted */
.sr-page{
  --soft:#f3f3f3; --muted:#5b5b5b; --line:#e2e2e2;
  --yellow:#FFD900; --lavender:#D5B0FF; --orange:#FF7723; --mint:#B4FFBD; --blue:#3C6CFF;
  --r-lg:44px; --r-md:22px; --r-sm:14px; --max:1200px; --gutter:clamp(16px,4vw,40px);
}
.sr-page *,.sr-page *::before,.sr-page *::after{box-sizing:border-box;margin:0;padding:0}
.sr-page{font-family:var(--text);color:#000;line-height:1.5}
.sr-page img{display:block;max-width:100%}
.sr-page a{color:inherit}
.sr-wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}

/* type */
.sr-page h1,.sr-page h2,.sr-page h3,.sr-page h4{font-family:var(--display);font-weight:400;letter-spacing:-.01em;line-height:1.08}
.sr-page .sr-display{font-family:var(--hero);font-weight:500;font-size:clamp(44px,8vw,96px);letter-spacing:-.04em}
.sr-page h2{font-size:clamp(32px,5vw,56px)}
.sr-page h3{font-size:clamp(22px,2.6vw,30px)}
.sr-lead{font-size:clamp(19px,2.1vw,24px);line-height:1.4;color:var(--muted);max-width:760px}
.sr-body{font-size:17px;color:#333;max-width:640px}
.sr-body+.sr-body{margin-top:14px}
.sr-center{text-align:center;margin-left:auto;margin-right:auto}

/* buttons: clear, outlined */
.sr-btn{display:inline-flex;align-items:center;gap:8px;font-size:16px;font-weight:500;text-decoration:none;border:1.5px solid var(--ink);color:var(--ink);background:transparent;border-radius:999px;padding:12px 24px;transition:background .2s,color .2s;cursor:pointer;font-family:inherit}
.sr-btn:hover{background:var(--ink);color:#fff}
.sr-dark .sr-btn,.sr-btn.sr-light{border-color:#fff;color:#fff}
.sr-dark .sr-btn:hover,.sr-btn.sr-light:hover{background:#fff;color:var(--ink)}
.sr-btn .sr-arr{transition:transform .2s}.sr-btn:hover .sr-arr{transform:translateX(3px)}
.sr-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.sr-link{font-weight:500;text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:2px}

.sr-page section{padding:clamp(72px,10vw,140px) 0}
.sr-tight{padding:clamp(48px,6vw,80px) 0}
.sr-soft{background:var(--soft)}
.sr-dark{background:#000;color:#fff}
.sr-dark .sr-body,.sr-dark .sr-lead{color:#c7c7cc}

/* hero */
.sr-hero{padding:120px var(--gutter) 0}
.sr-hero-card{position:relative;max-width:1400px;margin:0 auto;border-radius:var(--r-lg);overflow:hidden;min-height:clamp(460px,72vh,760px);background:#000;color:#fff;display:flex;align-items:flex-end}
.sr-hero-card .sr-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72;transform:scale(1.06);will-change:transform}
.sr-hero-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(0,0,0,.72))}
.sr-hero-card .sr-in{position:relative;z-index:2;padding:clamp(28px,5vw,64px);max-width:900px}
.sr-hero-card .sr-lead{color:#e5e5ea;margin-top:18px}
.sr-hero-plain{padding:150px 0 40px}

/* stakeholder grid */
.sr-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}
.sr-chip{border:1.5px solid var(--line);border-radius:var(--r-md);padding:26px;background:#fff;transition:border-color .2s,transform .2s}
.sr-chip:hover{border-color:var(--ink);transform:translateY(-2px)}
.sr-chip h4{font-size:20px;margin-bottom:8px}
.sr-chip p{font-size:15px;color:var(--muted)}
.sr-chip .sr-dot{width:12px;height:12px;border-radius:50%;margin-bottom:18px}

/* quote */
.sr-quote{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(28px,5vw,72px);align-items:center}
.sr-quote .sr-ph{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5;background:var(--soft)}
.sr-quote .sr-ph img{width:100%;height:100%;object-fit:cover}
.sr-quote blockquote{font-size:clamp(26px,3.4vw,42px);line-height:1.18;letter-spacing:-.02em;font-weight:500}
.sr-quote cite{display:block;margin-top:26px;font-style:normal;font-size:16px;color:var(--muted)}
.sr-quote cite b{color:var(--ink);font-weight:600;display:block}
.sr-dark .sr-quote cite b{color:#fff}

/* stats */
.sr-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:56px}
.sr-stat{border-radius:var(--r-md);padding:28px 24px;background:var(--soft)}
.sr-dark .sr-stat{background:#151515}
.sr-stat .sr-num{font-size:clamp(40px,5vw,60px);font-weight:600;letter-spacing:-.04em;line-height:1}
.sr-stat .sr-lbl{font-size:15px;color:var(--muted);margin-top:10px}
.sr-dark .sr-stat .sr-lbl{color:#a1a1a6}

/* jump bar */
.sr-jump{position:sticky;top:0;z-index:15;background:rgba(255,255,255,.86);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px)}
.sr-jump .sr-wrap{display:flex;gap:8px;overflow-x:auto;padding-top:12px;padding-bottom:12px;scrollbar-width:none}
.sr-jump .sr-wrap::-webkit-scrollbar{display:none}
.sr-pill{flex:0 0 auto;font-size:14px;text-decoration:none;border:1.5px solid var(--line);border-radius:999px;padding:8px 14px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;transition:border-color .2s,background .2s}
.sr-pill i{width:9px;height:9px;border-radius:50%;display:inline-block}
.sr-pill:hover,.sr-pill.sr-active{border-color:var(--ink)}
.sr-pill.sr-cta{border-color:var(--ink);font-weight:500}
.sr-pill.sr-cta:hover{background:var(--ink);color:#fff}

/* journey timeline */
.sr-journey{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}
.sr-yr{border-radius:var(--r-md);padding:30px;background:#fff;border:1.5px solid var(--line)}
.sr-yr .sr-y{font-size:44px;font-weight:600;letter-spacing:-.04em}
.sr-yr ul{list-style:none;margin-top:16px}
.sr-yr li{padding:12px 0;border-top:1px solid var(--line);font-size:15px}
.sr-yr li a{text-decoration:none}.sr-yr li a:hover{text-decoration:underline}
.sr-yr li span{display:block;color:var(--muted);font-size:13px}

/* GGG pillar sections (collage + text) */
.sr-ggg{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.sr-ggg.sr-flip .sr-collage{order:2}
.sr-collage{position:relative;aspect-ratio:1/1.02}
.sr-collage .sr-a,.sr-collage .sr-b{position:absolute;border-radius:var(--r-lg);overflow:hidden;background:var(--soft)}
.sr-collage img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.sr-collage:hover img{transform:scale(1.04)}
.sr-collage .sr-a{left:0;top:0;width:72%;height:78%}
.sr-collage .sr-b{right:0;bottom:0;width:48%;height:46%;border:8px solid #fff}
.sr-soft .sr-collage .sr-b{border-color:var(--soft)}
.sr-story{position:absolute;left:4%;bottom:0;width:44%;background:#fff;border-radius:var(--r-sm);padding:16px 18px;box-shadow:0 12px 40px rgba(0,0,0,.12);text-decoration:none;font-size:14px;z-index:3;transition:transform .2s}
.sr-story:hover{transform:translateY(-3px)}
.sr-story small{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}
.sr-story b{font-weight:600;display:block;line-height:1.3}
.sr-sdg{display:inline-flex;align-items:center;gap:14px;margin-bottom:22px}
.sr-sdg .sr-tile{width:58px;height:58px;border-radius:14px;color:#fff;display:grid;place-items:center;font-weight:700;font-size:24px;letter-spacing:-.02em}
.sr-sdg .sr-nm{font-size:15px;font-weight:500;line-height:1.25}
.sr-sdg .sr-nm span{display:block;color:var(--muted);font-weight:400;font-size:13px}
.sr-dark .sr-sdg .sr-nm span{color:#a1a1a6}
.sr-ggg h2{font-size:clamp(30px,4vw,48px);margin-bottom:18px}

/* cards */
.sr-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
.sr-card{text-decoration:none;display:block;border-radius:var(--r-md);overflow:hidden;background:#fff;border:1.5px solid var(--line);transition:transform .25s,border-color .25s}
.sr-card:hover{transform:translateY(-4px);border-color:var(--ink)}
.sr-dark .sr-card{background:#111;border-color:#222}.sr-dark .sr-card:hover{border-color:#fff}
.sr-card .sr-im{aspect-ratio:16/11;overflow:hidden;background:var(--soft)}
.sr-card .sr-im img{width:100%;height:100%;object-fit:cover}
.sr-card .sr-tx{padding:22px}
.sr-card small{color:var(--muted);font-size:13px}
.sr-card h4{font-size:20px;margin:8px 0 6px;line-height:1.2}
.sr-card p{font-size:15px;color:var(--muted)}

/* split image+text rows (GGG detail) */
.sr-rows{display:grid;gap:clamp(56px,8vw,110px);margin-top:20px}
.sr-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:center}
.sr-row:nth-child(even) .sr-ri{order:2}
.sr-ri{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:5/4;background:var(--soft)}
.sr-ri img{width:100%;height:100%;object-fit:cover}
.sr-row h3{margin-bottom:14px}

/* HIGHLIGHTS black band with framed parallax photo */
.sr-hl{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,90px);align-items:center}
.sr-hl h2{text-transform:uppercase;letter-spacing:.02em;font-size:clamp(28px,3.4vw,40px);margin-bottom:28px}
.sr-hl dl{display:grid;gap:0}
.sr-hl dl div{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:16px 0;border-top:1px solid #2a2a2a}
.sr-hl dt{color:#a1a1a6;font-size:14px}
.sr-hl dd{font-size:17px}
.sr-frame{border:10px solid #fff;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5}
.sr-frame img{width:100%;height:118%;object-fit:cover;will-change:transform}

/* measures list */
.sr-measures{list-style:none;counter-reset:m;margin-top:36px;max-width:820px}
.sr-measures li{counter-increment:m;display:grid;grid-template-columns:56px 1fr;padding:22px 0;border-top:1.5px solid var(--line);font-size:19px}
.sr-measures li::before{content:counter(m,decimal-leading-zero);color:var(--muted);font-size:15px;padding-top:3px}

/* goal nav */
.sr-gnav{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.sr-gnav a{flex:1 1 280px;text-decoration:none;border:1.5px solid var(--line);border-radius:var(--r-md);padding:22px 26px;transition:border-color .2s}
.sr-gnav a:hover{border-color:var(--ink)}
.sr-gnav small{color:var(--muted);display:block;font-size:13px;margin-bottom:6px}
.sr-gnav b{font-size:19px;font-weight:600}
.sr-gnav .sr-nx{text-align:right}

/* ways to build */
.sr-ways{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:44px}
.sr-way{border-radius:var(--r-md);padding:24px;min-height:190px;display:flex;flex-direction:column;justify-content:space-between;color:var(--ink);text-decoration:none;transition:transform .2s}
.sr-way:hover{transform:translateY(-4px)}
.sr-way h4{font-size:22px}
.sr-way p{font-size:14px;margin-top:8px}
.sr-way .sr-go{font-size:22px;align-self:flex-end}

/* ===== Interactive report (black progress section) ===== */
.sr-rp-hero{padding:150px 0 30px}
.sr-rp-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.sr-tag{font-size:13px;border:1.5px solid var(--line);border-radius:999px;padding:6px 12px}
.sr-yr-switch{display:inline-flex;border:1.5px solid var(--ink);border-radius:999px;padding:4px;gap:4px;margin-top:28px}
.sr-yr-switch a{text-decoration:none;padding:8px 18px;border-radius:999px;font-size:15px;font-weight:500}
.sr-yr-switch a.sr-on{background:var(--ink);color:#fff}

.sr-progress-band{background:#000;color:#fff;border-radius:var(--r-lg);margin:0 var(--gutter);padding:clamp(48px,7vw,96px) 0}
.sr-progress-band .sr-wrap{max-width:1180px}
.sr-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:36px 0 40px}
.sr-tab{font-family:inherit;font-size:15px;background:transparent;color:#fff;border:1.5px solid #3a3a3c;border-radius:999px;padding:10px 18px;cursor:pointer;transition:all .2s}
.sr-tab:hover{border-color:#fff}
.sr-tab[aria-selected="true"]{background:#fff;color:#000;border-color:#fff}
.sr-panel{display:none}.sr-panel.sr-on{display:block;animation:fade .45s ease}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.sr-pgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.sr-goal{background:#111;border:1px solid #232325;border-radius:var(--r-md);padding:28px;display:flex;flex-direction:column;gap:16px}
.sr-goal .sr-top{display:flex;gap:16px;align-items:center}
.sr-goal .sr-top .sr-tile{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;font-weight:700;font-size:20px;flex:0 0 auto}
.sr-goal .sr-top b{font-size:19px;font-weight:600;line-height:1.25}
.sr-goal .sr-lbl{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#8e8e93}
.sr-goal .sr-stmt{font-size:16px;color:#d1d1d6}
.sr-goal .sr-res{display:flex;align-items:baseline;gap:12px}
.sr-goal .sr-res .sr-big{font-size:52px;font-weight:600;letter-spacing:-.04em;line-height:1}
.sr-goal .sr-res span{color:#a1a1a6;font-size:14px}
.sr-bar{height:8px;background:#2c2c2e;border-radius:99px;overflow:hidden}
.sr-bar i{display:block;height:100%;width:0;border-radius:99px;transition:width 1.4s cubic-bezier(.2,.7,.2,1)}
.sr-goal .sr-acts{display:flex;flex-wrap:wrap;gap:6px}
.sr-goal .sr-acts a{font-size:12px;color:#fff;text-decoration:none;border:1px solid #3a3a3c;border-radius:999px;padding:5px 10px}
.sr-goal .sr-acts a:hover{border-color:#fff}
.sr-goal .sr-more{margin-top:auto}
.sr-goal .sr-more .sr-btn{padding:9px 18px;font-size:14px;border-color:#fff;color:#fff}
.sr-goal .sr-more .sr-btn:hover{background:#fff;color:#000}
.sr-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}
.sr-kpi{border-top:1.5px solid #3a3a3c;padding-top:18px}
.sr-kpi .sr-num{font-size:clamp(40px,5vw,64px);font-weight:600;letter-spacing:-.04em;line-height:1}
.sr-kpi .sr-lbl{color:#a1a1a6;font-size:14px;margin-top:8px}
.sr-tbc{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.05em;background:var(--yellow);color:#000;border-radius:6px;padding:2px 6px;vertical-align:middle;margin-left:6px}
.sr-legend{display:flex;gap:18px;flex-wrap:wrap;color:#a1a1a6;font-size:13px;margin-top:28px}

/* highlights narrative */
.sr-hnav{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0 8px}
.sr-hblock{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(28px,5vw,72px);padding:clamp(40px,6vw,72px) 0;border-top:1.5px solid var(--line);align-items:start}
.sr-hblock:first-of-type{border-top:0}
.sr-hblock .sr-ri{aspect-ratio:4/3}
.sr-hfig{display:flex;gap:28px;flex-wrap:wrap;margin:22px 0}
.sr-hfig div b{display:block;font-size:34px;font-weight:600;letter-spacing:-.03em}
.sr-hfig div span{font-size:13px;color:var(--muted)}
.sr-goalchips{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.sr-goalchips a{font-size:12px;text-decoration:none;color:#fff;border-radius:999px;padding:5px 10px;font-weight:500}

/* accordion */
.sr-acc{max-width:860px;margin-top:36px}
.sr-acc details{border-top:1.5px solid var(--line)}
.sr-acc details:last-child{border-bottom:1.5px solid var(--line)}
.sr-acc summary{list-style:none;cursor:pointer;padding:24px 44px 24px 0;font-size:19px;font-weight:500;position:relative}
.sr-acc summary::-webkit-details-marker{display:none}
.sr-acc summary::after{content:"+";position:absolute;right:4px;top:18px;font-size:28px;font-weight:300;transition:transform .25s}
.sr-acc details[open] summary::after{transform:rotate(45deg)}
.sr-acc .sr-a{padding:0 0 26px;color:#333;font-size:16px;max-width:720px}
.sr-notes{font-size:13px;color:var(--muted);max-width:860px;margin-top:40px}
.sr-notes li{margin:6px 0 6px 18px}

/* report index */
.sr-reports{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:48px}
.sr-report{position:relative;border-radius:var(--r-lg);overflow:hidden;min-height:460px;color:#fff;text-decoration:none;display:flex;align-items:flex-end;background:#000}
.sr-report img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.6;transition:transform 1s,opacity .4s}
.sr-report:hover img{transform:scale(1.04);opacity:.5}
.sr-report .sr-in{position:relative;padding:36px}
.sr-report .sr-y{font-size:clamp(64px,9vw,120px);font-weight:600;letter-spacing:-.05em;line-height:.9}
.sr-report p{color:#e5e5ea;margin:12px 0 22px;max-width:420px}

/* image fallback when a placeholder fails to load */
.sr-page img.sr-fail{opacity:0}
.sr-fallback{background:linear-gradient(135deg,#e9e3ff,#fff4c2 55%,#d9ffe0)}

/* reveal */
.sr-rv{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.sr-rv.sr-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.sr-rv{opacity:1;transform:none;transition:none}.sr-hero-card .sr-bg,.sr-frame img{transform:none!important}html{scroll-behavior:auto}}

/* responsive */
@media (max-width:980px){
  .sr-stats{grid-template-columns:repeat(3,1fr)}
  .sr-ways{grid-template-columns:repeat(2,1fr)}
  .sr-kpis{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:820px){
  .sr-chips,.sr-cards,.sr-journey,.sr-reports{grid-template-columns:1fr}
  .sr-ggg,.sr-row,.sr-quote,.sr-hl,.sr-hblock{grid-template-columns:1fr}
  .sr-ggg.sr-flip .sr-collage,.sr-row:nth-child(even) .sr-ri{order:0}
  .sr-pgrid{grid-template-columns:1fr}
  .sr-stats{grid-template-columns:repeat(2,1fr)}
  .sr-quote .sr-ph{aspect-ratio:4/3}
  .sr-hl dl div{grid-template-columns:110px 1fr}
  .sr-progress-band{margin:0 8px;border-radius:24px}
}
@media (max-width:480px){
  .sr-ways{grid-template-columns:1fr}
  .sr-fcols{grid-template-columns:1fr 1fr}
  .sr-news input{min-width:0;width:100%}
  .sr-story{width:62%}
}
/* placeholder backdrop under every image (visible until/if stock image loads) */
.sr-collage .sr-a,.sr-collage .sr-b,.sr-quote .sr-ph,.sr-ri,.sr-frame,.sr-card .sr-im,.sr-report,.sr-hero-card{background-image:linear-gradient(135deg,#e9e3ff,#fff4c2 55%,#d9ffe0)}
.sr-report,.sr-hero-card{background-color:#000}
.sr-hero-card .sr-sdg .sr-nm span{color:#e5e5ea}
.sr-page .sr-num,.sr-page .sr-big,.sr-page .sr-y,.sr-page .sr-hfig b{font-family:var(--hero);font-weight:500}
.sr-page .sr-btn{font-family:var(--text)}

/* Official UN SDG icons (same icons as /about) */
.sr-sdg .sr-sdgicon{width:92px;height:92px;border-radius:12px;flex:0 0 auto;display:block}
.sr-hero-card .sr-sdg .sr-sdgicon{width:120px;height:120px}
.sr-card .sr-sdg .sr-sdgicon{width:64px;height:64px}
.sr-goal .sr-top .sr-sdgicon{width:56px;height:56px;border-radius:10px;flex:0 0 auto}
@media (max-width:820px){.sr-sdg .sr-sdgicon{width:76px;height:76px}.sr-hero-card .sr-sdg .sr-sdgicon{width:96px;height:96px}}
.sr-sdg:has(.sr-sdgicon){gap:16px}
.sr-sdg:has(.sr-sdgicon) .sr-nm{white-space:nowrap;font-size:16px}

/* ===== Stakeholders main page — Nov 2026 refresh ===== */
.topbar.on-dark .tb-back{color:#fff}
/* black hero, same size as /about */
.sr-page .sr-bhero{min-height:100vh;min-height:100svh;background:#000;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:0 var(--gutter) clamp(40px,6vw,80px);margin:0}
.sr-bhero-in{align-self:flex-end;text-align:right;max-width:1200px}
.sr-page .sr-bhero h1{font-family:var(--display);font-weight:400;color:#fff;font-size:clamp(64px,12.5vw,200px);line-height:.86;letter-spacing:-.03em}
.sr-bhero p{font-family:var(--display);font-size:clamp(20px,2.3vw,34px);line-height:1.3;margin:22px 0 0 auto;max-width:820px;color:#fff}
/* stakeholder hub */
.sr-shub-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,80px);align-items:center}
.sr-shub h2{margin-bottom:18px}
.sr-shub-lead{font-size:clamp(19px,1.9vw,24px);line-height:1.4;color:#3a3a3c;max-width:520px}
.sr-orbit{position:relative;width:100%;max-width:560px;aspect-ratio:1/1;margin:0 auto}
.sr-ring{position:absolute;inset:0;width:100%;height:100%}
.sr-ring circle{fill:none;stroke:#d1d1d6;stroke-width:.35;stroke-dasharray:1.2 1.2;transform-origin:50% 50%;animation:srSpin 60s linear infinite}
@keyframes srSpin{to{transform:rotate(360deg)}}
.sr-core{position:absolute;left:50%;top:50%;width:30%;aspect-ratio:1/1;transform:translate(-50%,-50%);border-radius:50%;background:#000;color:#fff;display:grid;place-items:center;font-family:var(--display);font-size:clamp(24px,3vw,40px);box-shadow:0 0 0 12px #f3f3f3}
.sr-node{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:8px;width:130px;text-align:center;outline:none}
.sr-nodei{width:clamp(64px,7vw,88px);aspect-ratio:1/1;border-radius:50%;background:var(--c);color:var(--f);display:grid;place-items:center;transition:transform .25s,box-shadow .25s;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.sr-nodei svg{width:46%;height:46%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sr-node b{font-size:15px;font-weight:600;line-height:1.2}
.sr-tip{position:absolute;top:100%;margin-top:6px;background:#000;color:#fff;font-size:13px;line-height:1.3;padding:8px 12px;border-radius:10px;width:180px;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .2s,transform .2s;z-index:3}
.sr-node:hover .sr-nodei,.sr-node:focus .sr-nodei{transform:scale(1.1);box-shadow:0 12px 30px rgba(0,0,0,.18)}
.sr-node:hover .sr-tip,.sr-node:focus .sr-tip{opacity:1;transform:none}
/* black quote */
.sr-page .sr-qdark{background:#000;color:#fff}
.sr-qdark blockquote{color:#fff}
.sr-qdark cite{color:#a1a1a6}
.sr-qdark cite b{color:#fff}
/* SDG color-blocked GGG sections */
.sr-page .sr-gc{background:var(--c);color:#fff}
.sr-gc h2,.sr-gc .sr-body,.sr-gc .sr-sdg .sr-nm{color:#fff}
.sr-gc .sr-sdg .sr-nm span{color:rgba(255,255,255,.85)}
.sr-gc .sr-body{opacity:.95}
.sr-gc .sr-collage .sr-b{border-color:var(--c)}
.sr-gc .sr-sdgicon{box-shadow:0 0 0 3px rgba(255,255,255,.6)}
.sr-gc .sr-btn{border-color:#fff;color:#fff}
.sr-gc .sr-btn:hover{background:#fff;color:var(--c)}
.sr-gc .sr-story{color:#000}
/* journey: white with flip cards */
.sr-page .sr-jwhite{background:#fff;color:#000}
.sr-jwhite .sr-lead{margin-top:16px}
.sr-flipgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.sr-flipcard{perspective:1400px;height:440px;cursor:pointer;outline:none}
.sr-flipinner{position:relative;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}
.sr-flipcard:hover .sr-flipinner,.sr-flipcard:focus .sr-flipinner,.sr-flipcard.sr-flipped .sr-flipinner{transform:rotateY(180deg)}
.sr-face{position:absolute;inset:0;border-radius:28px;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.sr-front{background:#000 linear-gradient(135deg,#e9e3ff,#fff4c2 55%,#d9ffe0)}
.sr-front img{width:100%;height:100%;object-fit:cover}
.sr-front::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.65))}
.sr-fy{position:absolute;left:28px;bottom:22px;z-index:2;color:#fff;font-family:var(--hero);font-weight:500;font-size:72px;letter-spacing:-.04em;line-height:1}
.sr-fhint{position:absolute;right:20px;bottom:30px;z-index:2;color:#fff;font-size:13px;border:1.5px solid #fff;border-radius:999px;padding:6px 12px}
.sr-back{transform:rotateY(180deg);background:#000;color:#fff;padding:30px;display:flex;flex-direction:column}
.sr-back .sr-y{font-family:var(--hero);font-weight:500;font-size:44px;letter-spacing:-.04em}
.sr-back ul{list-style:none;margin-top:14px}
.sr-back li{padding:12px 0;border-top:1px solid #2c2c2e;font-size:16px}
.sr-back li a{text-decoration:none;color:#fff}
.sr-back li a:hover{text-decoration:underline}
.sr-back li span{display:block;color:#a1a1a6;font-size:13px}
/* build with us: black */
.sr-page .sr-bdark{background:#000;color:#fff}
.sr-bdark h2{color:#fff}
.sr-bdark .sr-lead{color:#c7c7cc;margin-top:14px}
.sr-bgrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,72px);align-items:center}
.sr-bimg{border-radius:32px;overflow:hidden;aspect-ratio:4/5;background:#1c1c1e}
.sr-bimg img{width:100%;height:100%;object-fit:cover}
.sr-wlist{grid-template-columns:1fr 1fr;margin-top:28px}
.sr-wlist .sr-way{min-height:150px}
.sr-wlist .sr-way:last-child{grid-column:1/-1;min-height:110px}
/* more: white */
.sr-page .sr-mwhite{background:#fff}
@media (max-width:980px){.sr-flipgrid{grid-template-columns:1fr 1fr}}
@media (max-width:820px){
.sr-shub-grid,.sr-bgrid{grid-template-columns:1fr}
.sr-flipgrid{grid-template-columns:1fr}
.sr-flipcard{height:400px}
.sr-bimg{aspect-ratio:4/3}
.sr-bhero-in{text-align:left;align-self:flex-start}
.sr-bhero p{margin-left:0}
}
@media (max-width:600px){
.sr-orbit{aspect-ratio:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:22px 8px;max-width:none}
.sr-ring,.sr-core{display:none}
.sr-node{position:static;transform:none;width:auto}
.sr-tip{display:none}
.sr-wlist{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.sr-ring circle{animation:none}.sr-flipinner{transition:none}}
.sr-bdark .sr-way{color:#000}
.sr-fhint{top:20px;bottom:auto;background:rgba(0,0,0,.25);backdrop-filter:blur(6px)}
@media (hover:none){.sr-fhint{font-size:0}.sr-fhint::after{content:"Tap to explore";font-size:13px}}

/* ===== Nov 2026: stats color, black story cards, goal pages redesign ===== */
.sr-stats .sr-stat{background:var(--c,#000);color:#fff}
.sr-stats .sr-stat .sr-lbl{color:#fff;opacity:.95}
.sr-story{background:#000;color:#fff;box-shadow:0 12px 40px rgba(0,0,0,.25)}
.sr-story small{color:#a1a1a6}
.sr-gc .sr-story{color:#fff}
/* goal hero */
.sr-gh-icon{width:clamp(120px,12vw,180px);height:auto;border-radius:16px;margin:0 0 28px auto;display:block}
.sr-page .sr-ghero2 h1{font-size:clamp(52px,9vw,140px);line-height:.9}
.sr-gimg{border-radius:32px;overflow:hidden;aspect-ratio:4/3;background:#f3f3f3}
.sr-gimg img{width:100%;height:100%;object-fit:cover;display:block}
/* what we're doing (color block + flip cards) */
.sr-gc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:36px}
.sr-gc-head h2{color:#fff}
.sr-gc-head p{color:#fff;opacity:.92;font-size:19px}
.sr-gflip{height:420px}
.sr-ftitle{position:absolute;left:26px;right:26px;bottom:24px;z-index:2;color:#fff;font-family:var(--display);font-size:clamp(24px,2.4vw,32px);line-height:1.1}
.sr-gflip .sr-back{justify-content:space-between}
.sr-gflip .sr-back h3{color:#fff;font-size:clamp(24px,2.2vw,30px);margin-bottom:12px}
.sr-gflip .sr-back p{color:#d1d1d6;font-size:17px;line-height:1.5;flex:1}
.sr-gflip .sr-back .sr-btn{align-self:flex-start}
/* measure (black) */
.sr-gm-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,72px);align-items:start}
.sr-gmeasure h2{color:#fff}
.sr-gm-lead{color:#a1a1a6;font-size:19px;margin-top:12px}
.sr-gstats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px}
.sr-gstat{background:var(--c);border-radius:20px;padding:20px 18px;min-height:132px;display:flex;flex-direction:column;justify-content:space-between}
.sr-gstat-n{font-family:var(--hero);font-weight:500;font-size:clamp(30px,3.4vw,46px);letter-spacing:-.03em;line-height:1;color:#fff}
.sr-gstat-l{font-size:13px;color:#fff;opacity:.95;margin-top:10px}
.sr-mlist2{list-style:none;display:grid;gap:10px;margin:0;padding:0}
.sr-mlist2 li{display:flex;gap:16px;align-items:center;background:#111;border:1px solid #232325;border-radius:20px;padding:20px;font-size:18px;color:#fff;transition:border-color .2s,transform .2s}
.sr-mlist2 li:hover{border-color:var(--c);transform:translateX(4px)}
.sr-mlist2 .sr-mn{width:44px;height:44px;border-radius:12px;background:var(--c);display:grid;place-items:center;font-family:var(--hero);font-weight:500;flex:0 0 auto}
/* explore goals */
.sr-gx-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:16px;margin-bottom:28px}
.sr-gx-nav{display:flex;gap:10px;flex-wrap:wrap}
.sr-orbs{display:grid;grid-template-columns:repeat(10,1fr);gap:10px}
.sr-orb img{width:100%;aspect-ratio:1/1;border-radius:14px;display:block;transition:transform .2s,box-shadow .2s}
.sr-orb:hover img{transform:translateY(-6px);box-shadow:0 12px 24px color-mix(in srgb,var(--c) 45%,transparent)}
.sr-orb-cur img{outline:4px solid #000;outline-offset:3px}
.sr-credit{font-size:12px;color:#6e6e73;margin-top:12px}
@media (max-width:820px){.sr-gm-grid{grid-template-columns:1fr}.sr-orbs{grid-template-columns:repeat(5,1fr)}.sr-gh-icon{margin-left:0}}
@media (max-width:480px){.sr-gstats{grid-template-columns:1fr 1fr}}

/* ===== Larger, readable SDG icons ===== */
.sr-sdg .sr-sdgicon{width:clamp(120px,11vw,150px);height:auto}
.sr-hero-card .sr-sdg .sr-sdgicon{width:clamp(130px,12vw,160px)}
.sr-card .sr-sdg .sr-sdgicon{width:96px;height:96px}
.sr-goal .sr-top .sr-sdgicon{width:84px;height:84px;border-radius:12px}
.sr-gh-icon{width:clamp(160px,15vw,220px)}
.sr-orb img{border-radius:16px}
@media (max-width:820px){.sr-sdg .sr-sdgicon{width:116px}.sr-goal .sr-top .sr-sdgicon{width:72px;height:72px}.sr-orbs{grid-template-columns:repeat(4,1fr)}}

/* journey: solid-color card fronts (2024/2025/2026), black backs */
.sr-jwhite .sr-flipcard:nth-child(1) .sr-front{background:#D5B0FF}
.sr-jwhite .sr-flipcard:nth-child(2) .sr-front{background:#FFD900}
.sr-jwhite .sr-flipcard:nth-child(3) .sr-front{background:#B4FFBD}
.sr-jwhite .sr-front::after,.sr-gflip .sr-front::after{display:none}
.sr-jwhite .sr-front .sr-fy{color:#000}
.sr-jwhite .sr-front .sr-fhint{color:#000;border-color:#000}

/* goal pages: What we're doing cards, light tint of the goal color on the front, black backs */
.sr-gflip .sr-front{background:color-mix(in srgb,var(--c) 28%,#fff)}
.sr-gflip .sr-front img{display:none}
.sr-gflip .sr-front .sr-ftitle{color:#000}
.sr-gflip .sr-front .sr-fhint{color:#000;border-color:#000}


/* impact reports index: solid-color report cards (2025 yellow, 2024 lavender — matches journey cards) */
.sr-report.sr-report-solid{background:var(--c);background-image:none;color:#000;transition:transform .25s}
.sr-report.sr-report-solid:hover{transform:translateY(-4px)}
.sr-report.sr-report-solid p{color:#000}


/* white full-height hero: Impact Reports index + annual reports */
.sr-page .sr-bhero.sr-whero{background:#fff;color:#000}
.sr-page .sr-bhero.sr-whero h1,.sr-page .sr-bhero.sr-whero p{color:#000}
.sr-rp main.sr-page > section.sr-bhero.sr-whero{padding:0 var(--gutter) clamp(40px,6vw,80px)}
.sr-whero .sr-yr-switch{margin-top:32px}

/* flip cards: no hover/tap hint */
.sr-fhint{display:none!important}

/* Progress & Performance stats: Build with us palette */
.sr-stats .sr-stat{color:var(--f,#fff)}
.sr-stats .sr-stat .sr-lbl{color:inherit}


/* journey cards: room for 5 entries on the back */
.sr-jwhite .sr-flipcard{height:540px}
.sr-jwhite .sr-back li{padding:10px 0;font-size:15px}
@media (max-width:820px){.sr-jwhite .sr-flipcard{height:520px}}
