/*
Theme Name: BlankSlate
Theme URI: https://opencollective.com/blankslate
Author: Web Guy
Author URI: https://opencollective.com/blankslate#section-contributors
Description: Donate: https://opencollective.com/blankslate. Learn: https://blankslate.me/. BlankSlate is the definitive WordPress boilerplate starter theme. I've carefully constructed the most clean and minimalist theme possible for designers and developers to use as a base to build websites for clients or to build completely custom themes from scratch. Clean, simple, unstyled, semi-minified, unformatted, and valid code, SEO-friendly, jQuery-enabled, no programmer comments, standardized and as white label as possible, and most importantly, the CSS is reset for cross-browser-compatability, with no intrusive visual CSS styles added whatsoever. A perfect skeleton theme. For support and suggestions, go to: https://github.com/webguyio/blankslate/issues. Thank you.
Tags: accessibility-ready, one-column, two-columns, custom-menu, featured-images, microformats, sticky-post, threaded-comments, translation-ready
Version: 2026
Requires at least: 5.2
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v3 or Later
License URI: https://www.gnu.org/licenses/gpl.html
Text Domain: blankslate

BlankSlate WordPress Theme 2011-2026
BlankSlate is distributed under the terms of the GNU GPL
*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{appearance:none;border-radius:0}input[type="search"]{appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}
body, html {
    overflow-x: hidden !important;
}*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

:root {
  --navy:      #0c2451;
  --navy-deep:   #091a3b;
  --navy-border: #1A4A70;
  --green:       #69b141;
  --green-light: #7EDDB8;
  --blue-light:  #7EC8E3;
  --off-white:   #F0F6F4;
  --off-white-2: #EAF4FB;
  --mid-blue:    #E0EEF7;
  --border:      #C2D8E0;
  --text-dark:   #0D1F3C;
  --text-mid:    #3A5A7C;
  --text-muted:  #3A7A9C;
  --text-stat:   #3A6A8C;
	
	 /* Sector block colours */
  --sector-power:     #1976ac;
  --sector-transport: #1E5E6A;
  --sector-industry:  #2A4E6E;
  --sector-buildings: #2A6068;
  --sector-agrifood:  #5E7A2A;
  --sector-circular:  #3A7048;
	
	 /* Sector tag colours */
  --tag-power-text:     #1976ac;;
  --tag-power-bg:       #b7def5;
  --tag-transport-tec-cthuxt: #1E5E6A;
  --tag-transport-bg:   #D4E8EC;
  --tag-industry-text:  #2A4E6E;
  --tag-industry-bg:    #D4DCE8;
  --tag-buildings-text: #2A6068;
  --tag-buildings-bg:   #D4E6E8;
  --tag-agrifood-text:  #5E7A2A;
  --tag-agrifood-bg:    #E4EECC;
  --tag-circular-text:  #3A7048;
  --tag-circular-bg:    #D8EAD8;
	
	  /* Article category tag colours */
  --tag-investments-text: #1B4B82;
  --tag-investments-bg:   #D4E6F8;
  --tag-insights-text:    #1A7A5A;
  --tag-insights-bg:      #C8F0E2;
  --tag-news-text:        #2A4870;
  --tag-news-bg:          #D0DDF5;
  --tag-fund-text:        #0D2A4A;
  --tag-fund-bg:          #C8D8E8;
  --tag-portfolio-text:   #1A6B5A;
  --tag-portfolio-bg:     #C8EEE4;

  /* Featured article thumb colours */
  --thumb-investments: linear-gradient(135deg, #1B4B82, #2A6AA0);
  --thumb-insights:    linear-gradient(135deg, #1A7A5A, #2A9A70);
  --thumb-news:        linear-gradient(135deg, #2A4870, #1C3A5A);
  --thumb-fund:        linear-gradient(135deg, #0D2A4A, #1A4A70);
  --thumb-portfolio:   linear-gradient(135deg, #1A6B5A, #2A8A6A);
}

html { scroll-behavior: smooth; }

body {
  font-family: 'DM Sans', sans-serif!important;
  background: var(--off-white);
  color: var(--text-dark);
  -webkit-font-smoothing: antialiased;
}
.main {
	 max-width: 1100px;
    margin: 0 auto;
	padding-bottom: 40px;
    padding: 0 0rem 2rem 0rem;
}
.entry-content {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 0rem 2rem 0rem;
}
.breadcrumbs  {	
		max-width: 1100px; padding-left: 0px!important;
    margin-left: auto!important;  margin-right: auto!important;
margin-bottom: 15px!important;	 font-size: 15px;	line-height: 140%;
	
}
article.portfolio{
  background: transparent!important;
padding: 0rem 1.5rem;
}
.entry-content  a{
text-decoration: underline!important;
}
.single-wrapper {
	width: 100%;
    padding-right: 1rem;
    padding-left: 1rem;
    margin-right: auto;
    margin-left: auto;
}
.single-wrapper #breadcrumbs {
	margin-top: 50px!important;
}
 .main.archive-header {
	width: 100%!important; 
	max-width: 1100px;
	 padding-right: 0rem;
    padding-left: 0rem;
    margin-right: auto;
    margin-left: auto;
 padding: 0 0rem;
	text-align: left!important;	
	margin-top: 50px!important;	
		margin-bottom: 40px!important;
}
.archive-header {
	width: 100%!important; 
	max-width: 1100px;
	 padding-right: 0rem;
    padding-left: 0rem;
    margin-right: auto;
    margin-left: auto;
	text-align: left!important;	
	margin-top: 50px!important;	
		margin-bottom: 40px!important;
}
#breadcrumbs {	
		max-width: 1100px; padding-left: 0px!important;
    margin-left: auto;
margin-bottom: 15px!important;	 font-size: 15px;	line-height: 140%; 
	
}

.breadcrumb_last {
	font-weight: 600;
}
.main .breadcrumbs  {
		max-width: 1100px; margin-right: auto;
    margin-left: auto;
margin-bottom: 15px!important;	 font-size: 15px;	line-height: 140%;  	margin-top: 50px!important;	  padding: 0 0.5rem;
}
.archive-header  h1.entry-title {
max-width: 100%!important;
		text-align: left!important;
	 font-size: clamp(42px, 5vw, 48px); color: var(--navy);
}
.main .archive-header {
margin-top: 20px!important;	
}
.wp-block-separator {
	width: 100%!important; 	max-width: 1100px; border-bottom: 0.2px solid var(--green)!important; margin: 10px 0;
}
.addtoany_list a, .widget .addtoany_list {
    border: 0;
    box-shadow: none;
    display: inline-block;
    font-size: 16px;
    padding: 0 4px;
    vertical-align: middle;
	background: color: var(--navy)!important;
}
.a2a_svg{ width: 35px!important; height: 35px!important;border-radius: 50%!important; padding:5px!important; color: white!important; }
.header {
	width: 100%!important; 
    margin: 0 auto!important;
    padding: 40px 0 40px 0;
	text-align: center!important;
}

h1.entry-title  {
  font-family: Georgia, serif!important;
  font-size: clamp(42px, 5vw, 60px);
  line-height: 1.08;
  color: var(--navy);
  margin: 0 0 2rem;
  max-width: 100%!important;
  font-weight: 400;
}
.entry-meta { margin: 2rem 0 0 0!important; padding: 0rem 0 0 5px!important;
}
.wp-block-group.has-background {
	   background: var(--off-white-2)!important;
    border: 0.5px solid var(--border)!important; border-radius: 10px;
	padding: 1.5rem!important;
}
h2 {
  font-family: Georgia, serif;
  font-size: clamp(22px, 2vw, 28px);
  color: var(--navy);
  font-weight: 400;
  margin: 0.5rem 0 0.5rem;
}
h2.wp-block-heading {
 font-family: Georgia, serif;
  font-size: clamp(22px, 2vw, 28px);
  color: var(--navy);
  font-weight: 400;
  margin: 0 0 0.5rem; line-height: 130%;
}
h3 {
	letter-spacing: 0.02em!important;
}
h3.wp-block-heading {font-family: Georgia, serif;
  font-size: 19px;
  color: var(--navy);
  font-weight: 400;
  margin: 0 0 0.75rem;
	letter-spacing: 0.02em!important; line-height: 1.2;
}
h4.wp-block-heading {font-family: Georgia, serif;
  font-size: 19px;
  color: var(--navy);
  font-weight: 400;
  margin: 0 0 0.75rem;
}
.single-wrapper .entry-content p{
	max-width: 1100px!important;
font-size: 16px;
    line-height: 1.35;
    margin: 0 0 0.75rem 0!important;
	
}
.entry-content p{
	max-width: 1100px!important;
font-size: 16px;
    line-height: 1.25;
    margin: 0 0 0.5rem 0!important;	 
}
.single-wrapper .entry-content ul {
    padding-bottom: 20px;
}
.single-wrapper .entry-content ul li {
list-style-type: disc;
	max-width: 1100px!important;
font-size: 16px!important;
    line-height: 1.25;
   color: var(--text-mid);
    margin: 0 0 0.5rem 45px!important;
    padding-bottom: 0px;
    letter-spacing: 0.3px;
}
.single-wrapper .entry-content ol li {
list-style-type: numeric;
	max-width: 1100px!important;
font-size: 16px!important;
    line-height: 1.25rem;
    color: var(--text-mid);
    margin: 0px 0 0rem 45px!important;
    padding-bottom: 0px;
    letter-spacing: 0.3px;
}
ol.wp-block-list li {
list-style-type: numeric;
	max-width: 1100px!important;
font-size: 16px!important;
    line-height: 1.25rem;
    color: var(--text-mid);
    margin: 0.5rem 0 0.5rem 45px!important;
    padding-bottom: 0px;
    letter-spacing: 0.3px;
}
ul.wp-block-list li {
list-style-type: disc!important;
	max-width: 1100px!important;
font-size: 16px!important;
    line-height: 1.25rem;
      color: var(--text-mid);
    margin: 0.5rem 0 0.5rem 45px!important;
    padding-bottom: 0px;
    letter-spacing: 0.3px;
}
.entry-content p strong {
font-weight: 600;
}
.alignfull {
	width: 100vw; margin-left: calc(50% - 50vw);
}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color: var(--off-white-2);   color: var(--text-mid)!important;
}
.page-id-17770 .entry-content {
		width: 100vw; max-width: 100vw; height: auto; margin-left: calc(50% - 50vw);
	background-image: url(/wp-content/uploads/2020/04/gordon-williams-NaWJWzmprZQ-unsplash-scaled-1.jpg);
}
.page-id-17770 .wp-block-group.alignwide {
	width: 100%;  max-width: 1100px!important; height: auto; margin-left: calc(50% - 550px);
}
@media (max-width: 992px){
.page-id-17770 .wp-block-group.alignwide {
	width: 100%;  max-width: 1100px!important; height: auto; margin-left: calc(50% - 50%); padding: 0 2rem;
}

}

.wp-block-image {
	padding-bottom: 10px;
}
.wp-block-image img{
	width: 100%!important; 	max-width: 100%!important;  
    height: auto!important; 
	border-radius: 10px;
}
.entry-content .wp-block-image .aligncenter {
		width: 100%!important; 	max-width: 100%!important;  
}
.wp-block-column .wp-block-image .aligncenter img {
width: auto!important; 	
    height: auto!important; 
	border-radius: 10px;
	margin: 0 auto;
}
.wp-block-image .alignright  {
max-width: 150px;
 margin: 0 0 .5em 1em!important;  border-radius: none!important;
}
.wp-block-image .alignright img {
border-radius: 0!important; 
}
.wp-block-media-text>.wp-block-media-text__content {
    direction: ltr;
    grid-column: 2;
    grid-row: 1;
	padding: 0 4% 0 6%;
}
	.wp-block-media-text__media  {
	width: 100%!important;
		max-width: 100%!important; height: auto!important; 
	aspect-ratio: 16 / 9!important; object-fit:cover!important; overflow:hidden!important; 
}
	.wp-block-media-text__media img {
	width: 100%!important;
		max-width: 100%!important; height: auto!important; 
	aspect-ratio: 16 / 9!important; object-fit:cover!important; overflow:hidden!important; 
}
.wp-element-caption{
   color: var(--text-mid)!important;
    font-size: 13px!important;
    text-align: center;
	font-style: italic!important;
	margin-top: 15px;
}
p {
   color: var(--text-mid);  
}
a {color: var(--navy); text-decoration: none!important;}
article a {
	text-decoration: none!important;color: var(--navy);
}
img { display: block; width: 100%!important;max-width: 100%!important; height: auto!important;}

button { cursor: pointer; }
#page .site{}
.sector-thumb .st-circular.img:has(img[src*=“svg”]) {
 display: block !important;
}
/* Navigation */
.site-header { 
position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: #F0F6F4;;
 }
#container {
    padding-top: var(--header-height, 80px); 
}
.site-header-inner {
	align-items: center; 	width: 100%!important;
	padding: 0.5rem; 
column-gap: var(--wp--custom--spacing--grid-gap);
max-width: var(--wp--custom--grid-base);
padding-bottom: 0.75rem;
padding-left: var(--wp--custom--spacing--container-padding-inline);
padding-right: var(--wp--custom--spacing--container-padding-inline);
z-index: 15;
justify-content: space-between;
margin-left: auto;
margin-right: auto;
		padding: 0.75rem 2.5rem!important;
display: flex;
position: relative;
	border-bottom: 1px solid #0D2A4A;
}
.menu-cta .menu-cta--mobile {
	display:none;
}
.menu-cta .menu-sus--mobile {
	display:none;
}
@media(min-width:1920px) {
	.site-header-inner {
		width: 100%!important;
		min-width: 1920px!important;
	}
}
.nav-logo {
  font-family: Georgia, serif;
  font-size: 16px;
  color: var(--text-dark);
  text-decoration: none;
  display: flex;
  align-items: start!important;

  gap: 8px;
}

