/* Fleet Intelligence® Research Publications — theme font inheritance, isolated styles */
.firp{--r:#991f3d;--ink:#262726;--muted:#686762;--rule:#ddd9d2;--warm:#f5f2ec;--dark:#252727;color:var(--ink);font-family:inherit!important;max-width:100%;width:100%;line-height:1.7;overflow-wrap:anywhere}
.firp *{box-sizing:border-box}.firp :is(h2,h3,h4,p,a,select,input){font-family:inherit!important}.firp :is(h2,h3,h4){line-height:1.2;letter-spacing:-.02em}.firp p{line-height:1.8}.firp a{color:var(--r);text-decoration:none}.firp a:hover{text-decoration:underline}.firp-masthead{padding:clamp(27px,4vw,55px);background:var(--warm);border-top:5px solid var(--r)}.firp-overline,.firp-index,.firp-section-tag,.firp-feature>span{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:750;color:var(--r)}.firp-overline span{color:#676761}.firp-masthead h2{font-size:clamp(28px,3.5vw,45px)!important;max-width:850px;margin:18px 0!important}.firp-masthead p{font-size:clamp(15px,1.35vw,18px);max-width:680px;color:#4f4e49}.firp-meta{display:flex;gap:13px 25px;flex-wrap:wrap;border-top:1px solid #d7d1c8;padding-top:15px;margin-top:25px}.firp-meta span{font-size:10px;letter-spacing:.06em;font-weight:650}.firp-nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px 20px;border-bottom:1px solid var(--rule);padding:15px 2px;margin-bottom:22px}.firp-nav a{font-size:12px;font-weight:700;color:#343532;padding:8px 0}.firp-nav a:hover{color:var(--r)}.firp-year-label{margin-left:auto;font-size:11px;color:#555}.firp-year{padding:7px 11px;border:1px solid var(--rule);background:#fff;color:#222;font-size:13px}.firp-section-tag{margin:24px 0}.firp-intro{padding:18px 0 28px;max-width:860px}.firp-intro h3{font-size:clamp(25px,2.7vw,36px)!important;margin:13px 0 16px!important}.firp-intro p{font-size:15px;line-height:1.8}.firp-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:15px 0 35px}.firp-feature{display:flex;flex-direction:column;min-height:215px;padding:25px;background:var(--warm);border-top:3px solid var(--r);color:var(--ink)!important}.firp-feature h3{font-size:24px!important;margin:14px 0 10px!important}.firp-feature p{font-size:14px;color:#555}.firp-feature strong{margin-top:auto;color:var(--r);font-size:12px}.firp-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:10px 0 35px}.firp-metrics>div{padding:18px 20px;border-right:1px solid var(--rule)}.firp-metrics>div:first-child{padding-left:0}.firp-metrics>div:last-child{border:0}.firp-metrics strong{display:block;font-size:clamp(26px,3vw,43px);color:var(--r);line-height:1.1}.firp-metrics span{display:block;font-size:12px;margin-top:8px}.firp-regions{display:grid;gap:25px;margin:15px 0 45px}.firp-region{border-top:3px solid var(--ink);padding:20px 0}.firp-region-heading h3{font-size:28px!important;margin:0 0 10px!important}.firp-region-heading p{font-size:14px;max-width:730px}.firp-country-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.firp-country-links a{padding:15px;background:var(--warm);color:var(--ink);font-size:14px;font-weight:650;display:flex;justify-content:space-between;gap:12px}.firp-country-links a span{color:var(--r)}.firp-toolbar{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr) auto;gap:13px;padding:19px;background:var(--dark);color:#fff;align-items:end;margin-bottom:12px}.firp-toolbar label,.firp-compare-form label{display:block;font-size:11px;font-weight:700}.firp-toolbar :is(input,select),.firp-compare-form select{display:block;width:100%;min-height:42px;padding:8px 10px;margin-top:6px;background:#fff;border:1px solid #c5c3be;color:#222;font-size:13px}.firp-filter-count{font-size:12px;padding-bottom:12px}.firp-list{border-top:1px solid var(--rule);margin-bottom:45px}.firp-list>a{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--rule);padding:15px 5px;color:var(--ink)}.firp-list>a:hover{background:#faf8f4;text-decoration:none}.firp-list strong{display:block;font-size:15px}.firp-list small{display:block;color:#6a6862;font-size:12px;margin-top:5px}.firp-list>a>span{font-size:12px;color:var(--r);text-align:right;max-width:32%}.firp-compare-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px;background:var(--warm);margin-bottom:20px}.firp-compare-output{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.firp-compare-card{padding:22px;border-top:3px solid var(--r);background:#faf9f6}.firp-compare-card h3{font-size:22px!important}.firp-compare-card dt{font-size:10px;text-transform:uppercase;color:var(--r);font-weight:750;letter-spacing:.07em;margin-top:15px}.firp-compare-card dd{margin:4px 0;font-size:14px}.firp-reader-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.firp-reader-actions a{padding:12px 19px;background:var(--r);color:#fff;font-size:13px;font-weight:700}.firp-reader-actions a:hover{background:#72172d;color:#fff;text-decoration:none}.firp-pdf{width:100%;height:min(78vh,850px);border:1px solid var(--rule)}.firp-notice{background:var(--warm);padding:25px;border-left:4px solid var(--r);margin-bottom:35px}.firp-country-article{max-width:100%;padding:10px 0 25px}.firp-country-article :is(.fi-country-head,.fi-country-index,.fi-country-tag){display:none}.firp-country-article .fi-original-snapshot,.firp-country-article .fi-profile-intel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:15px;background:var(--warm);margin:16px 0}.firp-country-article .fi-snapshot-item{border-bottom:1px solid var(--rule);padding:12px}.firp-country-article .fi-snapshot-item span{display:block;color:var(--r);font-size:10px;font-weight:750;text-transform:uppercase}.firp-country-article .fi-snapshot-item strong{font-size:13px}.firp-country-article .fi-country-analysis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.firp-country-article .fi-intel-section{background:#faf9f6;border-top:2px solid var(--r);padding:17px}.firp-country-article h4{font-size:19px!important}.firp-country-article p{font-size:14px;line-height:1.8}.firp-country-article :is(table,.fi-leaders-table){display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:12px}.firp-country-article th{background:#292b29;color:#fff}.firp-country-article :is(th,td){padding:9px;border-bottom:1px solid var(--rule)}.firp-subtitle{border-top:2px solid var(--r);padding-top:20px;font-size:24px!important}.firp-operator-extra{margin-bottom:24px}.firp-profile-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--warm);border-left:3px solid var(--r);margin:12px 0 15px}.firp-profile-meta>div{padding:14px;border-right:1px solid var(--rule)}.firp-profile-meta span{display:block;font-size:10px;text-transform:uppercase;color:var(--r)}.firp-profile-meta strong{display:block;font-size:14px;margin-top:6px}
@media(max-width:780px){.firp-feature-grid,.firp-compare-form,.firp-compare-output,.firp-country-article .fi-country-analysis{grid-template-columns:1fr}.firp-country-links{grid-template-columns:repeat(2,minmax(0,1fr))}.firp-toolbar{grid-template-columns:1fr}.firp-metrics{grid-template-columns:1fr 1fr}.firp-metrics>div{border-bottom:1px solid var(--rule)}.firp-nav{gap:2px 13px}.firp-year-label{margin-left:0}}
@media(max-width:500px){.firp-country-links,.firp-country-article .fi-original-snapshot,.firp-profile-meta{grid-template-columns:1fr}.firp-masthead{padding:25px 19px}.firp-feature{padding:20px}.firp-metrics{grid-template-columns:1fr}.firp-metrics>div{padding-left:0}.firp-list>a{align-items:flex-start}.firp-list>a>span{max-width:42%}}
.firp .firp-operator-list>a[hidden]{display:none!important}

/* v1.1 editorial refinement */
.firp-masthead{background:linear-gradient(115deg,#f4f1ea 0%,#f8f7f3 72%,#eae5dd 100%);border-top:4px solid var(--r)}
.firp-masthead h2{font-weight:650!important;letter-spacing:-.035em!important}
.firp-meta{margin-top:24px}.firp-meta span{font-weight:600;color:#5a5953}
.firp-intro{padding-top:24px}.firp-intro h3{max-width:760px;letter-spacing:-.028em}
.firp-feature{border-top:1px solid #d6cfc5;background:#f7f5f0;transition:background .2s ease}
.firp-feature:hover{background:#eeeae3;text-decoration:none}
.firp-feature>span{color:#8d2942}
.firp-toolbar{grid-template-columns:minmax(0,1.7fr) minmax(130px,1fr) minmax(130px,1fr) auto}
.firp-compare-form{grid-template-columns:repeat(3,minmax(0,1fr))}
.firp-compare-output{grid-template-columns:repeat(3,minmax(0,1fr))}
.firp-region-heading{padding-bottom:10px;border-bottom:1px solid var(--rule)}
.firp-region-heading h3{letter-spacing:-.025em}
.firp-country-links a{border-left:2px solid transparent;transition:background .2s ease,border-color .2s ease}
.firp-country-links a:hover{background:#eee9e2;border-left-color:var(--r);text-decoration:none}
.firp :focus-visible{outline:2px solid var(--r);outline-offset:3px}
@media(max-width:920px){.firp-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.firp-compare-output{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.firp-toolbar,.firp-compare-form,.firp-compare-output{grid-template-columns:1fr}.firp-feature-grid{grid-template-columns:1fr}}

/* v1.2 — restrained editorial treatment, no ornamental crimson rules */
.firp-masthead{border-top:0!important;background:#f6f5f1!important;padding:clamp(26px,3.5vw,48px)!important}
.firp-feature,.firp-compare-card,.firp-country-article .fi-intel-section{border-top:1px solid #d9d6cf!important}
.firp-region{border-top:1px solid #d5d2cb!important}
.firp-subtitle{border-top:1px solid #d5d2cb!important}
.firp-profile-meta,.firp-notice{border-left:0!important}
.firp-country-links a{border-left:0!important}
.firp-country-links a:hover{border-left:0!important}
.firp-feature-grid{gap:14px}
.firp-edition-image{margin:0 0 25px;overflow:hidden;max-height:480px}
.firp-edition-image img{display:block;width:100%;height:clamp(220px,34vw,480px);object-fit:cover}
.firp-section-heading{margin:28px 0 20px}.firp-section-heading h3,.firp-coverage-intro h3{font-size:clamp(22px,2.5vw,33px)!important;line-height:1.25;margin:9px 0!important;letter-spacing:-.025em}
.firp-section-heading p,.firp-coverage-intro p{color:#5c5c57;font-size:14px;max-width:650px}
.firp-map-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,1fr);background:#faf9f6;border:1px solid #e3e0d9;margin:20px 0 35px;min-height:390px}
.firp-map-wrap{position:relative;min-width:0;aspect-ratio:75/74;max-height:590px;background:#faf9f6;overflow:hidden}
.firp-map-base{display:block;width:100%;height:100%;object-fit:fill}
.firp-map-pin{position:absolute;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);width:23px;height:23px;border-radius:50%;z-index:3;text-decoration:none!important}
.firp-map-pin span{display:block;width:9px;height:9px;border-radius:50%;background:#962642;border:2px solid #fff;box-shadow:0 0 0 2px rgba(150,38,66,.2);transition:transform .15s,box-shadow .15s}
.firp-map-pin:hover span,.firp-map-pin:focus-visible span{transform:scale(1.5);box-shadow:0 0 0 4px rgba(150,38,66,.17)}
.firp-map-aside{padding:clamp(22px,3vw,40px);border-left:1px solid #e3e0d9;display:flex;flex-direction:column;justify-content:center}
.firp-map-aside h4{font-size:clamp(20px,2vw,27px)!important;margin:10px 0 0!important}
.firp-map-aside p{font-size:14px;line-height:1.8;color:#66635d}
.firp-map-selection{padding:13px 0;border-top:1px solid #d9d6cf;font-size:13px;font-weight:600;min-height:50px}
.firp-map-legend{display:flex;align-items:center;gap:10px;font-size:11px;color:#67635d}
.firp-map-legend i{display:inline-block;width:9px;height:9px;background:#962642;border-radius:50%}
.firp-region-controls{display:flex;align-items:center;gap:16px;margin:30px 0 12px}
.firp-region-controls label{font-size:13px;font-weight:650}
.firp-region-picker{padding:9px 30px 9px 12px;border:1px solid #d4d0c8;background:white;font-size:13px;color:#272727}
.firp .firp-region[hidden]{display:none!important}
.firp-coverage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:45px;border-top:1px solid #ddd9d2;border-bottom:1px solid #ddd9d2;padding:28px 0;margin:30px 0 35px}
.firp-bars{display:flex;flex-direction:column;gap:12px;justify-content:center}
.firp-bar-row{display:grid;grid-template-columns:minmax(85px,115px) minmax(0,1fr) 24px;align-items:center;gap:10px;font-size:12px}
.firp-bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.firp-bar-track{height:8px;background:#ebe9e3;border-radius:2px;overflow:hidden}
.firp-bar-track span{display:block;height:100%;background:#727770;border-radius:2px}
.firp-bar-row strong{text-align:right;font-variant-numeric:tabular-nums;font-weight:650}
@media(max-width:780px){.firp-map-layout{grid-template-columns:1fr}.firp-map-aside{border-left:0;border-top:1px solid #e3e0d9}.firp-map-wrap{max-height:530px}.firp-coverage{grid-template-columns:1fr;gap:20px}}
@media(max-width:450px){.firp-map-pin{width:19px;height:19px}.firp-map-pin span{width:8px;height:8px}.firp-region-controls{align-items:stretch;flex-direction:column;gap:7px}}
/* 1.3 — quiet editorial hierarchy, without repetitive section labels */
.firp .firp-masthead{border:0!important;border-top:0!important;background:#f7f5f0!important;padding-top:32px;padding-bottom:30px}
.firp .firp-masthead h2{margin-top:0!important;font-weight:600!important}
.firp .firp-meta{margin-top:14px}
.firp .firp-meta span{font-size:12px!important;font-weight:500!important;letter-spacing:.02em!important;text-transform:none!important;color:#77716a!important}
.firp .firp-section-tag,.firp .firp-overline{display:none!important}
.firp .firp-intro{padding-top:30px}
.firp .firp-intro h3{margin-top:0}
.firp .firp-feature{border-top:0!important}
.firp .firp-feature h3{margin-top:0}
.firp .firp-feature-grid{margin-top:20px}
.firp .firp-region,.firp .firp-coverage,.firp .firp-map-wrap{border-top:0!important}
.firp-dossier{margin:0 auto 50px;max-width:1180px;font-family:inherit;color:#302d2a}
.firp-dossier-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:10px 0 26px;padding-bottom:14px;border-bottom:1px solid #dedbd6;font-size:13px}
.firp-dossier-top a{color:#8e2941;text-decoration:none}
.firp-dossier-top span{color:#817b74}
.firp-dossier-location{font-size:13px;color:#77716a;margin:0 0 20px}
.firp-dossier-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,.9fr);gap:clamp(25px,5vw,72px);align-items:start}
.firp-dossier h2{font-family:inherit;font-size:clamp(20px,2.2vw,27px)!important;line-height:1.2!important;letter-spacing:-.025em;margin:0 0 22px!important;font-weight:600!important}
.firp-dossier-body{font-family:inherit;font-size:16px;line-height:1.85;overflow-wrap:anywhere}
.firp-dossier-body p{margin:0 0 1.25em}
.firp-dossier-aside{background:#f7f5f1;padding:clamp(18px,3vw,32px);border:1px solid #e7e3dc;border-radius:2px}
.firp-dossier-aside h2{font-size:20px!important;margin-bottom:20px!important}
.firp-dossier-fact{border-top:1px solid #ddd7ce;padding:15px 0}
.firp-dossier-fact span,.firp-dossier-years>span{display:block;font-size:12px;color:#817a72;margin-bottom:7px}
.firp-dossier-fact strong{font-size:16px;font-weight:600;line-height:1.5;display:block;overflow-wrap:anywhere}
.firp-dossier-fact p{margin:0;font-size:14px;line-height:1.55}
.firp-dossier-note{color:#817a72;font-size:12px;line-height:1.6;margin:22px 0 0}
.firp-dossier-years{border-top:1px solid #ddd7ce;padding-top:18px}
.firp-dossier-years>div{display:flex;flex-wrap:wrap;gap:8px}
.firp-dossier-years a{padding:5px 10px;border:1px solid #d9d3ca;color:#3c3734;text-decoration:none;font-size:13px}
.firp-dossier-years a[aria-current="page"]{border-color:#8e2941;color:#8e2941}
.firp-related{margin-top:48px;padding-top:28px;border-top:1px solid #ddd7ce}
.firp-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 28px}
.firp-related-grid a{display:flex;justify-content:space-between;gap:10px;padding:15px 0;border-bottom:1px solid #e6e1db;text-decoration:none;color:inherit;font-size:14px}
.firp-related-grid a span{color:#8e2941}
@media(max-width:760px){.firp-dossier-grid{grid-template-columns:1fr}.firp-related-grid{grid-template-columns:1fr}.firp-dossier-aside{padding:20px}}

/* Country dossiers: editorial layout, no ornamental crimson rules */
.firp-country-head{padding:34px 0 16px}.firp-country-breadcrumb{font-size:13px;color:#7b7771;margin-bottom:14px}.firp-country-breadcrumb a{color:#514c47}.firp-country-head h3{font-size:clamp(32px,4.5vw,58px)!important;letter-spacing:-.045em!important;font-weight:600!important;margin:0 0 22px!important}.firp-country-cover{margin:0 0 24px}.firp-country-cover img{display:block;width:100%;max-height:490px;object-fit:cover}.firp-country-contents{display:flex;gap:24px;flex-wrap:wrap;border-bottom:1px solid #dcd8d2;padding:0 0 17px}.firp-country-contents a{color:#4c4945;font-size:13px;text-decoration:none}.firp-country-contents a:hover{color:#991f3d}.firp-country-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:clamp(24px,4vw,58px);align-items:start;margin:28px 0 56px}.firp-country-main{min-width:0}.firp-country-side{position:sticky;top:100px;background:#f8f7f4;padding:22px 20px;border:1px solid #e9e6df}.firp-country-side h4{font-size:17px!important;font-weight:600;margin:0 0 8px!important}.firp-country-side p{font-size:13px;line-height:1.65;margin:0 0 18px}.firp-country-side a{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #e2ddd6;padding:11px 0;color:#383632;text-decoration:none;font-size:13px}.firp-country-side a span{color:#991f3d}.firp-country-article{max-width:none}.firp-country-article .fi-country{max-width:100%;margin:0}.firp-country-article .fi-country-intelligence{width:100%}.firp-country-article .fi-country-snapshot{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#e4e0d9;margin:0 0 32px}.firp-country-article .fi-snapshot-item{background:#f7f5f1;padding:18px}.firp-country-article .fi-snapshot-item span{display:block;font-size:12px;color:#77716b;margin-bottom:6px}.firp-country-article .fi-snapshot-item strong{font-size:15px;line-height:1.5;font-weight:600}.firp-country-article .fi-intel-section{padding:18px 0;border-bottom:1px solid #e8e4dd}.firp-country-article .fi-intel-label{display:none}.firp-country-article .fi-intel-section h4{font-size:clamp(19px,2.1vw,25px)!important;font-weight:600!important;margin:0 0 12px!important}.firp-country-article .fi-intel-section p{font-size:15px;line-height:1.85}.firp-country-section-title{margin:0 0 23px}.firp-country-section-title h3,.firp-country-nearby h3{font-size:clamp(22px,2.5vw,31px)!important;letter-spacing:-.03em!important;margin:0 0 9px!important}.firp-country-section-title p{font-size:14px;color:#6e6b66;margin:0}.firp-country-operators{border-top:1px solid #dcd8d2;padding-top:29px;scroll-margin-top:110px}.firp-country-operator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.firp-country-operator-card{position:relative;display:flex;flex-direction:column;gap:8px;background:#f8f7f4;border:1px solid #e7e3dc;padding:20px 36px 20px 20px;color:#302e2b!important;text-decoration:none!important;min-height:120px}.firp-country-operator-card:hover{background:#f1eee8}.firp-country-operator-card strong{font-size:16px;font-weight:600;line-height:1.35}.firp-country-operator-card>span{font-size:13px;color:#706d67;line-height:1.55}.firp-country-operator-card small{font-size:12px;color:#57524e}.firp-country-operator-card i{position:absolute;right:17px;top:17px;font-style:normal;color:#991f3d}.firp-country-nearby{margin:46px 0 55px;padding-top:26px;border-top:1px solid #dcd8d2}.firp-country-nearby>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.firp-country-nearby a{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #e6e1da;color:#333;text-decoration:none;font-size:14px}.firp-country-nearby a span{color:#991f3d}#firp-market{scroll-margin-top:110px}#firp-nearby{scroll-margin-top:110px}@media(max-width:920px){.firp-country-layout{grid-template-columns:1fr}.firp-country-side{position:static;display:none}}@media(max-width:650px){.firp-country-operator-grid,.firp-country-nearby>div,.firp-country-article .fi-country-snapshot{grid-template-columns:1fr}.firp-country-head{padding-top:22px}.firp-country-contents{gap:14px}.firp-country-operator-card{min-height:0}}

/* Edition data explorer */
.firp-data-section{margin:48px 0 56px}
.firp-data-head{max-width:760px;margin-bottom:24px}
.firp-data-head h3{font-size:clamp(23px,2.5vw,33px);line-height:1.15;margin:0 0 10px;font-weight:600;letter-spacing:-.025em}
.firp-data-head p{color:#5c5a56;line-height:1.65;margin:0}
.firp-data-chart{display:grid;gap:12px;max-width:960px}
.firp-data-bar-row{display:grid;grid-template-columns:minmax(110px,190px) minmax(100px,1fr) 32px;align-items:center;gap:15px;font-size:13px}
.firp-data-bar-track{height:9px;background:#eeeae4;border-radius:2px;overflow:hidden}
.firp-data-bar-track i{height:100%;background:#78706d;display:block;border-radius:2px}
.firp-data-bar-row strong{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
.firp-data-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:15px;margin-bottom:15px}
.firp-data-controls label{display:grid;gap:6px;font-size:12px;font-weight:600}
.firp-data-controls input,.firp-data-controls select{width:100%;max-width:100%;padding:10px 12px;border:1px solid #c9c6c0;background:#fff;border-radius:3px;color:#252525}
.firp-data-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px;color:#555;font-size:13px}
.firp-data-download{font:inherit;font-weight:600;border:1px solid #c9c6c0;padding:10px 14px;border-radius:3px;background:#fff;color:#292929;cursor:pointer}
.firp-data-download:hover{background:#f3f1ed}
.firp-data-scroll{overflow:auto;max-width:100%;border-top:1px solid #c9c6c0;border-bottom:1px solid #c9c6c0}
.firp-data-table{width:100%;min-width:960px;border-collapse:collapse;font-size:12.5px;line-height:1.5;table-layout:auto}
.firp-data-table th,.firp-data-table td{padding:13px 12px;text-align:left;vertical-align:top;border-bottom:1px solid #e9e7e3}
.firp-data-table th{background:#f6f4f0;white-space:nowrap}
.firp-data-table th button{border:0;padding:0;background:none;color:#333;font:inherit;font-weight:650;cursor:pointer;text-align:left}
.firp-data-table th[aria-sort] button{color:#87263c}
.firp-data-table td:first-child{min-width:140px;font-weight:600}
.firp-data-table td:nth-child(4){min-width:170px}
.firp-data-table td:nth-child(5){min-width:180px}
.firp-data-table td:nth-child(7){min-width:180px}
.firp-data-table tbody tr:hover{background:#f9f8f5}
.firp-data-table tr[hidden]{display:none!important}
.firp-data-footnote{font-size:12px;color:#65615d;margin-top:14px;max-width:800px}
@media(max-width:720px){.firp-data-controls{grid-template-columns:1fr}.firp-data-bar-row{grid-template-columns:110px 1fr 25px;gap:8px;font-size:11px}.firp-data-actions{align-items:flex-start;flex-direction:column}}

/* Research dashboard — restrained editorial charts */
.firp-dash-section{margin:38px 0 56px;padding-top:24px;border-top:1px solid #e0dcd5}
.firp-dash-heading{max-width:760px;margin-bottom:27px}
.firp-dash-heading h3{font-size:clamp(24px,2.7vw,34px)!important;letter-spacing:-.035em!important;font-weight:600!important;margin:0 0 10px!important}
.firp-dash-heading p{font-size:14px;line-height:1.75;color:#68635e;margin:0}
.firp-dash-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,5vw,70px)}
.firp-dash-columns h4{font-size:18px!important;font-weight:600!important;margin:0 0 19px!important}
.firp-dash-bars{display:grid;gap:13px}
.firp-dash-bar{display:grid;grid-template-columns:minmax(100px,155px) minmax(80px,1fr) 30px;gap:12px;align-items:center;font-size:12px}
.firp-dash-bar>span{line-height:1.4}
.firp-dash-bar>div{height:10px;background:#eeece7;overflow:hidden;border-radius:1px}
.firp-dash-bar i{display:block;height:100%;background:#79736f}
.firp-dash-bar strong{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
.firp-dash-activities{max-width:860px}
.firp-dash-activities .firp-dash-bar{grid-template-columns:minmax(140px,200px) 1fr 35px}
.firp-dash-empty{background:#f7f5f1;padding:28px 32px;max-width:860px;border:1px solid #ebe7e0}
.firp-dash-empty h4{font-size:19px!important;font-weight:600!important;margin:0 0 12px!important}
.firp-dash-empty p{margin:0;font-size:14px;line-height:1.8}
.firp-dash-select-label{display:grid;gap:8px;font-size:13px;font-weight:600;max-width:530px}
.firp-dash-select-label select{padding:12px;border:1px solid #d1ccc5;background:white;font-size:14px}
.firp-dash-trend{padding:26px 0;max-width:900px}
.firp-trend-definition,.firp-trend-note{color:#66615b;font-size:13px}
.firp-trend-bars{display:grid;gap:18px;margin:24px 0}
.firp-trend-row{display:grid;grid-template-columns:55px minmax(100px,1fr) 85px;gap:14px;align-items:center;font-size:13px}
.firp-trend-row>strong{text-align:right;font-variant-numeric:tabular-nums}
.firp-trend-track{height:18px;background:#eeece7;overflow:hidden}
.firp-trend-track i{display:block;height:100%;background:#8a354b}
@media(max-width:760px){.firp-dash-columns{grid-template-columns:1fr}.firp-dash-bar{grid-template-columns:105px 1fr 25px;gap:8px;font-size:11px}.firp-dash-activities .firp-dash-bar{grid-template-columns:135px 1fr 25px}}

/* Contextual editorial visualizations: no decorative top crimson rules */
.firp-editorial-snapshot{margin:42px 0 56px;padding:26px 0 0;border-top:1px solid #e2dfd9;max-width:1080px}
.firp-snapshot-heading{max-width:750px;margin-bottom:24px}
.firp-snapshot-heading h3{font-size:clamp(22px,2.5vw,30px)!important;line-height:1.2!important;font-weight:600!important;letter-spacing:-.025em!important;margin:0 0 10px!important}
.firp-snapshot-heading p{color:#65615b;font-size:13px;line-height:1.7;margin:0}
.firp-snapshot-chart{display:grid;gap:13px;max-width:890px}
.firp-snapshot-row{display:grid;grid-template-columns:minmax(140px,230px) minmax(70px,1fr) 35px;gap:14px;align-items:center;font-size:13px}
.firp-snapshot-row>span{line-height:1.4}
.firp-snapshot-track{height:9px;background:#eeeae5;overflow:hidden}
.firp-snapshot-track i{display:block;height:100%;background:#88817a}
.firp-snapshot-row strong{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.firp-snapshot-actions{display:flex;gap:20px;flex-wrap:wrap;margin-top:22px;font-size:13px}
.firp-snapshot-actions a{color:#672d3c;text-decoration:none;border-bottom:1px solid #d9c7cd;padding-bottom:3px}
.firp-snapshot-actions a:hover{border-bottom-color:#672d3c}
.firp-country-main .firp-editorial-snapshot{margin-top:32px}
@media(max-width:720px){.firp-snapshot-row{grid-template-columns:115px minmax(60px,1fr) 28px;gap:8px;font-size:11px}.firp-editorial-snapshot{margin:32px 0}}

/* Browser-only publication reader */
.firp-reader-progress{height:3px;background:#e7e3df;position:sticky;top:0;z-index:9;margin:0 0 12px}
.firp-reader-progress span{display:block;height:100%;width:0;background:#8a354b;transition:width .08s linear}
.firp-reader-opening{padding:44px 0 54px;max-width:810px}
.firp-reader-edition,.firp-reader-chapter-num{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#77716b;margin:0 0 16px}
.firp-reader-opening h3{font-size:clamp(36px,5vw,64px)!important;letter-spacing:-.04em!important;line-height:1.08!important;margin:0 0 22px!important;font-weight:500!important}
.firp-reader-opening>p:not(.firp-reader-edition){font-size:17px;line-height:1.7;color:#55514d;max-width:700px}
.firp-reader-quick{display:flex;flex-wrap:wrap;gap:22px;margin-top:28px}
.firp-reader-quick a{font-size:13px;font-weight:600;text-decoration:none!important;color:#333}
.firp-reader-layout{display:grid;grid-template-columns:minmax(175px,230px) minmax(0,1fr);gap:clamp(28px,5vw,75px);border-top:1px solid #d8d4cf;padding-top:32px}
.firp-reader-sidebar{position:sticky;top:28px;align-self:start;display:grid;gap:3px;max-height:calc(100vh - 50px);overflow:auto;padding-bottom:18px}
.firp-reader-sidebar h4{font-size:13px!important;font-weight:650!important;margin:0 0 12px!important}
.firp-reader-sidebar a{display:block;padding:9px 12px;border-left:2px solid transparent;font-size:13px;line-height:1.4;color:#5b5551!important;text-decoration:none!important}
.firp-reader-sidebar a:hover,.firp-reader-sidebar a[aria-current="location"]{border-left-color:#8a354b;background:#f6f4f1;color:#222!important}
.firp-reader-chapter{padding:22px 0 55px;margin-bottom:32px;border-bottom:1px solid #e4e0da;scroll-margin-top:25px}
.firp-reader-chapter h3{font-size:clamp(27px,3.2vw,42px)!important;line-height:1.16!important;letter-spacing:-.03em!important;font-weight:500!important;margin:0 0 18px!important}
.firp-reader-chapter>p:not(.firp-reader-chapter-num){max-width:750px;font-size:15px;line-height:1.85;color:#595551}
.firp-reader-country-list{margin-top:25px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
.firp-reader-country-list a{display:flex;justify-content:space-between;gap:12px;padding:16px 3px;border-bottom:1px solid #e3dfd9;color:#242424!important;text-decoration:none!important;font-size:15px;font-weight:500}
.firp-reader-country-list a:hover{color:#8a354b!important}
@media(max-width:760px){.firp-reader-layout{grid-template-columns:1fr;gap:16px}.firp-reader-sidebar{position:static;display:flex;overflow-x:auto;gap:5px;max-height:none;white-space:nowrap;border-bottom:1px solid #e6e2dc;padding-bottom:8px}.firp-reader-sidebar h4{display:none}.firp-reader-sidebar a{border-left:0;border-bottom:2px solid transparent}.firp-reader-sidebar a[aria-current="location"]{border-left:0;border-bottom-color:#8a354b}.firp-reader-country-list{grid-template-columns:1fr}.firp-reader-opening{padding:24px 0 36px}}

/* v1.9 editorial reading and keyboard navigation */
.firp-country-pager{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:44px 0 32px;padding:25px 0;border-top:1px solid #dedad3;border-bottom:1px solid #dedad3}
.firp-country-pager a{display:flex;flex-direction:column;gap:7px;text-decoration:none!important;color:#292725!important;padding:8px 0}
.firp-country-pager a:last-child{text-align:right;align-items:flex-end}
.firp-country-pager a small{font-size:12px;color:#77716b}.firp-country-pager a strong{font-size:clamp(17px,2vw,23px);font-weight:600}
.firp-country-pager a:hover strong{text-decoration:underline;text-underline-offset:4px}
.firp-reader-chapter-picker-label{display:grid;gap:8px;font-size:12px;font-weight:600;color:#504b47;margin-bottom:14px}
.firp-reader-chapter-picker{width:100%;min-width:0;background:#fff;border:1px solid #ccc5bd;border-radius:3px;padding:10px 9px;color:#333;font:inherit;font-weight:400}
.firp-country-contents a[aria-current="location"]{color:#8a354b;text-decoration:underline;text-underline-offset:5px}
.firp :is(a,button,input,select):focus-visible{outline:2px solid #8a354b!important;outline-offset:3px!important}
.firp-reader-chapter{scroll-margin-top:30px}
@media(max-width:760px){.firp-reader-chapter-picker-label{min-width:180px;margin:0 8px 0 0}.firp-reader-sidebar{align-items:center}.firp-country-pager{gap:14px}}
@media(prefers-reduced-motion:reduce){.firp *{scroll-behavior:auto!important;transition:none!important}}

/* v2.0: one consolidated publication header, not a stack of repeated headings */
.firp.firp-publication .firp-unified-header{padding:0!important;margin:0 0 30px!important;background:transparent!important;border:0!important;box-shadow:none!important}
.firp .firp-unified-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:25px 0 22px;border-bottom:1px solid #d8d5cf}
.firp .firp-unified-identity{min-width:0}
.firp .firp-unified-identity h2{font-size:clamp(29px,3.6vw,49px)!important;line-height:1.09!important;letter-spacing:-.045em!important;font-weight:550!important;margin:0 0 9px!important}
.firp .firp-unified-identity p{font-size:clamp(13px,1.35vw,16px)!important;line-height:1.6!important;color:#615e58!important;margin:0!important;max-width:700px}
.firp .firp-unified-year{display:flex;align-items:center;gap:9px;flex:none;color:#77716b;font-size:12px!important;letter-spacing:0!important;text-transform:none!important;margin:0!important}
.firp .firp-unified-year select{min-width:88px!important;min-height:36px!important;background:#fff!important;border:1px solid #d5d1cb!important;border-radius:2px!important;padding:5px 9px!important;font-size:13px!important;font-weight:600!important;color:#302e2a!important}
.firp .firp-unified-nav{display:flex!important;justify-content:space-between!important;align-items:center!important;margin:0!important;padding:0!important;border-bottom:1px solid #e5e1db!important;background:transparent!important;gap:0!important;min-height:50px!important}
.firp .firp-unified-nav-links{display:flex;align-items:center;gap:clamp(12px,2.2vw,30px);flex-wrap:wrap}
.firp .firp-unified-nav a,.firp .firp-unified-nav summary{color:#4b4944!important;font-size:13px!important;font-weight:550!important;line-height:1.35!important;text-decoration:none!important;background:transparent!important;border:0!important;padding:15px 0!important;letter-spacing:0!important;text-transform:none!important}
.firp .firp-unified-nav a:hover,.firp .firp-unified-nav summary:hover,.firp .firp-unified-nav a[aria-current="page"]{color:#8a354b!important}
.firp .firp-unified-nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 #8a354b}
.firp .firp-nav-more{position:relative;z-index:20}
.firp .firp-nav-more summary{list-style:none;cursor:pointer;user-select:none}
.firp .firp-nav-more summary::-webkit-details-marker{display:none}
.firp .firp-nav-more-menu{position:absolute;top:100%;right:0;min-width:165px;display:grid;gap:0;padding:6px 16px;background:#fff;border:1px solid #e1ddd6;box-shadow:0 10px 25px rgba(0,0,0,.07)}
.firp .firp-nav-more-menu a{padding:12px 0!important;border-bottom:1px solid #eeeae5!important;white-space:nowrap}
.firp .firp-nav-more-menu a:last-child{border-bottom:0!important}
.firp .firp-overview-explore{margin-top:24px}
.firp .firp-overview-explore .firp-section-heading{margin:0 0 19px}
.firp .firp-overview-explore .firp-section-heading h3{font-size:clamp(23px,2.4vw,32px)!important;letter-spacing:-.03em!important;font-weight:600!important;margin:0 0 8px!important}
.firp .firp-overview-explore .firp-section-heading p{font-size:14px;line-height:1.65;color:#66615b;max-width:650px}
/* Long-form country analysis: readable single-column editorial text */
.firp .firp-country-layout{grid-template-columns:minmax(0,1fr) minmax(180px,215px)!important;gap:clamp(26px,4.5vw,66px)!important}
.firp .firp-country-main{max-width:830px}
.firp .firp-country-article{font-size:16px!important;line-height:1.85!important;overflow-wrap:break-word}
.firp .firp-country-article p,.firp .firp-country-article .fi-intel-section p,.firp .firp-country-article li{font-size:clamp(15px,1.35vw,17px)!important;line-height:1.85!important;max-width:72ch!important;color:#33312f!important;margin-bottom:1.2em!important}
.firp .firp-country-article :is(h3,h4,h5){line-height:1.3!important;letter-spacing:-.02em!important;margin:1.8em 0 .6em!important;font-weight:600!important}
.firp .firp-country-article .fi-country-analysis{display:block!important}
.firp .firp-country-article .fi-intel-section{background:transparent!important;border:0!important;border-bottom:1px solid #e8e5df!important;padding:6px 0 18px!important;margin:0 0 14px!important}
.firp .firp-country-article .fi-intel-section h4{margin:1.2em 0 .65em!important}
.firp .firp-country-article :is(.fi-original-snapshot,.fi-profile-intel,.fi-country-snapshot){margin:26px 0 35px!important}
.firp .firp-country-article :is(table,.fi-leaders-table){display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:13px;line-height:1.55}
.firp .firp-country-article :is(th,td){padding:12px!important;text-align:left!important;vertical-align:top!important}
.firp .firp-country-article th{background:#f4f2ee!important;color:#35322f!important;font-weight:650!important}
.firp .firp-country-article a{text-decoration:underline;text-decoration-color:#c5b2b8;text-underline-offset:3px}
.firp .firp-country-side{background:transparent!important;border:0!important;border-left:1px solid #e2ded7!important;padding:4px 0 4px 20px!important}
.firp .firp-country-head{padding-top:15px!important}
.firp .firp-country-head h3{margin-bottom:20px!important}
.firp .firp-country-operator-card{min-height:0!important;padding:19px 34px 20px 18px!important}
.firp .firp-country-operator-card>span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:920px){.firp .firp-country-layout{grid-template-columns:1fr!important}.firp .firp-country-main{max-width:100%}.firp .firp-country-side{display:none!important}}
@media(max-width:650px){.firp .firp-unified-heading{align-items:start;flex-direction:column;padding:18px 0 16px}.firp .firp-unified-year{align-self:start}.firp .firp-unified-nav-links{flex-wrap:nowrap;overflow-x:auto;gap:20px;width:100%;scrollbar-width:thin}.firp .firp-unified-nav-links>a{white-space:nowrap}.firp .firp-nav-more{position:static}.firp .firp-nav-more-menu{right:0}.firp .firp-unified-nav{position:relative}.firp .firp-country-article p{max-width:100%!important}}

.firp .firp-explore-lead{max-width:730px;margin:12px 0 28px!important;color:#625e58;font-size:15px;line-height:1.7}

/* 2.1 — tighter title scale, consistent theme fonts and long-form editorial rhythm */
.firp .firp-unified-heading{padding:19px 0 17px!important;gap:20px!important}
.firp .firp-publication-title{font-family:inherit!important;font-size:clamp(26px,2.6vw,36px)!important;line-height:1.16!important;font-weight:600!important;letter-spacing:-.025em!important;color:#262626!important;margin:0 0 6px!important}
.firp .firp-unified-identity p{font-family:inherit!important;font-size:clamp(12px,1.05vw,14px)!important;line-height:1.5!important;margin:0!important;max-width:760px!important;color:#65625d!important}
.firp .firp-unified-nav{min-height:43px!important}
.firp .firp-unified-nav a,.firp .firp-unified-nav summary{font-family:inherit!important;font-size:12px!important;font-weight:550!important;padding:12px 0!important}
.firp .firp-unified-year,.firp .firp-unified-year span{font-family:inherit!important;font-size:12px!important}
.firp .firp-unified-year select{font-family:inherit!important;font-size:12px!important;min-height:32px!important}
.firp .firp-country-head{padding-top:12px!important}
.firp .firp-country-head h3{font-size:clamp(29px,3.3vw,43px)!important;line-height:1.16!important;letter-spacing:-.035em!important;margin-bottom:18px!important}
.firp .firp-country-breadcrumb{font-size:12px!important;margin-bottom:12px!important}
.firp .firp-country-contents{gap:20px!important;padding-bottom:13px!important}
.firp .firp-country-contents a{font-size:12px!important}
.firp .firp-country-layout{margin-top:25px!important;align-items:start!important}
.firp .firp-country-main{max-width:780px!important}
.firp .firp-country-article{font-family:inherit!important;font-size:16px!important;line-height:1.8!important;padding-top:0!important}
.firp .firp-country-article .fi-country-intelligence{font-family:inherit!important}
.firp .firp-country-article :is(p,li){font-family:inherit!important;font-size:16px!important;line-height:1.83!important;max-width:69ch!important;hyphens:none!important;word-break:normal!important}
.firp .firp-country-article .fi-intel-section{margin:0 0 13px!important;padding:0 0 14px!important;border-bottom:0!important}
.firp .firp-country-article .fi-intel-section + .fi-intel-section{padding-top:9px!important}
.firp .firp-country-article .fi-intel-section h4{font-family:inherit!important;font-size:clamp(19px,1.85vw,23px)!important;font-weight:600!important;line-height:1.35!important;letter-spacing:-.015em!important;margin:22px 0 11px!important}
.firp .firp-country-article .fi-country-snapshot{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;background:#f7f6f3!important;gap:0!important;margin:0 0 34px!important;border-top:1px solid #e6e2dc!important;border-bottom:1px solid #e6e2dc!important}
.firp .firp-country-article .fi-snapshot-item{background:transparent!important;padding:15px 18px!important;border:0!important;border-bottom:1px solid #e9e5de!important}
.firp .firp-country-article .fi-snapshot-item:nth-child(odd){border-right:1px solid #e9e5de!important}
.firp .firp-country-article .fi-snapshot-item span{font-size:11px!important;letter-spacing:0!important;text-transform:none!important;color:#77736e!important;font-weight:550!important}
.firp .firp-country-article .fi-snapshot-item strong{font-size:14px!important;line-height:1.5!important;font-weight:550!important}
.firp .firp-country-article :is(table,.fi-leaders-table){font-family:inherit!important;font-size:13px!important;margin:25px 0!important}
.firp .firp-country-side{top:28px!important}
.firp .firp-country-side h4{font-size:14px!important;margin:0 0 12px!important}
.firp .firp-article-toc{display:grid;gap:0;max-height:62vh;overflow:auto}
.firp .firp-article-toc a{font-size:12px!important;line-height:1.45!important;display:block!important;padding:10px 0!important;color:#55504b!important}
.firp .firp-article-toc a[aria-current="location"]{color:#8a354b!important;font-weight:650!important}
.firp .firp-country-cover img{max-height:390px!important}
.firp .firp-country-operator-card{background:#fff!important;border:1px solid #e6e3de!important}
.firp .firp-country-operator-card:hover{background:#f8f6f2!important}
@media(max-width:720px){.firp .firp-unified-heading{gap:10px!important}.firp .firp-publication-title{font-size:clamp(25px,6vw,31px)!important}.firp .firp-country-article .fi-country-snapshot{grid-template-columns:1fr!important}.firp .firp-country-article .fi-snapshot-item:nth-child(odd){border-right:0!important}.firp .firp-country-article :is(p,li){font-size:15px!important;line-height:1.8!important}.firp .firp-country-head h3{font-size:34px!important}}

/* v2.2: All typography inherits the active WordPress theme font family. */
.firp,.firp *,.firp *::before,.firp *::after{font-family:inherit!important}
.firp :is(button,input,select,textarea,option,summary){font-family:inherit!important}
.firp .firp-publication-title{font-family:inherit!important;font-size:clamp(25px,2.4vw,34px)!important;font-weight:600!important;line-height:1.16!important;letter-spacing:-.018em!important}
.firp .firp-unified-heading{padding-block:18px 15px!important}
.firp .firp-unified-identity p{font-size:14px!important;line-height:1.55!important}
.firp .firp-unified-nav a,.firp .firp-unified-nav summary{font-size:13px!important;line-height:1.35!important;padding-block:12px!important}
.firp .firp-unified-nav{min-height:43px!important}
.firp .firp-overview-next{margin:26px 0 46px;border-top:1px solid #e8e5df;padding-top:17px;max-width:790px}
.firp .firp-overview-next p{margin:0;color:#66615b;font-size:14px;line-height:1.7}
.firp .firp-overview-next a{font-weight:600;text-underline-offset:3px;text-decoration:underline;text-decoration-color:#cbbec1}
.firp .firp-country-article :is(p,li){font-size:16px!important;line-height:1.82!important}
.firp .firp-country-article :is(h2,h3,h4,h5){font-family:inherit!important}
.firp .firp-country-article :is(blockquote,figure){margin-block:1.5em 2em;max-width:100%}
.firp .firp-country-article img{max-width:100%;height:auto}
@media(max-width:680px){.firp .firp-publication-title{font-size:clamp(24px,6vw,30px)!important}.firp .firp-unified-identity p{font-size:13px!important}.firp .firp-country-article :is(p,li){font-size:15px!important;line-height:1.78!important}}

/* v2.3: ranked dot plots — compact editorial alternative to heavy bar charts */
.firp .firp-ranked-plot{display:grid;gap:0;max-width:100%;border-top:1px solid #e9e6e0}
.firp .firp-ranked-item{display:grid;grid-template-columns:minmax(115px,185px) minmax(80px,1fr) 37px 48px;gap:13px;align-items:center;min-height:38px;padding:7px 0;border-bottom:1px solid #f0ede9;font-family:inherit!important;font-size:12px;color:#363430}
.firp .firp-ranked-label{line-height:1.35;overflow-wrap:anywhere}
.firp .firp-ranked-axis{height:17px;position:relative;display:block;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#efede9 calc(25% - 1px),#efede9 25%);border-bottom:1px solid #dcd8d1}
.firp .firp-ranked-stem{display:block;height:1px;background:#b5aaa6;position:absolute;top:8px;left:0;min-width:0}
.firp .firp-ranked-stem i{position:absolute;right:-5px;top:-4px;width:9px;height:9px;background:#7e394c;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #7e394c}
.firp .firp-ranked-value{text-align:right;font-weight:650;font-variant-numeric:tabular-nums}
.firp .firp-ranked-share{text-align:right;color:#77716b;font-size:11px;font-variant-numeric:tabular-nums}
.firp .firp-ranked-item:not(:has(.firp-ranked-share)){grid-template-columns:minmax(145px,220px) minmax(80px,1fr) 37px}
.firp .firp-ranked-plot:has(.firp-ranked-share)::after{content:'Percentages describe the distribution of research profiles, not market share.';font-size:11px;color:#77716b;padding:11px 0 0}
.firp .firp-dash-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.firp .firp-dash-columns .firp-ranked-item{grid-template-columns:minmax(92px,125px) minmax(65px,1fr) 26px 42px;gap:8px;font-size:11px}
.firp .firp-dash-activities{max-width:900px}
.firp .firp-snapshot-chart{max-width:820px}
.firp .firp-data-chart{max-width:950px}
.firp .firp-editorial-snapshot,.firp .firp-dash-section{border-top:1px solid #e9e6e0!important}
.firp .firp-overview-explore .firp-section-heading p a{color:inherit;text-underline-offset:3px}
@media(max-width:900px){.firp .firp-dash-columns{grid-template-columns:1fr}}
@media(max-width:560px){.firp .firp-ranked-item{grid-template-columns:minmax(92px,120px) minmax(65px,1fr) 25px 36px;gap:7px;font-size:11px}.firp .firp-ranked-item:not(:has(.firp-ranked-share)){grid-template-columns:minmax(125px,145px) minmax(65px,1fr) 25px}.firp .firp-ranked-share{font-size:10px}}
/* Typography always follows the active theme. */
.firp,.firp :is(h1,h2,h3,h4,h5,h6,p,a,span,small,strong,button,input,select,summary,table,th,td){font-family:inherit!important}

/* v2.4 — integrate research data into the article rather than appending a dashboard */
.firp .firp-country-article .firp-editorial-snapshot{max-width:100%;margin:32px 0 38px!important;padding:24px 0 22px!important;border-top:1px solid #dedbd5!important;border-bottom:1px solid #dedbd5!important;background:transparent!important}
.firp .firp-country-article .firp-snapshot-heading{margin-bottom:20px!important}
.firp .firp-country-article .firp-snapshot-heading h3{font-size:clamp(19px,2vw,24px)!important;line-height:1.3!important;margin:0 0 7px!important;font-weight:600!important}
.firp .firp-country-article .firp-snapshot-heading p{font-size:12px!important;line-height:1.65!important;color:#77716b!important;margin:0!important;max-width:62ch!important}
.firp .firp-country-article .firp-ranked-item{grid-template-columns:minmax(140px,205px) minmax(65px,1fr) 34px!important;gap:10px!important}
.firp .firp-country-article .firp-ranked-share{display:none!important}
.firp .firp-country-article .firp-snapshot-actions{margin-top:17px!important;display:flex;flex-wrap:wrap;gap:15px}
.firp .firp-country-article .firp-snapshot-actions a{font-size:12px!important;font-weight:600!important}
.firp .firp-country-article .fi-intel-label{display:none!important}
.firp .firp-country-article .fi-country-analysis{display:block!important}
.firp .firp-country-article .fi-intel-section{max-width:100%;margin-bottom:10px!important;padding-bottom:12px!important;border:0!important}
.firp .firp-country-article .fi-intel-section h4{font-size:clamp(18px,1.7vw,22px)!important;margin:24px 0 10px!important;letter-spacing:-.01em!important}
.firp .firp-country-article .fi-country-snapshot{margin:0 0 30px!important}
.firp .firp-country-article .fi-snapshot-item strong{overflow-wrap:anywhere}
.firp .firp-country-article .fi-country-intelligence{max-width:100%}
.firp .firp-country-side{position:sticky!important;top:25px!important;align-self:start!important}
.firp .firp-country-contents{display:flex;flex-wrap:wrap;gap:20px;padding:12px 0!important;border-top:1px solid #e7e3dc!important;border-bottom:1px solid #e7e3dc!important}
.firp .firp-country-contents a{font-size:12px!important;text-decoration:none!important}
.firp .firp-country-head h3{font-size:clamp(29px,3.1vw,42px)!important;line-height:1.16!important;letter-spacing:-.025em!important}
.firp .firp-country-article,.firp .firp-country-article *{font-family:inherit!important}
@media(max-width:760px){.firp .firp-country-article .firp-ranked-item{grid-template-columns:minmax(100px,155px) minmax(45px,1fr) 28px!important;gap:7px!important}.firp .firp-country-article .firp-editorial-snapshot{padding:19px 0!important}.firp .firp-country-contents{gap:12px}}

/* 2.5 — operator dossiers: source-led, theme-font editorial treatment */
.firp.firp-dossier,.firp.firp-dossier *{font-family:inherit!important}
.firp-dossier-context{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin:0 0 25px;font-size:13px}
.firp-dossier-context a{color:#37332f;text-decoration:underline;text-decoration-color:#b9b0a7;text-underline-offset:4px}
.firp-dossier-region{color:#77716b}
.firp-dossier-hero{margin:0 0 34px;max-width:100%;overflow:hidden}
.firp-dossier-hero img{display:block;width:100%;height:auto;max-height:460px;object-fit:cover}
.firp-dossier-grid{grid-template-columns:minmax(0,1.8fr) minmax(240px,.85fr);gap:clamp(24px,4vw,64px)}
.firp-dossier-main{min-width:0}
.firp-dossier-body{max-width:74ch;line-height:1.83}
.firp-dossier-body p{font-size:clamp(15px,1.25vw,16px);line-height:1.83;margin:0 0 1.35em}
.firp-dossier-body :is(h2,h3,h4){font-size:clamp(19px,2vw,25px)!important;font-weight:600!important;line-height:1.3!important;letter-spacing:-.015em!important;margin:1.65em 0 .7em!important}
.firp-dossier-body :is(ul,ol){padding-left:1.35em}
.firp-dossier-body li{line-height:1.75;margin-bottom:.55em}
.firp-dossier-body img{max-width:100%;height:auto}
.firp-dossier-body table{display:block;max-width:100%;overflow-x:auto}
.firp-dossier-aside{background:#f7f6f3;border:1px solid #e6e2dc;padding:clamp(18px,2.6vw,28px)}
.firp-dossier-aside h2{font-size:19px!important;margin:0 0 12px!important;letter-spacing:-.015em!important}
.firp-dossier-fact{border-top:1px solid #e0dcd5;padding:16px 0}
.firp-dossier-fact span,.firp-dossier-years>span{font-size:12px;color:#6f6a64;line-height:1.5}
.firp-dossier-fact p{font-size:14px;line-height:1.65;overflow-wrap:anywhere}
.firp-dossier-fact .firp-dossier-fleet{font-size:16px;line-height:1.55;font-weight:600}
.firp-dossier-country-link{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:35px;padding:19px 0;border-top:1px solid #e0dcd5;border-bottom:1px solid #e0dcd5}
.firp-dossier-country-link>span{font-size:12px;color:#77716b}
.firp-dossier-country-link>a{font-size:14px;font-weight:600;color:#38342f;text-decoration:none}
.firp-dossier-country-link>a:hover{text-decoration:underline;text-underline-offset:4px}
.firp-dossier-years{margin-top:5px}
.firp-dossier-note{font-size:12px;line-height:1.65;color:#77716b}
.firp-related{margin-top:42px}
.firp-related h2{font-size:clamp(20px,2vw,26px)!important;margin:0 0 12px!important}
@media(max-width:760px){.firp-dossier-grid{grid-template-columns:1fr}.firp-dossier-hero img{max-height:340px}.firp-dossier-country-link{align-items:flex-start;flex-direction:column;gap:7px}}

/* v2.7: preserve accessibility and responsive layouts without blanket border removal */
.firp .firp-skip{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.firp .firp-skip:focus{position:relative;left:auto;width:auto;height:auto;display:inline-block;padding:9px 12px;background:#fff;outline:2px solid #8a354b;z-index:30}
.firp .firp-content-anchor{display:block;height:0;scroll-margin-top:90px}
.firp :is(a,button,input,select,summary):focus-visible{outline:2px solid #8a354b!important;outline-offset:3px!important}
.firp .firp-nav-more-menu{z-index:99!important}
@media(max-width:760px){
 .firp .firp-unified-heading{gap:9px!important}
 .firp .firp-unified-nav-links{gap:17px!important;scrollbar-width:thin;overscroll-behavior-x:contain}
 .firp .firp-nav-more{flex-shrink:0}
 .firp .firp-nav-more-menu{position:absolute!important;right:0!important;left:auto!important;top:100%!important;min-width:185px!important;max-width:min(90vw,300px)!important;max-height:55vh;overflow-y:auto;box-shadow:0 10px 28px rgba(0,0,0,.12)!important}
 .firp .firp-country-contents{gap:12px!important}
 .firp .firp-country-operator-grid{grid-template-columns:1fr!important}
 .firp .firp-data-scroll{scrollbar-width:thin}
 .firp .firp-country-pager{grid-template-columns:1fr!important}
 .firp .firp-dossier-grid{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){.firp *{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}

/* v2.7 editorial rules: intentional separators, no ornamental top stripes. */
.firp .firp-unified-heading{border-bottom:0!important}
.firp .firp-unified-nav{border-top:0!important;border-bottom:1px solid #d9d5ce!important;margin-bottom:22px!important}
.firp .firp-unified-nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 #991f3d}
.firp .firp-country-contents{border-top:1px solid #e4e0d9!important;border-bottom:1px solid #e4e0d9!important;padding:12px 0!important;margin-top:20px!important}
.firp .firp-country-article .fi-intel-section{border:0!important;margin-bottom:20px!important;padding-bottom:12px!important}
.firp .firp-country-article .fi-intel-section + .fi-intel-section{border-top:1px solid #ebe7e1!important;padding-top:15px!important}
.firp .firp-country-article .fi-country-snapshot{border:0!important;background:#f6f5f2!important;gap:8px!important;padding:12px!important}
.firp .firp-country-article .fi-snapshot-item{border:0!important;padding:12px 14px!important}
.firp .firp-country-article .firp-editorial-snapshot{border-top:1px solid #dedbd5!important;border-bottom:1px solid #dedbd5!important;padding:22px 0!important;margin:32px 0 38px!important}
.firp .firp-country-operators,.firp .firp-country-nearby{border-top:1px solid #ddd8d0!important;padding-top:26px!important;margin-top:44px!important}
.firp .firp-country-pager{border-top:1px solid #e5e0d9!important;border-bottom:0!important;padding-top:20px!important;margin-top:28px!important}
.firp .firp-country-pager a{border:0!important;background:#f7f6f3!important;border-radius:2px;padding:17px!important}
.firp .firp-dossier-fact{border-top:0!important;padding:13px 0!important}
.firp .firp-dossier-fact + .firp-dossier-fact{border-top:1px solid #e2ded7!important}
.firp .firp-dossier-country-link{border-top:1px solid #ddd8d0!important;border-bottom:1px solid #ddd8d0!important;background:transparent!important;padding:18px 0!important;margin-top:30px!important}
.firp .firp-related{border-top:1px solid #e3ded7!important;padding-top:27px!important;margin-top:36px!important}
.firp .firp-related-grid a,.firp .firp-country-nearby a{border-bottom:1px solid #ece8e2!important}
.firp .firp-editorial-snapshot,.firp .firp-dash-section{border-top:1px solid #e5e1da!important;padding-top:24px!important}
.firp .firp-reader-layout{border-top:1px solid #e5e1da!important;padding-top:24px!important}
.firp .firp-reader-chapter{border-bottom:1px solid #ebe7e0!important;padding-bottom:24px!important;margin-bottom:26px!important}
.firp .firp-reader-country-list a{border-bottom:1px solid #eeebe5!important}
.firp .firp-ranked-plot{border-top:0!important}
.firp .firp-ranked-item{border-bottom:0!important}
.firp .firp-overview-next{border-top:1px solid #e6e1da!important;padding-top:17px!important}
.firp .firp-data-scroll{border-top:1px solid #e0dcd6!important;border-bottom:1px solid #e0dcd6!important}
.firp .firp-data-table td{border-bottom:1px solid #eeeae4!important}
.firp .firp-country-operator-card{border:1px solid #e7e3dc!important;background:#f7f6f3!important;border-radius:2px}
.firp .firp-nav-more-menu{border:1px solid #dedad4!important;z-index:99!important}
.firp .firp-nav-more-menu a{border-bottom:1px solid #eeeae5!important}
.firp .firp-nav-more-menu a:last-child{border-bottom:0!important}
.firp .firp-country-article :is(p,li),.firp .firp-dossier-body :is(p,li){overflow-wrap:break-word}
.firp .firp-country-article :is(img,video,iframe),.firp .firp-dossier-body :is(img,video,iframe){max-width:100%;height:auto}
.firp .firp-country-article :is(table,.fi-leaders-table),.firp .firp-dossier-body table{max-width:100%;overflow-x:auto}
.firp,.firp *{font-family:inherit!important}
@media(max-width:760px){
 .firp .firp-country-contents{gap:14px!important}
 .firp .firp-country-article .firp-editorial-snapshot{padding:18px 0!important}
 .firp .firp-dossier-grid{grid-template-columns:1fr!important}
 .firp .firp-country-operator-grid{grid-template-columns:1fr!important}
 .firp .firp-country-pager{grid-template-columns:1fr!important}
 .firp .firp-nav-more-menu{position:absolute!important;left:auto!important;right:0!important;top:100%!important;min-width:185px!important;max-width:90vw!important}
}

/* v2.8: editorial qualitative research patterns; existing lines and colored boxes retained unchanged. */
.firp .firp-editorial-pattern{display:grid;gap:19px;max-width:920px}
.firp .firp-pattern-group h4{font-family:inherit!important;font-size:clamp(15px,1.6vw,18px)!important;line-height:1.35!important;font-weight:600!important;margin:0 0 10px!important;letter-spacing:-.01em!important}
.firp .firp-pattern-names{display:flex;flex-wrap:wrap;gap:8px}
.firp .firp-pattern-names span{font-family:inherit!important;display:inline-block;padding:9px 13px;background:#f4f2ee;color:#34312f;font-size:13px;line-height:1.35;border-radius:2px}
.firp .firp-pattern-group:first-child .firp-pattern-names span{background:#f2e9ec;color:#683142}
.firp .firp-pattern-context{font-size:12px!important;line-height:1.65!important;color:#726e69!important;margin:2px 0 0!important;max-width:72ch}
.firp .firp-pattern-evidence{margin-top:3px;max-width:720px}
.firp .firp-pattern-evidence summary{font-family:inherit!important;font-size:13px!important;cursor:pointer;font-weight:600!important;color:#4b4440;padding:9px 0;list-style:revert}
.firp .firp-pattern-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:26px;row-gap:0;padding:9px 0 12px}
.firp .firp-pattern-evidence-grid>div{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid #e8e4dd;font-size:13px}
.firp .firp-pattern-evidence-grid strong{font-variant-numeric:tabular-nums}
.firp .firp-pattern-evidence>p{font-size:12px!important;color:#726e69!important}
.firp .firp-trend-editorial-heading{font-family:inherit!important;font-size:19px!important;margin:16px 0 7px!important}
.firp .firp-trend-editorial-summary{max-width:68ch;line-height:1.75}
@media(max-width:620px){.firp .firp-pattern-evidence-grid{grid-template-columns:1fr}.firp .firp-pattern-names span{font-size:12px;padding:8px 11px}}

/* v2.9 — theme typography is inherited across every edition and all public views.
   Intentionally preserve existing rules, section borders and colored editorial boxes. */
.firp, .firp *, .firp *::before, .firp *::after,
.firp-dossier, .firp-dossier *, .firp-dossier *::before, .firp-dossier *::after {
  font-family: inherit !important;
}
.firp :is(input,button,select,textarea,option,optgroup,summary),
.firp-dossier :is(input,button,select,textarea,option,optgroup,summary) {
  font-family: inherit !important;
}

/* v3.1 — editorial density. Deliberately NO border, rule, color or box-background overrides.
   Every font family remains inherited from the active theme. */
.firp,.firp *, .firp *::before,.firp *::after{font-family:inherit!important}
/* Publication shell and navigation */
.firp .firp-unified-heading{padding-block:12px 10px!important;gap:12px!important}
.firp .firp-unified-identity .firp-publication-title{font-size:clamp(24px,2.2vw,32px)!important;line-height:1.16!important;margin-bottom:5px!important}
.firp .firp-unified-identity p{margin:0!important;line-height:1.45!important}
.firp .firp-unified-nav{margin-bottom:14px!important;min-height:38px!important}
.firp .firp-unified-nav a,.firp .firp-unified-nav summary{padding-block:9px!important}
.firp .firp-intro{padding:8px 0 14px!important}
.firp .firp-intro h3{margin:5px 0 8px!important;font-size:clamp(23px,2.3vw,30px)!important}
.firp .firp-intro p{margin:0 0 10px!important;line-height:1.62!important}
.firp .firp-section-heading{margin:18px 0 11px!important}
.firp .firp-section-heading h3{margin:4px 0 7px!important}
.firp .firp-section-tag{margin:12px 0!important}
.firp .firp-feature-grid{gap:11px!important;margin:10px 0 22px!important}
.firp .firp-feature{min-height:0!important;padding:17px!important}
.firp .firp-feature h3{font-size:20px!important;margin:6px 0!important}
.firp .firp-feature p{margin:0 0 8px!important;line-height:1.55!important}
.firp .firp-metrics{margin:7px 0 20px!important}
.firp .firp-metrics>div{padding:11px 15px!important}
.firp .firp-metrics strong{font-size:clamp(24px,2.6vw,34px)!important}
.firp .firp-metrics span{margin-top:3px!important}
.firp .firp-overview-next{margin:16px 0 23px!important;padding-top:11px!important}
/* Map, countries and directories */
.firp .firp-map-layout{min-height:310px!important;margin:12px 0 21px!important}
.firp .firp-map-aside{padding:clamp(15px,2vw,25px)!important}
.firp .firp-region-controls{margin:16px 0 9px!important;gap:10px!important}
.firp .firp-regions{gap:12px!important;margin:10px 0 25px!important}
.firp .firp-region{padding:12px 0!important}
.firp .firp-region-heading h3{font-size:clamp(20px,2vw,25px)!important;margin-bottom:5px!important}
.firp .firp-region-heading p{margin:0!important;line-height:1.55!important}
.firp .firp-country-links{gap:7px!important;margin-top:10px!important}
.firp .firp-country-links a{padding:10px 12px!important}
.firp .firp-toolbar{padding:13px!important;gap:10px!important;margin-bottom:9px!important}
.firp .firp-toolbar :is(input,select),.firp .firp-compare-form select{min-height:36px!important;margin-top:4px!important}
.firp .firp-list{margin-bottom:25px!important}
.firp .firp-list>a{padding:10px 5px!important}
.firp .firp-list small{margin-top:2px!important}
.firp .firp-compare-form{padding:13px!important;gap:10px!important;margin-bottom:12px!important}
.firp .firp-compare-output{gap:10px!important}
.firp .firp-compare-card{padding:15px!important}
.firp .firp-compare-card dt{margin-top:9px!important}
.firp .firp-notice{padding:16px!important;margin-bottom:18px!important}
/* Country research: reduce vertical whitespace, preserve chapter rules and colored snapshots */
.firp .firp-country-head{padding-top:10px!important;margin-bottom:12px!important}
.firp .firp-country-head h3{margin:3px 0 8px!important}
.firp .firp-country-breadcrumb{margin-bottom:6px!important}
.firp .firp-country-contents{margin-top:12px!important;padding:9px 0!important;gap:12px!important}
.firp .firp-country-layout{gap:clamp(18px,2.8vw,36px)!important}
.firp .firp-country-article{padding:0 0 10px!important}
.firp .firp-country-article .fi-country-snapshot{margin:0 0 16px!important;padding:9px!important;gap:7px!important}
.firp .firp-country-article .fi-snapshot-item{padding:10px 12px!important}
.firp .firp-country-article .fi-snapshot-item span{margin-bottom:3px!important}
.firp .firp-country-article .fi-intel-section{margin:0 0 10px!important;padding:4px 0 12px!important}
.firp .firp-country-article .fi-intel-section + .fi-intel-section{padding-top:12px!important}
.firp .firp-country-article .fi-intel-section h4{margin:0 0 8px!important;font-size:clamp(18px,1.9vw,23px)!important}
.firp .firp-country-article :is(p,li),.firp .firp-country-article .fi-intel-section p{line-height:1.66!important;margin-bottom:.82em!important}
.firp .firp-country-article :is(ul,ol){margin:7px 0 12px!important}
.firp .firp-country-article :is(table,.fi-leaders-table){margin:10px 0 15px!important}
.firp .firp-country-article :is(th,td){padding:7px 9px!important}
.firp .firp-country-article .firp-editorial-snapshot{padding:15px 0!important;margin:18px 0 23px!important}
.firp .firp-country-operators,.firp .firp-country-nearby{padding-top:17px!important;margin-top:25px!important}
.firp .firp-country-section-title{margin-bottom:13px!important}
.firp .firp-country-operator-grid{gap:9px!important}
.firp .firp-country-operator-card{min-height:0!important;padding:13px 29px 13px 14px!important;gap:5px!important}
.firp .firp-country-nearby{margin-bottom:25px!important}
.firp .firp-country-nearby>div{gap:8px!important}
.firp .firp-country-nearby a{padding:9px 0!important}
.firp .firp-country-pager{gap:12px!important;margin:20px 0!important;padding:14px 0!important}
.firp .firp-country-pager a{padding:12px!important}
/* Publication reader and chapter navigation */
.firp .firp-reader-opening{padding:18px 0 23px!important}
.firp .firp-reader-opening h3{font-size:clamp(28px,3.5vw,46px)!important;margin:0 0 11px!important}
.firp .firp-reader-edition,.firp .firp-reader-chapter-num{margin-bottom:8px!important}
.firp .firp-reader-quick{margin-top:13px!important;gap:12px!important}
.firp .firp-reader-layout{gap:clamp(16px,2.8vw,36px)!important;padding-top:15px!important}
.firp .firp-reader-sidebar a{padding:6px 9px!important}
.firp .firp-reader-chapter{padding:13px 0 21px!important;margin-bottom:14px!important}
.firp .firp-reader-chapter h3{font-size:clamp(24px,2.8vw,34px)!important;margin-bottom:11px!important}
.firp .firp-reader-country-list{margin-top:12px!important;column-gap:16px!important}
.firp .firp-reader-country-list a{padding:10px 3px!important}
/* Operator dossier, source panels and related reading */
.firp.firp-dossier{margin-bottom:25px!important}
.firp .firp-dossier-top{margin:4px 0 14px!important;padding-bottom:9px!important}
.firp .firp-dossier-context{margin-bottom:13px!important}
.firp .firp-dossier-hero{margin-bottom:19px!important}
.firp .firp-dossier-grid{gap:clamp(18px,2.8vw,38px)!important}
.firp .firp-dossier-body{line-height:1.68!important}
.firp .firp-dossier-body p{line-height:1.68!important;margin-bottom:.9em!important}
.firp .firp-dossier-body :is(h2,h3,h4){margin:1.2em 0 .48em!important}
.firp .firp-dossier-body li{line-height:1.65!important;margin-bottom:.3em!important}
.firp .firp-dossier-aside{padding:17px!important}
.firp .firp-dossier-aside h2{margin-bottom:7px!important}
.firp .firp-dossier-fact{padding:9px 0!important}
.firp .firp-dossier-fact p{line-height:1.5!important;margin:3px 0!important}
.firp .firp-dossier-country-link{margin-top:18px!important;padding:12px 0!important}
.firp .firp-related{margin-top:23px!important;padding-top:16px!important}
/* Dashboard, record tables and data presentation */
.firp .firp-data-section{margin:24px 0 28px!important}
.firp .firp-data-head h3{margin-bottom:6px!important}
.firp .firp-data-controls{gap:10px!important;margin-bottom:10px!important}
.firp .firp-data-table :is(th,td){padding:9px 10px!important}
.firp .firp-dash-section{margin:20px 0 29px!important;padding-top:16px!important}
.firp .firp-dash-heading h3{margin-bottom:6px!important}
.firp .firp-dash-columns{gap:clamp(15px,2.5vw,35px)!important}
.firp .firp-dash-columns h4{margin-bottom:10px!important}
.firp .firp-dash-empty{padding:17px 20px!important}
.firp .firp-dash-trend{padding:14px 0!important}
.firp .firp-trend-bars{margin:13px 0!important;gap:10px!important}
.firp .firp-editorial-snapshot{margin:22px 0 27px!important;padding-top:15px!important}
.firp .firp-snapshot-heading h3{margin-bottom:6px!important}
.firp .firp-snapshot-chart{gap:9px!important}
/* Responsive: dense but not cramped; no changes to existing colored boxes or rules. */
@media(max-width:760px){
 .firp .firp-unified-heading{padding-block:10px 9px!important}
 .firp .firp-unified-nav{margin-bottom:12px!important}
 .firp .firp-map-layout{min-height:0!important}
 .firp .firp-country-layout{gap:14px!important}
 .firp .firp-country-contents{gap:10px!important}
 .firp .firp-country-article .fi-country-snapshot{margin-bottom:12px!important}
 .firp .firp-reader-opening{padding:13px 0 18px!important}
 .firp .firp-reader-layout{gap:12px!important}
 .firp .firp-dossier-grid{gap:15px!important}
 .firp .firp-dossier-aside{padding:15px!important}
}

/* v3.2: optional operator enhanced profiles and contextual editorial news.
   Preserve all existing horizontal rules and colored information boxes. */
.firp .firp-enhanced-profile{margin:0 0 23px;padding:19px 22px;background:#f5f3ef;border:1px solid #e5e0d8}
.firp .firp-enhanced-heading{display:flex;align-items:center;gap:18px;margin-bottom:10px}
.firp .firp-enhanced-logo{width:100px;min-width:100px;min-height:64px;background:#fff;padding:8px;display:flex;align-items:center;justify-content:center}
.firp .firp-enhanced-logo img{width:auto;max-width:100%;height:auto;max-height:75px;object-fit:contain}
.firp .firp-enhanced-heading h2{font-size:20px!important;line-height:1.2!important;margin:0 0 7px!important;font-weight:600!important}
.firp .firp-company-website{font-size:13px;color:#991f3d;text-decoration:underline;text-underline-offset:3px}
.firp .firp-enhanced-description p{font-size:15px;line-height:1.72;margin:0 0 .8em}
.firp .firp-commercial-disclosure{font-size:11px;line-height:1.5;color:#66615b;margin:12px 0 0}
.firp .firp-news-section{margin:24px 0}
.firp .firp-news-section h2{font-size:21px!important;font-weight:600!important;line-height:1.3!important;margin:0 0 9px!important}
.firp .firp-news-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
.firp .firp-news-list a{display:grid;grid-template-columns:1fr auto;gap:4px 9px;padding:11px 0;border-bottom:1px solid #e7e2da;text-decoration:none!important;color:inherit}
.firp .firp-news-list a>span:first-child{grid-column:1 / -1;font-size:11px;color:#77716b}
.firp .firp-news-list a strong{font-size:14px;font-weight:600;line-height:1.5}
.firp .firp-news-list a>span:last-child{color:#991f3d}
.firp .firp-news-list a:hover strong{text-decoration:underline;text-underline-offset:3px}
@media(max-width:640px){.firp .firp-enhanced-profile{padding:15px}.firp .firp-enhanced-logo{width:76px;min-width:76px}.firp .firp-news-list{grid-template-columns:1fr}}

/* v3.2.3 — horizontal operator research summary; retain existing rules and colored boxes. */
.firp.firp-dossier .firp-operator-summary{margin:0 0 21px!important;padding:0!important;background:#f7f6f3!important;border:1px solid #e6e2dc!important;border-radius:2px}
.firp.firp-dossier .firp-operator-summary-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px 9px}
.firp.firp-dossier .firp-operator-summary-head h2{font-family:inherit!important;font-size:17px!important;line-height:1.3!important;font-weight:600!important;margin:0!important}
.firp.firp-dossier .firp-operator-summary-head>span{font-size:12px;color:#77716b}
.firp.firp-dossier .firp-operator-summary-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,175px),1fr));align-items:stretch;padding:0 7px 11px}
.firp.firp-dossier .firp-operator-stat{min-width:0;padding:13px 12px 11px;border-left:1px solid #e5e0d9}
.firp.firp-dossier .firp-operator-stat:first-child{border-left:0}
.firp.firp-dossier .firp-operator-stat>span{display:block;font-size:11px!important;line-height:1.35!important;color:#6c6761!important;margin:0 0 6px!important}
.firp.firp-dossier .firp-operator-stat>strong{display:block;font-size:clamp(14px,1.3vw,16px)!important;line-height:1.45!important;font-weight:600!important;letter-spacing:0!important;color:#292723!important;overflow-wrap:anywhere}
.firp.firp-dossier .firp-operator-stat-lead>strong{font-size:clamp(17px,1.8vw,23px)!important;letter-spacing:-.025em!important}
.firp.firp-dossier .firp-operator-stat>small{display:block;margin-top:5px;font-size:11px;color:#716c65}
.firp.firp-dossier .firp-operator-editions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:9px 18px;border-top:1px solid #e6e2dc}
.firp.firp-dossier .firp-operator-editions span{font-size:12px;color:#6c6761}
.firp.firp-dossier .firp-operator-editions a{font-size:12px;text-decoration:underline;text-underline-offset:3px}
.firp.firp-dossier .firp-operator-article{max-width:920px;margin:0 0 20px}
.firp.firp-dossier .firp-operator-article .firp-dossier-body{max-width:78ch}
.firp.firp-dossier .firp-operator-article .firp-dossier-body p{font-size:15px!important;line-height:1.72!important;margin:0 0 1em!important}
.firp.firp-dossier .firp-dossier-context{margin-bottom:13px!important}
.firp.firp-dossier .firp-dossier-hero{margin-bottom:19px!important}
.firp.firp-dossier .firp-enhanced-profile{margin-bottom:17px!important}
@media(max-width:760px){
 .firp.firp-dossier .firp-operator-summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .firp.firp-dossier .firp-operator-stat{border-left:0;border-top:1px solid #e5e0d9;padding:11px}
 .firp.firp-dossier .firp-operator-stat:nth-child(even){border-left:1px solid #e5e0d9}
}
@media(max-width:430px){
 .firp.firp-dossier .firp-operator-summary-row{grid-template-columns:1fr}
 .firp.firp-dossier .firp-operator-stat:nth-child(even){border-left:0}
 .firp.firp-dossier .firp-operator-stat{padding:9px 12px}
}

/* v3.2.6: integrated split operator header; theme typography and existing publication rules retained. */
.single-firp_operator .entry-header:has(.entry-title),
.single-firp_operator .post-header:has(.entry-title){display:none!important}
.single-firp_operator .entry-title:not(.firp-operator-name){display:none!important}
.firp.firp-dossier .firp-operator-split{display:grid;grid-template-columns:minmax(0,44%) minmax(0,56%);margin:0 0 15px!important;border:1px solid #e4e2de;border-radius:2px;overflow:hidden;align-items:stretch}
.firp.firp-dossier .firp-operator-identity{display:flex;align-items:center;gap:15px;background:#fff;padding:23px 22px;min-width:0}
.firp.firp-dossier .firp-operator-identity-logo{width:88px;min-width:88px;min-height:70px;display:flex;align-items:center;justify-content:center}
.firp.firp-dossier .firp-operator-identity-logo img{display:block;max-width:100%;max-height:78px;width:auto;height:auto;object-fit:contain}
.firp.firp-dossier .firp-operator-identity-copy{min-width:0}
.firp.firp-dossier .firp-operator-name{font-family:inherit!important;font-size:clamp(20px,2vw,27px)!important;font-weight:600!important;line-height:1.2!important;letter-spacing:-.025em!important;margin:0 0 8px!important;overflow-wrap:anywhere;color:inherit!important}
.firp.firp-dossier .firp-operator-market{display:block;font-size:12px;color:#6d6862;margin:0 0 8px}
.firp.firp-dossier .firp-operator-fleet-panel{background:#f1f1ef;padding:15px 22px 14px;min-width:0}
.firp.firp-dossier .firp-operator-fleet-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:0 0 8px;border-bottom:1px solid #d8d8d4;margin-bottom:9px}
.firp.firp-dossier .firp-operator-fleet-heading h2{font-family:inherit!important;font-size:14px!important;line-height:1.3!important;font-weight:600!important;margin:0!important}
.firp.firp-dossier .firp-operator-fleet-heading>span{font-size:11px;color:#6e6b66;white-space:nowrap}
.firp.firp-dossier .firp-operator-fleet-field{display:grid;grid-template-columns:minmax(100px,30%) minmax(0,1fr);align-items:start;gap:10px;padding:7px 0;border-bottom:1px solid #deded9}
.firp.firp-dossier .firp-operator-fleet-field:last-child{border-bottom:0}
.firp.firp-dossier .firp-operator-fleet-field>span{font-size:11px!important;line-height:1.5!important;color:#6c6761!important}
.firp.firp-dossier .firp-operator-fleet-field>strong{font-family:inherit!important;font-size:13px!important;line-height:1.5!important;font-weight:600!important;letter-spacing:0!important;color:#302f2d!important;overflow-wrap:anywhere}
.firp.firp-dossier .firp-operator-fleet-field>small{grid-column:2;font-size:11px;color:#777;margin-top:-7px}
.firp.firp-dossier .firp-operator-empty{font-size:13px;line-height:1.5;margin:0}
.firp.firp-dossier>.firp-operator-editions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 16px;padding:0 0 10px;border-bottom:1px solid #e6e2dc}
.firp.firp-dossier>.firp-operator-editions span,.firp.firp-dossier>.firp-operator-editions a{font-size:12px}
.firp.firp-dossier .firp-enhanced-profile-copy{background:#fff!important;padding:0 0 12px!important;border:0!important;border-bottom:1px solid #e6e2dc!important}
.firp.firp-dossier .firp-enhanced-profile-copy h2{font-size:18px!important;line-height:1.3!important;margin:0 0 9px!important}
@media(max-width:760px){.firp.firp-dossier .firp-operator-split{grid-template-columns:1fr}.firp.firp-dossier .firp-operator-identity{padding:17px}.firp.firp-dossier .firp-operator-fleet-panel{padding:14px 17px}.firp.firp-dossier .firp-operator-name{font-size:23px!important}}
@media(max-width:420px){.firp.firp-dossier .firp-operator-identity-logo{width:65px;min-width:65px}.firp.firp-dossier .firp-operator-name{font-size:21px!important}.firp.firp-dossier .firp-operator-fleet-field{grid-template-columns:minmax(95px,35%) minmax(0,1fr);gap:8px}}

/* v3.2.7: hide the redundant Sakala title only on single operator pages.
   Keep the actual h1 in the integrated split header, the site header and other post types. */
body.single-firp_operator :is(.site-content,#content,main) :is(.entry-header,.post-header,.page-header):has(> :is(h1,h2).entry-title),
body.single-firp_operator :is(.site-content,#content,main) :is(.entry-header,.post-header,.page-header):has(> h1.post-title),
body.single-firp_operator :is(.site-content,#content,main) :is(h1.entry-title,h1.post-title,h1.page-title,.post-title):not(.firp-operator-name){display:none!important}
body.single-firp_operator .firp .firp-operator-name{display:block!important}

/* v3.2.8: remove the *whole* theme-generated page-title/banner area on operator singles.
   Do not affect the main site masthead, navigation or plugin split header. */
body.single-firp_operator :is(.page-title-wrap,.page-title-wrapper,.page-title-area,.page-title-bar,.page-title-section,.page-title-container,.page-banner,.page-banner-wrapper,.inner-banner,.inner-banner-wrapper,.inner-page-banner,.breadcrumb-section,.breadcrumb-wrapper,.breadcrumbs-wrap,.titlebar,.title-bar,.titlebar-wrap,.header-banner,.post-title-wrapper,.entry-header:not(.firp-operator-identity)) {display:none!important;min-height:0!important;height:0!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
body.single-firp_operator .firp .firp-operator-identity .firp-operator-name{display:block!important}
body.single-firp_operator .firp-dossier{margin-top:0!important}

/* v3.2.9: remove theme-reserved vertical whitespace on single operator pages.
   Scoped to this custom post type; never modify the global site masthead/menu. */
body.single-firp_operator #content,
body.single-firp_operator .site-content,
body.single-firp_operator #primary,
body.single-firp_operator .content-area,
body.single-firp_operator .site-main,
body.single-firp_operator .content-wrapper,
body.single-firp_operator .main-content {padding-top:0!important;margin-top:0!important;}
body.single-firp_operator .site-content > .container,
body.single-firp_operator #content > .container,
body.single-firp_operator .content-area > .container {padding-top:0!important;margin-top:0!important;}
body.single-firp_operator .firp-dossier,
body.single-firp_operator .firp-dossier-top,
body.single-firp_operator .firp-operator-split {margin-top:0!important;}
/* Theme-specific wrappers should collapse without leaving an empty band. */
body.single-firp_operator :is(.page-header,.page-header-area,.page-header-wrapper,.page-title-bg,.page-title-holder,.page-heading,.page-heading-wrapper,.breadcrumb-area,.breadcrumbs-area,.inner-page-header,.banner-area,.title-area):not(:has(.firp-dossier)) {display:none!important;margin:0!important;padding:0!important;min-height:0!important;}
@media(max-width:767px){body.single-firp_operator #content,body.single-firp_operator .site-content,body.single-firp_operator #primary{padding-top:0!important;margin-top:0!important}}

/* v3.3.0: Theme typography and text-color inheritance; preserve accent surfaces. */
.firp,.firp.firp-dossier{font-family:inherit!important;color:inherit!important}
.firp :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,blockquote,figcaption,caption,strong,em,b,i,small,label,th,td,summary,input,select,textarea,button){font-family:inherit!important}
.firp :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,blockquote,figcaption,caption,strong,em,b,i,small,th,td,summary),
.firp .firp-operator-name,
.firp .firp-operator-fleet-field :is(span,strong),
.firp .firp-dossier-fact :is(span,p,strong),
.firp .firp-enhanced-profile :is(h2,p),
.firp .firp-news-section :is(h2,strong),
.firp .firp-country-article :is(h2,h3,h4,p,li,td),
.firp .firp-section-heading :is(h2,h3,p),
.firp .firp-masthead :is(h2,p),
.firp .firp-map-aside :is(h4,p),
.firp .firp-region-heading :is(h3,p),
.firp .firp-feature :is(h3,p),
.firp .firp-compare-card :is(h3,dd),
.firp .firp-profile-meta :is(span,strong){color:inherit!important}
.firp :is(.firp-dossier-body,.firp-enhanced-description,.firp-country-article,.firp-news-list,.firp-related,.firp-region-heading) a:not(.button):not(.btn){color:inherit!important}
/* Keep high contrast on dark toolbars and solid buttons. */
.firp .firp-toolbar,.firp .firp-toolbar :is(label,span,p){color:#fff!important}
.firp .firp-reader-actions a,.firp a:is(.button,.btn){color:#fff!important}

/* v3.3.1: Enforce theme font inheritance on ALL /research/ shortcode views.
   Scope to the publication root so global Sakala typography is not altered.
   Exclude icon fonts and icon glyphs to preserve controls. */
.firp,
.firp :where(
  div,section,article,aside,header,footer,nav,main,figure,figcaption,
  h1,h2,h3,h4,h5,h6,p,span,strong,em,b,i,small,mark,blockquote,
  ul,ol,li,dl,dt,dd,table,thead,tbody,tfoot,tr,th,td,caption,
  label,input,select,option,textarea,button,a,time,summary,details
):not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad):not(.dashicons):not(.material-icons):not([class*="fa-"]):not([class*="dashicons-"]){
  font-family:inherit!important;
}
/* Research page widgets inherit fonts as well, including interactive tables,
   filters, charts, magazine chapters, navigation and mobile controls. */
.firp :where(input,select,textarea,button,option)::placeholder{
  font-family:inherit!important;
}

/* v3.3.2: a distinctive cover header, exclusively for the annual edition landing.
   Other /research/ pages keep their restrained mastheads and all fonts inherit Sakala. */
.firp.firp-edition-landing>.firp-masthead.firp-unified-header{
  background:linear-gradient(115deg,#751d32 0%,#93243c 64%,#642035 100%)!important;
  color:#fff!important; border:0!important; position:relative;
  padding:clamp(23px,3vw,39px) clamp(22px,3.5vw,46px) 0!important;
  overflow:visible;
}
.firp.firp-edition-landing>.firp-masthead:before{
  content:"";position:absolute;top:0;right:0;width:28%;height:100%;
  pointer-events:none;opacity:.11;
  background:repeating-linear-gradient(135deg,transparent 0 22px,#fff 22px 23px);
}
.firp.firp-edition-landing .firp-unified-heading{position:relative;z-index:1;align-items:center;gap:18px;}
.firp.firp-edition-landing .firp-publication-title{color:#fff!important;font-weight:600!important;letter-spacing:-.025em;}
.firp.firp-edition-landing .firp-unified-identity>p{color:#f4e6e9!important;opacity:1!important;max-width:650px;}
.firp.firp-edition-landing .firp-unified-year,
.firp.firp-edition-landing .firp-unified-year>span{color:#fff!important;}
.firp.firp-edition-landing .firp-year{background:#fff!important;color:#242424!important;border:1px solid rgba(255,255,255,.7)!important;}
.firp.firp-edition-landing .firp-nav.firp-unified-nav{
  position:relative;z-index:2;border-top:1px solid rgba(255,255,255,.25)!important;
  border-bottom:0!important;margin:clamp(18px,2vw,26px) 0 0!important;
  padding:6px 0!important;background:transparent!important;
}
.firp.firp-edition-landing .firp-unified-nav-links>a,
.firp.firp-edition-landing .firp-nav-more>summary{
  color:#fff!important;opacity:.9;
}
.firp.firp-edition-landing .firp-unified-nav-links>a:hover,
.firp.firp-edition-landing .firp-unified-nav-links>a[aria-current="page"],
.firp.firp-edition-landing .firp-nav-more>summary:hover{color:#fff!important;opacity:1;}
.firp.firp-edition-landing .firp-unified-nav-links>a[aria-current="page"]{box-shadow:inset 0 -2px #fff;}
.firp.firp-edition-landing .firp-nav-more-menu{background:#fff!important;color:inherit!important;}
.firp.firp-edition-landing .firp-nav-more-menu a{color:inherit!important;}
.firp.firp-edition-landing .firp-overview-explore{margin-top:15px;}
@media(max-width:640px){
 .firp.firp-edition-landing>.firp-masthead.firp-unified-header{padding:22px 18px 0!important;}
 .firp.firp-edition-landing .firp-unified-heading{align-items:flex-start;}
 .firp.firp-edition-landing .firp-nav.firp-unified-nav{margin-top:16px!important;}
}

/* v3.3.3: Only the annual edition cover/header bleeds edge-to-edge.
   All publication content below stays in the original Sakala content column. */
.firp.firp-edition-landing > .firp-masthead.firp-unified-header {
  width:100vw!important;max-width:none!important;
  position:relative!important;left:50%!important;
  margin-left:0!important;margin-right:0!important;
  transform:translateX(-50%)!important;
  padding-left:max(20px,calc((100vw - 1180px)/2))!important;
  padding-right:max(20px,calc((100vw - 1180px)/2))!important;
}
.firp.firp-edition-landing > :not(.firp-masthead) {
  max-width:100%;
}
@media(max-width:640px){
  .firp.firp-edition-landing > .firp-masthead.firp-unified-header {
    padding-left:18px!important;padding-right:18px!important;
  }
}

/* v3.3.4: Accessible contrast for dropdowns against the crimson cover.
   Only top-level navigation is white; opened menus have dark ink on white. */
.firp.firp-edition-landing .firp-unified-header .firp-nav-more-menu{
 background:#fff!important;color:#292724!important;
 border:1px solid #ddd7d2!important;
 box-shadow:0 12px 28px rgba(22,16,20,.18)!important;
}
.firp.firp-edition-landing .firp-unified-header .firp-nav-more-menu a,
.firp.firp-edition-landing .firp-unified-header .firp-nav-more-menu a:visited{
 color:#292724!important;opacity:1!important;
 background:#fff!important;
}
.firp.firp-edition-landing .firp-unified-header .firp-nav-more-menu a:hover,
.firp.firp-edition-landing .firp-unified-header .firp-nav-more-menu a:focus-visible,
.firp.firp-edition-landing .firp-unified-header .firp-nav-more-menu a[aria-current="page"]{
 color:#751d32!important;background:#f5f0f1!important;
 box-shadow:none!important;
}
.firp.firp-edition-landing .firp-unified-header .firp-year,
.firp.firp-edition-landing .firp-unified-header .firp-year option{
 color:#252525!important;background:#fff!important;opacity:1!important;
}

/* v3.4.0: Annual overview is an editorial landing page, distinct from Countries. */
.firp.firp-edition-landing .firp-overview-editorial{padding:0 0 26px}
.firp .firp-overview-lead{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(220px,.7fr);gap:32px;padding:31px 0 26px;border-bottom:1px solid #dedbd6}
.firp .firp-overview-kicker{font-size:11px!important;font-weight:700!important;letter-spacing:.11em;text-transform:uppercase;margin:0 0 9px!important;opacity:.7}
.firp .firp-overview-lead-copy h2{font-size:clamp(25px,3vw,37px)!important;line-height:1.13!important;letter-spacing:-.025em;margin:0 0 12px!important;font-weight:650!important}
.firp .firp-overview-deck{font-size:17px!important;line-height:1.55!important;margin:0 0 11px!important;font-weight:500!important}
.firp .firp-overview-lead-copy>p:not(.firp-overview-kicker):not(.firp-overview-deck){font-size:14px;line-height:1.75;margin:0 0 15px}
.firp .firp-overview-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}
.firp .firp-overview-action{display:inline-flex;align-items:center;gap:14px;padding:10px 15px;background:#8c1c36;color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:600}
.firp .firp-overview-action-secondary{background:#f3f1ee;color:inherit!important;border:1px solid #dedbd6}
.firp .firp-overview-index{background:#f1efeb;padding:18px 20px;align-self:start}
.firp .firp-overview-index-title{font-size:12px;font-weight:700;padding-bottom:10px;border-bottom:1px solid #d7d2cb}
.firp .firp-overview-index-stat{display:flex;align-items:baseline;justify-content:space-between;gap:10px;border-bottom:1px solid #d7d2cb;padding:10px 0}
.firp .firp-overview-index-stat strong{font-size:24px;font-weight:600;line-height:1.2}
.firp .firp-overview-index-stat span{font-size:12px}
.firp .firp-overview-index p{font-size:11px;line-height:1.5;margin:12px 0 0;opacity:.75}
.firp .firp-overview-section{padding:24px 0 26px;border-bottom:1px solid #dedbd6}
.firp .firp-overview-section-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:10px}
.firp .firp-overview-section-heading h2{font-size:24px!important;line-height:1.2!important;font-weight:650!important;margin:0!important}
.firp .firp-overview-section-heading>a,.firp .firp-overview-endnote>a{font-size:12px;text-decoration:none!important;border-bottom:1px solid currentColor;padding-bottom:3px;white-space:nowrap}
.firp .firp-overview-section-intro{font-size:13px;line-height:1.7;margin:0 0 15px!important;max-width:780px}
.firp .firp-overview-country-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#dcd9d3;border:1px solid #dcd9d3}
.firp .firp-overview-country-grid a{display:flex;flex-direction:column;gap:7px;min-height:100px;padding:15px;background:#fff;text-decoration:none!important;color:inherit!important}
.firp .firp-overview-country-grid a>span,.firp .firp-overview-operator-grid a>span{font-size:11px;opacity:.7}
.firp .firp-overview-country-grid a strong{font-size:17px;font-weight:600}
.firp .firp-overview-country-grid a small{font-size:11px;margin-top:auto}
.firp .firp-overview-operator-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.firp .firp-overview-operator-grid a{display:flex;flex-direction:column;gap:6px;border-top:2px solid #b9b2aa;padding:12px 4px;text-decoration:none!important;color:inherit!important}
.firp .firp-overview-operator-grid a strong{font-size:15px;font-weight:650}
.firp .firp-overview-operator-grid a small{font-size:12px;line-height:1.5}
.firp .firp-overview-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.firp .firp-overview-paths a{display:flex;flex-direction:column;gap:9px;padding:17px;background:#f4f2ef;text-decoration:none!important;color:inherit!important}
.firp .firp-overview-paths strong{font-size:16px;font-weight:650}
.firp .firp-overview-paths span{font-size:12px;line-height:1.6}
.firp .firp-overview-paths em{font-size:12px;font-style:normal;font-weight:600;margin-top:auto}
.firp .firp-overview-endnote{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:23px 0 0}
.firp .firp-overview-endnote h2{font-size:20px!important;margin:0 0 6px!important}
.firp .firp-overview-endnote p{font-size:12px;line-height:1.7;margin:0;max-width:700px}
.firp .firp-overview-country-grid a:hover,.firp .firp-overview-paths a:hover{background:#eae6e1}
@media(max-width:760px){.firp .firp-overview-lead{grid-template-columns:1fr;gap:15px;padding-top:20px}.firp .firp-overview-country-grid,.firp .firp-overview-operator-grid,.firp .firp-overview-paths{grid-template-columns:repeat(2,minmax(0,1fr))}.firp .firp-overview-endnote{align-items:start;flex-direction:column;gap:10px}}
@media(max-width:480px){.firp .firp-overview-country-grid,.firp .firp-overview-operator-grid,.firp .firp-overview-paths{grid-template-columns:1fr}.firp .firp-overview-section-heading{align-items:start}.firp .firp-overview-section-heading h2{font-size:21px!important}}

/* v3.4.1: Overview editorial lead occupies the full content width after removal of statistics panel. */
.firp .firp-overview-lead{grid-template-columns:minmax(0,1fr)}
.firp .firp-overview-lead-copy{max-width:960px}

/* v3.4.2 — Premium annual-edition editorial treatment; scoped to Overview only. */
.firp.firp-edition-landing .firp-overview-editorial{padding:0 0 44px!important}
.firp.firp-edition-landing .firp-overview-lead{
 position:relative;isolation:isolate;overflow:hidden;
 display:block!important;margin:0!important;
 padding:clamp(34px,5.4vw,76px) clamp(24px,5.5vw,76px) clamp(35px,4.4vw,64px)!important;
 background:linear-gradient(117deg,#f3f0e9 0%,#faf8f3 61%,#f0e9e5 100%);
 border:0!important;border-bottom:4px solid #84233c!important;
}
.firp.firp-edition-landing .firp-overview-lead:after{
 content:"AFRICA";position:absolute;right:-.08em;bottom:-.19em;z-index:-1;
 font-family:inherit!important;font-weight:800;font-size:clamp(115px,22vw,330px);
 letter-spacing:-.085em;line-height:1;color:rgba(116,42,61,.048);pointer-events:none;
}
.firp.firp-edition-landing .firp-overview-lead:before{
 content:"";position:absolute;top:0;right:0;width:32%;height:5px;
 background:#a92347;
}
.firp.firp-edition-landing .firp-overview-lead-copy{max-width:850px!important;position:relative;z-index:1}
.firp.firp-edition-landing .firp-overview-edition-label{
 display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;
 padding:0 0 16px;margin-bottom:clamp(28px,4vw,53px);
 border-bottom:1px solid #cfc6be;font-size:10px!important;letter-spacing:.15em;
 font-weight:700!important;color:#733347!important;
}
.firp.firp-edition-landing .firp-overview-lead .firp-overview-kicker{
 color:#87314b!important;opacity:1!important;letter-spacing:.19em!important;
 font-size:11px!important;margin-bottom:14px!important;
}
.firp.firp-edition-landing .firp-overview-lead h2{
 font-family:inherit!important;font-size:clamp(37px,5.1vw,70px)!important;
 line-height:1.04!important;letter-spacing:-.047em!important;
 font-weight:650!important;max-width:780px;margin:0 0 25px!important;
 color:#262021!important;
}
.firp.firp-edition-landing .firp-overview-deck{
 font-size:clamp(18px,2vw,24px)!important;line-height:1.4!important;
 font-weight:500!important;max-width:690px;color:#603b45!important;
 margin:0 0 22px!important;
}
.firp.firp-edition-landing .firp-overview-lead-copy>p:not(.firp-overview-kicker):not(.firp-overview-deck){
 font-size:15px!important;line-height:1.85!important;max-width:735px;
 color:#514b49!important;margin-bottom:25px!important;
}
.firp.firp-edition-landing .firp-overview-actions{gap:12px!important;margin-top:30px!important}
.firp.firp-edition-landing .firp-overview-action{
 min-height:46px;padding:12px 19px!important;background:#82243e!important;
 color:#fff!important;border:1px solid #82243e!important;
 font-size:12px!important;letter-spacing:.015em;text-decoration:none!important;
 transition:background .18s ease,transform .18s ease;
}
.firp.firp-edition-landing .firp-overview-action:hover{background:#60152c!important;transform:translateY(-2px)}
.firp.firp-edition-landing .firp-overview-action-secondary{
 background:transparent!important;color:#6d2439!important;border-color:#b7a6a8!important;
}
.firp.firp-edition-landing .firp-overview-action-secondary:hover{background:#eadfdd!important}
.firp.firp-edition-landing .firp-overview-chapterline{
 display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
 padding:17px 2px;border-bottom:1px solid #cfc9c3;
 font-size:10px;letter-spacing:.13em;font-weight:700;color:#736866;
}
.firp.firp-edition-landing .firp-overview-section{padding:clamp(30px,4vw,52px) 0!important}
.firp.firp-edition-landing .firp-overview-section-heading{margin-bottom:14px!important}
.firp.firp-edition-landing .firp-overview-section-heading h2{
 font-size:clamp(27px,3.1vw,38px)!important;letter-spacing:-.035em!important;
}
.firp.firp-edition-landing .firp-overview-section-heading .firp-overview-kicker{
 color:#87314b!important;opacity:1!important;
}
.firp.firp-edition-landing .firp-overview-section-intro{font-size:14px!important;max-width:720px!important}
.firp.firp-edition-landing .firp-overview-country-grid{
 background:transparent!important;border:0!important;gap:13px!important;
}
.firp.firp-edition-landing .firp-overview-country-grid a{
 position:relative;min-height:155px!important;padding:20px!important;
 border:1px solid #ded8d2;background:#f8f6f2!important;
 transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.firp.firp-edition-landing .firp-overview-country-grid a:before{
 content:"";width:30px;height:3px;background:#8c2440;display:block;margin-bottom:10px;
}
.firp.firp-edition-landing .firp-overview-country-grid a strong{font-size:clamp(19px,2vw,24px)!important;letter-spacing:-.025em}
.firp.firp-edition-landing .firp-overview-country-grid a:hover{
 background:#f0e9e6!important;border-color:#ad8590!important;transform:translateY(-2px);
}
.firp.firp-edition-landing .firp-overview-operator-grid{gap:14px!important}
.firp.firp-edition-landing .firp-overview-operator-grid a{
 border:1px solid #e2dcd7!important;border-top:3px solid #87314b!important;
 padding:20px!important;min-height:130px;background:#fff;
 transition:box-shadow .2s ease,transform .2s ease;
}
.firp.firp-edition-landing .firp-overview-operator-grid a:hover{
 box-shadow:0 9px 24px rgba(32,22,24,.08);transform:translateY(-2px);
}
.firp.firp-edition-landing .firp-overview-operator-grid a strong{font-size:17px!important}
.firp.firp-edition-landing .firp-overview-endnote{
 background:#f3f0ec;padding:28px clamp(20px,3vw,36px)!important;margin-top:26px;
 border-left:4px solid #87314b;
}
@media(max-width:760px){
 .firp.firp-edition-landing .firp-overview-lead{padding:30px 22px 35px!important}
 .firp.firp-edition-landing .firp-overview-edition-label{margin-bottom:30px}
 .firp.firp-edition-landing .firp-overview-lead h2{font-size:clamp(34px,8vw,48px)!important}
 .firp.firp-edition-landing .firp-overview-chapterline{font-size:9px}
}
@media(prefers-reduced-motion:reduce){
 .firp.firp-edition-landing .firp-overview-editorial a{transition:none!important}
}

/* v3.4.3 — Permanent Sakala typography contract.
   Every publication view, including all inner /research/ routes and operator
   dossiers, inherits the theme's font family and BODY font size.
   Preserve intentional heading hierarchy, icons, and control glyphs. */
.firp, .firp.firp-dossier, .firp.firp-edition-landing {
 font-family:inherit!important;
 font-size:inherit!important;
}
.firp :where(
 article,section,aside,main,header,footer,nav,div,figure,figcaption,
 p,ul,ol,li,dl,dt,dd,blockquote,table,thead,tbody,tfoot,tr,th,td,
 label,input,select,textarea,button,a,summary,details,caption
):not(.fa):not(.fas):not(.far):not(.fab):not(.dashicons):not([class*="fa-"]):not([class*="dashicons-"]){
 font-family:inherit!important;
}
.firp :where(
 p,li,dd,blockquote,figcaption,
 .firp-overview-section-intro,.firp-overview-deck,
 .firp-overview-lead-copy>p,
 .firp-country-article p,.firp-country-article li,
 .firp-dossier-body p,.firp-dossier-body li,
 .firp-enhanced-description,.firp-profile-description,
 .firp-section-intro,.firp-card-description,
 .firp-about-copy,.firp-article-body p
){
 font-size:inherit!important;
}
.firp :where(input,select,textarea,button){
 font-family:inherit!important;
 font-size:inherit!important;
}
/* Override the bespoke landing-page prose sizes from earlier versions. */
.firp.firp-edition-landing .firp-overview-lead-copy>p:not(.firp-overview-kicker),
.firp.firp-edition-landing .firp-overview-deck,
.firp.firp-edition-landing .firp-overview-section-intro{
 font-size:inherit!important;
}
/* Deliberate typographic hierarchy for titles is retained; their families
   remain the site's own. */
.firp :where(h1,h2,h3,h4,h5,h6){
 font-family:inherit!important;
}
