:root{--ink:#173842;--muted:#647a82;--teal:#166b79;--line:#dce5e8;--paper:#fff;--background:#f5f7f7;--light:#eaf2f1;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--ink);font:14px/1.5 var(--sans)}button,select{font:inherit}button{cursor:pointer}button,select,a{-webkit-tap-highlight-color:transparent}button:focus-visible,select:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #d08b3d;outline-offset:4px}button{color:inherit}button:disabled{opacity:.4;cursor:default}[hidden]{display:none!important}svg{display:block}button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-100px;z-index:100;background:white;padding:12px}.skip-link:focus{top:12px}.site-header{background:white;border-bottom:1px solid var(--line)}.masthead,.nav-row,main{max-width:1496px;margin:auto;padding-left:48px;padding-right:48px}.masthead{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:15px}.brand-mark{font:italic 42px/1 var(--serif);border-right:1px solid #cbd9dc;padding-right:19px;color:var(--teal)}.brand-title{font-size:21px;font-weight:650;letter-spacing:-.5px}.brand-title>span{font-weight:400;margin-left:5px}.brand-subtitle{font-size:11px;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted);margin-top:3px}.beta-badge{background:#f7efe5;border:1px solid #e9d9c2;color:#80603d;padding:4px 9px;border-radius:4px;font-size:10px;font-weight:600;letter-spacing:.7px;text-transform:uppercase;margin-left:5px}.scope-note{font-size:12px;color:var(--muted);white-space:nowrap}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#5b9a90;margin-right:8px}.scope-divider{margin:0 12px;color:#b2c0c3}.nav-row{display:flex;justify-content:space-between;align-items:center}.tabs{display:flex;gap:32px}.tab{display:flex;align-items:center;gap:9px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:16px 3px 17px;font-weight:550}.tab:hover{color:var(--teal)}.tab.active{border-color:var(--teal);color:var(--teal)}.tab svg{width:18px;height:18px}.nav-note{font-size:11px;color:#819198;letter-spacing:.25px}main{padding-top:31px;padding-bottom:20px}.view-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.eyebrow{margin:0 0 7px;font-size:10px;font-weight:650;letter-spacing:1.6px;text-transform:uppercase;color:var(--teal)}h1{font-family:var(--serif);font-size:34px;line-height:1.2;font-weight:400;letter-spacing:-.8px;margin:0 0 8px}.view-heading p:last-child{margin:0;color:var(--muted);font-size:13px}.view-number{font:32px var(--serif);color:#79959c;white-space:nowrap}.view-number span{font:14px var(--sans);color:#a1b0b5}.toolbar{display:flex;gap:24px;align-items:center;margin-bottom:22px;min-height:62px}.aspect-control{display:flex;flex-direction:column;gap:5px}.aspect-control label,.year-control legend,.legend-title{color:var(--muted);text-transform:uppercase;font-size:9px;letter-spacing:1.2px;font-weight:650}select{height:42px;width:350px;border:1px solid #cad9dd;border-radius:6px;background:#fff;color:var(--ink);padding:0 37px 0 13px;font-size:13px;cursor:pointer}.year-control{padding:0;border:0;margin:0}.year-control legend{margin-bottom:5px}.year-buttons{display:flex;padding:3px;background:#e8eeee;border-radius:6px;border:1px solid #e1e7e7;height:42px}.year-buttons button{border:0;padding:4px 15px;border-radius:4px;background:transparent;font-size:12px;color:#5d747a}.year-buttons button.selected{background:white;color:#135765;box-shadow:0 1px 4px #15364112;font-weight:650}.toolbar-note{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);padding-top:17px}.tiny-info{border:1px solid #9aaeb4;border-radius:50%;height:14px;width:14px;display:inline-flex;align-items:center;justify-content:center;font:10px var(--serif)}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:22px;align-items:stretch}.map-card,.zone-sidebar,.chart-card,.scores-card{background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 3px 14px #17384203}.map-card{position:relative;background:#f8fbfa;min-height:600px}.map-caption{position:absolute;left:24px;top:19px;z-index:1;pointer-events:none}.small-label{font-size:10px;font-weight:650;letter-spacing:1.2px;text-transform:uppercase}.map-instruction{display:block;font-size:11px;color:var(--muted);margin-top:3px}.map-controls{position:absolute;right:18px;top:18px;z-index:2;display:flex;flex-direction:column;border:1px solid #d3dfe1;border-radius:6px;overflow:hidden;box-shadow:0 2px 6px #18384108}.map-controls button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:white;border:0;font-size:20px;line-height:1}.map-controls button+button{border-top:1px solid #e5ecee}.map-controls button:hover{background:#eaf2f1}.map-controls svg{width:15px;height:15px}#zone-map{width:100%;height:100%;min-height:600px;max-height:720px;touch-action:none}.zone-shape{stroke:#fff;stroke-width:1.9;stroke-linejoin:round;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .25s,filter .15s}.zone-shape:hover,.zone-shape:focus-visible{stroke:#123e4b;stroke-width:2.5;filter:brightness(1.05);outline:none}.zone-shape.selected{stroke:#102f3a;stroke-width:3}.map-label{font-family:var(--sans);font-size:12px;font-weight:600;pointer-events:none;text-anchor:middle;paint-order:stroke;stroke-width:2.7px;stroke-linejoin:round}.map-label .map-label-score{font-size:15px;font-weight:700}.map-scale{position:absolute;left:25px;bottom:27px;width:180px;background:#ffffffec;border:1px solid #dfe9e7;padding:10px 13px 8px;border-radius:6px;pointer-events:none}.scale-heading{display:flex;justify-content:space-between;margin-bottom:7px;font-size:10px;color:var(--muted)}.scale-heading span:first-child{color:var(--ink);font-weight:600}.colour-ramp{height:7px;border-radius:2px;background:linear-gradient(90deg,#eff5ef,#c7e3d7,#88bdb9,#3e8d9e,#15576e)}.scale-ticks{display:flex;justify-content:space-between;font-size:9px;color:#778c92;margin-top:5px}.map-footnote{position:absolute;right:18px;bottom:14px;font-size:9px;color:#81969c}.zone-sidebar{padding:22px;min-height:600px}.sidebar-kicker{font-size:9px;text-transform:uppercase;letter-spacing:1.3px;color:var(--teal);font-weight:650;margin:0 0 8px}.sidebar-title{font-family:var(--serif);font-size:24px;line-height:1.2;margin:0;font-weight:400;letter-spacing:-.35px}.sidebar-subtitle{color:var(--muted);font-size:11px;margin:7px 0 22px}.ranking{list-style:none;padding:0;margin:0}.rank-item{margin:0 0 17px}.rank-button{width:100%;text-align:left;background:none;border:0;padding:0;display:grid;grid-template-columns:19px 1fr auto;gap:7px;align-items:center}.rank-no{font-size:10px;color:#9badb2}.rank-name{font-size:11px;white-space:nowrap}.rank-value{font-variant-numeric:tabular-nums;font-size:12px;font-weight:650}.rank-bar{grid-column:2/4;height:3px;background:#edf2f2;margin-top:-1px;border-radius:2px}.rank-bar span{display:block;height:100%;background:#7baeb0;border-radius:2px}.rank-button:hover .rank-name{color:var(--teal);text-decoration:underline}.sidebar-hint{border-top:1px solid var(--line);padding-top:14px;margin-top:12px;font-size:10px;color:var(--muted)}.profile-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.profile-top .sidebar-kicker{margin:0}.close-profile{border:0;background:#eff4f4;border-radius:50%;width:25px;height:25px;line-height:1;font-size:18px;color:#496870}.profile-score{font-family:var(--serif);font-size:54px;line-height:1.1;margin:22px 0 0;color:var(--teal);letter-spacing:-2px}.profile-score small{font:11px var(--sans);color:var(--muted);letter-spacing:0;margin-left:6px}.profile-measure{font-size:11px;color:var(--muted);margin:5px 0 24px}.profile-divider{border:0;border-top:1px solid var(--line);margin:24px 0}.profile-stat{margin-bottom:21px}.profile-stat-label{display:flex;justify-content:space-between;gap:8px;font-size:11px;margin-bottom:7px}.profile-stat-label strong{font-variant-numeric:tabular-nums;font-weight:650}.profile-stat .rank-bar{height:4px}.profile-stat .rank-bar span{background:#4c9199}.profile-note{font-size:10px;color:var(--muted)}.profile-link{margin-top:12px;border:1px solid #cbdcde;border-radius:5px;padding:9px 12px;background:white;color:var(--teal);font-size:11px;width:100%}.trend-legend{display:flex;align-items:center;gap:18px;padding-top:16px}.trend-legend>span:not(.legend-title){display:flex;align-items:center;gap:6px;font-size:12px}.year-dot{display:inline-block;width:9px;height:9px;border-radius:50%}.y2022{background:#a8b7be}.y2023{background:#62a6b9}.y2024{background:#174f62}.chart-topline{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #edf1f2}.chart-topline p{margin:0;font-size:13px;font-weight:600}.chart-topline>span{font-size:10px;color:var(--muted)}.trend-scroll{padding:12px 22px 0;overflow-x:auto}#trend-chart{width:100%;min-width:760px}.trend-grid{stroke:#e4ecee;stroke-width:1}.trend-row-line{stroke:#eef2f3;stroke-width:1}.trend-zone-label{font:12px var(--sans);fill:var(--ink)}.trend-tick{font:10px var(--sans);fill:#8a9ea4}.trend-header{font:600 10px var(--sans);fill:#607a83;letter-spacing:.4px}.trend-connector{fill:none;stroke:#c7d6db;stroke-width:2}.trend-point{cursor:pointer;stroke:white;stroke-width:1.3;transition:r .1s}.trend-point:hover,.trend-point:focus-visible{stroke:#d08b3d;stroke-width:3;outline:none}.trend-change{font:600 12px var(--sans);font-variant-numeric:tabular-nums}.chart-footnote{border-top:1px solid #edf1f2;color:var(--muted);font-size:10px;padding:14px 24px}.table-scroll{overflow:auto;max-height:790px}table{border-collapse:separate;border-spacing:0;width:100%;min-width:1110px;font-size:12px}th,td{padding:13px 12px;text-align:right;border-bottom:1px solid #e9eff0;vertical-align:middle}thead th{position:sticky;top:0;background:#f8fafb;z-index:2;min-width:92px;text-align:center;font-size:10px;line-height:1.5;font-weight:600;padding-top:18px;padding-bottom:18px}thead th:first-child{left:0;text-align:left;min-width:240px;z-index:4}tbody th{position:sticky;left:0;z-index:1;text-align:left;font-weight:400;background:white;width:260px;min-width:240px;line-height:1.3;font-size:11px}tbody td{font-variant-numeric:tabular-nums;text-align:center;font-size:12px;min-width:90px}tbody tr.dimension-row th{font-weight:650;background:#eaf1f2;border-top:5px solid white}tbody tr.dimension-row td{font-weight:650;border-top:5px solid white}tbody tr.index-row th{font-weight:650;background:#dcebec;color:#174f62}tbody tr.index-row td{font-weight:700;font-size:14px}tbody tr.component-row th{padding-left:28px;color:#526f78}tbody tr:hover td{box-shadow:inset 0 0 0 100px #ffffff25}tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}.measure-kind{display:block;font-size:8px;letter-spacing:1px;text-transform:uppercase;color:#78949a;margin-top:3px;font-weight:500}.page-footer{display:flex;justify-content:space-between;gap:12px;padding-top:22px;color:#82969d;font-size:10px}.footer-dot{padding:0 7px;color:#a5b5ba}.tooltip{position:fixed;z-index:30;background:#173c48;color:white;border:1px solid #315663;border-radius:7px;box-shadow:0 5px 20px #0f344333;padding:12px 15px;pointer-events:none;max-width:270px;font-size:11px}.tooltip strong{display:block;font-size:13px;margin-bottom:3px}.tooltip .tooltip-score{font-size:22px;font-weight:600;line-height:1.3;margin-top:5px}.tooltip small{color:#c5dade;font-size:10px}.tooltip .tooltip-measure{color:#d7e5e8;line-height:1.4}.noscript,#load-error{padding:20px;color:#8c332b;background:#fff0ed;border:1px solid #e6b5ad;border-radius:8px}.noscript{margin:20px}
.toolbar{flex-wrap:wrap}.colour-control{padding:0;border:0;margin:0}.colour-control legend,.sort-control label,.sort-direction-control label{color:var(--muted);text-transform:uppercase;font-size:9px;letter-spacing:1.2px;font-weight:650}.colour-control legend{margin-bottom:5px}.colour-buttons{display:flex;padding:3px;background:#e8eeee;border:1px solid #e1e7e7;border-radius:6px;min-height:42px}.colour-buttons button{border:0;padding:5px 12px;border-radius:4px;background:transparent;font-size:11px;white-space:nowrap;color:#5d747a}.colour-buttons button.selected{background:white;color:#135765;box-shadow:0 1px 4px #15364112;font-weight:650}.sort-control,.sort-direction-control{display:flex;flex-direction:column;gap:5px}.sort-direction-control select{width:150px}.sort-direction-control select:disabled{background:#edf1f1;color:#8d9ea2;cursor:default}.map-scale.is-relative{width:235px}.scale-ticks.single-value{justify-content:center}#scale-note{font-size:9px;color:var(--muted);margin:7px 0 0;line-height:1.4}.sort-note{margin:0;padding:10px 24px;background:#f5f9f8;border-bottom:1px solid #e5edee;color:#476b74;font-size:11px}.is-sort-key th{box-shadow:inset 3px 0 0 var(--teal)}
.measure-picker{position:relative;width:350px;max-width:100%}.measure-trigger{width:100%;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #cad9dd;border-radius:6px;background:white;padding:10px 13px;text-align:left;font-size:13px;line-height:20px}.measure-trigger[data-kind="index"],.measure-trigger[data-kind="dimension"]{font-weight:650}.picker-chevron{flex:none;font-size:17px;line-height:14px;color:#647a82}.measure-trigger[aria-expanded="true"]{border-color:var(--teal)}.measure-options{position:absolute;z-index:40;left:0;top:calc(100% + 5px);width:100%;max-height:480px;overflow-y:auto;overscroll-behavior:contain;background:white;border:1px solid #cad9dd;border-radius:6px;padding:5px 0;box-shadow:0 8px 25px #17384226}.measure-options.opens-up{top:auto;bottom:calc(100% + 5px)}.measure-option{position:relative;font-size:13px;line-height:20px;padding:9px 28px 9px 13px;cursor:pointer}.measure-option.option-index,.measure-option.option-dimension{font-weight:700}.measure-option.option-dimension{padding-left:25px;margin-top:5px}.measure-option.option-component{padding-left:39px;font-weight:400}.measure-option.option-original{border-bottom:1px solid #e5edee;margin-bottom:4px;padding-bottom:12px}.measure-option:hover,.measure-option.is-active{background:#eaf2f1;color:#135765}.measure-option[aria-selected="true"]::after{content:'✓';position:absolute;right:11px;top:9px;color:var(--teal);font-size:12px;font-weight:700}.trend-range-label{display:inline-block;margin-left:12px;padding:3px 8px;border-radius:4px;background:#edf4f3;font-size:10px;font-weight:500;color:#356b74;white-space:nowrap}
@media(max-width:1150px){.measure-picker{width:315px}}
@media(max-width:820px){.measure-picker{width:100%}.sort-control{flex:1;min-width:240px}.sort-control select{width:100%}.colour-buttons button{padding-left:11px;padding-right:11px}}
@media(max-width:480px){.map-scale.is-relative{width:210px}.sort-note{padding:10px 16px}.sort-control{flex-basis:100%}.sort-direction-control select{width:160px}}
@media print{.sort-note{padding-left:0}.colour-control,.sort-control,.sort-direction-control{display:none!important}}
@media(min-width:1600px){.map-card{min-height:670px}#zone-map{min-height:670px}}
@media(max-width:1150px){.masthead,.nav-row,main{padding-left:28px;padding-right:28px}.map-layout{grid-template-columns:minmax(0,1fr) 250px;gap:16px}.zone-sidebar{padding:19px}.map-card,#zone-map{min-height:560px}.rank-name{font-size:10px}.toolbar-note{font-size:10px;max-width:190px}.scope-note{display:none}select{width:315px}.brand-title{font-size:19px}.brand-subtitle{font-size:10px}}
@media(max-width:820px){.masthead,.nav-row,main{padding-left:20px;padding-right:20px}.masthead{min-height:90px}.brand{gap:12px}.brand-title>span{display:block;margin-left:0;font-size:14px}.brand-subtitle{display:none}.brand-mark{font-size:38px;padding-right:13px}.beta-badge{font-size:8px}.nav-note{display:none}.view-number{display:none}h1{font-size:29px}.toolbar{flex-wrap:wrap;gap:14px 20px}.toolbar-note{margin-left:0;padding-top:0;max-width:none;width:100%}.aspect-control{flex:1;min-width:240px}select{width:100%}.map-layout{grid-template-columns:1fr}.map-card,#zone-map{min-height:530px}.zone-sidebar{min-height:0}.ranking{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.rank-name{font-size:12px}.sidebar-subtitle{margin-bottom:20px}.sidebar-hint{margin-top:0}.profile-stat{max-width:450px}.chart-topline{align-items:flex-start;flex-direction:column;gap:5px}.trend-legend{padding-top:10px}.page-footer{flex-direction:column;gap:5px}.map-caption{left:19px}.map-scale{width:160px;bottom:25px;left:18px}.map-footnote{font-size:8px}.profile-score{margin-top:15px}.profile-divider{margin:18px 0}.trend-scroll{padding:10px 12px 0}}
@media(max-width:480px){main{padding-top:24px}.masthead,.nav-row,main{padding-left:16px;padding-right:16px}.brand-title{font-size:20px}.brand-title>span{font-size:12px}.brand-mark{font-size:36px}.beta-badge{font-size:7px;padding:3px 5px;margin-left:0}.tabs{gap:26px}.tab{font-size:13px;padding-top:13px;padding-bottom:13px}h1{font-size:27px}.view-heading{margin-bottom:18px}.eyebrow{font-size:8px}.view-heading p:last-child{font-size:12px}.toolbar{margin-bottom:16px;gap:10px 16px}.year-buttons button{padding-left:18px;padding-right:18px}.map-card,#zone-map{min-height:440px}.map-card{padding-bottom:30px}.map-caption{top:15px;left:14px}.map-instruction{font-size:9px}.small-label{font-size:9px}.map-controls{right:12px;top:13px}.map-controls button{width:28px;height:28px}.map-scale{width:135px;left:13px;bottom:22px;padding:8px 10px}.map-footnote{bottom:7px;left:13px;right:auto}.ranking{grid-template-columns:1fr}.rank-name{font-size:12px}.zone-sidebar{padding:20px}.rank-item{margin-bottom:17px}.trend-legend{padding-top:0;font-size:10px;gap:12px}.trend-legend .legend-title{display:none}.chart-topline{padding:15px 16px}.chart-footnote{padding:12px 16px}.toolbar-note{font-size:10px}.view-number{display:none}}
@media(max-width:480px){.map-label{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{body{background:white}.site-header{border:0}.masthead{padding:0}.tabs,.toolbar,.map-controls,.close-profile,.profile-link,.skip-link,.nav-note,.tooltip{display:none!important}.masthead,.nav-row,main{max-width:none;padding-left:0;padding-right:0}.view-heading{margin-top:10px}.map-layout{grid-template-columns:1fr 240px}.map-card,#zone-map{min-height:500px}.zone-sidebar{min-height:0}.table-scroll{overflow:visible;max-height:none}table{min-width:0}th,td{padding:8px 4px;min-width:0!important}thead th:first-child,tbody th{min-width:170px!important}thead th{position:static}tbody th{position:static}.page-footer{margin-top:15px}}