.nav-logo-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--green);
  flex-shrink: 0;
}
#nav .nav-primary.nav-menu {

}
#nav.nav-primary{
	position: sticky;
  top: 0;
  z-index: 100;
  background: var(--off-white);
  border-bottom: 0.5px solid var(--border-mid);
  padding: 0 2.5rem;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  backdrop-filter: blur(8px);
width: auto; margin: 0 auto!important;
}
#nav .nav-primary .nav-menu { display:inline!important; }
.site-branding {
	width: auto!important;
}
.custom-logo-link img{ width: 180px!important; height: auto; 
}
.footer-logo img{ width: 180px!important; height: auto; padding-bottom: 5px;
}
.menu-items-wrapper {
	 background: var(--off-white)!important; 
}
#main-menu.menu{ display:inline!important;
}
.menu-item {
  display:inline;
  padding: 0.75rem!important; 
  list-style: none;	
	color: var(--text-dark);
  font-weight: 500;
  padding-bottom: 10px;
}
.menu-item a {
 	  font-size: 13px;
  color: var(--text-muted);
  text-decoration: none;
  letter-spacing: 0.02em;
  transition: color 0.2s;
}
.menu-item a:hover { color: var(--text-dark); }
.nav-links a.active {
    color: var(--text-dark);
  font-weight: 500;
  border-bottom: 1.5px solid var(--green);
  padding-bottom: 2px;
}
.menu-item [aria-current=page]  {
  color: var(--text-dark);
  font-weight: 500;
  border-bottom: 1.5px solid var(--green);
  padding-bottom:2px;
}
.menu-item li[aria-current=page]::after   {
	content: "";
  width:100%;
  display:block;
  color: var(--text-dark);
  font-weight: 500;
   border-bottom: 1.5px solid var(--green);
  padding-bottom: 2px;
}
	.nav {
		 align-items: center!important;
   justify-content: center!important;
	}
/* Desktop — position it outside the nav visually */
.top-cta ul  {
list-style-type: none!important;
}
.top-cta li{ 
	display:flex;
	list-style-type: none!important;
	  justify-content: flex-end!important;
  list-style-type: none; 
	margin-top: .5rem;
		margin-bottom: .5rem;	
}
@media (max-width: 768px) {
    .nav-primary .nav-cta {
        display: block;
        padding: 0.75rem 1.5rem; max-width: 160px!important;
			margin: 0 1rem;
    }
	.menu-cta {  background: var(--off-white)!important;
	padding-bottom: 20px!important;
}
 li.menu-cta::marker { content: ""!important;
}
}
@media (max-width: 768px) {
	.top-cta {display: none;
    }
    .nav-cta--desktop {
        display: none;
    }
	.nav-sus--desktop {display: none;
    }
}
@media (max-width: 768px) {
	#nav.nav-primary.nav-menu {
		
	}
