/* Shared presentation for all four annual specialist indices. */
:root{--gpi-navy:#102f43;--gpi-blue:#23708d;--gpi-muted:#597080;--gpi-line:#d5e0e5;--gpi-paper:#f4f7f8;--gpi-gold:#a3834c}html{scroll-padding-top:75px}.research-index{--eu-navy:var(--gpi-navy);--eu-grey:var(--gpi-muted);--eu-line:var(--gpi-line);--eu-paper:var(--gpi-paper);--eu-gold:var(--gpi-gold);color:var(--gpi-navy)}.gpi-kicker{font:600 10px/1.7 Arial,sans-serif;letter-spacing:1.6px;color:#597382;text-transform:uppercase}.gpi-kicker>span{color:var(--gpi-blue);margin-right:15px}.gpi-switch{background:#f5f8fa;border-bottom:1px solid var(--gpi-line)}.gpi-switch nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.gpi-switch a{display:flex;align-items:center;gap:12px;padding:17px 15px;border-right:1px solid var(--gpi-line);font:12px/1.4 Arial;color:#536d7d;white-space:nowrap}.gpi-switch a:first-child{border-left:1px solid var(--gpi-line)}.gpi-switch a>span{font:12px 'Courier New',monospace;color:#879ca8}.gpi-switch a>b{margin-left:auto;font-size:15px;font-weight:400}.gpi-switch a[aria-current]{background:var(--gpi-navy);color:#fff}.gpi-switch a[aria-current]>span{color:#adc9d8}.gpi-switch a[aria-current]:after{display:none}.gpi-masthead{padding:45px 0 40px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:70px;align-items:center}.gpi-breadcrumb{font:12px/1.6 Arial;color:#6d8190;display:block;margin-bottom:30px}.gpi-breadcrumb span{margin:0 10px;color:#b5c4cc}.gpi-masthead h1{font:500 clamp(38px,4vw,59px)/1.12 Georgia,serif;letter-spacing:-1.7px;margin:16px 0 22px;overflow-wrap:anywhere}.gpi-masthead-copy>p{font:16px/1.85 Arial,sans-serif;color:var(--gpi-muted);max-width:670px;margin:0}.gpi-header-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:28px}.gpi-header-actions .button{font-size:13px;padding:14px 20px}.gpi-header-actions .text-link{font-size:12px}.gpi-leader-panel{border:1px solid #c9d8e0;background:linear-gradient(130deg,#f7fafb,#edf3f6);padding:23px 25px;align-self:center;min-width:0}.gpi-panel-kicker{display:flex;justify-content:space-between;font:600 9px/1.6 Arial;letter-spacing:1.2px;color:#55758a;border-bottom:1px solid #cedce4;padding-bottom:15px}.gpi-panel-kicker>span{font-family:monospace}.gpi-leader-body{display:grid;grid-template-columns:100px minmax(0,1fr);gap:24px;align-items:center;padding:20px 0}.gpi-leader-body>img{width:100%;height:150px;object-fit:contain;mix-blend-mode:multiply}.gpi-first{font:9px/1.6 Arial;letter-spacing:1.2px;color:#7c663f}.gpi-leader-body h2{font:500 22px/1.3 Georgia,serif;margin:10px 0 13px;overflow-wrap:anywhere}.gpi-leader-body strong{font:40px/1 Georgia,serif;letter-spacing:-1px;font-variant-numeric:tabular-nums}.gpi-leader-body strong small{font:10px Arial;letter-spacing:0;color:#647e8d;margin-top:8px}.gpi-rank-emblem{border:1px solid #b9cbd5;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6d8b9e;font:50px/1 Georgia;outline:1px solid #dae4e9;outline-offset:-7px}.gpi-rank-emblem span{font:8px/1 Arial;letter-spacing:1.5px;margin-top:12px}.gpi-score-scale{height:6px;background:#dbe5eb}.gpi-score-scale i{display:block;height:100%;background:var(--gpi-blue)}.gpi-scale-labels{display:flex;justify-content:space-between;font:9px/1.5 monospace;color:#648090;margin:7px 0 15px}.gpi-panel-link{display:flex;justify-content:space-between;gap:15px;font:11px/1.5 Arial;color:#3d6177;border-top:1px solid #cedce4;padding-top:15px}.gpi-index-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--gpi-line);border-bottom:1px solid var(--gpi-line);padding:22px 0}.gpi-index-stats>div{border-right:1px solid var(--gpi-line);padding-left:27px}.gpi-index-stats>div:first-child{padding-left:0}.gpi-index-stats>div:last-child{border:0}.gpi-index-stats strong{font:33px/1.2 Georgia;display:block;color:var(--gpi-navy)}.gpi-index-stats span{font:11px/1.7 Arial;color:#627b89;display:block;margin-top:6px}.gpi-section-nav{display:block;position:sticky;top:0;z-index:8;background:#fffffff5;backdrop-filter:blur(12px);border-bottom:1px solid var(--gpi-line);margin-top:25px}.gpi-section-nav>.wrap{display:flex;gap:32px;align-items:center;overflow:auto}.gpi-section-nav a{font:12px/1.6 Arial;padding:18px 0;white-space:nowrap;color:#39596e}.gpi-section-nav>.wrap>span{font:9px/1.5 Arial;letter-spacing:1.2px;color:#78909d;white-space:nowrap;margin-right:auto}.research-index .eu-section{padding:55px 0}.research-index .eu-section-heading{gap:20px}.research-index .eu-section-heading h2{font:36px/1.18 Georgia;letter-spacing:-.8px;color:var(--gpi-navy)}.research-index .eu-section-heading p{font:14px/1.8 Arial;color:var(--gpi-muted)}.research-index .eu-section-number{font:20px/1.5 'Courier New',monospace;color:#8fa2ad}.research-index :is(.eu-rank-row,.ds-chart-row,.ed-chart-row){display:grid;grid-template-columns:75px minmax(0,1fr) 160px;gap:25px;padding:27px 22px;border:0;border-bottom:1px solid var(--gpi-line);background:white}.research-index :is(.eu-rank-winner,.ds-chart-winner,.ed-top-one){background:#f5f3eb;border-top:2px solid #ae9565}.research-index :is(.eu-rank-number,.ds-chart-rank,.ed-chart-rank,.ed-top-one .ed-chart-rank){font:54px/1 Georgia;color:#9baeb7}.research-index :is(.eu-rank-winner .eu-rank-number,.ds-chart-winner .ds-chart-rank,.ed-top-one .ed-chart-rank){color:#987b48}.research-index :is(.eu-rank-info,.ds-chart-copy,.ed-chart-info) h3,.research-index .eu-rank-info h3 button{font:500 25px/1.3 Georgia;color:var(--gpi-navy);margin:9px 0 10px}.research-index :is(.eu-rank-info,.ds-chart-copy,.ed-chart-info)>p{font:14px/1.8 Arial;color:#526d7d}.research-index :is(.eu-rank-score,.ds-chart-points,.ed-chart-score){text-align:right}.research-index :is(.eu-score,.ds-chart-points>strong,.ed-score){font:43px/1.1 Georgia;letter-spacing:-1px;color:var(--gpi-navy)}.research-index :is(.eu-score small,.ds-chart-points>small,.ed-score small){font:10px/1.6 Arial;letter-spacing:0;color:#6c8291}.research-index :is(.eu-rank-meta,.ds-chart-basis,.ed-chart-score>small){font:10px/1.7 Arial;color:#6e8390}.research-index :is(.eu-filters,.ds-filters,.ed-toolbar){border:1px solid var(--gpi-line);background:#f5f8fa;padding:20px;gap:16px}.research-index label{color:#4e6b7f}.research-index :is(input,select){border-color:#cbd9e1;border-radius:2px;min-width:0;max-width:100%}.research-index :is(.ed-limit,.ds-chart-tabs,.gpi-ranking-tabs){display:flex;gap:0}.research-index :is(.ed-limit,.ds-chart-tabs,.gpi-ranking-tabs) button{min-height:38px;padding:10px 17px;font:12px Arial;border:1px solid #c7d6df;background:white;color:#43677e}.research-index :is(.ed-limit,.ds-chart-tabs,.gpi-ranking-tabs) button[aria-pressed=true]{background:var(--gpi-navy);color:white;border-color:var(--gpi-navy)}.gpi-ranking-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0}.gpi-geographic-map{display:block;width:100%;height:auto;max-height:570px}.gpi-geographic-map .gpi-map-context path{fill:#edf1f3;stroke:#d3dfe5;stroke-width:.8}.gpi-geographic-map a path,.gpi-geographic-map a circle{fill:#84a9bb;stroke:#fff;stroke-width:1.2;transition:fill .2s}.gpi-geographic-map a:hover path,.gpi-geographic-map a:hover circle,.gpi-geographic-map a:focus path,.gpi-geographic-map a:focus circle{fill:#145c7c;stroke:#103e58;stroke-width:1.5}.gpi-geographic-map text{font:10px Arial;fill:#476a80}.gpi-geographic-map .gpi-map-credit{font-size:8px;letter-spacing:1px;fill:#78919e}.gpi-country-map-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center;margin-top:25px}.research-index .eu-caption,.research-index .ds-caption,.research-index .ed-caption{color:#627a89}.gpi-home{color:var(--gpi-navy);background:white}.gpi-home-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:55px;align-items:center;padding-top:55px;padding-bottom:45px}.gpi-home-intro h1{font:56px/1.06 Georgia;letter-spacing:-1.8px;font-weight:400;margin:22px 0}.gpi-home-intro h1 em{color:#54768b;font-style:normal}.gpi-home-intro>p{font:16px/1.85 Arial;color:var(--gpi-muted);max-width:560px}.gpi-home-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:28px}.gpi-home-actions .text-link{font-size:12px}.gpi-global-figure{margin:0;background:var(--gpi-navy);color:#b6d0df;padding:23px 25px 25px;border:1px solid #18435b;box-shadow:10px 10px 0 #f0f4f6}.gpi-global-figure figcaption{display:flex;justify-content:space-between;gap:15px;font:9px/1.5 Arial;letter-spacing:1.5px;border-bottom:1px solid #68829355;padding-bottom:19px}.gpi-global-figure figcaption b{font-weight:400;color:#e4edf2}.gpi-world{width:100%;display:block;margin:20px 0 0;overflow:visible}.gpi-world-land{fill:#38566a;stroke:#102f43;stroke-width:.5}.gpi-world-focus{fill:#c9b17f;stroke:#102f43;stroke-width:.6}.gpi-world-ring{fill:none;stroke:#c9b17f;stroke-width:1;stroke-dasharray:3 4;opacity:.7}.gpi-world-callout{fill:none;stroke:#c9b17f;stroke-width:.8}.gpi-world-dot{fill:#d5c391}.gpi-world text{font:11px Arial;letter-spacing:1.2px;fill:#e0e9ee}.gpi-world .gpi-world-sub{font-size:9px;fill:#a0bccd}.gpi-world-bottom{border-top:1px solid #68829355;padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.gpi-world-bottom>div{display:flex;gap:15px;align-items:center}.gpi-world-bottom strong{font:45px/1 Georgia;color:#e3ecf0}.gpi-world-bottom span{font:10px/1.8 Arial;color:#a5bece}.gpi-world-bottom .gpi-world-coordinate{font:8px/2 monospace;letter-spacing:.7px;text-align:right;color:#839faf}.gpi-home-statline{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--gpi-line);border-bottom:1px solid var(--gpi-line);padding:24px 0}.gpi-home-statline>div{border-right:1px solid var(--gpi-line);padding-left:30px}.gpi-home-statline>div:first-child{padding-left:0}.gpi-home-statline>div:last-child{border:0}.gpi-home-statline strong{font:35px Georgia;display:block}.gpi-home-statline span{font:11px/1.7 Arial;color:var(--gpi-muted);margin-top:8px;display:block}.gpi-home-jumps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--gpi-line);margin-top:32px;background:#f6f8f9}.gpi-home-jumps>span{grid-column:1/-1;font:9px/1.5 Arial;letter-spacing:1.5px;color:#647e8c;padding:16px 20px 0}.gpi-home-jumps>a{padding:18px 20px;font:13px/1.6 Arial;display:flex;gap:12px;align-items:center;color:#1b425a;white-space:nowrap}.gpi-home-jumps>a>span{font:11px monospace;color:#7b95a5}.gpi-home-jumps b{font-weight:400;margin-left:auto;color:#4881a0}.gpi-home-jumps>a:hover{background:#eaf0f3}.gpi-home-section{padding-top:65px;padding-bottom:65px;scroll-margin-top:40px}.gpi-home-section-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:32px}.gpi-home-section-head h2{font:42px/1.15 Georgia;font-weight:400;letter-spacing:-1px;margin:14px 0 0}.gpi-home-section-head>p{font:14px/1.8 Arial;color:var(--gpi-muted);max-width:370px;margin:0}.gpi-home-section-head>.text-link{font-size:12px}.gpi-index-entries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.gpi-index-entry{border:1px solid #ccdae2;padding:30px;scroll-margin-top:80px;transition:box-shadow .2s,border-color .2s;background:white}.gpi-index-entry:hover{border-color:#6c96ad;box-shadow:0 5px 22px #0c3a5510}.gpi-entry-heading{display:flex;align-items:center;gap:20px}.gpi-entry-no{font:37px/1 Georgia;color:#9ab0be;border-right:1px solid #d9e2e8;padding-right:20px;min-width:65px}.gpi-entry-heading>div{flex:1;min-width:0}.gpi-entry-heading h3{font:29px/1.2 Georgia;font-weight:400;margin:9px 0 0;letter-spacing:-.4px}.gpi-entry-heading h3 a{display:flex;align-items:center;gap:10px;justify-content:space-between}.gpi-entry-heading h3 span{font:23px Arial;color:#4c7f9a}.gpi-entry-question{font:14px/1.8 Arial;color:#567082;margin:22px 0 16px;min-height:50px}.gpi-entry-meta{display:flex;gap:16px;font:10px/1.8 Arial;color:#678192;border-bottom:1px solid var(--gpi-line);padding-bottom:18px}.gpi-entry-meta span+span{border-left:1px solid var(--gpi-line);padding-left:16px}.gpi-preview-chart{padding:20px 0 0}.gpi-chart-label{display:flex;justify-content:space-between;font:9px/1.4 Arial;letter-spacing:1.1px;color:#6a8596;margin-bottom:15px}.gpi-preview-row{display:grid;grid-template-columns:22px 1fr 45px;column-gap:10px;row-gap:7px;align-items:center;margin:15px 0}.gpi-preview-rank{font:10px monospace;color:#7d96a7}.gpi-preview-name{font:12px/1.5 Arial;color:#2a4f66;overflow-wrap:anywhere}.gpi-preview-row strong{font:18px Georgia;text-align:right;font-weight:400}.gpi-preview-track{grid-column:2/4;background:#edf2f5;height:5px;display:block}.gpi-preview-track i{display:block;height:100%;background:#799aac}.gpi-preview-row:first-of-type .gpi-preview-track i{background:#1e5c7d}.gpi-preview-axis{display:flex;justify-content:space-between;font:9px monospace;color:#829aa9;margin:13px 0 0 32px}.gpi-entry-actions{display:flex;align-items:center;gap:19px;border-top:1px solid var(--gpi-line);padding-top:20px;margin-top:20px}.gpi-entry-actions>.button{font-size:11px;padding:12px 15px;white-space:nowrap}.gpi-entry-actions>a:not(.button){font:11px/1.5 Arial;color:#456b82}.gpi-chart-footnote{font:11px/1.8 Arial;color:#6e8695;margin:23px 0 0}.gpi-geography-section{background:#f4f7f8;border-block:1px solid var(--gpi-line)}.gpi-home-market-controls{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:680px}.gpi-home-market-controls label{display:grid;gap:9px;font:12px Arial;color:#5a7587}.gpi-home-market-controls select{font:14px Arial;max-width:100%;width:100%}.gpi-home-market-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:65px;align-items:center}.gpi-country-card{padding:35px;border:1px solid #ccdae2;background:white}.gpi-country-card h3{font:43px Georgia;font-weight:400;margin:20px 0}.gpi-country-stat{display:flex;gap:20px;align-items:center;border-block:1px solid var(--gpi-line);padding:22px 0}.gpi-country-stat strong{font:49px/1 Georgia}.gpi-country-stat span{font:12px/1.8 Arial;color:#57768b}.gpi-country-card>p{font:15px/1.8 Arial;color:#597487;margin:22px 0}.gpi-country-card>.button{font-size:12px}.gpi-country-card>.text-link{display:block;font-size:11px;margin-top:20px}.gpi-method-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.gpi-method-flow article{border-top:2px solid #4f7a94;padding-top:22px}.gpi-method-flow article>span{font:13px monospace;color:#7593a6}.gpi-method-flow h3{font:23px/1.25 Georgia;font-weight:400;margin:25px 0 15px}.gpi-method-flow p{font:14px/1.8 Arial;color:var(--gpi-muted)}.gpi-method-equation{background:#f3f7f9;border:1px solid var(--gpi-line);padding:26px 30px;margin-top:25px;display:flex;flex-wrap:wrap;gap:18px 30px;align-items:center}.gpi-method-equation>span{font:9px/1.7 Arial;letter-spacing:1.3px;color:#6c889a;flex-basis:100%}.gpi-method-equation>strong{font:23px/1.6 Georgia;font-weight:400}.gpi-method-equation i{font-style:normal;color:#8ca5b4;padding:0 6px}.gpi-method-equation>a{margin-left:auto;font:11px Arial;color:#486d84}.gpi-home .annual-winners{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.gpi-home .annual-winner{display:grid;grid-template-columns:110px 1fr;gap:18px;align-items:center}.gpi-home .annual-winner h3{font-size:23px;min-height:0;margin:10px 0}.gpi-home .annual-winner>div{padding:0}.gpi-home .annual-winner p{font-size:10px;margin:0}.gpi-home .annual-winner>div>span:last-child{font-size:10px;margin-top:15px}
@media(max-width:1100px){.gpi-masthead{gap:35px}.gpi-leader-body{grid-template-columns:85px 1fr;gap:18px}.gpi-leader-body>img{height:130px}.gpi-leader-body h2{font-size:20px}.gpi-home-hero{gap:32px}.gpi-home-intro h1{font-size:48px}.gpi-entry-heading h3{font-size:26px}.gpi-entry-actions{gap:13px;flex-wrap:wrap}.gpi-index-entry{padding:25px}.gpi-home-jumps>a{padding:15px 10px;font-size:11px;gap:8px}.gpi-home .annual-winner{grid-template-columns:90px 1fr;gap:14px}.gpi-home .annual-winner h3{font-size:21px}.gpi-section-nav>.wrap{gap:25px}.gpi-section-nav>.wrap>span{display:none}}
@media(max-width:800px){.gpi-switch .wrap{width:100%;grid-template-columns:repeat(4,minmax(150px,1fr));overflow:auto}.gpi-switch a{font-size:11px;padding:15px 12px}.gpi-masthead{grid-template-columns:1fr;gap:30px;padding-top:30px}.gpi-masthead h1{font-size:48px}.gpi-masthead-copy>p{max-width:none}.gpi-leader-panel{max-width:none;padding:20px 25px}.gpi-leader-body{grid-template-columns:80px 1fr;gap:25px;padding:15px 0}.gpi-leader-body>img{height:120px}.gpi-leader-body h2{font-size:25px;margin:8px 0 11px}.gpi-leader-body strong{font-size:38px}.gpi-leader-body strong small{display:inline;margin-left:13px}.gpi-rank-emblem{font-size:38px}.gpi-index-stats{grid-template-columns:repeat(5,1fr)}.gpi-index-stats>div{padding-left:12px}.gpi-index-stats strong{font-size:29px}.gpi-index-stats span{font-size:10px}.research-index :is(.eu-rank-row,.ds-chart-row,.ed-chart-row){grid-template-columns:50px minmax(0,1fr);gap:15px;padding:24px 16px}.research-index :is(.eu-rank-score,.ds-chart-points,.ed-chart-score){grid-column:2;display:block;text-align:left}.research-index :is(.eu-score,.ds-chart-points>strong,.ed-score){font-size:38px}.research-index :is(.eu-rank-number,.ds-chart-rank,.ed-chart-rank,.ed-top-one .ed-chart-rank){font-size:43px}.research-index :is(.eu-rank-info,.ds-chart-copy,.ed-chart-info) h3,.research-index .eu-rank-info h3 button{font-size:25px}.research-index :is(.eu-row-meter,.ds-chart-meter){max-width:200px}.research-index .ed-chart-score>small{text-align:left}.gpi-country-map-layout{grid-template-columns:1fr;gap:20px}.gpi-home-hero{grid-template-columns:1fr;gap:30px;padding-top:35px}.gpi-home-intro h1{font-size:54px}.gpi-home-intro>p{max-width:none}.gpi-global-figure{max-width:660px}.gpi-world{max-height:240px;margin:10px 0}.gpi-home-statline>div{padding-left:18px}.gpi-home-statline strong{font-size:30px}.gpi-home-statline span{font-size:10px}.gpi-home-jumps{grid-template-columns:1fr 1fr}.gpi-home-jumps>a{font-size:13px;padding:16px}.gpi-home-section-head{gap:25px;align-items:start}.gpi-home-section-head h2{font-size:36px}.gpi-home-section-head>p{max-width:290px}.gpi-index-entries{grid-template-columns:1fr;gap:25px}.gpi-entry-heading h3{font-size:31px}.gpi-entry-question{min-height:0}.gpi-home-market-layout{grid-template-columns:1fr 1fr;gap:25px}.gpi-country-card{padding:25px}.gpi-country-card h3{font-size:33px}.gpi-country-card>p{font-size:13px}.gpi-method-flow{grid-template-columns:1fr 1fr;gap:25px}.gpi-method-equation>a{margin-left:0}.gpi-home .annual-winners{grid-template-columns:1fr}.gpi-home .annual-winner{grid-template-columns:110px 1fr;gap:25px;border-bottom:1px solid #d9d3c4;padding-bottom:25px}.gpi-home .annual-winner:last-child{border:0}.gpi-home .annual-winner h3{font-size:29px}.gpi-home .annual-winner .eyebrow{font-size:10px}.gpi-home .annual-winner>div>span:last-child{font-size:12px}}
@media(max-width:500px){.gpi-kicker{font-size:9px;letter-spacing:1px}.gpi-home-intro h1{font-size:43px}.gpi-home-intro>p{font-size:16px}.gpi-home-hero{padding-top:30px;padding-bottom:30px}.gpi-home-actions{gap:20px}.gpi-global-figure{padding:18px;box-shadow:6px 6px 0 #edf2f4}.gpi-global-figure figcaption{font-size:8px;letter-spacing:.8px;padding-bottom:15px}.gpi-world-bottom{gap:10px;padding-top:17px}.gpi-world-bottom strong{font-size:38px}.gpi-world-bottom span{font-size:9px}.gpi-world-bottom .gpi-world-coordinate{display:none}.gpi-home-statline{grid-template-columns:1fr 1fr;row-gap:20px}.gpi-home-statline>div:nth-child(2){border:0}.gpi-home-statline>div:nth-child(3){padding-left:0}.gpi-home-statline span{font-size:10px}.gpi-home-jumps{margin-top:24px}.gpi-home-jumps>a{font-size:11px;padding:15px 12px;gap:9px}.gpi-home-jumps>span{padding:16px 12px 3px;font-size:8px;letter-spacing:1px}.gpi-home-section{padding:45px 0}.gpi-home-section-head{display:block;margin-bottom:25px}.gpi-home-section-head>p{max-width:none;margin-top:20px;font-size:14px}.gpi-home-section-head>.text-link{display:inline-block;margin-top:20px}.gpi-home-section-head h2{font-size:35px}.gpi-index-entry{padding:22px 18px}.gpi-entry-heading{gap:14px}.gpi-entry-no{font-size:32px;min-width:48px;padding-right:14px}.gpi-entry-heading h3{font-size:27px}.gpi-entry-heading h3 span{font-size:19px}.gpi-entry-question{font-size:14px}.gpi-entry-meta{font-size:9px;gap:12px}.gpi-entry-meta span+span{padding-left:12px}.gpi-entry-actions{gap:15px}.gpi-entry-actions>.button{flex-basis:100%;justify-content:space-between;display:flex;font-size:12px}.gpi-entry-actions>a:not(.button){font-size:12px;margin-top:5px}.gpi-preview-name{font-size:12px}.gpi-home-market-controls{grid-template-columns:1fr;gap:16px}.gpi-home-market-controls select{font-size:16px}.gpi-home-market-layout{grid-template-columns:1fr;gap:10px}.gpi-geographic-map{max-height:430px}.gpi-country-card{padding:24px}.gpi-country-card>p{font-size:15px}.gpi-method-flow{gap:25px 20px}.gpi-method-flow h3{font-size:24px}.gpi-method-flow p{font-size:14px}.gpi-method-equation{padding:24px}.gpi-method-equation>strong{font-size:24px}.gpi-home .annual-winner{grid-template-columns:90px 1fr;gap:18px}.gpi-home .annual-winner h3{font-size:26px}.gpi-home .annual-winner .eyebrow{font-size:9px}.gpi-masthead h1{font-size:40px}.gpi-breadcrumb{font-size:10px;margin-bottom:23px}.gpi-masthead-copy>p{font-size:15px}.gpi-header-actions{gap:17px}.gpi-leader-panel{padding:18px}.gpi-panel-kicker{font-size:8px;letter-spacing:1px}.gpi-leader-body h2{font-size:23px}.gpi-leader-body strong small{display:block;margin:6px 0 0}.gpi-index-stats{grid-template-columns:repeat(3,1fr);gap:22px 0}.gpi-index-stats>div:nth-child(3){border:0}.gpi-index-stats>div:nth-child(4){padding-left:0}.gpi-index-stats>div:nth-child(5){border-right:1px solid var(--gpi-line)}.gpi-index-stats strong{font-size:30px}.gpi-index-stats span{font-size:10px}.gpi-section-nav{margin-top:20px}.gpi-section-nav>.wrap{gap:25px}.gpi-section-nav a{font-size:12px;padding:16px 0}.research-index .eu-section-heading h2{font-size:31px}.research-index .eu-section-heading{gap:14px}.research-index .eu-section-number{font-size:17px}.research-index :is(.eu-rank-row,.ds-chart-row,.ed-chart-row){grid-template-columns:36px minmax(0,1fr);padding:22px 12px;gap:13px}.research-index :is(.eu-rank-number,.ds-chart-rank,.ed-chart-rank,.ed-top-one .ed-chart-rank){font-size:36px}.research-index :is(.eu-rank-info,.ds-chart-copy,.ed-chart-info) h3,.research-index .eu-rank-info h3 button{font-size:24px}.research-index :is(.eu-rank-info,.ds-chart-copy,.ed-chart-info)>p{font-size:14px}.gpi-ranking-tools{flex-wrap:wrap;gap:10px}.research-index :is(.ed-limit,.ds-chart-tabs,.gpi-ranking-tabs) button{font-size:11px;padding:10px 14px}.gpi-home .annual-awards-section{padding-block:45px}}
@media print{.gpi-switch,.gpi-section-nav,.gpi-home-jumps,.gpi-home-market-controls,.gpi-header-actions{display:none!important}.gpi-masthead,.gpi-home-hero{grid-template-columns:1.3fr 1fr;padding:20px 0}.gpi-index-stats{grid-template-columns:repeat(5,1fr)}.gpi-index-entries{grid-template-columns:1fr 1fr}.gpi-index-entry{break-inside:avoid}.gpi-global-figure,.gpi-preview-track i{print-color-adjust:exact}}
/* Keep wide comparison tables inside their own scrolling regions. */
.ed-price-chart{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.ed-price-chart>*,.ed-analysis-grid>*,.ed-country-layout>*,.gpi-index-entry,.gpi-entry-heading>*{min-width:0}.gpi-entry-heading h3 a{overflow-wrap:anywhere;hyphens:auto}.gpi-entry-heading h3 span{flex-shrink:0}.gpi-index-entries{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:800px){.ed-price-chart,.gpi-index-entries{grid-template-columns:minmax(0,1fr)}}
@media(max-width:500px){.gpi-entry-heading h3{font-size:25px}.gpi-entry-heading h3 a{display:block}.gpi-entry-heading h3 span{margin-left:8px;font-size:18px}}

.gpi-entry-heading h3 a,.gpi-masthead h1{hyphens:manual}

/* Institutional visual system. Original artwork and chart data stay untouched. */
:root{
  --gpi-navy:#12356a;
  --gpi-blue:#1c55a0;
  --gpi-muted:#52657d;
  --gpi-line:#d4dde8;
  --gpi-paper:#f3f6fa;
  --gpi-gold:#806740;
  --gpi-font:"Inter","Aptos","Segoe UI","Helvetica Neue",Arial,sans-serif;
  --gpi-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --ink:#172f52;
  --blue:var(--gpi-blue);
  --bright:#2b67b4;
  --muted:var(--gpi-muted);
  --line:var(--gpi-line);
  --paper:var(--gpi-paper);
}
body{font-family:var(--gpi-font);color:var(--ink);background:#fff}
.edition-bar{background:#102e5b;color:#edf3fa;letter-spacing:1px}
header{border-top:3px solid var(--gpi-blue);border-bottom-color:var(--gpi-line)}
.header-inner nav>a{font-family:var(--gpi-font);font-weight:550;color:#344d6b}
.header-inner nav>a:hover,.header-inner nav>a[aria-current]{color:var(--gpi-blue)}
.header-inner nav>a[aria-current]:after{height:3px;background:var(--gpi-blue)}
.brand-words{color:#17375f}
.brand-words>span{color:#5c6c7f}
.language,.icon-button{color:var(--gpi-navy)}
.language-popover{border-radius:2px;box-shadow:0 8px 24px #12356a12}
footer{background:#f4f6f9;border-top:2px solid #173e75}
.footer-main p,.footer-main>div>a:not(.brand),.footer-bottom{color:#51637a}
.button{font-family:var(--gpi-font);border-radius:2px;font-weight:600;border-color:#b8c8da}
.button.primary{background:var(--gpi-blue);border-color:var(--gpi-blue);color:#fff}
.button.primary:hover{background:#123b76;border-color:#123b76}
.text-link,.eu-link{color:var(--gpi-blue)}
.gpi-home,.research-index,.annual-edition{
  color:var(--ink);
  --sans:var(--gpi-font);
  --eu-navy:var(--gpi-navy);
  --eu-line:var(--gpi-line);
  --eu-paper:var(--gpi-paper);
  --eu-grey:var(--gpi-muted);
  --eu-gold:var(--gpi-gold);
}
.gpi-home p,.research-index p,.annual-edition p{color:var(--gpi-muted)}
.gpi-home :is(a,button,input,select):focus-visible,
.research-index :is(a,button,input,select,summary):focus-visible{
  outline:3px solid #1c55a0;
  outline-offset:4px;
}
.gpi-kicker{font:650 10px/1.7 var(--gpi-font);letter-spacing:1.35px;color:#516988}
.gpi-kicker>span{color:var(--gpi-blue)}
.gpi-breadcrumb{font-family:var(--gpi-font);color:#52677f}
.gpi-breadcrumb:hover{color:var(--gpi-blue);text-decoration:underline;text-underline-offset:4px}

/* Navigation is a stable directory, with colour and a rule marking selection. */
.gpi-switch{background:#f4f7fb;border-bottom-color:#cbd7e6}
.gpi-switch a{font-family:var(--gpi-font);font-weight:550;color:#36516f;min-height:54px}
.gpi-switch a>span{font-family:var(--gpi-mono);color:#617996}
.gpi-switch a>b{color:#57779e}
.gpi-switch a:hover{background:#e8eff8;color:var(--gpi-blue)}
.gpi-switch a[aria-current]{background:var(--gpi-navy);color:#fff;box-shadow:inset 0 -3px #7298c8}
.gpi-switch a[aria-current]>span,.gpi-switch a[aria-current]>b{color:#c7d9ef}
.gpi-section-nav{background:#fffffff7;border-top:1px solid #e6ebf1;border-bottom-color:#c9d5e4;backdrop-filter:blur(8px)}
.gpi-section-nav>.wrap{gap:30px;scrollbar-width:thin;scrollbar-color:#aabdd4 transparent}
.gpi-section-nav a{font:550 12px/1.6 var(--gpi-font);color:#334e71;min-height:54px;display:flex;align-items:center;border-bottom:2px solid transparent}
.gpi-section-nav a:hover{color:var(--gpi-blue);border-bottom-color:var(--gpi-blue)}
.gpi-section-nav>.wrap>span{font-family:var(--gpi-font);color:#617690;letter-spacing:1px}

/* Clear editorial hierarchy; quantitative labels use tabular figures. */
.gpi-home-intro h1,.gpi-masthead h1{
  font-family:var(--gpi-font);
  font-weight:650;
  line-height:1.1;
  letter-spacing:-.035em;
  color:var(--gpi-navy);
  text-wrap:balance;
}
.gpi-home-intro h1 em{color:var(--gpi-blue);font-style:normal}
.gpi-home-intro>p,.gpi-masthead-copy>p{font-family:var(--gpi-font);line-height:1.8;color:#475e7a}
.gpi-home-section-head h2,.research-index .eu-section-heading h2,
.annual-page-head h1,.annual-copy h2{
  font-family:var(--gpi-font);
  font-weight:600;
  line-height:1.2;
  letter-spacing:-.025em;
  color:var(--gpi-navy);
}
.gpi-home-section-head h2{font-size:36px}
.research-index .eu-section-heading h2{font-size:32px}
.gpi-home-section-head>p,.research-index .eu-section-heading p{font-family:var(--gpi-font);color:#52657d}
.research-index .eu-section-number{font:500 18px/1.6 var(--gpi-mono);color:#617d9e;padding-top:3px}
.gpi-entry-heading h3,.gpi-country-card h3,.gpi-method-flow h3,.gpi-leader-body h2{
  font-family:var(--gpi-font);
  font-weight:600;
  letter-spacing:-.02em;
  color:var(--gpi-navy);
}
.gpi-entry-heading h3{font-size:25px;line-height:1.25}
.gpi-method-flow h3{font-size:21px;line-height:1.35}
.gpi-entry-no{font:400 31px/1.1 var(--gpi-mono);letter-spacing:-1px;color:#6a84a4}
.gpi-header-actions .button,.gpi-home-actions .button{min-height:48px}
.gpi-header-actions .text-link,.gpi-home-actions .text-link{font-size:13px;color:var(--gpi-blue)}
.gpi-index-stats,.gpi-home-statline{background:#fff;border-color:#cbd7e6}
.gpi-index-stats strong,.gpi-home-statline strong,.gpi-country-stat strong{
  font-family:var(--gpi-font);
  font-weight:600;
  letter-spacing:-.035em;
  font-variant-numeric:tabular-nums lining-nums;
  color:var(--gpi-navy);
}
.gpi-index-stats span,.gpi-home-statline span{font-family:var(--gpi-font);color:#526780;font-size:11px;line-height:1.65}

/* Quiet panels and aligned entry cards replace decorative depth. */
.gpi-leader-panel{background:#f6f8fc;border:1px solid #cbd8e9;border-top:3px solid var(--gpi-blue);box-shadow:none}
.gpi-panel-kicker{font-family:var(--gpi-font);color:#3c5d86;letter-spacing:1px;border-color:#d4deeb}
.gpi-panel-kicker>span{font-family:var(--gpi-mono)}
.gpi-first{font-family:var(--gpi-font);font-weight:600;letter-spacing:.8px;color:var(--gpi-gold)}
.gpi-leader-body strong{font:600 39px/1 var(--gpi-font);letter-spacing:-1.5px;color:var(--gpi-navy);font-variant-numeric:tabular-nums}
.gpi-leader-body strong small{font-family:var(--gpi-font);color:#536b86;font-weight:400;letter-spacing:0}
.gpi-rank-emblem{font:500 43px/1 var(--gpi-mono);color:#486b98;border-color:#c3d2e5;outline:none;background:#edf3fa}
.gpi-rank-emblem span{font-family:var(--gpi-font)}
.gpi-score-scale{height:5px;background:#dbe5f2}
.gpi-score-scale i{background:var(--gpi-blue)}
.gpi-scale-labels{font-family:var(--gpi-mono);color:#5a7393}
.gpi-panel-link{font:550 12px/1.6 var(--gpi-font);color:#315d97;border-color:#d4deeb}
.gpi-panel-link:hover{text-decoration:underline;text-underline-offset:4px}
.gpi-index-entries{gap:24px}
.gpi-index-entry{border-color:#cdd9e7;border-top:3px solid var(--gpi-blue);background:#fff;box-shadow:none;transition:border-color .15s,background-color .15s}
.gpi-index-entry:hover{border-color:#6b8eb9;background:#fcfdff;box-shadow:none}
.gpi-entry-heading h3 span{color:var(--gpi-blue)}
.gpi-entry-question{font-family:var(--gpi-font);font-size:14px;color:#4b627e}
.gpi-entry-meta{font-family:var(--gpi-font);color:#536c8a;font-size:11px}
.gpi-entry-actions>a:not(.button){font-family:var(--gpi-font);font-size:12px;color:#305e98}
.gpi-entry-actions>a:not(.button):hover{text-decoration:underline;text-underline-offset:4px}
.gpi-home-jumps{background:#f3f6fb;border-color:#cbd7e7}
.gpi-home-jumps>*{min-width:0}
.gpi-home-jumps>a{font-family:var(--gpi-font);font-weight:550;color:#284e80}
.gpi-home-jumps>a:hover{background:#e5edf8}
.gpi-home-jumps>a>span{font-family:var(--gpi-mono);color:#617c9c}
.gpi-home-jumps>span{font-family:var(--gpi-font);color:#526e90}
.gpi-country-card{background:#fff;border-color:#cbd8e8;border-top:3px solid var(--gpi-blue);box-shadow:none}
.gpi-country-card h3{font-size:35px;line-height:1.2}
.gpi-country-card>p,.gpi-country-stat span{font-family:var(--gpi-font);color:#4c6481}
.gpi-method-flow article{border-top:2px solid #426da7}
.gpi-method-flow article>span{font:500 12px var(--gpi-mono);color:#53759e}
.gpi-method-flow p{font-family:var(--gpi-font);color:#4e6480}
.gpi-method-equation{background:#f3f6fb;border-color:#cbd8e8}
.gpi-method-equation>strong{font:500 21px/1.7 var(--gpi-font);color:#294f80}
.gpi-method-equation>span,.gpi-method-equation>a{font-family:var(--gpi-font);color:#47688e}
.gpi-home .annual-awards-section{background:#f5f7fa;border-color:var(--gpi-line)}
.gpi-home .annual-winner h3{font-family:var(--gpi-font);font-size:22px;font-weight:600;letter-spacing:-.02em}
.gpi-home .annual-winner>div{min-width:0;overflow-wrap:anywhere}
.gpi-home .annual-winner strong{font-family:var(--gpi-font);font-weight:600;color:var(--gpi-navy)}
.gpi-home .annual-winner>div>span:last-child{font-family:var(--gpi-font);color:#436486}

/* Geographic graphics: the same research-blue scale, without institutional insignia. */
.gpi-global-figure{background:#113265;color:#bfd2ec;border-color:#183f78;box-shadow:none;padding:24px}
.gpi-global-figure figcaption{font-family:var(--gpi-font);letter-spacing:1.1px;color:#c1d4ed;border-color:#53719a}
.gpi-global-figure figcaption b{color:#f1f5fb;font-weight:550}
.gpi-world-land{fill:#44638e;stroke:#173c70}
.gpi-world-focus{fill:#bfd2ec;stroke:#153766}
.gpi-world-ring{stroke:#9cb8df;opacity:.9}
.gpi-world-callout{stroke:#b9cee9}
.gpi-world-dot{fill:#d9e6f7}
.gpi-world text{font-family:var(--gpi-font);fill:#f1f5fb;letter-spacing:.8px}
.gpi-world .gpi-world-sub{fill:#c0d1e8}
.gpi-world-bottom{border-color:#53719a}
.gpi-world-bottom strong{font:550 42px/1 var(--gpi-font);color:#fff;letter-spacing:-1.5px}
.gpi-world-bottom span{font-family:var(--gpi-font);color:#cad9ed}
.gpi-world-bottom .gpi-world-coordinate{font-family:var(--gpi-mono);color:#aec4e1}
.gpi-geography-section{background:#f4f7fb;border-color:#d4deea}
.gpi-geographic-map .gpi-map-context path{fill:#e8eef5;stroke:#cdd9e7}
.gpi-geographic-map a path,.gpi-geographic-map a circle{fill:#7d9fc9;stroke:#fff;transition:fill .15s}
.gpi-geographic-map a:hover path,.gpi-geographic-map a:hover circle,
.gpi-geographic-map a:focus path,.gpi-geographic-map a:focus circle{fill:#1c55a0;stroke:#12356a}
.gpi-geographic-map text{font-family:var(--gpi-font);fill:#46668e}
.gpi-geographic-map .gpi-map-credit{fill:#597493}

/* Common chart grammar: restrained winner mark, readable labels, explicit scales. */
.research-index :is(.eu-rank-row,.ds-chart-row,.ed-chart-row){border-bottom-color:#d3deeb;background:#fff}
.research-index :is(.eu-rank-winner,.ds-chart-winner,.ed-top-one){background:#f3f6fb;border-top:1px solid #cbd9eb;box-shadow:inset 3px 0 var(--gpi-gold)}
.research-index :is(.eu-rank-number,.ds-chart-rank,.ed-chart-rank,.ed-top-one .ed-chart-rank){font-family:var(--gpi-font);font-weight:400;letter-spacing:-.055em;color:#7189a6;font-variant-numeric:tabular-nums}
.research-index :is(.eu-rank-winner .eu-rank-number,.ds-chart-winner .ds-chart-rank,.ed-top-one .ed-chart-rank){color:var(--gpi-navy)}
.research-index .ds-chart-winner :is(.ds-chart-rank,.ds-chart-points>strong){color:var(--gpi-navy)!important}
.research-index :is(.eu-rank-info,.ds-chart-copy,.ed-chart-info) h3,
.research-index .eu-rank-info h3 button{font-family:var(--gpi-font);font-size:23px;font-weight:600;line-height:1.35;letter-spacing:-.025em;color:var(--gpi-navy)}
.research-index :is(.eu-rank-info,.ds-chart-copy,.ed-chart-info)>p{font-family:var(--gpi-font);color:#4c6380}
.research-index :is(.eu-score,.ds-chart-points>strong,.ed-score){font-family:var(--gpi-font)!important;font-size:40px!important;font-weight:550;letter-spacing:-.04em;color:var(--gpi-navy);font-variant-numeric:tabular-nums}
.research-index :is(.eu-score small,.ds-chart-points>small,.ed-score small){font-family:var(--gpi-font);font-size:11px;color:#526b87}
.research-index :is(.eu-rank-meta,.ds-chart-basis,.ed-chart-score>small){font-family:var(--gpi-font);font-size:11px;color:#536c87}
.research-index :is(.eu-type,.ed-chart-country,.ds-chart-copy>.ds-caption){letter-spacing:.75px;color:#536d8e}
.research-index .ds-chart-winner .ds-chart-copy>.ds-caption{color:#536d8e!important}
.research-index .ds-result>div{min-width:0;overflow-wrap:anywhere}
.research-index .ed-winner-label{font-family:var(--gpi-font);color:#7c6440;letter-spacing:.75px}
.research-index :is(.eu-rank-score,.ds-chart-points,.ed-chart-score) a{font-family:var(--gpi-font);font-size:12px;color:var(--gpi-blue)}
.research-index :is(.eu-bars,.ds-bars,.ed-bars){background:#f6f8fc;border-color:#d0dceb}
.research-index :is(.eu-bar-track,.ds-track,.ed-bar>div,.eu-row-meter,.ds-chart-meter){background:#e2eaf5}
.research-index :is(.eu-bar-track>span,.ds-track i,.ed-bar i,.eu-row-meter span,.ds-chart-meter i){background:#6689b8}
.research-index :is(.eu-bar-track>span.leader,.ds-highlight .ds-track i,.ed-bar-first i,.eu-rank-winner .eu-row-meter span,.ds-chart-winner .ds-chart-meter i){background:var(--gpi-blue)}
.research-index :is(.eu-bar-name,.ds-bar-label,.ed-bar>span){font-family:var(--gpi-font);color:#25476f}
.research-index :is(.eu-bar-value,.ds-bar>b,.ed-bar b){font-family:var(--gpi-font);font-weight:550;color:#24476e;font-variant-numeric:tabular-nums}
.research-index :is(.eu-axis,.ds-axis,.ed-axis){font-family:var(--gpi-mono);color:#587397;border-color:#c0cfe3}
.gpi-preview-name{font:550 12px/1.55 var(--gpi-font);color:#2c4e79}
.gpi-preview-rank,.gpi-preview-axis{font-family:var(--gpi-mono);color:#5c7697}
.gpi-preview-row strong{font-family:var(--gpi-font);font-weight:550;color:#264a77;font-variant-numeric:tabular-nums}
.gpi-preview-track{background:#e5edf7}
.gpi-preview-track i{background:#7496c1}
.gpi-preview-row:first-of-type .gpi-preview-track i{background:var(--gpi-blue)}
.gpi-chart-label,.gpi-chart-footnote{font-family:var(--gpi-font);color:#56718f}

/* Filters and tables remain functional and retain their scrolling boundaries. */
.research-index :is(.eu-filters,.ds-filters,.ed-toolbar){background:#f4f7fb;border-color:#cbd8e9;border-radius:0}
.research-index label,.gpi-home-market-controls label{font-family:var(--gpi-font);font-size:12px;color:#3f5a7a}
.research-index :is(input,select),.gpi-home-market-controls select{font-family:var(--gpi-font);border-color:#bccde2;background:#fff;color:#25466f;min-height:44px}
.research-index :is(.ed-limit,.ds-chart-tabs,.gpi-ranking-tabs) button{font-family:var(--gpi-font);min-height:44px;color:#345c8e;border-color:#bfd0e5}
.research-index :is(.ed-limit,.ds-chart-tabs,.gpi-ranking-tabs) button[aria-pressed=true]{background:var(--gpi-blue);border-color:var(--gpi-blue);color:#fff}
.research-index :is(.eu-results-bar,.ds-resultline,.ed-resultline,.ds-chart-tools>span){font-family:var(--gpi-font);font-size:12px;color:#526c8b}
.research-index .eu-table-scroll{border-color:#ccd9e9;background:#fff;scrollbar-width:thin;scrollbar-color:#9eb4d0 #f1f5fb}
.research-index .eu-table-scroll table{font-family:var(--gpi-font);font-variant-numeric:tabular-nums}
.research-index .eu-table-scroll :is(th,td){border-color:#dce4ef;color:#3c5675}
.research-index .eu-table-scroll thead th{background:#eaf0f8;color:#2b4d78;font-weight:600}
.research-index .eu-table-scroll tbody th{background:#f7f9fc;color:#264b7b}
.research-index .eu-table-scroll caption{background:#f3f6fb;color:#4c6686}
.research-index :is(.eu-empty,.ed-empty){background:#f3f6fb;color:#526981;border-color:#d2ddec}
.research-index :is(.eu-caption,.ds-caption,.ed-caption){color:#526b87!important}
.research-index :is(.eu-formula,.ds-transparency,.ed-contribution){background:#f4f7fb;border-color:#ccd9e9}
.research-index .ds-transparency{border-left-color:#5279ab}
.research-index :is(.eu-dialog,.ed-dialog){border-color:#b4c7e0;border-radius:2px;color:#193d6b;box-shadow:0 18px 60px #12356a22}
.research-index :is(.eu-dialog,.ed-dialog)::backdrop{background:#0b224f80;backdrop-filter:blur(3px)}

@media(max-width:1100px){
  .gpi-entry-heading h3{font-size:24px}
  .gpi-home-section-head h2{font-size:33px}
  .gpi-leader-body h2{font-size:20px}
}
@media(max-width:800px){
  .gpi-home-jumps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gpi-home-intro h1{font-size:48px}
  .gpi-masthead h1{font-size:43px}
  .gpi-leader-body h2{font-size:23px}
  .gpi-leader-body strong{font-size:35px}
  .gpi-index-stats span{font-size:10px}
  .gpi-entry-heading h3{font-size:27px}
  .gpi-home .annual-winner h3{font-size:25px}
  .research-index :is(.eu-score,.ds-chart-points>strong,.ed-score){font-size:35px!important}
  .gpi-country-card h3{font-size:30px}
  .gpi-global-figure{padding:22px;box-shadow:none}
}
@media(max-width:500px){
  .gpi-home-intro h1{font-size:38px;line-height:1.14;letter-spacing:-.03em}
  .gpi-masthead h1{font-size:35px;line-height:1.16;letter-spacing:-.025em}
  .gpi-home-intro>p,.gpi-masthead-copy>p{font-size:15px;line-height:1.8}
  .gpi-home-section-head h2{font-size:29px;line-height:1.25}
  .research-index .eu-section-heading h2{font-size:27px;line-height:1.25}
  .research-index .eu-section-number{font-size:15px}
  .gpi-entry-heading h3{font-size:24px}
  .gpi-entry-no{font-size:28px}
  .gpi-entry-meta{font-size:10px;flex-wrap:wrap;row-gap:5px}
  .gpi-leader-body h2{font-size:22px}
  .gpi-index-stats strong,.gpi-home-statline strong{font-size:29px}
  .gpi-index-stats span,.gpi-home-statline span{font-size:10px}
  .gpi-section-nav>.wrap{gap:23px}
  .gpi-section-nav a{font-size:12px;min-height:50px;padding-block:14px}
  .gpi-global-figure{padding:18px;box-shadow:none}
  .gpi-global-figure figcaption{font-size:8px;letter-spacing:.7px}
  .gpi-world-bottom strong{font-size:35px}
  .gpi-country-card h3{font-size:31px}
  .gpi-method-flow h3{font-size:21px}
  .gpi-method-equation>strong{font-size:20px}
  .gpi-home .annual-winner h3{font-size:23px}
  .research-index :is(.eu-rank-info,.ds-chart-copy,.ed-chart-info) h3,
  .research-index .eu-rank-info h3 button{font-size:21px}
  .research-index :is(.eu-score,.ds-chart-points>strong,.ed-score){font-size:33px!important}
  .research-index :is(.eu-rank-meta,.ds-chart-basis,.ed-chart-score>small){font-size:10px}
  .research-index :is(input,select),.gpi-home-market-controls select{font-size:16px}
  .research-index :is(.ed-limit,.ds-chart-tabs,.gpi-ranking-tabs) button{font-size:11px;padding-inline:13px}
}
@media(prefers-reduced-motion:reduce){
  .gpi-index-entry,.gpi-geographic-map a path,.gpi-geographic-map a circle{transition:none}
}
@media print{
  header{border-top:0}
  .gpi-global-figure,.gpi-leader-panel,.gpi-index-entry{box-shadow:none}
  .research-index :is(.eu-rank-winner,.ds-chart-winner,.ed-top-one){background:#f1f4f8;print-color-adjust:exact}
  .gpi-score-scale i,.research-index :is(.eu-bar-track>span,.ds-track i,.ed-bar i){print-color-adjust:exact}
}

/* Phone reading order: platform, score with its unit, then the profile action. */
@media(max-width:560px){
  .research-index :is(.eu-rank-score,.ds-chart-points,.ed-chart-score){
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:8px;
    min-width:0;
    text-align:start;
  }
  .research-index :is(.eu-rank-score,.ds-chart-points,.ed-chart-score)>:is(.eu-score,.ed-score,strong){
    display:block;
    width:fit-content;
    max-width:100%;
    text-align:start;
  }
  .research-index :is(.eu-score,.ed-score)>small,
  .research-index :is(.ds-chart-points,.ed-chart-score)>small{
    display:block;
    margin:5px 0 0;
    line-height:1.65;
    text-align:start;
  }
  .research-index :is(.eu-rank-score,.ds-chart-points,.ed-chart-score)>.gpi-score-basis{
    display:block;
    width:100%;
    margin:0;
  }
  .research-index :is(.eu-rank-score,.ds-chart-points,.ed-chart-score)>:is(.eu-link,a){
    display:flex;
    align-items:center;
    width:fit-content;
    max-width:100%;
    min-height:36px;
    margin:6px 0 0;
    padding-block:5px;
    line-height:1.6;
    text-align:start;
    white-space:normal;
  }

  /* A full-width label row keeps names readable above each quantitative bar. */
  .research-index .eu-bars .eu-bar-row,
  .research-index .eu-national-card .eu-bars .eu-bar-row,
  .research-index .eu-national-grid .eu-bars.small .eu-bar-row,
  .research-index .ds-bars .ds-bar,
  .research-index .ed-bars .ed-bar{
    grid-template-columns:minmax(0,1fr) 42px;
    column-gap:12px;
    row-gap:9px;
  }
  .research-index :is(.eu-bar-name,.ds-bar-label,.ed-bar>span){
    grid-column:1;
    grid-row:1;
    min-width:0;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
  .research-index :is(.eu-bar-value,.ds-bar>b,.ed-bar>b){grid-column:2;grid-row:1;align-self:start}
  .research-index :is(.eu-bar-track,.ds-bar>.ds-track,.ed-bar>div){grid-column:1/-1;grid-row:2}
  .research-index :is(.eu-bar-row>small,.ds-bar-note){grid-column:1/-1;grid-row:3}
  .research-index :is(.eu-bars,.eu-national-card .eu-bars,.eu-national-grid .eu-bars.small) .eu-axis,
  .research-index :is(.ds-bars .ds-axis,.ds-executive .ds-axis,.ed-bars .ed-axis){margin-inline:0}
  .research-index .eu-bar-name[data-eu-profile="checkmytreatment"]{white-space:nowrap}
  .research-index .eu-bar-name[data-eu-profile="checkmytreatment"] .gpi-score-basis{white-space:normal}
  .research-index .eu-rank-info h3 button[data-eu-profile="checkmytreatment"]{
    font-size:clamp(18px,4.8vw,21px);
    white-space:nowrap;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
  .research-index .gpi-leader-body{grid-template-columns:64px minmax(0,1fr);gap:14px}
  .research-index .gpi-leader-body>img{width:64px;height:96px}
  .research-index .gpi-leader-body .gpi-rank-emblem{font-size:31px}
  .europe-index:not(.education-index) .gpi-leader-body h2{font-size:clamp(18px,4.6vw,21px);white-space:nowrap;overflow-wrap:normal;word-break:normal;hyphens:none}
  .education-index .gpi-leader-body h2{font-size:clamp(18px,4.6vw,21px);white-space:normal;overflow-wrap:normal;word-break:normal;hyphens:none}
  .europe-index .eu-award-hero h2{font-size:clamp(20px,6vw,26px);white-space:nowrap;overflow-wrap:normal;hyphens:none}
  .gpi-home .gpi-preview-name{overflow-wrap:normal;word-break:normal;hyphens:none}

  /* Each methodological step needs enough measure for complete German words. */
  .gpi-home .gpi-method-flow{grid-template-columns:minmax(0,1fr);gap:27px}
  .gpi-home .gpi-method-flow article{min-width:0;overflow-wrap:normal;word-break:normal}
  .gpi-home .gpi-method-flow h3{font-size:21px;line-height:1.4;overflow-wrap:normal;word-break:normal;hyphens:none}
  .gpi-home .gpi-method-flow h3{margin-top:16px}
  .gpi-home .gpi-method-flow p{margin-bottom:0}

  /* Long editorial headings keep complete words within the phone text measure. */
  .annual-edition .annual-page-head h1,
  .research-index.eu-method-page>h1{
    font-size:clamp(27px,7.5vw,34px);
    line-height:1.25;
    letter-spacing:-.025em;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
  .annual-edition .annual-copy-grid,
  .annual-edition .annual-method-links{grid-template-columns:minmax(0,1fr)}
  .annual-edition .annual-copy-grid>*,
  .annual-edition .annual-method-links>a{min-width:0}
  .annual-edition .annual-method-links>a{padding:22px}
  .annual-edition .annual-method-links h3{font-size:22px;line-height:1.35;overflow-wrap:normal;word-break:normal;hyphens:none}
  .annual-edition .annual-award-details h2{font-size:clamp(26px,7.5vw,34px);line-height:1.25}
  .education-index .ed-price-chart>aside h3{font-size:21px;line-height:1.35;overflow-wrap:normal;word-break:normal;hyphens:none}
  .education-index .ed-detail h2{font-size:clamp(24px,6.5vw,30px);line-height:1.3;overflow-wrap:normal;word-break:normal;hyphens:none}
  .education-index .ed-national-summary>a:not(.eu-link){grid-template-columns:22px minmax(0,1fr) 42px;gap:9px}
  .education-index .ed-national-summary>a>div{min-width:0}
}

/* Ranking directory: subject and assessment lead; sample sizes stay secondary. */
.gpi-ranking-navigator{display:block;align-self:center;min-width:0;padding:30px 32px;border:1px solid #cbd7e6;border-top:4px solid #245993;background:#f5f7fb}
.gpi-ranking-navigator>.gpi-kicker{display:block;margin-bottom:18px}
.gpi-ranking-navigator>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0;border-top:1px solid #d8e0eb;font:550 19px/1.4 var(--gpi-font,Arial,sans-serif);color:#12356a;text-decoration:none}
.gpi-ranking-navigator>a>b{font-size:20px;font-weight:400;color:#708aab}
.gpi-ranking-navigator>a:hover{color:#2463a3}
.gpi-ranking-navigator>p{margin:20px 0 0;font:12px/1.6 var(--gpi-font,Arial,sans-serif);color:#657b95}
.gpi-home .gpi-ranking-directory{padding-top:26px}
.gpi-directory-group{scroll-margin-top:32px;margin-top:42px}
.gpi-directory-group-head{display:flex;align-items:center;gap:22px;margin-bottom:20px}
.gpi-directory-group-head:after{content:"";height:1px;flex:1;background:#d5deea}
.gpi-directory-group-head>.gpi-kicker{font-size:11px;letter-spacing:.12em}
.gpi-directory-highlight{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:44px;align-items:center;padding:34px 38px;border:1px solid #b8a578;background:#122b40;color:#fff}
.gpi-directory-highlight>div{min-width:0}
.gpi-highlight-label{display:inline-block;background:#c1a772;color:#142b3a;padding:7px 11px;font:650 10px/1.3 var(--gpi-font,Arial,sans-serif);letter-spacing:.15em}
.gpi-home .gpi-directory-highlight h3{font:500 31px/1.3 var(--gpi-font,Arial,sans-serif);margin:20px 0 12px;color:#fff}
.gpi-directory-highlight h3 a{display:block;color:inherit;text-decoration:none}
.gpi-directory-highlight h3 a>span{font-size:22px;color:#c1a772;margin-inline-start:8px}
.gpi-directory-highlight p{font:14px/1.8 var(--gpi-font,Arial,sans-serif);color:#d4dce5;margin:0;max-width:640px}
.gpi-directory-highlight-action{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.gpi-directory-highlight-action>span{font:500 12px/1.5 var(--gpi-font,Arial,sans-serif);color:#d9c698;letter-spacing:.035em}
.gpi-directory-highlight-action .button{background:#e0cc9c;color:#142b3a;border-color:#e0cc9c;font-size:13px}
.gpi-special-entries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gpi-special-entry{display:flex;flex-direction:column;min-width:0;background:#f7f9fc;border:1px solid #cbd7e6;border-top:3px solid #547aa7;padding:28px 25px}
.gpi-home .gpi-special-entry h3{font:600 25px/1.3 var(--gpi-font,Arial,sans-serif);letter-spacing:-.025em;margin:20px 0 14px;overflow-wrap:normal;word-break:normal;hyphens:none}
.gpi-special-entry h3 a{display:block;color:#163c70;text-decoration:none}
.gpi-special-entry h3 a>span{display:inline-block;font-size:18px;font-weight:400;color:#6b85a5;margin-inline-start:8px}
.gpi-special-entry>p{font:14px/1.8 var(--gpi-font,Arial,sans-serif);color:#526780;margin:0 0 26px}
.gpi-special-entry-footer{margin-top:auto;padding-top:20px;border-top:1px solid #d8e1ec;display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;justify-content:space-between}
.gpi-special-entry-footer>a{font-size:13px;min-height:36px;display:flex;align-items:center;gap:20px}
.gpi-special-entry-footer>small{font-size:10px;color:#61758e}
.gpi-country-assessment{border-block:1px solid #d2ddec;padding:24px 0}
.gpi-country-assessment>span{font:500 11px/1.6 var(--gpi-font,Arial,sans-serif);color:#5a7190;letter-spacing:.045em}
.gpi-country-assessment>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;margin-top:15px}
.gpi-country-assessment strong{font:550 46px/1.15 var(--gpi-font,Arial,sans-serif);letter-spacing:-.035em;color:#143967}
.gpi-country-assessment>div>span{font:12px/1.6 var(--gpi-font,Arial,sans-serif);color:#627994}
.gpi-country-assessment>p{display:flex;flex-direction:column;gap:5px;font:12px/1.7 var(--gpi-font,Arial,sans-serif);margin:15px 0 0;color:#627994}
.gpi-country-assessment>p>b{font-weight:600;color:#2a507c}
.gpi-index-context{padding-block:21px;border-block:1px solid #d5deea;color:#58708e}
.gpi-index-context>p{display:flex;flex-wrap:wrap;gap:7px 22px;margin:0 0 12px;font:550 14px/1.7 var(--gpi-font,Arial,sans-serif);color:#244c7d}
.gpi-index-context>ul{display:flex;flex-wrap:wrap;gap:8px 22px;list-style:none;padding:0;margin:0}
.gpi-index-context li{display:inline-flex;gap:5px;font:400 12px/1.7 var(--gpi-font,Arial,sans-serif)}
.gpi-index-context li>span:first-child{font-weight:550;font-variant-numeric:tabular-nums}
@media(max-width:1000px){.gpi-special-entries{gap:14px}.gpi-special-entry{padding:25px 20px}.gpi-home .gpi-special-entry h3{font-size:23px}.gpi-directory-highlight{padding:30px;gap:25px}}
@media(max-width:800px){.gpi-ranking-navigator{padding:25px}.gpi-ranking-navigator>a{font-size:18px;padding:18px 0}.gpi-special-entries{grid-template-columns:minmax(0,1fr)}.gpi-home .gpi-special-entry h3{font-size:26px}.gpi-special-entry{padding:26px}.gpi-directory-highlight{grid-template-columns:minmax(0,1fr);gap:25px}.gpi-directory-highlight-action{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}.gpi-directory-group{margin-top:34px}}
@media(max-width:500px){.gpi-ranking-navigator{padding:22px}.gpi-ranking-navigator>a{font-size:16px;gap:12px}.gpi-directory-group-head{gap:12px}.gpi-directory-group-head>.gpi-kicker{font-size:9px;letter-spacing:.1em}.gpi-directory-highlight{padding:26px 22px}.gpi-home .gpi-directory-highlight h3{font-size:27px;hyphens:none;overflow-wrap:normal}.gpi-directory-highlight-action{align-items:stretch;flex-direction:column;gap:14px}.gpi-directory-highlight-action .button{display:flex;justify-content:space-between}.gpi-special-entry{padding:24px 22px}.gpi-home .gpi-special-entry h3{font-size:24px}.gpi-country-assessment strong{font-size:40px}.gpi-index-context>p{gap:5px 15px;font-size:12px}.gpi-index-context>ul{gap:7px 18px}.gpi-index-context li{font-size:11px}.gpi-home .gpi-ranking-directory{padding-top:15px}}
