/* Scoped to the report: typography, header and footer belong to the active theme. */
.r24{--r24-ink:var(--tsn-black,#222);--r24-paper:var(--tsn-white,#fff);--r24-line:var(--tsn-line,#d8d5cd);--r24-yellow:var(--tsn-yellow,#febe10);--r24-cream:var(--tsn-cream,#f7f5ef);color:var(--r24-ink);font-family:inherit;line-height:1.55;width:100%;max-width:100%;min-width:0;padding:clamp(28px,5vw,64px) 0}
.r24 *,.r24 *::before,.r24 *::after{box-sizing:border-box;min-width:0}
.r24 [hidden]{display:none!important}
.r24 h1,.r24 h2,.r24 h3,.r24 p,.r24 figure{margin:0}
.r24 h1{font-size:clamp(1.9rem,4.4vw,3.6rem);line-height:1.12;letter-spacing:-.04em;margin:12px 0 20px}
.r24 h2{font-size:clamp(1.55rem,3vw,2.4rem);line-height:1.2;letter-spacing:-.03em}
.r24 h3{font-size:clamp(1.05rem,2.2vw,1.35rem);line-height:1.35}
.r24 p,.r24 a,.r24 h1,.r24 h2,.r24 h3,.r24 figcaption{overflow-wrap:anywhere}
.r24 .r24-intro{border-left:6px solid var(--r24-yellow);padding-left:clamp(16px,3vw,30px);margin-bottom:32px}
.r24 .r24-intro>p:last-child,.r24 .r24-lead{max-width:70ch;color:var(--tsn-gray,#6b6b68);margin-top:14px}
.r24 .r24-eyebrow{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--tsn-gray,#6b6b68);margin-bottom:8px}
.r24 .r24-main-menu,.r24 .r24-directions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 40px}
.r24 .r24-tile{display:grid;grid-template-columns:40px minmax(0,1fr) 18px;align-items:center;gap:14px;text-decoration:none;color:var(--r24-ink);border:1px solid var(--r24-line);border-radius:var(--tsn-radius-small,12px);background:var(--r24-paper);padding:20px;font-weight:700;font-size:.92rem;transition:background .15s,border-color .15s}
.r24 .r24-main-menu .r24-tile{background:var(--r24-ink);color:#fff;border-color:var(--r24-ink)}
.r24 .r24-tile:hover,.r24 .r24-tile:focus-visible{background:var(--r24-yellow);color:var(--r24-ink);border-color:var(--r24-yellow)}
.r24 .r24-tile svg{width:40px;height:40px;flex:none}
.r24 .r24-tile-arrow{font-size:1.25rem;font-weight:400}
.r24 .r24-gallery{padding:18px 0 32px}
.r24 .r24-gallery-section{scroll-margin-top:120px;margin-bottom:48px;max-width:100%;width:100%}
.r24 #gallery,.r24 .section{scroll-margin-top:110px}
.r24 .r24-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 16px}
.r24 .r24-section-heading h3{display:flex;align-items:center;gap:14px}
.r24 .r24-section-heading svg{width:38px;height:38px;flex-shrink:0;color:var(--r24-ink)}
.r24 .r24-section-heading>a{font-size:.8rem;white-space:nowrap;text-underline-offset:4px}
.r24 .r24-slider{border:1px solid var(--r24-line);border-radius:var(--tsn-radius,20px);background:var(--r24-paper);width:100%;max-width:100%;overflow:hidden}
.r24 .r24-track{display:flex;align-items:stretch;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.r24 .r24-track::-webkit-scrollbar{display:none}
.r24 .r24-slide{flex:0 0 100%;width:100%;max-width:100%;scroll-snap-align:start;scroll-snap-stop:always;margin:0}
.r24 .r24-image-stage{aspect-ratio:16/9;height:auto;max-height:580px;background:#eeede9;display:flex;align-items:center;justify-content:center;padding:12px;overflow:hidden}
.r24 .r24-photo-link{display:flex;align-items:center;justify-content:center;width:100%;height:100%;max-width:100%}
.r24 .r24-photo-link img{display:block;width:auto;height:auto;max-width:min(100%,var(--r24-natural-width));max-height:100%;object-fit:contain;margin:0;border:0;border-radius:3px;box-shadow:0 2px 16px #0000000b}
.r24 .r24-caption{font-size:.95rem;padding:22px clamp(16px,3vw,30px);color:var(--r24-ink);border-top:1px solid var(--r24-line);line-height:1.6}
.r24 .r24-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 18px 18px}
.r24 .r24-controls p{font-size:.78rem;color:var(--tsn-gray,#6b6b68);text-align:center}
.r24 .r24-controls button{appearance:none;display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;padding:0;border:1px solid var(--r24-line);border-radius:50%;font:inherit;font-size:1.4rem;line-height:1;background:var(--r24-cream);color:var(--r24-ink);cursor:pointer}
.r24 .r24-controls button:hover{background:var(--r24-yellow)}
.r24 .r24-controls button:disabled{opacity:.35;cursor:default}
.r24 .r24-swipe-hint{display:none}
.r24 .r24-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.r24 .r24-report-details{border-top:1px solid var(--r24-line);padding-top:20px}
.r24 .section{padding:36px 0;background:transparent;color:inherit}
.r24 .wrap{width:100%;max-width:none;margin:0}
.r24 .section-head{margin-bottom:26px;display:block}
.r24 .section-kicker{font-size:.78rem;color:var(--tsn-gray,#6b6b68);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.r24 .section-lead{max-width:78ch;margin-top:14px;color:var(--tsn-gray,#6b6b68)}
.r24 .metric-grid,.r24 .insight-grid,.r24 .work-grid,.r24 .esg-grid,.r24 .plan-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}
.r24 .metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px}
.r24 .metric,.r24 .insight,.r24 .work-card,.r24 .esg-card,.r24 .plan-card,.r24 .donut-card,.r24 .bar-card{padding:24px;background:var(--r24-paper);border:1px solid var(--r24-line);border-radius:var(--tsn-radius-small,12px)}
.r24 .metric-value,.r24 .esg-value{display:block;font-size:clamp(1.4rem,2.7vw,2.3rem);font-weight:700;letter-spacing:-.04em;line-height:1.2;margin-bottom:12px}
.r24 .metric-label,.r24 .insight p,.r24 .esg-card p,.r24 .plan-card p{display:block;font-size:.87rem;color:var(--tsn-gray,#6b6b68)}
.r24 .insight-tag{display:block;font-size:.78rem;margin-bottom:12px;color:var(--tsn-gray,#6b6b68)}
.r24 .insight h3,.r24 .esg-card h3,.r24 .plan-card h3{margin-bottom:12px}
.r24 .finance-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px}
.r24 .table-wrap{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;background:var(--r24-paper);border:1px solid var(--r24-line);border-radius:12px}
.r24 table{border-collapse:collapse;width:100%;font-size:.84rem;margin:0}
.r24 th,.r24 td{text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid var(--r24-line)}
.r24 th{background:var(--r24-ink);color:white}
.r24 td:not(:first-child){white-space:nowrap}
.r24 .finance-aside{display:grid;gap:16px}
.r24 .donut-card strong{display:block;font-size:2.6rem;color:var(--r24-ink)}
.r24 .bar-row{margin-top:16px}
.r24 .bar-label{display:flex;gap:10px;justify-content:space-between;font-size:.8rem;margin-bottom:8px}
.r24 .bar-track{height:8px;background:var(--r24-cream);border-radius:8px;overflow:hidden}
.r24 .bar-fill{height:100%;background:var(--r24-yellow)}
.r24 .note{font-size:.82rem;color:var(--tsn-gray,#6b6b68);margin:20px 0}
.r24 .work-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}
.r24 .plain-list{padding-left:20px;font-size:.88rem}
.r24 .plain-list li{margin-top:8px}
.r24 .work-card{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;text-decoration:none;color:inherit}
.r24 .work-card svg{width:40px;height:40px}
.r24 .work-card h3{grid-column:1/-1;font-size:.96rem}
.r24 .work-card:hover{border-color:var(--r24-yellow)}
.r24 .work-count{justify-self:end;font-size:1.35rem;font-weight:700}
.r24 .plan-index{display:none}
@media(max-width:900px){.r24 .metric-grid,.r24 .esg-grid,.r24 .insight-grid,.r24 .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.r24 .finance-grid{grid-template-columns:minmax(0,1fr)}.r24 .finance-aside{grid-template-columns:repeat(2,minmax(0,1fr))}.r24 .r24-tile{padding:16px;gap:10px;grid-template-columns:34px minmax(0,1fr)}.r24 .r24-tile-arrow{display:none}.r24 .r24-tile svg{width:34px;height:34px}}
@media(max-width:600px){.r24 .r24-main-menu,.r24 .r24-directions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:28px}.r24 .r24-tile{display:flex;align-items:flex-start;flex-direction:column;gap:10px;font-size:.8rem;padding:16px;line-height:1.4}.r24 .r24-section-heading{align-items:flex-start;flex-direction:column;gap:8px}.r24 .r24-section-heading h3{gap:10px}.r24 .r24-section-heading>a{margin-left:48px}.r24 .r24-image-stage{aspect-ratio:4/3;padding:8px}.r24 .r24-caption{font-size:.86rem;padding:16px}.r24 .r24-controls{padding:0 12px 14px;gap:8px}.r24 .r24-swipe-hint{display:inline}.r24 .r24-controls button{flex-basis:44px;width:44px;height:44px}.r24 .r24-gallery-section{margin-bottom:32px}.r24 .work-grid,.r24 .insight-grid,.r24 .plan-grid,.r24 .work-highlights,.r24 .finance-aside{grid-template-columns:minmax(0,1fr)}.r24 .metric,.r24 .esg-card{padding:16px}.r24 th,.r24 td{padding:12px}.r24 table{font-size:.75rem}.r24 .r24-gallery-section{scroll-margin-top:90px}}
@media(prefers-reduced-motion:reduce){.r24 *{scroll-behavior:auto!important;transition:none!important}}

/* Caption belongs to its direction; swiping a photo never moves this panel. */
.r24 .r24-caption{background:var(--r24-caption-bg,var(--r24-cream));margin-bottom:18px;min-height:5.6em;isolation:isolate}
@media(max-width:600px){.r24 .r24-caption{margin-bottom:14px;min-height:7.6em}}

.r24 .r24-caption{white-space:pre-line}
@media(max-width:600px){.r24{padding-inline:3px}.r24 .r24-caption{padding-inline:19px}}
.r24 .r23-card{padding:18px;border:1px solid #d8d5cd;border-radius:12px;background:#fff;margin-top:16px}