.nav-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    z-index: 100;
}

.hamburger-bar {
    display: block;
    width: 24px;
    height: 2px;
    background: var(--text-dark, #111);
    border-radius: 2px;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

/* Animate to X when open */
.nav-toggle.is-open .hamburger-bar:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
}
.nav-toggle.is-open .hamburger-bar:nth-child(2) {
    opacity: 0;
}
.nav-toggle.is-open .hamburger-bar:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
}
}
@media (max-width: 768px) {
	.hero, .page-hero {
		height: 500px!important;
	}
	.hero{
	height: auto;	min-height: 450px!important;
	}
	  .site-header-inner {
        position: relative;
    }
    #nav.nav-primary {
        display: none;
        position: absolute;
        top: 100%;
			width: 100vw;
       left: 50%;
			transform: translateX(-50%);
        right: 0;
        border-top: 1px solid var(--border, #eee);
        padding: 1rem 0;
        z-index: 99;	 
    }
    #nav.nav-primary ul {
		   background: var(--off-white)!important;
        flex-direction: column;
        gap: 0;
    }
    .nav-primary ul li a {
        display: block;
padding: 0.25rem 1.5rem;
margin:  0 1rem;
    }
    #nav.nav-primary.is-open {
        display: block;
    }
    .nav-toggle {
        display: flex;
    }
 #nav.nav-primary {
        display: none;
    }
    #nav.nav-primary.is-open {
        display: block;
    }
    .nav-cta {
        display: none; /* or move inside the mobile menu */
    }
	.menu-cta {
	padding: 8px 18px;
}
.menu-cta .menu-sus--mobile {
	display:inline;
	list-style-type: none!important;
  font-family: 'DM Sans', sans-serif!important;
 	background:  #69b141;
	color:  #0c2451;
	font-size:13px!important; font-weight: 500!important; padding: 8px 16px;
  border-radius: 100px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
}
.menu-cta .menu-cta--mobile {
	display:inline;
	list-style-type: none!important;
  font-family: 'DM Sans', sans-serif!important;
  font-size: 13px;
  font-weight: 500;
 	background: #0c2451;!important;
	 color: var(--off-white-2);
  border: none;
  padding: 8px 25px;
  border-radius: 100px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
}
}
@media (max-width: 600px) {
	.hero, .page-hero {
		height: 500px!important;
	}
	.hero{
	height: auto;	min-height: 630px!important;
	}
}
.nav-cta {
	list-style-type: none!important;
  font-family: 'DM Sans', sans-serif!important;
  font-size: 13px;
  font-weight: 500;
  background: var(--text-dark);
  color: var(--off-white-2);
  border: none;
  padding: 8px 18px;
  border-radius: 100px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
}
.nav-cta--desktop {
	list-style-type: none!important;
	font-size:13px!important; font-weight: 500!important;  padding: 8px 25px;
}
.nav-sus--desktop {
	list-style-type: none!important;
	background:  #69b141;
	color:  #0c2451;
	font-size:13px!important; font-weight: 500!important; padding: 8px 16px;
}
.nav-sus--desktop:hover {
background: #5e9e3a!important;  transform: translateY(-1px); }

.nav-sus--desktop:hover, .nav-sus--mobile:hover {
background: #5e9e3a!important;  transform: translateY(-1px); }

.nav-primary .nav-cta {
    display: none;
}

.nav-cta:hover { background: var(--navy); transform: translateY(-1px); }
.nav-primary .nav-cta {
    display: none;
}
 li.menu-cta::marker { content: ""!important; list-style-type: none!important;
}
li.nav-sus--desktop::marker {
	content: ""!important; list-style-type: none!important;
}
li.menu-cta{ list-style-type: none!important;
}

.menu-item{
		 font-family: 'DM Sans', sans-serif!important;
}

/* ??? Hero ??????????????????????????????????????????????????????? */
.hero {
  background: var(--navy);
  padding: 4rem 2.5rem 0 3.5rem;
  position: relative;
  overflow: hidden;
	min-height: 430px;
}

/* Subtle decorative circle in top-right */
.hero::after {
  content: '';
  position: absolute;
  right: -120px;
  top: -120px;
  width: 480px;
  height: 480px;
  border-radius: 50%;
  border: 0.5px solid rgba(126,200,227,0.10);
  pointer-events: none;
}

.hero::before {
  content: '';
  position: absolute;
  right: -30px;
 top: -30px;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  border: 0.5px solid rgba(126,200,227,0.10);
  pointer-events: none;
}
/* ??? Page Hero ?????????????????????????????????????????????????? */

.page-hero {
  background: var(--navy);
  padding: 4rem 2.5rem 3.5rem;
	height: 430px;
}
 p.eyebrow{
  font-size: 14px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--blue-light);
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  gap: 10px;
}

 p.eyebrow::before {
  content: '';
  display: block;
  width: 24px;
  height: 1px;
  background: var(--blue-light);
  flex-shrink: 0;
}
.section-label { font-size: 14px!important; text-transform: uppercase; letter-spacing: 0.12em; color:  #0c2451; margin-bottom: 1.5rem!important; display: flex; align-items: center; gap: 8px; }
.section-label::before { content: ''; display: block; width: 16px; height: 1px; background: var(--blue-light); flex-shrink: 0; }
.section-label--light { color: var(--blue-light); }
.section-label--light::before { background: var(--blue-light); }
/* Article category tags — reusable mixin */
.cat-tag {
  font-size: 11px!important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 500;
  display: inline-block;
  padding: 3px 9px;
  border-radius: 100px;
  width: fit-content;
}
.cat-investments { color: var(--tag-investments-text); background: var(--tag-investments-bg); }
.cat-insights    { color: var(--tag-insights-text);    background: var(--tag-insights-bg); }
.cat-news        { color: var(--tag-news-text);        background: var(--tag-news-bg); }
.cat-fund        { color: var(--tag-fund-text);        background: var(--tag-fund-bg); }
.cat-portfolio   { color: var(--tag-portfolio-text);   background: var(--tag-portfolio-bg); }
h1 {
  font-family: Georgia, serif!important;
  font-size: clamp(42px, 5vw, 60px);
  line-height: 1.08;
  color: #EAF4FB;
  margin: 0 0 2rem;
  max-width: 640px;
  font-weight: 400;
}

h1 em {
  font-style: italic;
  color: #69b141;
}
.page-hero h1 {
  font-family: Georgia, seri!important;
  font-size: clamp(42px, 5vw, 60px);
  line-height: 1.08;
  color: #EAF4FB;
  margin: 0 0 2rem;
  max-width: 640px;
  font-weight: 400;
}
.hero h1{
  font-family: Georgia, seri!important;
  font-size: clamp(42px, 5vw, 50px);
  line-height: 1.08;
  color: #EAF4FB;
  margin: 0 0 2rem;
  max-width: 640px;
  font-weight: 400;
}

h1 em .hero h1, .page-hero h1 em,{
  font-style: italic;
  color: var(--green-light);
}

.hero-sub {
  font-size: 16px;
  line-height: 1.65;
  color:  #7EC8E3;
  max-width: 460px;
  margin-bottom: 2.5rem;
  font-weight: 300;
}

.hero-ctas {
  display: flex;
  gap: 14px;
  align-items: center;
  margin-bottom: 4rem;
}

.btn-primary, .wp-block-buttons .wp-block-button__link {
  font-size: 14px;
  font-weight: 500;
  background: var(--green);
  color: #091a3b;
  border: none;
  padding: 13px 26px;
  border-radius: 100px;
  transition: background 0.2s, transform 0.15s; text-decoration:none!important; 
}
.btn-primary:hover, .wp-block-buttons:hover .wp-block-button__link:hover { background: #5e9e3a; transform: translateY(-1px); text-decoration: none!important; }

.btn-ghost {
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  color: var(--blue-light);
  background: none;
  border: none;
  transition: color 0.2s;
}
.btn-ghost:hover { color: #EAF4FB; }

/* Stats ticker */
.hero-stats {
  padding-top: 1.75rem;
  border-top: 0.5px solid var(--navy-border);
  display: flex;
  gap: 3rem;
}

.stat-label {
  font-size: 13px!important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color:  #EAF4FB!important;
  margin-bottom: 5px; line-height: 130%;
}

.stat-val {
  font-family: Georgia, serif!important;
  font-size: 28px;
  color: #EAF4FB;
  line-height: 1;
}
/* Stats Bar */
.stats-bar { 
  background: var(--navy-deep);
  border-bottom: 0.5px solid var(--navy-border);
  padding: 1.75rem 2.5rem;
  display: flex;
}
.stats-bar .stat {
  flex: 1;
  padding-right: 2rem;
  border-right: 0.5px solid var(--navy-border);
  margin-right: 2rem;
}
.stats-bar .stat:last-child { border-right: none; margin-right: 0; }

.stat-sub {
  font-size: 11px;
  color: var(--text-stat);
  margin-top: 3px;
}

/* ??? Our Belief ????????????????????????????????????????????????? */
.belief {
  background: var(--off-white-2);
  padding: 3.5rem 2.5rem;
  border-bottom: 0.5px solid var(--border);
}
.belief-inner {
  display: flex;
  gap: 2rem;
  align-items: flex-start;
}

.belief-bar {
  width: 3px;
  background: var(--green);
  border-radius: 2px;
  flex-shrink: 0;
  align-self: stretch;
  min-height: 100%;
}

.belief blockquote {
  font-family: Georgia, serif!important;
  font-size: clamp(18px, 2vw, 23px);
  line-height: 1.5;
  color: #0D2A4A;
  font-style: italic;
  font-weight: 400;
  margin: 0 0 1.25rem;
  max-width: 700px;
}

.belief-attr-name {
  font-size: 13px;
  font-weight: 500;
  color: var(--text-dark);
  margin-bottom: 3px;
}

.belief-attr-role {
  font-size: 12px;
  color: var(--text-muted);
  font-weight: 300;
}

/* ??? Latest News ???????????????????????????????????????????????? */
.news {
  background: var(--off-white);
  padding: 3rem 2.5rem;
  border-bottom: 0.5px solid var(--border);
}

.news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 1.25rem;
}

.news-card {
  background: #fff;
  border: 0.5px solid var(--border);
  border-radius: 10px;
  padding: 1.25rem;
  transition: border-color 0.2s, transform 0.2s;
  text-decoration: none;
  display: block;
  color: inherit;
}

.news-card:hover {
  border-color: var(--green);
  transform: translateY(-2px);
}

.news-tag {
  font-size: 14px!important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #2A8A63;
  font-weight: 500;
  background: #D4F0E4;
  display: inline-block;
  padding: 3px 8px;
  border-radius: 100px;
  margin-bottom: 0.7rem;
}
.news-card h3 {
  font-family: Georgia, serif!important;
  font-size: 16px;
  line-height: 1.4;
  margin: 0 0 0.75rem;
  color: var(--text-dark);
  font-weight: 400;
}

.news-date {
  font-size: 14px!important;
  color: var(--text-muted);
}
/* Company card */
.co-card {
  background: #fff;
  border: 0.5px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  text-decoration: none!important;
  color: inherit;
  transition: border-color 0.2s, transform 0.2s, opacity 0.3s;height: 100%!important;
}
 a.co-card{ text-decoration: none!important;
}
.co-card:hover { border-color: #9AC8D0; transform: translateY(-2px); }
.co-card.hidden {
  display: none;
}
/* ??? Portfolio Preview ?????????????????????????????????????????? */
/* ─── Portfolio Preview ────────────────────────────────────────── */

.portfolio {
  background: var(--mid-blue);
  padding: 3rem 2.5rem;
  border-bottom: 0.5px solid var(--border);
}

.portfolio-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;

}
.portfolio-head h2 {
  font-family: Georgia, serif;
  font-size: 26px;
  color: var(--text-dark);
  font-weight: 400;
  margin: 0;
}

.portfolio-head p {
  font-size: 16px;
  color: var(--text-muted);
  margin-top: 4px;
}
.portfolio-head .btn-ghost-green {
	justify-content: center!important;
  font-family: 'DM Sans', sans-serif;
  font-size: 24px;
  color: #2A8A63;
  background: none;
  border: none;
  transition: color 0.2s;
  white-space: nowrap;
}
.btn-ghost-green {
  font-family: 'DM Sans', sans-serif;
  font-size: 24px;
	font-weight: 600;
  color: #2A8A63;
  background: none;
  border: none;
  transition: color 0.2s;
  white-space: nowrap;
	margin-top: 15px;
}

.btn-ghost-green:hover { color: #1A6848; }

.co-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.co-card {
  background: #fff;
  border: 0.5px solid var(--border);
  border-radius: 8px;
  padding: 0rem!important;
  transition: border-color 0.2s, transform 0.2s;
  text-decoration: none;
  display: block;
  color: inherit;
}

.co-card:hover {
  border-color: #9AC8D0;
  transform: translateY(-2px);
}

.co-name {
  font-size: 13px;
  font-weight: 500;
  color: var(--text-dark);
  margin-bottom: 4px;
}

.co-desc {
  font-size: 16px;
color: var(--text-mid)!important;
  line-height: 1.5;
}

.co-sector {
  margin-top: 10px;
  font-size: 14px!important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 500;
}

.s-industry  { color: #2A4E6E; }
.s-power     { color: #1D5C2E; }
.s-transport { color: #1E5E6A; }
.s-buildings { color: #2A6068; }
.s-agrifood  { color: #5E7A2A; }

/* Portfolio Single */
h1.entry-title {
    text-align: center !important;
   font-family: Georgia, serif;
    display: block;
     font-size: 30px;
    color: #29235C;
   color: var(--text-dark);
  font-weight: 400;
  margin: 0;
}
.btn-ghost-green {
  font-family: 'DM Sans', sans-serif;
  font-size: 24px;
	font-weight: 600;
  color: #2A8A63;
  background: none;
  border: none;
  transition: color 0.2s;
  white-space: nowrap;
	margin-top: 15px;
}

.btn-ghost-green:hover { color: #1A6848; }

.co-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;text-decoration: none!important;
}

.co-card {
	overflow: hidden;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  background: #fff;
  border: 0.5px solid var(--border);
  border-radius: 8px;
  padding: 1rem;
  transition: border-color 0.2s, transform 0.2s;
  text-decoration: none!important;
  display: block;
  color: inherit;
}

.co-card:hover {
  border-color: #9AC8D0;
  transform: translateY(-2px);
}

.co-name {
  font-size: 13px;
  font-weight: 500;
  color: var(--text-dark);
  margin-bottom: 4px;
}

.co-desc {
  font-size: 14px;
  line-height: 1.3;
  color: var(--text-muted);
  flex: 1; 
	text-decoration: none!important;
}

.co-sector {
  margin-top: 10px;
  font-size: 14px!important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 500;
}

.s-industry  { color: #2A4E6E; }
.s-power     { color: #1D5C2E; }
.s-transport { color: #1E5E6A; }
.s-buildings { color: #2A6068; }
.s-agrifood  { color: #5E7A2A; }

/* ??? Stats Bar ?????????????????????????????????????????????????? */
.stats-bar {
  background: var(--navy-deep);
  border-bottom: 0.5px solid var(--navy-border);
  padding: 1.75rem 2.5rem;
  display: flex;
}
.stats-bar .stat {
  flex: 1;
  padding-right: 2rem;
  border-right: 0.5px solid var(--navy-border);
  margin-right: 2rem;
}
.stats-bar .stat:last-child { border-right: none; margin-right: 0; }
.stat-label {
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--text-stat);
  margin-bottom: 5px;
}
.stat-val {
  font-family: Georgia, serif;
  font-size: 26px;
  color: #EAF4FB;
  line-height: 1;
}

/* ??? Filter Bar ????????????????????????????????????????????????? */
.filter-bar {
  background: var(--off-white);
  border-bottom: 0.5px solid var(--border);
  padding: 0 2.5rem;
  display: flex;
  align-items: center;
  gap: 8px;
  height: 56px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.filter-bar::-webkit-scrollbar { display: none; }

.filter-btn {
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  padding: 6px 15px;
  border-radius: 100px;
  border: 0.5px solid var(--border);
  background: #fff;
  color: var(--text-muted);
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  flex-shrink: 0;
}
.filter-btn:hover:not(.active) {
  background: var(--off-white-2);
  border-color: var(--blue-light);
}
.filter-btn.active {
  background: var(--navy);
  color: #EAF4FB;
  border-color: var(--navy);
  font-weight: 500;
}
/* CGF Team */
.team-section { background: var(--off-white); padding: 3rem 2.5rem; border-bottom: 0.5px solid var(--border); }
.team-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }

/* Beverley — full-width featured */
.featured-row { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 2fr; border-radius: 12px; overflow: hidden; background: #fff; border: 0.5px solid var(--border); transition: border-color 0.2s; margin-bottom: 16px;}
.featured-row:hover { border-color: #9AC8D0; 
}
.featured-avatar {

  background: linear-gradient(135deg, #0D2A4A, #1A4A70);
  background-size: cover;
  background-position: center top;
  display: flex; align-items: start; justify-content: center;
  font-family: Georgia, serif; font-size: 44px; color: rgba(234,244,251,0.7); overflow:hidden;
	
}
.featured-avatar img { 
width: 100%!important;
  height: 100%!important;
  object-fit: cover!important;

}
.featured-body { padding: 1.75rem; display: flex; flex-direction: column; justify-content: center; }

.featured-role { font-size: 14px; color: var(--green); font-weight: 500; text-transform: uppercase; letter-spacing: 0.07em; margin-bottom: 0.7rem; }
.featured-bio { font-size: 14px; line-height: 1.4; color: var(--text-mid); max-width: 620px; }
.obe-badge { display: inline-flex; align-items: center; gap: 6px; background: white; border: 0px solid var(--border); border-radius: 100px; padding: 3px 0px; font-size: 13px; color: var(--text-dark); font-weight: 500; margin-bottom: 0.7rem; width: fit-content; }

/* Standard person card */
.person-card { background: #fff; border: 0.5px solid var(--border); border-radius: 12px; overflow: hidden; display: flex; flex-direction: column; transition: border-color 0.2s, transform 0.2s; }
.person-card:hover { border-color: #9AC8D0; transform: translateY(-2px); }
.person-avatar {
  width: 100%; aspect-ratio: 16 / 9!important;
  background: linear-gradient(135deg, #0D2A4A, #1A4A70);
  background-size: cover; background-position: center top;
  display: flex; align-items: start; justify-content: center;
  font-family: Georgia, serif; font-size: 26px; color: rgba(234,244,251,0.7);
  flex-shrink: 0; overflow: hidden;
}
.person-body { padding: 1.1rem; flex: 1; display: flex; flex-direction: column; }
.entry-header {
display:flex; justify-content: space-between!important; align-items: center;
}
.person-name {  font-family:  Georgia, serif; font-size: 24px; color: var(--text-dark); font-weight: 400; margin: 0 0 3px; 
}
#featured.entry-header {
max-width: 590px;
}
.featured-name { font-family:  Georgia, serif; font-size: 24px; color: var(--text-dark); font-weight: 400; margin: 0 0 3px; }
.linked { width: 18px;
}
h2{ padding:0.5rem 0; }
.person-role { font-size: 14px; color: #5e9e3a; font-weight: 500; text-transform: uppercase; letter-spacing: 0.07em; margin-bottom: 0.65rem; }
.person-bio { font-size: 14px; line-height: 1.3; color: var(--text-mid); flex: 1; }

/* CLT section */
.clt-section { background: var(--off-white-2); padding: 3rem 2.5rem; border-bottom: 0.5px solid var(--border); }
.clt-intro { margin-bottom: 1.5rem; }
.clt-intro h2 { font-family:  Georgia, serif; font-size: clamp(20px, 2vw, 24px); color: var(--navy); font-weight: 400; margin: 0 0 0.4rem; }
.clt-intro p { font-size: 16px!important; color: var(--text-muted); line-height: 1.65; max-width: 640px; margin: 0; }
.clt-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.clt-about-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }

/* Advisory board */
.advisory-section { background: var(--mid-blue); padding: 3rem 2.5rem; border-bottom: 0.5px solid var(--border); }
.advisory-intro { margin-bottom: 1.75rem; }
.advisory-intro h2 { font-family:  Georgia, serif; font-size: clamp(20px, 2vw, 24px); color: var(--navy); font-weight: 400; margin: 0 0 0.4rem; }
.advisory-intro p { font-size: 16px!important; color: var(--text-mid); line-height: 1.7; max-width: 600px; margin: 0; }
.advisory-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }

/* Shared vertical card for CLT and Advisory */
.av-card { background: #fff; border: 0.5px solid var(--border); border-radius: 12px; overflow: hidden; display: flex; flex-direction: column; transition: border-color 0.2s, transform 0.2s; }
.av-card:hover { border-color: #9AC8D0; transform: translateY(-2px); }
.av-card .av-head { display: flex; align-items: start; justify-content: center; font-family:  Georgia, serif; font-size: 22px; }
.av-head {
	aspect-ratio: 16 / 9; overflow: hidden;
}
.av-card.clt-style .av-head { background: linear-gradient(135deg, #1A3A5A, #2A6A8A); color: rgba(234,244,251,0.7); }
.av-card.adv-style .av-head { align-items: start; background: linear-gradient(135deg, #1A3A5C, #2A6080); color: rgba(234,244,251,0.65); }
#post-19417.av-card.adv-style .av-head{
	 align-items: start;
}
.av-card .av-body { padding: 1.1rem; flex: 1; display: flex; flex-direction: column; }
.av-card .av-name { font-family:  Georgia, serif; font-size: 24px; color: var(--text-dark); font-weight: 400; margin: 0 0 3px; }
.av-card.clt-style .av-role { font-size: 14px; color:#5e9e3a; font-weight: 500; text-transform: uppercase; letter-spacing: 0.07em; margin-bottom: 0.6rem; }
.av-card.adv-style .av-role { font-size: 14px; color: #7BA8C4; font-weight: 500; text-transform: uppercase; letter-spacing: 0.07em; margin-bottom: 0.6rem; }
.av-card .av-bio { font-size: 14px; line-height: 1.3; color: var(--text-mid); flex: 1; }
.tbc { color: #B0B8C4; font-style: italic; }

/* ??? Portfolio Grid ????????????????????????????????????????????? */
.portfolio-section {
  padding: 2.5rem;
  background: var(--off-white);
}

.portfolio-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 1.5rem;
}

.portfolio-count {
  font-size: 14px;
  color: var(--text-muted);
  transition: opacity 0.2s;
}

.co-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
	text-decoration: none!important;
}

/* Company card */
.co-card {
  background: #fff;
  border: 0.5px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.2s, transform 0.2s, opacity 0.3s;text-decoration: none!important;
}
.co-card:hover { border-color: #9AC8D0; transform: translateY(-2px); }
.co-card.hidden {
  display: none;
}

/* Sector thumb — coloured block with inline SVG icon */
.co-thumb {
  height: 90px!important;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.co-thumb-power  { fill: #1D5C2E!important;  background: #1976ac!important;}
.co-thumb-transport{fill: #1E5E6A;; background: #1E5E6A;!important;}
.co-thumb-agrifood { fill: #5E7A2A; background: #5E7A2A;!important; }
.co-thumb-industry { fill: #2A4E6E; background: #2A4E6E!important; }
.co-thumb-buildings  { fill: #2A6068; background:  #2A6068!important; }
.co-thumb-circulareconomy  { fill: #3A7048; background:  #3A7048!important;  }
.co-thumb.img:has(img[src*=“svg”]) {
 display: block !important;fill: #ffffff!important;color: #ffffff!important;
}
.co-thumb svg{
fill:white!important; color: #ffffff!important;
}
.co-thumb img{
	max-width:40%;
  max-height: 40%;
  object-fit: contain; 
}
#post-19567 .co-thumb img, #post-19559 .co-thumb img, #post-20084 .co-thumb img{
	max-width:80%;
  min-height: 60%;
  object-fit: contain; 
}
#post-19559 .co-thumb img, #post-19566 .co-thumb img{
	max-width:80%;
  min-height: 50%;
  object-fit: contain; 
}
#post-19563 .co-thumb img, #post-19564 .co-thumb img{
	max-width:80%;
  max-height: 35%;
  object-fit: contain; 
}
#post-19608 .co-thumb img{
	max-width:80%;
  max-height: 30%;
  object-fit: contain; 
}
#post-19568 .co-thumb img, #post-19562 .co-thumb img{
	max-width:80%;
  max-height: 25%;
  object-fit: contain; 
}
.co-body {
  padding: 1rem;
  display: flex;
  flex-direction: column;
	align-items: flex-start!important;
	text-decoration: none!important;
}
.co-body a{
text-decoration: none!important;
}
p a {text-decoration: none!important;}
/* Sector tag */
.sector-tag {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 500;
  display: inline-block;
  padding: 3px 8px;
  border-radius: 100px;
  margin-bottom: 0.55rem;
  width: fit-content;
}
.sector {
	display: flex!important;
  flex-wrap: wrap!important;
  gap: 8px!important;
  align-items: center!important;
justify-content: center!important;
}
.sector-tag-navy  { color: var(--off-white);     background: var(--navy); 
}
.sector-tag-power     { color: var(--tag-power-text);     background: var(--tag-power-bg); 
}
.sector-tag-transport {color: var(--tag-transport-text); background: var(--tag-transport-bg); }
.sector-tag-industry  { color: var(--tag-industry-text);  background: var(--tag-industry-bg); }
.sector-tag-buildings { fcolor: var(--tag-buildings-text); background: var(--tag-buildings-bg); }
.sector-tag-agrifood  { color: var(--tag-agrifood-text);  background: var(--tag-agrifood-bg); }
.sector-tag-circulareconomy  { color: var(--tag-circular-text);  background: var(--tag-circular-bg); }

.co-name {
  font-family:  Georgia, serif;
  font-size: 16px;
  color: var(--text-dark);
  font-weight: 400;
  margin: 0 0 0.35rem;
}

/* ─── Our Story ────────────────────────────────────────────────── */
.story {
  background: var(--off-white);
  padding: 3.5rem 2.5rem;
  border-bottom: 0.5px solid var(--border);
}

.story-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3.5rem;
  align-items: start;
}

.story h2 {
  font-family: Georgia, serif;
  font-size: clamp(24px, 2.5vw, 32px);
  line-height: 1.25;
  color: var(--navy);
  font-weight: 400;
  margin: 0 0 1.25rem;
}

.story p {
  font-size: 16px;
  line-height: 1.8;
  color: var(--text-mid);
  margin: 0 0 1rem;
}
.story p:last-of-type { margin-bottom: 0; }

.founded-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: var(--off-white-2);
  border: 0.5px solid var(--border);
  border-radius: 100px;
  padding: 5px 13px;
  font-size: 11px;
  color: var(--text-dark);
  font-weight: 500;
  margin-bottom: 1.4rem;
}
.founded-dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--green);
}

.focus-card {
  background: var(--off-white-2);
  border: 0.5px solid var(--border);
  border-radius: 12px;
  padding: 1.3rem;
  margin-bottom: 10px;
}
.focus-card:last-child { margin-bottom: 0; }

.focus-label {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--text-muted);
  margin-bottom: 8px;
}
.focus-val {
  font-family: Georgia, serif;
  font-size: 18px;
  color: var(--navy);
  font-weight: 400;
}
.focus-desc {
  font-size: 14px;
  color: var(--text-mid);
  line-height: 1.65;
  margin-top: 4px;
}

/* ─── Recognition ──────────────────────────────────────────────── */
.recognition {
  background: #EDE9E0!important;
  padding: 3.5rem 2.5rem;
  border-bottom: 0.5px solid var(--border);
}
.recognition-intro {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 3rem;
  align-items: end;
  margin-bottom: 2.5rem;
}
.recognition-intro h2 {
  font-family: Georgia, serif;
  font-size: clamp(22px, 2vw, 28px);
  color: var(--navy);
  font-weight: 400;
  margin: 0;
  line-height: 1.3;
}
.recognition-intro p {
  font-size: 16px!important;
  color: var(--text-mid);
  line-height: 1.6;
  margin: 0;
}

/* Timeline */
.timeline { display: flex; flex-direction: column; }

.year-group { display: grid; grid-template-columns: 64px 1fr; }

.year-col {
  padding-top: 1rem;
  padding-right: 1.5rem;
  text-align: right;
  position: relative;
}
.year-label {
  font-family: Georgia, serif;
  font-size: 18px;
  color: var(--navy);
}
.year-line {
  position: absolute;
  right: 0; top: 0; bottom: 0;
  width: 1px;
  background: var(--border);
}
.year-dot {
  position: absolute;
  right: -4px;
  top: 1.3rem;
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--green);
  border: 2px solid var(--warm-off);
}

.awards-col {
  padding: 0 0 2rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.award-row {
  background: #fff;
  border: 0.5px solid var(--border);
  border-radius: 12px;
padding: 1.5rem 2.5rem; 
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 1rem;
  transition: border-color 0.2s;
}
.award-row:hover { border-color: #9AC8D0; }
.award-row.featured { background: var(--navy); border-color: var(--navy-border); padding: 1.5rem 2.5rem; }
.award-org { font-size: 16px; font-weight: 600; color: var(--text-dark); margin-bottom: 2px; }
.award-title { font-size: 16px; color: var(--text-mid); line-height: 1.4; }
.award-row.featured .award-org { color: #EAF4FB; }
.award-row.featured .award-title { color: #7BA8C4; }

.award-badge {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.03em;
  white-space: nowrap;
  padding: 4px 10px;
  border-radius: 100px;
}
.badge-fund     { background: #D4F0E4; color: #091a3b; }
.badge-personal { background: #D4E6F8; color: #091a3b; }
.badge-featured { background: var(--green); color:#091a3b; }
.badge-bcorp    { background: #D4EDCC; color: #315a2f; }

/* ─── Our Impact ───────────────────────────────────────────────── */
.impact {
  background: var(--navy);
  padding: 3.5rem 2.5rem;
  border-bottom: 0.5px solid var(--navy-border);
}

.impact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: center;
}

.impact-left h2 {
  font-family: Georgia, serif;
  font-size: clamp(22px, 2vw, 28px);
  line-height: 1.3;
  color: #EAF4FB;
  font-weight: 400;
  margin: 0 0 1rem;
}
.impact-left p {
  font-size: 16px;
  line-height: 1.7;
  color:#7EC8E3;;
  font-weight: 300;
  margin: 0;
}

.impact-number-wrap { text-align: right; }
.impact-number {
  font-family: Georgia, serif;
  font-size: clamp(56px, 7vw, 80px);
  line-height: 1;
  color: var(--green);
}
.impact-number-label {
  font-size: 14px;
  color:#EAF4FB;
  margin-top: 0.6rem;
}
.sustainability-label{
	 margin-top: 1rem!important;
}
.sustainability-label a {
	 font-size: 17px;
  color: #7EC8E3!important;
	text-decoration: underline!important;
}

/* ─── Sectors ──────────────────────────────────────────────────── */
.sectors {
  background: var(--off-white-2);
  padding: 3.5rem 2.5rem;
  border-bottom: 0.5px solid var(--border);
}

.sectors h2 {
  font-family: Georgia, serif;
  font-size: clamp(22px, 2vw, 28px);
  color: var(--navy);
  font-weight: 400;
  margin: 0 0 0.5rem;
}
.sectors-sub {
  font-size: 15px;
  color: var(--text-muted);
  margin-bottom: 2rem;
}
.sector-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 12px;
}
.sector-card {
  background: #fff;
  border: 0.5px solid var(--border);
  border-radius: 10px;
  padding: 1.2rem 0.75rem;
  text-align: center;
  transition: border-color 0.2s, transform 0.2s;
  text-decoration: none;
  display: block;
  color: inherit;
}
.sector-card:hover { border-color: #9AC8D0; transform: translateY(-2px); }

.sector-thumb {
  width: 44px; height: 44px;
  border-radius: 8px;
  margin: 0 auto 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.st-power     { fill:   #b7def5!important;  background:      #1976ac!important;}
.st-transport {fill: #1E5E6A; background: #1E5E6A!important;}
.st-industry  {  background: #2A4E6E!important; }
.st-buildings { fill: #2A6068; background: #2A6068!important; }
.st-agrifood  { fill: #5E7A2A; background:  #5E7A2A!important; }
.st-circular  { fill: #3A7048; background:  #3A7048;!important;  }

.sector-name {
  font-size: 11px;
  font-weight: 500;
  color: var(--navy);
  line-height: 1.3;
}

/* ─── How We Support ───────────────────────────────────────────── */
.support {
  background: var(--mid-blue);
  padding: 3.5rem 2.5rem;
  border-bottom: 0.5px solid var(--border);
}

.support h2 {
  font-family: Georgia, serif;
  font-size: clamp(22px, 2vw, 28px);
  color: var(--navy);
  font-weight: 400;
  margin: 0 0 2rem;
  max-width: 480px;
}

.support-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.support-card {
  background: #fff;
  border: 0.5px solid var(--border);
  border-radius: 10px;
  padding: 1.5rem;
  transition: border-color 0.2s, transform 0.2s;
}
.support-card:hover { border-color: #9AC8D0; transform: translateY(-2px); }

.wp-block-getwid-custom-post-type__post-title {
	font-family: Georgia, serif;
  font-size: 18px;
  color: var(--text-dark);
  font-weight: 400;
  margin: 0 0 0.6rem;
	text-decoration:none;
	line-height: 120%;
}
.wp-block-getwid-custom-post-type__post-title a {
	text-decoration:none!important;
}
.support-card p {
  font-size: 16px;
  line-height: 1.5;
  color: var(--text-muted);
  margin-top: 5px;
}

/* ─── CLT ──────────────────────────────────────────────────────── */
.clt {
  background: var(--off-white);
  padding: 3.5rem 2.5rem;
  border-bottom: 0.5px solid var(--border);
}e
.clt h2 {
  font-family: Georgia, serif;
  font-size: clamp(22px, 2vw, 28px);
  color: var(--navy);
  font-weight: 400;
  margin: 0 0 1rem;
}
.clt p {
  font-size: 16px;
  line-height: 1.8;
  color: var(--text-mid);
  margin: 0 0 1rem;
}

.clt-link {
  font-size: 13px;
  font-weight: 500;
  color: #2A8A63;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: color 0.2s;
}
.clt-link:hover { color: #1A6848; }

.clt-info-card {
  background: var(--off-white-2);
  border: 0.5px solid var(--border);
  border-radius: 12px;
  padding: 1.75rem;
}
.clt-info-card-label {
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--text-muted);
  margin-bottom: 0.75rem;
}
.clt-info-card h3 {
  font-family: Georgia, serif;
  font-size: 19px;
  color: var(--navy);
  font-weight: 400;
  margin:1.5rem 0 0.75rem;
}
.clt-info-card p {
  font-size: 16px;
  color: var(--text-mid);
  line-height: 1.7;
  margin: 0;
}

/* ─── Advisory Board ───────────────────────────────────────────── */
.advisory-section {
  background: var(--mid-blue);
  padding: 3rem 2.5rem;
  border-bottom: 0.5px solid var(--border);
}

.advisory-intro { margin-bottom: 1.75rem; }
.advisory-intro h2 {
  font-family: Georgia, serif;
  font-size: clamp(20px, 2vw, 24px);
  color: var(--navy);
  font-weight: 400;
  margin: 0 0 0.4rem;
}
.advisory-intro p {
  font-size: 13px;
  color: var(--text-mid);
  line-height: 1.7;
  max-width: 600px;
  margin: 0;
}

.advisory-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.advisory-card {
  background: #fff;
  border: 0.5px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: border-color 0.2s, transform 0.2s;
}
.advisory-card:hover { border-color: #9AC8D0; transform: translateY(-2px); }

.advisory-avatar {
  height: auto;
  background: linear-gradient(135deg, #1A3A5C, #2A6080);
  display: flex;
  align-items: start!important;
  font-family: Georgia, serif;
  font-size: 22px;
  color: rgba(234, 244, 251, 0.65);
  flex-shrink: 0;
}

.advisory-body { padding: 1.1rem; flex: 1; display: flex; flex-direction: column; }
.advisory-name {
  font-family: Georgia, serif;
  font-size: 15px;
  color: var(--text-dark);
  font-weight: 400;
  margin: 0 0 3px;
}
.advisory-role {
  font-size: 10px;
  color: #7BA8C4;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  margin-bottom: 0.65rem;
}
.advisory-bio {
  font-size: 11px;
  line-height: 1.65;
  color: var(--text-mid);
  flex: 1;
}

/* Featured Article */
.featured {
  background: var(--off-white-2);
  padding: 2rem 2.5rem;
  border-bottom: 0.5px solid var(--border-mid);
}

.featured-header {
  margin-bottom: 1.5rem;
}

.featured-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem;
  align-items: center;
}
.featured-thumb {
  border-radius: 10px!important;
  width: 100%;
	  aspect-ratio: 16 / 8!important;
	  height: auto!important;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden!important;
  flex-shrink: 0;
}
.featured-thumb img {
  width: 100%;
  height: 100%;
	  aspect-ratio: 16 / 9;
  object-fit: contain!important;
  border-radius: 10px!important;
}
.featured-thumb--investments { background: var(--thumb-investments); }
.featured-thumb--insights    { background: var(--thumb-insights); }
.featured-thumb--news        { background: var(--thumb-news); }
.featured-thumb--fund        { background: var(--thumb-fund); }
.featured-thumb--portfolio   { background: var(--thumb-portfolio); }

.featured-meta {
  font-size: 14px;
  color: var(--text-muted);
  margin: 0.75rem 0;
  display: flex;
  align-items: center;
  gap: 6px;
}
.featured-meta::before {
  content: '';
  display: block;
  width: 12px; height: 1px;
  background: var(--blue-light);
}

.featured-content h2 {
  font-family: Georgia, serif;
  font-size: clamp(20px, 2.5vw, 26px);
  line-height: 1.3;
  color: var(--navy);
  font-weight: 400;
  margin: 0 0 0.875rem;
}

.featured-excerpt p {
  font-size: 16px;
  line-height: 1.7;
  color: var(--text-mid);
  margin-bottom: 1.25rem;
}

.read-more {
  font-size: 14px;
  font-weight: 500;
  color: var(--green);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: color 0.2s;
}
.read-more:hover { color: #2E8A68; }

/* ─── Article Grid ─────────────────────────────────────────────── */
.news-section {
  padding: 2.5rem;
  background: var(--off-white);
}

.news-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 1.5rem;
}
.news-count {
  font-size: 11px;
  color: var(--text-muted);
  transition: opacity 0.2s;
}
.news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.article-card {
  background: #fff;
  border: 0.5px solid var(--border-mid);
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.2s, transform 0.2s;
}
.article-card:hover { border-color: #9AC8D0; transform: translateY(-2px); }

.article-thumb {
  height: auto;
  flex-shrink: 0;
  overflow: hidden;
}
.article-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.article-thumb--investments { background: var(--thumb-investments); }
.article-thumb--insights    { background: var(--thumb-insights); }
.article-thumb--news        { background: var(--thumb-news); }
.article-thumb--fund        { background: var(--thumb-fund); }
.article-thumb--portfolio   { background: var(--thumb-portfolio); }

.article-body {
  padding: 1.1rem;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.article-title {
  font-family: Georgia, serif;
  font-size: 17px;
  line-height: 1.4;
  margin: 0.6rem 0 0.5rem;
  color: var(--text-dark);
  font-weight: 400;
  flex: 1;
}

.article-footer {
  font-size: 14px;
  color: var(--text-muted);
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 0.5px solid var(--border);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.article-cta {
  font-size: 14px;
  font-weight: 500;
  color: var(--green);
}

/* ─── Load More ────────────────────────────────────────────────── */
.load-more-wrap {
  padding: 2rem 2.5rem 2.5rem;
  background: var(--off-white);
  border-bottom: 0.5px solid var(--border-mid);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.875rem;
}

/* Progress bar */
.progress-track {
  width: 100%;
  max-width: 340px;
  height: 2px;
  background: var(--border-mid);
  border-radius: 2px;
  overflow: hidden;
}
.progress-fill {
  height: 100%;
  background: var(--green);
  border-radius: 2px;
  transition: width 0.4s ease;
}

.progress-label {
  font-size: 11px;
  color: var(--text-muted);
}

.load-more-btn {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: var(--navy);
  background: #fff;
  border: 0.5px solid var(--border-mid);
  padding: 11px 36px;
  border-radius: 100px;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s;
  display: flex;
  align-items: center;
	justify-content: center;
  gap: 8px;
  margin-top: 1rem;
	margin-bottom: 16px;
}
.load-more-btn:hover { background: var(--off-white-2); border-color: var(--blue-light); }
.load-more-btn:disabled { opacity: 0.45; cursor: default; }

.load-more-btn .spinner {
  width: 14px; height: 14px;
  border: 1.5px solid var(--border-mid);
  border-top-color: var(--navy);
  border-radius: 50%;
  display: none;
  animation: spin 0.7s linear infinite;
}
.load-more-btn.loading .spinner { display: block; }
.load-more-btn.loading .btn-label { display: none; }

@keyframes spin { to { transform: rotate(360deg); } }
.all-loaded-msg {
  font-size: 12px;
  color: var(--green);
  font-weight: 500;
  display: none;
}

/* ??? CTA Band ??????????????????????????????????????????????????? */
.cta-band {
  background: var(--navy);
  padding: 3.5rem 2.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
}

.cta-band h2 {
  font-family: Georgia, serif;
  font-size: clamp(20px, 2vw, 26px);
  color: #EAF4FB;
  font-weight: 400;
  margin: 0;
  max-width: 550px;
  line-height: 1.4;
}
.footer-social {
  background: var(--navy);
  padding: 2.5rem 2.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
	border-top: 0.5px solid rgba(255,255,255,0.12);
}
.footer-social ul {
	display: flex!important;  
	align-items: center!important; 
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-social li {display:inline-block; }

.klaviyo_form_trigger {
 background: var(--navy);
     border: 0.5px solid  #EAF4FB;
    border-radius: 4px;
	  color: #EAF4FB;
	padding: 0.5rem 0.75rem;
}
.klaviyo_form_trigger:hover, .klaviyo_form_trigger:focus  {background: var(--navy);
     border: 0.5px solid  #EAF4FB;
    border-radius: 4px;
	  color: #EAF4FB;
	padding: 0.5rem 0.75rem;
}
#linkedin img {max-width: 18px!important; margin-right: 0.75rem; 
}
#youtube img {max-width: 30px!important; 
}

/* ??? Footer ????????????????????????????????????????????????????? */
.footer {
  background: var(--navy);
  border-top: 0.5px solid var(--navy-border);
  padding: 2rem 2.5rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.footer-logo {
  font-family: Georgia, serif;
  font-size: 18px;
  color: #EAF4FB;
  margin-bottom: 8px;
  text-decoration: none;
}

.footer-links {
  display: flex;
  gap: 1.25rem;
  list-style: none;
}

.footer-links a {
  font-size: 11px;
  color: #3A7ABE;
  text-decoration: none;
  transition: color 0.2s;
}

.footer-links a:hover { color: #7EC8E3; }

.footer-right { text-align: right; }

.footer-certs {
  font-size: 16px;
  color: #3A7ABE;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.footer-certs ul {
	display:flex;
  list-style: none;
	height: 60px!important; 
  padding: 0;
  
}
.footer-certs ul li {
	margin-left: auto!important; 
}
.footer-certs li {display:inline-block; align-content: center!important;
 padding: 0!important; margin: 0px!important;
}
#bcorp, #pri, #nzam {
	height: 60px;
}
#bcorp img{
	width: auto; height:50px!important; 
}
#pri img{
		width:110px!important; height:auto!important; 
}
#nzam img{
width:110px!important; height:auto!important; 
}
.footer-legal {
  font-size: 12px;
  color:  #3A7ABE;
  max-width: 350px;
  line-height: 1.55;
}
.footer-copyright{
  font-size: 12px;
  color:  #3A7ABE;
  max-width: 350px;
  line-height: 1.55;
	 margin-top: 6px;
}

/* ??? Responsive ????????????????????????????????????????????????? */
@media (max-width: 900px) {
  .nav-links { display: none; }
  .news-grid { grid-template-columns: 1fr; }
  .co-grid   { grid-template-columns: repeat(2, 1fr); }
  .hero-stats { flex-wrap: wrap; gap: 1.5rem; }
  .cta-band  { flex-direction: column; align-items: flex-start; }
  .footer    { flex-direction: column; gap: 1.5rem; }
  .footer-right { text-align: left; }
}

@media (max-width: 600px) {
  .hero    { padding: 3rem 1.25rem 2.5rem; }
  .belief  { padding: 2.5rem 1.25rem; }
  .news    { padding: 2.5rem 1.25rem; }
  .portfolio { padding: 2.5rem 1.25rem; }
  .cta-band { padding: 2.5rem 1.25rem; }
  .footer  { padding: 1.75rem 1.25rem; }
  .co-grid { grid-template-columns: 1fr; }
}
@media (max-width: 1000px) {
  .sector-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 860px) {
  .nav-links { display: none; }
  .story-grid,
  .recognition-intro,
  .impact-grid,
  .clt-grid { grid-template-columns: 1fr; gap: 2rem; }
	 .clt-about-grid { grid-template-columns: 1fr; gap: 2rem; }
  .impact-number-wrap { text-align: left; }
  .support-grid { grid-template-columns: 1fr; }
  .cta-band { flex-direction: column; align-items: flex-start; }
  .footer { flex-direction: column; gap: 1.5rem; }
  .footer-right { text-align: left; }
  .footer-legal { max-width: 100%; }
}
@media (max-width: 600px) {
  .page-hero,
  .story, .recognition,
  .impact, .sectors,
  .support, .clt,
  .cta-band, .footer { padding-left: 1.25rem; padding-right: 1.25rem; }
  .stats-bar { flex-wrap: wrap; gap: 1.25rem; padding: 1.25rem; }
  .stats-bar .stat { border-right: none; margin-right: 0; min-width: 40%; }
  .sector-grid { grid-template-columns: repeat(2, 1fr); }
  .year-group { grid-template-columns: 52px 1fr; }
}
/* Responsive */
@media (max-width: 1100px) {

  .team-grid { grid-template-columns: repeat(2, 1fr); }
  .clt-grid { grid-template-columns: repeat(2, 1fr); }
	  .clt-about-grid { grid-template-columns: repeat(2, 1fr); }
  .advisory-grid { grid-template-columns: repeat(2, 1fr); }
  .featured-row { grid-template-columns: 1fr 1fr; }
		 .featured-row { grid-template-columns: 1fr; }
	 .featured-avatar { aspect-ratio: 6.1 / 4; }
}
@media (max-width: 860px) {
  .nav-links { display: none; }
  .cta-band { flex-direction: column; align-items: flex-start; }
	 .featured-row { grid-template-columns: 1fr; }
	 .featured-avatar { aspect-ratio: 6.1 / 4; }
  .footer { flex-direction: column; gap: 1.5rem; }
  .footer-right { text-align: left; }
  .footer-legal { max-width: 100%; }
}
@media (max-width: 560px) {
  .page-hero, .team-section, .clt-section, .advisory-section, .cta-band, .footer { padding-left: 1.25rem; padding-right: 1.25rem; }
  .team-grid { grid-template-columns: 1fr; }
  .clt-grid  { grid-template-columns: 1fr; }
.clt-about-grid  { grid-template-columns: 1fr; }
  .advisory-grid { grid-template-columns: 1fr; }
  .featured-row { grid-template-columns: 1fr; }
  .featured-avatar { aspect-ratio: 6.1 / 4; }
}
@media (max-width: 960px) {
  .news-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 800px) {
  .nav-links       { display: none; }
  .featured-inner  { grid-template-columns: 1fr; }
  .featured-thumb  { height: 200px; }
  .newsletter      { grid-template-columns: 1fr; gap: 1.75rem; }
  .cta-band        { flex-direction: column; align-items: flex-start; }
  .footer          { flex-direction: column; gap: 1.5rem; }
  .footer-right    { text-align: left; }
  .footer-legal    { max-width: 100%; }
}
@media (max-width: 560px) {
  .page-hero,
  .featured,
  .news-section,
  .load-more-wrap,
  .newsletter,
  .cta-band,
  .footer { padding-left: 1.25rem; padding-right: 1.25rem; }
  .news-grid { grid-template-columns: 1fr; }
}
