/* Consistent containment and breathing room for every footer. */
footer,.footer{width:100%;max-width:100%;box-sizing:border-box;clear:both}footer *,.footer *{min-width:0;box-sizing:border-box}.footerGrid{display:grid!important;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr))!important;gap:28px!important;width:100%;align-items:start}.footerGrid>div{min-width:0!important}.footer .brand{display:flex!important;align-items:center;gap:12px;min-width:0;max-width:100%}.footer .brand>div{min-width:0;flex:1}.footer .officialMark{width:45px!important;height:45px!important;flex:0 0 45px}.footer .brand b{font-size:13px!important;line-height:1.5!important;white-space:normal;overflow-wrap:anywhere}.footer .brand span{font-size:10px!important;line-height:1.6;white-space:normal}.footer p,.footer a,.footer h4,.footnote{overflow-wrap:anywhere;word-break:normal}.footer a{white-space:normal!important;max-width:100%}.footer .footnote{display:flex;flex-wrap:wrap;gap:10px 25px;line-height:1.7;align-items:start}.publicationPage .relatedUpdates{margin-bottom:0;padding-bottom:48px;clear:both}.publicationPage .relatedUpdates>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.publicationPage .relatedUpdates .editorialCard{min-width:0;background:#fff;border:1px solid #d8e4d6;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.publicationPage .relatedUpdates .storyImage{height:150px;flex:none}.publicationPage .relatedUpdates .storyImage img{width:100%;height:100%;object-fit:cover}.publicationPage .relatedUpdates .storyText{padding:20px;flex:1;display:flex;flex-direction:column}.publicationPage .relatedUpdates h3{font-size:21px;line-height:1.3!important}.publicationPage .relatedUpdates p{font-size:13px;line-height:1.7}.publicationPage .relatedUpdates .readStory{margin-top:auto}.publicationPage .footer{margin-top:0!important}
/* Clicking has no decorative focus box; keyboard focus uses a soft colour change. */
*:focus{outline:none!important;box-shadow:none!important}button:focus-visible,a:focus-visible{outline:none!important;box-shadow:none!important;text-decoration:underline;text-underline-offset:4px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none!important;box-shadow:none!important;background:#edf4e9!important}svg [role=button]:focus-visible{outline:none!important;filter:brightness(1.18)}.chartMark:focus-visible{outline:none!important}
/* Smaller event images and complete, uncropped banners. */
.eventPublicationHead{width:min(1120px,89vw);margin:35px auto 20px;display:grid;grid-template-columns:1.4fr .75fr;gap:35px;align-items:center}.eventPublicationHead .readingHeader{margin:0;padding:0;min-width:0}.eventPublicationHead h1{font-size:clamp(32px,3.5vw,46px)!important;margin:15px 0 18px}.eventPublicationHead .standfirst{font-size:16px;line-height:1.75}.eventPublicationHead .breadcrumb{margin-bottom:20px}.eventVisual{margin:0;background:#e5eedf;border:1px solid #d8e4d6;border-radius:16px;overflow:hidden;max-width:100%;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.eventVisual img{width:100%;height:265px;object-fit:cover;display:block}.eventVisual figcaption{font-size:10px;color:#65766c;line-height:1.6;padding:9px 13px;background:#f2f6ed}.eventVisual.eventBanner{background:#f9fbf7;padding:12px}.eventBanner img{height:auto;max-height:300px;object-fit:contain;width:100%}.eventLogistics{width:min(1120px,89vw);margin:0 auto 30px;background:#edf4e9;border:1px solid #d5e1cd;border-radius:14px;padding:19px 23px;display:flex;justify-content:space-between;gap:25px;align-items:center}.eventLogistics .eventFacts{display:grid;grid-template-columns:1fr 1fr;gap:25px;border:0;padding:0;margin:0;flex:1}.eventLogistics .eventFacts strong{font-size:13px;line-height:1.6;margin-top:6px}.eventLogistics .eventFacts small{font-size:10px}.eventLogistics .eventCtas{margin:0;gap:8px}.eventLogistics .eventCtas a{font-size:11px;padding:10px 14px}.eventAgendaSection .eventAgenda>div{grid-template-columns:135px minmax(0,1fr)}.eventPeople ul{padding:0;list-style:none;display:grid;gap:10px}.eventPeople li{padding:12px 0;border-bottom:1px solid #d8e4d6;font-size:15px}
/* A gallery becomes a real slideshow, with a thumbnail rail and full-size viewing. */
.gallerySlideshow{width:min(960px,89vw);margin:20px auto 35px;padding:25px;background:#062b20;border-radius:17px;color:#fff}.galleryHeading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.galleryHeading .eyebrow{color:#bce0a0!important}.galleryHeading h2{font-size:28px;margin:8px 0 0;color:#fff}.galleryHeading>span{font-size:12px;color:#bfd2c5;white-space:nowrap}.galleryStage{position:relative;background:#fff;border-radius:12px;overflow:hidden}.gallerySlideshow .gallerySlide{margin:0;display:block;animation:galleryEnter .45s ease}.gallerySlideshow .galleryImage{display:block;width:100%;padding:0;border:0;background:#fff}.gallerySlideshow .galleryImage img{display:block;width:100%;height:410px;object-fit:contain;aspect-ratio:auto}.gallerySlideshow .gallerySlide figcaption{font-size:11px;color:#52695b;line-height:1.7;margin:0;padding:12px 16px;border-top:1px solid #e2ebdc}.galleryArrows{position:absolute;top:45%;left:14px;right:14px;display:flex!important;justify-content:space-between;pointer-events:none}.galleryArrows button{pointer-events:auto;width:38px;height:38px;border:1px solid #ffffff65;border-radius:50%;background:#062b20d9;color:#fff;font-size:18px}.galleryThumbnails{display:flex!important;gap:9px;overflow-x:auto;margin-top:14px;padding-bottom:3px}.galleryThumbnails button{flex:0 0 76px;border:2px solid transparent;background:none;padding:0;border-radius:7px;overflow:hidden;opacity:.55;min-width:0}.galleryThumbnails button[aria-pressed=true]{border-color:#bce0a0;opacity:1}.galleryThumbnails img{width:100%;height:57px;object-fit:cover;display:block}.publicationPage #galleryDialog{max-width:min(1000px,94vw);width:auto;border-radius:12px;padding:30px 22px 18px}.publicationPage #galleryDialog img{max-width:100%;max-height:80svh;width:auto;height:auto;object-fit:contain;margin:auto}
.journeyImageEnter{animation:galleryEnter .5s ease}
/* Homepage chart marks replay independently of the surrounding section reveal. */
.ministryHome .donutSegment{animation:none!important;transition:transform 2.1s cubic-bezier(.16,.8,.3,1),opacity 2.1s ease;transition-delay:var(--piece-delay);transform-box:view-box}.ministryHome .motionPrepared:not(.motionVisible) .donutSegment{transform:translate(var(--piece-x),var(--piece-y));opacity:0}.ministryHome .motionPrepared.motionVisible .donutSegment{transform:translate(0,0);opacity:1}.ministryHome .motionPrepared .spendingTrack i{transition:transform 2.1s cubic-bezier(.16,.8,.3,1)!important;animation:none!important}.ministryHome .motionPrepared .chartMark rect{transition:transform 2.1s cubic-bezier(.16,.8,.3,1)!important;animation:none!important}.ministryHome .donutTotal{font-size:31px}.ministryHome .chartReadout [data-chart-value]{font-size:15px}
/* Contact page with an actual submission flow, location pin and newsletter. */
.contactPageGrid{width:min(1120px,89vw);margin:0 auto 35px;display:grid;grid-template-columns:1.2fr .8fr;gap:35px}.contactPageGrid h2{font-size:30px;margin:9px 0 23px}.contactEnquiry{padding:27px;background:#fff;border:1px solid #d8e4d6;border-radius:16px}.contactFields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.contactFields label,.contactNewsletter form>label:not(.formTrap){font-size:12px;font-weight:650;color:#52695b;display:grid;gap:7px}.contactFields input,.contactFields select,.contactFields textarea,.contactNewsletter input[type=email]{width:100%;min-width:0;max-width:100%;padding:11px 12px;background:#fafcf7;color:#153b2b;border:1px solid #cedbc8;border-radius:8px;font-size:14px;line-height:1.5}.contactMessage{grid-column:1/-1}.formTrap{display:none!important}.contactEnquiry .pubButton{margin-top:20px}.contactEnquiry [role=status],.contactNewsletter [role=status]{font-size:13px;line-height:1.7;color:#006b40;margin:15px 0 0}.contactAddress{padding:27px;background:#edf4e9;border-radius:16px}.contactAddress address{font-size:16px;font-style:normal;line-height:1.8;margin:0 0 18px}.contactAddress>a{font-size:13px;color:#006b40;font-weight:750}.contactPin{margin:22px 0 18px;height:245px;border:1px solid #cbdcc2;overflow:hidden;border-radius:12px;background:#dce9d3}.contactPin iframe{width:100%;height:100%;border:0;display:block}.contactAddress .outlineButton{background:#fff;font-size:12px;border-color:#c1d2b7}.contactNewsletter{width:min(1120px,89vw);margin:0 auto 40px;display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:32px;background:#062b20;color:#fff;border-radius:16px}.contactNewsletter .eyebrow{color:#bce0a0!important}.contactNewsletter h2{font-size:32px;margin:9px 0 15px}.contactNewsletter p{font-size:14px;color:#bfd2c5;line-height:1.75;max-width:420px}.contactNewsletter form{min-width:0}.contactNewsletter form>label:not(.formTrap){color:#bfd2c5}.contactNewsletter .newsletterConsent{display:flex!important;align-items:start;gap:9px;margin:13px 0 17px;font-size:12px;line-height:1.65}.newsletterConsent input{width:16px;height:16px;margin:2px 0;accent-color:#006b40;flex:none}.contactNewsletter .pubButton{background:#bce0a0;color:#153b2b;border-color:#bce0a0}.contactNewsletter [role=status]{color:#d1edb7}.inboxEntry{padding:20px;background:#fff;border:1px solid #d8e4d6;border-radius:12px;margin:14px 0}.inboxEntry p{font-size:14px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.inboxLink{display:block;font-size:12px;line-height:1.6;margin-bottom:17px;color:#006b40}
/* Complete scorecard composition: dedicated dark header, video and borderless key figures. */
.scorecardPage{background:#f3f7ed}.scorecardHeader{padding:16px 0!important;background:#041e16!important;color:#fff}.scorecardHeader>.container{display:flex;align-items:center;justify-content:space-between;gap:25px}.scorecardIdentity{display:flex;align-items:center;gap:12px;min-width:0}.scorecardIdentity img{width:43px;height:43px;object-fit:contain;flex:none}.scorecardIdentity strong{display:block;font-size:16px;line-height:1.5;color:#fff}.scorecardIdentity span{display:block;font-size:11px;color:#bfd2c5;margin-top:3px}.scorecardHomeLink{font-size:12px;color:#d1edb7;white-space:nowrap}.scorecardPage .scorecardChapters{top:0;background:#062b20!important;z-index:35;border:0;padding:8px 0;backdrop-filter:none}.scorecardPage .scorecardChapters .links a{color:#fff!important}.scorecardPage .scorecardChapters .links a.active{color:#bce0a0!important;border-color:#bce0a0}.scorecardPage .scorecardChapters .btn{background:#bce0a0;color:#153b2b;border-color:#bce0a0}.scorecardPage section[id]{scroll-margin-top:75px}.scorecardPage .hero{padding:36px 0 0;background:#062b20;color:#fff}.scorecardPage .hero-grid{grid-template-columns:1.1fr 1fr;gap:35px}.scorecardPage .hero h1{font-size:clamp(38px,4.4vw,58px)!important}.scorecardPage .hero .lead{font-size:15px;color:#bfd2c5;line-height:1.85}.scorecardVideo{margin:0;min-width:0}.scorecardVideo>div{aspect-ratio:16/9;position:relative;overflow:hidden;border-radius:15px;background:#041e16;border:1px solid #ffffff25}.scorecardVideo iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.scorecardVideo figcaption{font-size:10px;color:#bfd2c5;line-height:1.6;margin-top:11px}.scorecardPage .hero .keyFigureStrip{margin-top:32px;padding:25px 0 28px;border:0;border-top:1px solid #ffffff20;border-radius:0;background:none}.scorecardPage .keyFigureStrip .kicker{color:#bce0a0;font-size:10px}.scorecardPage .keyFigureStrip .kpi-grid{gap:32px;margin-top:15px}.scorecardPage .keyFigureStrip .kpi{padding:0!important;margin:0;background:none;border:0!important;border-radius:0;box-shadow:none}.scorecardPage .keyFigureStrip .num{font-size:38px;color:#bce0a0;margin-bottom:7px}.scorecardPage .keyFigureStrip strong{font-size:13px;line-height:1.55;color:#fff}.scorecardPage .keyFigureStrip small{font-size:11px;line-height:1.75;color:#bfd2c5;display:block;margin-top:8px}.scorecardPage #numbers{padding:38px 0;background:#fff}.scorecardPage #numbers>.container>h2{max-width:960px;font-size:34px!important}.readingGuide{margin-top:25px;padding-top:23px;border-top:1px solid #d8e4d6}.readingGuideHead{display:flex;justify-content:space-between;gap:25px;align-items:center}.readingGuideHead>span{font-size:18px;font-weight:800;color:#006b40}.readingGuideHead p{font-size:13px;color:#65766c;margin:0;line-height:1.7}.readingGuide ol{list-style:none;padding:0;margin:23px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.readingGuide li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px}.readingGuide li>span{color:#006b40;font-size:12px;font-weight:800;line-height:1.8}.readingGuide h3{font-size:18px;margin:0 0 8px}.readingGuide li p{font-size:13px;color:#65766c;line-height:1.7;margin:0}.readingGuideNote{font-size:12px;color:#65766c;line-height:1.8;margin:20px 0 0;max-width:1000px}
.fiscalExperience{padding:38px 0;background:#edf4e9}.fiscalExperience h2{font-size:36px;margin:9px 0 15px}.fiscalExperience>.container>.lead{font-size:15px;margin:0;color:#65766c}.fiscalExperienceGrid{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.5fr);margin-top:25px;gap:30px;align-items:start}.fiscalQuestions{display:flex;flex-direction:column;gap:5px}.fiscalQuestion{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;padding:14px 12px;background:none;border:0;border-radius:9px;color:#355642;text-align:left;cursor:pointer}.fiscalQuestion>span{font-size:10px;line-height:1.65;margin-top:3px;color:#7b9170}.fiscalQuestion strong{font-size:13px;line-height:1.65;font-weight:650}.fiscalQuestion.active{background:#006b40;color:#fff}.fiscalQuestion.active>span{color:#d1edb7}.fiscalQuestion.active strong{font-weight:750}.fiscalPanes{min-width:0;padding:25px;background:#fff;border:1px solid #d5e1cd;border-radius:16px}.fiscalPane{padding:0!important;animation:galleryEnter .4s ease}.fiscalPaneInner{width:100%;max-width:100%;display:block!important}.fiscalPane .qno{display:none}.scorecardPage .fiscalPane .question{font-size:27px!important;margin:0 0 13px}.fiscalPane .copy{font-size:14px;line-height:1.8;margin:0 0 17px;color:#65766c}.fiscalPane .fact{display:inline-block;border:0;border-radius:0;background:none;padding:0;margin:0 18px 14px 0;font-size:12px;line-height:1.8;max-width:100%}.scorecardPage .fiscalPane .card{padding:16px 0 0;border:0;border-top:1px solid #d8e4d6;border-radius:0;background:none;box-shadow:none}.fiscalPane .chart-toolbar{align-items:start}.fiscalPane .chart-area{width:100%;max-width:100%;min-height:0}.fiscalPane .chart-area svg{width:100%;height:auto;display:block;overflow:visible}.fiscalPane .chart-title{margin:0 0 12px;line-height:1.8}.fiscalPane .note{font-size:11px;background:none;padding:10px 0 0;line-height:1.8}.fiscalPane .context-box{background:none;border:0;padding:0;margin:13px 0 17px;font-size:13px;line-height:1.8;color:#65766c}.scorecardPage .fiscalPane .flow{grid-template-columns:1fr;gap:10px;margin:0}.scorecardPage .fiscalPane .flowbox{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:0;padding:15px 0;border:0;border-bottom:1px solid #d8e4d6;border-radius:0;background:none;font-size:13px;color:#52695b}.scorecardPage .fiscalPane .flowbox strong{margin:0;font-size:26px;color:#006b40}.scorecardPage .fiscalPane .flowbox.total{background:#006b40;border:0;border-radius:10px;padding:16px;color:#fff}.scorecardPage .fiscalPane .flowbox.total strong{color:#d1edb7}.fiscalPane .op{display:none}.scorecardPage .fiscalPane .stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.scorecardPage .fiscalPane .stat{background:none;border:0;padding:0;border-radius:0}.scorecardPage .fiscalPane .stat strong{font-size:25px}.scorecardPage .fiscalPane .stat small{font-size:11px;line-height:1.6}.fundingLabels{display:flex;justify-content:space-between;gap:25px;margin:23px 0 15px}.fundingLabels>span{font-size:12px;line-height:1.8;color:#65766c;flex:1;min-width:0}.fundingLabels>span:last-child{text-align:right}.fundingLabels b{display:block;color:#006b40;font-size:20px;line-height:1.5}.fundingTrack{display:flex;height:15px;overflow:hidden;border-radius:999px;background:#d8e7cb}.fundingTrack i{height:100%;background:#006b40}.fundingTrack i+ i{background:#b5cc9c}
/* Dark editorial carousels replace repeated reform and benefit cards. */
.practiceSection{padding:38px 0}.practiceDark{background:#062b20;color:#fff}.practiceSection h2{font-size:34px;margin:10px 0 23px}.practiceDark .kicker{color:#bce0a0}.practiceGrid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:40px;align-items:start}.practiceMenu{display:grid;grid-template-columns:1fr;gap:4px}.practiceChoice{display:grid;grid-template-columns:27px minmax(0,1fr);gap:10px;align-items:center;background:none;border:0;border-radius:8px;padding:10px 12px;color:#bfd2c5;cursor:pointer;text-align:left}.practiceChoice>span{font-size:10px;color:#9cb78e}.practiceChoice strong{font-size:13px;line-height:1.6;font-weight:650}.practiceChoice.active{background:#bce0a0;color:#153b2b}.practiceChoice.active>span{color:#006b40}.practiceChoice.active strong{font-weight:750}.practicePanels{min-width:0;position:sticky;top:80px}.practicePanel{animation:galleryEnter .45s ease}.practicePhoto{height:250px;border-radius:14px;overflow:hidden;background:#153b2b}.practicePhoto img{width:100%;height:100%;object-fit:cover;display:block}.practiceCopy{padding-top:21px}.practiceCopy>span{font-size:10px;color:#bce0a0;letter-spacing:.1em}.practiceCopy h3{font-size:30px;margin:12px 0 15px;line-height:1.2!important;color:#fff}.practiceCopy p{font-size:15px;line-height:1.85;color:#bfd2c5;max-width:700px;margin:0 0 18px}.practiceCopy>a{font-size:12px;color:#bce0a0;font-weight:750}.practiceArrows{display:flex;gap:10px;margin-top:22px}.practiceArrows button{width:35px;height:35px;border:1px solid #ffffff35;border-radius:50%;background:none;color:#bce0a0;cursor:pointer}.scorecardPage .story:has(.score-controls){background:#fff;padding:38px 0}.scorecardPage .score-controls .tab{background:#edf4e9;color:#355642;border-color:#d5e1cd}.scorecardPage .score-controls .tab.active{background:#006b40;color:#fff;border-color:#006b40}.scorecardPage #faqs{background:#f7f5ec;padding:38px 0}.scorecardPage .faq{background:#fff}.scorecardPage .faq button{color:#153b2b}.scorecardPage .faq button span{color:#006b40}.scorecardPage .scorecardContact{background:#fff;padding:32px 0}.scorecardContact>.container{display:flex;justify-content:space-between;gap:30px;align-items:center}.scorecardContact h2{font-size:30px;margin:9px 0 13px}.scorecardContact p{font-size:14px;line-height:1.75;color:#65766c;margin:0}.scorecardPage .scorecardContact .btn.primary{background:#006b40;color:#fff;border-color:#006b40;flex:none}.scorecardPage .scorecardEvidence{background:#103d2c;padding:35px 0;color:#fff}.scorecardEvidence .kicker{color:#bce0a0}.scorecardPage .scorecardEvidence h2{color:#fff}.scorecardPage .scorecardEvidence .resource{border:0;border-bottom:1px solid #ffffff25;border-radius:0;background:none;padding:15px 0}.scorecardPage .scorecardEvidence .resource strong{color:#bce0a0;font-size:15px;line-height:1.5}.scorecardPage .scorecardEvidence .resource small{color:#bfd2c5;font-size:12px;line-height:1.7}
/* Every chart animates again when selected or scrolled back into view. */
.scorecardPage .scoreBar{transform-box:fill-box;transform-origin:left;transition:transform 2.1s cubic-bezier(.16,.8,.3,1);transition-delay:var(--bar-delay)}.scorecardPage .chartPrepared:not(.chartVisible) .scoreBar{transform:scaleX(0)}.scorecardPage .chartVisible .scoreBar{transform:scaleX(1)}.scorecardPage .scoreDonutPiece{transform-box:view-box;transition:transform 2.1s cubic-bezier(.16,.8,.3,1),opacity .85s ease;transition-delay:var(--piece-delay)}.scorecardPage .chartPrepared:not(.chartVisible) .scoreDonutPiece{transform:translate(var(--piece-x),var(--piece-y));opacity:0}.scorecardPage .chartVisible .scoreDonutPiece{transform:translate(0,0);opacity:1}.scorecardPage .tooltip{max-width:min(270px,85%);font-size:12px;line-height:1.7;background:#062b20;border:1px solid #3f6e4f;color:#fff;box-shadow:0 12px 30px #041e1625;z-index:10}
@keyframes galleryEnter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.footerGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.footerGrid>div:first-child{grid-column:1/-1}.eventPublicationHead{grid-template-columns:1.2fr .8fr;gap:25px}.eventLogistics{display:block}.eventLogistics .eventCtas{margin-top:17px}.fiscalExperienceGrid{grid-template-columns:minmax(230px,.75fr) minmax(0,1.4fr);gap:20px}.practiceGrid{gap:27px}.scorecardPage .hero-grid{gap:26px}.scorecardPage .fiscalPane .question{font-size:25px!important}.fiscalPanes{padding:22px}}
@media(max-width:800px){.publicationPage .relatedUpdates>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}.eventPublicationHead{grid-template-columns:1fr}.eventVisual{max-width:550px;width:100%;align-self:auto}.eventVisual img{height:220px}.eventBanner img{height:auto;max-height:250px}.contactPageGrid,.contactNewsletter{grid-template-columns:1fr;gap:24px}.contactNewsletter{padding:25px}.scorecardPage .hero-grid{grid-template-columns:1fr}.scorecardVideo{max-width:650px}.scorecardPage .keyFigureStrip .kpi-grid{gap:22px}.readingGuideHead{display:block}.readingGuideHead p{margin-top:11px}.readingGuide ol{gap:20px}.fiscalExperienceGrid{grid-template-columns:1fr}.fiscalQuestions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.fiscalQuestion{padding:12px 10px}.fiscalQuestion strong{font-size:12px}.practiceGrid{grid-template-columns:1fr}.practiceMenu{grid-template-columns:1fr 1fr;gap:7px}.practicePanels{position:static}.practicePhoto{height:240px}.scorecardPage .scorecardEvidence .resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scorecardContact>.container{display:block}.scorecardContact .btn{margin-top:20px}.scorecardPage .scorecardChapters{top:0}.gallerySlideshow .galleryImage img{height:360px}}
@media(max-width:600px){.footerGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}.footerGrid>div:last-child{grid-column:1/-1}.publicationPage .relatedUpdates{padding-bottom:32px}.publicationPage .relatedUpdates>div:last-child{grid-template-columns:1fr}.eventPublicationHead{margin-top:25px}.eventPublicationHead h1{font-size:32px!important}.eventLogistics{padding:18px}.eventLogistics .eventFacts{grid-template-columns:1fr;gap:17px}.eventLogistics .eventCtas{flex-wrap:wrap}.eventAgendaSection .eventAgenda>div{grid-template-columns:1fr}.gallerySlideshow{padding:18px;border-radius:14px}.galleryHeading h2{font-size:24px}.gallerySlideshow .galleryImage img{height:320px}.galleryThumbnails button{flex-basis:62px}.galleryThumbnails img{height:48px}.galleryArrows{left:9px;right:9px}.galleryArrows button{width:32px;height:32px}.contactFields{grid-template-columns:1fr}.contactEnquiry,.contactAddress{padding:22px}.contactPageGrid h2{font-size:27px}.contactNewsletter h2{font-size:28px}.scorecardIdentity strong{font-size:13px}.scorecardIdentity span{font-size:10px}.scorecardIdentity img{width:38px;height:38px}.scorecardHomeLink{font-size:10px;white-space:normal;text-align:right}.scorecardPage .hero h1{font-size:38px!important}.scorecardPage .keyFigureStrip .kpi-grid{grid-template-columns:1fr;gap:21px}.scorecardPage .keyFigureStrip .num{font-size:34px}.scorecardPage .hero .keyFigureStrip{margin-top:25px}.readingGuide ol{grid-template-columns:1fr}.fiscalQuestions{grid-template-columns:1fr}.fiscalQuestion strong{font-size:13px}.fiscalPanes{padding:20px 17px}.fiscalPane .chart-area{overflow-x:auto}.fiscalPane .chart-area svg{min-width:560px}.fiscalPane .chart-area .tooltip{position:sticky;bottom:5px;left:5px!important;top:auto!important}.scorecardPage .fiscalPane .stat-grid{grid-template-columns:1fr;gap:15px}.fundingLabels{gap:15px}.fundingLabels b{font-size:19px}.fundingLabels>span{font-size:11px}.practiceMenu{grid-template-columns:1fr}.practiceChoice{padding:10px 11px}.practiceSection h2{font-size:29px}.practiceCopy h3{font-size:27px}.practiceCopy p{font-size:14px}.practicePhoto{height:210px}.scorecardPage .scorecardEvidence .resource-grid{grid-template-columns:1fr}.scorecardContact h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.gallerySlide,.journeyImageEnter,.practicePanel,.fiscalPane{animation:none!important}.ministryHome .donutSegment,.scorecardPage .scoreDonutPiece,.scorecardPage .scoreBar{transform:none!important;opacity:1!important;transition:none!important}}
.ministryHome .waterfallPoint.selected rect{stroke:none!important;stroke-width:0!important}.ministryHome .donutSegment.selected{stroke:none!important;stroke-width:0!important}
.eventImageOpen{display:block;border:0;background:none;padding:0;width:100%}.eventBanner .eventImageOpen img{aspect-ratio:auto;object-fit:contain}
.gallerySlideshow .galleryHeading{display:flex!important}.gallerySlideshow .galleryStage{display:block!important}
/* Selecting a new chart also starts its own motion, even when the section is already visible. */
@media(prefers-reduced-motion:no-preference){
 .macroWorkspacePanel:not([hidden]) .comparisonPoint rect,.reformJourneyPanel:not([hidden]) .waterfallPoint rect{animation:chartRise 2.1s cubic-bezier(.16,.8,.3,1) backwards!important}
 .reformJourneyPanel:not([hidden]) .spendingTrack i,.fiscalPane:not([hidden]) .scoreBar{animation:chartExtend 2.1s cubic-bezier(.16,.8,.3,1) backwards!important}
 .reformJourneyPanel:not([hidden]) .donutSegment,.fiscalPane:not([hidden]) .scoreDonutPiece{animation:pieceAssemble 2.1s cubic-bezier(.16,.8,.3,1) backwards!important;animation-delay:var(--piece-delay)!important}
 .fiscalPane:not([hidden]) .fundingTrack{animation:chartExtend 2.1s cubic-bezier(.16,.8,.3,1) backwards;transform-origin:left;transition:transform 2.1s cubic-bezier(.16,.8,.3,1)}
 .pageReveal:not(.pageVisible) .fundingTrack{transform:scaleX(0)}.pageVisible .fundingTrack{transform:scaleX(1)}
}
@keyframes chartRise{from{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes chartExtend{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes pieceAssemble{from{transform:translate(var(--piece-x),var(--piece-y));opacity:0}to{transform:translate(0,0);opacity:1}}
/* One Scorecard header: identity, chapter navigation and Ministry link share a bar. */
.scorecardPage .scorecardHeader{position:sticky;top:0;z-index:50;border-bottom:1px solid #ffffff18;padding:14px 0!important}
.scorecardHeader>.container{gap:20px}.scorecardIdentity strong{font-size:15px}.scorecardIdentity img{width:38px;height:38px}
.scorecardNavigation{position:static;display:flex;align-items:center;gap:18px;background:none!important;border:0;backdrop-filter:none;min-width:0}
.scorecardNavigation a{font-size:12px;color:#d9e8de;white-space:nowrap;padding:8px 0;border-bottom:2px solid transparent}
.scorecardNavigation a.active,.scorecardNavigation a:hover{color:#bce0a0;border-color:#bce0a0}
.scorecardPage .hero .briefingDownload{background:#fff!important;color:#153b2b!important;border-color:#fff!important}
.scorecardPage .hero .briefingDownload:hover{background:#edf4e9!important}
/* Oversized figures sit on an open strip, with a quiet rule for each figure. */
.scorecardPage .keyFigureStrip .kpi{border-top:1px solid #bce0a044!important;padding-top:18px!important}
.scorecardPage .keyFigureStrip .num{font-variant-numeric:tabular-nums;font-size:clamp(38px,4.4vw,55px);font-weight:800;letter-spacing:-.045em;min-height:1.25em}
.scorecardPage .hero .keyFigureStrip{border-top:0;margin-top:26px;padding-top:16px}
/* Read the financing story as a connected sequence, rather than boxed instructions. */
.readingGuide{border:0;padding:28px 0 0}.readingGuideHead>span{font-size:23px;color:#153b2b}
.readingGuide ol{position:relative;gap:35px;margin:26px 0 0}.readingGuide ol:before{content:'';position:absolute;left:0;right:0;top:25px;height:1px;background:linear-gradient(90deg,#006b40,#b4d699)}
.readingGuide li{display:block;position:relative}.readingGuide li>span{position:relative;display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;background:#edf4e9;border-radius:50%;font-size:16px;color:#006b40;box-shadow:0 0 0 9px #fff;margin-bottom:20px}
.readingGuide h3{font-size:21px}.readingGuide li p{max-width:320px;font-size:14px}.readingGuideNote{margin-top:25px;padding-left:17px;border-left:2px solid #b4d699}
/* Everyday outcomes have an editorial image-and-copy stage and a horizontal topic rail. */
.practiceEveryday{background:#edf4e9;color:#153b2b}.practiceEveryday .kicker{color:#006b40}
.practiceEveryday .practiceGrid{display:flex;flex-direction:column;gap:26px}.practiceEveryday .practicePanels{position:static;width:100%}
.practiceEveryday .practicePanel:not([hidden]){display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
.practiceEveryday .practicePhoto{height:305px;border-radius:18px 18px 70px 18px}.practiceEveryday .practiceCopy{padding:0 20px 0 0}
.practiceEveryday .practiceCopy>span{color:#006b40}.practiceEveryday .practiceCopy h3{color:#153b2b;font-size:35px;max-width:560px}.practiceEveryday .practiceCopy p{color:#536b5d;font-size:16px}
.practiceEveryday .practiceMenu{display:flex;gap:9px;width:100%;overflow-x:auto;padding:5px 0 14px;scrollbar-color:#92b49a transparent;scrollbar-width:thin}
.practiceEveryday .practiceChoice{display:flex;align-items:start;flex:0 0 200px;padding:15px 17px;border-top:2px solid #bdd1b5;border-radius:0;color:#536b5d;background:transparent;min-height:82px}
.practiceEveryday .practiceChoice.active{border-color:#006b40;background:#dcead3;color:#153b2b}.practiceEveryday .practiceChoice>span{color:#006b40}.practiceEveryday .practiceChoice strong{font-size:12px}
.practiceEveryday .practiceArrows{position:absolute;right:0;bottom:0}.practiceEveryday .practicePanels{position:relative;padding-bottom:49px}.practiceEveryday .practiceArrows button{color:#006b40;border-color:#a9c19f;background:#fff}
/* A spacious numbered FAQ index, with animated disclosure and a clear reading column. */
.scorecardPage #faqs>.container{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.5fr);gap:0 55px;align-items:start}
.scorecardPage #faqs .kicker{grid-column:1}.faqHeading{grid-column:1;position:sticky;top:100px}.faqHeading h2{font-size:35px;margin:13px 0 20px}.faqHeading p{color:#65766c;line-height:1.8;font-size:14px;max-width:300px}
.scorecardPage #faqs .faqs{grid-column:2;grid-row:1/3;min-width:0;width:100%;max-width:none}
.scorecardPage .faq{background:transparent;border-top:1px solid #cbd8c4;border-bottom:0}.scorecardPage .faq:last-child{border-bottom:1px solid #cbd8c4}
.scorecardPage .faq button{display:grid;grid-template-columns:24px minmax(0,1fr) 32px;gap:16px;align-items:start;padding:23px 0}.faqNumber{font-size:11px;color:#70896b;padding-top:5px}.faq button strong{font-size:15px;line-height:1.65;font-weight:700}.scorecardPage .faq button .faqToggle{display:flex;align-items:center;justify-content:center;border-radius:50%;width:31px;height:31px;background:#e5eddf;font-size:18px;color:#006b40;transition:background .3s}
.scorecardPage .faq.open button .faqToggle{background:#006b40;color:#fff}.scorecardPage .faq-answer,.scorecardPage .faq.open .faq-answer{display:grid;padding:0 48px 0 40px;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .5s ease,opacity .5s ease,padding .5s ease}
.scorecardPage .faq-answer>div{overflow:hidden;min-height:0;font-size:14px;line-height:1.85}.scorecardPage .faq.open .faq-answer{grid-template-rows:1fr;opacity:1;padding-bottom:25px}
/* Centre the shared footer on dynamic pages and contain every grid track. */
.publicationPage .footer>.wrap{width:min(1240px,calc(100% - 64px));max-width:100%;margin:0 auto;padding:0}
.publicationPage .footer .footerGrid{grid-template-columns:minmax(0,1.45fr) repeat(3,minmax(0,1fr))!important;gap:30px!important;width:auto}
.publicationPage .footer .footerGrid>div{grid-column:auto;min-inline-size:0;max-inline-size:100%}
.publicationPage .footer .brand>div{flex:1 1 0;min-width:0}.publicationPage .footer .brand .officialMark{flex:0 0 45px}
.publicationPage .footer .footerGrid p{max-width:100%!important;font-size:13px;line-height:1.8;margin-bottom:0}
.publicationPage .footer .footnote{border-top:1px solid #ffffff1c;padding-top:20px;margin-top:30px;font-size:11px;color:#9fb3aa;justify-content:space-between}
/* Replayed, direction-aware section transitions; the content retains its natural layout. */
@media(prefers-reduced-motion:no-preference){
 .motionPrepared{transition:opacity 1s ease,transform 1.1s cubic-bezier(.22,.75,.25,1)}
 .motionPrepared:not(.motionVisible){opacity:0;transform:translate3d(0,var(--reveal-offset,40px),0)}
 .motionPrepared.motionVisible{opacity:1;transform:translate3d(0,0,0)}
 .pageReveal{transition-duration:1s,1.1s}
 .scorecardPage .scoreBar,.scorecardPage .scoreDonutPiece{transition-duration:2.1s,2.1s}
 .macroWorkspacePanel:not([hidden]),.reformJourneyPanel:not([hidden]){animation:topicEnter .8s ease both}
 .scorecardPage .chartPrepared:not(.chartVisible) .scoreBar{transform:scaleX(0)}
 .scorecardPage .chartPrepared.chartVisible .scoreBar{transform:scaleX(1)}
}
@keyframes topicEnter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){
 .scorecardNavigation{gap:12px}.scorecardNavigation a{font-size:11px}.scorecardIdentity strong{font-size:13px}.scorecardIdentity span{font-size:10px}.scorecardHomeLink{font-size:10px}
 .publicationPage .footer .footerGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.publicationPage .footer .footerGrid>div:first-child{grid-column:1/-1}
}
@media(max-width:850px){
 .scorecardHeader>.container{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.scorecardNavigation{grid-column:1/-1;grid-row:2;overflow:auto;padding-bottom:1px;gap:22px}.scorecardNavigation a{font-size:12px}.scorecardHomeLink{grid-column:2;grid-row:1}.scorecardPage section[id]{scroll-margin-top:130px}
 .practiceEveryday .practicePanel:not([hidden]){gap:25px}.practiceEveryday .practiceCopy h3{font-size:28px}.practiceEveryday .practicePhoto{height:280px}
 .scorecardPage #faqs>.container{display:block}.faqHeading{position:static}.faqHeading p{max-width:550px}.scorecardPage #faqs .faqs{margin-top:25px}
}
@media(max-width:600px){
 .publicationPage .footer>.wrap{width:calc(100% - 40px)}.publicationPage .footer .footerGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:25px 20px!important}.publicationPage .footer .footerGrid>div:last-child{grid-column:1/-1}.publicationPage .footer .footnote{display:block}.publicationPage .footer .footnote span{display:block;margin-top:7px}
 .readingGuide ol:before{left:24px;right:auto;top:0;bottom:0;width:1px;height:auto}.readingGuide li{display:grid;grid-template-columns:50px minmax(0,1fr);gap:22px}.readingGuide li>span{margin:0}.readingGuideNote{margin-left:72px}.practiceEveryday .practicePanel:not([hidden]){display:block}.practiceEveryday .practicePhoto{height:220px;margin-bottom:22px}.practiceEveryday .practiceCopy{padding:0}.practiceEveryday .practiceCopy h3{font-size:27px}.practiceEveryday .practiceChoice{flex-basis:180px}.faq button strong{font-size:14px}.scorecardPage .faq button{gap:10px}.scorecardPage .faq-answer,.scorecardPage .faq.open .faq-answer{padding-left:34px;padding-right:0}.faqHeading h2{font-size:30px}
}
@media(prefers-reduced-motion:reduce){.motionPrepared,.pageReveal{opacity:1!important;transform:none!important;transition:none!important}.scorecardPage .faq-answer{transition:none}.scorecardPage .chartPrepared .scoreBar{transform:none!important}}
/* One green directional cue on each hero shortcut. */
body.ministryHome .quick:after{color:#bce0a0}
/* The timeline's connected milestone rail remains; the divider below it is removed. */
.aboutPage .journey{border-bottom:0}.aboutPage .journeyEditorial{border-top:0;padding-top:8px}
/* Green contrast across a consistently sized initiatives grid. */
.initiativesPage .initiativeCard{background:#e7f0df;border-color:#c4d8b7;isolation:isolate}
.initiativesPage .initiativeCard:before{content:'';position:absolute;right:-25px;top:-30px;width:145px;height:145px;border:25px solid #006b4009;border-radius:50%;z-index:-1;pointer-events:none}
.initiativesPage .initiativeMark{background:#006b40;border-color:#006b40;color:#fff}
.initiativesPage .initiativeBody .category{color:#3f654a}.initiativesPage .initiativeBody p{color:#4f6959}.initiativesPage .initiativeBody a{border-color:#bfd2b5}
.initiativesPage .initiativeCard:nth-child(3n+1){background:#063d2a;border-color:#063d2a}
.initiativesPage .initiativeCard:nth-child(3n+1):before{border-color:#bce0a00c}
.initiativesPage .initiativeCard:nth-child(3n+1) .initiativeMark{background:#bce0a0;border-color:#bce0a0;color:#153b2b}
.initiativesPage .initiativeCard:nth-child(3n+1) .category{color:#aecaad}.initiativesPage .initiativeCard:nth-child(3n+1) h3{color:#fff}.initiativesPage .initiativeCard:nth-child(3n+1) p{color:#ccddd0}.initiativesPage .initiativeCard:nth-child(3n+1) a{color:#bce0a0;border-color:#ffffff25}
.initiativesPage .initiativeCard:hover{box-shadow:0 15px 30px #063d2a16}
/* Viewport callouts stay readable above charts, animated sections and sticky headers. */
.chartTooltip,.scorecardPage .dataCallout{position:fixed!important;z-index:110!important;width:310px;max-width:calc(100vw - 24px);max-height:calc(100svh - 24px);box-sizing:border-box;padding:16px 18px;border:1px solid #3f6e4f;border-radius:13px;box-shadow:0 12px 35px #041e1630;background:#062b20;color:#fff;pointer-events:none;line-height:1.7;overflow:auto;bottom:auto!important}
.chartTooltip strong,.scorecardPage .dataCallout strong{display:block;color:#d1edb7;font-size:13px;font-weight:750}.chartTooltip p,.scorecardPage .dataCallout p{font-size:12px;color:#d0e0d3;line-height:1.75;margin:8px 0 0}
.fundingLabels>span[role=button],.fundingTrack>i[role=button]{cursor:pointer}
@media(prefers-reduced-motion:no-preference){.chartTooltip:not([hidden]),.scorecardPage .dataCallout{animation:calloutEnter .2s ease}.scorecardPage .scoreDonutPiece{transition:transform 2.1s cubic-bezier(.16,.8,.3,1),opacity 2.1s ease}}
@keyframes calloutEnter{from{opacity:0}to{opacity:1}}
/* Publication artwork stays complete; photographs keep the compact reading-page crop. */
.publicationPage .readingHero.newsReadingHero{max-width:1000px;margin:0 auto 30px;padding:0 5vw}
.publicationPage .readingHero.newsReadingHero>img{aspect-ratio:2.7;max-height:310px;width:100%;object-fit:cover;object-position:center;border-radius:15px}
.publicationPage .readingHero.newsReadingHero figcaption{font-size:11px;line-height:1.6}
.publicationArtwork .storyImage{background:#edf4e9}.publicationArtwork .storyImage img{object-fit:contain!important}
.publicationPage .eventArtwork img{object-fit:contain;height:265px;background:#edf4e9}
.publicationPage .readingArtwork>img{object-fit:contain!important;background:#edf4e9}
.resourceListing h2{margin-top:0!important}.resourceCardDate{display:block;margin-top:11px;color:#65766c;font-size:12px;line-height:1.6}
@media(max-width:600px){.publicationPage .readingHero.newsReadingHero>img{aspect-ratio:2.1;max-height:220px}.publicationPage .eventArtwork img{height:220px}}
/* Platform sharing uses accessible SVG logos rather than text labels. */
.shareTools .socialShareIcon{display:inline-flex;align-items:center;justify-content:center;width:39px;height:39px;padding:10px;border:1px solid #c4d8b7;border-radius:50%;color:#006b40;background:#edf4e9;flex:none}
.shareTools .socialShareIcon svg{width:19px;height:19px;display:block}.shareTools .socialShareIcon:hover{background:#006b40;color:#fff;border-color:#006b40}
/* Centre every shared Ministry footer, including the Scorecard's wrap container. */
.ministryPage .footer>.wrap{width:min(1240px,calc(100% - 64px));margin-inline:auto;padding:0;max-width:100%}
/* Briefing menus use the same three published downloads in the header and hero. */
.briefingMenu{position:relative;flex:none}.briefingMenu summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px}.briefingMenu summary::-webkit-details-marker{display:none}.headerBriefingButton{padding:10px 14px;border-radius:999px;background:#bce0a0;color:#153b2b;font-size:11px;font-weight:750;white-space:nowrap}
.briefingMenuItems{position:absolute;top:calc(100% + 10px);right:0;z-index:120;min-width:255px;padding:9px;background:#fff;border:1px solid #c9d9c0;border-radius:15px;box-shadow:0 16px 45px #041e1633}
.briefingMenuItems a{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:12px 13px;font-size:12px;font-weight:650;color:#153b2b;line-height:1.5;border-radius:8px}.briefingMenuItems a:hover{background:#edf4e9}.briefingMenuItems a span{color:#006b40}.heroBriefingMenu .briefingMenuItems{left:0;right:auto}
.scorecardHeader>.container{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;gap:18px;align-items:center}.scorecardHeader .scorecardNavigation{gap:14px}.scorecardHomeLink{font-size:10px}
/* Reforms have a horizontal policy rail, separate from the fiscal-question workspace. */
.reformPolicySection{background:#062b20;color:#fff;padding:42px 0}.reformPolicySection .kicker{color:#bce0a0}.reformPolicySection h2{font-size:34px;margin:12px 0 16px}.reformPolicySection .lead{color:#b9d1c0;font-size:14px;max-width:900px}
.reformPolicyCarousel{overflow:hidden;margin-top:28px;width:100%;border-radius:16px}.reformPolicyTrack{display:flex;gap:18px;transition:transform .75s cubic-bezier(.2,.8,.2,1)}
.reformPolicyCard{flex:0 0 calc((100% - 36px)/3);min-width:0;min-height:290px;padding:27px;background:linear-gradient(145deg,#174b36,#0b3527);border:1px solid #ffffff20;border-radius:16px;display:flex;flex-direction:column}
.reformPolicyTop{display:flex;justify-content:space-between;align-items:center;padding-bottom:24px;border-bottom:1px solid #ffffff18}.reformPolicyTop span{font-size:48px;line-height:1;font-weight:800;color:#bce0a0;letter-spacing:-.055em}.reformPolicyTop svg{width:36px;height:36px;color:#9ac887}
.reformPolicyCard h3{font-size:24px;line-height:1.25!important;margin:23px 0 13px;color:#fff}.reformPolicyCard p{font-size:14px;color:#c0d7c5;line-height:1.8;margin:0}
.reformPolicyControls{display:flex;align-items:center;justify-content:space-between;margin-top:21px}.reformPolicyControls>span{font-size:12px;color:#b9d1c0}.reformPolicyControls>div{display:flex;gap:9px}.reformPolicyControls button{width:37px;height:37px;border:1px solid #ffffff35;border-radius:50%;background:none;color:#bce0a0;cursor:pointer}
/* The economic scorecard uses the Projects Nigeria macro-indicator format. */
.scorecardPage #indicators{background:#0a3024;color:#fff;padding:42px 0}.scorecardPage #indicators .kicker{color:#bce0a0}.scorecardPage #indicators h2{font-size:34px!important;color:#fff}.scorecardPage #indicators>.container>.lead{color:#b9d1c0;font-size:14px;line-height:1.8}
.scoreIndicatorGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}.scoreIndicator{min-width:0;display:flex;flex-direction:column;background:linear-gradient(135deg,#164631,#103c2b);border:1px solid #ffffff18;border-radius:16px;padding:23px;animation:galleryEnter .6s ease}
.scoreIndicator .indicatorRule{height:2px;width:38px;background:#bce0a0;margin-bottom:17px}.scoreIndicator .indicatorValue{font-size:clamp(24px,2.8vw,36px);font-weight:800;color:#c2e5a6;line-height:1.15;letter-spacing:-.045em;overflow-wrap:anywhere}.scoreIndicator h3{font-size:15px;margin:14px 0 5px;color:#fff;line-height:1.5!important}.scoreIndicator .indicatorPeriod{font-size:11px;color:#a9c5b0;line-height:1.6}
.indicatorComparison{display:flex;gap:11px;align-items:center;margin-top:20px}.indicatorTrend{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#bce0a015;color:#bce0a0;flex:none}.indicatorTrend svg{width:22px;height:22px}.indicatorTrend.trendDown{background:#f1cc6b16;color:#f1cc6b}.indicatorComparison strong{font-size:12px;color:#e8f0e5;line-height:1.5;display:block}.indicatorComparison small{display:block;color:#a9c5b0;font-size:10px;line-height:1.6;margin-top:4px}.scoreIndicator p{font-size:12px;color:#bbd3c3;line-height:1.8;margin:18px 0 0}.indicatorCounter{border-top:1px solid #ffffff20;margin-top:20px;padding-top:15px}.indicatorCounter span{display:block;font-size:10px;color:#b5cbbd}.indicatorCounter strong{display:block;font-size:18px;color:#f1cc6b;margin-top:7px}
/* Everyday outcomes follow Projects Nigeria's Why Invest split introduction and dark slide. */
.benefitDestination{background:#f7f5ec;padding:44px 0}.benefitIntro{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:42px;align-items:center}.benefitLead h2{font-size:35px;margin:13px 0 19px}.benefitLead p{font-size:14px;color:#65766c;line-height:1.9;max-width:420px}.benefitCarousel{min-width:0}.benefitCarousel .practicePanels{position:static}.benefitSlide:not([hidden]){display:grid;grid-template-columns:100px minmax(0,1fr);gap:24px;background:#103e2a;border-radius:18px;padding:30px;min-height:295px;align-items:center}
.benefitVisual{border-right:1px solid #ffffff25;padding-right:17px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.benefitVisual small{font-size:9px;color:#aecaad;line-height:1.6}.benefitVisual strong{font-size:54px;color:#bce0a0;line-height:1.1;letter-spacing:-.06em;margin:12px 0;font-weight:800}.benefitVisual>span{font-size:10px;color:#b9d1c0;line-height:1.7}.benefitCopy>span{font-size:10px;color:#bce0a0;letter-spacing:.1em;text-transform:uppercase}.benefitCopy h3{font-size:25px;color:#fff;line-height:1.25!important;margin:13px 0 15px}.benefitCopy p{font-size:13px;line-height:1.85;color:#bfd3c6;margin:0}
.benefitCarouselFooter{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.benefitCarouselFooter .practiceMenu{display:flex;gap:7px;min-width:0}.benefitCarouselFooter .practiceChoice{width:8px;height:8px;padding:0;background:#bbccb2;border-radius:50%;display:block;border:0}.benefitCarouselFooter .practiceChoice.active{background:#006b40}.benefitCarouselFooter .practiceArrows{margin:0;flex:none}.benefitCarouselFooter .practiceArrows button{color:#006b40;border-color:#adc6a3}
/* FAQs mirror Projects Nigeria's dark topic rail and pale answer workspace. */
.scorecardPage #faqs{background:#edf4e9;padding:42px 0}.scorecardPage #faqs>.container{display:block}.scoreFaqTop{display:flex;justify-content:space-between;align-items:end;gap:30px}.scoreFaqTop h2{font-size:34px;margin:13px 0 0}.scoreFaqSearch{display:block;width:280px;max-width:100%;flex:none}.scoreFaqSearch span{display:block;font-size:11px;color:#65766c;margin-bottom:9px}.scoreFaqSearch input{width:100%;padding:12px 14px;border:1px solid #c9d9c0;background:#fff;border-radius:11px;color:#153b2b;font-size:13px}
.scoreFaqShell{display:grid;grid-template-columns:215px minmax(0,1fr);gap:25px;margin-top:27px}.scoreFaqNav{position:sticky;top:110px;align-self:start;background:#103e2a;padding:18px;border-radius:18px}.scoreFaqNav>span{font-size:9px;letter-spacing:.12em;color:#a4c48b;display:block;padding:8px 9px 17px;text-transform:uppercase}.scoreFaqTopic{display:flex;gap:12px;text-align:left;width:100%;padding:13px 10px;border:0;border-radius:10px;background:none;color:#c1d7bf;font-size:12px;font-weight:650;line-height:1.6;cursor:pointer}.scoreFaqTopic>span{font-size:10px;color:#9fbd90}.scoreFaqTopic.active{background:#bce0a0;color:#153b2b}.scoreFaqTopic.active>span{color:#006b40}
.scoreFaqAnswers{min-width:0}.scoreFaqPanelHead{border-bottom:1px solid #d3e1c9;padding:4px 0 20px;margin-bottom:4px}.scoreFaqPanelHead>span{font-size:10px;letter-spacing:.1em;color:#799669;text-transform:uppercase}.scoreFaqPanelHead h3{font-size:25px;color:#21482f;margin:10px 0 0}.scorecardPage .scoreFaqPanel .faq{border-color:#d3e1c9}.scorecardPage .scoreFaqPanel .faq button{padding:20px 0;color:#36562a}.scorecardPage .scoreFaqPanel .faq.open{background:#f4f8ef;border-radius:12px;padding:0 14px;margin-top:5px}.scoreFaqEmpty{font-size:14px;line-height:1.8;color:#65766c}
@media(max-width:1100px){.scoreIndicatorGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.benefitIntro{gap:28px}.benefitSlide:not([hidden]){grid-template-columns:75px minmax(0,1fr);gap:20px;padding:25px}.benefitVisual strong{font-size:43px}.benefitCopy h3{font-size:23px}}
@media(max-width:950px){.scorecardHeader>.container{grid-template-columns:minmax(0,1fr) auto auto;gap:12px}.scorecardHeader .scorecardIdentity{grid-row:1;grid-column:1}.headerBriefingMenu{grid-column:2;grid-row:1}.scorecardHeader .scorecardHomeLink{grid-column:3;grid-row:1}.scorecardHeader .scorecardNavigation{grid-column:1/-1;grid-row:2}.benefitIntro{grid-template-columns:1fr}.benefitLead p{max-width:750px}.benefitCarousel{max-width:700px;width:100%}.reformPolicyCard{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:650px){.ministryPage .footer>.wrap{width:calc(100% - 40px)}.scorecardHeader>.container{grid-template-columns:minmax(0,1fr) auto}.scorecardHeader .scorecardHomeLink{display:none}.headerBriefingButton{font-size:10px;padding:9px 11px}.briefingMenuItems{min-width:245px;max-width:calc(100vw - 35px)}.scorecardIdentity strong{font-size:12px}.scorecardIdentity img{width:32px;height:32px}.scorecardHeader .scorecardNavigation{gap:21px}.reformPolicyCard{flex-basis:100%;min-height:270px}.reformPolicySection h2,.benefitLead h2,.scoreFaqTop h2{font-size:29px}.scoreIndicatorGrid{grid-template-columns:1fr}.scoreIndicator .indicatorValue{font-size:34px}.benefitSlide:not([hidden]){grid-template-columns:70px minmax(0,1fr);padding:23px;min-height:280px}.benefitCopy h3{font-size:22px}.benefitVisual strong{font-size:40px}.scoreFaqTop{display:block}.scoreFaqSearch{width:100%;margin-top:24px}.scoreFaqShell{grid-template-columns:1fr;gap:20px}.scoreFaqNav{position:static;display:flex;gap:7px;overflow:auto;padding:12px}.scoreFaqNav>span{display:none}.scoreFaqTopic{width:auto;min-width:170px;flex:none}.scoreFaqTopic>span{display:none}.scoreFaqPanelHead h3{font-size:23px}.heroBriefingMenu .briefingMenuItems{left:auto;right:0}}
@media(prefers-reduced-motion:reduce){.reformPolicyTrack{transition:none}.scoreIndicator{animation:none}}
/* A readable header and a consistent sentence title across the Scorecard. */
.scorecardPage .scorecardIdentity strong{font-size:18px;line-height:1.4;letter-spacing:-.02em}.scorecardPage .scorecardIdentity span{font-size:12px}.scorecardIdentity>div{min-width:0}.scorecardPage .scorecardNavigation a{font-size:15px;font-weight:650}.scorecardPage .headerBriefingButton{font-size:13px;padding:11px 16px}.scorecardPage .scorecardHomeLink{font-size:12px}.scorecardPage section[id]{scroll-margin-top:110px}
/* Four compact policy cards make better use of the reform carousel. */
.scorecardPage .reformPolicyCard{flex-basis:calc((100% - 54px)/4);padding:20px;min-height:230px}.scorecardPage .reformPolicyTop{padding-bottom:16px}.scorecardPage .reformPolicyTop>span{font-size:36px}.scorecardPage .reformPolicyTop svg{width:28px;height:28px}.scorecardPage .reformPolicyCard h3{font-size:20px;margin:17px 0 11px}.scorecardPage .reformPolicyCard p{font-size:13px;line-height:1.7}.scorecardPage .reformPolicyCarousel{margin-top:22px}
/* Compact indicator cards reveal again on scrolling; counts also restart on theme changes. */
.scorecardPage .scoreIndicator{padding:18px;border-radius:14px}.scorecardPage .scoreIndicator .indicatorRule{margin-bottom:13px}.scorecardPage .scoreIndicator .indicatorValue{font-size:clamp(24px,2.6vw,31px);min-height:1.2em;font-variant-numeric:tabular-nums}.scorecardPage .scoreIndicator h3{margin:11px 0 3px;font-size:14px}.scorecardPage .indicatorComparison{margin-top:15px;gap:9px}.scorecardPage .indicatorTrend{width:29px;height:29px}.scorecardPage .indicatorTrend svg{width:19px;height:19px}.scorecardPage .scoreIndicator p{margin-top:13px;font-size:11px;line-height:1.75}.scorecardPage .scoreIndicatorGrid{gap:13px;margin-top:20px}
/* Keep FAQ question numbers inside the answer workspace with a fixed column. */
.scorecardPage .scoreFaqPanel .faq button{grid-template-columns:30px minmax(0,1fr) 30px;gap:13px;padding:20px 15px;align-items:start}.scorecardPage .scoreFaqPanel .faqNumber{display:inline-flex;align-items:center;justify-content:center;min-width:0;width:30px;margin:0;padding:4px 0 0;font-size:11px;line-height:1.8;font-variant-numeric:tabular-nums;text-align:center}.scorecardPage .scoreFaqPanel .faq.open{padding:0}.scorecardPage .scoreFaqPanel .faq-answer{padding-left:58px;padding-right:15px}.scorecardPage .scoreFaqPanel .faq.open .faq-answer{padding-left:58px;padding-right:15px}.scorecardPage .scoreFaqTop{display:block}
/* Published materials sit on an open grid, without individual divider lines. */
.scorecardPage .scorecardEvidence .resource{border:0!important;box-shadow:none;padding:12px 0}.scorecardPage .scorecardEvidence .resource:before,.scorecardPage .scorecardEvidence .resource:after{content:none}
@media(prefers-reduced-motion:no-preference){.scorecardPage .scoreIndicator{animation:indicatorEnter 1s cubic-bezier(.2,.75,.25,1) backwards;animation-delay:var(--indicator-delay,0ms)}.scorecardPage #indicators .indicatorRule{transform-origin:left;transition:transform 1.1s ease}.scorecardPage #indicators .pageReveal:not(.pageVisible) .indicatorRule{transform:scaleX(0)}.scorecardPage #indicators .pageVisible .indicatorRule{transform:scaleX(1)}}
@keyframes indicatorEnter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1150px){.scorecardPage .scorecardHeader>.container{grid-template-columns:minmax(0,1fr) auto auto;gap:12px}.scorecardPage .scorecardIdentity{grid-row:1;grid-column:1}.scorecardPage .headerBriefingMenu{grid-row:1;grid-column:2}.scorecardPage .scorecardHomeLink{grid-row:1;grid-column:3}.scorecardPage .scorecardNavigation{grid-row:2;grid-column:1/-1;justify-content:center;gap:27px}.scorecardPage section[id]{scroll-margin-top:145px}.scorecardPage .reformPolicyCard{flex-basis:calc((100% - 36px)/3)}}
@media(max-width:950px){.scorecardPage .reformPolicyCard{flex-basis:calc((100% - 18px)/2)}.scorecardPage .scorecardNavigation{justify-content:start}}
@media(max-width:650px){.scorecardPage .scorecardHeader>.container{grid-template-columns:minmax(0,1fr) auto;gap:12px}.scorecardPage .scorecardIdentity strong{font-size:15px}.scorecardPage .scorecardIdentity span{font-size:11px}.scorecardPage .scorecardIdentity img{width:34px;height:34px}.scorecardPage .scorecardNavigation a{font-size:14px}.scorecardPage .scorecardNavigation{gap:23px}.scorecardPage .headerBriefingButton{font-size:12px;padding:10px 12px}.scorecardPage .reformPolicyCard{flex-basis:100%;min-height:210px}.scorecardPage .scoreIndicator .indicatorValue{font-size:30px}.scorecardPage .scoreFaqPanel .faq button{padding:18px 12px;gap:9px;grid-template-columns:28px minmax(0,1fr) 28px}.scorecardPage .scoreFaqPanel .faqNumber{width:28px}.scorecardPage .scoreFaqPanel .faq-answer,.scorecardPage .scoreFaqPanel .faq.open .faq-answer{padding-left:49px;padding-right:12px}}
@media(prefers-reduced-motion:reduce){.scorecardPage .scoreIndicator{animation:none!important}.scorecardPage #indicators .indicatorRule{transform:none!important;transition:none}}
@media(max-width:650px){.scorecardPage .scorecardNavigation{flex-wrap:wrap;overflow:visible;gap:8px 21px}.scorecardPage section[id]{scroll-margin-top:180px}}
/* Keep the Scorecard header comfortably readable without dominating the page. */
.scorecardPage .scorecardIdentity strong{font-size:16px;line-height:1.4}.scorecardPage .scorecardIdentity span{font-size:11px}.scorecardPage .scorecardNavigation a{font-size:14px}.scorecardPage .headerBriefingButton{font-size:12px;padding:10px 14px}.scorecardPage .scorecardHomeLink{font-size:11px}
@media(max-width:650px){.scorecardPage .scorecardIdentity strong{font-size:14px}.scorecardPage .scorecardIdentity span{font-size:10px}.scorecardPage .scorecardNavigation a{font-size:13px}.scorecardPage .headerBriefingButton{font-size:11px;padding:10px 11px}}
/* Priority visuals illustrate policy themes; publication media stays tied to its release. */
.ministryHome .agendaCard:nth-child(3) .agendaPhoto{object-position:center 20%}.ministryHome .agendaCard:nth-child(5) .agendaPhoto{object-position:center 45%}

/* Publication banners appear within every reading page and retain their full artwork. */
.publicationPage .readingHero.publicationBanner .publicationBannerOpen{display:block;width:100%;padding:0;border:0;background:#edf4e9;border-radius:15px;overflow:hidden}
.publicationPage .readingHero.publicationBanner .publicationBannerOpen img{display:block;width:100%;height:auto;max-height:310px;aspect-ratio:auto;object-fit:contain}
@media(max-width:600px){.publicationPage .readingHero.publicationBanner .publicationBannerOpen img{max-height:220px}}

/* Covers for the Resource Library use the same compact publication treatment. */
.publicationPage .readingHero.publicationBanner>img{width:100%;height:auto;max-height:310px;aspect-ratio:auto;object-fit:contain!important;background:#edf4e9}
.publicationPage .resourceListing{grid-template-columns:116px minmax(0,1fr) 22px;align-items:center}
.resourceCoverThumbnail{display:block;width:116px;overflow:hidden;border-radius:7px;background:#edf4e9}
.resourceCoverThumbnail img{display:block;width:100%;aspect-ratio:1200/630;object-fit:contain}
@media(max-width:600px){.publicationPage .resourceListing{grid-template-columns:90px minmax(0,1fr) 18px}.resourceCoverThumbnail{width:90px}.publicationPage .readingHero.publicationBanner>img{max-height:220px}}

.publicationBodyPhoto{margin:25px 0 35px}.publicationBodyPhoto img{display:block;width:100%;height:280px;object-fit:cover;object-position:center 25%;border-radius:14px}.publicationBodyPhoto figcaption{font-size:11px;line-height:1.6;margin-top:9px;color:#65766c}
@media(max-width:600px){.publicationBodyPhoto img{height:210px}}
/* Six-tile publication pages move independently with directional controls or a swipe. */
.archiveSectionPaging{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:flex-end}.archivePageControls{display:flex;align-items:center;gap:10px}.archivePageControls>a,.archivePageControls>span{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#006b40;color:#fff;font-size:19px}.archivePageControls>span{background:#e5eddf;color:#839787}.archivePageControls small{font-size:11px;color:#65766c;white-space:nowrap}.archiveSection{overflow:hidden}.archiveSection .archiveGrid{touch-action:pan-y;transition:transform .24s ease,opacity .24s ease}.archiveSection.isPageChanging .archiveGrid{opacity:.15;transform:translateX(calc(var(--archive-direction,1)*-48px))}.archiveSection.archivePageIncoming .archiveGrid{animation:archiveTilesIn .46s ease both}@keyframes archiveTilesIn{from{opacity:.15;transform:translateX(calc(var(--archive-direction,1)*48px))}to{opacity:1;transform:translateX(0)}}
@media(max-width:600px){.archiveSectionHeading{align-items:flex-start}.archiveSectionPaging{gap:8px;max-width:145px}.archivePageControls{gap:8px}.archivePageControls>a,.archivePageControls>span{width:31px;height:31px}}
@media(prefers-reduced-motion:reduce){.archiveSection .archiveGrid{transition:none}.archiveSection.archivePageIncoming .archiveGrid{animation:none}}
/* Keep the utility bar aligned and contained on every Ministry page. */
body.ministryHome .topbar,body.ministryPage .topbar{width:100%;box-sizing:border-box}
body.ministryHome .topbar>.wrap,body.ministryPage .topbar>.wrap{width:min(1240px,89vw)!important;max-width:calc(100% - 40px);margin-inline:auto!important;padding-inline:0;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px 20px}
body.ministryHome .topbar>.wrap>span,body.ministryPage .topbar>.wrap>span{min-width:0;max-width:100%;flex:0 1 auto}
body.ministryHome .topbar .toplinks,body.ministryPage .topbar .toplinks{min-width:0;max-width:100%;margin-left:auto;display:flex;flex:0 1 auto;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px 18px}
body.ministryHome .topbar .toplinks a,body.ministryPage .topbar .toplinks a{min-width:0;max-width:100%;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:600px){body.ministryHome .topbar>.wrap,body.ministryPage .topbar>.wrap{gap:5px 12px}body.ministryHome .topbar .toplinks,body.ministryPage .topbar .toplinks{gap:5px 12px}}

/* Agenda icons keep the approved carousel and policy copy. */
body.ministryHome .agendaIconVisual{height:112px;display:flex;align-items:center;padding:24px 25px;background:#164b35;position:relative}
body.ministryHome .agendaIcon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;color:#bce0a0}
body.ministryHome .agendaIcon svg{display:block;width:56px;height:56px}
body.ministryHome .agendaIconVisual:after{content:none}
body.ministryHome .agendaIconVisual .agendaNumber{position:absolute;inset:auto 25px auto auto;top:50%;transform:translateY(-50%);font-size:40px;line-height:1;opacity:1;color:#90b995;background:none;border:0;padding:0;box-shadow:none;width:auto;height:auto;border-radius:0}
/* Unframed media adapts to landscape banners and portrait document covers. */
.publicationPage .eventVisual,.publicationPage .eventVisual.eventBanner{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;align-self:center}
.publicationPage .readingHero.publicationBanner,.publicationPage .readingHero.readingArtwork{background:transparent;border:0;box-shadow:none}
.publicationPage .readingHero.publicationBanner .publicationBannerOpen,.publicationPage .eventImageOpen{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.publicationPage .readingHero.publicationBanner .publicationBannerOpen img,.publicationPage .readingHero.publicationBanner>img,.publicationPage .readingHero.readingArtwork>img,.publicationPage .eventBanner .eventImageOpen img{display:block;width:auto;max-width:100%;height:auto;max-height:400px;aspect-ratio:auto;object-fit:contain!important;margin-inline:auto;border:0;border-radius:0;background:transparent;box-shadow:none}
/* Smaller document thumbnails leave the title as the focus of resource cards. */
.publicationPage .resourceListing{grid-template-columns:64px minmax(0,1fr) 22px;gap:15px;align-items:center}
.publicationPage .resourceCoverThumbnail{display:flex;align-items:center;justify-content:center;width:64px;height:48px;border:0;border-radius:0;background:transparent}
.publicationPage .resourceCoverThumbnail img{width:auto;height:auto;max-width:100%;max-height:100%;aspect-ratio:auto;object-fit:contain}
@media(max-width:600px){body.ministryHome .agendaIconVisual{height:100px}.publicationPage .resourceListing{grid-template-columns:56px minmax(0,1fr) 18px;gap:12px}.publicationPage .resourceCoverThumbnail{width:56px;height:42px}.publicationPage .readingHero.publicationBanner .publicationBannerOpen img,.publicationPage .readingHero.publicationBanner>img,.publicationPage .readingHero.readingArtwork>img,.publicationPage .eventBanner .eventImageOpen img{max-height:300px}}

/* Compact portrait covers on resource cards; the detail banner stays landscape. */
.publicationPage .resourceCoverThumbnail{width:64px;height:86px;aspect-ratio:3/4}
.publicationPage .resourceCoverThumbnail img{width:100%;height:100%;aspect-ratio:3/4;object-fit:contain}
@media(max-width:600px){.publicationPage .resourceCoverThumbnail{width:56px;height:75px}}

/* Shared Ministry typography: homepage proportions also apply to the scorecard. */
:root{--ministry-header-title-size:15px;--ministry-header-subtitle-size:10px;--ministry-nav-size:13px;--ministry-footer-size:13px}
.scorecardPage .scorecardIdentity strong{font-size:var(--ministry-header-title-size)!important;line-height:1.3;letter-spacing:.01em}
.scorecardPage .scorecardIdentity span{font-size:var(--ministry-header-subtitle-size)!important;line-height:1.4;margin-top:4px}
.scorecardPage .scorecardNavigation a,.scorecardPage .headerBriefingButton,.scorecardPage .scorecardHomeLink{font-size:var(--ministry-nav-size)!important;line-height:1.5}
body.ministryHome .footer,body.ministryPage .footer{font-size:var(--ministry-footer-size)}
body.ministryHome .footer :is(p,a,h4,b,strong,small,span,address),body.ministryPage .footer :is(p,a,h4,b,strong,small,span,address){font-size:var(--ministry-footer-size)!important;line-height:1.7!important}
@media(max-width:1250px){.scorecardPage{--ministry-nav-size:12px}}
@media(max-width:600px){.scorecardPage{--ministry-header-title-size:13px;--ministry-header-subtitle-size:9px}}

.editorialCard .storyImage img[src$="/wage-award.jpg"]{object-position:70% 65%}
