/* SEDFA Corporate redesign styles extracted from sedfa-dynamic/index.html */
:root{
  --green:#0B6E37;        /* primary action - #fff on it ≈6.3:1 AA */
  --green-deep:#0A3D22;   /* dark surfaces / headings */
  --green-mid:#0F8140;    /* accent green (from logo) */
  --green-leaf:#5D9E4B;   /* lighter foliage accent from the identity mark */
  --green-forest:#174D32; /* supporting institutional surface */
  --gold:#B29530;         /* large graphic accent only */
  --gold-text:#7A6620;    /* text-safe gold, 5.68:1 */
  --orange:#C24E12;       /* tertiary accent */
  --orange-deep:#A8420D;  /* text-safe orange surface */
  --warm-dark:#263127;    /* logo-aligned neutral; replaces cool navy */
  --cream:#F6F2E9; --paper:#FBF9F3;
  --ink:#22261F;          /* body ≈13:1 on white */
  --muted:#585D53;        /* secondary ≈6:1 on white */
  --line:#E5E0D2; --white:#fff;
  --ease:cubic-bezier(.22,.61,.36,1);
  --maxw:1240px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Montserrat',system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4,.fira{font-family:'Montserrat',system-ui,sans-serif}
h1,h2{text-wrap:balance;letter-spacing:-.5px}
a{color:var(--green);text-decoration:none}
img{display:block;max-width:100%;height:auto}
svg.i{width:1em;height:1em;fill:currentColor;flex:none;vertical-align:-.125em}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(18px,4vw,34px)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
::selection{background:var(--gold);color:var(--ink)}
:focus-visible{outline:3px solid var(--green);outline-offset:2px;border-radius:4px}
.on-dark :focus-visible,.utility :focus-visible,footer.site :focus-visible{outline-color:var(--gold)}
.btn-solid:focus-visible,.audience button[aria-selected="true"]:focus-visible{outline-color:var(--paper);box-shadow:0 0 0 5px var(--green-deep)}
.skip{position:absolute;left:14px;top:-60px;z-index:200;background:var(--green-deep);color:#fff;padding:12px 18px;border-radius:0 0 8px 8px;font-family:'Montserrat';font-weight:600;transition:top .18s var(--ease)}
.skip:focus{top:0;color:#fff}
#main{scroll-margin-top:var(--sticky-header-height,124px)}
#main:focus{outline:0}
.logo-chip{display:inline-flex;background:#fff;border-radius:9px;padding:7px 11px;line-height:0}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1!important;transform:none!important}
  canvas[data-decor]{display:none!important}
}
.utility{background:var(--green-deep);color:#CBDDD0;font-size:13px}
.utility .wrap{display:flex;align-items:center;justify-content:space-between;min-height:40px;gap:16px;flex-wrap:wrap}
.utility .msg{font-style:italic;opacity:.9}
.utility ul{list-style:none;display:flex;gap:18px;flex-wrap:wrap}
.utility a{color:#CBDDD0;display:inline-flex;align-items:center;gap:7px;min-height:44px}
.utility a:hover{color:#fff}
header{background:rgba(255,255,255,.94);backdrop-filter:saturate(150%) blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.bar{display:flex;align-items:center;gap:20px;min-height:72px;flex-wrap:wrap}
.logo{display:inline-flex;align-items:center;min-height:44px}
.logo img{height:40px;width:auto}
.audience{display:inline-flex;border:1.5px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}
.audience button{border:0;background:transparent;font-family:'Montserrat';font-weight:600;font-size:14px;color:var(--green-deep);padding:9px 18px;min-height:44px;cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease)}
.audience button[aria-selected="true"]{background:var(--green);color:#fff}
.audience-links a{font-family:'Montserrat';font-weight:600;font-size:14px;color:var(--green-deep);padding:9px 18px;min-height:44px;display:inline-flex;align-items:center;transition:background .15s var(--ease),color .15s var(--ease)}
.audience-links a[aria-current]{background:var(--green);color:#fff}
.grow{flex:1}
.hbtns{display:flex;align-items:center;gap:10px}
.btn{font-family:'Montserrat';font-weight:600;font-size:15px;border-radius:7px;padding:11px 20px;min-height:44px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;border:1.5px solid transparent;transition:background .16s var(--ease),box-shadow .16s var(--ease),transform .08s var(--ease);white-space:nowrap;line-height:1.2}
.btn:active{transform:translateY(1px)}
.btn .i{font-size:15px;transition:transform .2s var(--ease)}
.btn:hover .i.arr{transform:translateX(3px)}
.btn-solid{background:var(--green);color:#fff;box-shadow:0 1px 2px rgba(10,61,34,.2)}
.btn-solid:hover{background:var(--green-deep);box-shadow:0 8px 20px -10px rgba(10,61,34,.6)}
.btn-ghost{border-color:var(--green);color:var(--green);background:transparent}
.btn-ghost:hover{background:rgba(11,110,55,.07)}
.on-dark .btn-ghost{border-color:rgba(255,255,255,.72);color:#fff}
.on-dark .btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.12)}
nav.subnav{border-top:1px solid var(--line);background:#fff}
nav.subnav .wrap{display:flex;gap:22px;min-height:48px;align-items:center;flex-wrap:wrap}
nav.subnav a{position:relative;font-family:'Montserrat';font-weight:600;font-size:14.5px;color:var(--green-deep);padding:6px 0;min-height:44px;display:inline-flex;align-items:center;gap:6px}
nav.subnav a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .22s var(--ease)}
nav.subnav a:hover::after,nav.subnav a:focus-visible::after{transform:scaleX(1)}
nav.subnav .soon{font-family:'Montserrat';font-weight:600;font-size:10px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);background:var(--cream);border:1px solid var(--line);border-radius:20px;padding:2px 7px;margin-left:5px;cursor:default}
nav.subnav a[aria-disabled="true"]{color:var(--muted);cursor:default}
nav.subnav a[aria-disabled="true"]::after{display:none}
nav.subnav .nav-unavailable{font-family:'Montserrat';font-weight:600;font-size:14.5px;color:var(--muted);padding:6px 0;display:inline-flex;align-items:center;gap:6px;cursor:default}
.hide{display:none!important}
@media(max-width:1024px){ nav.subnav{display:none} .hbtns .label{display:none} }
@media(max-width:560px){ .utility .msg{display:none} .bar{min-height:60px;gap:12px} .audience button{padding:9px 13px;font-size:13px} .btn{padding:10px 15px;font-size:14px} .logo img{height:32px} }
@media(pointer:coarse){ .btn{padding:12px 20px} .audience button{padding:12px 18px} }
header{border-bottom:3px solid var(--green)}
nav.subnav a::after{height:3px;background:var(--green)}
nav.subnav a.on{color:var(--green)}
nav.subnav a.on::after{transform:scaleX(1)}
.block{padding:clamp(60px,8vw,110px) 0}
.kick{font-family:'Montserrat';font-weight:800;font-size:13px;letter-spacing:2.5px;text-transform:uppercase;display:inline-flex;align-items:center;gap:12px;margin-bottom:18px}
.kick::before{content:"";width:34px;height:4px;background:currentColor;flex:none}
.h-xl{font-size:clamp(32px,4.6vw,54px);font-weight:800;line-height:1.06}
.lead{font-size:clamp(16px,1.4vw,19px);max-width:62ch;color:var(--muted);margin-top:16px}
.on-dark{color:#fff}
.on-dark .lead{color:#D9E4DC}
.num{font-family:'Montserrat';font-weight:800;font-size:clamp(46px,6vw,84px);line-height:1;letter-spacing:-2px}
.heroB{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);background:var(--green-deep)}
.heroB .copy{padding:clamp(48px,7vw,100px) clamp(20px,5vw,72px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.heroB h1,.heroC .big{font-size:clamp(36px,5.4vw,72px);font-weight:800;line-height:1.03;letter-spacing:-1.5px}
.heroB h1 .gold{color:var(--gold)} /* display-size only - 4.25:1 passes AA for large text */
.heroB .lead,.heroC .lead{margin-top:20px}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.btn-gold-ghost{border-color:rgba(255,255,255,.55);color:#fff;background:transparent}
.btn-gold-ghost:hover{background:rgba(255,255,255,.12)}
.heroB .ph,.heroC .ph{min-height:100%;position:relative}
.heroB .ph img,.heroC .ph img{width:100%;height:100%;object-fit:cover}
.hero-tag{position:absolute;left:18px;bottom:18px;max-width:calc(100% - 36px);margin:0;background:rgba(250,248,240,.94);border-left:4px solid var(--gold);box-shadow:0 12px 28px rgba(8,36,24,.18);color:var(--green-deep);font-family:'Montserrat';font-weight:700;font-size:13px;line-height:1.35;letter-spacing:.01em;padding:9px 13px;backdrop-filter:blur(8px)}
@media(max-width:880px){
  .heroB,.heroC{grid-template-columns:minmax(0,1fr)}
  .heroB .ph img,.heroC .ph img{height:auto;aspect-ratio:16/10}
  .heroC .ph{order:2}
}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.stats .tile{padding:clamp(28px,3.4vw,46px) clamp(20px,2.6vw,38px)}
.tile-green{background:var(--green);color:#fff}
.tile-forest,.tile-navy{background:var(--green-forest);color:#fff}
.tile-gold{background:var(--gold);color:var(--ink)}
.tile-orange{background:var(--orange);color:#fff}
.stats .lbl{font-size:16px;margin-top:10px;line-height:1.45}
.stats .tile-gold .lbl{color:#22261F}
.ph-metric{font-family:'Montserrat';font-weight:800;font-size:clamp(17px,1.8vw,23px);line-height:1.25;display:block;border:2px dashed rgba(255,255,255,.55);padding:10px 12px;border-radius:6px;overflow-wrap:anywhere}
@media(max-width:900px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:521px) and (max-width:900px){
  .stats .tile:last-child:nth-child(odd){grid-column:1/-1;display:grid;grid-template-columns:minmax(170px,.42fr) minmax(0,1fr);align-items:center;gap:clamp(28px,6vw,64px)}
  .stats .tile:last-child:nth-child(odd) .lbl{max-width:48ch;margin-top:0}
}
@media(max-width:460px){.stats{grid-template-columns:minmax(0,1fr)}}
.ledger{border-top:3px solid var(--ink);margin-top:34px}
.lrow{display:grid;grid-template-columns:88px minmax(0,1fr) minmax(0,1.5fr) auto;gap:20px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line)}
.lrow .idx{font-family:'Montserrat';font-weight:800;font-size:clamp(28px,3vw,42px);line-height:1;color:var(--gold-text)}
.lrow h3{font-size:clamp(19px,1.9vw,25px);font-weight:800;letter-spacing:-.3px}
.lrow h3 a{display:inline-flex;align-items:center;min-height:44px}
.lrow p{color:var(--muted);font-size:16px}
.alink{font-family:'Montserrat';font-weight:600;font-size:15px;color:var(--green);display:inline-flex;align-items:center;gap:8px;min-height:44px;white-space:nowrap}
.alink:hover .i{transform:translateX(3px)}
.alink .i{transition:transform .2s var(--ease)}
@media(max-width:820px){
  .lrow{grid-template-columns:56px minmax(0,1fr);row-gap:8px}
  .lrow .idx{grid-column:1;grid-row:1/span 3;align-self:start}
  .lrow h3,.lrow>div,.lrow p:not(.idx){grid-column:2}
  .lrow .alink{grid-column:2;justify-self:start}
}
@media(min-width:641px) and (max-width:820px){
  .publication-index .lrow{grid-template-columns:56px minmax(210px,.9fr) minmax(0,1.2fr) auto;gap:18px;align-items:center}
  .publication-index .lrow .idx{grid-column:1;grid-row:auto;align-self:center}
  .publication-index .lrow h3,.publication-index .lrow>div,.publication-index .lrow p:not(.idx),.publication-index .lrow .alink{grid-column:auto}
  .publication-index .lrow .alink{justify-self:end}
}
.feature{background:var(--green);color:#fff;display:grid;grid-template-columns:minmax(0,1.3fr) auto;gap:24px;align-items:center;padding:clamp(28px,4vw,48px)}
.feature h3{font-size:clamp(22px,2.4vw,30px);font-weight:800}
.feature h3 a{display:inline-flex;align-items:center;min-height:44px;color:inherit}
.feature p{margin-top:8px;color:#D9E4DC;max-width:60ch}
.feature-numbered{grid-template-columns:112px minmax(0,1.3fr) auto;padding:0;gap:0;align-items:stretch}
.feature-numbered .feature-index{display:flex;align-items:flex-start;justify-content:center;max-width:none;margin:0;padding:clamp(28px,4vw,48px) 18px;background:var(--gold);color:var(--ink);font-family:'Montserrat';font-size:clamp(46px,6vw,76px);font-weight:800;line-height:.9;letter-spacing:-2px}
.feature-numbered .feature-copy{align-self:center;padding:clamp(28px,4vw,48px)}
.feature-numbered>.btn{align-self:center;margin-right:clamp(28px,4vw,48px)}
.btn-paper{background:#fff;color:var(--green-deep)}
.btn-paper:hover{background:var(--cream)}
@media(max-width:700px){
  .feature{grid-template-columns:minmax(0,1fr)}
  .feature-numbered{grid-template-columns:76px minmax(0,1fr)}
  .feature-numbered .feature-index{grid-column:1;grid-row:1/span 2;justify-content:flex-start;padding:28px 14px;font-size:42px}
  .feature-numbered .feature-copy{grid-column:2;padding:28px 22px 18px}
  .feature-numbered>.btn{grid-column:2;justify-self:start;margin:0 22px 28px}
}
.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:38px}
.pillars>div:not(.pillar){display:contents}
.pillar{padding:clamp(30px,4vw,52px)}
.pillar h3{font-size:clamp(21px,2.2vw,28px);font-weight:800;margin-bottom:10px}
.pillar p{font-size:16px;max-width:58ch}
.pillar-green{background:var(--green-deep);color:#fff;display:flex;flex-direction:column;justify-content:center}
.pillar-green p{color:#D9E4DC}
.pillar-navy{background:var(--orange-deep);color:#fff}
.pillar-navy p{color:#FFF0E8}
.pillar-green a,.pillar-navy a{color:#fff}
.pillar-green a:hover{color:#D9E4DC}
.pillar-navy a:hover{color:#FFF0E8}
.pillar-gold{background:var(--gold);color:var(--ink)}
.pillar-gold p{color:#22261F}
.pillar .pnum{font-family:'Montserrat';font-weight:800;font-size:15px;letter-spacing:2px;display:block;margin-bottom:14px;opacity:.85}
.route-get-in-touch .pillars a[href^="tel:"],.route-get-in-touch .pillars a[href^="mailto:"]{display:inline-flex;min-height:44px;align-items:center;text-underline-offset:4px}
@media(max-width:760px){.pillars{grid-template-columns:minmax(0,1fr)}}
.mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin-top:44px}
.programme-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-top:clamp(46px,6vw,68px);padding-top:clamp(34px,4vw,48px);border-top:1px solid var(--line)}
.programme-section-heading .kick{margin-bottom:10px;color:var(--gold-text)}
.programme-section-heading .h-xl{font-size:clamp(26px,3vw,36px)}
.programme-section-heading .alink{flex:0 0 auto}
.programme-section-heading+.mosaic{margin-top:28px}
.mcard{margin:0;display:flex;flex-direction:column;color:var(--ink);text-decoration:none}
.mcard img{width:100%;height:clamp(200px,24vw,300px);object-fit:cover}
.mcard-caption{display:flex;flex:1;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--line);border-top:4px solid var(--green);padding:16px 18px}
.mcard-title{font-family:'Montserrat';font-size:18px;font-weight:800}
.mcard-copy{font-size:16px;color:var(--muted);margin-top:5px}
.mcard-action{display:inline-flex;align-items:center;gap:7px;min-height:44px;margin-top:auto;padding-top:12px;color:var(--green);font-family:'Montserrat';font-size:13px;font-weight:700}
.mcard-action .i{transition:transform .2s var(--ease)}
.sp7{grid-column:span 7}.sp5{grid-column:span 5}.sp8{grid-column:span 8}.sp4{grid-column:span 4}
@media(min-width:821px){
  .mosaic{grid-auto-rows:1fr}
  .mosaic .mcard{grid-column:span 4}
  .mcard img{height:clamp(190px,16vw,224px)}
}
@media(max-width:820px){.sp7,.sp5,.sp8,.sp4{grid-column:span 6}}
@media(max-width:560px){
  .programme-section-heading{align-items:flex-start;flex-direction:column;gap:8px}
  .mosaic{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:1px;padding:2px 0 14px;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--gold) var(--line)}
  .mcard{flex:0 0 min(70vw,270px);scroll-snap-align:start}
  .mcard img{height:176px}
  .sp7,.sp5,.sp8,.sp4{grid-column:auto}
}
@media(max-width:560px){
  #viewCorp #contact .offices{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:1px;padding:2px 0 14px;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--gold) var(--line)}
  #viewCorp #contact .office{flex:0 0 min(82vw,286px);min-height:250px;scroll-snap-align:start}
  #viewCorp #contact .pwall{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:1px;padding:2px 0 14px;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--gold) var(--line)}
  #viewCorp #contact .ptile{flex:0 0 min(43vw,154px);height:112px;scroll-snap-align:start}
}
.learn{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,4vw,60px);align-items:center;margin-top:38px}
.learn ol{list-style:none;counter-reset:l}
.learn li{counter-increment:l;display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;padding:22px 0;border-top:1px solid var(--line)}
.learn li::before{content:counter(l,decimal-leading-zero);font-family:'Montserrat';font-weight:800;font-size:30px;line-height:1.1;color:var(--orange)}
.learn h3{font-size:20px;font-weight:800}
.learn h3 a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--ink);text-decoration-color:transparent;text-underline-offset:4px;transition:color .18s var(--ease),text-decoration-color .18s var(--ease)}
.learn h3 a .arr{flex:0 0 auto;color:var(--green);transition:transform .18s var(--ease)}
.learn h3 a:hover,.learn h3 a:focus-visible{color:var(--green-deep);text-decoration:underline;text-decoration-color:var(--gold)}
.learn h3 a:hover .arr,.learn h3 a:focus-visible .arr{transform:translateX(4px)}
.learn li p{font-size:15px;color:var(--muted);margin-top:4px}
.learn .ph img{width:100%;height:auto}
@media(max-width:820px){.learn{grid-template-columns:minmax(0,1fr)}}
.band{color:#fff}
.band-orange{background:var(--orange)}
.band-green{background:var(--green)}
.band-navy{background:var(--green-forest)}
.band .wrap{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;padding-top:clamp(44px,6vw,72px);padding-bottom:clamp(44px,6vw,72px)}
.band h2,.band h3{font-size:clamp(26px,3.4vw,42px);font-weight:800;line-height:1.1;max-width:22ch}
.band p{margin-top:10px;max-width:58ch}
.band-orange p{color:#fff}
.band-green p{color:#D9E4DC}
.band .journey-return-wrap{width:100%;max-width:none;margin-top:clamp(24px,4vw,36px)!important;padding-top:18px;border-top:1px solid rgba(255,255,255,.2)}
.journey-return{display:inline-flex;min-height:44px;align-items:center;padding:8px 2px;color:#fff!important;font-family:'Montserrat';font-size:14px;font-weight:700;text-decoration:none}
.journey-return:hover{text-decoration:underline;text-underline-offset:5px}
.article-media{aspect-ratio:5/3;margin:0 0 clamp(30px,5vw,48px);overflow:hidden;background:var(--paper)}
.article-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.merge{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(28px,5vw,70px);align-items:center;margin-top:38px}
.merge .figure3{font-family:'Montserrat';font-weight:800;font-size:clamp(88px,13vw,190px);line-height:.9;letter-spacing:-6px;color:var(--green-deep)}
.merge .figure3 .arrow1{color:var(--orange)}
.agency-list{list-style:none;margin-top:20px;border-top:3px solid var(--ink)}
.agency-list li{display:flex;gap:14px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--line)}
.agency-list b{font-family:'Montserrat';font-weight:800;min-width:64px;color:var(--gold-text)}
@media(max-width:760px){.merge{grid-template-columns:minmax(0,1fr)}}
.wideph{margin-top:46px}
.wideph img{width:100%;height:clamp(240px,38vw,460px);object-fit:cover}
.wideph .cap{background:var(--green-deep);color:#D9E4DC;font-size:14px;padding:12px 18px}
.heroC{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);background:var(--green-deep)}
.heroC::after{content:"";position:absolute;inset:auto 0 0;height:8px;background:linear-gradient(90deg,var(--green) 0 55%,var(--gold) 55% 78%,var(--orange) 78%);z-index:3;pointer-events:none}
.heroC .copy{padding:clamp(48px,7vw,100px) clamp(20px,5vw,72px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.heroC .lead{color:#D4E3D8}
@media(max-width:880px){
  .heroC{grid-template-columns:minmax(0,1fr)}
  .heroC .big{max-width:17ch}
  .heroC .ph{order:2}
  .heroC .ph img{height:auto;aspect-ratio:16/10}
}
.mission{background:var(--gold);color:var(--ink);padding:clamp(36px,5vw,64px)}
.mission blockquote{font-family:'Montserrat';font-weight:700;font-size:clamp(20px,2.6vw,32px);line-height:1.3;max-width:30ch;letter-spacing:-.4px}
.mission cite{display:block;font-style:normal;font-size:14px;margin-top:14px;color:#22261F}
.corporate-principles{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(28px,4vw,58px);align-items:start;margin-top:38px}
.corporate-purpose{display:grid;gap:22px}
.corporate-purpose .mission{padding:clamp(30px,4vw,48px)}
.corporate-mission{padding:24px 26px;border:1px solid var(--line);background:var(--paper)}
.corporate-mission .kick{margin-bottom:10px;color:var(--green)}
.corporate-mission p:last-child{font-size:16px;line-height:1.7;color:var(--muted)}
.corporate-values .kick{margin-bottom:10px}
.corporate-values .agency-list{margin-top:0}
@media(max-width:760px){.corporate-principles{grid-template-columns:minmax(0,1fr)}}
.docrows{border-top:3px solid var(--ink);margin-top:34px}
.docrow{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:18px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}
.docrow .dico{width:44px;height:44px;background:var(--cream);border:1px solid var(--line);display:grid;place-items:center;color:var(--green);font-size:19px}
.docrow h3{font-size:clamp(18px,1.8vw,23px);font-weight:800}
.docrow h3 a{display:inline-flex;align-items:center;min-height:44px;margin-block:-11px;color:inherit}
.docrow p{font-size:14.5px;color:var(--muted)}
.docrow h3+p{margin-top:8px}
@media(max-width:640px){.docrow{grid-template-columns:52px minmax(0,1fr)}.docrow .alink{grid-column:2}}
.newsrows{display:grid;gap:16px;margin-top:34px}
.newsrow{background:#fff;border:1px solid var(--line);border-top:4px solid var(--orange);padding:clamp(20px,3vw,32px)}
.newsrow h3{font-size:20px;font-weight:800}
.newsrow p{font-size:15px;color:var(--muted);margin-top:6px;max-width:75ch}
.empty-state{margin-top:34px;border-top:3px solid var(--green);background:#fff;padding:clamp(24px,3vw,34px);max-width:760px}
.empty-state h3{font-size:clamp(19px,2vw,24px);font-weight:800}
.empty-state p{font-size:15px;color:var(--muted);margin-top:7px;max-width:62ch}
.empty-state-actions{display:flex;align-items:center;gap:8px 24px;flex-wrap:wrap;margin-top:20px}
.empty-state-actions .alink{min-height:44px}
.empty-state-actions .empty-state-secondary{color:var(--muted)}
.offices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px}
.office{background:#fff;border:1px solid var(--line);border-top:6px solid var(--green);padding:clamp(20px,2.6vw,30px)}
.office h3{font-size:19px;font-weight:800;margin-bottom:8px}
.office p{font-size:15px;color:var(--muted)}
.office .tel{font-family:'Montserrat';font-weight:800;font-size:clamp(20px,2vw,26px);color:var(--green-deep);display:block;margin-top:10px;letter-spacing:-.5px}
@media(max-width:860px){.offices{grid-template-columns:minmax(0,1fr)}}
.pwall{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:34px}
.pwall .ptile{background:#fff;border:1px solid var(--line);display:grid;place-items:center;padding:18px}
.pwall img{width:118px;height:auto}
@media(max-width:640px){.pwall{grid-template-columns:repeat(2,minmax(0,1fr))}}
.os-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:38px}
.os-steps li{background:#fff;border:1px solid var(--line);border-top:3px solid var(--green);padding:22px 20px}
.os-steps .n{font-family:'Montserrat';font-weight:800;font-size:20px;color:var(--gold-text);display:block;margin-bottom:10px;letter-spacing:-.5px}
.os-steps h3{font-size:18px;font-weight:800;margin-bottom:6px;letter-spacing:-.2px}
.os-steps p{font-size:14px;color:var(--muted);line-height:1.5}
@media(max-width:900px){.os-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){
  .os-steps{grid-template-columns:minmax(0,1fr);gap:0;border-top:3px solid var(--ink)}
  .os-steps li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:0 12px;padding:21px 0;border:0;border-bottom:1px solid var(--line);background:transparent}
  .os-steps .n{grid-column:1;grid-row:1/3;margin:0;padding-top:2px}
  .os-steps h3,.os-steps p{grid-column:2}
  .os-steps p{margin-top:5px}
}
.os-dims{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px;padding:0;list-style:none}
.os-dims li{font-family:'Montserrat';font-weight:600;font-size:16px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:6px 13px;color:var(--green-deep)}
.alt-bg{background:#F4F6F4}
:root{--ease-quint:cubic-bezier(.22,1,.36,1);--ease-expo:cubic-bezier(.16,1,.3,1)}
.heroB{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;min-height:clamp(460px,62vh,620px)}
.heroB .copy{position:relative;z-index:2;max-width:640px}
.heroC .ph,.wideph{overflow:hidden}
.hero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(10,61,34,.94),rgba(10,61,34,.72) 38%,rgba(10,61,34,.34) 72%,rgba(10,61,34,.18))}
.hero-video-toggle{position:absolute;right:clamp(18px,3vw,36px);bottom:clamp(18px,3vw,30px);z-index:3;min-height:44px;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:rgba(10,61,34,.86);color:#fff;font-family:'Montserrat';font-size:13px;font-weight:650;box-shadow:0 10px 28px rgba(4,38,20,.22);transition:background .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease)}
.hero-video-toggle:hover{background:var(--green-deep);border-color:#fff;transform:translateY(-1px)}
.hero-video-toggle .i{width:13px;height:13px;fill:currentColor}
.hero-video-toggle .hero-video-play{display:none}
.hero-video-toggle.is-paused .hero-video-pause{display:none}
.hero-video-toggle.is-paused .hero-video-play{display:block}
@media(max-width:880px){ .heroB{min-height:auto} .hero-scrim{background:linear-gradient(180deg,rgba(10,61,34,.5),rgba(10,61,34,.86))} }
@media(prefers-reduced-motion:reduce){.hero-video-toggle{display:none}}
.office,.newsrow,.docrow,.os-steps li,.pillar,.ptile,.mcard-caption{transition:transform .34s var(--ease-quint),box-shadow .34s var(--ease-quint)}
@media(hover:hover){
  .office:hover,.newsrow:hover,.docrow:hover,.os-steps li:hover{transform:translateY(-4px);box-shadow:0 20px 44px -26px rgba(10,61,34,.55)}
  .mcard:hover .mcard-caption{transform:translateY(-5px);box-shadow:0 20px 44px -28px rgba(10,61,34,.5)}
  .mcard:hover .mcard-action .i{transform:translateX(3px)}
  .ptile:hover{transform:translateY(-3px);box-shadow:0 16px 34px -22px rgba(10,61,34,.4)}
  .pillar-gold:hover,.pillar-navy:hover,.pillar-green:hover{transform:translateY(-3px)}
}
@media(hover:hover) and (max-width:520px){.os-steps li:hover{transform:none;box-shadow:none}}
.btn.magnetic{will-change:transform}
@media(prefers-reduced-motion:reduce){ .scrollprog{display:none} }

/* Footer */
footer.site{background:var(--green-deep);color:#B8C9BD;font-size:14px}
footer.site .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:34px;padding:clamp(44px,5vw,60px) 0 40px}
footer.site a{color:#B8C9BD}
footer.site a:hover{color:#fff}
footer.site .social{display:flex;gap:12px;margin-top:18px}
footer.site .social a{width:38px;height:38px;border:1px solid rgba(255,255,255,.2);border-radius:8px;display:grid;place-items:center;color:#fff}
footer.site .social a:hover{border-color:rgba(255,255,255,.5)}
footer.site h3{font-family:'Montserrat';font-weight:700;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#fff;margin-bottom:16px}
footer.site ul{list-style:none;display:grid;gap:10px}
footer.site .bottom{border-top:1px solid rgba(255,255,255,.13);padding:18px 0;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px}

/* Functional responsive navigation and accessibility refinements. */
footer.site .wrap{padding-left:clamp(18px,4vw,34px)!important;padding-right:clamp(18px,4vw,34px)!important}
footer.site .social a{min-width:44px;min-height:44px}
.menu-toggle{display:none;min-width:44px;min-height:44px;border:1.5px solid var(--line);border-radius:8px;background:#fff;color:var(--green-deep);font-family:'Montserrat';font-weight:600;font-size:13px;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.menu-toggle .close-icon{display:none}
.menu-toggle[aria-expanded="true"] .menu-icon{display:none}
.menu-toggle[aria-expanded="true"] .close-icon{display:block}
.head-cta-short{display:none}
.mobile-nav-account{display:none}
@media(max-width:1024px){
  .utility{display:none}
  .bar{min-height:68px;gap:12px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
  .logo img{height:34px}
  .audience{order:4;width:100%}
  .audience button{flex:1;min-height:44px}
  .menu-toggle{display:inline-flex}
  .hbtns .btn-ghost{display:none}
  .primary-navs{position:absolute;top:100%;left:0;right:0;display:none;max-height:calc(100dvh - var(--sticky-header-height,120px));overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border-top:1px solid var(--line);background:#fff;box-shadow:0 18px 38px -20px rgba(10,61,34,.55)}
  .primary-navs.is-open{display:block}
  nav.subnav{display:block}
  nav.subnav.hide{display:none!important}
  nav.subnav .wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;padding-top:10px;padding-bottom:16px}
  nav.subnav a{min-height:46px;padding:11px 0;border-bottom:1px solid var(--line)}
  nav.subnav a::after{display:none}
  .mobile-nav-account{display:block;padding-top:0;padding-bottom:16px}
  .mobile-nav-account a{display:flex;min-height:48px;align-items:center;gap:10px;padding:11px 14px;border:1px solid rgba(11,110,55,.24);border-radius:7px;background:rgba(11,110,55,.055);color:var(--green-deep);font:700 14px/1.3 'Montserrat'}
  .mobile-nav-account .arr{margin-left:auto;transition:transform .2s var(--ease)}
  .mobile-nav-account a:hover{background:rgba(11,110,55,.1)}
  .mobile-nav-account a:hover .arr{transform:translateX(3px)}
}
@media(min-width:1025px) and (max-width:1079px){
  .utility .msg{display:none}
  .utility .wrap{justify-content:flex-end}
}
@media(min-width:900px) and (max-width:1024px){
  .bar{flex-wrap:nowrap}
  .audience{order:initial;width:auto;flex:none}
}
@media(max-width:520px){
  .bar{gap:9px}
  .logo{max-width:145px}
  .logo img{height:auto;max-height:31px}
  .menu-toggle span{display:none}
  .hbtns #headCta{width:auto;min-width:82px;height:44px;padding:0 10px;font-size:13px;line-height:1.15;white-space:nowrap;justify-content:center}
  .hbtns #headCta .head-cta-full{display:none}
  .hbtns #headCta .head-cta-short{display:inline}
  .hbtns #headCta .arr{width:13px;height:13px}
  .stats{grid-template-columns:1fr}
}
@media(max-width:340px){
  .bar{display:grid;grid-template-columns:minmax(0,1fr) 44px 82px;column-gap:9px}
  .logo{grid-column:1;grid-row:1;max-width:125px}
  .logo img{max-width:125px;max-height:27px}
  .grow{display:none}
  .menu-toggle{grid-column:2;grid-row:1}
  .hbtns{grid-column:3;grid-row:1}
  .audience{grid-column:1/-1;grid-row:2;order:initial}
  .heroB .copy{padding-bottom:112px}
  .heroB .hero-video-toggle{left:20px;right:auto;bottom:24px}
}
@media(min-width:800px) and (max-width:1024px){nav.subnav .wrap{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){nav.subnav .wrap{grid-template-columns:1fr}}

/* Flagship civic-editorial refinement. */
.page-intro{
  position:relative;
  overflow:hidden;
  padding:clamp(46px,6vw,78px) 0 clamp(52px,7vw,88px);
  background:#fff;
  border-bottom:1px solid var(--line)
}
.page-intro::after{
  content:"";
  position:absolute;
  right:max(18px,calc((100vw - var(--maxw))/2 + 34px));
  bottom:0;
  width:clamp(92px,13vw,176px);
  height:8px;
  background:linear-gradient(90deg,var(--green) 0 55%,var(--gold) 55% 78%,var(--orange) 78%)
}
.audience-corporate .page-intro{background:#F4F6F4}
.audience-corporate .page-intro::after{background:linear-gradient(90deg,var(--green-deep) 0 55%,var(--gold) 55% 78%,var(--orange) 78%)}
.page-intro .wrap{position:relative;z-index:1}
.page-intro .breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:2px 8px;margin-bottom:clamp(10px,2vw,18px);font-size:13px;color:var(--muted)}
.page-intro .breadcrumb a{display:inline-flex;align-items:center;min-height:44px;font-family:'Montserrat';font-weight:600}
.page-intro h1{max-width:19ch;font-size:clamp(36px,5vw,62px);line-height:1.02;letter-spacing:-1.2px}
.page-intro .lead{max-width:68ch;font-size:clamp(16px,1.35vw,19px);line-height:1.75}
.page-inner main>.page-intro+.block{padding-top:clamp(52px,7vw,82px)}
.programme-section-index{position:sticky;top:var(--sticky-header-height);z-index:8;border-bottom:1px solid var(--line);background:rgba(250,248,240,.96);backdrop-filter:blur(10px)}
.programme-section-index .wrap{display:flex;align-items:center;gap:22px;min-height:58px}
.programme-section-index-label{flex:0 0 auto;font-family:'Montserrat';font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--green-deep)}
.programme-section-index-links{display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto;scrollbar-width:none;overscroll-behavior-inline:contain}
.programme-section-index-links::-webkit-scrollbar{display:none}
.programme-section-index a{display:inline-flex;align-items:center;min-height:44px;padding:7px 11px;border-radius:5px;color:var(--muted);font-family:'Montserrat';font-size:13px;font-weight:600;white-space:nowrap;transition:background .18s var(--ease),color .18s var(--ease)}
.programme-section-index a:hover{background:var(--cream);color:var(--green-deep)}
.programme-section-index a[aria-current="location"]{background:var(--cream);color:var(--green);font-weight:800}
.programme-section-select{display:none}
.programme-section-index+section{padding-top:clamp(52px,7vw,82px)}
.page-corporateProductDetail main>section h2[id]{scroll-margin-top:calc(var(--sticky-header-height) + var(--programme-index-height,58px) + 20px)}
.page-corporateProductDetail main>section.block>.wrap>ul{max-width:72ch}
@media(min-width:621px) and (max-width:1100px){.programme-section-index-links{padding-right:38px;mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 38px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 38px),transparent 100%)}}
@media(max-width:620px){.programme-section-index .wrap{display:block;padding:10px 18px}.programme-section-index-label{display:block;margin-bottom:6px}.programme-section-index-links{display:none}.programme-section-select{display:block;width:100%;min-height:46px;padding:9px 40px 9px 12px;border:1px solid var(--green);border-radius:4px;background:var(--paper);color:var(--green-deep);font:700 14px/1.3 'Montserrat',sans-serif}}

.listing-row{position:relative;transition:background .22s var(--ease-quint),transform .22s var(--ease-quint)}
.status-badge{display:inline-flex;align-items:center;min-height:26px;margin-bottom:10px;padding:3px 10px;border:1px solid rgba(11,110,55,.24);border-radius:999px;background:rgba(11,110,55,.07);color:var(--green-deep);font-family:'Montserrat';font-size:13px;font-weight:800;letter-spacing:.9px;text-transform:uppercase}
.tender-register .ledger{margin-top:24px}
.tender-register .tender-row{grid-template-columns:64px minmax(150px,.7fr) minmax(320px,1.8fr) minmax(170px,.7fr);align-items:start;padding:30px 0}
.tender-register .tender-row h3{max-width:58ch;font-size:clamp(17px,1.35vw,20px);line-height:1.5;letter-spacing:-.12px}
.tender-register .tender-identity .kick{margin:0;font-size:12px;line-height:1.45}
.tender-register .listing-meta{display:flex;flex-wrap:wrap;gap:18px 28px;margin-top:14px}
.tender-register .listing-meta span{display:grid;gap:3px;color:var(--ink);font-size:13px}
.tender-register .listing-meta strong{color:var(--muted);font-size:11px;letter-spacing:.7px;text-transform:uppercase}
.tender-documents{display:flex;align-items:flex-start;flex-direction:column;gap:3px}
.tender-documents .alink{min-height:38px;font-size:13px}
.status-awarded{border-color:rgba(179,142,28,.42);background:rgba(194,156,41,.13);color:#755C0D}
.status-closed{border-color:rgba(38,49,39,.28);background:rgba(38,49,39,.08);color:var(--warm-dark)}
.status-cancelled{border-color:rgba(170,61,36,.32);background:rgba(197,74,43,.08);color:#94351F}
@media(max-width:980px){.tender-register .tender-row{grid-template-columns:56px minmax(130px,.6fr) minmax(0,1.5fr)}.tender-register .tender-documents{grid-column:3}}
@media(max-width:700px){.tender-register .tender-row{grid-template-columns:44px minmax(0,1fr);gap:8px 14px}.tender-register .tender-row .idx{grid-column:1;grid-row:1/span 3}.tender-register .tender-identity,.tender-register .tender-summary,.tender-register .tender-documents{grid-column:2}.tender-register .tender-documents{margin-top:5px}.tender-register .listing-meta{gap:12px 22px}}
.newsrows{gap:0;border-top:3px solid var(--ink)}
.newsrow{background:transparent;border:0;border-bottom:1px solid var(--line);padding:clamp(24px,3vw,36px) 0}
.newsrow h3{font-size:clamp(20px,2.2vw,27px);max-width:32ch}
.newsrow h3 a{display:inline-flex;align-items:center;min-height:44px}
.newsrow p{max-width:70ch}
.newsrow .news-action{margin-top:12px}
.offices{gap:0;border-top:3px solid var(--ink)}
.office{position:relative;background:transparent;border:0;border-bottom:1px solid var(--line);padding:clamp(26px,3vw,38px) clamp(18px,2.4vw,30px)}
.office::before{content:"";position:absolute;left:0;top:34px;width:4px;height:32px;background:var(--green)}
.office h3{font-size:clamp(20px,2vw,25px);max-width:24ch}
.office h3 a,.office p a{display:inline-flex;align-items:center;min-height:44px}
.office .tel{min-height:44px}
.office p:has(>a:only-child){margin-top:4px!important}
.mcard img,.wideph img,.learn .ph img,.heroC .ph img{background:var(--cream);object-position:center}

footer.site{position:relative;background:var(--green-deep);color:#C9D7CD}
footer.site .footer-accent{display:grid;grid-template-columns:5fr 2fr 1fr;height:7px}
footer.site .footer-accent span:nth-child(1){background:var(--green-mid)}
footer.site .footer-accent span:nth-child(2){background:var(--gold)}
footer.site .footer-accent span:nth-child(3){background:var(--orange)}
footer.site .footer-grid{grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(150px,1fr));gap:clamp(32px,5vw,72px);padding-top:clamp(48px,6vw,76px);padding-bottom:clamp(42px,5vw,62px)}
footer.site .footer-brand p{max-width:36ch;margin-top:18px;line-height:1.75}
footer.site .footer-brand .logo-chip img{height:36px;width:auto}
footer.site .footer-column h3{position:relative;padding-bottom:13px;margin-bottom:18px}
footer.site .footer-column h3::after{content:"";position:absolute;left:0;bottom:0;width:28px;height:2px;background:var(--gold)}
footer.site .footer-entrepreneurs,footer.site .footer-corporate{position:relative}
body.audience-entrepreneur footer.site .footer-entrepreneurs::before,body.audience-corporate footer.site .footer-corporate::before{content:"Current audience";position:absolute;top:-16px;left:0;color:var(--gold);font:800 9.5px/1 'Montserrat';letter-spacing:.12em;text-transform:uppercase}
body.audience-entrepreneur footer.site .footer-entrepreneurs h3,body.audience-corporate footer.site .footer-corporate h3{color:#fff}
body.audience-entrepreneur footer.site .footer-entrepreneurs h3::after,body.audience-corporate footer.site .footer-corporate h3::after{width:48px}
footer.site .footer-column ul{gap:0}
footer.site .footer-column li{line-height:1.55}
footer.site .footer-column a{display:inline-flex;align-items:center;min-height:44px}
footer.site .footer-column a[href$=".pdf"]::after{content:"PDF";margin-left:8px;padding:2px 5px;border:1px solid rgba(255,255,255,.28);border-radius:4px;color:#E7EFE9;font-family:'Montserrat';font-size:10px;font-weight:700;letter-spacing:.55px;line-height:1.2}
footer.site .footer-contact li{display:flex;align-items:flex-start;gap:10px;padding:5px 0}
footer.site .footer-contact .i{margin-top:5px;color:var(--gold)}
footer.site .footer-contact address{max-width:27ch;font-style:normal;line-height:1.65}
footer.site .footer-contact a{min-height:44px}
footer.site .footer-unavailable{opacity:.58}
footer.site .bottom{padding-top:20px;padding-bottom:20px;color:#ACBFB2}
.footer-legal nav{display:flex;align-items:center;justify-content:flex-end;gap:8px 20px;flex-wrap:wrap}
.footer-legal nav a{position:relative;display:inline-flex;align-items:center;min-height:44px;color:#C9D7CD;font-size:13px}
.footer-legal nav a+a::before{content:"";position:absolute;left:-11px;top:50%;width:2px;height:2px;border-radius:50%;background:var(--gold)}

@media(hover:hover){
  .listing-row:hover{background:rgba(11,110,55,.035);transform:translateX(4px)}
  .newsrow:hover{transform:translateX(4px);box-shadow:none}
  .office:hover{transform:translateY(-3px);box-shadow:none;background:rgba(255,255,255,.42)}
}
@media(max-width:980px){
  footer.site .footer-grid{grid-template-columns:minmax(240px,1.5fr) repeat(2,minmax(150px,1fr))}
  footer.site .footer-contact{grid-column:2/-1}
}
@media(max-width:820px){
  .page-intro .breadcrumb a{display:inline-flex;align-items:center;min-height:44px}
  .page-inner main a[href^="/#"]{display:inline-flex;align-items:center;min-height:44px}
  footer.site .footer-column ul{gap:0}
  footer.site .footer-column a{min-height:44px}
  .footer-legal nav a{min-height:44px}
}
@media(max-width:680px){
  .page-intro{padding-top:38px;padding-bottom:56px}
  .page-intro::after{right:18px;width:108px;height:6px}
  .page-intro h1{font-size:clamp(32px,10vw,44px)}
  .offices{grid-template-columns:minmax(0,1fr)}
  .office{padding-left:18px;padding-right:8px}
  footer.site .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 26px}
  footer.site .footer-brand{grid-column:1/-1}
  footer.site .footer-contact{grid-column:1/-1}
  footer.site .bottom{display:grid;gap:8px}
  .footer-legal nav{justify-content:flex-start;gap:5px 18px}
}
@media(prefers-reduced-motion:no-preference){
  .page-intro .breadcrumb,.page-intro .kick,.page-intro h1,.page-intro .lead,.page-intro .hero-ctas{animation:intro-rise .65s var(--ease-expo) both}
  .page-intro .kick{animation-delay:.05s}
  .page-intro h1{animation-delay:.1s}
  .page-intro .lead{animation-delay:.16s}
  .page-intro .hero-ctas{animation-delay:.22s}
}
@keyframes intro-rise{from{transform:translateY(16px)}to{transform:none}}

/* SEDFA editorial photography, growth motif and functional indexes. */
.nav-progress{position:fixed;inset:0 0 auto;height:4px;display:grid;grid-template-columns:5fr 2fr 1fr;z-index:100;transform:translateY(-100%);transition:transform .2s var(--ease-quint);pointer-events:none}
.nav-progress.is-active{transform:none}
.nav-progress span:nth-child(1){background:var(--green-mid)}.nav-progress span:nth-child(2){background:var(--gold)}.nav-progress span:nth-child(3){background:var(--orange)}
#viewEnt,#viewCorp{scroll-margin-top:210px}
#viewEnt>section[id],#viewCorp>section[id],#viewEnt [id][data-anchor],#viewCorp [id][data-anchor]{scroll-margin-top:140px}
.page-inner main :is(section,h2,h3)[id]{scroll-margin-top:calc(var(--sticky-header-height,140px) + 62px)}
.page-intro.has-media{padding:0}
.page-intro-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);min-height:clamp(430px,47vw,590px);align-items:stretch}
.page-intro-copy{padding:clamp(46px,6vw,78px) clamp(26px,5vw,72px) clamp(52px,7vw,88px) 0;display:flex;flex-direction:column;justify-content:center}
.page-intro:not(.has-media) .page-intro-grid{display:block;min-height:0}
.page-intro:not(.has-media) .page-intro-copy{padding:0}
.page-intro-media{position:relative;min-width:0;min-height:100%;overflow:hidden;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%)}
.page-intro-media::after{content:"";position:absolute;inset:auto 0 0;height:9px;background:linear-gradient(90deg,var(--green) 0 55%,var(--gold) 55% 78%,var(--orange) 78%)}
.page-intro-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) contrast(1.03)}
.page-intro.has-media::after{display:none}
.province-index{position:sticky;top:var(--sticky-header-height,0px);z-index:20;background:rgba(250,248,240,.97);border-bottom:1px solid var(--line);box-shadow:0 8px 26px -24px rgba(10,61,34,.55)}
.province-index .wrap{display:flex;gap:8px;align-items:center;overflow-x:auto;padding-top:12px;padding-bottom:12px;scrollbar-width:thin}
.province-index span{font-family:'Montserrat';font-size:12px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--green);margin-right:4px;white-space:nowrap}
.province-index a{display:inline-flex;min-height:44px;align-items:center;padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:var(--paper);font-family:'Montserrat';font-size:12px;font-weight:700;white-space:nowrap}
.province-index a:hover,.province-index a:focus-visible{background:var(--green);border-color:var(--green);color:#fff}
.province-index a[aria-current="location"]{background:var(--green-deep);border-color:var(--green-deep);color:#fff;box-shadow:0 5px 16px -12px rgba(10,61,34,.8)}
.province-select{display:none}
@media(max-width:820px){.province-index{padding:10px 18px}.province-index .wrap{display:none}.province-select{display:block;width:100%;min-height:48px;padding:10px 42px 10px 14px;border:1px solid var(--green);border-radius:4px;background:var(--paper);color:var(--green-deep);font:700 15px/1.3 'Montserrat',sans-serif}}
.listing-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}
.result-count{font-family:'Montserrat';font-size:13px;font-weight:700;color:var(--green);white-space:nowrap}
.listing-guidance{max-width:72ch;margin:-10px 0 22px;color:var(--muted);font-size:14.5px;line-height:1.65}
.listing-tools{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid var(--line);border-top:3px solid var(--green);background:rgba(255,255,255,.48);transition:border-color .2s var(--ease-quint),background .2s var(--ease-quint)}
.listing-tools.has-filter{border-color:rgba(11,110,55,.38);background:rgba(11,110,55,.055)}
.listing-tools label{font-family:'Montserrat';font-size:13px;font-weight:800;color:var(--green-deep)}
.listing-control{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
.listing-tools select{min-height:44px;max-width:280px;padding:8px 38px 8px 12px;border:1.5px solid #AAB6AC;border-radius:5px;background:var(--paper);color:var(--ink);font:600 14px 'Montserrat',sans-serif;transition:border-color .18s var(--ease-quint),box-shadow .18s var(--ease-quint)}
.listing-tools select:hover{border-color:#778B7C}
.listing-tools select:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 4px rgba(11,110,55,.12)}
.filter-reset{min-height:44px;padding:7px 3px;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--green-deep);font:800 12px 'Montserrat';cursor:pointer;white-space:nowrap}
.filter-reset:hover{color:var(--orange)}
.filter-reset:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.filter-reset[hidden]{display:none!important}
@media(max-width:480px){.listing-tools{align-items:stretch;flex-direction:column}.listing-control{align-items:stretch;flex-direction:column}.listing-tools select{width:100%;max-width:none}.filter-reset{align-self:flex-start}}
.filter-results>[hidden]{display:none!important}
.filter-empty{margin-top:18px;border-top-color:var(--gold);background:linear-gradient(135deg,#fff,var(--paper))}
.filter-empty[hidden]{display:none!important}
.listing-meta{display:flex;flex-wrap:wrap;gap:8px 12px!important;margin-top:14px!important}
.listing-meta>span{display:inline-flex;align-items:baseline;gap:7px;padding:6px 10px;border-left:3px solid var(--gold);background:rgba(193,157,45,.075);color:var(--ink)}
.listing-meta strong{font-family:'Montserrat';font-size:10.5px;letter-spacing:.7px;text-transform:uppercase;color:var(--green-deep)}
.listing-meta time,.listing-meta>span>span{font-size:13px;font-weight:600;color:var(--ink)}
.vacancy-details{margin-top:16px;border-top:1px solid var(--line)}
.vacancy-details summary{position:relative;display:flex;align-items:center;min-height:44px;padding:10px 30px 10px 0;color:var(--green-deep);font:700 13px/1.4 'Montserrat';cursor:pointer;list-style:none}
.vacancy-details summary::-webkit-details-marker{display:none}
.vacancy-details summary::after{content:"+";position:absolute;right:2px;top:50%;translate:0 -50%;font:700 20px/1 'Montserrat';color:var(--gold-text)}
.vacancy-details[open] summary::after{content:"−"}
.vacancy-details-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;padding:5px 0 20px}
.vacancy-details-body h4{margin-bottom:7px;color:var(--green-deep);font:750 13px/1.35 'Montserrat'}
.vacancy-details-body ul{display:grid;gap:5px;padding-left:18px;color:var(--muted);font-size:13px;line-height:1.55}
.vacancy-details-body strong{color:var(--ink)}
@media(max-width:620px){.vacancy-details-body{grid-template-columns:1fr}}
@media(max-width:760px){
  .vacancy-row{position:relative;display:block;padding:28px 0 30px}
  .vacancy-row .idx{position:absolute;top:30px;left:0;font-size:27px}
  .vacancy-row>div{padding-left:70px}
  .vacancy-row>div:first-of-type .kick{max-width:240px;margin-bottom:11px;font-size:11px;line-height:1.45;letter-spacing:1.35px}
  .vacancy-row>div:first-of-type h3{font-size:21px;line-height:1.22}
  .vacancy-row>div:nth-of-type(2){margin-top:15px}
  .vacancy-row>.alink{margin:14px 0 0 70px}
  .vacancy-row>.vacancy-enquiry{white-space:normal}
}
.news-date time{display:inline-flex;align-items:center;min-height:28px;margin-top:8px;padding:4px 10px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--green-deep);font-family:'Montserrat';font-size:12px;font-weight:700}
.route-trep .page-intro h1{font-size:clamp(38px,3.3vw,42px);line-height:1.04;letter-spacing:-.035em}
.profile-document-link{display:inline-flex!important;align-items:center;gap:9px;white-space:nowrap}
.profile-document-meta{padding:3px 7px;border:1px solid color-mix(in srgb,var(--green),transparent 62%);border-radius:999px;background:rgba(11,110,55,.055);color:var(--green-deep);font:800 13px/1.2 'Montserrat';letter-spacing:.055em;text-transform:uppercase}
.portal-cue{display:inline-flex;align-items:center;margin-left:6px;padding:4px 8px;border:1px solid color-mix(in srgb,currentColor,transparent 58%);border-radius:999px;background:color-mix(in srgb,currentColor,transparent 92%);font:800 13px/1 'Montserrat';letter-spacing:.065em;text-transform:uppercase;opacity:.88}
.hero-ctas .btn:has(.portal-cue){min-height:48px;gap:7px;padding-inline:18px}
.hero-ctas .portal-cue{margin-left:4px}
.hero-ctas .btn-solid .portal-cue{border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.12);color:#fff}
@media(max-width:520px){.portal-cue{display:none}}
@media(max-width:520px){.profile-document-link{align-items:flex-start;flex-direction:column;gap:5px;white-space:normal}.profile-document-link .arr{position:absolute;right:0;top:4px}}
.route-leadership .leadership-profile{position:relative;padding-top:72px!important;background:linear-gradient(145deg,#fff,#F5F3EB)!important;border-top:0!important;overflow:hidden}
.route-leadership .leadership-profile::before{content:attr(data-initials);position:absolute;top:18px;left:19px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font:800 13px 'Montserrat';letter-spacing:.5px}
.route-leadership .leadership-profile::after{content:"";position:absolute;top:37px;left:58px;right:0;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
.route-leadership .leadership-profile:first-child{grid-column:span 2;min-height:210px;padding:88px 34px 30px!important;background:var(--green-deep)!important;color:#fff}
.route-leadership .leadership-profile:first-child::before{background:var(--gold);color:var(--ink)}
.route-leadership .leadership-profile:first-child::after{background:linear-gradient(90deg,var(--gold),rgba(255,255,255,.08))}
.route-leadership .leadership-profile:first-child h3{font-size:clamp(22px,2.4vw,31px)!important;color:#fff}
.route-leadership .leadership-profile:first-child p{max-width:48ch;color:#D3E1D7!important;font-size:15px!important}
.route-leadership .leadership-profile:has(.leadership-photo){padding:0 19px 22px!important}
.route-leadership .leadership-profile:has(.leadership-photo):not(:first-child){min-height:356px}
.route-leadership #sec1+div>.leadership-profile:last-child{grid-column:1/-1;width:calc((100% - 42px)/4);justify-self:center}
.route-leadership .leadership-profile:has(.leadership-photo)::before,.route-leadership .leadership-profile:has(.leadership-photo)::after{display:none}
.leadership-photo{aspect-ratio:5/4;margin:0 -19px 19px;overflow:hidden;background:var(--paper)}
.leadership-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.9) contrast(1.025)}
.leadership-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}
.leadership-card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--green);min-width:0;overflow:hidden}
.leadership-card .leadership-photo{margin:0;aspect-ratio:5/4}
.leadership-card-copy{padding:18px 19px 21px}
.leadership-card h3{font:700 17px/1.25 'Montserrat';margin:0 0 7px;color:var(--ink)}
.leadership-role{font-size:14px;line-height:1.5;color:var(--muted);margin:0}
.leadership-biography{font-size:14px;line-height:1.55;color:var(--muted);margin-top:14px}
.leadership-biography>:last-child{margin-bottom:0}
.programme-status{display:inline-flex;align-items:center;gap:12px;margin:14px 0 4px;padding:9px 12px;border:1px solid var(--line);background:#fff;font:700 13px/1.2 'Montserrat';color:var(--green)}
.programme-status>span{padding-right:12px;border-right:1px solid var(--line)}
.programme-status small{display:flex;gap:10px;font:500 12px/1.3 'Montserrat';color:var(--muted)}
.programme-status.status-closed{color:#6d301d;background:#fff8f4;border-color:#e5c3b8}
.programme-status.status-open{color:var(--green);background:#f1f8f3;border-color:#b9d5c2}
.office-directory{display:grid;gap:44px;margin-top:28px}
.office-province{scroll-margin-top:150px}
.office-province-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.office-province-heading h3{font:700 clamp(24px,3vw,38px)/1.1 'Montserrat';margin:0}
.office-province-heading span{font:700 12px/1.2 'Montserrat';text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.office h4{font:700 19px/1.25 'Montserrat';margin:6px 0 12px}
.office-email{display:block;margin-top:7px;color:var(--green);font-weight:700}
.office-hours,.office-services{margin-top:12px;font-size:14px}
@media(max-width:1050px){.leadership-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.leadership-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.leadership-grid{grid-template-columns:1fr}.leadership-card:has(.leadership-photo){display:grid;grid-template-columns:112px minmax(0,1fr)}.leadership-card .leadership-photo{height:100%;min-height:142px;aspect-ratio:auto}.leadership-card-copy{padding:18px}.programme-status{align-items:flex-start;flex-direction:column}.programme-status>span{padding:0;border:0}.programme-status small{flex-direction:column;gap:3px}.office-province-heading{align-items:flex-start;flex-direction:column;gap:6px}}
.route-leadership .leadership-profile:first-child:has(.leadership-photo){grid-column:1/-1;display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);grid-template-rows:1fr 1fr;min-height:310px;padding:0!important}
.route-leadership .leadership-profile:first-child:has(.leadership-photo) .leadership-photo{grid-row:1/3;width:100%;height:100%;min-height:310px;margin:0;aspect-ratio:auto}
.route-leadership .leadership-profile:first-child:has(.leadership-photo) h3{grid-column:2;align-self:end;margin:0!important;padding:32px 34px 7px}
.route-leadership .leadership-profile:first-child:has(.leadership-photo) p{grid-column:2;align-self:start;margin:0;padding:0 34px 32px}
.route-offices .office-province h2[id]{scroll-margin-top:var(--sticky-office-stack,190px)}
.route-offices .office-province .wrap>div{gap:12px!important}
.route-offices .office-province .wrap>div>div{position:relative;background:rgba(255,255,255,.76)!important;border:1px solid color-mix(in srgb,var(--line),var(--green) 9%)!important;border-top:0!important;padding:22px 22px 24px!important;transition:transform .25s var(--ease-quint),box-shadow .25s var(--ease-quint)}
.route-offices .office-province .wrap>div>div::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--green),var(--gold))}
.route-offices .office-province .wrap>div>div h3{font-size:17px!important;line-height:1.35!important;margin-bottom:9px!important}
.route-offices .office-province .wrap>div>div p{font-size:14px!important;line-height:1.65!important}
.office-phone{display:flex;align-items:center;gap:10px;min-height:44px;margin-top:13px;padding-top:10px;border-top:1px solid var(--line);color:var(--green-deep);font:600 13px/1.4 'Montserrat',sans-serif}
.office-phone .i{flex:none;color:var(--green)}
.office-phone span{display:grid;gap:1px}
.office-phone strong{color:var(--gold-text);font:800 10px/1.2 'Montserrat';letter-spacing:.08em;text-transform:uppercase}
@media(min-width:821px){.office-phone{pointer-events:none}}
@media(hover:hover){.route-offices .office-province .wrap>div>div:hover{transform:translateY(-3px);box-shadow:0 18px 40px -30px rgba(10,61,34,.65)}}
@media(max-width:820px){.page-intro-grid{grid-template-columns:1fr;min-height:0}.page-intro-copy{padding-right:0}.page-intro-media{height:260px;min-height:260px;clip-path:polygon(0 8%,100% 0,100% 100%,0 100%)}.listing-heading{align-items:start;flex-direction:column;gap:8px}.listing-tools{align-items:flex-start;flex-direction:column}.listing-tools select{width:100%;max-width:none}}
@media(max-width:640px){
  .route-leadership .leadership-profile:first-child{grid-column:auto;min-height:0;padding:76px 20px 24px!important}
  .route-leadership #sec1+div>.leadership-profile:last-child{grid-column:auto;width:auto;justify-self:stretch}
  .route-leadership .leadership-profile:first-child:has(.leadership-photo){display:block;padding:0 20px 24px!important}
  .route-leadership .leadership-profile:first-child:has(.leadership-photo) .leadership-photo{height:auto;min-height:0;margin:0 -20px 20px;aspect-ratio:5/4;width:auto}
  .route-leadership .leadership-profile:first-child:has(.leadership-photo) h3{margin:0 0 7px!important;padding:0}
  .route-leadership .leadership-profile:first-child:has(.leadership-photo) p{margin:0;padding:0}
}
@media(max-width:520px){
  .route-leadership #sec1+div,.route-leadership #sec2+div{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  .route-leadership .leadership-profile:has(.leadership-photo){padding:0!important}
  .route-leadership .leadership-profile:has(.leadership-photo):not(:first-child){min-height:0}
  .route-leadership .leadership-profile:has(.leadership-photo):not(:first-child){display:grid;grid-template-columns:112px minmax(0,1fr);grid-template-rows:auto 1fr;align-items:start}
  .route-leadership .leadership-profile:has(.leadership-photo):not(:first-child) h3{grid-column:2;margin:20px 18px 5px!important;font-size:17px!important;line-height:1.28!important}
  .route-leadership .leadership-profile:has(.leadership-photo):not(:first-child) p{grid-column:2;margin:0 18px 18px!important;font-size:14px!important;line-height:1.5!important}
  .route-leadership .leadership-profile:has(.leadership-photo):not(:first-child) .leadership-photo{grid-row:1/3;width:112px;height:100%;min-height:142px;margin:0;aspect-ratio:auto}
  .route-leadership .leadership-profile:first-child:has(.leadership-photo){grid-column:1/-1;padding:0 20px 24px!important}
}

/* Branded public recovery page */
.route-page-not-found .page-intro{position:relative;overflow:hidden;background:linear-gradient(118deg,#F8F6EF 0%,#F8F6EF 62%,#EEF4EF 100%)}
.route-page-not-found .page-intro::after{content:"404";position:absolute;right:max(3vw,26px);bottom:-.06em;width:auto;height:auto;background:none;color:rgba(11,110,55,.11);font:800 clamp(150px,24vw,330px)/.8 'Montserrat';letter-spacing:-.09em;pointer-events:none}
.route-page-not-found .page-intro-copy{position:relative;z-index:1}
.route-page-not-found .not-found-path{display:flex;max-width:680px;flex-wrap:wrap;gap:7px 12px;align-items:baseline;margin-top:20px;color:var(--muted);font:600 13px/1.55 'Montserrat'}
.route-page-not-found .not-found-path span{color:var(--green-deep);font:700 11px/1.4 'Montserrat';letter-spacing:.12em;text-transform:uppercase}
.route-page-not-found .not-found-path code{min-width:0;overflow-wrap:anywhere;color:var(--ink);font:600 13px/1.55 'Montserrat'}
.route-page-not-found .not-found-recovery{border-top:1px solid var(--line)}
.recovery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:30px;background:var(--line);border:1px solid var(--line)}
.recovery-grid a{position:relative;display:flex;min-height:210px;flex-direction:column;align-items:flex-start;padding:28px;background:#fff;color:var(--ink);text-decoration:none;transition:background .25s var(--ease-quint),transform .25s var(--ease-quint)}
.recovery-grid a::after{content:"→";position:absolute;right:24px;bottom:21px;color:var(--green);font:700 22px 'Montserrat';transition:transform .25s var(--ease-quint)}
.recovery-grid span{color:var(--gold-text);font:700 12px 'Montserrat';letter-spacing:.14em}
.recovery-grid strong{margin-top:30px;font:700 clamp(20px,2vw,26px)/1.15 'Montserrat'}
.recovery-grid small{max-width:31ch;margin-top:10px;color:var(--muted);font:400 14px/1.6 'Montserrat'}
@media(hover:hover){.recovery-grid a:hover{z-index:1;background:#F7FAF7;transform:translateY(-4px);box-shadow:0 18px 42px -30px rgba(10,61,34,.65)}.recovery-grid a:hover::after{transform:translateX(5px)}}
@media(max-width:700px){.route-page-not-found .page-intro::after{right:-18px;bottom:8px;color:rgba(11,110,55,.09);font-size:150px}.recovery-grid{grid-template-columns:1fr}.recovery-grid a{min-height:168px;padding:23px}.recovery-grid strong{margin-top:20px}.recovery-grid a::after{right:20px;bottom:18px}}

/* Newsroom article reading experience */
.page-newsArticle .article-date{display:inline-flex;align-items:center;margin-top:13px;padding:6px 11px;border:1px solid color-mix(in srgb,var(--line),var(--green) 18%);border-radius:999px;background:rgba(255,255,255,.58);color:var(--green-deep);font:600 13px/1 'Montserrat'}
.page-newsArticle .breadcrumb [aria-current="page"]{max-width:min(48ch,100%);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.page-newsArticle .article-body{max-width:760px;margin-left:clamp(0px,6vw,76px);padding-left:clamp(24px,3.5vw,42px);border-left:2px solid color-mix(in srgb,var(--gold),transparent 32%)}
.page-newsArticle .article-body p{font-size:16px;line-height:1.78}
.page-newsArticle .article-body>p:first-child{color:var(--ink);font-size:clamp(18px,1.65vw,21px);line-height:1.72}
.page-newsArticle .article-body :is(h2,h3){max-width:30ch;margin-top:1.7em}
.page-newsArticle .article-body a{display:inline-flex;min-height:44px;align-items:center;color:var(--green-deep);font-weight:700;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--gold),transparent 22%);text-decoration-thickness:2px;text-underline-offset:4px;overflow-wrap:anywhere}
.page-newsArticle .article-body a:hover{color:var(--green);text-decoration-color:var(--orange)}
.page-newsArticle .article-footer{margin-top:clamp(38px,6vw,62px);padding-top:22px;border-top:1px solid var(--line)}
.page-newsArticle .article-footer .alink{display:inline-flex;min-height:44px;align-items:center}
.article-pagination{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.article-pagination a{display:grid!important;align-content:center;min-height:112px!important;padding:18px 20px;border:1px solid var(--line);background:color-mix(in srgb,var(--paper),#fff 46%);text-decoration:none!important;transition:background .2s var(--ease-quint),border-color .2s var(--ease-quint),transform .2s var(--ease-quint)}
.article-pagination a:only-child{grid-column:1/-1}
.article-pagination a:hover{border-color:color-mix(in srgb,var(--green),transparent 55%);background:#fff;transform:translateY(-2px)}
.article-pagination span{margin-bottom:7px;color:var(--gold-text);font:800 10px/1.2 'Montserrat';letter-spacing:.09em;text-transform:uppercase}
.article-pagination strong{max-width:34ch;color:var(--green-deep);font:750 15px/1.45 'Montserrat'}
@media(max-width:620px){.article-pagination{grid-template-columns:1fr}.article-pagination a:only-child{grid-column:auto}.article-pagination a{min-height:96px!important}}
@media(max-width:640px){.page-newsArticle .article-body{margin-left:0;padding-left:0;border-left:0}.page-newsArticle .article-body>p:first-child{font-size:17px}.page-newsArticle .article-footer{margin-top:38px}}

.document-meta{display:inline-flex;align-items:center;margin-left:7px;padding:4px 8px;border:1px solid color-mix(in srgb,var(--line),var(--gold) 28%);border-radius:999px;background:rgba(255,255,255,.52);color:var(--gold-text);font:700 11px/1 'Montserrat';letter-spacing:.04em;white-space:nowrap}
.document-kind{display:block;margin-bottom:7px;color:var(--gold-text);font:800 10.5px/1.2 'Montserrat';letter-spacing:.11em;text-transform:uppercase}
.document-kind+a{display:inline}
.document-action-format{display:inline-flex;align-items:center;margin-left:5px;padding:4px 7px;border:1px solid color-mix(in srgb,var(--line),var(--gold) 32%);border-radius:999px;background:rgba(255,255,255,.58);color:var(--gold-text);font:800 10px/1 'Montserrat';letter-spacing:.06em}
@media(max-width:600px){.document-meta{margin:8px 0 0}}

/* Spatial-information catalogue */
.map-catalogue{position:relative;overflow:hidden}
.map-catalogue .wrap{position:relative;z-index:1}
.map-theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:34px;background:var(--line);border:1px solid var(--line)}
.map-theme-grid article{position:relative;min-height:210px;padding:27px 28px;background:rgba(255,255,255,.9);overflow:hidden}
.map-theme-grid article::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--green)}
.map-theme-grid article:nth-child(3n+2)::after{background:var(--gold)}
.map-theme-grid article:nth-child(3n)::after{background:var(--orange)}
.map-theme-grid span{color:var(--gold-text);font:700 12px/1 'Montserrat';letter-spacing:.14em}
.map-theme-grid h3{max-width:16ch;margin-top:34px;font:700 clamp(20px,2vw,26px)/1.15 'Montserrat'}
.map-theme-grid p{margin-top:10px;color:var(--muted);font-size:14px;line-height:1.65}
@media(max-width:860px){.map-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.map-catalogue::before{display:none}.map-theme-grid{grid-template-columns:1fr;margin-top:26px}.map-theme-grid article{min-height:170px;padding:23px}.map-theme-grid h3{margin-top:22px}}
@media(prefers-reduced-motion:reduce){.nav-progress{display:none}}

/* Public policy and accessibility reading experience */
.legal-content{position:relative}
.legal-content-grid{display:grid;grid-template-columns:minmax(190px,240px) minmax(0,800px);gap:clamp(36px,7vw,92px);align-items:start}
.legal-index{position:sticky;top:calc(var(--sticky-header-height,140px) + 28px);display:grid;padding:18px 0;border-block:1px solid var(--line)}
.legal-index p{margin:0 0 9px;color:var(--gold-text);font:800 11px/1 'Montserrat';letter-spacing:.13em;text-transform:uppercase}
.legal-index a{position:relative;display:flex;min-height:44px;align-items:center;padding:10px 22px 9px 0;border-bottom:1px solid color-mix(in srgb,var(--line),transparent 32%);color:var(--green-deep);font:600 13px/1.35 'Montserrat'}
.legal-index a[aria-current="location"]{color:var(--green);font-weight:800}
.legal-index a[aria-current="location"]::before{content:"";position:absolute;left:-14px;width:5px;height:5px;border-radius:50%;background:var(--gold)}
.legal-index a:last-child{border-bottom:0}
.legal-index a::after{content:"↓";position:absolute;right:2px;color:var(--gold-text)}
.legal-prose{min-width:0}
.legal-prose>h2{max-width:26ch;margin:clamp(38px,6vw,62px) 0 16px;font:800 clamp(25px,3vw,36px)/1.14 'Montserrat';letter-spacing:-.02em;scroll-margin-top:calc(var(--sticky-header-height,140px) + 46px)}
.legal-prose>.kick+h2{margin-top:18px}
.legal-prose>p{max-width:72ch;margin-top:14px;color:var(--muted);font-size:15.5px;line-height:1.8}
.legal-prose>ul{display:grid;gap:11px;margin:18px 0 0;padding:0;list-style:none}
.legal-prose>ul li{position:relative;padding-left:28px;color:var(--muted);font-size:15px;line-height:1.7}
.legal-prose>ul li::before{content:"";position:absolute;left:2px;top:.55em;width:12px;height:6px;border-left:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(-45deg)}
.legal-callout{margin-top:32px;padding:24px 26px;border-left:4px solid var(--gold);background:#fff;box-shadow:0 18px 44px -38px rgba(10,61,34,.7)}
.legal-callout strong{font:700 18px/1.3 'Montserrat'}
.legal-callout p{max-width:62ch;margin:8px 0 12px;color:var(--muted);font-size:14px;line-height:1.65}
.legal-definition-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:24px;border:1px solid var(--line);background:var(--line)}
.legal-definition-list>div{padding:23px;background:#fff}
.legal-definition-list h3{font:700 17px/1.3 'Montserrat'}
.legal-definition-list p{margin-top:8px;color:var(--muted);font-size:13.5px;line-height:1.65}
@media(max-width:820px){.legal-content-grid{grid-template-columns:1fr;gap:34px}.legal-index{position:static;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.legal-index p{grid-column:1/-1}.legal-index a{min-height:44px}.legal-index a[aria-current="location"]::before{display:none}.legal-definition-list{grid-template-columns:1fr}}
@media(max-width:480px){.legal-index{grid-template-columns:1fr}.legal-callout{padding:21px 20px}.legal-prose>h2{font-size:27px}}

/* Independent fraud and ethics reporting journey */
.hotline-assurance{position:relative;overflow:hidden}
.hotline-assurance .wrap{position:relative;z-index:1}
.hotline-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:34px;background:var(--line);border:1px solid var(--line)}
.hotline-trust-grid article{min-height:205px;padding:28px;background:rgba(255,255,255,.88)}
.hotline-trust-grid span{color:var(--gold-text);font:700 12px/1 'Montserrat';letter-spacing:.14em}
.hotline-trust-grid h3{max-width:18ch;margin-top:38px;font:700 clamp(20px,2vw,25px)/1.2 'Montserrat'}
.hotline-trust-grid p{max-width:34ch;margin-top:10px;color:var(--muted);font-size:14px;line-height:1.65}
.hotline-heading{display:flex;align-items:end;justify-content:space-between;gap:32px}
.hotline-heading>div{max-width:780px}
.hotline-availability{display:inline-flex;min-height:36px;align-items:center;padding:7px 12px;border:1px solid rgba(11,110,55,.25);border-radius:999px;background:rgba(11,110,55,.06);color:var(--green-deep);font:700 12px/1 'Montserrat';letter-spacing:.04em;white-space:nowrap}
.hotline-channel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:34px}
.hotline-channel{position:relative;display:grid;min-height:172px;align-content:center;padding:26px 64px 26px 26px;border:1px solid var(--line);background:#fff;color:var(--ink);text-decoration:none;transition:transform .25s var(--ease-quint),border-color .25s var(--ease-quint),box-shadow .25s var(--ease-quint)}
.hotline-channel-featured{background:var(--green-deep);border-color:var(--green-deep);color:#fff}
.hotline-channel-label{color:var(--green);font:800 11px/1 'Montserrat';letter-spacing:.13em;text-transform:uppercase}
.hotline-channel-featured .hotline-channel-label{color:var(--gold)}
.hotline-channel strong{margin-top:15px;font:700 clamp(18px,2vw,24px)/1.2 'Montserrat';overflow-wrap:anywhere}
.hotline-channel small{margin-top:7px;color:var(--muted);font:400 13px/1.5 'Montserrat'}
.hotline-channel-featured small{color:#C9D7CD}
.hotline-channel .arr{position:absolute;right:25px;bottom:25px;width:22px;height:22px;color:var(--green);transition:transform .25s var(--ease-quint)}
.hotline-channel-featured .arr{color:var(--gold)}
.hotline-other-channels{display:grid;grid-template-columns:.75fr 1.5fr 1fr;gap:0;margin-top:18px;border-block:1px solid var(--line)}
.hotline-other-channels p{display:grid;gap:5px;padding:19px 22px;border-right:1px solid var(--line)}
.hotline-other-channels p:last-child{border-right:0}
.hotline-other-channels strong{color:var(--green-deep);font:700 12px 'Montserrat';letter-spacing:.08em;text-transform:uppercase}
.hotline-other-channels span{font-size:14px;line-height:1.5}
.hotline-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:32px;padding:0;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.16);list-style:none}
.hotline-reportable{background:var(--green-forest)}
.hotline-reportable .wrap{display:block}
.hotline-category-grid li{position:relative;min-height:72px;padding:23px 24px 22px 58px;background:rgba(11,27,52,.84);font:600 15px/1.55 'Montserrat'}
.hotline-category-grid li::before{content:"";position:absolute;left:25px;top:30px;width:14px;height:7px;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.hotline-faq-list{max-width:900px;margin-top:30px;border-top:1px solid var(--line)}
.hotline-faq-list details{border-bottom:1px solid var(--line)}
.hotline-faq-list summary{position:relative;min-height:68px;padding:21px 54px 20px 2px;cursor:pointer;color:var(--ink);font:700 clamp(16px,1.7vw,19px)/1.4 'Montserrat';list-style:none}
.hotline-faq-list summary::-webkit-details-marker{display:none}
.hotline-faq-list summary::after{content:"+";position:absolute;right:7px;top:17px;width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--green);font:500 22px/1 'Montserrat';transition:transform .2s var(--ease-quint),background .2s var(--ease-quint)}
.hotline-faq-list details[open] summary::after{content:"−";background:var(--green);border-color:var(--green);color:#fff}
.hotline-faq-list details p{max-width:72ch;padding:0 54px 24px 2px;color:var(--muted);font-size:15px;line-height:1.75}
@media(hover:hover){.hotline-channel:hover{z-index:1;transform:translateY(-4px);border-color:rgba(11,110,55,.36);box-shadow:0 20px 46px -32px rgba(10,61,34,.7)}.hotline-channel:hover .arr{transform:translateX(5px)}}
@media(max-width:760px){.hotline-trust-grid{grid-template-columns:1fr}.hotline-trust-grid article{min-height:0}.hotline-trust-grid h3{margin-top:22px}.hotline-heading{align-items:flex-start;flex-direction:column}.hotline-channel-grid{grid-template-columns:1fr}.hotline-other-channels{grid-template-columns:1fr}.hotline-other-channels p{border-right:0;border-bottom:1px solid var(--line)}.hotline-other-channels p:last-child{border-bottom:0}.hotline-category-grid{grid-template-columns:1fr}}
@media(max-width:460px){.hotline-assurance::after{display:none}.hotline-channel{min-height:158px;padding:23px 54px 23px 21px}.hotline-channel strong{font-size:18px}.hotline-category-grid li{padding-left:52px}.hotline-faq-list summary{padding-right:48px}}

/* Public contact form */
.form-intro{max-width:62ch;margin:20px 0 30px;color:var(--muted);font-size:16px;line-height:1.7}
.cform{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 22px;max-width:900px;padding:clamp(24px,4vw,42px);background:var(--paper);border:1px solid var(--line);border-top:5px solid var(--green);box-shadow:0 24px 60px -48px rgba(10,61,34,.7)}
.cform>div:nth-child(3),.cform>div:nth-child(4),.cform>.cform-actions,.cform>.cform-status{grid-column:1/-1}
.cform label{display:block;margin-bottom:8px;color:var(--green-deep);font-family:'Montserrat';font-size:14px;font-weight:700}
.cform label span{color:var(--orange)}
.cform input,.cform select,.cform textarea{display:block;width:100%;min-height:48px;border:1.5px solid #778B7C;border-radius:5px;background:#fff;color:var(--ink);padding:11px 13px;font:15px/1.5 'Montserrat',sans-serif;transition:border-color .18s var(--ease-quint),box-shadow .18s var(--ease-quint)}
.cform textarea{min-height:150px;resize:vertical}
.cform input:hover,.cform select:hover,.cform textarea:hover{border-color:#526B59}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 4px rgba(11,110,55,.12)}
.cform input.is-invalid,.cform select.is-invalid,.cform textarea.is-invalid{border-color:#B3261E;box-shadow:0 0 0 3px rgba(179,38,30,.09)}
.cform small{display:block;margin-top:6px;color:var(--muted);font-size:12.5px}
.cform-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cform-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-top:4px}
.cform-actions p{max-width:54ch;color:var(--muted);font-size:13px;line-height:1.55}
.cform-status{min-height:20px;margin:0;color:#B3261E;font-size:13px;font-weight:600}
.cform-status.is-progress{color:var(--green-deep)}
.cform-status a{color:var(--green-deep);text-decoration:underline;text-underline-offset:3px}
.cform .btn:disabled{cursor:wait;opacity:.7;box-shadow:none;transform:none}
.cform-noscript{max-width:900px;margin-top:24px;padding:clamp(24px,4vw,38px);border:1px solid var(--line);border-top:5px solid var(--gold);background:var(--paper)}
.cform-noscript h3{font:700 clamp(21px,2.4vw,28px)/1.2 'Montserrat'}
.cform-noscript p{max-width:62ch;margin:10px 0 20px;color:var(--muted);font-size:14px;line-height:1.65}
@media(max-width:640px){.cform{grid-template-columns:1fr;padding:22px 18px}.cform>div{grid-column:1!important}.cform-actions{align-items:flex-start;flex-direction:column}.cform-actions .btn{width:100%;justify-content:center}}
.about-values{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:34px;background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.16)}
.about-values article{display:flex;min-height:210px;flex-direction:column;padding:24px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.045)}
.about-values span{color:var(--gold);font:800 42px/1 'Montserrat';margin-bottom:auto}
.about-values strong{color:#fff;font:700 17px/1.25 'Montserrat';margin:26px 0 8px}
.about-values small{color:#C7D7CC;font-size:13px;line-height:1.55}
@media(max-width:900px){.about-values{grid-template-columns:repeat(2,minmax(0,1fr))}.about-values article:last-child{grid-column:1/-1}}
@media(max-width:520px){.about-values{grid-template-columns:1fr}.about-values article:last-child{grid-column:auto}.about-values article{min-height:175px}}

/* Design cleanup, October 2026. Kickers are hidden site-wide: the heading carries
   its own weight and the label above it duplicated it. Partner logos sit on the
   paper ground without boxes. The Corporate hero panel shows the SEDFA mark until
   a real partnership photograph exists. */
.kick{display:none}
.job-division{font-family:'Montserrat';font-weight:600;font-size:13px;color:var(--gold-text);margin-bottom:6px}
.hero-note{margin-top:14px;max-width:52ch;font-size:16px;line-height:1.5;color:rgba(255,255,255,.82)}
.page-intro .hero-note{color:var(--muted)}
.heroC .ph.ph-mark{background:var(--cream);display:flex;align-items:center;justify-content:center;padding:clamp(32px,6vw,72px)}
.heroC .ph.ph-mark img{width:min(72%,520px);height:auto;aspect-ratio:auto;object-fit:contain}
.pwall .ptile{background:transparent;border:0;box-shadow:none;padding:0}
.pwall .ptile:hover{transform:none;box-shadow:none}
.mcard img[src*="prog-imbali-lockup"]{background:#E4E4E4}
@media(max-width:899px){.heroB .copy{padding-bottom:104px}}
.mobile-nav-account a+a{margin-top:8px}
.cform select{appearance:none;padding-right:42px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%230A3D22' stroke-width='2' d='M3 6l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 14px center/14px;cursor:pointer}
.cform-enquiry{margin-top:28px}
.cform-enquiry>div:nth-child(1),.cform-enquiry>div:nth-child(6),.cform-enquiry>div:nth-child(7){grid-column:1/-1}
.cform-enquiry>div:nth-child(3),.cform-enquiry>div:nth-child(4){grid-column:auto}
.cform-privacy{grid-column:1/-1;margin:0;color:var(--muted);font-size:13px;line-height:1.6}
.cform-privacy a{color:var(--green-deep);text-decoration:underline;text-underline-offset:3px}
.faq-item{max-width:900px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}
.lead+.faq-item{margin-top:28px}
.faq-item+.faq-item{margin-top:10px}
.faq-item summary{position:relative;display:flex;align-items:center;min-height:48px;padding:12px 54px 12px 18px;cursor:pointer;color:var(--green-deep);font:600 17px/1.4 'Montserrat';list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:16px;top:50%;translate:0 -50%;color:var(--green);font:500 22px/1 'Montserrat'}
.faq-item[open] summary::after{content:"−"}
.faq-item summary:hover{background:var(--cream)}
.faq-item summary:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.faq-answer{padding:4px 18px 18px;font-size:16px;line-height:1.7}
.faq-answer ul{padding-left:1.25em;list-style:disc}
.faq-answer li+li{margin-top:4px}
.faq-answer p+p{margin-top:10px}
.faq-answer a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:1025px){.hbtns{margin-left:auto}.hbtns .btn-ghost{padding:11px 14px;font-size:14px}}

/* ===== Entrepreneurs gateway, corporate media, page banner video (November 2026) =====
   Only what the existing components cannot do: action tiles, gateway cards, video grid, banner toggle. */
#viewEnt section[id]{scroll-margin-top:var(--sticky-header-height,124px)}
.act-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;margin-top:28px}
.act-tile{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px 10px;min-height:44px;padding:16px 18px;color:#fff;background:rgba(10,61,34,.62);border:1.5px solid rgba(255,255,255,.5);border-radius:7px;transition:background .2s var(--ease),border-color .2s var(--ease)}
.act-tile:hover{background:rgba(10,61,34,.88);border-color:#fff}
.act-title{font-family:'Montserrat';font-weight:700;font-size:18px;line-height:1.25}
.act-copy{grid-column:1/-1;font-size:14px;line-height:1.5;color:#D9E4DC}
.act-tile .arr{width:16px;height:16px;margin-top:3px;transition:transform .2s var(--ease)}
.act-tile:hover .arr{transform:translateX(3px)}
.hero-note a{display:inline-block;padding:10px 0;color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:480px){.act-tiles{grid-template-columns:minmax(0,1fr)}}

.gw-grid{display:grid;gap:18px;margin-top:34px}
.gw-grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}
.gw-grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))}
.gw-grid-4{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.gw-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:22px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--green)}
.gw-card-primary{border-top-color:var(--green-deep)}
.gw-card h3{font-size:20px;font-weight:800;line-height:1.25;letter-spacing:-.2px;overflow-wrap:anywhere}
.gw-card h3 a{color:var(--ink)}
.gw-card h3 a:hover{color:var(--green)}
.gw-card p{font-size:15px;color:var(--muted)}
.gw-tag{font-family:'Montserrat';font-weight:700;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--gold-text)!important}
.gw-fit{font-size:14px!important}
.gw-fit strong{color:var(--ink)}
.gw-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:auto;padding-top:10px}
.gw-feats{list-style:none;display:grid;gap:6px}
.gw-feats li{display:flex;gap:8px;font-size:14.5px;color:var(--ink)}
.gw-feats .i,.gw-ready .i{color:var(--green);margin-top:5px}
.gw-more{display:flex;flex-wrap:wrap;gap:12px 16px;margin-top:24px}
.gw-call{margin-top:26px;font-size:16px}
.gw-call a{display:inline-block;padding:10px 0;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.gw-soon{display:inline-block;margin-top:14px;padding:12px 18px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);font-size:15px}
.gw-ready{margin-top:36px;padding:22px 24px;background:var(--cream);border:1px solid var(--line)}
.gw-ready h3{font-size:18px;font-weight:800}
.gw-ready ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:8px 24px;margin-top:14px}
.gw-ready li{display:flex;gap:8px}
.gw-about{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px 40px}
.gw-about>div:first-child{flex:1 1 420px;min-width:0}
@media(max-width:480px){.gw-actions .btn{flex:1 1 100%;justify-content:center}.gw-card{padding:20px 18px}}

.vid-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px;margin-top:30px}
.vid{display:flex;flex-direction:column;gap:10px;min-width:0;padding:0;border:0;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.vid-lead{grid-row:span 3}
.vid-thumb{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--green-deep)}
.vid-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .35s var(--ease)}
.vid:hover .vid-thumb img{transform:scale(1.03)}
.vid-play{position:absolute;inset:0;margin:auto;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:rgba(10,61,34,.9);color:#fff;transition:background .2s var(--ease)}
.vid-play .i{width:22px;height:22px;margin-left:3px}
.vid-lead .vid-play{width:80px;height:80px}
.vid:hover .vid-play{background:var(--green)}
.vid-title{font-family:'Montserrat';font-weight:700;font-size:16px;line-height:1.35}
.vid-lead .vid-title{font-size:clamp(18px,2vw,22px)}
.vid:focus-visible{outline:3px solid var(--green);outline-offset:4px}
.vid-frame{aspect-ratio:16/9;min-width:0;background:#000}
.vid-frame iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:820px){.vid-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vid-lead{grid-column:1/-1;grid-row:auto}}
@media(max-width:520px){.vid-grid{grid-template-columns:minmax(0,1fr)}}

.page-intro-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.media-video-toggle{position:absolute;right:16px;bottom:22px;z-index:2;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 14px;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:rgba(10,61,34,.88);color:#fff;font:600 13px/1 'Montserrat',sans-serif;cursor:pointer}
.media-video-toggle:hover{background:var(--green-deep);border-color:#fff}
.media-video-toggle:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.media-video-toggle .i{width:13px;height:13px;fill:currentColor}
.media-video-toggle .media-video-play{display:none}
.media-video-toggle.is-paused .media-video-pause{display:none}
.media-video-toggle.is-paused .media-video-play{display:block}

/* ===== Gateway look and feel (November 2026) =====
   Montserrat for all text. IBM Plex Mono only for section labels, card tags and portal web addresses.
   White page, pale grey alternate sections, dark green band for sign in, gold tags and toggle,
   rounded cards with soft shadows. Colour shades are the existing variables. */
:root{
  --mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --pale:#F4F6F4;
  --r:14px;--r-lg:20px;
  --shadow-1:0 1px 2px rgba(7,31,18,.06),0 8px 24px rgba(7,31,18,.08);
  --shadow-2:0 2px 6px rgba(7,31,18,.1),0 18px 44px rgba(7,31,18,.16);
  --gold-on:#07200F; /* text on gold, 5:1 */
  --fits:#A8420D;
}
.kick,.gw-tag,.gw-tags li,.gw-web{font-family:var(--mono)}
.btn{border-radius:10px;font-weight:700}
.btn-solid{box-shadow:var(--shadow-1)}
.menu-toggle{border-radius:10px}
.mobile-nav-account a{border-radius:12px}

/* Header: gold sliding audience toggle, two buttons */
.audience{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;padding:4px;overflow:visible;border:1px solid rgba(34,38,31,.22);border-radius:999px;background:var(--pale)}
.audience::before{content:"";position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:var(--gold);transition:transform .25s cubic-bezier(.5,0,.2,1)}
.audience:has(#tabCorp[aria-selected="true"])::before,.audience:has(a:last-child[aria-current])::before{transform:translateX(100%)}
.audience button,.audience-links a{position:relative;z-index:1;justify-content:center;min-height:40px;padding:8px 20px;border-radius:999px;background:transparent;color:var(--green-deep);white-space:nowrap}
.audience button[aria-selected="true"],.audience-links a[aria-current]{background:transparent;color:var(--gold-on)}
.audience button:hover,.audience-links a:hover{color:var(--gold-on)}
.audience-links a{display:inline-flex;align-items:center}
.hbtns .btn-ghost{padding:10px 18px}
@media(max-width:1024px){.audience{display:grid;order:4;width:100%}}
@media(min-width:900px) and (max-width:1024px){.audience{display:inline-grid;width:auto}}

/* Hero: the TREP video under the mockup's green gradient, four tiles across */
.hero-scrim{background:radial-gradient(900px 420px at 85% -10%,rgba(178,149,48,.2),transparent 60%),linear-gradient(160deg,rgba(7,36,19,.93) 0%,rgba(10,61,34,.82) 55%,rgba(11,110,55,.58) 130%)}
@media(max-width:880px){.hero-scrim{background:linear-gradient(180deg,rgba(7,36,19,.7),rgba(10,61,34,.9))}}
.heroB .copy{width:100%;max-width:var(--maxw);margin:0 auto;padding:clamp(44px,7vw,84px) clamp(18px,4vw,34px)}
.heroB h1{max-width:16ch;font-weight:900;font-size:clamp(34px,5.6vw,66px);line-height:1.04;letter-spacing:-.015em}
.heroB .lead{max-width:54ch}
.act-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:clamp(26px,4vw,42px)}
.act-tile{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-height:190px;padding:22px 20px;border:1px solid rgba(255,255,255,.2);border-radius:var(--r-lg);background:rgba(255,255,255,.07);backdrop-filter:blur(4px);transition:background .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease)}
.act-tile:hover{background:rgba(255,255,255,.14);border-color:rgba(217,188,85,.75);transform:translateY(-3px)}
.act-ic{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:rgba(178,149,48,.22);border:1px solid rgba(217,188,85,.5);color:#D9BC55}
.act-ic .i{width:20px;height:20px}
.act-title{font-weight:800;font-size:18px}
.act-copy{flex:1;font-size:14px;color:#E3ECE6}
.act-go{display:inline-flex;align-items:center;gap:7px;margin-top:auto;font-weight:700;font-size:13px;color:#D9BC55}
.act-tile .arr{margin-top:0;width:13px;height:13px;color:#D9BC55}
@media(max-width:1080px){.act-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.act-tiles{grid-template-columns:minmax(0,1fr)}.act-tile{min-height:0}}
.heroC{background:linear-gradient(150deg,#082a17,var(--green-deep) 80%)}

/* Cards */
.gw-card{padding:24px;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;box-shadow:var(--shadow-1);transition:translate .2s var(--ease),box-shadow .2s var(--ease)}
.gw-card-primary{border-color:var(--green-deep)}
/* translate, not transform: GSAP's scroll reveal owns transform, and a CSS transition on it left cards stuck at different heights. */
@media(hover:hover){.gw-card:hover{translate:0 -3px;box-shadow:var(--shadow-2)}}
.gw-card h3{font-weight:800}
.gw-tags{list-style:none;display:flex;flex-wrap:wrap;gap:7px}
.gw-tags li{padding:4px 9px;border:1px solid var(--line);border-radius:6px;background:var(--pale);color:var(--green-deep);font-size:11px;letter-spacing:.05em}
.gw-card .gw-fit{font-size:13px;color:var(--fits);font-weight:600}
.gw-card .gw-fit strong{color:var(--fits)}
.gw-card .gw-actions:has(.alink){padding-top:14px;border-top:1px dashed rgba(34,38,31,.22)}
.alink-quiet{color:var(--muted)}
.gw-web{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.gw-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#FBEDE3;border:1px solid rgba(194,78,18,.3);color:var(--orange)}
.gw-ic .i{width:19px;height:19px}
.gw-soon{border-radius:10px;border:1.5px dashed rgba(34,38,31,.25)}
.gw-ready{border-radius:var(--r-lg);background:#fff;box-shadow:var(--shadow-1)}

/* Sign in: full-bleed dark green band, gold tags */
.gw-band{background:linear-gradient(150deg,#082a17,var(--green-deep) 70%);color:#fff}
.gw-band .h-xl{color:#fff}
.gw-band .gw-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);box-shadow:none;color:#fff}
.gw-band .gw-card-primary{border:1.5px solid var(--gold);background:rgba(255,255,255,.09);box-shadow:0 24px 60px rgba(0,0,0,.35)}
.gw-band .gw-card h3{color:#fff}
.gw-band .gw-card p{color:rgba(255,255,255,.82)}
.gw-band .gw-feats li{color:rgba(255,255,255,.9)}
.gw-band .gw-feats .i{color:#D9BC55}
.gw-band .gw-card .gw-tag{align-self:flex-start;padding:5px 12px;border-radius:999px;background:var(--gold);color:var(--gold-on)!important;font-size:10px;letter-spacing:.03em;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1180px){.gw-band .gw-card .gw-tag{font-size:9px;letter-spacing:.01em}}
@media(min-width:900px) and (max-width:1060px){.gw-band .gw-card .gw-tag{font-size:8.5px}}
@media(max-width:520px){.gw-band .gw-card .gw-tag{padding:5px 10px;font-size:9.5px;letter-spacing:.03em}}
@media(max-width:400px){.gw-band .gw-card .gw-tag{font-size:8.5px;letter-spacing:.01em}}
.gw-band .gw-web{color:rgba(255,255,255,.7);font-size:12px}
.gw-band .btn-solid{background:var(--gold);color:var(--gold-on);box-shadow:none}
.gw-band .btn-solid:hover{background:#C6A93F}
.gw-band .btn-ghost{border-color:rgba(255,255,255,.7);color:#fff}
.gw-band .btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.12)}
.gw-band .gw-call{color:rgba(255,255,255,.88)}
.gw-band .gw-call a{color:#fff}

/* Apply */
.os-steps li{border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}
.os-steps .n{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--gold);color:var(--gold-on);font-family:var(--mono);font-size:13px;font-weight:600;letter-spacing:0}
@media(max-width:520px){.os-steps li{border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none}.os-steps .n{width:auto;height:auto;background:none;color:var(--gold-text);display:block;font-family:'Montserrat';font-size:20px;font-weight:800}}
.gw-rows{margin-top:30px;overflow:hidden;border:1.5px solid rgba(34,38,31,.2);border-radius:var(--r-lg);background:#fff}
.gw-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px 18px;padding:20px 24px}
.gw-row+.gw-row{border-top:1px solid var(--line)}
.gw-row b{display:block;font-size:16.5px;font-weight:800;color:var(--green-deep)}
.gw-row div span{font-size:14px;color:var(--muted)}
@media(max-width:720px){.gw-row{grid-template-columns:minmax(0,1fr);padding:18px}.gw-row .btn{justify-self:start}}

/* Business support */
/* Kickers are hidden site-wide (.kick{display:none}); this section keeps its own. */
#business-support .kick{display:inline-flex}
.bds-card{position:relative}
.bds-card h3 a::after{content:"";position:absolute;inset:0}
.bds-card h3 a:focus-visible{outline:none}
.bds-card:has(h3 a:focus-visible){outline:3px solid var(--green);outline-offset:2px}
.bds-links{list-style:none;margin-top:4px}
.bds-links li+li{border-top:1px solid var(--line)}
.bds-links .alink{white-space:normal;padding:8px 0}
.bds-also{margin-top:24px;font-size:14.5px;color:var(--muted)}
.bds-also a{color:var(--green-deep);text-decoration:underline;text-underline-offset:3px}
.bds-signin{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 32px;margin-top:28px;padding:24px;background:var(--green-deep);color:#fff;border-radius:var(--r-lg)}
.bds-signin>div{flex:1 1 360px;min-width:0}
.bds-signin b{display:block;font-size:19px;font-weight:800;line-height:1.3}
.bds-signin p{margin-top:6px;font-size:15px;color:rgba(255,255,255,.82)}
.bds-signin .btn-solid{background:var(--gold);color:var(--gold-on);box-shadow:none}
.bds-signin .btn-solid:hover{background:#C6A93F}
.bds-signin .portal-cue{display:none}
@media(max-width:480px){.bds-signin{padding:20px 18px}.bds-signin .btn{flex:1 1 100%;justify-content:center}}

/* Featured programmes keep their photographs */
.mcard img{border-radius:var(--r-lg) var(--r-lg) 0 0}
.mcard-caption{border-top:0;border-radius:0 0 var(--r-lg) var(--r-lg);box-shadow:var(--shadow-1)}
.mcard-title{font-weight:800}

/* Forms, FAQ, boxed content */
.cform{border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;box-shadow:var(--shadow-1)}
.cform input,.cform select,.cform textarea{border-radius:8px}
.cform-noscript,.empty-state,.corporate-mission{border-radius:var(--r-lg)}
.faq-item{border-radius:var(--r);background:#fff;box-shadow:var(--shadow-1);overflow:hidden}
.vid-thumb,.vid-frame{border-radius:16px}
.feature,.mission{border-radius:var(--r-lg)}
.wideph img,.wideph .cap{border-radius:var(--r-lg)}
.status-badge,.os-dims li{border-radius:999px}
.hero-video-toggle,.media-video-toggle{box-shadow:var(--shadow-1)}
/* Entrepreneurs view: tighter section spacing, about half the site default. */
#viewEnt .block{padding:clamp(40px,5vw,64px) 0}

/* Gateway rating (NPS), Entrepreneurs view */
.nps-card{max-width:860px;margin:0 auto;padding:clamp(24px,4vw,40px);background:#fff;border:1px solid var(--green-deep);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}
.nps-card .kick{display:inline-flex}
.nps-card .kick::before{content:none}
.nps-card [hidden]{display:none}
.nps-card .h-xl{font-size:clamp(21px,2.4vw,27px);max-width:40ch}
.nps-card .nlead{margin-top:10px;font-size:14px;color:var(--muted)}
.npscale{display:flex;gap:8px;margin-top:26px}
.nps-btn{flex:1;min-width:0;height:52px;padding:0;border:1.5px solid #778B7C;border-radius:10px;background:#fff;font:800 16px 'Montserrat',sans-serif;color:var(--green-deep);cursor:pointer;transition:background .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease)}
.nps-btn:hover{border-color:var(--green);background:var(--cream)}
.nps-btn[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:#fff}
.nps-ends{display:flex;justify-content:space-between;margin:10px 0 4px;font-size:12px;color:var(--muted)}
.nps-follow{margin-top:22px}
.nps-follow>label{display:block;margin-bottom:8px;color:var(--green-deep);font:700 14px 'Montserrat',sans-serif}
.nps-follow textarea{display:block;width:100%;min-height:96px;border:1.5px solid #778B7C;border-radius:8px;background:#fff;color:var(--ink);padding:11px 13px;font:15px/1.5 'Montserrat',sans-serif;resize:vertical}
.nps-follow textarea:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 4px rgba(11,110,55,.12)}
.nps-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:14px}
.nps-hint{font-size:13px;color:var(--muted)}
.nps-status{min-height:20px;margin:10px 0 0;color:#B3261E;font-size:13px;font-weight:600}
.nps-follow .btn:disabled{cursor:wait;opacity:.7;box-shadow:none}
.nps-done{margin-top:22px;color:var(--green-deep);font-weight:700}
@media(max-width:620px){.npscale{flex-wrap:wrap;gap:6px}.nps-btn{flex:0 0 calc((100% - 30px)/6);height:46px;font-size:14px;border-radius:8px}.nps-actions .btn{width:100%;justify-content:center}}
