:root{color-scheme:dark;--bg:#0b1119;--ink:#f0f5fa;--muted:#aab7c7;--line:#293746;--white:#111b27;--mint:#b9ebdf;font-family:Inter,system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--bg)}a{color:inherit;text-decoration:none}button,select{font:inherit}a:focus-visible,select:focus-visible{outline:3px solid #69d7c5;outline-offset:4px}.shell{width:min(1320px,calc(100% - 100px));margin-inline:auto}header{position:sticky;top:0;z-index:2;background:rgba(11,17,25,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav,.foot{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:74px}.brand{display:inline-flex;align-items:center;flex:none}.brand img{display:block;width:146px;height:40px;object-fit:contain;object-position:left center}nav{display:flex;gap:30px;font-size:.88rem;font-weight:600;color:var(--muted)}nav a:hover,.subtle:hover{color:#69d7c5}.button,.subtle{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:50px;padding:0 20px;border-radius:9px;font-size:.87rem;font-weight:700;white-space:nowrap}.button{background:#94e4d5;color:#091b1b;transition:background .2s}.button:hover{background:#b7f3e7}.small{min-height:42px;padding-inline:15px}.subtle{padding-inline:0}.hero{display:grid;grid-template-columns:1fr 1.13fr;align-items:center;gap:46px;min-height:620px;padding-block:70px 86px}.eyebrow{font-size:.72rem;font-weight:750;letter-spacing:.16em;text-transform:uppercase;color:#a2bbcb;margin:0 0 18px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,5.5vw,6rem);line-height:1.01;letter-spacing:-.078em;margin-bottom:24px;font-weight:800}h1 span{color:#99e1d4}.lead{font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.65;color:var(--muted);max-width:42ch}.actions{display:flex;gap:22px;flex-wrap:wrap;margin-top:27px}.stage{padding:28px;border-radius:26px;background:radial-gradient(ellipse at 75% 0%,#254a50 0,transparent 60%),#111d2a;border:1px solid #2c414f}.sources{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:13px}.sources span{padding:6px 9px;background:#142331;border:1px solid #37505c;border-radius:6px;color:#cbdbe5;font-size:.7rem;font-weight:650}.panel{background:#0b141e;color:white;border:1px solid #314350;padding:20px;border-radius:15px;box-shadow:0 16px 28px #03060a70}.panel-head,.sector-control,figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel h2{font-size:1.24rem;letter-spacing:-.03em;margin:5px 0 0}.meta{font-size:.68rem;color:#bcc1c7;margin:0}.panel select{color:white;background:#1a2a38;border:1px solid #486070;border-radius:7px;font-size:.75rem;padding:7px;min-height:34px;max-width:100%}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:17px 0 10px}.metric,figure{background:#14202c;border:1px solid #2e4151;border-radius:8px}.metric{padding:10px;overflow-wrap:anywhere}.metric span{display:block;font-size:.66rem;color:#c9cbd0;margin-bottom:5px}.metric strong{font-size:clamp(.8rem,1.45vw,1.32rem);letter-spacing:-.035em}figure{margin:0;padding:10px 12px 9px}figcaption{font-size:.72rem}figcaption span{color:#bdc4c9}.chart{display:flex;gap:8px;height:125px;margin-top:9px}.column{display:grid;flex:1;min-width:0;grid-template-rows:1fr auto;text-align:center;gap:4px;font-size:.62rem;color:#c6cbd0}.bar-track{display:flex;align-items:end;justify-content:center;border-bottom:1px solid #4c5358;background:repeating-linear-gradient(to top,transparent 0 29%,#ffffff10 30% 31%)}.bar{width:min(72%,58px);height:var(--height);background:linear-gradient(#a9ebde,#4d9e94);border-radius:4px 4px 0 0;position:relative;transition:height .25s}.bar b{position:absolute;top:4px;left:50%;translate:-50% 0;color:#202b2a;font-size:.58rem;white-space:nowrap}.sector-control{margin-top:10px;color:#d7d9dd;font-size:.75rem}.section{padding-block:82px}.story{display:grid;grid-template-columns:1fr 1fr;gap:50px;border-top:1px solid var(--line);padding-top:56px}h2{font-size:clamp(2rem,4vw,4.1rem);letter-spacing:-.064em;line-height:1.04;margin-bottom:17px}.copy{font-size:1.03rem;line-height:1.75;color:var(--muted)}.copy strong{color:var(--ink)}.note{font-size:.83rem}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:40px}.steps article,.cases a{background:var(--white);border:1px solid var(--line);border-radius:13px;padding:24px}.steps article>span{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:6px;background:var(--bg);margin-bottom:18px}h3{font-size:1.08rem;letter-spacing:-.025em;margin-bottom:8px}.steps p,.cases p{color:var(--muted);line-height:1.55;font-size:.92rem;margin:0}.industries{background:#0e1722}.industries h2,.closing h2{max-width:18ch}.cases{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:29px}.cases a{transition:background .2s,border-color .2s}.cases a:hover{background:#172d35;border-color:#59988e}.cases h3{display:flex;justify-content:space-between;gap:8px}.closing{display:flex;align-items:center;justify-content:space-between;gap:24px}.closing p{margin:0}footer{border-top:1px solid var(--line);color:var(--muted);font-size:.82rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1000px){.shell{width:calc(100% - 64px)}.hero{gap:24px}.stage{padding:16px}.cases{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.shell{width:calc(100% - 36px)}.hero,.story{grid-template-columns:1fr;gap:24px}.hero{padding-block:50px}.section{padding-block:50px}.story{padding-top:36px}.nav{min-height:62px;gap:10px}nav{display:none}.brand img{width:124px}.stage{padding:12px}.panel{padding:12px}.metric{padding:7px}.steps{grid-template-columns:1fr}.closing{align-items:flex-start;flex-direction:column}.steps article,.cases a{padding:16px}.actions{gap:16px}.foot{gap:10px}}
@media(max-width:365px){.shell{width:calc(100% - 28px)}.cases{grid-template-columns:1fr}.bar b{font-size:.52rem}.button,.subtle{gap:8px}.actions .button{padding-inline:13px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.gallery{background:#0e1722;border-block:1px solid var(--line)}
.gallery-nav{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 40px}
.gallery-nav a{padding:10px 14px;border:1px solid #37505c;border-radius:8px;color:#cbdbe5;background:#142331}
.area{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:center;gap:clamp(24px,6vw,88px);padding-block:45px;border-top:1px solid var(--line)}
.area-copy h3{font-size:clamp(1.65rem,3.1vw,3rem);line-height:1.03;letter-spacing:-.05em}
.area-copy h4{font-size:1.03rem;color:#a9ebde;margin:15px 0 10px}
.area-copy p{color:var(--muted);line-height:1.65;margin:0;max-width:46ch}
.area-panel{min-width:0;box-shadow:0 16px 35px #03060a50}
.area-panel h4{margin:0}
.guided-filter{display:flex;align-items:center;gap:8px;font-size:.72rem;color:#d7d9dd}
.guided-filter select{min-width:0}
.guided .guided-filter select{animation:filter-focus 1.1s ease 2}
@keyframes filter-focus{50%{outline:2px solid #91e7d6;outline-offset:2px}}
.area-chart{margin-top:10px}
.trend{display:block;width:100%;height:auto;max-height:162px;overflow:visible}
.trend-grid{stroke:#344554;fill:none;stroke-width:.65}
.trend-line{fill:none;stroke:#91e7d6;stroke-width:2;stroke-linejoin:round}
.trend circle{fill:#91e7d6}
.trend text,.donut-chart text{fill:#eaf6fa;text-anchor:middle;font-size:7px}
.trend-labels{display:flex;justify-content:space-between;padding-inline:2%;color:#bccbd7;font-size:.66rem}
.in-view .trend-line{stroke-dasharray:1;animation:draw-line .75s ease both}
@keyframes draw-line{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
.demo-bars{display:flex;gap:8px;height:143px;margin-top:8px}
.demo-column{display:grid;grid-template-rows:1fr auto;min-width:0;flex:1;text-align:center;font-size:.66rem;color:#c6d3dd;gap:6px}
.demo-track{display:flex;align-items:flex-end;justify-content:center;gap:3px;border-bottom:1px solid #4c5f70;background:repeating-linear-gradient(to top,transparent 0 29%,#ffffff10 30% 31%)}
.demo-bar{height:var(--height);width:min(46%,45px);min-width:0;background:#91e7d6;border-radius:4px 4px 0 0;color:#0b2624;position:relative}
.demo-bar:nth-child(2){background:#84aefa}
.demo-bar b{display:block;font-size:.6rem;line-height:1.2;margin-top:2px}
.in-view .demo-bar{animation:rise-bar .58s ease both;transform-origin:bottom}
@keyframes rise-bar{from{transform:scaleY(.06)}to{transform:scaleY(1)}}
.chart-legend{display:flex;gap:13px;font-size:.7rem;color:#c6d3dd}
.chart-legend span::before,.donut-chart i{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;background:#91e7d6;margin-right:5px}
.chart-legend span+span::before{background:#84aefa}
.donut-chart{display:flex;align-items:center;justify-content:center;gap:clamp(10px,4vw,35px);min-height:142px}
.donut-chart svg{width:115px;max-width:36%;flex:none;fill:none;stroke-width:12}
.donut-chart text{font-size:17px;font-weight:700}
.donut-chart ul{list-style:none;margin:0;padding:0;color:#c6d3dd;font-size:.73rem}
.donut-chart li{display:flex;align-items:center;gap:5px;margin:8px 0}
.donut-chart i{background:var(--series);flex:none}
.donut-chart li strong{margin-left:auto;padding-left:8px}
.in-view .donut-chart g{animation:reveal-ring .55s ease both}
@keyframes reveal-ring{from{opacity:.2}to{opacity:1}}
.area-actions{display:flex;justify-content:space-between;gap:13px;align-items:center;margin-top:12px}
.area-detail{color:#c6d3dd;font-size:.75rem;line-height:1.45;margin:0}
.replay{color:#91e7d6;background:transparent;border:1px solid #446e71;border-radius:7px;padding:7px 9px;font-size:.69rem;cursor:pointer;flex:none}
.replay:hover{background:#1d3940}
.replay:focus-visible{outline:2px solid #91e7d6;outline-offset:3px}
@media(max-width:760px){.area{grid-template-columns:1fr;gap:18px;padding-block:30px}.gallery-nav{display:flex}.area-panel .panel-head{flex-wrap:wrap}.area-actions{align-items:flex-start;flex-direction:column}.demo-bars{gap:4px}.demo-bar b{font-size:.52rem}}
@media(prefers-reduced-motion:reduce){.area *{animation:none!important}}
@media(prefers-reduced-motion:no-preference){.chart-active .bar{animation:rise-bar .65s ease both;transform-origin:bottom}.chart-active .column:nth-child(2n) .bar{animation-delay:.09s}}
